From 99b2798b9a810b32763ca8fefe041fa7b65898fb Mon Sep 17 00:00:00 2001 From: uscholdm Date: Wed, 4 Oct 2023 20:49:59 -0400 Subject: [PATCH 1/7] update readme file and tweaked a few annotations --- README.md | 11 ++++++++++- examples/examplesVersionDependency.ttl | 2 +- versioning.ttl | 2 +- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 5b12e48..266c468 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,11 @@ # versioning-ontology -Generic concepts for doing semantic versioning for a suite of artifacts for semantic systems in production. +This ontology represents generic concepts for doing semantic versioning and dependency tracking for a suite of artifacts for semantic systems in production. Versioned artifacts are given semantic version numbers of the form "N.N.N" (as described in https://semver.org/). This ontology provides the ability to state that a particular version of one ontology depends on the semantic version number of another ontology being in a certain range. For example, version 6.3.0 of a disease taxonomy depends on: +1. the version of a disease ontology being at least 3.1.0 and less than 4.0.0. +2. the version of gist core being between at least 12.1.0 and less than 13.0.0. + +The need for such specifying such dependencies arises when ontologies use terms from imported ontologies. + +Three SPARQL queries are provided of perform the following tasks: +1. Find all versioned artifacts and their dependencies. +2. Find all cases where a version dependency requirement is not met. Return result in English. +3. Find all cases where a version dependency requirement is not met. Return result as a SHACL report. diff --git a/examples/examplesVersionDependency.ttl b/examples/examplesVersionDependency.ttl index 2ab4a62..dbf19d4 100644 --- a/examples/examplesVersionDependency.ttl +++ b/examples/examplesVersionDependency.ttl @@ -31,7 +31,7 @@ ; skos:definition "A hierarchy of diseases."^^xsd:string ; skos:prefLabel "Disease Taxonomy"^^xsd:string ; - skos:scopeNote "The semantic version number for the disease taxonomy is 6.3.0. This version depends on the version of the disease ontology being between 3.1.0 and 4.0.0. It also depends on the version of gist core being between 12.1.0 and 13.0.0."^^xsd:string ; + skos:scopeNote "The semantic version number for the disease taxonomy is 6.3.0. This version depends on the version of the imported disease ontology being at least 3.1.0 and less than 4.0.0. It also depends on the version of gist core being at least 12.1.0 and less than 13.0.0."^^xsd:string ; ver:dependsOn [ a ver:VersionRangeSpec ; diff --git a/versioning.ttl b/versioning.ttl index c9fdeea..a6d6760 100644 --- a/versioning.ttl +++ b/versioning.ttl @@ -114,7 +114,7 @@ ver:VersionedItemCollection ver:dependsOn a owl:ObjectProperty ; skos:definition "Relates something to what it depends on."^^xsd:string ; - skos:example "A given versioned item may depend on a particular version (or range of versions) of another versioned item."^^xsd:string ; + skos:example "Version 6.3.0 of a disease taxonomy depends on the version number of an imported disease ontology being at least 3.1.0 and less than 4.0.0."^^xsd:string ; skos:prefLabel "depends on"^^xsd:string ; . From 2ee0799af7764e7386326363dc2f4b75372f0477 Mon Sep 17 00:00:00 2001 From: uscholdm Date: Wed, 4 Oct 2023 20:57:09 -0400 Subject: [PATCH 2/7] Imports the plain IRI for gistCore, not its versionIRI --- examples/examplesVersionDependency.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/examplesVersionDependency.ttl b/examples/examplesVersionDependency.ttl index dbf19d4..63844f5 100644 --- a/examples/examplesVersionDependency.ttl +++ b/examples/examplesVersionDependency.ttl @@ -25,7 +25,7 @@ a owl:Ontology ; owl:imports , - , + , , ; From c10979765c0f23b489a4b08958b13b4fd1dca8e1 Mon Sep 17 00:00:00 2001 From: uscholdm Date: Wed, 4 Oct 2023 21:24:52 -0400 Subject: [PATCH 3/7] Added versionIRI to gist stub --- examples/examplesVersionDependency.ttl | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/examplesVersionDependency.ttl b/examples/examplesVersionDependency.ttl index 63844f5..860687c 100644 --- a/examples/examplesVersionDependency.ttl +++ b/examples/examplesVersionDependency.ttl @@ -66,6 +66,7 @@ a owl:Ontology ; + owl:versionIRI ; skos:prefLabel "gist"^^xsd:string ; ver:hasVersionNumber [ a ver:SemanticVersionNumber ; From 124e19c5dd4a22fb34f62fa7ef150edc87a3ee08 Mon Sep 17 00:00:00 2001 From: uscholdm Date: Thu, 12 Oct 2023 12:51:05 -0400 Subject: [PATCH 4/7] Tweat README file. Import versionIRI for operators ontology. Moved example annotation. --- README.md | 4 ++-- examples/examplesVersionDependency.ttl | 5 ++--- versioning.ttl | 7 ++++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 266c468..67abaa0 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,9 @@ This ontology represents generic concepts for doing semantic versioning and depe 1. the version of a disease ontology being at least 3.1.0 and less than 4.0.0. 2. the version of gist core being between at least 12.1.0 and less than 13.0.0. -The need for such specifying such dependencies arises when ontologies use terms from imported ontologies. +The need for specifying such dependencies arises when ontologies use terms from imported ontologies. -Three SPARQL queries are provided of perform the following tasks: +Three SPARQL queries are provided to perform the following tasks: 1. Find all versioned artifacts and their dependencies. 2. Find all cases where a version dependency requirement is not met. Return result in English. 3. Find all cases where a version dependency requirement is not met. Return result as a SHACL report. diff --git a/examples/examplesVersionDependency.ttl b/examples/examplesVersionDependency.ttl index 860687c..d7c2221 100644 --- a/examples/examplesVersionDependency.ttl +++ b/examples/examplesVersionDependency.ttl @@ -1,5 +1,5 @@ # imports: https://ontologies.exco.com/exeoDiseases -# imports: https://w3id.org/semanticarts/ontology/gistCore12.1.0 +# imports: https://w3id.org/semanticarts/ontology/gistCore # imports: https://w3id.org/semanticarts/ontology/operators # imports: https://w3id.org/semanticarts/ontology/versioning @@ -13,8 +13,8 @@ a owl:Ontology ; - skos:scopeNote "The version of this ontology does not meet the dependency requirement."^^xsd:string ; skos:prefLabel "Diseases"^^xsd:string ; + skos:scopeNote "The version of this ontology does not meet the dependency requirement."^^xsd:string ; ver:hasVersionNumber [ a ver:SemanticVersionNumber ; ver:uniqueText "3.0.2"^^xsd:string ; @@ -31,7 +31,6 @@ ; skos:definition "A hierarchy of diseases."^^xsd:string ; skos:prefLabel "Disease Taxonomy"^^xsd:string ; - skos:scopeNote "The semantic version number for the disease taxonomy is 6.3.0. This version depends on the version of the imported disease ontology being at least 3.1.0 and less than 4.0.0. It also depends on the version of gist core being at least 12.1.0 and less than 13.0.0."^^xsd:string ; ver:dependsOn [ a ver:VersionRangeSpec ; diff --git a/versioning.ttl b/versioning.ttl index a6d6760..97a353e 100644 --- a/versioning.ttl +++ b/versioning.ttl @@ -1,4 +1,4 @@ -# imports: https://w3id.org/semanticarts/ontology/operators +# imports: https://w3id.org/semanticarts/ontology/operators1.0.0 @prefix ops: . @prefix owl: . @@ -11,10 +11,11 @@ a owl:Ontology ; - owl:imports ; + owl:imports ; owl:versionIRI ; skos:definition "Generic concepts for semantic versioning of a suite of artifacts for semantic systems in production."^^xsd:string ; - skos:editorialNote "Although this was originally intended for semantic version numbers, the ontology could be tweaked in a very small way to use different version numbers, so long as they are ordered."^^xsd:string ; + skos:editorialNote "Although this was originally intended for semantic version numbers, the ontology could be tweaked in a very small way to use different version numbers, so long as they are ordered."^^xsd:string ; + skos:example "The semantic version number for the disease taxonomy is 6.3.0. This version depends on the version of the imported disease ontology being at least 3.1.0 and less than 4.0.0. It also depends on the version of gist core being at least 12.1.0 and less than 13.0.0."^^xsd:string ; skos:prefLabel "Semantic Versioning Ontology"^^xsd:string ; ver:hasVersionNumber [ a ver:SemanticVersionNumber ; From e1bb60ff857331509aa3545cf8db30d495068a10 Mon Sep 17 00:00:00 2001 From: uscholdm Date: Thu, 12 Oct 2023 16:36:58 -0400 Subject: [PATCH 5/7] Only import version IRIs --- examples/examplesVersionDependency.ttl | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/examples/examplesVersionDependency.ttl b/examples/examplesVersionDependency.ttl index d7c2221..386e71f 100644 --- a/examples/examplesVersionDependency.ttl +++ b/examples/examplesVersionDependency.ttl @@ -1,7 +1,7 @@ # imports: https://ontologies.exco.com/exeoDiseases -# imports: https://w3id.org/semanticarts/ontology/gistCore -# imports: https://w3id.org/semanticarts/ontology/operators -# imports: https://w3id.org/semanticarts/ontology/versioning +# imports: https://w3id.org/semanticarts/ontology/gistCore12.2.2 +# imports: https://w3id.org/semanticarts/ontology/operators1.0.0 +# imports: https://w3id.org/semanticarts/ontology/versioning1.0.0 @prefix ops: . @prefix owl: . @@ -13,6 +13,7 @@ a owl:Ontology ; + owl:versionIRI ; skos:prefLabel "Diseases"^^xsd:string ; skos:scopeNote "The version of this ontology does not meet the dependency requirement."^^xsd:string ; ver:hasVersionNumber [ @@ -25,10 +26,11 @@ a owl:Ontology ; owl:imports , - , - , - + , + , + ; + owl:versionIRI ; skos:definition "A hierarchy of diseases."^^xsd:string ; skos:prefLabel "Disease Taxonomy"^^xsd:string ; ver:dependsOn From 74e1859f2e6c0a2483ffc64d9ef761521ed5e6ea Mon Sep 17 00:00:00 2001 From: uscholdm Date: Thu, 12 Oct 2023 20:19:32 -0400 Subject: [PATCH 6/7] Added missing imports to operators and versioning ontologies --- examples/examplesVersionDependency.ttl | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/examples/examplesVersionDependency.ttl b/examples/examplesVersionDependency.ttl index 386e71f..ebc4028 100644 --- a/examples/examplesVersionDependency.ttl +++ b/examples/examplesVersionDependency.ttl @@ -13,6 +13,10 @@ a owl:Ontology ; + owl:imports + , + + ; owl:versionIRI ; skos:prefLabel "Diseases"^^xsd:string ; skos:scopeNote "The version of this ontology does not meet the dependency requirement."^^xsd:string ; @@ -67,6 +71,10 @@ a owl:Ontology ; + owl:imports + , + + ; owl:versionIRI ; skos:prefLabel "gist"^^xsd:string ; ver:hasVersionNumber [ From 4700bb208fbed9aacd3de9bb178b4d4eb67eec28 Mon Sep 17 00:00:00 2001 From: uscholdm Date: Thu, 12 Oct 2023 20:23:48 -0400 Subject: [PATCH 7/7] Fixed typo --- examples/examplesVersionDependency.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/examplesVersionDependency.ttl b/examples/examplesVersionDependency.ttl index ebc4028..2fec5ba 100644 --- a/examples/examplesVersionDependency.ttl +++ b/examples/examplesVersionDependency.ttl @@ -79,7 +79,7 @@ skos:prefLabel "gist"^^xsd:string ; ver:hasVersionNumber [ a ver:SemanticVersionNumber ; - ver:uniqueText "12.2.0"^^xsd:string ; + ver:uniqueText "12.2.2"^^xsd:string ; ] ; .