Principle: URI/Identifier Space (principle 3)
- Overview
- Open (principle 1)
- Common Format (principle 2)
- URI/Identifier Space (principle 3)
- Versioning (principle 4)
- Scope (principle 5)
- Textual Definitions (principle 6)
- Relations (principle 7)
- Documentation (principle 8)
- Documented Plurality of Users (principle 9)
- Commitment To Collaboration (principle 10)
- Locus of Authority (principle 11)
- Naming Conventions (principle 12)
- Notification of Changes (principle 13)
- Maintenance (principle 16)
- Responsiveness (principle 20)
GO TO: Recommendations/Requirements | Implementation | Examples/Counter‑Examples | Criteria for Review | Feedback/Discussion
Summary
Each ontology MUST have a unique IRI in the form of an OBO Foundry persistent URL (PURL) that includes the ontology’s short namespace.
Purpose
A unique namespace within the OBO Foundry Library allows the source of an element or term (e.g., class, property) from any ontology to be identified immediately by the prefix of the identifier. It also allows ontology element IRIs to be shortened to a compact URI or CURIE, which allows developers to use CURIES for working with ontologies. OWL syntax allows for ontologies and their elements to have identifiers in the form of an IRI. The OBO Foundry uses IRIs in the form of PURLs to allow an ontology and its elements to be resolvable (findable on the web). PURLs are URLs (and thus locate the resource) that are permanent or redirectable, allowing the URL to point to a new location when the resource moves. OBO Foundry PURLs use a standard format that includes the ontology namespace so that they can be easily maintained by a group of volunteers, and so ontology maintainers can update the location their PURL points to using a GitHub pull request.
Recommendations and Requirements
Each ontology MUST have a unique IRI in the form of an OBO Foundry permanent URL (PURL). The PURL must include the ontology namespace, which is a short string of letters (usually 2-5) that represents the ontology. Namespaces MUST be approved by the OBO Foundry Operations Committee. Every element (class, property, etc.) created by the ontology MUST use the namespace in the identifier of each element, as specified in the OBO Foundry ID policy.
Implementation
Ontology Namespace:
The ontology namespace MUST be unique; that is, it MUST NOT be in current use or have been used in the past. When used as part of the ontology IRI, the namespace is in lower case. When used as part of a CURIE, on its own, or as part of a term ID, the namespace MUST be capitalized (Note: this applies to ontologies submitted after 1st June 2024; mixed-case prefixes for ontologies submitted before this date may be retained).
To request a new namespace, ontology developers MUST follow the guidelines outlined here. Note that very short namespaces (2-3 characters) are reserved for ontologies that cover a general domain and are likely to be frequently used.
Ontology IRI:
The primary IRI for an OBO ontology IRI MUST have the following format: https://purl.obolibrary.org/obo/$namespace.owl
Note: To conform with OBO Foundry Principle 2, the ontology IRI MUST resolve to the ontology file, not a landing page.
For guidelines on how to create IRIs for ontology elements/terms, see the OBO Foundry ID policy.
Examples
Namespace | Ontology IRI | Term IRI | Term CURIE |
---|---|---|---|
GO | http://purl.obolibrary.org/obo/go.owl | http://purl.obolibrary.org/obo/GO_0008150 | GO:0008150 |
PCO | http://purl.obolibrary.org/obo/pco.owl | http://purl.obolibrary.org/obo/PCO_0000000 | PCO:0000000 |
Counter Examples
The following counter examples are valid ontology IRIs, but do not conform with OBO Foundry principles.
- http://iridl.ldeo.columbia.edu/ontologies/SWEET.owl
Furthermore, these IRIs do not resolve to the ontology file.
-
http://purl.org/dc/terms/
-
http://dbpedia.org/ontology/
Criteria for Review
The ontology namespace MUST be registered following the procedures outlined within the OBO Foundry membership requirements and technical details document. In addition, the ontology IRI MUST follow the format given above.
This check is automatically validated. The automatic check fully covers the requirements for this principle.
Feedback and Discussion
To suggest revisions or begin a discussion pertaining to this principle, please create an issue on GitHub.
To suggest revisions or begin a discussion pertaining to the automated validation of this principle, please create an issue on GitHub.
See also this discussion of URI capitalization by the OBO Foundry Operations Committee.