Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

The Software Ontology

The Software Ontology (SWO) is a resource for describing software tools, their types, tasks, versions, licensing, provenance and associated data. The latest release is 1.7.

You can cite SWO with the following publication:

Malone, J., Brown, A., Lister, A.L. et al. The Software Ontology (SWO): a resource for reproducibility in biomedical data analysis, curation and digital preservation. J Biomed Semant 5, 25 (2014).

You can also view SWO in the EBI's Ontology Lookup Service (OLS) at

Licenses in SWO

As part of SWO, we have developed a hierarchy of license types which can organize licenses based on their clauses. For more information on this work, please see the LicenceHierarchy page.


Each directory contains a README describing its contents. Broadly, the dev directory contains the working files which are updated in an ongoing manner. The release directory is only updated when a release has been built.

Development files

Within the dev/ontology subdirectory, you will find a number of OWL files. Details of these files can be found in the ontology directory's README.

Release files

Within the release/ subdirectory are the various files that are published with each SWO release. Details of releases are available in the release directory README.

Release Policy

  1. Releases occur on an ad hoc basis, as required by our users. All releases of the Software Ontology can always be found at

  2. Assigned identifiers will remain on a class and will not be deleted from the OWL files. Classes that are no longer required will be subclassed under the obsolete SWO class (child of DeprecatedClass) and stripped of axioms but the URI and original annotation will remain.

  3. Classes that change their intended meaning significantly (i.e. they denote a new entity) will be assigned a new URI and the old URI will be made obsolete as per the above.

  4. A release notes file will be attached to each release as a and will outline major changes to the ontology.

Release files are created using ROBOT via a controlling Makefile.

Tools Used

Ontofox has been used to build swo-external containing all of the imported classes and associated axioms. Protege (including versions 4.3.0 and 5.2.0) has been used to create the core OWL file and to view and check all development ontology files. ROBOT has been used to merge and build the release files as well as perform a number of housekeeping tasks.


The SWO License is available at

For license information for the external ontologies used to create SWO, please see our Licensing Compliance page.

Restructuring for Release 1.7

Due to improvements in automatically building an ontology via Ontofox and ROBOT, we no longer needed to import all of EDAM. Release 1.7 was the first to employ these semi-automated updates. This allows SWO to be easily aligned with any new releases of its imported ontologies and creates a much simpler build procedure.

Previously, SWO was built with a series of modular OWL files labelled swo_*.owl. While this made things easier in previous years, the number of development files was getting unwieldy. Currently, the only file imported by the development version of SWO is the automatically-generated one produced by Ontofox, which pulls in all of the latest annotation and hierarchies for the imported classes.

Finally, the IRIs across all SWO classes were reconciled according to the official SWO IRI naming scheme. As such, many IRIs were deprecated and new IRIs issued. Full details are available at the IRI Refactoring Issue in the issue tracker.


The Software Ontology (SWO) is a resource for describing software tools, their types, tasks, versions, licences, provenance and associated data.




No packages published

Contributors 4

You can’t perform that action at this time.