Skip to content

Commit

Permalink
Apply semi-open vocabulary patterns
Browse files Browse the repository at this point in the history
This is a downstream application of two proposals:

* UCO CP-100 implemented the suggested-value enforcement pattern for
  semi-open vocabularies.
  This was a part of UCO 0.8.0.
* UCO Issue 406 adjusted the implementation pattern from UCO CP-100 to
  account for an OWL requirement on `rdf:List` usage.
  This has been approved for UCO 1.0.0.

A third proposal adjusting the CASE vocabulary namespace, UCO Issue 435,
would also apply, but has not had an approval vote yet.  Due to vote and
other Git logistics, that will be handled separately.

No effects were observed on Make-managed files.

References:
* [UCO OC-12] (CP-100) UCO's idea of "Open vocabulary" does not agree
  with its implementation with owl:oneOf
* ucoProject/UCO#406
* ucoProject/UCO#435

Signed-off-by: Alex Nelson <[email protected]>
  • Loading branch information
ajnelson-nist committed Aug 19, 2022
1 parent 39fa366 commit 28ef8e3
Showing 1 changed file with 37 additions and 1 deletion.
38 changes: 37 additions & 1 deletion ontology/investigation/investigation.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -140,9 +140,39 @@ investigation:Investigation
] ,
[
sh:datatype vocabulary:InvestigationFormVocab ;
sh:message "Value is outside the default vocabulary InvestigationFormVocab." ;
sh:path investigation:investigationForm ;
sh:severity sh:Info ;
] ,
[
sh:maxCount "1"^^xsd:integer ;
sh:minCount "1"^^xsd:integer ;
sh:nodeKind sh:Literal ;
sh:or (
[
sh:datatype vocabulary:InvestigationFormVocab ;
]
[
sh:datatype xsd:string ;
]
) ;
sh:path investigation:investigationForm ;
] ,
[
sh:message "Value is not member of the vocabulary InvestigationFormVocab." ;
sh:or (
[
sh:datatype vocabulary:InvestigationFormVocab ;
sh:in (
"case"^^vocabulary:InvestigationFormVocab
"incident"^^vocabulary:InvestigationFormVocab
"suspicious-activity"^^vocabulary:InvestigationFormVocab
) ;
]
[
sh:datatype xsd:string ;
]
) ;
sh:path investigation:investigationForm ;
]
;
Expand Down Expand Up @@ -266,7 +296,13 @@ investigation:investigationForm
a owl:DatatypeProperty ;
rdfs:label "investigationForm"@en ;
rdfs:comment "A label categorizing a type of investigation (case, incident, suspicious-activity, etc.)"@en ;
rdfs:range vocabulary:InvestigationFormVocab ;
rdfs:range [
a rdfs:Datatype ;
owl:unionOf (
vocabulary:InvestigationFormVocab
xsd:string
) ;
] ;
.

investigation:investigationStatus
Expand Down

0 comments on commit 28ef8e3

Please sign in to comment.