One of the many aspects of a piece of software that we would like to capture in the software ontology is its license. There is great variety in licensing, with many different variants of open-source license, and proprietary licensing almost tailored for each individual piece of software. Our initial look at this has resulted in the preliminary data model shown below.
This model currently characterises licenses according to various publication attributes, such as the author, date and version number, and according to how the license restricts the user. These restrictions are placed in a hierarchy, with general restrictions being sub-categorized into restrictions on numbers of users or installations, whether the source code is available, restrictions on making derivative software, etc. The precise form of this part of the model is not yet completely clear, but it should allow us to make definitions of different types of software, such as free software or copyleft and infer from the ontology whether a particular license fits a certain label.