diff --git a/ontology/dprod/dprod.ttl b/ontology/dprod/dprod.ttl index 2729b82..17cd3c4 100644 --- a/ontology/dprod/dprod.ttl +++ b/ontology/dprod/dprod.ttl @@ -80,128 +80,94 @@ dprod: ] ; . -############################# DPROD Classes ######################### +############################# DPROD Classes and Shapes ######################### dprod:DataProduct - a owl:Class , rdfs:Class, sh:NodeShape; + a owl:Class , rdfs:Class; + rdfs:label "Data Product" ; dc:description "A data product is a rational, managed, and governed collection of data, with purpose, value and ownership, meeting consumer needs over a planned life-cycle."@en ; rdfs:comment "A data product may have input and output ports, code and metadata"@en ; rdfs:isDefinedBy dprod:; - rdfs:label "Data Product" ; rdfs:subClassOf dcat:Resource; +. + +dprod:DataProductShape + sh:NodeShape; + rdfs:label "Data Product Shape" ; + dc:description "The shape of the Data Product. A data product is a rational, managed, and governed collection of data, with purpose, value and ownership, meeting consumer needs over a planned life-cycle."@en ; + rdfs:isDefinedBy dprod:; + sh:targetClass dprod:DataProduct; sh:property dprod:DataProduct-dataProductOwner; sh:property dprod:DataProduct-inputPort; sh:property dprod:DataProduct-outputPort; - sh:property dprod:f; -. + . -dcat:DataService +dprod:DataServiceShape a sh:NodeShape ; + rdfs:label "Data Service Shape" ; + dc:description "The shape of the DCAT Data Service as used in the DPROD vocabulary. "@en ; + rdfs:isDefinedBy dprod:; + sh:targetClass dcat:DataService; sh:property dprod:DataService-isAccessServiceOf ; . -dcat:Distribution +dprod:DistributionShape a sh:NodeShape ; - dc:description "see http://www.w3.org/ns/dcat#Distribution" ; + rdfs:label "Distribution Shape" ; + dc:description "The shape of the DCAT Distribution as used in the DPROD vocabulary. "@en ; + sh:targetClass dcat:Distribution; sh:property dcat:Distribution-accessService; sh:property dcat:Distribution-isDistributionOf; . -dcat:Dataset +dprod:DatasetShape a sh:NodeShape ; + rdfs:label "Dataset Shape" ; + dc:description "The shape of the DCAT Dataset as used in the DPROD vocabulary. "@en ; + sh:targetClass dcat:Dataset; sh:property dcat:Dataset-distribution; sh:property dcat:Dataset-classification; sh:property dcat:Dataset-informationSensitivityClassification; . -dprod:DataClassification - a owl:Class , rdfs:Class, sh:NodeShape; - rdfs:label "Data Classification" ; +dprod:Classification + a owl:Class , rdfs:Class; + rdfs:label "Classification" ; dc:description "A taxonomy of concepts that organizes data for its most effective and efficient use "@en ; rdfs:isDefinedBy dprod:; rdfs:seeAlso cdmc-cls:DataClassification; + rdfs:subClassOf skos:Concept; . +dprod:ClassificationShape + a sh:NodeShape; + rdfs:label "Classification Shape" ; + dc:description "The shape of Classification as used in the DPROD vocabulary"@en ; + rdfs:isDefinedBy prod:; + sh:targetClass dprod:Classification; + rdfs:seeAlso cdmc-cls:DataClassification; + . + dprod:InformationSensitivityClassification - a owl:Class , rdfs:Class, sh:NodeShape; + a owl:Class , rdfs:Class; rdfs:label "Information Sensitivity Classification" ; dc:description "A taxonomy of concepts that classifies the information within a dataset that indicates the level of control and protection that must be applied to the dataset "@en ; - rdfs:subClassOf dprod:DataClassification; + rdfs:subClassOf dprod:Classification; rdfs:isDefinedBy dprod:; rdfs:seeAlso cdmc-cls:InformationSensitivity; . -dprod:RESTDataService - a owl:Class , rdfs:Class, sh:NodeShape; - dc:description "Accessed using http verbs with parameters, may be defined using OpenAPI"@en ; - rdfs:isDefinedBy dprod:; - rdfs:label "REST Data Service" ; - rdfs:subClassOf dcat:DataService ; - . - -dprod:GraphQLDataService - a owl:Class , rdfs:Class, sh:NodeShape; - dc:description "Single REST endpoint, with structure given by GraphQL schema"@en ; - rdfs:isDefinedBy dprod:; - rdfs:label "GraphQL Data Service" ; - rdfs:subClassOf dcat:RESTDataService ; - . - -dprod:ObjectDataService - a owl:Class , rdfs:Class, sh:NodeShape; - dc:description "Structured API, e.g. gRPC, CORBA, SOAP, ORM"@en ; +dprod:InformationSensitivityClassificationShape + a sh:NodeShape; + rdfs:label "Information Sensitivity Classification Shape" ; + dc:description "The shape of Information Sensitivity Classification as defined in the dprod schema"@en ; rdfs:isDefinedBy dprod:; - rdfs:label "Object Data Service" ; - rdfs:subClassOf dcat:DataService ; - . + sh:targetClass dprod:InformationSensitivityClassification; -dprod:StreamingDataService - a owl:Class , rdfs:Class, sh:NodeShape; - rdfs:comment "TBD"@en ; - dc:description "Data is continuously made available"@en ; - rdfs:isDefinedBy dprod:; - rdfs:label "Streaming Data Service" ; - rdfs:subClassOf dcat:DataService ; -. - -dprod:QueuingDataService - a owl:Class , rdfs:Class, sh:NodeShape; - rdfs:comment "TBD"@en ; - dc:description "Streams using a queue or topic e.g. MQTT, Kafka, DDS"@en ; - rdfs:isDefinedBy dprod:; - rdfs:label "Queuing Data Service" ; - rdfs:subClassOf dcat:StreamingDataService ; -. - -dprod:CallbackDataService - a owl:Class , rdfs:Class, sh:NodeShape; - rdfs:comment "TBD"@en ; - dc:description "Streams by making calls to a client-provided e.g. WebSockets"@en ; - rdfs:isDefinedBy dprod:; - rdfs:label "Callback Data Service" ; - rdfs:subClassOf dcat:StreamingDataService ; -. - -dprod:FileDataService - a owl:Class , rdfs:Class, sh:NodeShape; - rdfs:comment "TBD"@en ; - dc:description "Uses file-like access methods. May or may not be streaming if the file is continuously wriitten to"@en ; - rdfs:isDefinedBy dprod:; - rdfs:label "File Data Service"; - rdfs:subClassOf dcat:DataService ; -. - -dprod:DatabaseDataService - a owl:Class , rdfs:Class, sh:NodeShape; - rdfs:comment "TBD"@en ; - dc:description "Uses database-like access methods, including query e.g. JDBC, ODBC, SPARQL endpoint"@en ; - rdfs:isDefinedBy dprod:; - rdfs:label "Database Data Service" ; - rdfs:subClassOf dcat:DataService ; . dprod:DataProductLifecycleStatus - a owl:Class , rdfs:Class, sh:NodeShape; + a owl:Class , rdfs:Class; dc:description "The lifecycle status of the Data Product taken from a control list ( Ideation, Design, Build, Deploy, Consume )."@en ; rdfs:comment "The lifecycle of the Data Product as defined from EDM Council CDMC"@en ; rdfs:isDefinedBy dprod:; @@ -209,14 +175,99 @@ dprod:DataProductLifecycleStatus rdfs:subClassOf dprod:Enumeration; . +dprod:DataProductLifecycleStatusShape + a sh:NodeShape; + rdfs:label "Data Product Lifecycle Status Shape" ; + dc:description "The shape of Data Product Lifecycle Status "@en ; + sh:targetClass dprod:DataProductLifecycleStatus; + rdfs:isDefinedBy dprod:; + . + dprod:Enumeration - a owl:Class , rdfs:Class, sh:NodeShape; + a owl:Class , rdfs:Class; + rdfs:label "Enumeration" ; dc:description "The superclass of enumeration lists referenced from Data Product related artifacts"@en ; rdfs:isDefinedBy dprod:; - rdfs:label "Enumeration" ; rdfs:subClassOf owl:Thing; . +dprod:EnumerationShape + a sh:NodeShape; + rdfs:label "Enumeration Shape" ; + dc:description "The shape of enumerations"@en ; + rdfs:isDefinedBy dprod:; + . + +############################# CLASSES and SHAPES to redefined or deleted ######################### +#dprod:RESTDataService +# a owl:Class , rdfs:Class, sh:NodeShape; +# dc:description "Accessed using http verbs with parameters, may be defined using OpenAPI"@en ; +# rdfs:isDefinedBy dprod:; +# rdfs:label "REST Data Service" ; +# rdfs:subClassOf dcat:DataService ; +# . + +#dprod:GraphQLDataService +# a owl:Class , rdfs:Class, sh:NodeShape; +# dc:description "Single REST endpoint, with structure given by GraphQL schema"@en ; +# rdfs:isDefinedBy dprod:; +# rdfs:label "GraphQL Data Service" ; +# rdfs:subClassOf dcat:RESTDataService ; +# . + +#dprod:ObjectDataService +# a owl:Class , rdfs:Class, sh:NodeShape; +# dc:description "Structured API, e.g. gRPC, CORBA, SOAP, ORM"@en ; +# rdfs:isDefinedBy dprod:; +# rdfs:label "Object Data Service" ; +# rdfs:subClassOf dcat:DataService ; +# . + +#dprod:StreamingDataService +# a owl:Class , rdfs:Class, sh:NodeShape; +# rdfs:comment "TBD"@en ; +# dc:description "Data is continuously made available"@en ; +# rdfs:isDefinedBy dprod:; +# rdfs:label "Streaming Data Service" ; +# rdfs:subClassOf dcat:DataService ; +#. + +#dprod:QueuingDataService +# a owl:Class , rdfs:Class, sh:NodeShape; +# rdfs:comment "TBD"@en ; +# dc:description "Streams using a queue or topic e.g. MQTT, Kafka, DDS"@en ; +# rdfs:isDefinedBy dprod:; +# rdfs:label "Queuing Data Service" ; +# rdfs:subClassOf dcat:StreamingDataService ; +#. + +#dprod:CallbackDataService +# a owl:Class , rdfs:Class, sh:NodeShape; +# rdfs:comment "TBD"@en ; +# dc:description "Streams by making calls to a client-provided e.g. WebSockets"@en ; +# rdfs:isDefinedBy dprod:; +# rdfs:label "Callback Data Service" ; +# rdfs:subClassOf dcat:StreamingDataService ; +#. + +#dprod:FileDataService +# a owl:Class , rdfs:Class, sh:NodeShape; +# rdfs:comment "TBD"@en ; +# dc:description "Uses file-like access methods. May or may not be streaming if the file is continuously wriitten to"@en ; +# rdfs:isDefinedBy dprod:; +# rdfs:label "File Data Service"; +# rdfs:subClassOf dcat:DataService ; +#. + +#dprod:DatabaseDataService +# a owl:Class , rdfs:Class, sh:NodeShape; +# rdfs:comment "TBD"@en ; +# dc:description "Uses database-like access methods, including query e.g. JDBC, ODBC, SPARQL endpoint"@en ; +# rdfs:isDefinedBy dprod:; +# rdfs:label "Database Data Service" ; +# rdfs:subClassOf dcat:DataService ; +# . + ############################# DPROD Property Shapes ################ dprod:DataProduct-dataProductOwner @@ -268,7 +319,7 @@ dprod:Dataset-classification a sh:PropertyShape; rdfs:isDefinedBy dprod:; sh:path dprod:classification; - sh:class dprod:DataClassification; + sh:class dprod:Classification; dc:description "The relationship to a taxonomy that defines dataset classification"@en ; rdfs:label "Dataset-classification"; . @@ -358,7 +409,7 @@ dprod:classification dc:description "The category that organizes data for its most effective and efficient way"@en ; rdfs:isDefinedBy dprod:; rdfs:domain dcat:Dataset; - rdfs:range dprod:DataClassfication; + rdfs:range dprod:Classfication; . dprod:informationSensitivityClassification