Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Document Approved: 2021-06-18 (Quorum achieved on 2021-06-11)

Overview

The IRI structure of the IOF references the OWL documents providing a versioned and not-versioned form. The latter form will always refer to the latest released version of the documents. For the IRI syntax, please refer to RFC 3987 from The Internet Engineering Task Force (IETF).

This document provides the normative requirements for all IRIs created in the IOF for consistency and usability. An English language class and property naming scheme was selected after considering a numerical identity scheme to facilitate the use of the ontologies. The following sections define the rules for constructing the IRI and version IRI per OWL 2 specifications (reference below).

The following rules MUST be followed when reviewing this document, these are taken from IETF RFC 2119 (simplified):

  1. MUST: This word means that the definition is an absolute requirement of the specification.

  2. MUST NOT: This phrase means that the definition is an absolute prohibition of the specification.

  3. SHOULD: This word means that there may exist valid reasons in particular circumstances to ignore a particular item, but the full implications MUST be understood and carefully weighed before choosing a different course.

  4. SHOULD NOT: This phrase means that there may exist valid reasons in particular circumstances when the particular behavior is acceptable or even useful, but the full implications should be understood and the case carefully weighed before implementing any behavior described with this label.

  5. MAY: This word means that an item is truly optional. One vendor may choose to include the item because a particular marketplace requires it or because the vendor feels that it enhances the product while another vendor may omit the same item.

Protocol and Authority

All IOF IRIs must MUST be resolvable and refer to a resource that can be retrieved from the internet. The form of the IRI must MUST specify the protocol as either HTTP or HTTPS and the authority must MUST be a domain administered and owned by the IOF or its parent organization. The authority can begin with an alternate to www depending on the name resolution requirements of the IOF and the routing of requests. For example, www.industrialontologies.org or onto.industrialontologies.org would be valid authorities. The IOF must IOF MUST choose a single authority for all ontologies released by the IOF. The authority purl.industrialontologies.org is used for illustrative purposes only. When decided, this document MUST be revised with the normative authority.

  • For the given IRI: https://purl.industrialontologies.org/ontology/supplychain

  • The protocol: https

  • The authority: purl.industrialontologies.org

The authority MUST be a domain administered and owned by the IOF or its parent organization. The IOF MUST choose a single authority for all ontologies released by the IOF. The authority MUST be purl.industrialontologies.org unless it is not possible due to technical reasons. Otherwise, the authority may begin with an alternative such as purl.industrialontologies.org or onto.

Root

The root of the path must be /ontology. This industrialontologies.org.

IRI Path

In accordance with IETF RFC 3987, the Path component of the IRI MUST immediately follow the authority starting with a forward-slash (/), and the Path parts MUST be separated by forward-slashes (/). The first part of the Path is referred to as the Path Root.

  • For the given IRI: https://purl.industrialontologies.org/ontology/supplychain

  • The path component: /ontology/supplychain

IRI Path Root

The IRI Path Root MUST be /ontology. The Root provides the ability to have documentation and other supporting resources referenced in other top-level alternate Root resources, such as /documentation or /references as alternative root portions of the path.

...

. The IOF MUST designate each root resource for a specified use.

  • For the given IRI: https://purl.industrialontologies.org/ontology/supplychain

  • The root part: /ontology

Topic Area

A topic represents a domain or area of concern addressed by one or more working groups. The topic organizes sub-topics and modules. The IOF will provide the ontology organization rules for topics, sub-topics, and ontologies in a future publication. All content within a topic MUST be released with a common version. The version of one topic does not constrain another topic’s version.

The topic areas MUST form the second portion path part of the IRI. The topic areas are MUST be all lower case with no sparation separation or punctuation between words. All acronyms must MUST be spelled out, execept except for words defined in the dictionary like radar (RADAR) always given in lowercase. The following are examples of topic areas:

  • httphttps://wwwpurl.industrialontologies.org/ontology/supplychain

  • httphttps://wwwpurl.industrialontologies.org/ontology/foundation

  • httphttps://wwwpurl.industrialontologies.org/ontology/productionprocess

IRI and Version IRI

IOF ontologies must MUST provide a non-version and a non-version IRIIRI (referred to as the IRI) and version IRI in the OWL XML file. The version IRI must MUST use the current release date of the version in YYYYMMDD form, such as 20210601 for June 1, 2021. When a versioned IRI is formed, the date must MUST appear after the topic. In the following examples, the sub-topic area is given to illustrate the placement of the version (see next section: Sub-Topic). All sub-topics and modules within a topic MUST share a common version date and be released together.

The non-versioned IRI MUST always reference the latest released version of the ontology.

  • Versioned IRI: httphttps://wwwpurl.industrialontologies.org/ontology/supplychain/20210621/meta

  • Non-Versioned IRI: httphttps://wwwpurl.industrialontologies.org/ontology/supplychain/meta

...

Each ontology may have an ontology IRI, which is used to identify an ontology. If an ontology has an ontology IRI, the ontology may additionally have a version IRI, which is used to identify the version of the ontology. The version IRI may be, but need not be, equal to the ontology IRI. An ontology without an ontology IRI must notMUST NOT contain a version IRI.

Sub-Topic (Optional)

When specified, a sub-topic must MUST appear after the version date in a versioned IRI or after the topic in a non-versioned IRI. In this caseFor example, metadata associated with the supplychain model ontology is placed in under the meta locationsmeta sub-topc. There MAY be multiple sub-topics for any topic. The sub-topic must MUST be lowercase with no separation or punctuation between words. Sub-topics MAY have multiple ontologies.

The meta sub-topic area must MUST be used for ontologies consisting solely of annotations properties. For example:

  • IRI:

  • https://purl.industrialontologies.org/ontology/core/meta/AnnotationVocabulary/

  • Version IRI:

