From 9ddd97e9e2b077221f8a13b10441261b98c73b8a Mon Sep 17 00:00:00 2001 From: Boris Pelakh Date: Fri, 2 Jul 2021 11:44:08 -0400 Subject: [PATCH 1/3] Addressing multiple issues (126, 136, 171, 174: - Renamed decimalValue to numericValue - Changes to Person, including name and hasBirthDate - Refactored network connections, renaming properties and tightening up their definition - Clarified definition of ContemporaneousEvent --- docs/ReleaseNotes.md | 12 ++++- gistCore.ttl | 117 ++++++++++++++++++++++++++++--------------- 2 files changed, 88 insertions(+), 41 deletions(-) diff --git a/docs/ReleaseNotes.md b/docs/ReleaseNotes.md index befc2986..bfff9e4e 100644 --- a/docs/ReleaseNotes.md +++ b/docs/ReleaseNotes.md @@ -8,7 +8,16 @@ Release 10.0.0 - Renamed `MimeType` to `MediaType` to be consistent with [IANA guidelines](https://www.iana.org/assignments/media-types/media-types.xhtml) and [RFC6838](https://tools.ietf.org/html/rfc6838). Issue [#434](). - +- Renamed `gist:decimalValue` to `gist:numericValue` and expanded property range to include all numeric data types + supported by OWL. Issue [#171]() +- Changes to and affecting `gist:Person` ([#136](https://github.com/semanticarts/gist/issues/136)): + - Removed `owl:someValuesFrom gist:name` restriction from `gist:Person`. + - Made `gist:hasBirthDate` a sub-property of `gist:start` rather than `gist:actualStart`. +- Refactored the way network connections are modeled per Issue [#126](): + - `networkConnection`, `hasFromNode` and `hasToNode` have been renamed to `links`, `linksFrom` and `linksTo`, respectively. + - Added a restriction on `NetworkLink` that it must have exactly 2 links. + - Added restrictions on `NetworkLink` and `NetworkNode` that they must be `memberOf` a `Network`. + ### Minor Updates - Added annotation properties which provide usage guidance for properties without the constraints imposed by `rdfs:range` and `rdfs:domain`: Issue [#389](https://github.com/semanticarts/gist/issues/389) @@ -20,6 +29,7 @@ Release 10.0.0 ### Patch Updates - Updated annotations for `basedOn` and `basisFor` properties. Issue [#139](https://github.com/semanticarts/gist/issues/139) - `hasDirectSubCategory` is now a sub-property of `hasSubCategory`, as it was always supposed to be. Issue [#481](https://github.com/semanticarts/gist/issues/481) +- Clarified the definition of `ContemporaneousEvent`. Issue [#174](). Import URL: . diff --git a/gistCore.ttl b/gistCore.ttl index e231d5d3..970358bc 100644 --- a/gistCore.ttl +++ b/gistCore.ttl @@ -424,7 +424,7 @@ gist:ContemporaneousEvent ] ) ; ] ; - skos:definition "An event that actually started after the present time. When we record an end time it ceases to be contemporaneous"^^xsd:string ; + skos:definition "An event that actually started before the present time. When we record an end time it ceases to be contemporaneous."^^xsd:string ; skos:prefLabel "Contemporaneous Event"^^xsd:string ; skos:scopeNote "All contemporaneous events eventually end and, due to the nature of the open world, we can never be sure that a contemporaneous event hasn't ended. As a result, this is really a contemporaneous and historical event."^^xsd:string ; . @@ -1452,7 +1452,7 @@ gist:Magnitude ] [ a owl:Restriction ; - owl:onProperty gist:decimalValue ; + owl:onProperty gist:numericValue ; owl:someValuesFrom xsd:double ; ] ) ; @@ -1637,12 +1637,33 @@ gist:Network gist:NetworkLink a owl:Class ; + owl:equivalentClass [ + a owl:Class ; + owl:intersectionOf ( + [ + a owl:Restriction ; + owl:onProperty gist:links ; + owl:onClass gist:NetworkNode ; + owl:qualifiedCardinality "2"^^xsd:integer ; + ] + [ + a owl:Restriction ; + owl:onProperty gist:memberOf ; + owl:someValuesFrom gist:Network ; + ] + ) ; + ] ; skos:definition "A link in a network. This is the abstraction of the network. The physical instantiation couple be pipes, or wire but may also be non physical such as wireless networks or organization structures"^^xsd:string ; skos:prefLabel "Network Link"^^xsd:string ; . gist:NetworkNode a owl:Class ; + rdfs:subClassOf [ + a owl:Restriction ; + owl:onProperty gist:memberOf ; + owl:someValuesFrom gist:Network ; + ] ; skos:definition "A node in a network. Note the network is the abstract representation of the network. It is physically instantiated with equipment, or in some cases People."^^xsd:string ; skos:prefLabel "Network Node"^^xsd:string ; . @@ -1826,11 +1847,6 @@ gist:Person owl:onProperty gist:offspringOf ; owl:someValuesFrom gist:Person ; ] - [ - a owl:Restriction ; - owl:onProperty gist:name ; - owl:someValuesFrom xsd:string ; - ] ) ; ] ; skos:definition "A human being that may or may not still be alive."^^xsd:string ; @@ -2733,8 +2749,8 @@ gist:_one_day owl:Thing , gist:Duration ; - gist:decimalValue "1.0"^^xsd:double ; gist:hasUoM gist:_day ; + gist:numericValue "1.0"^^xsd:double ; . gist:_one_millisecond @@ -2743,8 +2759,8 @@ gist:_one_millisecond owl:Thing , gist:Duration ; - gist:decimalValue "1.0"^^xsd:double ; gist:hasUoM gist:_millisecond ; + gist:numericValue "1.0"^^xsd:double ; . gist:_one_minute @@ -2753,8 +2769,8 @@ gist:_one_minute owl:Thing , gist:Duration ; - gist:decimalValue "1.0"^^xsd:double ; gist:hasUoM gist:_minute ; + gist:numericValue "1.0"^^xsd:double ; . gist:_second @@ -2937,14 +2953,6 @@ gist:convertToStandard skos:prefLabel "convert to standard"^^xsd:string ; . -gist:decimalValue - a owl:DatatypeProperty ; - rdfs:domain gist:Magnitude ; - rdfs:range xsd:double ; - skos:definition "The actual value of a magnitude."^^xsd:string ; - skos:prefLabel "decimal value"^^xsd:string ; - . - gist:denominator a owl:ObjectProperty ; rdfs:domain gist:RatioUnit ; @@ -3172,12 +3180,12 @@ gist:hasBaseUnit gist:hasBirthDate a owl:ObjectProperty ; - rdfs:subPropertyOf gist:actualStart ; + rdfs:subPropertyOf gist:start ; rdfs:domain gist:LivingThing ; rdfs:range gist:TimeInstant ; skos:definition "Date a living thing is or will be born."^^xsd:string ; - skos:editorialNote "For 10.0.0 release: This property will be a subproperty of gist:start, rather than gist:actualStart (as currently), to acknowledge the fact that the birth may not yet have occurred. In this case, the birthdate is expected although not known. [Change this note to a skos:scopeNote.]"^^xsd:string ; skos:prefLabel "has birthdate"^^xsd:string ; + skos:scopeNote "This property is a subproperty of gist:start, rather than gist:actualStart (as formerly), to acknowledge the fact that the birth may not yet have occurred. In this case, the birthdate is expected although not known."^^xsd:string ; . gist:hasCommunicationAddress @@ -3233,13 +3241,6 @@ gist:hasDirectSuperCategory skos:scopeNote "Unlike its superproperty gist:hasSuperCategory, this property is not transitive. It is essentially the same as the non-transitive skos:broader, using gist:Category rather than skos:Concept."^^xsd:string ; . -gist:hasFromNode - a owl:ObjectProperty ; - rdfs:subPropertyOf gist:networkConnection ; - skos:definition "The connections at the abstract level of a network. Note this is directed but the parent is the undirected version"^^xsd:string ; - skos:prefLabel "has from node"^^xsd:string ; - . - gist:hasGetter a owl:ObjectProperty ; rdfs:subPropertyOf gist:hasParticipant ; @@ -3419,13 +3420,6 @@ gist:hasTag skos:prefLabel "has tag"^^xsd:string ; . -gist:hasToNode - a owl:ObjectProperty ; - rdfs:subPropertyOf gist:networkConnection ; - skos:definition "The connections at the abstract level of a network. Note this is directed but the parent is the undirected version"^^xsd:string ; - skos:prefLabel "has to node"^^xsd:string ; - . - gist:hasUniqueNavigationalParent a owl:FunctionalProperty , @@ -3496,6 +3490,26 @@ gist:license skos:prefLabel "license"^^xsd:string ; . +gist:links + a owl:ObjectProperty ; + skos:definition "Abstract connection for when connections are undirected"^^xsd:string ; + skos:prefLabel "links"^^xsd:string ; + . + +gist:linksFrom + a owl:ObjectProperty ; + rdfs:subPropertyOf gist:links ; + skos:definition "The connections at the abstract level of a network. Note this is directed but the parent is the undirected version"^^xsd:string ; + skos:prefLabel "links from"^^xsd:string ; + . + +gist:linksTo + a owl:ObjectProperty ; + rdfs:subPropertyOf gist:links ; + skos:definition "The connections at the abstract level of a network. Note this is directed but the parent is the undirected version"^^xsd:string ; + skos:prefLabel "links to"^^xsd:string ; + . + gist:localDate a owl:DatatypeProperty ; rdfs:domain gist:TimeInstant ; @@ -3566,12 +3580,6 @@ gist:name skos:scopeNote "For more formal use, consider using a sub property of the object property, identifiedBy."^^xsd:string ; . -gist:networkConnection - a owl:ObjectProperty ; - skos:definition "Abstract connection for when connections are undirected"^^xsd:string ; - skos:prefLabel "network connection"^^xsd:string ; - . - gist:numerator a owl:ObjectProperty ; rdfs:domain gist:RatioUnit ; @@ -3580,6 +3588,35 @@ gist:numerator skos:prefLabel "numerator"^^xsd:string ; . +gist:numericValue + a owl:DatatypeProperty ; + rdfs:domain gist:Magnitude ; + rdfs:range [ + owl:unionOf ( + xsd:double + xsd:float + owl:real + owl:rational + xsd:decimal + xsd:integer + xsd:nonNegativeInteger + xsd:nonPositiveInteger + xsd:positiveInteger + xsd:negativeInteger + xsd:long + xsd:int + xsd:short + xsd:byte + xsd:unsignedLong + xsd:unsignedInt + xsd:unsignedShort + xsd:unsignedByte + ) ; + ] ; + skos:definition "The actual value of a magnitude."^^xsd:string ; + skos:prefLabel "numeric value"^^xsd:string ; + . + gist:occursAt a owl:ObjectProperty ; skos:definition "The geospatial place where something happened or will happen"^^xsd:string ; From 5299761180e98e2b78bb2dae1fae828c3ee47d69 Mon Sep 17 00:00:00 2001 From: Boris Pelakh Date: Mon, 5 Jul 2021 13:27:59 -0400 Subject: [PATCH 2/3] Address review comments. --- docs/ReleaseNotes.md | 4 ++-- gistCore.ttl | 40 ++++++++++++++++++++++++---------------- 2 files changed, 26 insertions(+), 18 deletions(-) diff --git a/docs/ReleaseNotes.md b/docs/ReleaseNotes.md index bfff9e4e..95ce83a7 100644 --- a/docs/ReleaseNotes.md +++ b/docs/ReleaseNotes.md @@ -10,10 +10,10 @@ Release 10.0.0 and [RFC6838](https://tools.ietf.org/html/rfc6838). Issue [#434](). - Renamed `gist:decimalValue` to `gist:numericValue` and expanded property range to include all numeric data types supported by OWL. Issue [#171]() -- Changes to and affecting `gist:Person` ([#136](https://github.com/semanticarts/gist/issues/136)): +- Changes to and affecting `gist:Person`, as per issue [#136](https://github.com/semanticarts/gist/issues/136): - Removed `owl:someValuesFrom gist:name` restriction from `gist:Person`. - Made `gist:hasBirthDate` a sub-property of `gist:start` rather than `gist:actualStart`. -- Refactored the way network connections are modeled per Issue [#126](): +- Refactored the way network connections are modeled per issue [#126](): - `networkConnection`, `hasFromNode` and `hasToNode` have been renamed to `links`, `linksFrom` and `linksTo`, respectively. - Added a restriction on `NetworkLink` that it must have exactly 2 links. - Added restrictions on `NetworkLink` and `NetworkNode` that they must be `memberOf` a `Network`. diff --git a/gistCore.ttl b/gistCore.ttl index 970358bc..82d430fd 100644 --- a/gistCore.ttl +++ b/gistCore.ttl @@ -426,7 +426,6 @@ gist:ContemporaneousEvent ] ; skos:definition "An event that actually started before the present time. When we record an end time it ceases to be contemporaneous."^^xsd:string ; skos:prefLabel "Contemporaneous Event"^^xsd:string ; - skos:scopeNote "All contemporaneous events eventually end and, due to the nature of the open world, we can never be sure that a contemporaneous event hasn't ended. As a result, this is really a contemporaneous and historical event."^^xsd:string ; . gist:Content @@ -1631,7 +1630,8 @@ gist:Network ] ) ; ] ; - skos:definition "A network is a connected set of links and nodes"^^xsd:string ; + skos:definition "A network is a set of nodes connected by links"^^xsd:string ; + skos:example "A physical network could include connected computers or routers, whereas a social network would consist of related Person or Organization instances."^^xsd:string ; skos:prefLabel "Network"^^xsd:string ; . @@ -1646,6 +1646,11 @@ gist:NetworkLink owl:onClass gist:NetworkNode ; owl:qualifiedCardinality "2"^^xsd:integer ; ] + [ + a owl:Restriction ; + owl:onProperty gist:links ; + owl:allValuesFrom gist:NetworkNode ; + ] [ a owl:Restriction ; owl:onProperty gist:memberOf ; @@ -1653,8 +1658,10 @@ gist:NetworkLink ] ) ; ] ; - skos:definition "A link in a network. This is the abstraction of the network. The physical instantiation couple be pipes, or wire but may also be non physical such as wireless networks or organization structures"^^xsd:string ; + skos:definition "An abstract representation of the connection between two or more nodes in a network."^^xsd:string ; + skos:example "A network link may be physical, such as pipes, wired or wireless networks, but may also be a link in a non-physical network, such as organizational structures or social networks."^^xsd:string ; skos:prefLabel "Network Link"^^xsd:string ; + skos:scopeNote "Each NetworkLink is connected to a NetworkNode via the property 'gist:links' or one of its subproperties."^^xsd:string ; . gist:NetworkNode @@ -1664,7 +1671,8 @@ gist:NetworkNode owl:onProperty gist:memberOf ; owl:someValuesFrom gist:Network ; ] ; - skos:definition "A node in a network. Note the network is the abstract representation of the network. It is physically instantiated with equipment, or in some cases People."^^xsd:string ; + skos:definition "A node in a network."^^xsd:string ; + skos:example "A person is a node in a social network; a valve is a node in a network of pipes."^^xsd:string ; skos:prefLabel "Network Node"^^xsd:string ; . @@ -3492,21 +3500,21 @@ gist:license gist:links a owl:ObjectProperty ; - skos:definition "Abstract connection for when connections are undirected"^^xsd:string ; + skos:definition "Relates a NetworkLink to a NetworkNode that it connects to another node. Used when the connections are undirected, or the direction is not known."^^xsd:string ; skos:prefLabel "links"^^xsd:string ; . gist:linksFrom a owl:ObjectProperty ; rdfs:subPropertyOf gist:links ; - skos:definition "The connections at the abstract level of a network. Note this is directed but the parent is the undirected version"^^xsd:string ; + skos:definition "Relates a NetworkLink to its origin NetworkNode. Unlike the superproperty, this represents a directed connection."^^xsd:string ; skos:prefLabel "links from"^^xsd:string ; . gist:linksTo a owl:ObjectProperty ; rdfs:subPropertyOf gist:links ; - skos:definition "The connections at the abstract level of a network. Note this is directed but the parent is the undirected version"^^xsd:string ; + skos:definition "Relates a NetworkLink to its destination NetworkNode. Unlike the superproperty, this represents a directed connection."^^xsd:string ; skos:prefLabel "links to"^^xsd:string ; . @@ -3593,24 +3601,24 @@ gist:numericValue rdfs:domain gist:Magnitude ; rdfs:range [ owl:unionOf ( - xsd:double - xsd:float - owl:real owl:rational + owl:real + xsd:byte xsd:decimal + xsd:double + xsd:float + xsd:int xsd:integer + xsd:long + xsd:negativeInteger xsd:nonNegativeInteger xsd:nonPositiveInteger xsd:positiveInteger - xsd:negativeInteger - xsd:long - xsd:int xsd:short - xsd:byte - xsd:unsignedLong + xsd:unsignedByte xsd:unsignedInt + xsd:unsignedLong xsd:unsignedShort - xsd:unsignedByte ) ; ] ; skos:definition "The actual value of a magnitude."^^xsd:string ; From 8b73bf1c93443ddcc54f427317562844c6bc4ead Mon Sep 17 00:00:00 2001 From: Boris Pelakh Date: Wed, 14 Jul 2021 15:28:20 -0400 Subject: [PATCH 3/3] Fix definition of ContemporaneousEvent as per review. --- gistCore.ttl | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gistCore.ttl b/gistCore.ttl index 82d430fd..34b8df72 100644 --- a/gistCore.ttl +++ b/gistCore.ttl @@ -424,8 +424,9 @@ gist:ContemporaneousEvent ] ) ; ] ; - skos:definition "An event that actually started before the present time. When we record an end time it ceases to be contemporaneous."^^xsd:string ; + skos:definition "An event that has already started but has not yet ended."^^xsd:string ; skos:prefLabel "Contemporaneous Event"^^xsd:string ; + skos:scopeNote "When the event actually ends, it will cease being contemporaneous."^^xsd:string ; . gist:Content @@ -1630,7 +1631,7 @@ gist:Network ] ) ; ] ; - skos:definition "A network is a set of nodes connected by links"^^xsd:string ; + skos:definition "A network is a set of nodes connected by links."^^xsd:string ; skos:example "A physical network could include connected computers or routers, whereas a social network would consist of related Person or Organization instances."^^xsd:string ; skos:prefLabel "Network"^^xsd:string ; .