...

  • https://purl.industrialontologies.org/ontology/core/20210601/meta/AnnotationVocabulary/

Ontology

An ontology is a set of related ontological classes, properties, and axioms encoded in a specific representation, such as RDF/XML, Turtle, or CLIF. A given HTTP server delivers an ontology in a serialization using the HTTP/1.1 Accept header of the request. See Section 14 of IETF RFC 2616. The serialized representation is referred to as an ontology file.

Following the topic and sub-topic resource locations, the ontology file name is MUST be given without extension as follows:

  • httphttps://wwwpurl.industrialontologies.org/ontology/foundationcore/meta/AnnotationVocabulary/

  • https://purl.industrialontologies.org/ontology/core/domainindependent/Stasis/

    • The Stasis ontology of the domainindependent sub-topic of the core topic

  • https://purl.industrialontologies.org/ontology/core/domainindependent/Stasis/Stasis

    • Class Stasis in the Stasis ontology of the domainindependent sub-topic of the core topic.

  • https://purl.industrialontologies.org/ontology/core/domainindependent/Stasis/triggers

    • Object property triggers in the Stasis ontology of the domain independent sub-topic of the core topic.

  • https://purl.industrialontologies.org/ontology/supplychain/SupplyChainReferenceOntology/SupplyChainShippingProcess

    • Class SupplyChainShippingProcess of the SupplyChainReferenceOntology ontology of the supplychain topic.

The ontology name must MUST be in Upper Camel Case, each word capitalized with no separation between words. All acronyms must MUST be spelled out except when in the dictionary, like RADAR.

The ontology name MUST NOT have any extensions in the IRI. The following parts of the IRI, class and property names are , MUST be separated from the file name by a forward slash / and the IRI MUST end with a forward slash /. owl:imports rdf:resource reference MUST use the IRI with a trailing /.

  • <owl:imports rdf:resource="<https://purl.industrialontologies.org/ontology/core/domainindependent/Stasis/>"/>

Class Names

Class names must MUST be given in Upper Camel Case, each word capitalized, and no separation or punctuation between words. As with the file module names, no acronyms are permitted MUST NOT occur except those in the dictionary, such as RADAR.

  • .../ontology/foundationsupplychain/SupplyChainSupplyChainReferenceOntology/SupplyChainShippingProcess

The versioned forms are as follows:

  • .../ontology/supplychain/20210621/SupplyChainSupplyChainReferenceOntology/SupplyChainShippingProcess

Property Names (Relations)

All property names must MUST be in lower Camel Case, the first word lower case and each subsequent word capitalized with no separation or punctuation between words.

  • .../ontology/foundation/meta/AnnotationVocabulary/usageNote

  • The versioned forms are as follows:

  • .../ontology/foundation/20210611/meta/AnnotationVocabulary/usageNote

...

All object property names must MUST be verbs or a verb phrase. For example:

  • hasParticipant

  • participatesIn

Data Properties

A data property must MUST be a verb phrase starting with is for boolean (true/false) or has for any other data type. The data property SHOULD end with Value.

Examples:

  • hasTaghasTagValue

  • hasDateValue

  • isTransferable

Annotation properties

Must follow except property capitalization rules and must MUST be placed in the meta sub-topic area, as follows.

  • .../ontology/foundation/20210611/meta/AnnotationVocabulary/usageNote

  • .../ontology/foundation/20210611/meta/AnnotationVocabulary/adaptedFrom

Old notes for reference…

IRI Structural Rules in the following order

  • Authority: www.industrialontologies.org

  • Top: /ontology

  • Topic areas are lowercase with no punctuation or separation:

    • /supplychain

    • /foundation

  • Versioned IRI:

    • Release date after highest level topic area

    • Date format: YYYYMMDD

    • /supplychain/20210601

    • /foundation/20210601/meta

  • File-name Upper Camel Case with no punctuation: AnnotationVocabulary

    • Uppercase first letter of each word, no separation

    • All acronyms are spelled out

      • Exceptions like RADAR, words appearing in the dictionary

  • Class and properties separated from path with a /

    • /ontology/foundation/meta/AnnotationVocabulary/usageNote

  • Class name Upper Camel Case:

    • Uppercase first letter of each word, no separation

    • All acronyms are spelled out

      • Exceptions like RADAR, words appearing in the dictionary

  • Object property Lower Camel Case:

    • Lowercase first letter, uppercase each following word

    • All property names must be verb or verb phrase

    • hasParticipant

  • Data properties and annotation names Lower Camel Case

    • Lowercase first letter, uppercase each following word

    • Verb phrase starting with has

    • hasTag

    • hasDateValue

  • Annotation properties

    • Lowercase first letter, uppercase each following word

    • usageNote

    • adaptedFrom

  • Versioned and unversioned forms must be provided.

Examples

...

Unversioned: /ontology/foundation/meta/AnnotationVocabulary/usageNote

...

Versioned: /ontology/foundation/20210601/meta/AnnotationVocabulary/usageNote

...

TOB Vote:

Member

Vote

1

William Sobel

YES

2

Farhad Ameri

YES

3

Elisa Kendall

YES

4

Chris Will

YES

5

Dusan Sormaz

YES

6

Walter Terkaj

YES

7

Melinda Hodkiewicz

YES

8

Rebecca Siafaka

YES

9

Dimitris Kiritsis

YES

10

Serm Kulvatunyou

YES

11

Evan Wallace

YES

12

Hedi Karray

YES

13

Hyunmin Cheong

14

Lu Jinzhi

YES

15

Peter Denno

16

Ana Correia

YES

17

Michael Gruninger

18

tschneider

19

Total

YES: 14, NO: 0, No Response: 4