diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e287ee1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +rml_mapping/** +AAS-Ontology* +catalog-v001.xml diff --git a/AAS-Ontology_1.1.ttl b/AAS-Ontology_1.1.ttl new file mode 100644 index 0000000..1a0cd70 --- /dev/null +++ b/AAS-Ontology_1.1.ttl @@ -0,0 +1,1929 @@ +@prefix : . +@prefix aas: . +@prefix dash: . +@prefix dc: . +@prefix dcterms: . +@prefix dul: . +@prefix foaf: . +@prefix geo: . +@prefix om: . +@prefix obda: . +@prefix owl: . +@prefix prov: . +@prefix rdf: . +@prefix rdfs: . +@prefix ssn: . +@prefix sto: . +@prefix skos: . +@prefix vann: . +@prefix vcard: . +@prefix void: . +@prefix xml: . +@prefix xsd: . +@base . + + rdf:type owl:Ontology ; + rdfs:comment "Update implementing the specifiations coming from 'Details of the Asset Administration Shell - Part 1: The exchange of information between partners in the value chain of Industrie 4.0 (Version 1.0)'" ; + vann:preferredNamespaceUri "https://admin-shell.io/aas/1/1/rdf#" ; + owl:versionInfo 0.5 ; + skos:definition "An Ontology to represents the Reference Architecture Model for Industry 4.0 (RAMI), including the concept of the Administration Shell I4.0 Component."@en ; + void:vocabulary rdfs: , + skos: , + dc: ; + skos:prefLabel "aas"@en ; + void:vocabulary xsd: ; + vann:preferredNamespacePrefix "aas" ; + rdfs:isDefinedBy ; + dcterms:creator ; + dcterms:contributor ; +. + + + +################################################################# +# Annotation properties +################################################################# + +### http://purl.org/dc/elements/1.1/date +dc:date rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/description +dc:description rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/format +dc:format rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/identifier +dc:identifier rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/language +dc:language rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/relation +dc:relation rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/source +dc:source rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/description +dcterms:description rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/identifier +dcterms:identifier rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf dc:identifier ; + rdfs:range rdfs:Literal . + + +### http://purl.org/vocab/vann/preferredNamespacePrefix +vann:preferredNamespacePrefix rdf:type owl:AnnotationProperty . + + +### http://purl.org/vocab/vann/preferredNamespaceUri +vann:preferredNamespaceUri rdf:type owl:AnnotationProperty . + + +### http://rdfs.org/ns/void#vocabulary +void:vocabulary rdf:type owl:AnnotationProperty . + + +### http://www.w3.org/2004/02/skos/core#altLabel +skos:altLabel rdf:type owl:AnnotationProperty . + + +### http://www.w3.org/2004/02/skos/core#definition +skos:definition rdf:type owl:AnnotationProperty . + + +### http://www.w3.org/2004/02/skos/core#note +skos:note rdf:type owl:AnnotationProperty . + + +### http://www.w3.org/2004/02/skos/core#prefLabel +skos:prefLabel rdf:type owl:AnnotationProperty . + + +### http://www.wurvoc.org/vocabularies/om-1.8/hasNumericalValue +om:hasNumericalValue rdf:type owl:DatatypeProperty ; + rdfs:domain om:Measure . + + +### https://admin-shell.io/aas/1/1/rdf#assetId +aas:assetId rdf:type owl:DatatypeProperty ; + rdfs:domain aas:Asset . + + +### https://admin-shell.io/aas/1/1/rdf#description +aas:description rdf:type owl:AnnotationProperty . + + +### https://admin-shell.io/aas/1/1/rdf#display +aas:display rdf:type owl:AnnotationProperty . + + +### https://admin-shell.io/aas/1/1/rdf#idShort +aas:idShort rdf:type owl:AnnotationProperty . + + +### https://admin-shell.io/aas/1/1/rdf#semanticId +aas:semanticId rdf:type owl:AnnotationProperty . + + +################################################################# +# Datatypes +################################################################# + +### http://www.w3.org/2001/XMLSchema#date +xsd:date rdf:type rdfs:Datatype . + + +################################################################# +# Object Properties +################################################################# + +### http://www.loa-cnr.it/ontologies/DUL.owl#isPartOf +dul:isPartOf rdf:type owl:ObjectProperty , + owl:TransitiveProperty ; + rdfs:domain aas:Asset ; + rdfs:range aas:Asset ; + rdfs:comment "A relation between any entities, in this case, the Asset can be part of other Asset(s)."^^xsd:string ; + rdfs:isDefinedBy ; + rdfs:label "is Part Of"@en . + + +### http://www.w3.org/TR/2013/REC-prov-o-20130430/#wasDerivedFrom + rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf owl:topObjectProperty . + + +### https://admin-shell.io/aas/1/1/rdf#annotation +aas:annotation rdf:type owl:ObjectProperty ; + rdfs:comment "Annotations that hold for the relationships between the two elements."@en ; + rdfs:label "has annotation"@en ; + rdfs:domain aas:AnnotatedRelationshipElement ; + #rdfs:range aas:AdministrativeInformation ; +. + + +### https://admin-shell.io/aas/1/1/rdf#administration +aas:administration rdf:type owl:ObjectProperty ; + rdfs:comment "Administrative information of an identifiable element."@en ; + skos:note "Some of the administrative information like the version number might need to be part of the identification."@en ; + rdfs:label "has administration"@en ; + rdfs:domain aas:Identifiable ; + rdfs:range aas:AdministrativeInformation ; + . + + +### https://admin-shell.io/aas/1/1/rdf#asset +aas:asset rdf:type owl:ObjectProperty ; + rdfs:domain aas:AssetAdministrationShell; + #rdfs:range aas:Asset ; + rdfs:comment "The asset the AAS is representing."@en ; + rdfs:label "asset"@en . + + +### https://admin-shell.io/aas/1/1/rdf#assetIdentificationModel +aas:assetIdentificationModel rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf aas:submodel ; + rdfs:domain aas:Asset ; + rdfs:range aas:Submodel ; + rdfs:comment "A reference to a Submodel that defines the handling of additional domain specific (proprietary) Identifiers for the asset like e.g. serial number etc."@en ; + rdfs:label "has Asset Identification Model"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#category +aas:category a owl:ObjectProperty ; + rdfs:label "has category" ; + rdfs:comment ""@en ; + #rdfs:domain aas:Referable ; + rdfs:range aas:ReferableElements ; +. + + +### https://admin-shell.io/aas/1/1/rdf#conceptDescription +aas:conceptDescription rdf:type owl:ObjectProperty ; + rdfs:domain aas:ConceptDictionary; + rdfs:range aas:ConceptDescription ; + rdfs:comment "The semantics of a property or other elements that may have a semantic description is defined by a concept description. The description of the concept should follow a standardized schema (realized as data specification template)."@en ; + rdfs:label "has concept description" . + + +### https://admin-shell.io/aas/1/1/rdf#conceptDictionary +aas:conceptDictionary rdf:type owl:ObjectProperty ; + rdfs:domain aas:AssetAdministrationShell; + rdfs:range aas:ConceptDictionary ; + rdfs:comment "An AAS max have one or more concept dictionaries assigned to it. The concept dictionaries typically contain only descriptions for elements that are also used within the AAS (via HasSemantics)."@en ; + rdfs:label "has concept dictionary" . + + +### https://admin-shell.io/aas/1/1/rdf#containedElement +aas:containedElement rdf:type owl:ObjectProperty ; + rdfs:comment "Referable elements that are contained in the view."@en ; + rdfs:label "contains element"^^xsd:string ; + rdfs:domain aas:View ; + #rdfs:range aas:Referable ; +. + + +### https://admin-shell.io/aas/1/1/rdf#content +aas:content a owl:ObjectProperty ; + rdfs:label "has content" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecification ; + rdfs:range aas:DataSpecificationContent ; +. + + +### https://admin-shell.io/aas/1/1/rdf#contributes +aas:contributes rdf:type owl:ObjectProperty ; + rdfs:domain aas:Submodel ; + skos:definition "Agent(Person or Software) that contributes to the Entity/Object related data. It correspond to the Contributor concept of OMM"@en ; + skos:prefLabel "has Type Description"@en . + + +### https://admin-shell.io/aas/1/1/rdf#dataElement +aas:dataElement rdf:type owl:ObjectProperty ; + rdfs:comment """A data element is a submodel element that is not further composed out of other submodel elements. +A data element is a submodel element that has a value. The type of value differs for different subtypes of data elements."""@en ; + rdfs:label "dataElement"@en . + + +### https://admin-shell.io/aas/1/1/rdf#defaultEnvironmentAttributes +aas:defaultEnvironmentAttributes rdf:type owl:ObjectProperty ; + rdfs:comment """Reference to a submodel defining default environment attributes, i.e. attributes that are not describing the asset itself. +The submodel is of kind=Type. +At the same type the values of these environment attributes need to be accessible when evaluating the access permission rules. This is realized as a policy information point."""@en ; + rdfs:label "defaultEnvironmentAttributes"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#defaultPermissions +aas:defaultPermissions rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining the default permissions for the AAS."@en ; + rdfs:label "defaultPermissions"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#defaultSubjectAttributes +aas:defaultSubjectAttributes rdf:type owl:ObjectProperty ; + rdfs:comment """Reference to a submodel defining the default subjects attributes for the AAS that can be used to describe access permission rules. +The submodel is of kind=Type."""@en ; + rdfs:label "defaultSubjectAttributes"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#dependsOn +aas:dependsOn rdf:type owl:ObjectProperty ; + rdfs:comment "A formula may depend on referable or even external global elements - assumed that can be referenced and their value may be evaluated - that are used in the logical expression."@en ; + rdfs:label "depends on"@en . + + +### https://admin-shell.io/aas/1/1/rdf#derivedFrom +aas:derivedFrom rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf ; + rdfs:domain aas:AssetAdministrationShell ; + rdfs:range aas:Referable ; + rdfs:comment "This relation connects instances of AAS with their respective types. Refer to Asset Kind for further information of instance and type kinds."@en ; + rdfs:label "derived from"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#describes +aas:describes rdf:type owl:ObjectProperty ; + rdfs:domain aas:AssetAdministrationShell; + rdfs:range aas:Asset ; + rdfs:comment "Connect the Asset with the Administration Shell"@en ; + rdfs:label "describes"@en . + + +### https://admin-shell.io/aas/1/1/rdf#embeddedDataSpecification +aas:embeddedDataSpecification a owl:ObjectProperty ; + rdfs:label "has embedded data specification" ; + rdfs:comment ""@en ; + #rdfs:domain aas:ConceptDescription ; + #rdfs:range aas:DataSpecification ; +. + + +### https://admin-shell.io/aas/1/1/rdf#hasDataSpecification +aas:hasDataSpecification rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf owl:topObjectProperty ; + rdfs:comment "Global reference to the data specification template used by the element."@en ; + rdfs:label "has Data Specification"@en . + + +### https://admin-shell.io/aas/1/1/rdf#idType +aas:idType rdf:type owl:ObjectProperty ; + rdfs:comment "Type of the key value. In case of idType = idShort local shall be true. In case type=GlobalReference idType shall not be IdShort."@en ; + rdfs:label "has idType"@en . + + +### https://admin-shell.io/aas/1/1/rdf#identification +aas:identification a owl:ObjectProperty ; + rdfs:domain aas:Identifiable ; + #rdfs:range aas:Identifier ; + rdfs:label "identification"@en ; + rdfs:comment "The globally unique identification of the element."@en ; +. + + +### https://admin-shell.io/aas/1/1/rdf#inputVariable +aas:inputVariable rdf:type owl:ObjectProperty ; + rdfs:comment "the aas:inputVariable attribute of aas:operation is the input parameter"@en ; + rdfs:domain aas:Operation ; + rdfs:range aas:OperationVariable ; + . + + +### https://admin-shell.io/aas/1/1/rdf#inAccordanceWith +aas:inAccordanceWith rdf:type owl:ObjectProperty ; + rdfs:domain aas:Submodel ; + rdfs:comment "The Submodel is in accordance with a given standard specified in the STO ontology"@en ; + rdfs:label "in Accordance With"@en . + + +### https://admin-shell.io/aas/1/1/rdf#isCaseOf +aas:isCaseOf rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf dcterms:identifier ; + rdfs:comment "Global reference to an external definition the concept is compatible to or was derived from."@en ; + skos:note "Compare to is-case-of relationship in ISO 13584-32 & IEC EN 61360."@en ; + rdfs:label "is case of"^^xsd:string ; + rdfs:domain aas:ConceptDescription ; + #rdfs:range aas:Reference ; +. + + +### https://admin-shell.io/aas/1/1/rdf#keyElement +aas:keyElement a owl:ObjectProperty ; + rdfs:comment ""@en ; + rdfs:label "has key element"^^xsd:string ; + rdfs:domain aas:Key ; + rdfs:range aas:KeyElements ; +. + + +### https://admin-shell.io/aas/1/1/rdf#key +aas:key rdf:type owl:ObjectProperty ; + rdfs:comment "Unique reference in its name space."@en ; + rdfs:label "has key"^^xsd:string ; + #rdfs:domain aas:Reference ; + rdfs:range aas:Key ; + . + + +### https://admin-shell.io/aas/1/1/rdf#hasKind +aas:kind rdf:type owl:ObjectProperty ; + #rdfs:domain aas:AssetAdministrationShell; + rdfs:domain aas:HasKind ; + rdfs:range aas:Kind ; + #rdfs:range aas:AssetKind ; + rdfs:label "has kind"@en . + + +### https://admin-shell.io/aas/1/1/rdf#mimeType +aas:mimeType rdf:type owl:ObjectProperty ; + rdfs:domain [ + a owl:Class ; + owl:unionOf ( aas:File aas:Blob) ; + ] ; + rdfs:range xsd:string ; + rdfs:comment "Mime type of the content of the BLOB. The mime type states which file extension the file has. Valid values are e.g. 'application/json', 'application/xls', 'image/jpg' The allowed values are defined as in RFC2046."@en ; + rdfs:comment "Mime type of the content of the File."@en ; + rdfs:label "mimeType"^^xsd:string ; + rdfs:seeAlso "http://uri4uri.net/vocab.html/#MimetypeDatatype"^^xsd:string ; + . + + +### https://admin-shell.io/aas/1/1/rdf#object +aas:object rdf:type owl:ObjectProperty ; + rdfs:comment "Element to which permission shall be assigned."@en ; + rdfs:label "has object"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#objectAttribute +aas:objectAttribute rdf:type owl:ObjectProperty ; + rdfs:comment "A data element that further classifies an object."@en ; + rdfs:label "objectAttribute"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#outputVariable +aas:outputVariable rdf:type owl:ObjectProperty ; + rdfs:comment "outputVariable is the output paramter of the Operation"@en ; + rdfs:label "output variable"@en ; + rdfs:domain aas:Operation ; + rdfs:range aas:OperationVariable ; +. + + +### https://admin-shell.io/aas/1/1/rdf#parent +aas:parent rdf:type owl:ObjectProperty ; + rdfs:comment """Reference to the next referable parent element of the element. Constraint AASd-004: Add parent in case of non-identifiable elements. +Note: This element is used to ease navigation in the model and thus it enables more performant"""@en ; + rdfs:label "parent"@en ; + rdfs:domain aas:Referable ; + rdfs:range aas:Referable ; + . + + +### https://admin-shell.io/aas/1/1/rdf#preferredName +aas:preferredName rdf:type owl:ObjectProperty ; + rdfs:comment "This is the preferredName of a ConceptDescription object"@en ; + rdfs:label "preferredName"^^xsd:string . + +### https://admin-shell.io/aas/1/1/rdf#qualifier +aas:qualifier a owl:ObjectProperty ; + rdfs:comment ""@en ; + rdfs:label "qualifier" ; + rdfs:domain aas:Qualifiable ; + rdfs:range aas:Constraint ; +. + + +### https://admin-shell.io/aas/1/1/rdf#qualifierType +aas:qualifierType rdf:type owl:ObjectProperty ; + rdfs:comment "The qualifierType describes the type of the qualifier that is applied to the element."@en ; + rdf:label "qualifier type" ; + rdfs:domain aas:Qualifier ; + . + + +### https://admin-shell.io/aas/1/1/rdf#qualifierValue +aas:qualifierValue rdf:type owl:ObjectProperty ; + rdfs:comment "The qualifier value is the value of the qualifier."@en ; + rdf:label "qualifier value" ; + skos:note "Constraint AASd-006: if both, the value and the valueId are present then the value needs to be identical to the short name of the referenced coded value in qualifierValueId."@en ; + rdfs:domain aas:Qualifier ; + . + + +### https://admin-shell.io/aas/1/1/rdf#qualifierValueId +aas:qualifierValueId rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to the global unqiue id of a coded value."@en ; + rdf:label "qualifier value id" ; + rdfs:domain aas:Qualifier ; + . + + +### https://admin-shell.io/aas/1/1/rdf#relationshipFirst +aas:relationshipFirst rdf:type owl:ObjectProperty ; + rdfs:comment "First element in the relationship taking the role of the subject."@en ; + rdfs:label "first"^^xsd:string ; + rdfs:domain aas:RelationshipElement ; + rdfs:range aas:Referable ; +. + + +### https://admin-shell.io/aas/1/1/rdf#relationshipSecond +aas:relationshipSecond rdf:type owl:ObjectProperty ; + rdfs:comment "Second element in the relationship taking the role of the object."@en ; + rdfs:label "second"^^xsd:string ; + rdfs:domain aas:RelationshipElement ; + rdfs:range aas:Referable ; +. + + +### https://admin-shell.io/aas/1/1/rdf#security +aas:security rdf:type owl:ObjectProperty ; + rdfs:comment ""@en ; # TODO + rdfs:label "" ; + . + + +### https://admin-shell.io/aas/1/1/rdf#selectableEnvironmentAttributes +aas:selectableEnvironmentAttributes rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining which environment attributes can be accessed via the permission rules defined for the AAS, i.e. attributes that are not describing the asset itself. Default: reference to the submodel referenced via defaultEnvironmentAttributes"@en ; + rdfs:label "selectableEnvironmentAttributes"^^xsd:string ; + . + + +### https://admin-shell.io/aas/1/1/rdf#semanticId +aas:semanticId rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf rdfs:seeAlso ; + rdfs:subPropertyOf dcterms:identifier ; + rdfs:label "has semantic ID" ; + skos:altLabel "has Semantic Expression"@en ; + rdfs:comment "Points to the Expression Semantic of the Submodels"@en ; + rdfs:comment "The semantic id might refer to an external information source, which explains the formulation of the submodel (for example an PDF if a standard)."@en ; + rdfs:domain aas:HasSemantics ; + #rdfs:range aas:Reference ; +. + + +### https://admin-shell.io/aas/1/1/rdf#subjectAttribute +aas:subjectAttribute rdf:type owl:ObjectProperty ; + rdfs:comment "A data element that further classifies a specific subject."@en ; + rdfs:label "has subjectAttribute"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#submodel +aas:submodel rdf:type owl:ObjectProperty ; + rdfs:range aas:Submodel ; + rdfs:comment "Points to the Admin Shell to the Submodels that describe the Admin Shell of a given Asset"@en ; + rdfs:label "has Submodel"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#submodelElement +aas:submodelElement rdf:type owl:ObjectProperty ; + rdfs:domain aas:Submodel ; + rdfs:range aas:SubmodelElement ; + rdfs:comment "A submodel consists of zero or more submodel elements."@en ; + rdfs:label "has Submodel Element"@en . + + +### https://admin-shell.io/aas/1/1/rdf#targetObjectAttributes +aas:targetObjectAttributes rdf:type owl:ObjectProperty ; + rdfs:comment "Target object attributes that need to be fulfilled so that the access permissions apply to the accessing subject."@en ; + rdfs:label "targetObjectAttributes"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#targetSubjectAttributes +aas:targetSubjectAttributes rdf:type owl:ObjectProperty ; + rdfs:comment "Target subject attributes that need to be fulfilled by the accessing subject to get the permissions defined by this rule."@en ; + rdfs:label "targetSubjetAtrtibutes"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#trustAnchor +aas:trustAnchor rdf:type owl:ObjectProperty ; + rdfs:comment "Trust anchor of AAS, typically certificates."@en ; + rdfs:label "trustAnchor"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#value +aas:value rdf:type rdf:Property ; + rdfs:comment "The key value, for example an IRDI if the idType=IRDI."@en ; + rdfs:label "keyValue"^^xsd:string ; + #rdfs:range aas:Value ; + rdfs:range [ + a owl:Class ; + owl:unionOf (owl:Thing rdfs:Literal) ; + ] ; + . + + +### https://admin-shell.io/aas/1/1/rdf#view +aas:view rdf:type owl:ObjectProperty ; + rdfs:domain aas:AssetAdministrationShell; + rdfs:range aas:View ; + rdfs:comment "Points to the differents views associated to the Administration Shell via the Submodels."@en ; + rdfs:label "has View"@en ; + skos:prefLabel "view"@en . + + +################################################################# +# Data properties +################################################################# + +### http://purl.org/dc/terms/hasVersion +dcterms:hasVersion rdf:type owl:DatatypeProperty . + + +### http://purl.org/dc/terms/identifier +dcterms:identifier rdf:type owl:DatatypeProperty . + + +### http://www.wurvoc.org/vocabularies/om-1.8/hasNumericalValue +om:hasNumericalValue rdf:type owl:DatatypeProperty . + + +### https://admin-shell.io/aas/1/1/rdf#allowDuplicates +aas:allowDuplicates rdf:type owl:DatatypeProperty ; + rdfs:comment "If allowDuplicates=true then it is allowed that the collection contains the same element several times. Default = false"@en ; + skos:altLabel "allow duplicates"^^xsd:string ; + rdfs:domain aas:SubmodelElementCollection ; + rdfs:range xsd:boolean ; + . + + +### https://admin-shell.io/aas/1/1/rdf#assetId +aas:identification rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf dcterms:identifier ; + #rdfs:domain aas:Identifier ; + rdfs:label "has identification" ; + rdfs:comment ""@en ; +. + + +### https://admin-shell.io/aas/1/1/rdf#creationDate +aas:creationDate rdf:type owl:DatatypeProperty ; + rdfs:domain aas:Submodel ; + rdfs:range xsd:dateTime ; + skos:definition "Date when an Agent(Person or Software) creates to the Entity/Object related data. It correspond to the Creator concept of OMM"@en ; + skos:prefLabel "has Creator"@en . + + +### https://admin-shell.io/aas/1/1/rdf#definition +aas:definition rdf:type owl:DatatypeProperty ; + rdfs:label "This is the definition that is contained in the conceptDescription."@en , + "has definition"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#description +aas:description rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf rdfs:comment ; + rdfs:label "has description" ; + rdfs:domain aas:Referable ; + #rdfs:domain aas:Asset + #rdfs:range xsd:string ; + rdfs:range rdfs:Literal ; + rdfs:comment "Description or comments on the element. The description can be provided in several languages."@en ; +. + + +### https://admin-shell.io/aas/1/1/rdf#hasLocal +aas:local rdf:type owl:DatatypeProperty ; + rdfs:comment "Denotes if the key references a model element of the same AAS (=true) or not (=false). In case of local = false the key may reference a model element of another AAS or an entity outside any AAS that has a global unique id."@en ; + rdfs:label "is local"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#id +aas:id rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf dcterms:identifier ; + rdfs:comment "A globally unique identifier which might not be a URI."@en ; + rdfs:label "identification"@en . + + +### https://admin-shell.io/aas/1/1/rdf#idShort +aas:idShort rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf dcterms:identifier ; + rdfs:label "has short id" ; + rdfs:comment ""@en ; + rdfs:domain aas:Referable ; + #rdfs:range rdf:Literal ; +. + + +### https://admin-shell.io/aas/1/1/rdf#logs +aas:logs rdf:type owl:DatatypeProperty ; + rdfs:range xsd:string ; + skos:prefLabel "logs"@en . + + +### https://admin-shell.io/aas/1/1/rdf#ordered +aas:ordered rdf:type owl:DatatypeProperty ; + rdfs:comment "If ordered=false then the elements in the property collection are not ordered. If ordered=true then the elements in the collection are ordered. Default = false"@en ; + rdfs:label "ordered"^^xsd:string ; + rdfs:domain aas:SubmodelElementCollection ; + rdfs:range xsd:boolean ; +. + + +### https://admin-shell.io/aas/1/1/rdf#publishedURL +aas:publishedURL rdf:type owl:DatatypeProperty . + + +### https://admin-shell.io/aas/1/1/rdf#revision +aas:revision rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf dcterms:hasVersion ; + rdfs:comment "Revision of the element. Constraint AASd-005: A revision requires a version. This means, if there is no version there is no revision neither."@en ; + rdfs:label "revision"@en ; + rdfs:domain aas:AdministrativeInformation ; + rdfs:range xsd:string ; +. + + +### https://admin-shell.io/aas/1/1/rdf#version +aas:version rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf dcterms:hasVersion ; + rdfs:domain aas:AdministrativeInformation ; + rdfs:range xsd:string ; + rdfs:comment "Version of the element."@en ; + rdfs:label "version"@en . + + +### https://admin-shell.io/aas/1/1/rdf#preferedName +aas:preferedName rdf:type owl:DatatypeProperty ; + rdfs:label "has prefered name" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; + rdfs:range xsd:langString ; +. + + +### https://admin-shell.io/aas/1/1/rdf# +aas: rdf:type owl:DatatypeProperty ; + rdfs:label "" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; + rdfs:range xsd:langString ; +. + + +### https://admin-shell.io/aas/1/1/rdf#shortName +aas:shortName rdf:type owl:DatatypeProperty ; + rdfs:label "has short name" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; + rdfs:range xsd:langString ; +. + + +### https://admin-shell.io/aas/1/1/rdf#unit +aas:unit rdf:type owl:DatatypeProperty ; + rdfs:label "has unit" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + + +### https://admin-shell.io/aas/1/1/rdf#unitId +aas:unitId rdf:type owl:ObjectProperty ; + rdfs:label "has unit id" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; + rdfs:range aas:Reference ; +. + + +### https://admin-shell.io/aas/1/1/rdf#sourceOfDefinition +aas:sourceOfDefinition rdf:type owl:DatatypeProperty ; + rdfs:label "has source of definition" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + + +### https://admin-shell.io/aas/1/1/rdf#symbol +aas:symbol rdf:type owl:DatatypeProperty ; + rdfs:label "has symbol" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + + +### https://admin-shell.io/aas/1/1/rdf#datatype +aas:datatype rdf:type owl:ObjectProperty ; + rdfs:label "has datatype" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; +. + + +### https://admin-shell.io/aas/1/1/rdf#definition +aas:definition rdf:type owl:DatatypeProperty ; + rdfs:label "has definition" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; + rdfs:range xsd:langString ; +. + + +### https://admin-shell.io/aas/1/1/rdf#valueFormat +aas:valueFormat rdf:type owl:DatatypeProperty ; + rdfs:label "has value format" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + +### https://admin-shell.io/aas/1/1/rdf#valueId +aas:valueId rdf:type owl:ObjectProperty ; + rdfs:label "has value id" ; + rdfs:comment ""@en ; + rdfs:domain aas:DataSpecificationIEC61360 ; +. + + + +################################################################# +# Classes +################################################################# + + +### https://admin-shell.io/aas/1/1/rdf#AnnotatedRelationshipElement +aas:AnnotatedRelationshipElement rdf:type owl:Class ; + rdfs:subClassOf aas:RelationshipElement ; + rdfs:comment "An annotated relationship element is an relationship element that can be annotated with additional data elements."@en ; + rdfs:label "Relationship Element"^^xsd:string ; + . + + +### https://admin-shell.io/aas/1/1/rdf#AccessControlPolicyPoints +aas:AccessControlPolicyPoints rdf:type owl:Class ; + rdfs:comment "Container for access control policy points."@en ; + rdfs:label "Access ControlPolicy Points"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#AdministrativeInformation +aas:AdministrativeInformation rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification ; + rdfs:comment """Every Identifiable may have administrative information. Administrative information includes for example + Information about the version of the element + Information about who created or who made the last change to the element + Information about the languages available in case the element contains text, for translating purposed also themmaster or default language may be defined +In the first version of the AAS metamodel only version information as defined by IEC 61360 is defined. In later versions additional attributes may be added."""@en ; + rdfs:label "Administrative Information"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#AssetAdministrationShell +aas:AssetAdministrationShell rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas:Identifiable ; + dc:source "This definition comprises material from RAMI4.0."@en ; + owl:disjointWith aas:Asset ; + owl:disjointWith aas:AssetAdministrationShell ; + owl:disjointWith aas:ConceptDescription ; + owl:disjointWith aas:Formula ; + owl:disjointWith aas:Qualifier ; + owl:disjointWith aas:Submodel ; + owl:disjointWith aas:SubmodelElement ; + owl:disjointWith aas:View ; + rdfs:label "Admin Shell"@en ; + skos:altLabel "Administration Shell"@en , + "Verwaltungsschale"@de ; + skos:definition "Describes the Administration Shell for Assets, Products, Components, e.g. Machines"@en ; + rdfs:comment "Describes the Administration Shell for Assets, Products, Components, e.g. Machines"@en ; + skos:prefLabel "Asset Administration Shell"^^xsd:string ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Asset +aas:Asset rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas:HasKind , + aas:Identifiable ; + skos:altLabel "Object"@en ; + skos:definition "Clearly identifiable asset for the Administration Shell"@en ; + skos:altLabel "Entity"@en ; + skos:prefLabel "Asset"@en ; + rdfs:label "Asset"@en ; + skos:definition "Eindeutig identifizierbarer Gegenstand, der aufgrund seiner Bedeutung in der Informationswelt verwaltet wird"@de ; + rdfs:comment """An Asset describes meta data of an asset that is represented by an AAS. +The asset may either represent an asset type or an asset instance. +The asset has a globally unique identifier plus – if needed – additional domain specific (proprietary) identifiers."""@en ; + skos:note "Objects may be known in the form of a type or of an instance. An object in the planning phase is known as a type"@en ; + skos:altLabel "Entität"@de ; + owl:disjointWith aas:AdministrativeInformation ; + owl:disjointWith aas:AssetAdministrationShell ; + owl:disjointWith aas:ConceptDescription ; + owl:disjointWith aas:Constraint ; + owl:disjointWith aas:Submodel ; + owl:disjointWith aas:SubmodelElement ; + owl:disjointWith aas:View ; + . + +### https://admin-shell.io/aas/1/1/rdf#AssetKind +aas:AssetKind rdf:type owl:Class ; + rdfs:subClassOf aas:Dimension ; + rdfs:comment """The RAMI4.0 model features one, generalized life-cycle axis, which was derived from IEC 62890. The basic idea is to distinguish for all assets within Industrie 4.0 between possible types and instance. This makes it possible to apply the type/instance distinction for all elements such as material type/material instance, product type/product instance, machine type/ machine instance and more. Business related information will be handled on the 'Business' layer of the +RAMI4.0 model, as well, covering also order details and workflows, again with types/ instances."""@en ; + rdfs:label "Asset Kind"@en . + + +### https://admin-shell.io/aas/1/1/rdf#Blob +aas:Blob rdf:type owl:Class ; + rdfs:subClassOf aas:DataElement ; + rdfs:comment "A BLOB is a data element that represents a file that is contained with its source code in the value attribute."@en ; + rdfs:label "Blob Data Element"@en . + + +### https://admin-shell.io/aas/1/1/rdf#Capability +aas:Capability rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:comment "A capability is the implementation-independent description of the potential of an asset to achieve a certain effect in the physical or virtual world."@en ; + rdfs:label "Capability" ; + . + + +### https://admin-shell.io/aas/1/1/rdf#ConceptDescription +aas:ConceptDescription rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas:Identifiable ; + owl:disjointWith aas:AdministrativeInformation ; + owl:disjointWith aas:Asset ; + owl:disjointWith aas:AssetAdministrationShell ; + owl:disjointWith aas:Formula ; + owl:disjointWith aas:Qualifier ; + owl:disjointWith aas:Submodel ; + owl:disjointWith aas:SubmodelElement ; + owl:disjointWith aas:View ; + rdfs:comment "\"The AAS itself can also define its own dictionary that contains semantic definitions of its submodel elements. These semantic definitions are called concept descriptions (ConceptDescription). It is optional whether an AAS defines its own concept dictionary (ConceptDictionary) or not.\""@en ; + rdfs:comment "The semantics of a property or other elements that may have a semantic description is defined by a concept description. The description of the concept should follow a standardized schema (realized as data specification template)."@en ; +. + +### https://admin-shell.io/aas/1/1/rdf#ConceptDictionary +aas:ConceptDictionary rdf:type owl:Class ; + rdfs:subClassOf aas:Referable ; + rdfs:label "Concept Dictionary" ; + rdfs:comment "A dictionary contains elements that can be reused. The concept dictionary contains concept descriptions. Typically a concept description dictionary of an AAS contains only concept descriptions of elements used within submodels of the AAS."@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Constraint +aas:Constraint rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "A constraint is used to further qualify an element."@en ; + rdfs:label "Constraint"@en ; + skos:prefLabel "Constraint"@en ; + owl:disjointWith aas:AdministrativeInformation ; + owl:disjointWith aas:Asset ; + owl:disjointWith aas:AssetAdministrationShell ; + owl:disjointWith aas:DataSpecificationContent ; + owl:disjointWith aas:Identifier ; + owl:disjointWith aas:ReferableElements ; + owl:disjointWith aas:Kind ; + owl:disjointWith aas:Qualifiable ; + owl:disjointWith aas:Reference ; + owl:disjointWith aas:Submodel ; + . + + +### https://admin-shell.io/aas/1/1/rdf#ConceptDictionary +aas:ControlledValue rdf:type owl:Class ; # TODO: verify why necessary + rdfs:subClassOf aas:DataElement ; + dash:abstract true ; + rdfs:comment "A controlled value represents the global unique id of a coded value."@en ; + rdfs:label "Controlled Value" ; + skos:note "Constraint AASd-007: if both, the value and the valueId are present then the value needs to be identical to the value of the referenced coded value in valueId"@en ; + skos:note "Constraint AASd-012: if both, the value and the valueId are present then for each string in a specific value the meaning must be the same as specified in valueId."@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#ConceptDictionary +aas:ConceptDictionary rdf:type owl:Class ; + rdfs:subClassOf aas:Referable ; + rdfs:comment "A dictionary contains elements that can be reused. The concept dictionary contains concept descriptions. Typically a concept description dictionary of an AAS contains only concept descriptions of elements used within submodels of the AAS."@en ; + rdfs:label "Concept Dictionary" . + + +### https://admin-shell.io/aas/1/1/rdf#DataElement +aas:DataElement rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + owl:disjointWith aas:Event ; + owl:disjointWith aas:Operation ; + owl:disjointWith aas:OperationVariable ; + owl:disjointWith aas:RelationshipElement ; + owl:disjointWith aas:SubmodelElementCollection ; + dash:abstract true ; + rdfs:comment "A data element is a submodel element that is not further composed out of other submodel elements. A data element is a submodel element that has a value. The type of value differs for different subtypes of data elements."@en ; + rdfs:label "DataElement"^^xsd:string ; + . + + +### https://admin-shell.io/aas/1/1/rdf#DataSpecification +aas:DataSpecification rdf:type owl:Class ; + rdfs:subClassOf aas:Identifiable ; + dash:abstract true ; + owl:disjointWith aas:AdministrativeInformation ; + owl:disjointWith aas:Asset ; + owl:disjointWith aas:AssetAdministrationShell ; + owl:disjointWith aas:ConceptDescription ; + owl:disjointWith aas:Submodel ; + owl:disjointWith aas:SubmodelElement ; + owl:disjointWith aas:View ; + rdfs:comment "Element that can have data specification templates. A template defines the additional attributes an element may or shall have."@en ; + rdfs:label "DataSpecification"@en ; + skos:note "abstract"@en . + + +### https://admin-shell.io/aas/1/1/rdf#DataSpecificationContent +aas:DataSpecificationContent rdf:type owl:Class ; + owl:disjointWith aas:Constraint ; + owl:disjointWith aas:HasDataSpecification ; + owl:disjointWith aas:Identifier ; + owl:disjointWith aas:Key ; + owl:disjointWith aas:KeyElements ; + owl:disjointWith aas:Kind ; + owl:disjointWith aas:Qualifiable ; + owl:disjointWith aas:Reference ; + rdfs:label "Data Specification Content" ; + rdfs:comment ""@en ; + dash:abstract true ; +. + + +### https://admin-shell.io/aas/1/1/rdf#DataSpecificationIEC61360 +aas:DataSpecificationIEC61360 rdf:type owl:Class ;# + rdfs:subClassOf aas:DataSpecificationContent ; + rdfs:label "Data Specification IEC 61360" ; + rdfs:comment ""@en ; +. + + +### https://admin-shell.io/aas/1/1/rdf#Dimension +aas:Dimension rdf:type owl:Class . + + +### https://admin-shell.io/aas/1/1/rdf#File +aas:File rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:comment "A File is a data element that represents a file via its path description."@en ; + rdfs:label "File Submodel Element"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Formula +aas:Formula rdf:type owl:Class ; + rdfs:subClassOf aas:Constraint ; + dc:description "A formula is used to describe constraints by a logical expression."@en ; + rdfs:label "Formula"@en ; +. + + +### https://admin-shell.io/aas/1/1/rdf#HasDataSpecification +aas:HasDataSpecification rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "Element that can have data specification templates. A template defines the additional attributes an element may or shall have."@en ; + rdfs:label "Has Data Specification"@en ; + skos:prefLabel "Data Specification"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#HasKind +aas:HasKind rdf:type owl:Class ; + rdfs:comment "An element with a kind is an element that can either represent a type or an instance. Default for an element is that it is representing an instance."@en ; + rdfs:label "Has Kind"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#HasSemantics +aas:HasSemantics rdf:type owl:Class ; + dash:abstract true ; + rdfs:label "Has Semantics" ; + rdfs:comment "Element that can have a semantic definition. Identifier of the semantic definition of the element. It is called semantic id of the element. The semantic id may either reference an external global id or it may reference a referable model element of kind=Type that defines the semantics of the element."@en ; + skos:note "In many cases the idShort is identical to the English short name within the semantic definition as referenced vi aits semantic id."@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Identifiable +aas:Identifiable rdf:type owl:Class ; + dash:abstract true ; + rdfs:subClassOf aas:Referable ; + rdfs:comment "An element that has a globally unique identifier."@en ; + rdfs:label "Identifiable"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Identifier +aas:Identifier rdf:type owl:Class ; + rdfs:comment "Used to uniquely identify an entity by using an identifier."@en ; + rdfs:label "Identifier"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#IdentifierType +aas:IdentifierType rdf:type owl:Class ; + rdfs:label "Identifier Type" ; + rdfs:comment "Enumeration of different types of Identifiers for global identification"@en ; + owl:oneOf ( + aas:IRDI + aas:URI + aas:CUSTOM + ) ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Key +aas:Key rdf:type owl:Class ; + rdfs:comment "A key is a reference to an element by its id."@en ; + rdfs:label "Key"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#KeyElements +aas:KeyElements rdf:type owl:Class ; + rdfs:label "Key Elements" ; + rdfs:comment "Enumeration of different key value types within a key. Contains KeyElements, ReferableElements, and IdentifiableElements."@en ; + owl:oneOf ( + aas:GLOBAL_REFERENCE_KEY_ELEMENT + aas:FRAGMENT_REFERENCE_REFERABLE_ELEMENT + aas:ANNOTATED_RELATIONSHIP_ELEMENT_REFERABLE_ELEMENT + aas:ACCESS_PERMISSION_RULE_REFERABLE_ELEMENT + aas:BLOB_REFERABLE_ELEMENT + aas:CAPABILITY_REFERABLE_ELEMENT + aas:CONCEPT_DICTIONARY_REFERABLE_ELEMENT + aas:DATA_ELEMENT_REFERABLE_ELEMENT + aas:FILE_REFERABLE_ELEMENT + #aas:EVENT_REFERABLE_ELEMENT # Note: Event is abstract + aas:MULTI_LANGUAGE_PROPERTY_REFERABLE_ELEMENT + aas:OPERATION_REFERABLE_ELEMENT + aas:PROPERTY_REFERABLE_ELEMENT + aas:REFERENCE_ELEMENT_REFERABLE_ELEMENT + aas:RELATIONSHIPT_ELEMENT_REFERABLE_ELEMENT + #aas:SUBMODEL_ELEMENT_REFERABLE_ELEMENT # Note: Submodel Element is abstract, i.e. if a key uses “SubmodelElement” the reference may be a Property, a SubmodelElementCollection, an Operation etc + aas:SUBMODEL_ELEMENT_COLLECTION_REFERABLE_ELEMENT + aas:VIEW_REFERABLE_ELEMENT + aas:ASSET_IDENTIFIABLE_ELEMENT + aas:ASSET_ADMINISTRATION_SHELL_IDENTIFIABLE_ELEMENT + aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT + aas:SUBMODEL_IDENTIFIABLE_ELEMENT + ) ; +. + +### https://admin-shell.io/aas/1/1/rdf#KeyType +aas:KeyType rdf:type owl:Class ; + rdfs:label "Key Elements" ; + rdfs:comment "Enumeration of different key value types within a key. Contains IdentifierType and LocalKeyType."@en ; + owl:oneOf ( + aas:IRDI_IDENTIFIER_TYPE + aas:URI_IDENTIFIER_TYPE + aas:CUSTOM_IDENTIFIER_TYPE + aas:IDSHORT_LOCAL_KEY_TYPE + aas:FRAGMENT_ID_LOCAL_KEY_TYPE + ) ; +. + + +### https://admin-shell.io/aas/1/1/rdf#Kind +aas:Kind a owl:Class ; + rdfs:comment "Enumeration for denoting whether an element is a type or an instance."@en ; + rdfs:label "Kind"^^xsd:string ; + owl:oneOf ( + aas:INSTANCE + aas:TYPE + ) ; + . + + +### https://admin-shell.io/aas/1/1/rdf#MultiLanguageProperty +aas:MultiLanguageProperty rdf:type owl:Class ; + rdfs:subClassOf aas:DataElement ; + #rdfs:subClassOf aas:ControlledValue ; # TODO: define ControlledValue + rdfs:comment "A property is a data element that has a multi language value."@en ; + rdfs:label "Multi Language Property"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#ObjectAttributes +aas:ObjectAttributes rdf:type owl:Class ; + rdfs:comment "A set of data elements that describe object attributes. These attributes need to refer to a data element within an existing submodel."@en ; + rdfs:label "Object Attributes"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#Operation +aas:Operation rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:comment "An operation is a submodel element with input and output variables."@en ; + rdfs:label "Operation"@en ; + owl:disjointWith aas:DataElement ; + owl:disjointWith aas:Event ; + owl:disjointWith aas:OperationVariable ; + owl:disjointWith aas:RelationshipElement ; + owl:disjointWith aas:SubmodelElementCollection ; + . + + +### https://admin-shell.io/aas/1/1/rdf#OperationVariable +aas:OperationVariable rdf:type owl:Class ; + dc:description "An operation variable is a submodel element that is used as input or output variable of an operation."@en ; + rdfs:label "Operation Variable"^^xsd:string ; + owl:disjointWith aas:DataElement ; + owl:disjointWith aas:Event ; + owl:disjointWith aas:Operation ; + owl:disjointWith aas:RelationshipElement ; + owl:disjointWith aas:SubmodelElementCollection ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Order +aas:Order rdf:type owl:Class ; + skos:definition "Each order for manufacturing runs through a life cycle and its specifics necessarily have an impact on the production facility during performance of the order"@en ; + skos:note "TODO: Delete?" ; + skos:prefLabel "Order"@en . + + +### https://admin-shell.io/aas/1/1/rdf#Property +aas:Property rdf:type owl:Class ; + rdfs:subClassOf aas:DataElement ; + #rdfs:subClassOf aas:ControlledValue ; # TODO: define ControlledValue + rdfs:comment "A property is a data element that has a single value."@en ; + rdfs:label "Property"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#PropertyValueType +aas:PropertyValueType rdf:type owl:Class ; + rdfs:comment """The qualifier value is the value of the qualifier. +Constraint AASd-006: if both, the value and the valueId are present then the value needs to be identical to the short name of the referenced coded value in qualifierValueId."""@en . + + +### https://admin-shell.io/aas/1/1/rdf#Qualifiable +aas:Qualifiable rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "Additional qualification of a qualifiable element."@en ; + rdfs:label "Qualifiable"@en . + + +### https://admin-shell.io/aas/1/1/rdf#Qualifier +aas:Qualifier rdf:type owl:Class ; + rdfs:subClassOf aas:Constraint ; + rdfs:subClassOf aas:HasSemantics ; + owl:disjointWith aas:AdministrativeInformation ; + owl:disjointWith aas:Asset ; + owl:disjointWith aas:AssetAdministrationShell ; + owl:disjointWith aas:ConceptDescription ; + owl:disjointWith aas:Formula ; + owl:disjointWith aas:Submodel ; + owl:disjointWith aas:SubmodelElement ; + owl:disjointWith aas:View ; + rdfs:comment "A qualifier is a type-value pair that makes additional statements w.r.t. the value of the element."@en ; + rdfs:label "Qualifier"@en . + + +### https://admin-shell.io/aas/1/1/rdf#Referable +aas:Referable rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "An element that is referable by its idShort. This id is not globally unique. This id is unique within the name space of the element."@en ; + rdfs:label "Referable"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Reference +aas:Reference rdf:type owl:Class ; + rdfs:comment "Reference to either a model element of the same or another AAs or to an external entity. A reference is an ordered list of keys, each key referencing an element. The complete list of keys may for example be concatenated to a path that then gives unique access to an element or entity."@en ; + rdfs:label "Reference"^^xsd:string ; + . + + +### https://admin-shell.io/aas/1/1/rdf#RelationshipElement +aas:RelationshipElement rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + dc:description "A relationship element is used to define a relationship between two referable elements."@en ; + rdfs:label "RelationshipElement"@en ; + owl:disjointWith aas:DataElement ; + owl:disjointWith aas:Event ; + owl:disjointWith aas:Operation ; + owl:disjointWith aas:OperationVariable ; + owl:disjointWith aas:SubmodelElementCollection ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Security +aas:Security rdf:type owl:Class ; + rdfs:comment "Container for security relevant information of the AAS."@en ; + rdfs:label "Security"^^xsd:string . + + +### https://admin-shell.io/aas/1/1/rdf#Submodel +aas:Submodel rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification ; + rdfs:subClassOf aas:HasKind ; + rdfs:subClassOf aas:HasSemantics ; + rdfs:subClassOf aas:Identifiable ; + rdfs:subClassOf aas:Qualifiable ; + rdfs:comment "A Submodel defines a specific aspect of the asset represented by the AAS. A submodel is used to structure the virtual representation and technical functionality of an Administration Shell into distinguishable parts. Each submodel refers to a well-defined domain or subject matter. Submodels can become standardized and thus become submodels types. Submodels can have different life-cycles."@en , + "Describe the different types of Data related to the I4.0 Asset"@en ; + rdfs:label "Submodel"@en ; + owl:disjointWith aas:AdministrativeInformation ; + owl:disjointWith aas:Asset ; + owl:disjointWith aas:AssetAdministrationShell ; + owl:disjointWith aas:ConceptDescription ; + owl:disjointWith aas:Formula ; + owl:disjointWith aas:Qualifier ; + owl:disjointWith aas:SubmodelElement ; + owl:disjointWith aas:View ; + . + + +### https://admin-shell.io/aas/1/1/rdf#SubmodelElement +aas:SubmodelElement rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification ; + rdfs:subClassOf aas:HasKind ; + rdfs:subClassOf aas:HasSemantics ; + rdfs:subClassOf aas:Qualifiable ; + rdfs:subClassOf aas:Referable ; + dash:abstract true ; + rdfs:comment "A submodel element is an element suitable for the description and differentiation of assets."@en ; + rdfs:label "Submodel Element"^^xsd:string ; + skos:note "The concept of type and instance applies to submodel elements. Properties are special submodel elements. The property types are defined in dictionaries (like the IEC Common Data Dictionary or eCl@ss), they do not have a value. The property type (kind=Type) is also called data element type in some standards. The property instances (kind=Instance) typically have a value. A property instance is also called property-value pair in certain standards."@en ; + owl:disjointWith aas:AdministrativeInformation ; + owl:disjointWith aas:Asset ; + owl:disjointWith aas:AssetAdministrationShell ; + owl:disjointWith aas:ConceptDescription ; + owl:disjointWith aas:Formula ; + owl:disjointWith aas:Qualifier ; + owl:disjointWith aas:Submodel ; + owl:disjointWith aas:View ; + . + + +### https://admin-shell.io/aas/1/1/rdf#SubmodelElementCollection +aas:SubmodelElementCollection rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + owl:disjointWith aas:DataElement ; + owl:disjointWith aas:Event ; + owl:disjointWith aas:Operation ; + owl:disjointWith aas:OperationVariable ; + owl:disjointWith aas:RelationshipElement ; + rdfs:comment "A submodel element collection is a set or list of submodel elements."@en ; + rdfs:label "SubmodelElementCollection"@en ; + . + + +### https://admin-shell.io/aas/1/1/rdf#Value +aas:Value rdf:type owl:Class ; # TODO delete? + rdfs:comment "Current value that can be specified through an instanced submodel (for instance in station 2) or through the asset, for example."@en ; + rdfs:label "Value"@en ; + skos:note "maybe 'containedElement'?"@en . + + +### https://admin-shell.io/aas/1/1/rdf#View +aas:View rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas:Referable , + aas:HasSemantics ; + owl:disjointWith aas:AdministrativeInformation ; + owl:disjointWith aas:Asset ; + owl:disjointWith aas:AssetAdministrationShell ; + owl:disjointWith aas:ConceptDescription ; + owl:disjointWith aas:Formula ; + owl:disjointWith aas:Qualifier ; + owl:disjointWith aas:Submodel ; + owl:disjointWith aas:SubmodelElement ; + rdfs:comment "Different views associated to the Administration Shell via the Submodels"@en ; + rdfs:comment "A view is a collection of referable elements w.r.t. to a specific viewpoint of one or more stakeholders."@en ; + rdfs:isDefinedBy "https://www.plattform-i40.de/I40/Redaktion/DE/Downloads/Publikation/hm-2018-trilaterale-coop.html"@de ; + rdfs:label "Sicht"@de , + "View"@en . + + +################################################################# +# Individuals +################################################################# + + + +### https://admin-shell.io/aas/1/1/rdf#ASSET_INSTANCE +aas:ASSET_INSTANCE rdf:type owl:NamedIndividual , + aas:AssetKind ; + rdfs:comment """The RAMI4.0 model features one, generalized life-cycle axis, which was derived from IEC 62890. The basic idea is to distinguish for all assets within Industrie 4.0 between possible types and instance. This makes it possible to apply the +type/instance distinction for all elements such as material type/material instance, product type/product instance, machine type/ machine instance and more. Business related information will be handled on the 'Business' layer of the +RAMI4.0 model, as well, covering also order details and workflows, again with types/ instances."""@en ; + rdfs:label "Instance"@en ; + skos:altLabel "Asset Instance"^^xsd:string ; + owl:differentFrom aas:INSTANCE ; +. +### https://admin-shell.io/aas/1/1/rdf#ASSET_TYPE +aas:ASSET_TYPE rdf:type owl:NamedIndividual , + aas:AssetKind ; + rdfs:comment """The RAMI4.0 model features one, generalized life-cycle axis, which was derived from IEC 62890. The basic idea is to distinguish for all assets within Industrie 4.0 between possible types and instance. This makes it possible to apply the +type/instance distinction for all elements such as material type/material instance, product type/product instance, machine type/ machine instance and more. Business related information will be handled on the 'Business' layer of the +RAMI4.0 model, as well, covering also order details and workflows, again with types/ instances."""@en ; + rdfs:label "Type"@en ; + skos:altLabel "Asset Type"^^xsd:string ; + owl:differentFrom aas:TYPE ; +. +### https://admin-shell.io/aas/1/1/rdf#INSTANCE +aas:INSTANCE rdf:type owl:NamedIndividual , + aas:Kind ; + rdfs:comment "Concrete, clearly identifiable component of a certain type."@en ; + rdfs:label "Instance"@en ; + owl:differentFrom aas:ASSET_INSTANCE ; + owl:differentFrom aas:TYPE ; +. +### https://admin-shell.io/aas/1/1/rdf#TYPE +aas:TYPE rdf:type owl:NamedIndividual , + aas:Kind ; + rdfs:comment "Hardware or software element which specifies the common attributes shared by all instances of the type."@en ; + rdfs:label "Type"@en ; + owl:differentFrom aas:ASSET_TYPE ; +. + + + +### https://admin-shell.io/aas/1/1/rdf#GLOBAL_REFERENCE_KEY_ELEMENT +aas:GLOBAL_REFERENCE_KEY_ELEMENT a aas:KeyElements ; + rdfs:label "Gobal Reference"@en ; + rdfs:comment "reference to an element not belonging to an asset administration shell"@en ; +. +### https://admin-shell.io/aas/1/1/rdf#FRAGMENT_REFERENCE_REFERABLE_ELEMENT +aas:FRAGMENT_REFERENCE_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Access Permission Rule"@en ; + rdfs:comment ""@en ; +. + +### https://admin-shell.io/aas/1/1/rdf#ACCESS_PERMISSION_RULE_REFERABLE_ELEMENT +aas:ACCESS_PERMISSION_RULE_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Access Permission Rule"@en ; + rdfs:comment ""@en ; +. +### https://admin-shell.io/aas/1/1/rdf#ANNOTATED_RELATIONSHIP_ELEMENT_REFERABLE_ELEMENT +aas:ANNOTATED_RELATIONSHIP_ELEMENT_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Annotated relationship element"@en ; + rdfs:comment ""@en ; +. +#aas:AssetAdministrationShell_REFERABLE_ELEMENT a aas:KeyElements . +#aas:Asset_REFERABLE_ELEMENT a aas:KeyElements . +### https://admin-shell.io/aas/1/1/rdf#BLOB_REFERABLE_ELEMENT +aas:BLOB_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Blob"@en ; + rdfs:comment ""@en ; +. +### https://admin-shell.io/aas/1/1/rdf#CAPABILITY_REFERABLE_ELEMENT +aas:CAPABILITY_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Capability"@en ; + rdfs:comment ""@en ; +. +#aas:ConceptDescription_REFERABLE_ELEMENT a aas:KeyElements . +### https://admin-shell.io/aas/1/1/rdf#CONCEPT_DICTIONARY_REFERABLE_ELEMENT +aas:CONCEPT_DICTIONARY_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Concept Dictionary"@en ; + rdfs:comment ""@en ; +. +### https://admin-shell.io/aas/1/1/rdf#DATA_ELEMENT_REFERABLE_ELEMENT +aas:DATA_ELEMENT_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Data Element"@en ; + rdfs:comment ""@en ; + skos:note "Data Element is abstract, i.e. if a key uses “DataElement” the reference may be a Property, a File etc."@en ; +. +### https://admin-shell.io/aas/1/1/rdf#EVENT_REFERABLE_ELEMENT +aas:EVENT_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Event"@en ; + rdfs:comment ""@en ; + skos:note "Event is abstract"@en ; +. +#aas:GlobalReference_REFERABLE_ELEMENT a aas:KeyElements . +### https://admin-shell.io/aas/1/1/rdf# +aas:MULTI_LANGUAGE_PROPERTY_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Multi-language Property"@en ; + rdfs:comment "Property with a value that can be provided in multiple languages."@en ; +. +### https://admin-shell.io/aas/1/1/rdf#OPERATION_REFERABLE_ELEMENT +aas:OPERATION_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Operation"@en ; + rdfs:comment ""@en ; +. +#aas:OperationVariable_REFERABLE_ELEMENT a aas:KeyElements . +### https://admin-shell.io/aas/1/1/rdf#PROPERTY_REFERABLE_ELEMENT +aas:PROPERTY_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Property"@en ; + rdfs:comment ""@en ; +. +### https://admin-shell.io/aas/1/1/rdf#REFERENCE_ELEMENT_REFERABLE_ELEMENT +aas:REFERENCE_ELEMENT_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Reference Element"@en ; + rdfs:comment ""@en ; +. +### https://admin-shell.io/aas/1/1/rdf#RELATIONSHIPT_ELEMENT_REFERABLE_ELEMENT +aas:RELATIONSHIPT_ELEMENT_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Relationship Element"@en ; + rdfs:comment ""@en ; +. +### https://admin-shell.io/aas/1/1/rdf#SUBMODEL_ELEMENT_REFERABLE_ELEMENT +aas:SUBMODEL_ELEMENT_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "SubmodelElement"@en ; + rdfs:comment ""@en ; + skos:note "Submodel Element is abstract, i.e. if a key uses “SubmodelElement” the reference may be a Property, a SubmodelElementCollection, an Operation etc."@en ; +. +### https://admin-shell.io/aas/1/1/rdf#SUBMODEL_ELEMENT_COLLECTION_REFERABLE_ELEMENT +aas:SUBMODEL_ELEMENT_COLLECTION_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Submodel Element Collection"@en ; + rdfs:comment "Collection of Submodel Elements"@en ; +. +#aas:SubmodelElementsKindCheck a sh:KeyElements . +### https://admin-shell.io/aas/1/1/rdf#VIEW_REFERABLE_ELEMENT +aas:VIEW_REFERABLE_ELEMENT a aas:KeyElements ; + rdfs:label "View"@en ; + rdfs:comment ""@en ; +. + +### https://admin-shell.io/aas/1/1/rdf#ASSET_IDENTIFIABLE_ELEMENT +aas:ASSET_IDENTIFIABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Asset"@en ; + rdfs:comment ""@en ; +. +### https://admin-shell.io/aas/1/1/rdf#ASSET_ADMINISTRATION_SHELL_IDENTIFIABLE_ELEMENT +aas:ASSET_ADMINISTRATION_SHELL_IDENTIFIABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Asset Administration Shell"@en ; + rdfs:comment ""@en ; +. +### https://admin-shell.io/aas/1/1/rdf#CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT +aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Concept Description"@en ; + rdfs:comment ""@en ; +. +### https://admin-shell.io/aas/1/1/rdf#SUBMODEL_IDENTIFIABLE_ELEMENT +aas:SUBMODEL_IDENTIFIABLE_ELEMENT a aas:KeyElements ; + rdfs:label "Submodel"@en ; + rdfs:comment ""@en ; +. + + +### https://admin-shell.io/aas/1/1/rdf#IRDI_IDENTIFIER_TYPE +aas:IRDI_IDENTIFIER_TYPE a aas:KeyType ; + rdfs:label "IRDI"@en ; + rdfs:comment "IRDI according to ISO29002-5 as an Identifier scheme for properties and classifications."@en ; + rdfs:subClassOf [ + a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty aas:value ; # TODO: verify aas:value property + ] ; +. +### https://admin-shell.io/aas/1/1/rdf#URI_IDENTIFIER_TYPE +aas:URI_IDENTIFIER_TYPE a aas:KeyType ; + rdfs:label "URI"@en ; + rdfs:comment "URI"@en ; +. +### https://admin-shell.io/aas/1/1/rdf#CUSTOM_IDENTIFIER_TYPE +aas:CUSTOM_IDENTIFIER_TYPE rdf:Type aas:KeyType ; + rdfs:label "Custom"@en ; + rdfs:comment "Custom identifiers like GUIDs (globally unique Identifiers)"@en ; +. +### https://admin-shell.io/aas/1/1/rdf#IDSHORT_LOCAL_KEY_TYPE +aas:IDSHORT_LOCAL_KEY_TYPE a aas:KeyType ; + rdfs:label "IdShort"@en ; + rdfs:comment "idShort of a referable element"@en ; +. +### https://admin-shell.io/aas/1/1/rdf#FRAGMENT_ID_LOCAL_KEY_TYPE +aas:FRAGMENT_ID_LOCAL_KEY_TYPE rdf:Type aas:KeyType ; + rdfs:label "FragementId"@en ; + rdfs:comment "Identifier of a fragment within a file"@en ; +. + + + +### https://admin-shell.io/aas/1/1/rdf#ALLOW +aas:ALLOW rdf:type aas:PermissionKind ; + rdfs:label "allow" ; + rdfs:comment "Allow the permission given to the subject."@en ; +. +### https://admin-shell.io/aas/1/1/rdf#DENY +aas:DENY rdf:type aas:PermissionKind ; + rdfs:label "deny" ; + rdfs:comment "Explicitly deny the permission given to the subject."@en ; +. +### https://admin-shell.io/aas/1/1/rdf#NOT_APPLICABLE +aas:NOT_APPLICABLE rdf:type aas:PermissionKind ; + rdfs:label "not applicable" ; + rdfs:comment "The permission is not applicable to the subject."@en ; +. +### https://admin-shell.io/aas/1/1/rdf#UNDEFINED +aas:UNDEFINED rdf:type aas:PermissionKind ; + rdfs:label "undefined" ; + rdfs:comment "It is undefined whether the permission is allowed, not applicable or denied to the subject."@en ; +. + + + + +################################################################# +# Annotations +################################################################# + +om:hasNumericalValue rdfs:label "has numerical value"@en . + + +### Generated by the OWL API (version 4.2.8.20170104-2310) https://github.com/owlcs/owlapi + + + + + + + + +### https://admin-shell.io/aas/1/1/rdf#AccessControlPolicyPoints +aas:AccessControlPolicyPoints rdf:type owl:Class ; + rdfs:comment "Container for access control policy points."@en ; + rdfs:label "Access Control Policy Points" ; +. + + +### https://admin-shell.io/aas/1/1/rdf#PolicyAdministrationPoint +aas:PolicyAdministrationPoint rdf:type owl:Class ; + rdfs:comment "Definition of a security administration point (PDP)."@en ; + rdfs:label "Policy Administration Point" ; +. + + +### https://admin-shell.io/aas/1/1/rdf#PolicyInformationPoints +aas:PolicyInformationPoints rdf:type owl:Class ; + rdfs:comment "Defines the security policy information points (PIP). Serves as the retrieval source of attributes, or the data required for policy evaluation to provide the information needed by the policy decision point to make the decisions."@en ; + rdfs:label "Policy Information Points" ; +. + + +### https://admin-shell.io/aas/1/1/rdf#AccessControl +aas:AccessControl rdf:type owl:Class ; + rdfs:comment "Access Control defines the local access control policy administration point. Access Control has the major task to define the access permission rules."@en ; + rdfs:label "Access Control" ; +. + + +### https://admin-shell.io/aas/1/1/rdf#AccessPermissionRule +aas:AccessPermissionRule rdf:type owl:Class ; + rdfs:subClassOf aas:Referable ; + rdfs:subClassOf aas:Qualifiable ; + rdfs:comment "Table that defines access permissions per authenticated subject for a set of objects (referable elements)."@en ; + rdfs:label "Access Permission Rule" ; +. + + +### https://admin-shell.io/aas/1/1/rdf#PermissionPerObject +aas:PermissionPerObject rdf:type owl:Class ; + rdfs:comment "Table that defines access permissions for a specified object. The object is any referable element in the AAS. Additionally object attributes can be defined that further specify the kind of object the permissions apply to."@en ; + rdfs:label "Permission Per Object" ; +. + + +### https://admin-shell.io/aas/1/1/rdf#ObjectAttributes +aas:ObjectAttributes rdf:type owl:Class ; + rdfs:comment "A set of data elements that describe object attributes. These attributes need to refer to a data element within an existing submodel."@en ; + rdfs:label "Object Attributes" ; +. + + +### https://admin-shell.io/aas/1/1/rdf#Permission +aas:Permission rdf:type owl:Class ; + rdfs:comment "Description of a single permission."@en ; + rdfs:label "Permission" ; +. + + +### https://admin-shell.io/aas/1/1/rdf#SubjectAttributes +aas:SubjectAttributes rdf:type owl:Class ; + rdfs:comment "A set of data elements that further classifies a specific subject."@en ; + rdfs:label "Subject Attributes" ; +. + + +### https://admin-shell.io/aas/1/1/rdf#PermissionKind +aas:PermissionKind rdf:type owl:Class ; + rdfs:comment "Enumeration of the kind of permissions that is given to the assignment of a permission to a subject."@en ; + rdfs:label "Permission Kind" ; + owl:oneOf ( + aas:ALLOW + aas:DENY + aas:NOT_APPLICABLE + aas:UNDEFINED + ) ; +. + + + + + + + + + + + + + + + +### https://admin-shell.io/aas/1/1/rdf#accessControlPolicyPoints +aas:accessControlPolicyPoints rdf:type owl:ObjectProperty ; + rdfs:comment "Access control policy points of the AAS."@en ; + rdfs:label "has access control policy points" ; + rdfs:domain aas:Security ; + rdfs:range aas:PolicyAdministrationPoint ; +. + + +### https://admin-shell.io/aas/1/1/rdf#trustAnchor +aas:trustAnchor rdf:type owl:ObjectProperty ; + rdfs:comment "Trust anchor of AAS, typically certificates."@en ; + rdfs:label "has trust anchor" ; + rdfs:domain aas:Security ; + rdfs:range aas:Certificate ; +. + + +### https://admin-shell.io/aas/1/1/rdf#policyAdministrationPoint +aas:policyAdministrationPoint rdf:type owl:ObjectProperty ; + rdfs:comment "The access control administration policy point of the AAS."@en ; + rdfs:label "has policy administration point" ; + rdfs:domain aas:AccessControlPolicyPoints ; + rdfs:range aas:PolicyAdministrationPoint ; +. + + +### https://admin-shell.io/aas/1/1/rdf#policyDecisionPoint +aas:policyDecisionPoint rdf:type owl:ObjectProperty ; + rdfs:comment "The access control policy decision point of the AAS."@en ; + rdfs:label "has policy decision point" ; + rdfs:domain aas:AccessControlPolicyPoints ; + rdfs:range aas:PolicyDecisionPoint ; +. + + +### https://admin-shell.io/aas/1/1/rdf#policyEnforcementPoint +aas:policyEnforcementPoint rdf:type owl:ObjectProperty ; + rdfs:comment "The access control policy enforcement point of the AAS."@en ; + rdfs:label "has policy enforcement point" ; + rdfs:domain aas:AccessControlPolicyPoints ; + rdfs:range aas:PolicyEnforcementPoint ; +. + + +### https://admin-shell.io/aas/1/1/rdf#policyInformationPoints +aas:policyInformationPoints rdf:type owl:ObjectProperty ; + rdfs:comment "The access control policy information points of the AAS."@en ; + rdfs:label "has policy information points" ; + rdfs:domain aas:AccessControlPolicyPoints ; + rdfs:range aas:PolicyInformationPoints ; +. + + +### https://admin-shell.io/aas/1/1/rdf#localAccessControl +aas:localAccessControl rdf:type owl:ObjectProperty ; + rdfs:comment "The policy administration point of access control as realized by the AAS itself."@en ; + skos:note "Constraint AASd-009: Either there is an external policy administration point endpoint defined or the AAS has its own access control."@en ; + rdfs:label "has local access control" ; + rdfs:domain aas:PolicyAdministrationPoint ; + rdfs:range aas:AccessControl ; +. + + +### https://admin-shell.io/aas/1/1/rdf#externalAccessControl +aas:externalAccessControl rdf:type owl:ObjectProperty ; + rdfs:comment "Endpoint to an external access control defining a policy administration point to be used by the AAS."@en ; + rdfs:label "has external access control" ; + rdfs:domain aas:PolicyAdministrationPoint ; + rdfs:range aas:Endpoint ; +. + + +### https://admin-shell.io/aas/1/1/rdf#externalInformationPoint +aas:externalInformationPoint rdf:type owl:ObjectProperty ; + rdfs:comment "Endpoints to external available information points taking into consideration for access control for the AAS."@en ; + rdfs:label "has external information point" ; + rdfs:domain aas:PolicyInformationPoints ; + rdfs:range aas:Endpoint ; +. + + +### https://admin-shell.io/aas/1/1/rdf#internalInformationPoint +aas:internalInformationPoint rdf:type owl:ObjectProperty ; + rdfs:comment "References to submodels defining information used by security access permission rules."@en ; + rdfs:label "has internal information point" ; + rdfs:domain aas:PolicyInformationPoints ; + rdfs:range aas:Submodel ; +. + + +### https://admin-shell.io/aas/1/1/rdf#accessPermissionRule +aas:accessPermissionRule rdf:type owl:ObjectProperty ; + rdfs:comment "Access permission rules of the AAS describing the rights assigned to (already authenticated) subjects to access elements of the AAS."@en ; + rdfs:label "has access permission rule" ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:AccessPermissionRule ; +. + + +### https://admin-shell.io/aas/1/1/rdf#selectableSubjectAttributes +aas:selectableSubjectAttributes rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining the authenticated subjects that are configured for the AAS. They are selectable by the access permission rules to assign permissions to the subjects."@en ; + rdfs:label "has selectable subject attributes" ; + skos:note "Default: reference to the submodel referenced via defaultSubjectAttributes."@en ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + + +### https://admin-shell.io/aas/1/1/rdf#defaultSubjectAttributes +aas:defaultSubjectAttributes rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining the default subjects attributes for the AAS that can be used to describe access permission rules."@en ; + rdfs:label "has default subject attributes" ; + skos:note "The submodel is of kind=Type."@en ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + + +### https://admin-shell.io/aas/1/1/rdf#selectablePermissions +aas:selectablePermissions rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining which permissions can be assigned to the subjects."@en ; + rdfs:label "has selectable permissions" ; + skos:note "Default: reference to the submodel referenced via defaultPermissions"@en ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + + +### https://admin-shell.io/aas/1/1/rdf#defaultPermissions +aas:defaultPermissions rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining the default permissions for the AAS."@en ; + rdfs:label "has default permissions" ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + + +### https://admin-shell.io/aas/1/1/rdf#selectableEnvironmentAttributes +aas:selectableEnvironmentAttributes rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining which environment attributes can be accessed via the permission rules."@en ; + rdfs:label "has selectable environment attributes" ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + + +### https://admin-shell.io/aas/1/1/rdf#defaultEnvironmentAttributes +aas:defaultEnvironmentAttributes rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining default environment attributes, i.e. attributes that are not describing the asset itself. The submodel is of kind=Type. At the same type the values of these environment attributes need to be accessible when evaluating the access permission rules. This is realized as a policy information point."@en ; + rdfs:label "has default environment attributes" ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + + +### https://admin-shell.io/aas/1/1/rdf#targetSubjectAttributes +aas:targetSubjectAttributes rdf:type owl:ObjectProperty ; + rdfs:comment "Target subject attributes that need to be fulfilled by the accessing subject to get the permissions defined by this rule."@en ; + rdfs:label "has target subject attributes" ; + rdfs:domain aas:AccessPermissionRule ; + rdfs:range aas:SubjectAttributes ; +. + + +### https://admin-shell.io/aas/1/1/rdf#permissionsPerObject +aas:permissionsPerObject rdf:type owl:ObjectProperty ; + rdfs:comment "Set of object-permission pairs that define the permissions per object within the access permission rule."@en ; + rdfs:label "has permissions per object" ; + rdfs:domain aas:AccessPermissionRule ; + rdfs:range aas:PermissionsPerObject ; +. + + +### https://admin-shell.io/aas/1/1/rdf#object +aas:object rdf:type owl:ObjectProperty ; + rdfs:comment "Element to which permission shall be assigned."@en ; + rdfs:label "has object" ; + rdfs:domain aas:PermissionPerObject ; + rdfs:range aas:Referable ; +. + + +### https://admin-shell.io/aas/1/1/rdf#targetObjectAttributes +aas:targetObjectAttributes rdf:type owl:ObjectProperty ; + rdfs:comment "Target object attributes that need to be fulfilled so that the access permissions apply to the accessing subject."@en ; + rdfs:label "has target object attributes" ; + rdfs:domain aas:PermissionPerObject ; + rdfs:range aas:ObjectAttributes ; +. + + +### https://admin-shell.io/aas/1/1/rdf#permission +aas:permission rdf:type owl:ObjectProperty ; + rdfs:comment "Permissions assigned to the object. The permissions hold for all subjects as specified in the access permission rule."@en ; + rdfs:label "has permission" ; + rdfs:domain aas:PermissionPerObject ; + rdfs:range aas:Permission ; +. + + +### https://admin-shell.io/aas/1/1/rdf#objectAttribute +aas:objectAttribute rdf:type owl:ObjectProperty ; + rdfs:comment "A data elements that further classifies an object."@en ; + rdfs:label "has object attribute" ; + rdfs:domain aas:ObjectAttributes ; + rdfs:range aas:DataElement ; +. + + +### https://admin-shell.io/aas/1/1/rdf#permission +aas:permission rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a property that defines the semantics of the permission."@en ; + skos:note "Constraint AASd-010: The property has the category CONSTANT."@en ; + skos:note "Constraint AASd-011: The permission property shall be part of the submodel that is referenced within the selectablePermissions attribute of AccessControl."@en ; + rdfs:label "has permission" ; + rdfs:domain aas:Permission ; + rdfs:range aas:Property ; +. + + +### https://admin-shell.io/aas/1/1/rdf#kindOfPermission +aas:kindOfPermission rdf:type owl:ObjectProperty ; + rdfs:comment "Description of the kind of permission. Possible kind of permission also include the denial of the permission."@en ; + rdfs:label "has kind of permission" ; + rdfs:domain aas:Permission ; + rdfs:range aas:PermissionKind ; +. + + +### https://admin-shell.io/aas/1/1/rdf#subjectAttribute +aas:subjectAttribute rdf:type owl:ObjectProperty ; + rdfs:comment "A data element that further classifies a specific subject. "@en ; + skos:note "Constraint AASd-025: The data element shall be part of the submodel that is referenced within the selectableSubjectAttributes attribute of AccessControl."@en ; + rdfs:label "has subject attribute" ; + rdfs:domain aas:SubjectAttributes ; + rdfs:range aas:DataElement ; +. + + + + + + + + + + + + + + + + + + + diff --git a/AssetAdministrationShell_Ontology_2.0.1.ttl b/AssetAdministrationShell_Ontology_2.0.1.ttl new file mode 100644 index 0000000..3bf8840 --- /dev/null +++ b/AssetAdministrationShell_Ontology_2.0.1.ttl @@ -0,0 +1,1823 @@ +@prefix aas: . +@prefix iec61360: . +@prefix phys_unit: . +@prefix dash: . +@prefix dc: . +@prefix dcterms: . +@prefix owl: . +@prefix rdf: . +@prefix rdfs: . +@prefix skos: . +@prefix vann: . +@prefix xsd: . +@base . + + rdf:type owl:Ontology ; + vann:preferredNamespaceUri "http://admin-shell.io/aas/2/0/"^^xsd:anyURI ; + owl:versionInfo 2.0 ; + rdfs:comment "An Ontology to represents the data model for the Asset Administration Shell accoridng to the specification 'Details of the Asset Administration Shell - Part 1 - Version 2.0'."@en ; + skos:prefLabel "aas"^^xsd:string ; + vann:preferredNamespacePrefix "aas"^^xsd:string ; + rdfs:isDefinedBy ; +. + +### http://admin-shell.io/aas/2/0/AccessControl +aas:AccessControl rdf:type owl:Class ; + rdfs:comment "Access Control defines the local access control policy administration point. Access Control has the major task to define the access permission rules."@en ; + rdfs:label "Access Control"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AccessControl/accessPermissionRule + rdf:type owl:ObjectProperty ; + rdfs:comment "Access permission rules of the AAS describing the rights assigned to (already authenticated) subjects to access elements of the AAS."@en ; + rdfs:label "has access permission rule"^^xsd:string ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:AccessPermissionRule ; +. + +### http://admin-shell.io/aas/2/0/AccessControl/selectableSubjectAttributes + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining the authenticated subjects that are configured for the AAS. They are selectable by the access permission rules to assign permissions to the subjects."@en ; + rdfs:label "has selectable subject attributes"^^xsd:string ; + skos:note "Default: reference to the submodel referenced via defaultSubjectAttributes."@en ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + +### http://admin-shell.io/aas/2/0/AccessControl/defaultSubjectAttributes + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining the default subjects attributes for the AAS that can be used to describe access permission rules."@en ; + rdfs:label "has default subject attributes"^^xsd:string ; + skos:note "The submodel is of kind=Type."@en ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + +### http://admin-shell.io/aas/2/0/AccessControl/selectablePermissions + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining which permissions can be assigned to the subjects."@en ; + rdfs:label "has selectable permissions"^^xsd:string ; + skos:note "Default: reference to the submodel referenced via defaultPermissions"@en ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + +### http://admin-shell.io/aas/2/0/AccessControl/defaultPermissions + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining the default permissions for the AAS."@en ; + rdfs:label "has default permissions"^^xsd:string ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + +### http://admin-shell.io/aas/2/0/AccessControl/selectableEnvironmentAttributes + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining which environment attributes can be accessed via the permission rules."@en ; + rdfs:label "has selectable environment attributes"^^xsd:string ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + +### http://admin-shell.io/aas/2/0/AccessControl/defaultEnvironmentAttributes + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a submodel defining default environment attributes, i.e. attributes that are not describing the asset itself. The submodel is of kind=Type. At the same type the values of these environment attributes need to be accessible when evaluating the access permission rules. This is realized as a policy information point."@en ; + rdfs:label "has default environment attributes"^^xsd:string ; + rdfs:domain aas:AccessControl ; + rdfs:range aas:Submodel ; +. + +### http://admin-shell.io/aas/2/0/AccessControlPolicyPoints +aas:AccessControlPolicyPoints rdf:type owl:Class ; + rdfs:comment "Container for access control policy points."@en ; + rdfs:label "Access ControlPolicy Points"^^xsd:string . + +### http://admin-shell.io/aas/2/0/AccessControlPolicyPoints/policyAdministrationPoint + rdf:type owl:ObjectProperty ; + rdfs:comment "The access control administration policy point of the AAS."@en ; + rdfs:label "has policy administration point"^^xsd:string ; + rdfs:domain aas:AccessControlPolicyPoints ; + rdfs:range aas:PolicyAdministrationPoint ; +. + +### http://admin-shell.io/aas/2/0/AccessControlPolicyPoints/policyDecisionPoint + rdf:type owl:ObjectProperty ; + rdfs:comment "The access control policy decision point of the AAS."@en ; + rdfs:label "has policy decision point"^^xsd:string ; + rdfs:domain aas:AccessControlPolicyPoints ; + rdfs:range aas:PolicyDecisionPoint ; +. + +### http://admin-shell.io/aas/2/0/AccessControlPolicyPoints/policyEnforcementPoint + rdf:type owl:ObjectProperty ; + rdfs:comment "The access control policy enforcement point of the AAS."@en ; + rdfs:label "has policy enforcement point"^^xsd:string ; + rdfs:domain aas:AccessControlPolicyPoints ; + rdfs:range aas:PolicyEnforcementPoint ; +. + +### http://admin-shell.io/aas/2/0/AccessControlPolicyPoints/policyInformationPoints + rdf:type owl:ObjectProperty ; + rdfs:comment "The access control policy information points of the AAS."@en ; + rdfs:label "has policy information points"^^xsd:string ; + rdfs:domain aas:AccessControlPolicyPoints ; + rdfs:range aas:PolicyInformationPoints ; +. + +### http://admin-shell.io/aas/2/0/AccessPermissionRule +aas:AccessPermissionRule rdf:type owl:Class ; + rdfs:subClassOf aas:Referable ; + rdfs:subClassOf aas:Qualifiable ; + rdfs:comment "Table that defines access permissions per authenticated subject for a set of objects (referable elements)."@en ; + rdfs:label "Access Permission Rule"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AccessPermissionRule/permissionsPerObject + rdf:type owl:ObjectProperty ; + rdfs:comment "Set of object-permission pairs that define the permissions per object within the access permission rule."@en ; + rdfs:label "has permissions per object"^^xsd:string ; + rdfs:domain aas:AccessPermissionRule ; + rdfs:range aas:PermissionsPerObject ; +. + +### http://admin-shell.io/aas/2/0/AccessPermissionRule/targetSubjectAttributes + rdf:type owl:ObjectProperty ; + rdfs:comment "Target subject attributes that need to be fulfilled by the accessing subject to get the permissions defined by this rule."@en ; + rdfs:label "has target subject attributes"^^xsd:string ; + rdfs:domain aas:AccessPermissionRule ; + rdfs:range aas:SubjectAttributes ; +. + +### http://admin-shell.io/aas/2/0/AdministrativeInformation +aas:AdministrativeInformation rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification ; + rdfs:comment "Every Identifiable may have administrative information. Administrative information includes for example  Information about the version of the element  Information about who created or who made the last change to the element  Information about the languages available in case the element contains text, for translating purposed also themmaster or default language may be definedIn the first version of the AAS metamodel only version information as defined by IEC 61360 is defined. In later versions additional attributes may be added."@en ; + rdfs:label "Administrative Information"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AdministrativeInformation/version + rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf dcterms:hasVersion ; + rdfs:domain aas:AdministrativeInformation ; + rdfs:range xsd:string ; + rdfs:comment "Version of the element."@en ; + rdfs:label "has version"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AdministrativeInformation/revision + rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf dcterms:hasVersion ; + rdfs:comment "Revision of the element. Constraint AASd-005: A revision requires a version. This means, if there is no version there is no revision neither."@en ; + rdfs:label "has revision"@en ; + rdfs:domain aas:AdministrativeInformation ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AnnotatedRelationshipElement +aas:AnnotatedRelationshipElement rdf:type owl:Class ; + rdfs:subClassOf aas:RelationshipElement ; + rdfs:comment "An annotated relationship element is an relationship element that can be annotated with additional data elements."@en ; + rdfs:label "Annotated Relationship Element"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AnnotatedRelationshipElement/annotation + rdf:type owl:ObjectProperty ; + rdfs:comment "Annotations that hold for the relationships between the two elements."@en ; + rdfs:label "has annotation"^^xsd:string ; + rdfs:domain aas:AnnotatedRelationshipElement ; +. + +### http://admin-shell.io/aas/2/0/Asset +aas:Asset rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , aas:Identifiable ; + skos:altLabel "Object"@en ; + skos:definition "Clearly identifiable asset for the Administration Shell"@en ; + skos:prefLabel "Asset"@en ; + rdfs:label "Asset"^^xsd:string ; + skos:definition "Eindeutig identifizierbarer Gegenstand, der aufgrund seiner Bedeutung in der Informationswelt verwaltet wird"@de ; + rdfs:comment "An Asset describes meta data of an asset that is represented by an AAS. The asset may either represent an asset type or an asset instance. The asset has a globally unique identifier plus – if needed – additional domain specific (proprietary) identifiers."@en ; + skos:note "Objects may be known in the form of a type or of an instance. An object in the planning phase is known as a type"@en ; +. + +### http://admin-shell.io/aas/2/0/Asset/assetIdentificationModel + rdf:type owl:ObjectProperty ; + rdfs:domain aas:Asset ; + rdfs:range aas:Reference ; + rdfs:comment "A reference to a Submodel that defines the handling of additional domain specific (proprietary) Identifiers for the asset like e.g. serial number etc."@en ; + rdfs:label "has Asset Identification Model"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Asset/billOfMaterial + rdf:type owl:ObjectProperty ; + rdfs:domain aas:Asset ; + rdfs:range aas:Reference ; + rdfs:comment "Bill of material of the asaset represented by a submodel of the same AAS. This submodel contains a set of entities describing the material used to compose the composite I4.0 Component."@en ; + rdfs:label "has Bill of Material"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Asset/kind + rdf:type owl:ObjectProperty ; + rdfs:domain aas:Asset ; + rdfs:range aas:AssetKind ; + rdfs:label "has kind"^^xsd:string ; + rdfs:comment "Denotes whether the Asset of of kind 'Type' or 'Instance'."@en ; +. +### http://admin-shell.io/aas/2/0/AssetAdministrationShell +aas:AssetAdministrationShell rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , aas:Identifiable ; + rdfs:label "Asset Administration Shell"^^xsd:string ; + skos:altLabel "Administration Shell"@en , "Verwaltungsschale"@de ; + skos:definition "Describes the Administration Shell for Assets, Products, Components, e.g. Machines"@en ; + rdfs:comment "Describes the Administration Shell for Assets, Products, Components, e.g. Machines"@en ; + skos:prefLabel "Asset Administration Shell"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AssetAdministrationShell/asset + rdf:type owl:ObjectProperty ; + rdfs:domain aas:AssetAdministrationShell ; + rdfs:range aas:Reference ; + rdfs:comment "The asset the AAS is representing."@en ; + rdfs:label "has asset"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AssetAdministrationShell/conceptDictionary + rdf:type owl:ObjectProperty ; + rdfs:domain aas:AssetAdministrationShell; + rdfs:range aas:ConceptDictionary ; + rdfs:comment "An AAS max have one or more concept dictionaries assigned to it. The concept dictionaries typically contain only descriptions for elements that are also used within the AAS (via HasSemantics)."@en ; + rdfs:label "has concept dictionary"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AssetAdministrationShell/derivedFrom + rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf ; + rdfs:domain aas:AssetAdministrationShell ; + rdfs:range aas:Reference ; + rdfs:comment "This relation connects instances of AAS with their respective types. Refer to Asset Kind for further information of instance and type kinds."@en ; + rdfs:label "was derived from"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AssetAdministrationShell/security + rdf:type owl:ObjectProperty ; + rdfs:comment "Definition of the security relevant aspects of the AAS."@en ; + rdfs:label "has security"^^xsd:string ; + rdfs:domain aas:AssetAdministrationShell ; +. + +### http://admin-shell.io/aas/2/0/AssetAdministrationShell/submodel + rdf:type owl:ObjectProperty ; + rdfs:domain aas:AssetAdministrationShell ; + rdfs:range aas:Submodel ; + rdfs:comment "Points from the Admin Shell to the Submodels that describe the Admin Shell of a given Asset"@en ; + rdfs:label "has Submodel"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AssetAdministrationShell/view + rdf:type owl:ObjectProperty ; + rdfs:domain aas:AssetAdministrationShell; + rdfs:range aas:View ; + rdfs:comment "Points to the differents views associated to the Administration Shell via the Submodels."@en ; + rdfs:label "has View"^^xsd:string ; + skos:prefLabel "view"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/AssetKind +aas:AssetKind rdf:type owl:Class ; + rdfs:comment "Enumeration for denoting whether an element is a type or an instance."@en ; + rdfs:label "Asset Kind"^^xsd:string ; + owl:oneOf ( + + + ) ; +. + +### http://admin-shell.io/aas/2/0/AssetKind/INSTANCE + rdf:type aas:AssetKind ; + rdfs:comment "Concrete, clearly identifiable component of a certain type."@en ; + rdfs:label "Asset Instance"^^xsd:string ; + owl:differentFrom aas:INSTANCE ; + owl:differentFrom ; +. + +### http://admin-shell.io/aas/2/0/AssetKind/TYPE + rdf:type aas:AssetKind ; + rdfs:comment "hardware or software element which specifies the common attributes shared by all instances of the type."@en ; + rdfs:label "Asset Type"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/BasicEvent +aas:BasicEvent rdf:type owl:Class ; + rdfs:subClassOf aas:Event ; + rdfs:label "Basic Event"^^xsd:string ; + rdfs:comment "A basic event."@en ; +. + +### http://admin-shell.io/aas/2/0/BasicEvent/observed + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to the data or other elements that are being observed."@en ; + rdfs:label "observed by"^^xsd:string ; + rdfs:domain aas:BasicEvent ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/aas/2/0/Blob +aas:Blob rdf:type owl:Class ; + rdfs:subClassOf aas:DataElement ; + rdfs:comment "A BLOB is a data element that represents a file that is contained with its source code in the value attribute."@en ; + rdfs:label "Blob Data Element"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Blob/mimeType + rdf:type owl:ObjectProperty ; + rdfs:domain aas:Blob ; + rdfs:range xsd:string ; + rdfs:comment "Mime type of the content of the BLOB. The mime type states which file extension the file has. Valid values are e.g. 'application/json', 'application/xls', 'image/jpg' The allowed values are defined as in RFC2046."@en ; + rdfs:label "has mimetype"^^xsd:string ; + rdfs:seeAlso "http://uri4uri.net/vocab.html/#MimetypeDatatype"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Blob/value + rdf:type rdf:ObjectProperty ; + rdfs:domain aas:Blob ; + rdfs:range aas:BlobType ; + rdfs:comment "The value of the BLOB instance of a blob data element."@en ; + skos:note "In contrast to the file property the file content is stored directly as value in the Blob data element."@en ; + rdfs:label "has value"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/BlobCertificate +aas:BlobCertificate rdf:type owl:Class ; + rdfs:subClassOf aas:Certificate ; + rdfs:comment "Certificate provided as BLOB."@en ; + rdfs:label "Blob Certificate"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/BlobCertificate/blobCertificate + rdf:type owl:DatatypeProperty ; + rdfs:comment "Certificate as BLOB."@en ; + rdfs:label "Blob Certificate"^^xsd:string ; + rdfs:domain aas:BlobCertificate ; + rdfs:range xsd:byte ; +. + +### http://admin-shell.io/aas/2/0/BlobCertificate/containedExtension + rdf:type owl:ObjectProperty ; + rdfs:comment "Extensions contained in the certificate."@en ; + rdfs:label "contains extension"^^xsd:string ; + rdfs:domain aas:BlobCertificate ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/aas/2/0/lastCertificate + rdf:type owl:DatatypeProperty ; + rdfs:comment "Denotes whether this certificate is the certificated that fast added last."@en ; + rdfs:label "is last certificate"^^xsd:string ; + rdfs:domain aas:BlobCertificate ; + rdfs:range xsd:boolean ; +. + +### http://admin-shell.io/aas/2/0/Capability +aas:Capability rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:comment "A capability is the implementation-independent description of the potential of an asset to achieve a certain effect in the physical or virtual world."@en ; + rdfs:label "Capability"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Category +aas:Category rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:comment "A enumeration for data elements except for files and blobs."@en ; + rdfs:label "Category"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Category/CONSTANT + rdf:type aas:Category ; + rdfs:comment "A constant property is a property with a value that does not change over time. In eCl@ss this kind of category has the category 'Coded Value'."@en ; + rdfs:label "Constant"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Category/PARAMETER + rdf:type aas:Category ; + rdfs:comment "A parameter property is a property that is once set and then typically does not change over time. This is for example the case for configuration parameters."@en ; + rdfs:label "Parameter"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Category/VARIABLE + rdf:type aas:Category ; + rdfs:comment "A variable property is a property that is calculated during runtime, i.e. its value is a runtime value."@en ; + rdfs:label "Variable"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Certificate +aas:Certificate rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "A technical certificate proofing the identity through cryptographic measures."@en ; + rdfs:label "Certificate"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Certificate/policyAdministrationPoint + rdf:type owl:ObjectProperty ; + rdfs:comment "The access control administration policy point of the AAS."@en ; + rdfs:label "has policy administration point"^^xsd:string ; + rdfs:domain aas:Certificate ; + rdfs:range aas:PolicyAdministrationPoint ; +. +### http://admin-shell.io/aas/2/0/ConceptDescription +aas:ConceptDescription rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , aas:Identifiable ; + rdfs:label "Concept Description"^^xsd:string ; + rdfs:comment "The AAS itself can also define its own dictionary that contains semantic definitions of its submodel elements. These semantic definitions are called concept descriptions (ConceptDescription). It is optional whether an AAS defines its own concept dictionary (ConceptDictionary) or not."@en ; + rdfs:comment "The semantics of a property or other elements that may have a semantic description is defined by a concept description. The description of the concept should follow a standardized schema (realized as data specification template)."@en ; +. + +### http://admin-shell.io/aas/2/0/ConceptDescription/isCaseOf + rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf dcterms:identifier ; + rdfs:comment "Global reference to an external definition the concept is compatible to or was derived from."@en ; + skos:note "Compare to is-case-of relationship in ISO 13584-32 & IEC EN 61360."@en ; + rdfs:label "is case of"^^xsd:string ; + rdfs:domain aas:ConceptDescription ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/aas/2/0/ConceptDictionary +aas:ConceptDictionary rdf:type owl:Class ; + rdfs:subClassOf aas:Referable ; + rdfs:label "Concept Dictionary"^^xsd:string ; + rdfs:comment "A dictionary contains elements that can be reused. The concept dictionary contains concept descriptions. Typically a concept description dictionary of an AAS contains only concept descriptions of elements used within submodels of the AAS."@en ; +. + +### http://admin-shell.io/aas/2/0/ConceptDictionary/conceptDescription + rdf:type owl:ObjectProperty ; + rdfs:domain aas:ConceptDictionary; + rdfs:range aas:ConceptDescription ; + rdfs:comment "The semantics of a property or other elements that may have a semantic description is defined by a concept description. The description of the concept should follow a standardized schema (realized as data specification template)."@en ; + rdfs:label "has concept description"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Constraint +aas:Constraint rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "A constraint is used to further qualify an element."@en ; + rdfs:label "Constraint"@en ; + skos:prefLabel "Constraint"@en ; +. + +### http://admin-shell.io/aas/2/0/DataElement +aas:DataElement rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + dash:abstract true ; + rdfs:comment "A data element is a submodel element that is not further composed out of other submodel elements. A data element is a submodel element that has a value. The type of value differs for different subtypes of data elements."@en ; + rdfs:label "Data Element"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/DataSpecification +aas:DataSpecification rdf:type owl:Class ; + rdfs:subClassOf aas:Identifiable ; + dash:abstract true ; + rdfs:comment "Element that can have data specification templates. A template defines the additional attributes an element may or shall have."@en ; + rdfs:label "DataSpecification"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/DataSpecificationContent +aas:DataSpecificationContent rdf:type owl:Class ; + rdfs:label "Data Specification Content"^^xsd:string ; + rdfs:comment "DataSpecificationContent contains the additional attributes to be added to the element instance that references the data specification template and meta information about the template itself."@en ; + dash:abstract true ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360 +iec61360:DataSpecificationIEC61360 rdf:type owl:Class ; + rdfs:subClassOf aas:DataSpecificationContent ; + rdfs:label "Data Specification IEC 61360"^^xsd:string ; + rdfs:comment "Data Specification Template for defining Property Descriptions conformant to IEC 61360."@en ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/datatype + rdf:type owl:ObjectProperty ; + rdfs:label "has datatype"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range aas:DataTypeIEC61360 ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/preferredName + rdf:type owl:DatatypeProperty ; + rdfs:label "has preferred name"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range rdf:langString ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/shortName + rdf:type owl:DatatypeProperty ; + rdfs:label "has short name"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range rdf:langString ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/symbol + rdf:type owl:DatatypeProperty ; + rdfs:label "has symbol"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/unit + rdf:type owl:DatatypeProperty ; + rdfs:label "has unit"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/unitId + rdf:type owl:DatatypeProperty ; + rdfs:label "has unit id"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/valueFormat + rdf:type owl:DatatypeProperty ; + rdfs:label "has value format"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/value + rdf:type owl:ObjectProperty ; + rdfs:label "has value"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/valueList + rdf:type owl:ObjectProperty ; + rdfs:label "has value list"^^xsd:string ; + rdfs:comment "The Type 'ValueList' lists all the allowed values for a concept description for which the allowed values are listed in an enumeration. The value list is a set of value reference pairs."@en ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/valueId + rdf:type owl:ObjectProperty ; + rdfs:label "has value id"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/ +phys_unit: rdf:type owl:Class ; + rdfs:subClassOf aas:DataSpecificationContent ; + rdfs:label "Data Specification Physical Unit"^^xsd:string ; + rdfs:comment "Data Specification Tempate for Physical Units."@en ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/conversionFactor +phys_unit:conversionFactor rdf:type owl:DatatypeProperty ; + rdfs:label "has conversion factor"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/dinNotation +phys_unit:dinNotation rdf:type owl:DatatypeProperty ; + rdfs:label "has DIN notation"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/eceCode +phys_unit:eceCode rdf:type owl:DatatypeProperty ; + rdfs:label "has ECE code"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/eceName +phys_unit:eceName rdf:type owl:DatatypeProperty ; + rdfs:label "has ECE name"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/nistName +phys_unit:nistName rdf:type owl:DatatypeProperty ; + rdfs:label "has NIST name"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/siName + rdf:type owl:DatatypeProperty ; + rdfs:label "has SI name"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/siNotation + rdf:type owl:DatatypeProperty ; + rdfs:label "has SI notation"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/registrationAuthority +phys_unit:registrationAuthority rdf:type owl:DatatypeProperty ; + rdfs:label "has registration authority"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/supplier +phys_unit:supplier rdf:type owl:DatatypeProperty ; + rdfs:label "has supplier"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/unitName +phys_unit:unitName rdf:type owl:DatatypeProperty ; + rdfs:label "unit has name"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/unitSymbol +phys_unit:unitSymbol rdf:type owl:ObjectProperty ; + rdfs:label "unit has symbol"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Entity +aas:Entity rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:label "Entity"^^xsd:string ; + rdfs:comment "An entity is a submodel element that is used to model entities."@en ; +. + +### http://admin-shell.io/aas/2/0/Entity/asset + rdf:type owl:ObjectProperty ; + rdfs:label "has asset"^^xsd:string ; + rdfs:domain aas:Entity ; + rdfs:range aas:Asset ; + rdfs:comment "Reference to the asset the entity is representing."@en ; + skos:note "The asset attribute must be set if entityType is set to 'SelfManagedEntity'. It is empty otherwise."@en ; +. + +### http://admin-shell.io/aas/2/0/Entity/entityType + rdf:type owl:ObjectProperty ; + rdfs:label "has entity type"^^xsd:string ; + rdfs:domain aas:Entity ; + rdfs:range aas:EntityType ; + rdfs:comment "Describes whether the entity is a co-managed entity or a self-managed entity."@en ; +. + +### http://admin-shell.io/aas/2/0/Entity/statement + rdf:type owl:DatatypeProperty ; + rdfs:label "has statement"^^xsd:string ; + rdfs:comment "Describes statements applicable to the entity by a set of submodel elements, typically with a qualified value."@en ; + rdfs:domain aas:Entity ; + rdfs:range rdf:SubmodelElement ; +. + +### http://admin-shell.io/aas/2/0/EntityType +aas:EntityType rdf:type owl:Class ; + rdfs:label "Entity Type"^^xsd:string ; + rdfs:comment "Enumeration for denoting whether an entity is a self-managed entity or a co-managed entity."@en ; + owl:oneOf ( ) ; +. + +### http://admin-shell.io/aas/2/0/EntityType/CO_MANAGED_ENTITY + rdf:type aas:EntityType ; + rdfs:comment "For co-managed entities there is no separate AAS. Co-managed entities need to be part of a self-managed entity."@en ; + rdfs:label "Co-managed Entity"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/EntityType/SELF_MANAGED_ENTITY + rdf:type aas:EntityType ; + rdfs:comment "Self-Managed Entities have their own AAS but can be part of the bill of material of a composite self-managed entity. The asset of an I4.0 Component is a self-managed entity per definition."@en ; + rdfs:label "Self-managed Entity"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Event +aas:Event rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:label "Event"^^xsd:string ; + rdfs:comment "An event."@en ; +. + +### http://admin-shell.io/aas/2/0/EventElement +aas:EventElement rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:label "Event Element"^^xsd:string ; + rdfs:comment "Defines the necessary information for sending or receiving events."@en ; + skos:note "non-normative, just only for discussion (as of November 2019)."@en ; +. + +### http://admin-shell.io/aas/2/0/EventMessage +aas:EventMessage rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:label "Event Message"^^xsd:string ; + rdfs:comment "Defines the necessary information of an event instance sent out or received."@en ; + skos:note "non-normative, just only for discussion (as of November 2019)."@en ; +. + +### http://admin-shell.io/aas/2/0/File +aas:File rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:comment "A File is a data element that represents a file via its path description."@en ; + rdfs:label "File Submodel Element"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/File/mimeType + rdf:type owl:ObjectProperty ; + rdfs:domain aas:File ; + rdfs:range xsd:string ; + rdfs:comment "Mime type of the content of the File."@en ; + rdfs:label "has mimetype"^^xsd:string ; + rdfs:seeAlso "http://uri4uri.net/vocab.html/#MimetypeDatatype"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/File/value + rdf:type rdf:ObjectProperty ; + rdfs:domain aas:File ; + rdfs:range aas:PathType ; + rdfs:comment "Path and name of the referenced file (with file extension). The path can be absolute or relative."@en ; + rdfs:label "has value"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Formula +aas:Formula rdf:type owl:Class ; + rdfs:subClassOf aas:Constraint ; + dc:description "A formula is used to describe constraints by a logical expression."@en ; + rdfs:label "Formula"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Formula/dependsOn + rdf:type owl:ObjectProperty ; + rdfs:domain aas:Formula ; + rdfs:range aas:Reference ; + rdfs:comment "A formula may depend on referable or even external global elements - assumed that can be referenced and their value may be evaluated - that are used in the logical expression."@en ; + rdfs:label "depends on"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/HasDataSpecification +aas:HasDataSpecification rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "Element that can have be extended by using data specification templates. A data specification template defines the additional attributes an element may or shall have. The data specifications used are explicitly specified with their id."@en ; + rdfs:label "Has Data Specification"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/HasDataSpecification/dataSpecification + rdf:type owl:ObjectProperty ; + rdfs:comment "Global reference to the data specification template used by the element."@en ; + rdfs:label "has Data Specification"^^xsd:string ; + rdfs:domain aas:HasDataSpecification ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/aas/2/0/HasKind +aas:HasKind rdf:type owl:Class ; + rdfs:comment "An element with a kind is an element that can either represent a type or an instance. Default for an element is that it is representing an instance."@en ; + rdfs:label "Has Kind"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/HasKind/kind + rdf:type owl:ObjectProperty ; + rdfs:domain aas:HasKind ; + rdfs:range aas:ModelingKind ; + rdfs:label "has kind"^^xsd:string ; + rdfs:comment "ModelingKind of the element: either type or instance."@en ; +. + +### http://admin-shell.io/aas/2/0/HasSemantics +aas:HasSemantics rdf:type owl:Class ; + dash:abstract true ; + rdfs:label "Has Semantics"^^xsd:string ; + rdfs:comment "Element that can have a semantic definition. Identifier of the semantic definition of the element. It is called semantic id of the element. The semantic id may either reference an external global id or it may reference a referable model element of kind=Type that defines the semantics of the element."@en ; + skos:note "In many cases the idShort is identical to the English short name within the semantic definition as referenced vi aits semantic id."@en ; +. + +### http://admin-shell.io/aas/2/0/HasSemantics/semanticId + rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf rdfs:seeAlso ; + rdfs:label "has semantic ID"^^xsd:string ; + skos:altLabel "has Semantic Expression"@en ; + rdfs:comment "Points to the Expression Semantic of the Submodels"@en ; + rdfs:comment "The semantic id might refer to an external information source, which explains the formulation of the submodel (for example an PDF if a standard)."@en ; + rdfs:domain aas:HasSemantics ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/aas/2/0/Identifiable +aas:Identifiable rdf:type owl:Class ; + dash:abstract true ; + rdfs:subClassOf aas:Referable ; + rdfs:comment "An element that has a globally unique identifier."@en ; + rdfs:label "Identifiable"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Identifiable/administration + rdf:type owl:ObjectProperty ; + rdfs:comment "Administrative information of an identifiable element."@en ; + skos:note "Some of the administrative information like the version number might need to be part of the identification."@en ; + rdfs:label "has administration"^^xsd:string ; + rdfs:domain aas:Identifiable ; + rdfs:range aas:AdministrativeInformation ; +. + +### http://admin-shell.io/aas/2/0/Identifiable/identification + rdf:type owl:ObjectProperty ; + rdfs:domain aas:Identifiable ; + rdfs:range aas:Identifier ; + rdfs:label "has identification"^^xsd:string ; + rdfs:comment "The globally unique identification of the element."@en ; +. + +### http://admin-shell.io/aas/2/0/IdentifiableElements +aas:IdentifiableElements rdf:type owl:Class ; + rdfs:subClassOf aas:ReferableElements ; + rdfs:label "Identifiable Element"^^xsd:string ; + rdfs:comment "Enumeration of all identifiable elements within an asset administration shell that are not identifiable"@en ; + owl:oneOf ( + + + + + ) ; +. + +### http://admin-shell.io/aas/2/0/IdentifiableElements/ASSET + rdf:type aas:IdentifiableElements ; + rdfs:label "Asset"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/IdentifiableElements/ASSET_ADMINISTRATION_SHELL + rdf:type aas:IdentifiableElements ; + rdfs:label "Asset Administration Shell"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/IdentifiableElements/CONCEPT_DESCRIPTION_ + rdf:type aas:IdentifiableElement ; + rdfs:label "Concept Description"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/IdentifiableElements/SUBMODEL + rdf:type aas:IdentifiableElement ; + rdfs:label "Submodel"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Identifier +aas:Identifier rdf:type owl:Class ; + rdfs:comment "Used to uniquely identify an entity by using an identifier."@en ; + rdfs:label "Identifier"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Identifier/id + rdf:type owl:DatatypeProperty ; + rdfs:domain aas:Identifier ; + rdfs:range rdfs:Literal ; + rdfs:comment "A globally unique identifier which might not be a URI. Its type is defined in idType."@en ; + rdfs:label "has identification"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Identifier/idType + rdf:type owl:ObjectProperty ; + rdfs:comment "Type of the Identifier, e.g. IRI, IRDI etc. The supported Identifier types are defined in the enumeration 'IdentifierType'."@en ; + rdfs:domain aas:Identifier ; + rdfs:range aas:IdentifierType ; + rdfs:label "has idType"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/IdentifierType +aas:IdentifierType rdf:type owl:Class ; + rdfs:subClassOf aas:KeyType ; + rdfs:label "Identifier Type"^^xsd:string ; + rdfs:comment "Enumeration of different types of Identifiers for global identification"@en ; + owl:oneOf ( + + + + ) ; +. + +### http://admin-shell.io/aas/2/0/IdentifierType/IRDI + rdf:type aas:IdentifierType ; + rdfs:label "IRDI"^^xsd:string ; + rdfs:comment "IRDI according to ISO29002-5 as an Identifier scheme for properties and classifications."@en ; +. + +### http://admin-shell.io/aas/2/0/IdentifierType/IRI + rdf:type aas:IdentifierType ; + rdfs:label "IRI"^^xsd:string ; + rdfs:comment "IRI. Should only be used if unicode symbols are used that are not allowed in URI."@en ; +. + +### http://admin-shell.io/aas/2/0/IdentifierType/CUSTOM + rdf:Type aas:IdentifierType ; + rdfs:label "Custom"^^xsd:string ; + rdfs:comment "Custom identifiers like GUIDs (globally unique Identifiers)"@en ; +. + +### http://admin-shell.io/aas/2/0/Key +aas:Key rdf:type owl:Class ; + rdfs:comment "A key is a reference to an element by its id."@en ; + rdfs:label "Key"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Key/index + rdf:type owl:DatatypeProperty ; + rdfs:label "has index"^^xsd:string ; + rdfs:comment "The index attribute states the position of each key instance in the sequence of all other related keys."@en ; + rdfs:domain aas:Key ; + rdfs:range xsd:integer ; +. + +### http://admin-shell.io/aas/2/0/Key/idType + rdf:type owl:ObjectProperty ; + rdfs:comment "Type of the key value. In case of idType = idShort local shall be true. In case type=GlobalReference idType shall not be IdShort."@en ; + rdfs:domain aas:Key ; + rdfs:range aas:KeyType ; + rdfs:label "has identifier type"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Key/local + rdf:type owl:DatatypeProperty ; + rdfs:comment "Denotes if the key references a model element of the same AAS (=true) or not (=false). In case of local = false the key may reference a model element of another AAS or an entity outside any AAS that has a global unique id."@en ; + rdfs:label "is local"^^xsd:string ; + rdfs:domain aas:Key ; + rdfs:range xsd:boolean ; +. + +### http://admin-shell.io/aas/2/0/Key/type + rdf:type owl:ObjectProperty ; + rdfs:comment "Denote which kind of entity is referenced. In case type = GlobalReference then the element is a global unique id. In all other cases the key references a model element of the same or of another AAS. The name of the model element is explicitly listed."@en ; + rdfs:label "has type"^^xsd:string ; + rdfs:domain aas:Key ; + rdfs:range aas:KeyElements ; +. + +### http://admin-shell.io/aas/2/0/Key/value + rdf:type owl:DatatypeProperty ; + rdfs:comment "The key value, for example an IRDI if the idType=IRDI."@en ; + rdfs:label "has value"^^xsd:string ; + rdfs:domain aas:Key ; + rdfs:range xsd:string ; +. +### http://admin-shell.io/aas/2/0/KeyElements +aas:KeyElements rdf:type owl:Class ; + rdfs:label "Key Elements"^^xsd:string ; + rdfs:comment "Enumeration of different key value types within a key. Contains KeyElements, ReferableElements, and IdentifiableElements."@en ; + owl:oneOf ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ) ; +. + +### http://admin-shell.io/aas/2/0/KeyElements/GLOBAL_REFERENCE + rdf:type aas:KeyElements ; + rdfs:label "Gobal Reference"^^xsd:string ; + rdfs:comment "reference to an element not belonging to an asset administration shell"@en ; +. + +### http://admin-shell.io/aas/2/0/KeyElements/FRAGMENT_REFERENCE + rdf:type aas:KeyElements ; + rdfs:label "Fragement Reference"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/KeyType +aas:KeyType rdf:type owl:Class ; + rdfs:label "Key Type"^^xsd:string ; + rdfs:comment "Enumeration of different key value types within a key. Contains IdentifierType and LocalKeyType."@en ; + owl:oneOf ( + + + + + + + ) ; +. + +### http://admin-shell.io/aas/2/0/LocalKeyType +aas:LocalKeyType rdf:type owl:Class ; + rdfs:subClassOf aas:KeyType ; + rdfs:label "Local Key Type"^^xsd:string ; + rdfs:comment "Enumeration of different key value types within a key."@en ; + owl:oneOf ( + + + ) ; +. + +### http://admin-shell.io/aas/2/0/LocalKeyType/IDSHORT + rdf:type aas:LocalKeyType ; + rdfs:label "IdShort"^^xsd:string ; + rdfs:comment "idShort of a referable element"@en ; +. +### http://admin-shell.io/aas/2/0/LocalKeyType/FRAGMENT_ID + rdf:Type aas:LocalKeyType ; + rdfs:label "FragementId"^^xsd:string ; + rdfs:comment "Identifier of a fragment within a file"@en ; +. + +### http://admin-shell.io/aas/2/0/ModelingKind +aas:ModelingKind rdf:type owl:Class ; + rdfs:comment "Enumeration for denoting whether an element is a type or an instance."@en ; + rdfs:label "Kind"^^xsd:string ; + owl:oneOf ( + aas:INSTANCE + aas:TEMPLATE + ) ; +. + +### http://admin-shell.io/aas/2/0/ModelingKind/INSTANCE + rdf:type aas:ModelingKind ; + rdfs:comment "Concrete, clearly identifiable component of a certain template."@en ; + skos:note "It becomes an individual entity of a template, for example a device model, by defining specific property values."@en ; + skos:note "In an object oriented view, an instance denotes an object (of a template) (class)."@en ; + rdfs:label "Instance"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ModelingKind/TEMPLATE + rdf:type aas:ModelingKind ; + rdfs:comment "Software element which specifies the common attributes shared by all instances of the template."@en ; + rdfs:label "Template"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/MultiLanguageProperty +aas:MultiLanguageProperty rdf:type owl:Class ; + rdfs:subClassOf aas:DataElement ; + rdfs:comment "A property is a data element that has a multi language value."@en ; + rdfs:label "Multi Language Property"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ObjectAttributes +aas:ObjectAttributes rdf:type owl:Class ; + rdfs:comment "A set of data elements that describe object attributes. These attributes need to refer to a data element within an existing submodel."@en ; + rdfs:label "Object Attributes"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ObjectAttributes/objectAttribute + rdf:type owl:ObjectProperty ; + rdfs:comment "A data elements that further classifies an object."@en ; + rdfs:label "has object attribute"^^xsd:string ; + rdfs:domain aas:ObjectAttributes ; + rdfs:range aas:DataElement ; +. + +### http://admin-shell.io/aas/2/0/Operation +aas:Operation rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:comment "An operation is a submodel element with input and output variables."@en ; + rdfs:label "Operation"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Operation/inputVariable + rdf:type owl:ObjectProperty ; + rdfs:comment "Input parameter of the operation."@en ; + rdfs:label "has input variable"^^xsd:string ; + rdfs:domain aas:Operation ; + rdfs:range aas:OperationVariable ; +. + +### http://admin-shell.io/aas/2/0/Operation/inoutputVariable + rdf:type owl:ObjectProperty ; + rdfs:comment "Parameter that is input and output of the operation."@en ; + rdfs:label "has input/output variable"^^xsd:string ; + rdfs:domain aas:Operation ; + rdfs:range aas:OperationVariable ; +. + +### http://admin-shell.io/aas/2/0/Operation/outputVariable + rdf:type owl:ObjectProperty ; + rdfs:comment "Output parameter of the operation."@en ; + rdfs:label "has output variable"^^xsd:string ; + rdfs:domain aas:Operation ; + rdfs:range aas:OperationVariable ; +. + +### http://admin-shell.io/aas/2/0/OperationVariable +aas:OperationVariable rdf:type owl:Class ; + rdfs:comment "An operation variable is a submodel element that is used as input or output variable of an operation."@en ; + rdfs:label "Operation Variable"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/OperationVariable/value + rdf:type owl:Class ; + rdfs:comment "Describes the needed argument for an operation via a submodel element of kind=Template."@en ; + skos:note "The submodel element value of an operation variable shall be of kind=Template."@en ; + rdfs:label "value"^^xsd:string ; + rdfs:domain aas:OperationVariable ; + rdfs:range aas:SubmodelElement ; +. + +### http://admin-shell.io/aas/2/0/Permission +aas:Permission rdf:type owl:Class ; + rdfs:comment "Description of a single permission."@en ; + rdfs:label "Permission"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Permission/kindOfPermission + rdf:type owl:ObjectProperty ; + rdfs:comment "Description of the kind of permission. Possible kind of permission also include the denial of the permission."@en ; + rdfs:label "has kind of permission"^^xsd:string ; + rdfs:domain aas:Permission ; + rdfs:range aas:PermissionKind ; +. + +### http://admin-shell.io/aas/2/0/Permission/permission + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to a property that defines the semantics of the permission."@en ; + skos:note "Constraint AASd-010: The property has the category CONSTANT."@en ; + skos:note "Constraint AASd-011: The permission property shall be part of the submodel that is referenced within the selectablePermissions attribute of AccessControl."@en ; + rdfs:label "has permission"^^xsd:string ; + rdfs:domain aas:Permission ; + rdfs:range aas:Property ; +. +### http://admin-shell.io/aas/2/0/PermissionKind +aas:PermissionKind rdf:type owl:Class ; + rdfs:comment "Enumeration of the kind of permissions that is given to the assignment of a permission to a subject."@en ; + rdfs:label "Permission Kind"^^xsd:string ; + owl:oneOf ( + + + + + ) ; +. + +### http://admin-shell.io/aas/2/0/PermissionKind/ALLOW + rdf:type aas:PermissionKind ; + rdfs:label "allow"^^xsd:string ; + rdfs:comment "Allow the permission given to the subject."@en ; +. + +### http://admin-shell.io/aas/2/0/PermissionKind/DENY + rdf:type aas:PermissionKind ; + rdfs:label "deny"^^xsd:string ; + rdfs:comment "Explicitly deny the permission given to the subject."@en ; +. + +### http://admin-shell.io/aas/2/0/PermissionKind/NOT_APPLICABLE + rdf:type aas:PermissionKind ; + rdfs:label "not applicable"^^xsd:string ; + rdfs:comment "The permission is not applicable to the subject."@en ; +. + +### http://admin-shell.io/aas/2/0/PermissionKind/UNDEFINED + rdf:type aas:PermissionKind ; + rdfs:label "undefined"^^xsd:string ; + rdfs:comment "It is undefined whether the permission is allowed, not applicable or denied to the subject."@en ; +. +### http://admin-shell.io/aas/2/0/PermissionsPerObject +aas:PermissionsPerObject rdf:type owl:Class ; + rdfs:comment "Table that defines access permissions for a specified object. The object is any referable element in the AAS. Additionally object attributes can be defined that further specify the kind of object the permissions apply to."@en ; + rdfs:label "Permission Per Object"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/PermissionsPerObject/object + rdf:type owl:ObjectProperty ; + rdfs:comment "Element to which permission shall be assigned."@en ; + rdfs:label "has object"^^xsd:string ; + rdfs:domain aas:PermissionsPerObject ; + rdfs:range aas:Referable ; +. + +### http://admin-shell.io/aas/2/0/PermissionsPerObject/objectPermission + rdf:type owl:ObjectProperty ; + rdfs:comment "Permissions assigned to the object. The permissions hold for all subjects as specified in the access permission rule."@en ; + rdfs:label "has object permission"^^xsd:string ; + rdfs:domain aas:PermissionsPerObject ; + rdfs:range aas:Permission ; +. + +### http://admin-shell.io/aas/2/0/PermissionsPerObject/targetObjectAttributes + rdf:type owl:ObjectProperty ; + rdfs:comment "Target object attributes that need to be fulfilled so that the access permissions apply to the accessing subject."@en ; + rdfs:label "has target object attributes"^^xsd:string ; + rdfs:domain aas:PermissionsPerObject ; + rdfs:range aas:ObjectAttributes ; +. + +### http://admin-shell.io/aas/2/0/PolicyAdministrationPoint +aas:PolicyAdministrationPoint rdf:type owl:Class ; + rdfs:comment "Definition of a security administration point (PDP)."@en ; + rdfs:label "Policy Administration Point"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/PolicyAdministrationPoint/localAccessControl + rdf:type owl:ObjectProperty ; + rdfs:comment "The policy administration point of access control as realized by the AAS itself."@en ; + skos:note "Constraint AASd-009: Either there is an external policy administration point endpoint defined or the AAS has its own access control."@en ; + rdfs:label "has local access control"^^xsd:string ; + rdfs:domain aas:PolicyAdministrationPoint ; + rdfs:range aas:AccessControl ; +. + +### http://admin-shell.io/aas/2/0/PolicyAdministrationPoint/externalAccessControl + rdf:type owl:ObjectProperty ; + rdfs:comment "Endpoint to an external access control defining a policy administration point to be used by the AAS."@en ; + rdfs:label "has external access control"^^xsd:string ; + rdfs:domain aas:PolicyAdministrationPoint ; + rdfs:range aas:Endpoint ; +. + +### http://admin-shell.io/aas/2/0/PolicyDecisionPoint +aas:PolicyDecisionPoint rdf:type owl:Class ; + rdfs:comment "Defines the security policy decision points (PDP). "@en ; + rdfs:label "Policy Decision Point"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/PolicyDecisionPoint/externalPolicyDecisionPoint + rdf:type owl:DatatypeProperty ; + rdfs:comment "If externalPolicyDecisionPoints True then Endpoints to external available decision points taking into consideration for access control for the AAS need to be configured."@en ; + rdfs:label "is external policy decision point defined"^^xsd:string ; + rdfs:domain aas:PolicyDecisionPoint ; + rdfs:range xsd:boolean ; +. + +### http://admin-shell.io/aas/2/0/PolicyEnforcementPoint +aas:PolicyEnforcementPoint rdf:type owl:Class ; + rdfs:comment "Defines the security policy enforcement points (PEP)."@en ; + rdfs:label "Policy Enforcement Point"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/PolicyEnforcementPoint/externalPolicyEnforcementPoint + rdf:type owl:DatatypeProperty ; + rdfs:comment "If externalPolicyEnforcementPoint True then an Endpoint to external available enforcement point taking needs to be configured for the AAS."@en ; + rdfs:label "is external policy enforcement point defined"^^xsd:string ; + rdfs:domain aas:PolicyEnforcementPoint ; + rdfs:range xsd:boolean ; +. + +### http://admin-shell.io/aas/2/0/PolicyInformationPoints +aas:PolicyInformationPoints rdf:type owl:Class ; + rdfs:comment "Defines the security policy information points (PIP). Serves as the retrieval source of attributes, or the data required for policy evaluation to provide the information needed by the policy decision point to make the decisions."@en ; + rdfs:label "Policy Information Points"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/PolicyInformationPoints/externalInformationPoint + rdf:type owl:ObjectProperty ; + rdfs:comment "Endpoints to external available information points taking into consideration for access control for the AAS."@en ; + rdfs:label "has external information point"^^xsd:string ; + rdfs:domain aas:PolicyInformationPoints ; + rdfs:range aas:Endpoint ; +. + +### http://admin-shell.io/aas/2/0/PolicyInformationPoints/internalInformationPoint + rdf:type owl:ObjectProperty ; + rdfs:comment "References to submodels defining information used by security access permission rules."@en ; + rdfs:label "has internal information point"^^xsd:string ; + rdfs:domain aas:PolicyInformationPoints ; + rdfs:range aas:Submodel ; +. + +### http://admin-shell.io/aas/2/0/Property +aas:Property rdf:type owl:Class ; + rdfs:subClassOf aas:DataElement ; + rdfs:comment "A property is a data element that has a single value."@en ; + rdfs:label "Property"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Property/category + rdf:type owl:ObjectProperty ; + rdfs:label "has property category"^^xsd:string ; + rdfs:comment "The following categories are defined for properties and multi-language properties: CONSTANT, PARAMETER, and VARIABLE."@en ; + rdfs:domain aas:Property, aas:MultiLanguageProperty ; + rdfs:range aas:Category ; +. + +### http://admin-shell.io/aas/2/0/Property/value + rdf:type owl:ObjectProperty ; + rdfs:comment "The value of the property instance."@en ; + rdfs:label "has property value"^^xsd:string ; + rdfs:domain aas:Property ; + rdfs:range rdf:Literal ; +. +### http://admin-shell.io/aas/2/0/Property/valueId + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to the global unique id of a coded value."@en ; + rdfs:label "has property value id"^^xsd:string ; + skos:note "Constraint AASd-007: if both, the value and the valueId are present then the value needs to be identical to the value of the referenced coded value in valueId."@en ; + rdfs:domain aas:Property ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/aas/2/0/Qualifiable +aas:Qualifiable rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "Additional qualification of a qualifiable element."@en ; + rdfs:label "Qualifiable"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Qualifiable/qualifier + rdf:type owl:ObjectProperty ; + rdfs:comment "Additional qualification of a qualifiable element."@en ; + rdfs:label "has qualifier"^^xsd:string ; + rdfs:domain aas:Qualifiable ; + rdfs:range aas:Constraint ; +. + +### http://admin-shell.io/aas/2/0/Qualifier +aas:Qualifier rdf:type owl:Class ; + rdfs:subClassOf aas:Constraint ; + rdfs:subClassOf aas:HasSemantics ; + rdfs:comment "A qualifier is a type-value pair that makes additional statements w.r.t. the value of the element."@en ; + rdfs:label "Qualifier"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Qualifier/type + rdf:type owl:ObjectProperty ; + rdfs:comment "The qualifier type describes the type of the qualifier that is applied to the element."@en ; + rdfs:label "has qualifier type"^^xsd:string ; + rdfs:domain aas:Qualifier ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Qualifier/value + rdf:type owl:ObjectProperty ; + rdfs:comment "The qualifier value is the value of the qualifier."@en ; + rdf:label "has qualifier value"^^xsd:string ; + skos:note "Constraint AASd-006: if both, the value and the valueId are present then the value needs to be identical to the short name of the referenced coded value in qualifierValueId."@en ; + rdfs:domain aas:Qualifier ; + rdfs:range rdfs:Literal ; +. + +### http://admin-shell.io/aas/2/0/Qualifier/valueId + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to the global unqiue id of a coded value."@en ; + rdf:label "has qualifier value id"^^xsd:string ; + rdfs:domain aas:Qualifier ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/aas/2/0/Range +aas:Range rdf:type owl:Class ; + rdfs:subClassOf aas:DataElement ; + rdfs:comment "An element that is referable by its idShort. This id is not globally unique. This id is unique within the name space of the element."@en ; + rdfs:label "Range"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Range/max + rdf:type owl:ObjectProperty ; + rdfs:domain aas:Range ; + rdfs:range rdfs:Literal ; + rdfs:label "has maximum value"^^xsd:string ; + rdfs:comment "The maximum value of the range."@en ; + skos:note "Constraint AASd-012-3: In case of a range with kind=Instance either the min or the max value or both need to be defined."@en ; +. + +### http://admin-shell.io/aas/2/0/Range/min + rdf:type owl:ObjectProperty ; + rdfs:domain aas:Range ; + rdfs:range rdfs:Literal ; + rdfs:label "has minimum value"^^xsd:string ; + rdfs:comment "The minimum value of the range."@en ; + skos:note "Constraint AASd-012-3: In case of a range with kind=Instance either the min or the max value or both need to be defined."@en ; +. + +### http://admin-shell.io/aas/2/0/Referable +aas:Referable rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "An element that is referable by its idShort. This id is not globally unique. This id is unique within the name space of the element."@en ; + rdfs:label "Referable"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Referable/category + rdf:type owl:DatatypeProperty ; + rdfs:label "has category"^^xsd:string ; + rdfs:comment "The category is a value that gives further meta information w.r.t. to the class of the element. It affects the expected existence of attributes and the applicability of constraints."@en ; + rdfs:domain aas:Referable ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Referable/description + rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf rdfs:comment ; + rdfs:label "has description"^^xsd:string ; + rdfs:domain aas:Referable ; + rdfs:range rdfs:Literal ; + rdfs:comment "Description or comments on the element. The description can be provided in several languages."@en ; +. + +### http://admin-shell.io/aas/2/0/Referable/idShort + rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf dcterms:identifier ; + rdfs:label "has short id"^^xsd:string ; + rdfs:comment "Identifying string of the element within its name space."@en ; + skos:note "Constraint AASd-001: In case of a referable element not being an identifiable element this id is mandatory and used for referring to the element in its name space."@en ; + skos:note "Constraint AASd-002: idShort shall only feature letters, digits, underscore ('_'); starting mandatory with a letter."@en ; + skos:note "Constraint AASd-003: idShort shall be matched case-insensitive."@en ; + skos:note "Note: In case the element is a property and the property has a semantic definition (HasSemantics) the idShort is typically identical to the short name in English. "@en ; + skos:note "Note: In case of an identifiable element idShort is optional but recommended to be defined. It can be used for unique reference in its name space and thus allows better usability and a more performant implementation. In this case it is similar to the 'BrowserPath' in OPC UA."@en ; + rdfs:domain aas:Referable ; + rdfs:range xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Referable/parent + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to the next referable parent element of the element. Constraint AASd-004: Add parent in case of non-identifiable elements."@en ; + skos:note "This element is used to ease navigation in the model and thus it enables more performant"@en ; + rdfs:label "has parent"^^xsd:string ; + rdfs:domain aas:Referable ; + rdfs:range aas:Referable ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements +aas:ReferableElements rdf:type owl:Class ; + rdfs:subClassOf aas:KeyElements ; + rdfs:label "Referable Elements"^^xsd:string ; + rdfs:comment "Enumeration of all referable elements within an asset administration shell. Contains IdentifiableElements"@en ; + owl:oneOf ( + + + + + + + + + + + + + + + + + + + + + + + + + + ) ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/ACCESS_PERMISSION_RULE + rdf:type aas:ReferableElements ; + rdfs:label "Access Permission Rule"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/ANNOTATED_RELATIONSHIP_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "Annotated relationship element"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/BASIC_EVENT + rdf:type aas:ReferableElements ; + rdfs:label "Basic Event"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/BLOB + rdf:type aas:ReferableElements ; + rdfs:label "Blob"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/CAPABILITY + rdf:type aas:ReferableElements ; + rdfs:label "Capability"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/CONCEPT_DICTIONARY + rdf:type aas:ReferableElements ; + rdfs:label "Concept Dictionary"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/DATA_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "Data Element"^^xsd:string ; + skos:note "Data Element is abstract, i.e. if a key uses 'DataElement' the reference may be a Property, a File etc."@en ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/ENTITY + rdf:type aas:ReferableElements ; + rdfs:label "Entity"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/EVENT + rdf:type aas:ReferableElements ; + rdfs:label "Event"^^xsd:string ; + skos:note "Event is abstract"@en ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/MULTI_LANGUAGE_PROPERTY + rdf:type aas:ReferableElements ; + rdfs:label "Multi-language Property"^^xsd:string ; + rdfs:comment "Property with a value that can be provided in multiple languages."@en ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/OPERATION + rdf:type aas:ReferableElements ; + rdfs:label "Operation"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/PROPERTY + rdf:type aas:ReferableElements ; + rdfs:label "Property"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/RANGE + rdf:type aas:ReferableElements ; + rdfs:label "Range"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/REFERENCE_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "Reference Element"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/RELATIONSHIPT_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "Relationship Element"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/SUBMODEL_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "SubmodelElement"^^xsd:string ; + skos:note "Submodel Element is abstract, i.e. if a key uses “SubmodelElement” the reference may be a Property, a SubmodelElementCollection, an Operation etc."@en ; +. + +### http://admin-shell.io/aas/2/0/ReferableElements/SUBMODEL_ELEMENT_COLLECTION + rdf:type aas:ReferableElements ; + rdfs:label "Submodel Element Collection"^^xsd:string ; + rdfs:comment "Collection of Submodel Elements"@en ; +. + +### http://admin-shell.io/aas/2/0/ReferableElement/VIEW + rdf:type aas:ReferableElements ; + rdfs:label "View"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/Reference +aas:Reference rdf:type owl:Class ; + rdfs:comment "Reference to either a model element of the same or another AAs or to an external entity. A reference is an ordered list of keys, each key referencing an element. The complete list of keys may for example be concatenated to a path that then gives unique access to an element or entity."@en ; + rdfs:label "Reference"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Reference/key + rdf:type owl:ObjectProperty ; + rdfs:comment "Unique reference in its name space."@en ; + rdfs:label "has key"^^xsd:string ; + rdfs:domain aas:Reference ; + rdfs:range aas:Key ; +. + +### http://admin-shell.io/aas/2/0/ReferenceElement +aas:ReferenceElement rdf:type owl:Class ; + rdfs:subClassOf aas:DataElement ; + rdfs:comment "A reference element is a data element that defines a logical reference to another element within the same or another AAS or a reference to an external object or entity."@en ; + rdfs:label "Reference Element"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/ReferenceElement/value + rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to any other referable element of the same of any other AAS or a reference to an external object or entity."@en ; + rdfs:label "has reference value"^^xsd:string ; + rdfs:domain aas:ReferenceElement ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/aas/2/0/RelationshipElement +aas:RelationshipElement rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + dc:description "A relationship element is used to define a relationship between two referable elements."@en ; + rdfs:label "Relationship Element"@en ; +. + +### http://admin-shell.io/aas/2/0/RelationshipElement/first + rdf:type owl:ObjectProperty ; + rdfs:comment "First element in the relationship taking the role of the subject."@en ; + rdfs:label "has first relationship"^^xsd:string ; + rdfs:domain aas:RelationshipElement ; + rdfs:range aas:Referable ; +. + +### http://admin-shell.io/aas/2/0/RelationshipElement/second + rdf:type owl:ObjectProperty ; + rdfs:comment "Second element in the relationship taking the role of the object."@en ; + rdfs:label "has second relationship"^^xsd:string ; + rdfs:domain aas:RelationshipElement ; + rdfs:range aas:Referable ; +. + +### http://admin-shell.io/aas/2/0/Security +aas:Security rdf:type owl:Class ; + rdfs:comment "Container for security relevant information of the AAS."@en ; + rdfs:label "Security"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Security/accessControlPolicyPoints + rdf:type owl:ObjectProperty ; + rdfs:comment "Access control policy points of the AAS."@en ; + rdfs:label "has access control policy points"^^xsd:string ; + rdfs:domain aas:Security ; + rdfs:range aas:PolicyAdministrationPoint ; +. + +### http://admin-shell.io/aas/2/0/Security/certificate + rdf:type owl:ObjectProperty ; + rdfs:comment "Certificates of the AAS."@en ; + rdfs:label "has certificate"^^xsd:string ; + rdfs:domain aas:Security ; + rdfs:range aas:Certificate ; +. + +### http://admin-shell.io/aas/2/0/Security/requiredCertificateExtension + rdf:type owl:ObjectProperty ; + rdfs:comment "Certificate extensions as required by the AAS."@en ; + rdfs:label "has required certificate extension"^^xsd:string ; + rdfs:domain aas:Security ; + rdfs:range aas:Reference ; +. + +### http://admin-shell.io/aas/2/0/SubjectAttributes +aas:SubjectAttributes rdf:type owl:Class ; + rdfs:comment "A set of data elements that further classifies a specific subject."@en ; + rdfs:label "Subject Attributes"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/SubjectAttributes/subjectAttribute + rdf:type owl:ObjectProperty ; + rdfs:comment "A data element that further classifies a specific subject. "@en ; + skos:note "Constraint AASd-025: The data element shall be part of the submodel that is referenced within the selectableSubjectAttributes attribute of AccessControl."@en ; + rdfs:label "has subject attribute"^^xsd:string ; + rdfs:domain aas:SubjectAttributes ; + rdfs:range aas:DataElement ; +. + +### http://admin-shell.io/aas/2/0/Submodel +aas:Submodel rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification ; + rdfs:subClassOf aas:HasKind ; + rdfs:subClassOf aas:HasSemantics ; + rdfs:subClassOf aas:Identifiable ; + rdfs:subClassOf aas:Qualifiable ; + rdfs:comment "A Submodel defines a specific aspect of the asset represented by the AAS. A submodel is used to structure the virtual representation and technical functionality of an Administration Shell into distinguishable parts. Each submodel refers to a well-defined domain or subject matter. Submodels can become standardized and thus become submodels types. Submodels can have different life-cycles."@en , + "Describe the different types of Data related to the I4.0 Asset"@en ; + rdfs:label "Submodel"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/Submodel/submodelElement + rdf:type owl:ObjectProperty ; + rdfs:domain aas:Submodel ; + rdfs:range aas:SubmodelElement ; + rdfs:comment "A submodel consists of zero or more submodel elements."@en ; + rdfs:label "has Submodel Element"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/SubmodelElement +aas:SubmodelElement rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification ; + rdfs:subClassOf aas:HasKind ; + rdfs:subClassOf aas:HasSemantics ; + rdfs:subClassOf aas:Qualifiable ; + rdfs:subClassOf aas:Referable ; + dash:abstract true ; + rdfs:comment "A submodel element is an element suitable for the description and differentiation of assets."@en ; + rdfs:label "Submodel Element"^^xsd:string ; + skos:note "The concept of type and instance applies to submodel elements. Properties are special submodel elements. The property types are defined in dictionaries (like the IEC Common Data Dictionary or eCl@ss), they do not have a value. The property type (kind=Type) is also called data element type in some standards. The property instances (kind=Instance) typically have a value. A property instance is also called property-value pair in certain standards."@en ; +. + +### http://admin-shell.io/aas/2/0/SubmodelElementCollection +aas:SubmodelElementCollection rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; + rdfs:comment "A submodel element collection is a set or list of submodel elements."@en ; + rdfs:label "Submodel Element Collection"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/SubmodelElementCollection/allowDuplicates + rdf:type owl:DatatypeProperty ; + rdfs:comment "If allowDuplicates=true then it is allowed that the collection contains the same element several times. Default = false"@en ; + rdfs:label "allow duplicates"^^xsd:string ; + rdfs:domain aas:SubmodelElementCollection ; + rdfs:range xsd:boolean ; +. + +### http://admin-shell.io/aas/2/0/SubmodelElementCollection/ordered + rdf:type owl:DatatypeProperty ; + rdfs:comment "If ordered=false then the elements in the property collection are not ordered. If ordered=true then the elements in the collection are ordered. Default = false"@en ; + rdfs:label "ordered"^^xsd:string ; + rdfs:domain aas:SubmodelElementCollection ; + rdfs:range xsd:boolean ; +. + +### http://admin-shell.io/aas/2/0/SubmodelElementCollection/value + rdf:type owl:ObjectProperty ; + rdfs:comment "Submodel element contained in the collection."@en ; + rdfs:label "has value"^^xsd:string ; + rdfs:domain aas:SubmodelElementCollection ; + rdfs:range aas:SubmodelElement ; +. + +### http://admin-shell.io/aas/2/0/View +aas:View rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , aas:Referable , aas:HasSemantics ; + rdfs:comment "A view is a collection of referable elements w.r.t. to a specific viewpoint of one or more stakeholders."@en ; + rdfs:isDefinedBy "https://www.plattform-i40.de/I40/Redaktion/DE/Downloads/Publikation/hm-2018-trilaterale-coop.html"@de ; + rdfs:label "View"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/View/containedElement + rdf:type owl:ObjectProperty ; + rdfs:comment "Referable elements that are contained in the view."@en ; + rdfs:label "contains element"^^xsd:string ; + rdfs:domain aas:View ; + rdfs:range aas:Referable ; +. + +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataTypeIEC61360 +iec61360:DataTypeIEC61360 rdf:type owl:Class ; + rdfs:label "Data Type IEC61360"^^xsd:string ; + rdfs:comment "Enumeration of all IEC 61360 defined data types."@en ; + owl:oneOf ( + iec61360:DATE + iec61360:STRING + iec61360:STRING_TRANSLATABLE + iec61360:REAL_MEASURE + iec61360:REAL_COUNT + iec61360:REAL_CURRENCY + iec61360:BOOLEAN + iec61360:URL + iec61360:RATIONAL + iec61360:RATIONAL_MEASURE + iec61360:TIME + iec61360:TIMESTAMP + ) ; +. + +### http://admin-shell.io/aas/2/0/DATE +iec61360:DATE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "date according to IEC61360"^^xsd:string ; + rdfs:seeAlso xsd:date ; +. +### http://admin-shell.io/aas/2/0/BOOLEAN +iec61360:BOOLEAN rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "boolean according to IEC61360"^^xsd:string ; + rdfs:seeAlso xsd:boolean ; +. +### http://admin-shell.io/aas/2/0/REAL_CURRENCY +iec61360:REAL_CURRENCY rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "real currency according to IEC61360"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/REAL_COUNT +iec61360:REAL_COUNT rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "real count according to IEC61360"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/REAL_MEASURE +iec61360:REAL_MEASURE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "real measure according to IEC61360"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/STRING +iec61360:STRING rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "string according to IEC61360"^^xsd:string ; + rdfs:seeAlso xsd:string ; +. +### http://admin-shell.io/aas/2/0/STRING_TRANSLATABLE +iec61360:STRING_TRANSLATABLE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "translatable string according to IEC61360"^^xsd:string ; + rdfs:seeAlso xsd:langString ; +. +### http://admin-shell.io/aas/2/0/RATIONAL_MEASURE +iec61360:RATIONAL_MEASURE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "retional measure according to IEC61360"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/RATIONAL +iec61360:RATIONAL rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "retional according to IEC61360"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/TIME +iec61360:TIME rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "time according to IEC61360"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/TIMESTAMP +iec61360:TIMESTAMP rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "time stamp according to IEC61360"^^xsd:string ; + rdfs:seeAlso xsd:dateTime ; +. +### http://admin-shell.io/aas/2/0/URL +iec61360:URL rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "url according to IEC61360"^^xsd:string ; +. \ No newline at end of file diff --git a/AssetAdministrationShell_examples/Raspberry_Pi_3b_plus/[Content_Types].xml b/AssetAdministrationShell_examples/Raspberry_Pi_3b_plus/[Content_Types].xml new file mode 100644 index 0000000..c3a1424 --- /dev/null +++ b/AssetAdministrationShell_examples/Raspberry_Pi_3b_plus/[Content_Types].xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/AssetAdministrationShell_examples/Raspberry_Pi_3b_plus/aasx/iais_fraunhofer_de_en_aas_examples/iais_fraunhofer_de_en_aas_examples_raspberry_pi_3b_plus.aas.xml b/AssetAdministrationShell_examples/Raspberry_Pi_3b_plus/aasx/iais_fraunhofer_de_en_aas_examples/iais_fraunhofer_de_en_aas_examples_raspberry_pi_3b_plus.aas.xml new file mode 100644 index 0000000..c021b20 --- /dev/null +++ b/AssetAdministrationShell_examples/Raspberry_Pi_3b_plus/aasx/iais_fraunhofer_de_en_aas_examples/iais_fraunhofer_de_en_aas_examples_raspberry_pi_3b_plus.aas.xml @@ -0,0 +1,2915 @@ + + + + + RaspberryPiModel3B+ + http://iais.fraunhofer.de/en/aas/examples/raspberry_pi_3b_plus + + + https://iais.fraunhofer.de/en/aas/devices/rspbry/755003377 + + + + + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/technical_data + + + + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/asset_identification + + + + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/documentation + + + + + + + + + RaspberryPiModel3B+ + + + single board computer for education, microservices and all other imaginable purposes + + https://iais.fraunhofer.de/en/aas/devices/rspbry/755003377 + Instance + + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/asset_identification + + + + + + + Documentation + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/documentation + + + + Instance + + + + + ProductSheet + PARAMETER + + + http://iais.fraunhofer.de/en/aas/page1/Document + + + Instance + + + + + DocumentId + CONSTANT + + + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId + + + Instance + + + 3 608 870 A47 + + + + + DocumentClassId + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassId + + + Instance + + + 03-02 + + + + + DocumentClassName + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassName + + + Instance + + + Product sheet (EN) + + + + + DocumentClassificationSystem + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassificationSystem + + + Instance + + + VDI2770:2018 + + + + + OrganizationName + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationName + + + Instance + + + Raspberry Foundation + + + + + OrganizationOfficialName + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationOfficialName + + + Instance + + + Raspberry Pi Foundation + + + + + EN + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion + + + Instance + + + + + Language + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Language + + + Instance + + + en-EN + + + + + title + + + http://iais.fraunhofer.de/en/aas/page1/Description/Title + + + Instance + + + Product sheet for the Raspberry Pi 3b+ (EN) + + + + + Date + + + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/SetDate + + + Instance + + + 2018-09-25 + + + + + DocumentVersionId + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/DocumentVersionId + + + Instance + + + EN | 2018-09-25 + + + + + DigitalFile_PDF + PARAMETER + + + http://iais.fraunhofer.de/en/aas/page1/StoredDocumentRepresentation/DigitalFile + + + Instance + + application/pdf + /aasx/documents/product_sheet.pdf + + + + false + false + + + + false + false + + + + + Review and Guide + PARAMETER + + + http://iais.fraunhofer.de/en/aas/page1/Document + + + Instance + + + + + DocumentId + CONSTANT + + + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId + + + Instance + + + 3 6wqi wq w7 + + + + + DocumentClassId + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassId + + + Instance + + + 33-04 + + + + + DocumentClassName + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassName + + + Instance + + + Review and full Guide to get started (EN) + + + + + DocumentClassificationSystem + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassificationSystem + + + Instance + + + VDI2770:2018 + + + + + OrganizationName + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationName + + + Instance + + + Raspberry Maganzine + + + + + OrganizationOfficialName + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationOfficialName + + + Instance + + + Raspberry Pi Foundation + + + + + EN + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion + + + Instance + + + + + Language + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Language + + + Instance + + + en-EN + + + + + title + + + http://iais.fraunhofer.de/en/aas/page1/Description/Title + + + Instance + + + Official magazine of the Raspberry Pi Organization (April 2018) (EN) + + + + + Date + + + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/SetDate + + + Instance + + + 2018-04-01 + + + + + DocumentVersionId + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/DocumentVersionId + + + Instance + + + EN | 2018-04-01 + + + + + DigitalFile_PDF + PARAMETER + + + http://iais.fraunhofer.de/en/aas/page1/StoredDocumentRepresentation/DigitalFile + + + Instance + + application/pdf + /aasx/documents/review_and_guide.pdf + + + + false + false + + + + false + false + + + + + + TechnicalData + + Einplatinencomputer + single board computer + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/technical_data + + + 0173-1#01-AAA444#008 + + + Instance + + + + + clockingSpeed + CONSTANT + + Max. taktfrequenz des Prozessors [GHz] + Max. clocking speed of the processor [GHz] + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/clockingSpeed + + + Instance + + + 1.4 + + + + + architecture + CONSTANT + + Prozessorarchitektur [BIT] + Prozessorarchitektur [BIT] + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/processorarchitecture + + + Instance + + + 64 + + + + + socket + CONSTANT + + Prozessorsockel + processor socket + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/socket + + + Instance + + + Broadcom BCM2837B0, Cortex-A53 (ARMv8) 64-bit SoC + + + + + cpu + CONSTANT + + Zentrale Prozessoreinheit + central processing unit + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/cpu + + + Instance + + + ARM Cortex-A53 CPU + + + + + ram + CONSTANT + + Arbeitsspeicher [GB] + Random Access Memory [GB] + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/ram + + + Instance + + + 2 + + + + + power-in + CONSTANT + + Power-In + Power-In + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/power-in + + + Instance + + + 5/2.5 DC + + + + + audio-output + CONSTANT + + Audioausgang + audio-output + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/audio-output + + + Instance + + + built-in-speaker + + + + + os + CONSTANT + + BS + OS + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/os + + + Instance + + + Raspberian OS (UNIX based) + + + + + usb-ports + CONSTANT + + Universeller serieller BUS :) + universal serial BUS + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/usb + + + Instance + + + 4*USB2 + + + + + gpio + CONSTANT + + GPIO + gpio + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/gpio + + + Instance + + + 40 + + + + + + weight + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/weight + + + Instance + + + 31 + + + + + + height + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/heigth + + + Instance + + + 17 + + + + + + length + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/length + + + Instance + + + 85 + + + + + + width + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/width + + + Instance + + + 56 + + + + + + + wifi-connection + CONSTANT + + kabellose Verbindungsmöglichkeiten + wireless connectivity + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/wifi-connection + + + Instance + + + Dual-band 802.11ac wireless LAN (2.4GHz and 5GHz ) and Bluetooth 4.2 + + + + + ethernet + CONSTANT + + kabelgebundene Netzwerkanbindung + wired network-connectivity + + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/ethernet + + + Instance + + + Gigabit Ethernet over USB 2.0 (max 300 Mbps). Power-over-Ethernet support (with separate PoE HAT). Improved PXE network and USB mass-storage booting. + + + + + + AssetIdentification + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/asset_identification + + + + Instance + + + + + Manufacturer + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/manufacturer + + + Instance + + + Raspberry Pi Foundation + + + + + Brand + + + 0173-1#02-AAO742#002 + + + Instance + + + Raspberry Pi + + + + + ProductRoot + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-root + + + Instance + + + sinlge-board-micro-computer (EN) + + + + + ProductFamily + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-family + + + Instance + + + micro-computer (single-board) (EN) Mikrocomputer/Einplatinencomputer (DE) + + + + + ProductType + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-type + + + Instance + + + computer (EN) Computer (DE) + + + + + ArticleNumber + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/article-number + + + Instance + + + RSBRYPIMDL3BP-1234567898765432123456789 + + + + + OrderNumber + + + 0173-1#02-AAO736#004 + + + Instance + + + 0608842005 + + + + + ProductDescription + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-description + + + Instance + + + The most popular sigle-board-microcomputer and latest model from Raspberry (2019/04). + + + + + LinkAddress + + + 0173-1#02-AAE670#003 + + + Instance + + application/json + null + + + + + SerialNumber + VARIABLE + + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/serial-number + + + Instance + + + 12345678987654321234567898765432123456789 + + + + + + + + Document + + http://iais.fraunhofer.de/en/aas/page1/Document + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Document + + + [ISO 15519-1:2010] + + + + Feste und geordnete Menge von für die Verwendung durch Personen bestimmte Informationen, die verwaltet und als Einheit zwischen Benutzern und System ausgetauscht werden kann. + + + + + + + DocumentId + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentId + + + + + STRING + + Die Dokument ID stellt eine eindeutige Identifizierung des Dokuments innerhalb einer Domäne sicher. Die Eigenschaft DocumentId ist eine Liste, in der alle Dokument IDs zum Dokument enthalten sind. Ein Document kann mehrere Dokument IDs aus einer Domäne oder auch mehrere IDs aus jeweils verschiedenen Domänen besitzen. Es können bei der Definition von Documen-tId nur Domänen IDs verwendet werden, die in DocumentIdDomain definiert wurden. + + + + + + + DocumentIdDomain + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentIdDomain + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Document Id Domain + + DocumentIdDomain + + + STRING + + Angabe einer Liste von Domänen, in denen die DocumentIds des Dokuments eindeutig sind. + + + + + + + DocumentPartId + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentPartId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentPartId + + + STRING + + Ist das Dokument ein zusammengesetztes Dokument, können mit Hilfe dieser Eigenschaft eindeutige Dokumententeile IDs eingetragen werden, um das Document von den anderen Dokumenten zu unterscheiden. + + + + + + + DocumentClassification + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentClassification + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentClassification + + + + + Klassifikation des Dokuments. Es muss eine Klassifikation nach VDI 2770 erfolgen. Zusätzliche Klassifikationen sind möglich. + + + + + + + DocumentVersion + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Version des Dokuments + + DocumentVersion + + + + + Zu jedem Dokument muss eine Menge von mindestens einer Dokumentenversion existieren. Es können auch mehrere Dokumentenversionen ausgeliefert werden. + + + + + + + DocumentType + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentType + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentType + + + + + Festlegung des Typs des Dokuments im Sinne der DIN EN 82045-1: a) Single (Einzeldokument) b) Aggregate (Sammeldokument) c) DocumentSet (Dokumentensatz) d) CompoundDoc (Mischdokument) + + + + + + + ReferencedObject + http://iais.fraunhofer.de/en/aas/page1/Document/ReferencedObject + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + ReferencedObject + + + + + Liste von IDs für ein Objekt, auf das sich das Dokument bezieht. + + + + + + + DocumentIdDomainId + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId/DomainId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DomainId + + + STRING + + Kennung oder Kennzeichen einer Domäne, in der eine DocumentId eineindeutig ist. Es können bspw. Namen von Organisationen verwendet werden. Es sollten die Hinweise und Anforderungen zu Identifikationssystemen aus DIN EN 62507-1 (VDE 0040-2-1) beachtet werden. + + + + + + + DocumentIdType + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId/IdType + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + IdType + + + STRING + + Besitzt ein Dokument mehrere Identifikationsnummern, muss mit Hilfe dieser Eigenschaft die führende ID angegeben werden. Der Wert „Primary“ ist für diese ID zu setzen. + + + + + + + DocumentPartIdDescription + http://iais.fraunhofer.de/en/aas/page1/DocumentPartId/Description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Description + + + STRING + + Eine Beschreibung zur Dokumententeile ID. Da eine Sprachangabe nicht möglich ist, sollte die Sprache für dieses Metadatum vor der Lieferung abgestimmt werden + + + + + + + DocumentIdDomainParty + http://iais.fraunhofer.de/en/aas/page1/DocumentIdDomain/Party + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Party + + + + + Verweis auf eine Party, die für diese Domäne verantwortlich ist. + + + + + + + DocumentDomainId + http://iais.fraunhofer.de/en/aas/page1/DocumentIdDomain/DocumentDomainId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentDomainId + + + STRING + + Kennung oder Kennzeichen einer Domäne. + + + + + + + DocumentClassId + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentClassId + + + STRING + + Eindeutige ID der Klasse in einer Klassifikation. + + + + + + + DocumentClassName + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassName + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentClassName + + + STRING_TRANSLATABLE + + Liste von sprachabhängigen Namen zur ClassId. + + + + + + + DocumentClassificationSystem + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassificationSystem + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Classification System + + DocumentClassificationSystem + + + STRING + + Eindeutige Kennung für ein Klassifikationssystem. Für Klassifikationen nach VDI 2770 muss "VDI2770:2018" verwenden werden. + + + + + + + DocumentVersionId + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/DocumentVersionId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + VersionId + + + + + + + Identifikationsnummer zur Dokumenten-version. Verweist ein Document auf diese Dokumentenversion, muss die Kombination aus DocumentId und DocumentVersionId eindeutig sein. + + + + + + + Language + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Language + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Language + + Language + + + STRING + + Eine Liste der im Dokument verwendeten Sprachen. + + + + + + + DocumentVersionParty + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Party + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionParty + + + + + Eine Liste von Beteiligten, die im (bisherigen) Lebenszyklus der DocumentVersion aktiv waren. Es muss mindestens eine Party angegeben werden, die die Role „Author“ einnimmt. + + + + + + + DocumentVersionDescription + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionDescription + + + + + Zusammenfassende Beschreibungen zur Dokumentenversion in ggf. unterschiedlichen Sprachen. Es ist möglich, bspw. zu einem deutschen Dokument eine englische Beschreibung (zusätzlich) anzugeben. + + + + + + + DocumentVersionLifeCycleStatus + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/LifeCycleStatus + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionLifeCycleStatus + + + + + Liste von Statusdefinitionen mit Bezug zum Dokumentenlebenszyklus. inkl. der Angabe der Beteiligten und einem zugehörigen Zeitstempel. + + + + + + + DocumentRelationship + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/DocumentRelationship + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationship + + + + + Liste von Beziehungen zu anderen Dokumenten. Es ist möglich, auf einen Doku-ment, ein Dokument in einer spezifischen Dokumentenversion oder auch ein Teildokument zu verweisen. + + + + + + + StoredDocumentRepresentation + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/StoredDocumentRepresentation + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + StoredDocumentRepresentation + + + + + Liste von digitalen Repräsentationen zur DocumentVersion. + + + + + + + DocumentVersionId + http://iais.fraunhofer.de/en/aas/page1/DocumentVersionId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionId + + + STRING + + Verschiedene Versionen eines Dokuments müssen eindeutig identifizierbar sein. Die DocumentVersionId stellt eine innerhalb einer Domäne eindeutige Versionsidentifikationsnummer dar. + + + + + + + DocumentVersionDomainId + http://iais.fraunhofer.de/en/aas/page1/DocumentVersionId/DomainId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionDomainId + + + STRING + + Eindeutige ID einer Domäne + + + + + + + LanguageCode + http://iais.fraunhofer.de/en/aas/page1/LanguageCode + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + LanguageCode + + + STRING + + Bezug auf eine Liste von Sprachcodes gemäß ISO 639-1 oder -2. + + + + + + + LifeCycleStatusParty + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/Party + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + LifeCycleStatusParty + + + + + Liste der Beteiligten. Im Falle einer Freigabe sollte die herausgebende Organisation als Party mit der Rolle „Author“ aufgelistet werden. + + + + + + + http://iais.fraunhofer.de/en/aas/page1/Party + + + + + Status + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/StatusValue + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + StatusValue + + + STRING + + Jede Dokumentenversion stellt einen Zeitpunkt im Dokumentenlebenszyklus dar. Dieser Statuswert bezieht sich auf die Meilensteine im Dokumentenlebenszyklus. Für die Anwendung dieser Richtlinie sind die beiden folgenden Status zu verwenden. a) InReview (in Prüfung) b) Released (freigegeben) + + + + + + + Date + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/SetDate + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + SetDate + + + DATE + + Datum und Uhrzeit, an dem der Status festgelegt wurde. Es muss das Datumsformat „YYYY-MM-dd“ verwendet werden (Y = Jahr, M = Monat, d = Tag, siehe ISO 8601). + + + + + + + LifeCycleStatusPurpose + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/Purpose + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + LifeCycleStatusPurpose + + + STRING + + Hier kann ein Zweck zum Meilenstein angegeben werden, z.B. "zur Weiterleitung an den Kunden". + + + + + + + BasedOnProcedure + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/BasedOnProcedure + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + BasedOnProcedure + + + STRING + + Textueller Bezug auf ein Verfahren, das der Festlegung dieses Status zugrunde liegt. + + + + + + + LifeCycleStatusComments + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/Comments + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + LifeCycleStatusComments + + + STRING + + Textuelle Bemerkungen und Anmerkungen zum Status + + + + + + + Description + http://iais.fraunhofer.de/en/aas/page1/Description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Description + + + + + Zu jeder DocumentVersion müssen Metadaten angegeben werden, die sich auf den Inhalt der Dokumentenversion beziehen. Eine solche Description beinhaltet die Angabe eines Titels, einer Zusammenfassung sowie einer Menge von Schlagworten. Alle Angaben der Description sind sprachabhängig. Bei mehrsprachigen Dokumentenversionen (siehe C1.8) sollten mehrere Descriptions in unterschiedlichen Sprachken-nungen angegeben werden. + + + + + + + Title + http://iais.fraunhofer.de/en/aas/page1/Description/Title + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Title + + Title + + + STRING_TRANSLATABLE + + Sprachabhängiger Titel des Dokuments. + + + + + + + Summary + http://iais.fraunhofer.de/en/aas/page1/Description/Summary + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + + + Summary + + STRING_TRANSLATABLE + + Sprachabhängige, aussagekräftige Zusammenfassung des Dokumenteninhalts. + + + + + + + Keywords + http://iais.fraunhofer.de/en/aas/page1/Description/Keywords + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Keywords + + + STRING + + Sprachabhängige, durch Komma getrennte Liste von Schlagwörtern. + + + + + + + Party + http://iais.fraunhofer.de/en/aas/page1/Party + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Party + + + + + Um Verantwortlichkeiten und Herausgeber der auszutauschenden digitalen Herstellerinformationen kenntlich zu machen, kann mit Hilfe der Informationsstruktur Organization ein Unternehmen oder eine sonstige juristische Person beschrieben werden. Auf die Angabe von Personen oder Adressen sollte verzichtet werden, sofern nicht anders vereinbart. + + + + + + + OrganizationId + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + OrganizationId + + + STRING + + Eine eindeutige ID für die Organisation. + + + + + + + OrganizationName + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationName + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + gebräuchliche Bezeichnung für Organisation + organization name + + OrganizationName + + + STRING + + Die gebräuchliche Bezeichnung für die Organisation. + + + + + + + OrganizationOfficialName + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationOfficialName + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + offizieller Name der Organisation + offical name of the organization + + OrganizationOfficialName + + + STRING + + Der offizielle Namen der Organisation. + + + + + + + 0173-1#02-AAO677#002 + + + + + DigitalFile + http://iais.fraunhofer.de/en/aas/page1/StoredDocumentRepresentation/DigitalFile + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DigitalFile + + + + + Eine Datei, die die DocumentVersion repräsentiert. Neben der obligatorischen PDF/A Datei können weitere Dateien angegeben werden. + + + + + + + FileId + http://iais.fraunhofer.de/en/aas/page1/DigitalFile/FileId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + FileId + + + STRING + + Eine eindeutige ID für die Datei. + + + + + + + FileName + http://iais.fraunhofer.de/en/aas/page1/DigitalFile/FileName + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + FileName + + + STRING + + Der Name der Datei inkl. einer Dateiendung (sofern vorhanden). + + + + + + + FileFormat + http://iais.fraunhofer.de/en/aas/page1/DigitalFile/FileFormat + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + FileFormat + + + STRING + + Angabe eines Media Typs gemäß der Liste der IANA2 + + + + + + + DocumentRelationshipDocumentId + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/DocumentId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipDocumentId + + + STRING + + Identifikationsnummer (DocumentId) eines Documents + + + + + + + DocumentRelationshipDocumentVersionId + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/DocumentVersionId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipDocumentVersionId + + + + + Zur vereinfachten Referenzierung erfolgt der Verweis auf die Ziel-DocumentVersion mit Hilfe einer DocumentVersionId. + + + + + + + DocumentRelationshipDocumentPartId + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/DocumentPartId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipDocumentPartId + + + + + Identifikationsnummer eines Dokumententei-les. + + + + + + + DocumentRelationshipType + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/Type + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipType + + + STRING + + Typisierung der Beziehung zwischen den bei-den DocumentVersions. Folgende Bezie-hungsarten können verwendet werden: a) Affecting (hat Auswirkungen auf) b) ReferesTo (bezieht sich auf) c) BasedOn (basiert auf) + + + + + + + DocumentRelationshipDescription + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/Description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipDescription + + + STRING + + Eine Erläuterung zur Beziehung. Da eine Sprachangabe nicht möglich ist, sollte die Sprache für dieses Metadatum vor der Liefe-rung abgestimmt werden. + + + + + + + DomainId + http://iais.fraunhofer.de/en/aas/page1/DomainId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Domänen ID + + DomainId + + + [DIN EN 62507-1; VDE 0040-2-1:2011, 3.3, modifiziert – Anmerkung nicht übernommen] + + STRING + + Identifikationsnummer einer Domäne. + + + + + + + Author + + Wert aus der Aufzählung "Role" (einer Party) + + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/page1/draft/apr19/dt/Role/Author + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Autor + Author + + Author + + + STRING + + Author + Autor + + + + + + + Manufacturer + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/manufacturer + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Hersteller + Manufacturer + + Manufacturer + + + + + + STRING + + Hersteller + Manufacturer + + + + + + + wifi-connection + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/wifi-connection + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + wireless connectivity for bluetotth and network + Kabellose Verbindungsmöglichekeiten + + + + + + 0173-1#05-AAA650#002 + + + + STRING + + wifi + wifi + + + + + + + ethernet + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/ethernet + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + wired network-connectivity + kabelgebundene Netzwerkanbindung + + + + + + 0173-1#05-AAA899#002 + + + + STRING + + LAN + LAN + + + + + + + + length + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/length + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + length of the raspberry + Seitenlänge des Rapsbery Pis + + + mm + + + 0173-1#05-AAA179#002 + + + + FLOAT + + l [mm] + l [mm] + + + + + + + + width + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/width + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + width of the raspberry + Seitenbreite des Rapsbery Pis + + + mm + + + 0173-1#05-AAA189#002 + + + + FLOAT + + w [mm] + b [mm] + + + + + + + + height + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/heigth + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + heigth of the raspberry + Höhe des Rapsbery Pis + + + mm + + + 0173-1#05-AAA179#002 + + + + FLOAT + + h [mm] + h [mm] + + + + + + + + weigth + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/weight + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + weigth of the raspberry + Gewicht des Rapsbery Pis + + + g + + + 0173-1#05-AAA179#002 + + + + FLOAT + + w [g] + g [g] + + + + + + + + + power-in + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/power-in + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + input voltage and power + Eingangsspannung + Eingangsstromstärke + + + V/A + + + 0173-1#05-AAA690#002 + + + + STRING + + input voltage * input power = W + Spannung * Stromstaerke = Leistung + + + + + + + + os + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/os + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Operating system + Betriebssystem + + OS + + + + 0173-1#05-AAA677#002 + + + + STRING + + the low-level software that supports a computer's basic functions, such as scheduling tasks and controlling peripherals. + Ein Betriebssystem, auch OS (von englisch operating system) genannt, ist eine Zusammenstellung von Computerprogrammen, die die Systemressourcen eines Computers wie Arbeitsspeicher, Festplatten, Ein- und Ausgabegeräte verwaltet und diese Anwendungsprogrammen zur Verfügung stellt. + + + + + + + + + clockingSpeed + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/clockingSpeed + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + clocking speed + Taktfrequenz + + clockingSpeed + GHz + + + 0173-1#05-AAA571#002 + + + + FLOAT + + clocking speed of the processor (single-core) + Taktfreuqenz des Prozessors (single-core) + + + + + + + architecture + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/processorarchitecture + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + architecture + Architektur + + architecture + Bit + + + 0173-1#05-AAA521#002 + + + + INT + + architecure of the processor + architecture of the processor + + + + + + + socket + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/socket + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + processor socket + Prozessorsockel + + socket + + + + 0173-1#05-AAA531#002 + + + + STRING + + socket of the processor + Prozessorsockel + + + + + + + cpu + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/cpu + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + central processing unit + Hauptprozessor + + CPU + + + + 0173-1#05-AAA591#002 + + + + STRING + + central processing unit name + Name der Haupt-CPU + + + + + + + ram + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/ram + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + random access memory + Arbeitsspeicher + + RAM + GB + + + 0173-1#05-AAA571#002 + + + + INT + + Rndom Access Memory size + Groeße des Arbeitsspeichers + + + + + + + audio-output + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/audio-output + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + audio + audio + + AUDIO + + + + 0173-1#05-AAB623#002 + + + + STRING + + ADUIO output + AUDIO Ausgang + + + + + + + usb + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/usb + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Universal serial BUS + universeller serieller BUS + + USB + + + + 0173-1#05-AAA546#002 + + + + STRING + + universal seriabl bus of version 2 that supports half duplex. + USB der zweiten Generation unterstützt Halbduplex. + + + + + + + GPIO + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/gpio + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + GPIO-pins + GPIO-Pinne + + GPIO-Pins + Pins + + + 0173-1#05-AAA991#002 + + + + INT + + GPIO pins are for ... + GPIO Pinne dienen der Anbindung von ... + + + + + + + Manufacturer + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/manufacturer + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Manufacturer name + Herstellername + + + + + STRING + + legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation + Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist + + + + + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationOfficialName + + + + + Brand + 0173-1#02-AAO742#002 + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Marke + Brand + + BRAND + + + STRING + + Part of the naming for the support and the recognition of the brand position of products and services consisting of words, numbers, letters or other characters. Registered brands and trademarks are indicated with the appropriate protective signs (® or TM) + aus Wörtern, Zahlen, Buchstaben oder weiteren Schriftzeichen bestehender Teil der Namensgebung zur Wiedererkennung und Unterstützung der Markenpositionierung von Produkten und Dienstleitungen. Eingetragene Marken und Schutzmarken sind mit der entsprechenden Schutzkennzeichnung (® oder TM) anzugeben + + + + + + + AdditionalLinkAddress + 0173-1#02-AAE670#003 + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + zusätzlicher Online-Verweis + additional link address + + + + + STRING_TRANSLATABLE + + site address where you can view information about the product or to communicate + Angabe einer Web-Adresse, die zusätzliche Informationen zum Produkt oder Kontaktdaten enthält + + + + + + + ProductType + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-type + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Product type description + Produkt-Typbezeichnung + d&eacute;csignation de type du produit + + + + + STRING_TRANSLATABLE + + Name der Produktfamilie oder Variante des Produktes + A product type can also be an abbreviation or coded type + + + + + + + ProductFamily + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-family + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Manufacturer product family + Herstellerproduktfamilie + + + + + STRING_TRANSLATABLE + + 2. Ebene einer 3 stufigen herstellerspezifischen Produkthierarchie + 2nd level of a 3 level manufacturer specific product hierarchy + + + + + + + ProductRoot + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-root + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Herstellerproduktstamm + Manufacturer product root + + + + + STRING_TRANSLATABLE + + Oberste Ebene einer 3 stufigen herstellerspezifischen Produkthierarchie + Top level of a 3 level manufacturer specific product hierarchy + + + + + + + ArticleNumber + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/article-number + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + SUP_PROD_NUM + + + STRING + + unique product order identifier of the supplier + eindeutiger Bestellschlüssel des Lieferanten + + + + + + + ProductDescription + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Herstellerproduktbeschreibung + Manufacturer product description + + + + + STRING_TRANSLATABLE + + Beschreibung des Produktes, seiner technischen Eigenschaften und ggf. seiner Anwendung (Langtext) + Description of the product, it's technical features and implementation if needed (long text) + + + + + + + SerialNumber + https://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/serial-number + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Seriennummer + Serial number + + SerialNumber + + + STRING + + The SerialNumber Property is a unique production number of the manufacturer of the Device manufacturer. This is often stamped on the outside of the Device and may be used for traceability and warranty purposes. + + + + + + + \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..4eba85a --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,45 @@ +# Change Log +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/). + +## [2.0.1] 2020-05-30 +Version 2.0.1 of the AAS RDF Serialization + + +### Added + +* `http://admin-shell.io/aas/2/0/Key/idType` propert for `aas:Key` +* `PolicyDecisionPoint/externalPolicyDecisionPoints` +* `http://admin-shell.io/aas/2/0/Property/value` +* `http://admin-shell.io/aas/2/0/ReferenceElement/value` +* `http://admin-shell.io/aas/2/0/SubmodelElementCollection/value` + + +### Changed + +* Namespace: from `aas: ` to `aas: ` +* reorganized all attributes to their classes with the pattern NAMESPACE '/' CLASS '/' ATTRIBUTE +* `rdfs:label "some label"@en` to `rdfs:label "some label"^^xsd:string` as the label is not dependent on the English language. +* `aas:assetKind` to `http://admin-shell.io/aas/2/0/Asset/kind` +* `aas:DataSpecificationPhysicalUnit` to `http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/` +* `aas:DataSpecificationIEC61360` to `http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360` +* `aas:DataTypeIEC61360` to `http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataTypeIEC61360` together with all of its instances +* `aas:DataSpecificationPhysicalUnit` to `http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/` together with all of its attributes +* `aas:keyElement` to `http://admin-shell.io/aas/2/0/Key/type` +* `PolicyEnforcementPoint/externalPolicyDecisionPoints` to `PolicyEnforcementPoint/externalPolicyEnforcementPoint` +* `aas:propertyValueId` to `http://admin-shell.io/aas/2/0/Property/valueId` +* `aas:isCaseOf rdfs:domain aas:Reference .` to `aas:isCaseOf rdfs:range aas:Reference .` +* `aas:relationsshipFirst` to `http://admin-shell.io/aas/2/0/RelationshipElement/first` +* `aas:relationsshipSecond` to `http://admin-shell.io/aas/2/0/RelationshipElement/second` +* `aas:propertyCategory` to `http://admin-shell.io/aas/2/0/Property/category` + + +### Removed + +* `owl:disjointWith` annotations as their added value is limited and the potential to create conflicts is high. +* `aas:describes` is not in the AAS Meta Model anymore. +* Class `aas:Category` does not exist in the AAS Meta Model. +* `aas:sourceOfDefinition` and `aas:definition` +* `aas:inAccordanceWith` +* `aas:embeddedDataSpecification` diff --git a/README.md b/README.md index 2afea25..6c6e3a8 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ Repository containing the developing of the RAMI vocabulary. This semantically e on the Plattform Industrie 4.0 specification [Details of the Asset Administration Shell - Part 1](https://www.plattform-i40.de/PI40/Redaktion/DE/Downloads/Publikation/2018-verwaltungsschale-im-detail.html). This repository provides an RDF version of the specification, -The ontology itself is contained in [rami.ttl](rami.ttl). You can find a visualization of the latest version can be created using the +The ontology itself is contained in [AAS-Ontology_2.0.ttl](AAS-Ontology_2.0.ttl). You can find a visualization of the latest version can be created using the [WebVOwl API](http://www.visualdataweb.de/webvowl/\#iri=https://raw.githubusercontent.com/i40-Tools/RAMIOntology/master/rami.ttl). diff --git a/examples/AAS_Reference_Example.ttl b/examples/AAS_Reference_Example.ttl new file mode 100644 index 0000000..ad83d32 --- /dev/null +++ b/examples/AAS_Reference_Example.ttl @@ -0,0 +1,68 @@ +@prefix : . +@prefix aas: . +@prefix dash: . +@prefix dc: . +@prefix dcterms: . +@prefix dul: . +@prefix foaf: . +@prefix geo: . +@prefix om: . +@prefix obda: . +@prefix owl: . +@prefix prov: . +@prefix rdf: . +@prefix rdfs: . +@prefix ssn: . +@prefix sto: . +@prefix skos: . +@prefix vann: . +@prefix vcard: . +@prefix void: . +@prefix xml: . +@prefix xsd: . + + +# 1) Reference with KeyElements + rdf:type aas:AssetAdministrationShell ; + + aas:identification ; + + aas:asset [ # 1a) asset + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:ASSET_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:URI_IDENTIFIER_TYPE ; + ] ; + ] ; +. + + +# 2) direct reference, different asset and assetRef properties + rdf:type aas:AssetAdministrationShell ; + + aas:identification ; + + aas:assetRef [ # 1b) assetRef + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:ASSET_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:URI_IDENTIFIER_TYPE ; + ] ; + ] ; + + aas:asset ; #1b) asset linking to Asset entity directly +. + + + rdf:type aas:Asset ; + aas:identification ; +# ... +. \ No newline at end of file diff --git a/examples/AAS_Reference_shortExample.nt b/examples/AAS_Reference_shortExample.nt new file mode 100644 index 0000000..d04e871 --- /dev/null +++ b/examples/AAS_Reference_shortExample.nt @@ -0,0 +1,11 @@ + . + _:AssetRef . +_:AssetRef . +_:AssetRef _:AssetKey . +_:AssetKey . +_:AssetKey "0"^^ . +_:AssetKey . +_:AssetKey "true"^^ . +_:AssetKey . +_:AssetKey . + . \ No newline at end of file diff --git a/examples/AAS_Reference_shortExample.ttl b/examples/AAS_Reference_shortExample.ttl new file mode 100644 index 0000000..c5702ff --- /dev/null +++ b/examples/AAS_Reference_shortExample.ttl @@ -0,0 +1,42 @@ +@prefix : . +@prefix aas: . +@prefix dash: . +@prefix dc: . +@prefix dcterms: . +@prefix dul: . +@prefix foaf: . +@prefix geo: . +@prefix om: . +@prefix obda: . +@prefix owl: . +@prefix prov: . +@prefix rdf: . +@prefix rdfs: . +@prefix ssn: . +@prefix sto: . +@prefix skos: . +@prefix vann: . +@prefix vcard: . +@prefix void: . +@prefix xml: . +@prefix xsd: . + + + rdf:type aas:AssetAdministrationShell ; + aas:identification ; + aas:asset [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:ASSET_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:URI_IDENTIFIER_TYPE ; + ] ; + ] ; +. + + rdf:type aas:Asset ; + aas:identification ; +. \ No newline at end of file diff --git a/examples/AssetAdministrationShell_Example.ttl b/examples/AssetAdministrationShell_Example.ttl new file mode 100644 index 0000000..da628b7 --- /dev/null +++ b/examples/AssetAdministrationShell_Example.ttl @@ -0,0 +1,14 @@ + + rdf:type aas:AssetAdministrationShell ; (1) + aas:idShort "ExampleMotor"^^xsd:string ; + rdfs:label "ExampleMotor"^^xsd:string ; (2) + aas:description "A very short description of the AAS instance.@en" ; + rdfs:comment "A very short description of the AAS instance."^^xsd:string ; (3) + aas:asset [ ... aas:value ; ... ] ; + aas:submodel [ ... aas:value ; ... ] ; + aas:submodel [ ... aas:value ; ... ] ; + aas:submodel [... aas:value ; ...]; + aas:submodel [ ... aas:value ; ... ] ; + aas:identification ; + aas:category "CONSTANT"^^xsd:string . + diff --git a/examples/Asset_Example.nt b/examples/Asset_Example.nt new file mode 100644 index 0000000..110a99a --- /dev/null +++ b/examples/Asset_Example.nt @@ -0,0 +1,24 @@ + . + + "ServoDCMotor"^^. + "ServoDCMotor"^^. + . + + + _:SubmodelReference + +_:SubmodelReference . +_:SubmodelReference _:SubmodelKey . +_:SubmodelKey . +_:SubmodelKey "0"^^ . +_:SubmodelKey . +_:SubmodelKey "true"^^ . +_:SubmodelKey . +_:SubmodelKey . + + + + + . + + . \ No newline at end of file diff --git a/examples/Asset_Example.ttl b/examples/Asset_Example.ttl new file mode 100644 index 0000000..d18e14c --- /dev/null +++ b/examples/Asset_Example.ttl @@ -0,0 +1,15 @@ + rdf:type aas:Asset ; + aas:idShort "ServoDCMotor"^^xsd:string ; + rdfs:label "ServoDCMotor"^^xsd:string ; + aas:identification> . + aas:assetIdentificationModel [ + rdf:type aas:Reference ; + aas:key [ + rdf:type aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:SUBMODEL_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:URI_IDENTIFIER_TYPE . + ] ; + aas:hasKind aas:Instance . diff --git a/examples/Complete_Example.ttl b/examples/Complete_Example.ttl new file mode 100644 index 0000000..b199e13 --- /dev/null +++ b/examples/Complete_Example.ttl @@ -0,0 +1,1102 @@ +@prefix aas: . +@prefix owl: . +@prefix rdf: . +@prefix rdfs: . +@prefix xsd: . + + +# Asset Administration Shell + rdf:type aas:AssetAdministrationShell ; + aas:idShort "ExampleMotor"^^xsd:string ; + rdfs:label "ExampleMotor"^^xsd:string ; + aas:description "A very short description of the AAS instance."@en ; + rdfs:comment "A very short description of the AAS instance."^^xsd:string ; + aas:asset [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:ASSET_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:submodel [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:SUBMODEL_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:submodel [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:SUBMODEL_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:submodel [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:SUBMODEL_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ]; + ] ; + aas:submodel [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:SUBMODEL_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:identification ; + aas:category "CONSTANT"^^xsd:string ; +. + + +# Asset + rdf:type aas:Asset ; + aas:idShort "ServoDCMotor"^^xsd:string ; + rdfs:label "ServoDCMotor"^^xsd:string ; + aas:identification ; + aas:assetIdentificationModel [ + rdf:type aas:Reference ; + aas:key [ + rdf:type aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:SUBMODEL_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:assetKind aas:ASSET_INSTANCE ; +. + +# Submodel + rdf:type aas:Submodel ; + aas:idShort "Identification"^^xsd:string ; + rdfs:label "Identification"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:description "Identification from Manufacturer"@en ; + aas:description "Hersteller-Identifikation"@de ; + rdfs:comment "Identification from Manufacturer"@en ; + rdfs:comment "Hersteller-Identifikation"@de ; + aas:identification ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#01-ADN198#009"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "Manufacturer"^^xsd:string ; + rdfs:label "Manufacturer"^^xsd:string ; + aas:propertyCategory aas:CONSTANT ; + aas:kind aas:INSTANCE ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#02-AAO677#002"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:value "CUSTOMER GmbH"^^xsd:string ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "GLN"^^xsd:string ; + rdfs:label "GLN"^^xsd:string ; + aas:propertyCategory aas:CONSTANT ; + aas:kind aas:INSTANCE ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#02-AAY812#001"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:value "10101010"^^xsd:integer ; + ] ; + aas:submodelElement [ + rdf:type aas:MultiLanguageProperty ; + rdf:subject ; + aas:idShort "ProductDesignation"^^xsd:string ; + rdfs:label "ProductDesignation"^^xsd:string ; + aas:propertyCategory aas:CONSTANT ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#02-AAW338#001"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "I40 Capable Servo Motor"@en ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "SerialNumber"^^xsd:string ; + rdfs:label "SerialNumber"^^xsd:string ; + aas:propertyCategory aas:CONSTANT ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#02-AAM556#002"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "P12345678I40"@en ; + ] ; +. + +# Submodel + rdf:type aas:Submodel ; + aas:idShort "TechnicalData"^^xsd:string ; + rdfs:label "TechnicalData"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#01-AFZ615#016"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "MaxRotationSpeed"^^xsd:string ; + rdfs:label "MaxRotationSpeed"^^xsd:string ; + aas:propertyCategory aas:PARAMETER ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value "0173-1#02-BAA120#008"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "5000"^^xsd:integer ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "MaxTorque"^^xsd:string ; + rdfs:label "MaxTorque"^^xsd:string ; + aas:propertyCategory aas:PARAMETER ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value "0173-1#02-BAE098#004"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "200"^^xsd:float ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "CoolingType"^^xsd:string ; + rdfs:label "CoolingType"^^xsd:string ; + aas:propertyCategory aas:PARAMETER ; + aas:description "open circuit, external cooling"@en ; + rdfs:comment "open circuit, external cooling"@en ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value "0173-1#02-BAE122#006"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "BAB657"^^xsd:string ; + aas:valueId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value "0173-1#07-BAB657#003"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + ] ; +. + +# Submodel + rdf:type aas:Submodel ; + aas:idShort "Documentation"^^xsd:string ; + rdfs:label "Documentation"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:kind aas:INSTANCE ; + aas:submodelElementCollection [ + rdf:type aas:SubmodelElementCollection ; + rdf:subject ; + aas:idShort "OperatingManual"^^xsd:string ; + rdfs:label "OperatingManual"^^xsd:string ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "DocumentId"^^xsd:string ; + rdfs:label "DocumentId"^^xsd:string ; + aas:propertyCategory aas:CONSTANT ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "3 608 870 A47"^^xsd:string ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "DocumentClassId"^^xsd:string ; + rdfs:label "DocumentClassId"^^xsd:string ; + aas:propertyCategory aas:CONSTANT ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "03-02"^^xsd:string ; + ] ; + aas:submodelElement [ + rdf:type aas:MultiLanguageProperty ; + rdf:subject ; + aas:idShort "DocumentClassName"^^xsd:string ; + rdfs:label "DocumentClassName"^^xsd:string ; + aas:propertyCategory aas:CONSTANT ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "Operation"@en ; + aas:value "Bedienung"@de ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "DocumentClassificationSystem"^^xsd:string ; + rdfs:label "DocumentClassificationSystem"^^xsd:string ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "VDI2770:2018"^^xsd:string ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "OrganizationName"^^xsd:string ; + rdfs:label "OrganizationName"^^xsd:string ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "CUSTOMER"^^xsd:string ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "OrganizationOfficialName"^^xsd:string ; + rdfs:label "OrganizationOfficialName"^^xsd:string ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "CUSTOMER GmbH"^^xsd:string ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "Title"^^xsd:string ; + rdfs:label "Title"^^xsd:string ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "Operating Manual"^^xsd:string ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "Language"^^xsd:string ; + rdfs:label "Language"^^xsd:string ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "en-US"^^xsd:string ; + ] ; + aas:submodelElement [ + rdf:type aas:File ; + rdf:subject ; + aas:idShort "DigitalFile_PDF"^^xsd:string ; + rdfs:label "DigitalFile_PDF"^^xsd:string ; + aas:category "PARAMETER"^^xsd:string ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:mimeType "application/pdf"^^xsd:string ; + aas:value "/aasx/OperatingManual.pdf"^^xsd:string ; + ] ; + aas:ordered "false"^^xsd:boolean ; + aas:allowDuplicates "false"^^xsd:boolean ; + ]; +. + +# Submodel + rdf:type aas:Submodel ; + aas:idShort "OperationalData"^^xsd:string ; + rdfs:label "OperationalData"^^xsd:string ; + aas:category "VARIABLE"^^xsd:string ; + aas:identification ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#01-AFZ615#016"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "RotationSpeed"^^xsd:string ; + rdfs:label "RotationSpeed"^^xsd:string ; + aas:propertyCategory aas:VARIABLE ; + aas:kind aas:INSTANCE ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "4370"^^xsd:integer ; + ] ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "Torque"^^xsd:string ; + rdfs:label "Torque"^^xsd:string ; + aas:propertyCategory aas:VARIABLE ; + aas:kind aas:INSTANCE ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:kind aas:INSTANCE ; + aas:value "117.4"^^xsd:float ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "Document"^^xsd:string ; + rdfs:label "Document"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Document"@en ; + aas:preferredName "Dokument"@de ; + aas:shortName "Document"@en ; + aas:sourceOfDefinition "[ISO 15519-1:2010]"^^xsd:string ; + aas:datatype "ENTITY"^^xsd:string ; + aas:definition "Feste und geordnete Menge von für die Verwendung durch Personen bestimmte Informationen, die verwaltet und als Einheit zwischen Benutzern und System ausgetauscht werden kann."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "DocumentIdValue"^^xsd:string ; + rdfs:label "DocumentIdValue"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Document Id"@en ; + aas:preferredName "Dokumenten ID"@de ; + aas:shortName "DocumentId"@en ; + aas:datatype "STRING"^^xsd:string ; + aas:definition "die eigentliche Identifikationsnummer"@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "DocumentClassId"^^xsd:string ; + rdfs:label "DocumentClassId"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Document Class Id"@en ; + aas:preferredName "Dokumentenklassen ID"@de ; + aas:shortName "DocumentClassId"@en ; + aas:datatype "STRING"^^xsd:string ; + aas:definition "Eindeutige ID der Klasse in einer Klassifikation."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "DocumentClassName"^^xsd:string ; + rdfs:label "DocumentClassName"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Document Class Name"@en ; + aas:shortName "DocumentClassName"@en ; + aas:datatype "STRING_TRANSLATABLE"^^xsd:string ; + aas:definition "Liste von sprachabhängigen Namen zur ClassId."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "DocumentClassificationSystem"^^xsd:string ; + rdfs:label "DocumentClassificationSystem"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Classification System"@en ; + aas:preferredName "Klassifikationssystem"@de ; + aas:shortName "DocumentClassificationSystem"@en ; + aas:datatype "STRING"^^xsd:string ; + aas:definition "Eindeutige Kennung für ein Klassifikationssystem. Für Klassifikationen nach VDI 2770 muss 'VDI2770:2018' verwenden werden."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "OrganizationName"^^xsd:string ; + rdfs:label "OrganizationName"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "gebräuchliche Bezeichnung für Organisation"@de ; + aas:preferredName "organization name"@en ; + aas:shortName "OrganizationName"@en ; + aas:datatype "STRING"^^xsd:string ; + aas:definition "Die gebräuchliche Bezeichnung für die Organisation."@de ; + ] ; + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "OrganizationOfficialName"^^xsd:string ; + rdfs:label "OrganizationOfficialName"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "offizieller Name der Organisation"@de ; + aas:preferredName "official name of the organization"@en ; + aas:shortName "OrganizationOfficialName"@en ; + aas:datatype "STRING"^^xsd:string ; + aas:definition "Der offizielle Name der Organisation."@de ; + ] ; + aas:isCaseOf [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value "0173-1#02-AAO677#002"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "DocumentVersion"^^xsd:string ; + rdfs:label "DocumentVersion"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Document Version"@en ; + aas:preferredName "Version des Dokuments"@de ; + aas:shortName "DocumentVersion"@en ; + aas:datatype "STRING"^^xsd:string ; + aas:definition "Zu jedem Dokument muss eine Menge von mindestens einer Dokumentenversion existieren. Es können auch mehrere Dokumentenversionen ausgeliefert werden."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "Language"^^xsd:string ; + rdfs:label "Language"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Sprache"@de ; + aas:preferredName "Language"@en ; + aas:shortName "Language"@en ; + aas:datatype "STRING"^^xsd:string ; + aas:definition "Eine Liste der im Dokument verwendeten Sprachen."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "Title"^^xsd:string ; + rdfs:label "Title"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Titel"@de ; + aas:preferredName "Title"@en ; + aas:shortName "Title"@en ; + aas:datatype "STRING_TRANSLATABLE"^^xsd:string ; + aas:definition "Sprachabhängiger Titel des Dokuments."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "Date"^^xsd:string ; + rdfs:label "Date"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Set Date"@en ; + aas:shortName "SetDate"@en ; + aas:datatype "DATE"^^xsd:string ; + aas:definition "Datum und Uhrzeit, an dem der Status festgelegt wurde. Es muss das Datumsformat „YYYY-MM-dd“ verwendet werden (Y = Jahr, M = Monat, d = Tag, siehe ISO 8601)."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "DocumentVersionIdValue"^^xsd:string ; + rdfs:label "DocumentVersionIdValue"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "DocumentVersionId"@en ; + aas:shortName "DocumentVersionId"@en ; + aas:datatype "STRING"^^xsd:string ; + aas:definition "Verschiedene Versionen eines Dokuments müssen eindeutig identifizierbar sein. Die DocumentVersionId stellt eine innerhalb einer Domäne eindeutige Versionsidentifikationsnummer dar."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "DigitalFile"^^xsd:string ; + rdfs:label "DigitalFile"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Digital File"@en ; + aas:shortName "DigitalFile"@en ; + aas:datatype "FILE"^^xsd:string ; + aas:definition "Eine Datei, die die DocumentVersion repräsentiert. Neben der obligatorischen PDF/A Datei können weitere Dateien angegeben werden."@de ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "MaxRotationSpeed"^^xsd:string ; + rdfs:label "MaxRotationSpeed"^^xsd:string ; + aas:category "PROPERTY"^^xsd:string ; + aas:identification [ + aas:id "0173-1#02-BAA120#008"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + aas:administration [ + rdf:type aas:AdministrativeInformation ; + aas:revision ""^^xsd:string ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "max. Drehzahl"@de ; + aas:preferredName "Max. rotation speed"@en ; + aas:unit "1/min"^^xsd:string ; + aas:unitId [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#05-AAA650#002"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:datatype "INTEGER_MEASURE"^^xsd:string ; + aas:definition "Höchste zulässige Drehzahl, mit welcher der Motor oder die Speiseinheit betrieben werden darf"@de ; + aas:definition "Greatest permissible rotation speed with which the motor or feeding unit may be operated"@en ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "MaxTorque"^^xsd:string ; + rdfs:label "MaxTorque"^^xsd:string ; + aas:category "PROPERTY"^^xsd:string ; + aas:identification [ + aas:id "0173-1#02-BAE098#004"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Max. torque"@en ; + aas:preferredName "max. Drehmoment"@de ; + aas:unit "Nm"^^xsd:string ; + aas:unitId [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#05-AAA212#003"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:datatype "REAL_MEASURE"^^xsd:string ; + aas:definition "Größtes mechanisch zulässiges Drehmoment, welches der Motor an der Abtriebswelle abgeben kann"@de ; + aas:definition "Greatest permissible mechanical torque which the motor can pass on at the drive shaft"@en ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "RotationSpeed"^^xsd:string ; + rdfs:label "RotationSpeed"^^xsd:string ; + aas:category "PROPERTY"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Aktuelle Drehzahl"@de ; + aas:preferredName "Actual rotation speed"@en ; + aas:shortName "RotationSpeed"@en ; + aas:unit "1/min"^^xsd:string ; + aas:unitId [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#05-AAA650#002"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:datatype "INTEGER_MEASURE"^^xsd:string ; + aas:definition "Aktuelle Drehzahl, mit welcher der Motor oder die Speiseinheit betrieben wird"@de ; + aas:definition "Actual rotation speed with which the motor or feeding unit is operated"@en ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "Torque"^^xsd:string ; + rdfs:label "Torque"^^xsd:string ; + aas:category "PROPERTY"^^xsd:string ; + aas:identification ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Drehmoment"@de ; + aas:preferredName "Torque"@en ; + aas:shortName "Torque"@en ; + aas:unit "Nm"^^xsd:string ; + aas:unitId [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#05-AAA212#003"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:datatype "REAL_MEASURE"^^xsd:string ; + aas:definition "Aktuelles Drehmoment, welches der Motor an der Abtriebswelle abgibt"@de ; + aas:definition "Actual mechanical torque which the motor passes on at the drive shaft"@en ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "CoolingType"^^xsd:string ; + rdfs:label "CoolingType"^^xsd:string ; + aas:category "PROPERTY"^^xsd:string ; + aas:identification [ + aas:id "0173-1#02-BAE122#006"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "Art der Kühlung"@de ; + aas:preferredName "Cooling type"@en ; + aas:datatype "STRING"^^xsd:string ; + aas:definition "Zusammenfassung verschiedener Kühlarten, um für Suchmerkmale zu einer begrenzten Auswahl zu kommen"@de ; + aas:definition "Summary of various types of cooling, for use as search criteria that limit a selection"@en ; + ] ; +. + +# ConceptDescription + rdf:type aas:ConceptDescription ; + aas:idShort "BAB657"^^xsd:string ; + rdfs:label "BAB657"^^xsd:string ; + aas:category "VALUE"^^xsd:string ; + aas:identification [ + aas:id "0173-1#07-BAB657#003"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + aas:hasDataSpecification [ + rdf:type aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_KEY_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value ; + aas:idType aas:IRI_IDENTIFIER_TYPE ; + ] ; + ] ; + aas:content [ + rdf:type aas:DataSpecificationIEC61360 ; + aas:preferredName "offener Kreis, Fremdkühlung"@de ; + aas:preferredName "open circuit, external cooling"@en ; + aas:datatype "STRING"^^xsd:string ; + ] ; +. \ No newline at end of file diff --git a/examples/KapitelVerwaltungsschaleExample.ttl b/examples/KapitelVerwaltungsschaleExample.ttl new file mode 100644 index 0000000..0590bd4 --- /dev/null +++ b/examples/KapitelVerwaltungsschaleExample.ttl @@ -0,0 +1,31 @@ +@prefix aas: . +@prefix dash: . +@prefix dc: . +@prefix dcterms: . +@prefix owl: . +@prefix rdf: . +@prefix rdfs: . +@prefix skos: . +@prefix vann: . +@prefix xsd: . +@base . + + + +_:MaxRotationSpeed + rdf:type aas:Property ; + aas:propertyCategory aas:PARAMETER; + aas:kind aas:INSTANCE ; + aas:semanticId [ + rdf:type aas:Reference ; + aas:key [ + rdf:type aas:Key ; + aas:type aas:CONCEPT_DESCRIPTION_IDENTIFIABLE_ELEMENT ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#02-BAA120#008"^^xsd:string + ] + ] ; + aas:idShort "MaxRotationSpeed"^^xsd:string ; + aas:value "5000"^^xsd:integer +. \ No newline at end of file diff --git a/examples/Overall-Example.nt b/examples/Overall-Example.nt new file mode 100644 index 0000000..e4db4e8 --- /dev/null +++ b/examples/Overall-Example.nt @@ -0,0 +1,36 @@ + + . + . + . + "ExampleMotor"^^. + "ExampleMotor"^^. + "CONSTANT"^^. + "A very short description of the AAS instance.@en". + "A very short description of the AAS instance."^^. + . + + . + "ServoDCMotor"^^. + "ServoDCMotor"^^. + . + . + + "Identification"^^. + "Identification"^^. + "CONSTANT"^^. + "Identification from Manufacturer@EN". + "Identification from Manufacturer"^^. + . + + . + "CUSTOMER GmbH". + <0173-1#02-AAO677#002>. + "Manufacturer"^^. + "Manufacturer"^^. + "CONSTANT"^^. + + . + <0173-1#02-AAO677#002>. + "OrganizationOfficialName"^^. + "OrganizationOfficialName"^^. + "CONSTANT"^^. \ No newline at end of file diff --git a/examples/ReferenceExample.ttl b/examples/ReferenceExample.ttl new file mode 100644 index 0000000..0d452d6 --- /dev/null +++ b/examples/ReferenceExample.ttl @@ -0,0 +1,33 @@ + +# 1) Reference with KeyElements + rdf:type aas:AssetAdministrationShell ; + aas:asset [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:ASSET_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + ] ; + ] ; +. + + +# 2) direct reference, different asset and assetRef properties + rdf:type aas:AssetAdministrationShell ; + aas:assetRef [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:ASSET_IDENTIFIABLE_ELEMENT ; + aas:local "true"^^xsd:boolean ; + aas:value ; + ] ; + ] ; + + aas:asset ; +. + + rdf:type aas:Asset . \ No newline at end of file diff --git a/examples/Submodel_SubmodelElement_Example.ttl b/examples/Submodel_SubmodelElement_Example.ttl new file mode 100644 index 0000000..c20735c --- /dev/null +++ b/examples/Submodel_SubmodelElement_Example.ttl @@ -0,0 +1,114 @@ +@prefix : . +@prefix aas: . +@prefix dash: . +@prefix dc: . +@prefix dcterms: . +@prefix dul: . +@prefix foaf: . +@prefix geo: . +@prefix om: . +@prefix obda: . +@prefix owl: . +@prefix prov: . +@prefix rdf: . +@prefix rdfs: . +@prefix ssn: . +@prefix sto: . +@prefix skos: . +@prefix vann: . +@prefix vcard: . +@prefix void: . +@prefix xml: . +@prefix xsd: . + + + + rdf:type aas:Submodel ; + aas:idShort "Identification"^^xsd:string ; + rdfs:label "Identification"^^xsd:string ; + + aas:category "CONSTANT"^^xsd:string ; + + #-------------------------------- + # 1) Reference Element with Keys + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "1"^^xsd:integer ; # RDF knows no order, however the index states that this key is 'less important' than the other + aas:type aas:GLOBAL_REFERENCE_IDENTIFIABLE_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "https://wikipedia.org/wiki/Unique_Identification_Number"^^xsd:string ; + aas:idType aas:URI_IDENTIFIER_TYPE ; + ] ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; # RDF knows no order, however the index states that this key is 'more important' than the other + aas:type aas:GLOBAL_REFERENCE_IDENTIFIABLE_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#01-ADN198#009"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + + # 2) direct linking + aas:semanticId "0173-1#01-ADN198#009"^^xsd:string ; + aas:semanticId ; + #-------------------------------- + + # 'LangStringSets' + aas:description "Identification from Manufacturer"@en ; + aas:description "Hersteller-Identifikation"@en ; + aas:description "Hersteller-Identifikation"@de ; + rdfs:comment "Identification from Manufacturer"@en ; + rdfs:comment "Hersteller-Identifikation"@de ; + + aas:identification ; # linking back to itself as enitity is already identified by a URI + + + aas:submodelElement [ + # First SubmodelElement + rdf:type aas:Property ; + + #-------------------------------- + rdf:subject ; # a) URI starting at latest known Element (Submodel URI) + rdf:subject ; # b) URI constructed as proposed in the OpenAPI + #-------------------------------- + + aas:idShort "Manufacturer"^^xsd:string ; + rdfs:label "Manufacturer"^^xsd:string ; + + aas:category "CONSTANT"^^xsd:string ; + + aas:hasKind aas:INSTANCE ; + + #-------------------------------- + # 1) Reference Element with Keys + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; # RDF knows no order, however the index states that this key is 'more important' than any other (which must not have the same index) + aas:type aas:GLOBAL_REFERENCE_IDENTIFIABLE_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#02-AAO677#002"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + + # 2) direct linking + aas:semanticId "0173-1#02-AAO677#002"^^xsd:string ; + #-------------------------------- + + aas:hasKind aas:INSTANCE ; + + # aas:valueType "xsd:string"^^xsd:string ; # redundant, see typed literal next line + aas:value "CUSTOMER GmbH"^^xsd:string ; + ] ; + + + # continuing... + aas:submodelElement ; + aas:submodelElement ; + aas:submodelElement ; +. \ No newline at end of file diff --git a/examples/Submodel_SubmodelElement_shortExample.nt b/examples/Submodel_SubmodelElement_shortExample.nt new file mode 100644 index 0000000..8a18be3 --- /dev/null +++ b/examples/Submodel_SubmodelElement_shortExample.nt @@ -0,0 +1,36 @@ + . + "Identification"^^ . + "Identification"^^ . + "CONSTANT"^^ . + _:genid1 . + "Identification from Manufacturer"@en . + "Hersteller-Identifikation"@en . + "Hersteller-Identifikation"@de . + "Identification from Manufacturer"@en . + "Hersteller-Identifikation"@de . + . + _:genid3 . +_:genid1 . +_:genid1 _:genid2 . +_:genid2 . +_:genid2 "0"^^ . +_:genid2 . +_:genid2 "false"^^ . +_:genid2 "0173-1#01-ADN198#009"^^ . +_:genid2 . +_:genid3 . +_:genid3 . +_:genid3 "Manufacturer"^^ . +_:genid3 "Manufacturer"^^ . +_:genid3 "CONSTANT"^^ . +_:genid3 . +_:genid3 _:genid4 . +_:genid3 "CUSTOMER GmbH"^^ . +_:genid4 . +_:genid4 _:genid5 . +_:genid5 . +_:genid5 "0"^^ . +_:genid5 . +_:genid5 "false"^^ . +_:genid5 "0173-1#02-AAO677#002"^^ . +_:genid5 . \ No newline at end of file diff --git a/examples/Submodel_SubmodelElement_shortExample.ttl b/examples/Submodel_SubmodelElement_shortExample.ttl new file mode 100644 index 0000000..741909b --- /dev/null +++ b/examples/Submodel_SubmodelElement_shortExample.ttl @@ -0,0 +1,69 @@ +@prefix : . +@prefix aas: . +@prefix dash: . +@prefix dc: . +@prefix dcterms: . +@prefix dul: . +@prefix foaf: . +@prefix geo: . +@prefix om: . +@prefix obda: . +@prefix owl: . +@prefix prov: . +@prefix rdf: . +@prefix rdfs: . +@prefix ssn: . +@prefix sto: . +@prefix skos: . +@prefix vann: . +@prefix vcard: . +@prefix void: . +@prefix xml: . +@prefix xsd: . + + + + rdf:type aas:Submodel ; + aas:idShort "Identification"^^xsd:string ; + rdfs:label "Identification"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_IDENTIFIABLE_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#01-ADN198#009"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:description "Identification from Manufacturer"@en ; + aas:description "Hersteller-Identifikation"@en ; + aas:description "Hersteller-Identifikation"@de ; + rdfs:comment "Identification from Manufacturer"@en ; + rdfs:comment "Hersteller-Identifikation"@de ; + aas:identification ; + aas:submodelElement [ + rdf:type aas:Property ; + rdf:subject ; + aas:idShort "Manufacturer"^^xsd:string ; + rdfs:label "Manufacturer"^^xsd:string ; + aas:category "CONSTANT"^^xsd:string ; + aas:hasKind aas:INSTANCE ; + aas:semanticId [ + a aas:Reference ; + aas:key [ + a aas:Key ; + aas:index "0"^^xsd:integer ; + aas:type aas:GLOBAL_REFERENCE_IDENTIFIABLE_ELEMENT ; + aas:local "false"^^xsd:boolean ; + aas:value "0173-1#02-AAO677#002"^^xsd:string ; + aas:idType aas:IRDI_IDENTIFIER_TYPE ; + ] ; + ]; + aas:hasKind aas:INSTANCE ; + aas:value "CUSTOMER GmbH"^^xsd:string ; + ] ; + ... +. \ No newline at end of file diff --git a/rami.ttl b/rami.ttl deleted file mode 100644 index c7cc9dc..0000000 --- a/rami.ttl +++ /dev/null @@ -1,926 +0,0 @@ -@prefix : . -@prefix dc: . -@prefix om: . -@prefix DUL: . -@prefix dul: . -@prefix geo: . -@prefix owl: . -@prefix rdf: . -@prefix ssn: . -@prefix sto: . -@prefix xml: . -@prefix xsd: . -@prefix foaf: . -@prefix obda: . -@prefix prov: . -@prefix rami: . -@prefix rdfs: . -@prefix skos: . -@prefix vann: . -@prefix void: . -@prefix vcard: . -@prefix dcterms: . -@base . - - rdf:type owl:Ontology ; - rdfs:comment "Update implementing the specifiations coming from 'Details of the Asset Administration Shell - Part 1: The exchange of information between partners in the value chain of Industrie 4.0 (Version 1.0)'" ; - vann:preferredNamespaceUri "https://w3id.org/i40/rami#" ; - owl:versionInfo 0.4 ; - skos:definition "An Ontology to represents the Reference Architecture Model for Industry 4.0 (RAMI), including the concept of the Administration Shell I4.0 Component."@en ; - void:vocabulary rdfs: , - skos: , - dc: ; - skos:prefLabel "rami"@en ; - void:vocabulary xsd: ; - vann:preferredNamespacePrefix "rami" ; - rdfs:isDefinedBy ; - dcterms:creator ; - dcterms:contributor ; -. - - -################################################################# -# Annotation properties -################################################################# - -### http://purl.org/dc/elements/1.1/date -dc:date rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/elements/1.1/description -dc:description rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/elements/1.1/format -dc:format rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/elements/1.1/identifier -dc:identifier rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/elements/1.1/language -dc:language rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/elements/1.1/relation -dc:relation rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/elements/1.1/source -dc:source rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/description -dcterms:description rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/identifier -dcterms:identifier rdf:type owl:AnnotationProperty ; - rdfs:subPropertyOf dc:identifier ; - rdfs:range rdfs:Literal . - - -### http://purl.org/vocab/vann/preferredNamespacePrefix -vann:preferredNamespacePrefix rdf:type owl:AnnotationProperty . - - -### http://purl.org/vocab/vann/preferredNamespaceUri -vann:preferredNamespaceUri rdf:type owl:AnnotationProperty . - - -### http://rdfs.org/ns/void#vocabulary -void:vocabulary rdf:type owl:AnnotationProperty . - - -### http://www.w3.org/2004/02/skos/core#altLabel -skos:altLabel rdf:type owl:AnnotationProperty . - - -### http://www.w3.org/2004/02/skos/core#definition -skos:definition rdf:type owl:AnnotationProperty . - - -### http://www.w3.org/2004/02/skos/core#note -skos:note rdf:type owl:AnnotationProperty . - - -### http://www.w3.org/2004/02/skos/core#prefLabel -skos:prefLabel rdf:type owl:AnnotationProperty . - - -### http://www.wurvoc.org/vocabularies/om-1.8/hasNumericalValue -om:hasNumericalValue rdf:type owl:DatatypeProperty ; - rdfs:domain om:Measure . - - -### https://w3id.org/i40/rami#assetId -rami:assetId rdf:type owl:DatatypeProperty ; - rdfs:domain rami:Asset . - - -### https://w3id.org/i40/rami#description -rami:description rdf:type owl:AnnotationProperty ; - rdfs:subPropertyOf rdfs:comment ; - rdfs:range xsd:string ; - rdfs:domain rami:Asset . - - -### https://w3id.org/i40/rami#display -rami:display rdf:type owl:AnnotationProperty . - - -### https://w3id.org/i40/rami#idShort -rami:idShort rdf:type owl:AnnotationProperty . - - -### https://w3id.org/i40/rami#semanticId -rami:semanticId rdf:type owl:AnnotationProperty ; - rdfs:subPropertyOf rdfs:seeAlso ; - rdfs:range rami:ExpressionSemantic ; - rdfs:domain rami:Submodel . - - -################################################################# -# Datatypes -################################################################# - -### http://www.w3.org/2001/XMLSchema#date -xsd:date rdf:type rdfs:Datatype . - - -### https://w3id.org/i40/rami#IRDI -rami:IRDI rdf:type rdfs:Datatype ; - rdfs:comment """IRDI - ISO29002-5, ISO IEC 6523 and ISO IEC 11179-6 [20] as an Identifier scheme for properties and classifications. They are created in a process of consortium-wise specification or international standardisation. -To this end, users sit down together and feed their ideas into the consortia or standardisation bodies. Properties in ISO, IEC help to safeguard key commercial interests. Repositories like eCl@ss and others make it possible to standardise a relatively large number of Identifiers in an appropriately short time."""@en . - - -### https://w3id.org/i40/rami#blob -rami:blob rdf:type rdfs:Datatype ; - rdfs:comment "A BLOB is a data element that represents a file that is contained with its source code in the value attribute."@en ; - rdfs:label "rami:blob"^^xsd:string . - - -### https://w3id.org/i40/rami#file -rami:file rdf:type rdfs:Datatype ; - rdfs:comment "A File is a data element that represents a file via its path description."@en ; - rdfs:label "rami:file"^^xsd:string . - - -################################################################# -# Object Properties -################################################################# - -### http://www.loa-cnr.it/ontologies/DUL.owl#isPartOf -dul:isPartOf rdf:type owl:ObjectProperty , - owl:TransitiveProperty ; - rdfs:domain rami:Asset ; - rdfs:range rami:Asset ; - rdfs:comment "A relation between any entities, in this case, the Asset can be part of other Asset(s)."^^xsd:string ; - rdfs:isDefinedBy ; - rdfs:label "is Part Of"@en . - - -### http://www.w3.org/TR/2013/REC-prov-o-20130430/#wasDerivedFrom - rdf:type owl:ObjectProperty ; - rdfs:subPropertyOf owl:topObjectProperty . - - -### https://w3id.org/i40/rami#administration -rami:administration rdf:type owl:ObjectProperty ; - rdfs:comment """Administrative information of an identifiable element. -Note: Some of the administrative information like the version number might -need to be part of the identification."""@en ; - rdfs:label "has administration"@en . - - -### https://w3id.org/i40/rami#asset -rami:asset rdf:type owl:ObjectProperty ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:Asset ; - rdfs:comment "The asset the AAS is representing."@en ; - rdfs:label "asset"@en . - - -### https://w3id.org/i40/rami#assetIdentificationModel -rami:assetIdentificationModel rdf:type owl:ObjectProperty ; - rdfs:subPropertyOf rami:hasSubmodel ; - rdfs:domain rami:Asset ; - rdfs:range rami:Submodel ; - rdfs:comment """A reference to a Submodel that defines the handling of -additional domain specific (proprietary) Identifiers for -the asset like e.g. serial number etc."""@en ; - rdfs:label "has Asset Identification Model"^^xsd:string . - - -### https://w3id.org/i40/rami#conceptDictionary -rami:conceptDictionary rdf:type owl:ObjectProperty ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:ConceptDictionary ; - rdfs:comment "An AAS max have one or more concept dictionaries assigned to it. The concept dictionaries typically contain only descriptions for elements that are also used within the AAS (via HasSemantics)."@en ; - rdfs:label "has concept dictionary" . - - -### https://w3id.org/i40/rami#containedElement -rami:containedElement rdf:type owl:ObjectProperty ; - rdfs:comment "Referable elements that are contained in the view."@en ; - rdfs:label "containedElement"^^xsd:string . - - -### https://w3id.org/i40/rami#contributes -rami:contributes rdf:type owl:ObjectProperty ; - rdfs:domain rami:Submodel ; - skos:definition "Agent(Person or Software) that contributes to the Entity/Object related data. It correspond to the Contributor concept of OMM"@en ; - skos:prefLabel "has Type Description"@en . - - -### https://w3id.org/i40/rami#dataElement -rami:dataElement rdf:type owl:ObjectProperty ; - rdfs:comment """A data element is a submodel element that is not further composed out of other submodel elements. -A data element is a submodel element that has a value. The type of value differs for different subtypes of data elements."""@en ; - rdfs:label "dataElement"@en . - - -### https://w3id.org/i40/rami#defaultEnvironmentAttributes -rami:defaultEnvironmentAttributes rdf:type owl:ObjectProperty ; - rdfs:comment """Reference to a submodel defining default environment attributes, i.e. attributes that are not describing the asset itself. -The submodel is of kind=Type. -At the same type the values of these environment attributes need to be accessible when evaluating the access permission rules. This is realized as a policy information point."""@en ; - rdfs:label "defaultEnvironmentAttributes"^^xsd:string . - - -### https://w3id.org/i40/rami#defaultPermissions -rami:defaultPermissions rdf:type owl:ObjectProperty ; - rdfs:comment "Reference to a submodel defining the default permissions for the AAS."@en ; - rdfs:label "defaultPermissions"^^xsd:string . - - -### https://w3id.org/i40/rami#defaultSubjectAttributes -rami:defaultSubjectAttributes rdf:type owl:ObjectProperty ; - rdfs:comment """Reference to a submodel defining the default subjects attributes for the AAS that can be used to describe access permission rules. -The submodel is of kind=Type."""@en ; - rdfs:label "defaultSubjectAttributes"^^xsd:string . - - -### https://w3id.org/i40/rami#dependsOn -rami:dependsOn rdf:type owl:ObjectProperty ; - rdfs:comment "A formula may depend on referable or even external global elements - assumed that can be referenced and their value may be evaluated - that are used in the logical expression."@en ; - rdfs:label "dependsOn"@en . - - -### https://w3id.org/i40/rami#derivedFrom -rami:derivedFrom rdf:type owl:ObjectProperty ; - rdfs:subPropertyOf ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:AdminShell ; - rdfs:comment "This relation connects instances of AAS with their respective types. Refer to Asset Kind for further information of instance and type kinds."@en ; - rdfs:label "derived from"^^xsd:string . - - -### https://w3id.org/i40/rami#describes -rami:describes rdf:type owl:ObjectProperty ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:Asset ; - rdfs:comment "Connect the Asset with the Administration Shell"@en ; - skos:altLabel "describes"@en . - - -### https://w3id.org/i40/rami#first -rami:first rdf:type owl:ObjectProperty ; - rdfs:comment "First element in the relationship taking the role of the subject."@en ; - rdfs:label "first"^^xsd:string . - - -### https://w3id.org/i40/rami#hasConceptDescription -rami:hasConceptDescription rdf:type owl:ObjectProperty ; - rdfs:comment """The semantics of a property or other elements that may have a semantic description is defined by a concept description. -The description of the concept should follow a standardized schema (realized as data specification template)."""@en ; - rdfs:label "has ConceptDescription"@en . - - -### https://w3id.org/i40/rami#hasDataSpecification -rami:hasDataSpecification rdf:type owl:ObjectProperty ; - rdfs:subPropertyOf owl:topObjectProperty ; - rdfs:comment "Global reference to the data specification template used by the element."@en ; - rdfs:label "has Data Specification"@en . - - -### https://w3id.org/i40/rami#hasDatatype -rami:hasDatatype rdf:type owl:ObjectProperty ; - rdfs:domain rami:Submodel ; - rdfs:comment "Points to the datatypes of the Submodels"@en ; - rdfs:label "has Datatype"@en . - - -### https://w3id.org/i40/rami#hasIdType -rami:hasIdType rdf:type owl:ObjectProperty ; - rdfs:comment """Type of the key value. -In case of idType = idShort local shall be true. -In case type=GlobalReference idType shall not be IdShort."""@en ; - rdfs:label "has idType"@en . - - -### https://w3id.org/i40/rami#hasKey -rami:hasKey rdf:type owl:ObjectProperty ; - rdfs:comment "Unique reference in its name space."@en ; - rdfs:label "has Key"^^xsd:string . - - -### https://w3id.org/i40/rami#hasKind -rami:hasKind rdf:type owl:ObjectProperty ; - rdfs:subPropertyOf owl:topObjectProperty ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:AssetKind ; - rdfs:label "has kind"@en . - - -### https://w3id.org/i40/rami#hasReference -rami:hasReference rdf:type owl:ObjectProperty ; - rdfs:domain rami:Submodel ; - rdfs:label "has Reference"@en . - - -### https://w3id.org/i40/rami#hasSubjectAttribute -rami:hasSubjectAttribute rdf:type owl:ObjectProperty ; - rdfs:comment "A data element that further classifies a specific subject."@en ; - rdfs:label "has subjectAttribute"^^xsd:string . - - -### https://w3id.org/i40/rami#hasSubmodel -rami:hasSubmodel rdf:type owl:ObjectProperty ; - rdfs:domain rami:Asset ; - rdfs:range rami:Submodel ; - rdfs:comment "Points to the Admin Shell to the Submodels that describe the Admin Shell of a given Asset"@en ; - rdfs:label "has Submodel"@en ; - skos:altLabel "assetIdentificationModel"@en . - - -### https://w3id.org/i40/rami#hasValue -rami:hasValue rdf:type owl:ObjectProperty ; - rdfs:domain rami:Submodel ; - rdfs:range rami:Value . - - -### https://w3id.org/i40/rami#hasView -rami:hasView rdf:type owl:ObjectProperty ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:View ; - rdfs:comment "Points to the differents views associated to the Administration Shell via the Submodels."@en ; - rdfs:label "has View"@en ; - skos:prefLabel "view"@en . - - -### https://w3id.org/i40/rami#in -rami:in rdf:type owl:ObjectProperty ; - rdfs:comment "the rami:in attribute of rami:operation is the input parameter"@en . - - -### https://w3id.org/i40/rami#inAccordanceWith -rami:inAccordanceWith rdf:type owl:ObjectProperty ; - rdfs:domain rami:Submodel ; - rdfs:comment "The Submodel is in accordance with a given standard specified in the STO ontology"@en ; - rdfs:label "in Accordance With"@en . - - -### https://w3id.org/i40/rami#isCaseOf -rami:isCaseOf rdf:type owl:ObjectProperty . - - -### https://w3id.org/i40/rami#isConnectedTo -rami:isConnectedTo rdf:type owl:ObjectProperty ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:Dimension ; - rdfs:comment "Connects the Admin Shell with the different RAMI4.0 Dimensions"@en ; - rdfs:label "is Connected To"@en . - - -### https://w3id.org/i40/rami#mimeType -rami:mimeType rdf:type owl:ObjectProperty ; - rdfs:comment """Mime type of the content of the BLOB. -The mime type states which file extension the file has. -Valid values are e.g. “application/json”, “application/xls”, ”image/jpg” -The allowed values are defined as in RFC2046. - -or - -Mime type of the content of the File."""@en ; - rdfs:label "mimeType"^^xsd:string ; - rdfs:seeAlso "http://uri4uri.net/vocab.html/#MimetypeDatatype"^^xsd:string . - - -### https://w3id.org/i40/rami#object -rami:object rdf:type owl:ObjectProperty ; - rdfs:comment "Element to which permission shall be assigned."@en ; - rdfs:label "has object"^^xsd:string . - - -### https://w3id.org/i40/rami#objectAttribute -rami:objectAttribute rdf:type owl:ObjectProperty ; - rdfs:comment "A data element that further classifies an object."@en ; - rdfs:label "objectAttribute"^^xsd:string . - - -### https://w3id.org/i40/rami#out -rami:out rdf:type owl:ObjectProperty ; - rdfs:comment "out is the output paramter of the Operation"@en ; - rdfs:label "out"@en . - - -### https://w3id.org/i40/rami#parent -rami:parent rdf:type owl:ObjectProperty ; - rdfs:comment """Reference to the next referable parent element of the element. Constraint AASd-004: Add parent in case of non-identifiable elements. -Note: This element is used to ease navigation in the model and thus it enables more performant"""@en ; - rdfs:label "parent"@en . - - -### https://w3id.org/i40/rami#preferredName -rami:preferredName rdf:type owl:ObjectProperty ; - rdfs:comment "This is the preferredName of a ConceptDescription object"@en ; - rdfs:label "preferredName"^^xsd:string . - - -### https://w3id.org/i40/rami#qualifierType -rami:qualifierType rdf:type owl:ObjectProperty . - - -### https://w3id.org/i40/rami#qualifierValue -rami:qualifierValue rdf:type owl:ObjectProperty ; - rdfs:comment """The qualifier value is the value of the qualifier. -Constraint AASd-006: if both, the value and the valueId are present then the value needs to be identical to the short name of the referenced coded value in qualifierValueId."""@en . - - -### https://w3id.org/i40/rami#second -rami:second rdf:type owl:ObjectProperty ; - rdfs:comment "Second element in the relationship taking the role of the object."@en ; - rdfs:label "second"^^xsd:string . - - -### https://w3id.org/i40/rami#selectableEnvironmentAttributes -rami:selectableEnvironmentAttributes rdf:type owl:ObjectProperty ; - rdfs:comment """Reference to a submodel defining which environment attributes can be accessed via the permission rules defined for the AAS, i.e. attributes that are not describing the asset itself. -Default: reference to the submodel referenced via -defaultEnvironmentAttributes"""@en ; - rdfs:label "selectableEnvironmentAttributes"^^xsd:string . - - -### https://w3id.org/i40/rami#submodelElement -rami:submodelElement rdf:type owl:ObjectProperty ; - rdfs:range rami:SubmodelElement ; - rdfs:comment """A submodel consists of zero or more -submodel elements."""@en ; - rdfs:label "has Submodel Element"@en . - - -### https://w3id.org/i40/rami#targetObjectAttributes -rami:targetObjectAttributes rdf:type owl:ObjectProperty ; - rdfs:comment "Target object attributes that need to be fulfilled so that the access permissions apply to the accessing subject."@en ; - rdfs:label "targetObjectAttributes"^^xsd:string . - - -### https://w3id.org/i40/rami#targetSubjectAttributes -rami:targetSubjectAttributes rdf:type owl:ObjectProperty ; - rdfs:comment "Target subject attributes that need to be fulfilled by the accessing subject to get the permissions defined by this rule."@en ; - rdfs:label "targetSubjetAtrtibutes"^^xsd:string . - - -### https://w3id.org/i40/rami#trustAnchor -rami:trustAnchor rdf:type owl:ObjectProperty ; - rdfs:comment "Trust anchor of AAS, typically certificates."@en ; - rdfs:label "trustAnchor"^^xsd:string . - - -### https://w3id.org/i40/rami#value -rami:value rdf:type owl:ObjectProperty ; - rdfs:comment "The key value, for example an IRDI if the idType=IRDI."@en ; - rdfs:label "keyValue"^^xsd:string . - - -################################################################# -# Data properties -################################################################# - -### http://purl.org/dc/terms/hasVersion -dcterms:hasVersion rdf:type owl:DatatypeProperty . - - -### http://purl.org/dc/terms/identifier -dcterms:identifier rdf:type owl:DatatypeProperty . - - -### http://www.wurvoc.org/vocabularies/om-1.8/hasNumericalValue -om:hasNumericalValue rdf:type owl:DatatypeProperty . - - -### https://w3id.org/i40/rami#allowDuplicates -rami:allowDuplicates rdf:type owl:DatatypeProperty ; - rdfs:comment """If allowDuplicates=true then it is allowed that the collection contains the same element several times. -Default = false"""@en ; - skos:altLabel "allow duplicates"^^xsd:string . - - -### https://w3id.org/i40/rami#assetId -rami:assetId rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:identifier . - - -### https://w3id.org/i40/rami#creationDate -rami:creationDate rdf:type owl:DatatypeProperty ; - rdfs:domain rami:Submodel ; - rdfs:range xsd:dateTime ; - skos:definition "Date when an Agent(Person or Software) creates to the Entity/Object related data. It correspond to the Creator concept of OMM"@en ; - skos:prefLabel "has Creator"@en . - - -### https://w3id.org/i40/rami#definition -rami:definition rdf:type owl:DatatypeProperty ; - rdfs:label "This is the definition that is contained in the conceptDescription."@en , - "has definition"^^xsd:string . - - -### https://w3id.org/i40/rami#description -rami:description rdf:type owl:DatatypeProperty . - - -### https://w3id.org/i40/rami#hasLocal -rami:hasLocal rdf:type owl:DatatypeProperty ; - rdfs:comment "Denotes if the key references a model element of the same AAS (=true) or not (=false). In case of local = false the key may reference a model element of another AAS or an entity outside any AAS that has a global unique id."@en ; - rdfs:label "has local"^^xsd:string . - - -### https://w3id.org/i40/rami#id -rami:id rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:identifier ; - rdfs:comment "A globally unique identifier which is NOT a URI."@en ; - rdfs:label "identification"@en . - - -### https://w3id.org/i40/rami#idShort -rami:idShort rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:identifier . - - -### https://w3id.org/i40/rami#isCaseOf -rami:isCaseOf rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:identifier . - - -### https://w3id.org/i40/rami#isDescribedWith -rami:isDescribedWith rdf:type owl:DatatypeProperty ; - rdfs:seeAlso rami:asset ; - owl:deprecated "true"^^xsd:boolean ; - skos:definition "Points to the Standard used to describe a given object"@en ; - skos:prefLabel "Is Described With"@en . - - -### https://w3id.org/i40/rami#logs -rami:logs rdf:type owl:DatatypeProperty ; - rdfs:range xsd:string ; - skos:prefLabel "logs"@en . - - -### https://w3id.org/i40/rami#ordered -rami:ordered rdf:type owl:DatatypeProperty ; - rdfs:comment """If ordered=false then the elements in the property collection are not ordered. If ordered=true then the elements in the collection are ordered. -Default = false"""@en ; - rdfs:label "ordered"^^xsd:string . - - -### https://w3id.org/i40/rami#publishedURL -rami:publishedURL rdf:type owl:DatatypeProperty . - - -### https://w3id.org/i40/rami#revision -rami:revision rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:hasVersion ; - rdfs:comment "Revision of the element. Constraint AASd-005: A revision requires a version. This means, if there is no version there is no revision neither."@en ; - rdfs:label "revision"@en . - - -### https://w3id.org/i40/rami#semanticId -rami:semanticId rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:identifier . - - -### https://w3id.org/i40/rami#version -rami:version rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:hasVersion ; - rdfs:comment "Version of the element."@en ; - rdfs:label "version"@en . - - -################################################################# -# Classes -################################################################# - -### https://w3id.org/i40/rami#AccessControlPolicyPoints -rami:AccessControlPolicyPoints rdf:type owl:Class ; - rdfs:comment "Container for access control policy points."@en ; - rdfs:label "Access ControlPolicy Points"^^xsd:string . - - -### https://w3id.org/i40/rami#AdminShell -rami:AdminShell rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:Identifiable ; - dc:source "This definition comprises material from RAMI4.0."@en ; - rdfs:label "Admin Shell"@en ; - skos:altLabel "Administration Shell"@en , - "Asset Administration Shell"@en ; - skos:definition "Describes the Administration Shell for Assets, Products, Components, e.g. Machines"@en ; - skos:prefLabel "Verwaltungsschale"^^xsd:string . - - -### https://w3id.org/i40/rami#AdministrativeInformation -rami:AdministrativeInformation rdf:type owl:Class ; - rdfs:subClassOf rami:DataSpecification ; - rdfs:comment """Every Identifiable may have administrative information. Administrative information includes for example - Information about the version of the element - Information about who created or who made the last change to the element - Information about the languages available in case the element contains text, for translating purposed also themmaster or default language may be defined -In the first version of the AAS metamodel only version information as defined by IEC 61360 is defined. In later versions additional attributes may be added."""@en ; - rdfs:label "Administrative Information"^^xsd:string . - - -### https://w3id.org/i40/rami#Asset -rami:Asset rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:HasKind , - rami:Identifiable . - - -### https://w3id.org/i40/rami#AssetKind -rami:AssetKind rdf:type owl:Class ; - rdfs:subClassOf rami:Dimension ; - rdfs:comment """The RAMI4.0 model features one, generalized life-cycle axis, which was derived from IEC 62890. The basic idea is to distinguish for all assets within Industrie 4.0 between possible types and instance. This makes it possible to apply the type/instance distinction for all elements such as material type/material instance, product type/product instance, machine type/ machine instance and more. Business related information will be handled on the 'Business' layer of the -RAMI4.0 model, as well, covering also order details and workflows, again with types/ instances."""@en ; - rdfs:label "Asset Kind"@en . - - -### https://w3id.org/i40/rami#Blob -rami:Blob rdf:type owl:Class ; - rdfs:subClassOf rami:DataElement ; - rdfs:comment "A BLOB is a data element that represents a file that is contained with its source code in the value attribute."@en ; - rdfs:label "BlobDataElement"@en . - - -### https://w3id.org/i40/rami#ConceptDescription -rami:ConceptDescription rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:Identifiable ; - dc:description "\"The AAS itself can also define its own dictionary that contains semantic definitions of its submodel elements. These semantic definitions are called concept descriptions (ConceptDescription). It is optional whether an AAS defines its own concept dictionary (ConceptDictionary) or not.\""@en . - - -### https://w3id.org/i40/rami#ConceptDictionary -rami:ConceptDictionary rdf:type owl:Class ; - rdfs:subClassOf rami:Referable ; - rdfs:comment "A dictionary contains elements that can be reused. The concept dictionary contains concept descriptions. Typically a concept description dictionary of an AAS contains only concept descriptions of elements used within submodels of the AAS."@en ; - rdfs:label "Concept Dictionary" . - - -### https://w3id.org/i40/rami#DataElement -rami:DataElement rdf:type owl:Class ; - rdfs:subClassOf rami:SubmodelElement ; - rdfs:comment "A data element is a submodel element that is not further composed out of other submodel elements. A data element is a submodel element that has a value. The type of value differs for different subtypes of data elements."@en ; - rdfs:label "DataElement"^^xsd:string ; - skos:note "abstract" . - - -### https://w3id.org/i40/rami#DataSpecification -rami:DataSpecification rdf:type owl:Class ; - rdfs:comment "Element that can have data specification templates. A template defines the additional attributes an element may or shall have."@en ; - rdfs:label "DataSpecification"@en ; - skos:note "abstract"@en . - - -### https://w3id.org/i40/rami#Dimension -rami:Dimension rdf:type owl:Class . - - -### https://w3id.org/i40/rami#File -rami:File rdf:type owl:Class ; - rdfs:subClassOf rami:DataElement ; - rdfs:comment "A File is a data element that represents a file via its path description."@en ; - rdfs:label "FileDataElement"@en . - - -### https://w3id.org/i40/rami#Formula -rami:Formula rdf:type owl:Class ; - dc:description "A formula is used to describe constraints by a logical expression."@en ; - rdfs:label "Formula"@en . - - -### https://w3id.org/i40/rami#HasDataSpecification -rami:HasDataSpecification rdf:type owl:Class ; - rdfs:comment "Element that can have data specification templates. A template defines the additional attributes an element may or shall have."@en ; - rdfs:label "Has Data Specification"@en ; - skos:prefLabel "Data Specification"@en . - - -### https://w3id.org/i40/rami#HasKind -rami:HasKind rdf:type owl:Class ; - rdfs:comment "An element with a kind is an element that can either represent a type or an instance. Default for an element is that it is representing an instance."@en ; - rdfs:label "Has Kind"@en . - - -### https://w3id.org/i40/rami#Identifiable -rami:Identifiable rdf:type owl:Class ; - rdfs:subClassOf rami:Referable ; - rdfs:comment "An element that has a globally unique identifier."@en ; - rdfs:label "Identifiable"@en ; - skos:note "abstract"@en . - - -### https://w3id.org/i40/rami#Key -rami:Key rdf:type owl:Class ; - rdfs:comment "A key is a reference to an element by its id."@en ; - rdfs:label "Key"^^xsd:string . - - -### https://w3id.org/i40/rami#ObjectAttributes -rami:ObjectAttributes rdf:type owl:Class ; - rdfs:comment "A set of data elements that describe object attributes. These attributes need to refer to a data element within an existing submodel."@en ; - rdfs:label "Object Attributes"^^xsd:string . - - -### https://w3id.org/i40/rami#Operation -rami:Operation rdf:type owl:Class ; - rdfs:subClassOf rami:SubmodelElement ; - rdfs:comment "An operation is a submodel element with input and output variables."@en ; - rdfs:label "Operation"@en . - - -### https://w3id.org/i40/rami#OperationVariable -rami:OperationVariable rdf:type owl:Class ; - rdfs:subClassOf rami:SubmodelElement ; - dc:description "An operation variable is a submodel element that is used as input or output variable of an operation."@en ; - rdfs:label "Operation Variable"^^xsd:string . - - -### https://w3id.org/i40/rami#Order -rami:Order rdf:type owl:Class ; - skos:definition "Each order for manufacturing runs through a life cycle and its specifics necessarily have an impact on the production facility during performance of the order"@en ; - skos:note "TODO: Delete?" ; - skos:prefLabel "Order"@en . - - -### https://w3id.org/i40/rami#Property -rami:Property rdf:type owl:Class ; - rdfs:comment "A property is a data element that has a single value."@en ; - rdfs:label "Property"@en ; - skos:note "TODO: delete?" . - - -### https://w3id.org/i40/rami#PropertyValueType -rami:PropertyValueType rdf:type owl:Class ; - dc:description """The qualifier value is the value of the qualifier. -Constraint AASd-006: if both, the value and the valueId are present then the value needs to be identical to the short name of the referenced coded value in qualifierValueId."""@en . - - -### https://w3id.org/i40/rami#Qualifier -rami:Qualifier rdf:type owl:Class ; - dc:description "A qualifier is a type-value pair that makes additional statements w.r.t. the value of the element."@en ; - rdfs:label "Qualifier"@en . - - -### https://w3id.org/i40/rami#Referable -rami:Referable rdf:type owl:Class ; - rdfs:comment "An element that is referable by its idShort. This id is not globally unique. This id is unique within the name space of the element."@en ; - rdfs:label "Referable"@en ; - skos:note "abstract" . - - -### https://w3id.org/i40/rami#Reference -rami:Reference rdf:type owl:Class ; - rdfs:comment """Reference to either a model element of the same or another AAs or to an external entity. -A reference is an ordered list of keys, each key referencing an element. The complete list of keys may for example be concatenated to a path that then gives unique access to an element or entity."""@en ; - rdfs:label "Reference"^^xsd:string . - - -### https://w3id.org/i40/rami#ReferenceElement -rami:ReferenceElement rdf:type owl:Class ; - dc:description "A reference element is a data element that defines a reference to another element within the same or another AAS or a reference to an external object or entity."@en ; - rdfs:label "Reference Element"^^xsd:string . - - -### https://w3id.org/i40/rami#RelationshipElement -rami:RelationshipElement rdf:type owl:Class ; - rdfs:subClassOf rami:SubmodelElement ; - dc:description "A relationship element is used to define a relationship between two referable elements."@en ; - rdfs:label "RelationshipElement"@en . - - -### https://w3id.org/i40/rami#Security -rami:Security rdf:type owl:Class ; - rdfs:comment "Container for security relevant information of the AAS."@en ; - rdfs:label "Security"^^xsd:string . - - -### https://w3id.org/i40/rami#Submodel -rami:Submodel rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:HasKind , - rami:Identifiable ; - rdfs:comment """A Submodel defines a specific aspect of the asset represented by the AAS. -A submodel is used to structure the virtual representation and technical functionality of an Administration Shell into distinguishable parts. Each submodel refers to a well-defined domain or subject matter. -Submodels can become standardized and thus become submodels types. Submodels can have different life-cycles."""@en , - "Describe the different types of Data related to the I4.0 Asset"@en ; - rdfs:label "Submodel"@en . - - -### https://w3id.org/i40/rami#SubmodelElement -rami:SubmodelElement rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:HasKind , - rami:Identifiable ; - rdfs:comment "A submodel element is an element suitable for the description and differentiation of assets."@en ; - rdfs:label "Submodel Element"^^xsd:string ; - skos:note "abstract"@en . - - -### https://w3id.org/i40/rami#SubmodelElementCollection -rami:SubmodelElementCollection rdf:type owl:Class ; - rdfs:subClassOf rami:SubmodelElement ; - rdfs:comment "A submodel element collection is a set or list of submodel elements."@en ; - rdfs:label "SubmodelElementCollection"@en . - - -### https://w3id.org/i40/rami#Value -rami:Value rdf:type owl:Class ; - rdfs:comment """Current value that can be specified through an instanced submodel (for -instance in station 2) or through the asset, for example."""@en ; - rdfs:label "Value"@en ; - skos:note "maybe 'containedElement'?"@en . - - -### https://w3id.org/i40/rami#View -rami:View rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:Referable ; - rdfs:comment "Different views associated to the Administration Shell via the Submodels"@en ; - rdfs:isDefinedBy "https://www.plattform-i40.de/I40/Redaktion/DE/Downloads/Publikation/hm-2018-trilaterale-coop.html"@de ; - rdfs:label "Sicht"@de , - "View"@en . - - -################################################################# -# Individuals -################################################################# - -### https://w3id.org/i40/rami#Asset -rami:Asset rdf:type owl:NamedIndividual . - - -### https://w3id.org/i40/rami#Instance -rami:Instance rdf:type owl:NamedIndividual . - - -### https://w3id.org/i40/rami#Type -rami:Type rdf:type owl:NamedIndividual , - rami:AssetKind ; - rdfs:comment """The RAMI4.0 model features one, generalized life-cycle axis, which was derived from IEC 62890. The basic idea is to distinguish for all assets within Industrie 4.0 between possible types and instance. This makes it possible to apply the -type/instance distinction for all elements such as material type/material instance, product type/product instance, machine type/ machine instance and more. Business related information will be handled on the 'Business' layer of the -RAMI4.0 model, as well, covering also order details and workflows, again with types/ instances."""@en ; - rdfs:label "Type"@en ; - skos:altLabel "Asset Type"^^xsd:string . - - -################################################################# -# Annotations -################################################################# - -om:hasNumericalValue rdfs:label "has numerical value"@en . - - -rami:Asset skos:altLabel "Object"@en ; - skos:definition "Clearly identifiable asset for the Administration Shell"@en ; - skos:altLabel "Entity"@en ; - skos:prefLabel "Asset"@en ; - skos:definition "Eindeutig identifizierbarer Gegenstand, der aufgrund seiner Bedeutung in der Informationswelt verwaltet wird"@de ; - rdfs:comment """An Asset describes meta data of an asset that is represented by an AAS. -The asset may either represent an asset type or an asset instance. -The asset has a globally unique identifier plus – if needed – additional domain specific (proprietary) identifiers."""@en ; - skos:note "Objects may be known in the form of a type or of an instance. An object in the planning phase is known as a type"@en ; - skos:altLabel "Entität"@de . - - -rami:assetId owl:deprecated "true"^^xsd:boolean ; - rdfs:label "id"@en ; - rdfs:comment "The unique identifier of an asset. Note the difference between the 'asset ID' idenitfier and the URIs for the resources."@en . - - -rami:description rdfs:comment "Description or comments on the element. The description can be provided in several languages."@en ; - skos:prefLabel "has Description"@en . - - -rami:idShort rdfs:label "idShort"@en ; - owl:deprecated "true"^^xsd:boolean . - - -rami:semanticId rdfs:comment "The semantic id might refer to an external information source, which explains the formulation of the submodel (for example an PDF if a standard)"@en ; - rdfs:label "semanticId"@en ; - rdfs:comment "Points to the Expression Semantic of the Submodels"@en ; - skos:altLabel "has Semantic Expression"@en ; - skos:prefLabel "has semantic ID"@en . - - -### Generated by the OWL API (version 4.2.8.20170104-2310) https://github.com/owlcs/owlapi diff --git a/rml_mapping/AAS-to-SAAS-mapping.rml.ttl b/rml_mapping/AAS-to-SAAS-mapping.rml.ttl index 47ae778..f07d94a 100644 --- a/rml_mapping/AAS-to-SAAS-mapping.rml.ttl +++ b/rml_mapping/AAS-to-SAAS-mapping.rml.ttl @@ -71,7 +71,7 @@ _:AssetShellMap1 a rr:TriplesMap ; . -_:AssetShellMap1 a rr:TriplesMap ; +_:AssetShellMap2 a rr:TriplesMap ; # XML source file with xPath iterator rml:logicalSource [ diff --git a/rml_mapping/FraunhoferIAIS_Raspberry_Pi_3b_plus_INSTANCE_10.aasx b/rml_mapping/FraunhoferIAIS_Raspberry_Pi_3b_plus_INSTANCE_10.aasx new file mode 100644 index 0000000..ecbaee6 Binary files /dev/null and b/rml_mapping/FraunhoferIAIS_Raspberry_Pi_3b_plus_INSTANCE_10.aasx differ diff --git a/rml_mapping/MDM_Connector.aasx b/rml_mapping/MDM_Connector.aasx new file mode 100644 index 0000000..38af6ea Binary files /dev/null and b/rml_mapping/MDM_Connector.aasx differ diff --git a/rml_mapping/mapping_examples/RaspberryPiModel3B_plus.aas.xml b/rml_mapping/mapping_examples/RaspberryPiModel3B_plus.aas.xml new file mode 100644 index 0000000..8909ef7 --- /dev/null +++ b/rml_mapping/mapping_examples/RaspberryPiModel3B_plus.aas.xml @@ -0,0 +1,2915 @@ + + + + + RaspberryPiModel3B+ + http://iais.fraunhofer.de/en/aas/examples/raspberry_pi_3b_plus + + + http://iais.fraunhofer.de/en/aas/devices/rspbry/755003377 + + + + + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/technical_data + + + + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/asset_identification + + + + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/documentation + + + + + + + + + RaspberryPiModel3B+ + + + single board computer for education, microservices and all other imaginable purposes + + http://iais.fraunhofer.de/en/aas/devices/rspbry/755003377 + Instance + + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/asset_identification + + + + + + + Documentation + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/documentation + + + + Instance + + + + + ProductSheet + PARAMETER + + + http://iais.fraunhofer.de/en/aas/page1/Document + + + Instance + + + + + DocumentId + CONSTANT + + + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId + + + Instance + + + 3 608 870 A47 + + + + + DocumentClassId + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassId + + + Instance + + + 03-02 + + + + + DocumentClassName + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassName + + + Instance + + + Product sheet (EN) + + + + + DocumentClassificationSystem + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassificationSystem + + + Instance + + + VDI2770:2018 + + + + + OrganizationName + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationName + + + Instance + + + Raspberry Foundation + + + + + OrganizationOfficialName + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationOfficialName + + + Instance + + + Raspberry Pi Foundation + + + + + EN + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion + + + Instance + + + + + Language + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Language + + + Instance + + + en-EN + + + + + title + + + http://iais.fraunhofer.de/en/aas/page1/Description/Title + + + Instance + + + Product sheet for the Raspberry Pi 3b+ (EN) + + + + + Date + + + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/SetDate + + + Instance + + + 2018-09-25 + + + + + DocumentVersionId + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/DocumentVersionId + + + Instance + + + EN | 2018-09-25 + + + + + DigitalFile_PDF + PARAMETER + + + http://iais.fraunhofer.de/en/aas/page1/StoredDocumentRepresentation/DigitalFile + + + Instance + + application/pdf + /aasx/documents/product_sheet.pdf + + + + false + false + + + + false + false + + + + + Review and Guide + PARAMETER + + + http://iais.fraunhofer.de/en/aas/page1/Document + + + Instance + + + + + DocumentId + CONSTANT + + + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId + + + Instance + + + 3 6wqi wq w7 + + + + + DocumentClassId + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassId + + + Instance + + + 33-04 + + + + + DocumentClassName + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassName + + + Instance + + + Review and full Guide to get started (EN) + + + + + DocumentClassificationSystem + + + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassificationSystem + + + Instance + + + VDI2770:2018 + + + + + OrganizationName + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationName + + + Instance + + + Raspberry Maganzine + + + + + OrganizationOfficialName + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationOfficialName + + + Instance + + + Raspberry Pi Foundation + + + + + EN + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion + + + Instance + + + + + Language + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Language + + + Instance + + + en-EN + + + + + title + + + http://iais.fraunhofer.de/en/aas/page1/Description/Title + + + Instance + + + Official magazine of the Raspberry Pi Organization (April 2018) (EN) + + + + + Date + + + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/SetDate + + + Instance + + + 2018-04-01 + + + + + DocumentVersionId + + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/DocumentVersionId + + + Instance + + + EN | 2018-04-01 + + + + + DigitalFile_PDF + PARAMETER + + + http://iais.fraunhofer.de/en/aas/page1/StoredDocumentRepresentation/DigitalFile + + + Instance + + application/pdf + /aasx/documents/review_and_guide.pdf + + + + false + false + + + + false + false + + + + + + TechnicalData + + Einplatinencomputer + single board computer + + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/technical_data + + + 0173-1#01-AAA444#008 + + + Instance + + + + + clockingSpeed + CONSTANT + + Max. taktfrequenz des Prozessors [GHz] + Max. clocking speed of the processor [GHz] + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/clockingSpeed + + + Instance + + + 1.4 + + + + + architecture + CONSTANT + + Prozessorarchitektur [BIT] + Prozessorarchitektur [BIT] + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/processorarchitecture + + + Instance + + + 64 + + + + + socket + CONSTANT + + Prozessorsockel + processor socket + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/socket + + + Instance + + + Broadcom BCM2837B0, Cortex-A53 (ARMv8) 64-bit SoC + + + + + cpu + CONSTANT + + Zentrale Prozessoreinheit + central processing unit + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/cpu + + + Instance + + + ARM Cortex-A53 CPU + + + + + ram + CONSTANT + + Arbeitsspeicher [GB] + Random Access Memory [GB] + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/ram + + + Instance + + + 2 + + + + + power-in + CONSTANT + + Power-In + Power-In + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/power-in + + + Instance + + + 5/2.5 DC + + + + + audio-output + CONSTANT + + Audioausgang + audio-output + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/audio-output + + + Instance + + + built-in-speaker + + + + + os + CONSTANT + + BS + OS + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/os + + + Instance + + + Raspberian OS (UNIX based) + + + + + usb-ports + CONSTANT + + Universeller serieller BUS :) + universal serial BUS + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/usb + + + Instance + + + 4*USB2 + + + + + gpio + CONSTANT + + GPIO + gpio + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/gpio + + + Instance + + + 40 + + + + + + weight + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/weight + + + Instance + + + 31 + + + + + + height + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/heigth + + + Instance + + + 17 + + + + + + length + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/length + + + Instance + + + 85 + + + + + + width + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/width + + + Instance + + + 56 + + + + + + + wifi-connection + CONSTANT + + kabellose Verbindungsmöglichkeiten + wireless connectivity + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/wifi-connection + + + Instance + + + Dual-band 802.11ac wireless LAN (2.4GHz and 5GHz ) and Bluetooth 4.2 + + + + + ethernet + CONSTANT + + kabelgebundene Netzwerkanbindung + wired network-connectivity + + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/ethernet + + + Instance + + + Gigabit Ethernet over USB 2.0 (max 300 Mbps). Power-over-Ethernet support (with separate PoE HAT). Improved PXE network and USB mass-storage booting. + + + + + + AssetIdentification + http://iais.fraunhofer.de/en/aas/rspbry/instance/1/1/asset_identification + + + + Instance + + + + + Manufacturer + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/manufacturer + + + Instance + + + Raspberry Pi Foundation + + + + + Brand + + + 0173-1#02-AAO742#002 + + + Instance + + + Raspberry Pi + + + + + ProductRoot + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-root + + + Instance + + + sinlge-board-micro-computer (EN) + + + + + ProductFamily + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-family + + + Instance + + + micro-computer (single-board) (EN) Mikrocomputer/Einplatinencomputer (DE) + + + + + ProductType + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-type + + + Instance + + + computer (EN) Computer (DE) + + + + + ArticleNumber + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/article-number + + + Instance + + + RSBRYPIMDL3BP-1234567898765432123456789 + + + + + OrderNumber + + + 0173-1#02-AAO736#004 + + + Instance + + + 0608842005 + + + + + ProductDescription + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-description + + + Instance + + + The most popular sigle-board-microcomputer and latest model from Raspberry (2019/04). + + + + + LinkAddress + + + 0173-1#02-AAE670#003 + + + Instance + + application/json + null + + + + + SerialNumber + VARIABLE + + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/serial-number + + + Instance + + + 12345678987654321234567898765432123456789 + + + + + + + + Document + + http://iais.fraunhofer.de/en/aas/page1/Document + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Document + + + [ISO 15519-1:2010] + + + + Feste und geordnete Menge von für die Verwendung durch Personen bestimmte Informationen, die verwaltet und als Einheit zwischen Benutzern und System ausgetauscht werden kann. + + + + + + + DocumentId + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentId + + + + + STRING + + Die Dokument ID stellt eine eindeutige Identifizierung des Dokuments innerhalb einer Domäne sicher. Die Eigenschaft DocumentId ist eine Liste, in der alle Dokument IDs zum Dokument enthalten sind. Ein Document kann mehrere Dokument IDs aus einer Domäne oder auch mehrere IDs aus jeweils verschiedenen Domänen besitzen. Es können bei der Definition von Documen-tId nur Domänen IDs verwendet werden, die in DocumentIdDomain definiert wurden. + + + + + + + DocumentIdDomain + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentIdDomain + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Document Id Domain + + DocumentIdDomain + + + STRING + + Angabe einer Liste von Domänen, in denen die DocumentIds des Dokuments eindeutig sind. + + + + + + + DocumentPartId + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentPartId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentPartId + + + STRING + + Ist das Dokument ein zusammengesetztes Dokument, können mit Hilfe dieser Eigenschaft eindeutige Dokumententeile IDs eingetragen werden, um das Document von den anderen Dokumenten zu unterscheiden. + + + + + + + DocumentClassification + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentClassification + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentClassification + + + + + Klassifikation des Dokuments. Es muss eine Klassifikation nach VDI 2770 erfolgen. Zusätzliche Klassifikationen sind möglich. + + + + + + + DocumentVersion + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Version des Dokuments + + DocumentVersion + + + + + Zu jedem Dokument muss eine Menge von mindestens einer Dokumentenversion existieren. Es können auch mehrere Dokumentenversionen ausgeliefert werden. + + + + + + + DocumentType + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentType + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentType + + + + + Festlegung des Typs des Dokuments im Sinne der DIN EN 82045-1: a) Single (Einzeldokument) b) Aggregate (Sammeldokument) c) DocumentSet (Dokumentensatz) d) CompoundDoc (Mischdokument) + + + + + + + ReferencedObject + http://iais.fraunhofer.de/en/aas/page1/Document/ReferencedObject + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + ReferencedObject + + + + + Liste von IDs für ein Objekt, auf das sich das Dokument bezieht. + + + + + + + DocumentIdDomainId + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId/DomainId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DomainId + + + STRING + + Kennung oder Kennzeichen einer Domäne, in der eine DocumentId eineindeutig ist. Es können bspw. Namen von Organisationen verwendet werden. Es sollten die Hinweise und Anforderungen zu Identifikationssystemen aus DIN EN 62507-1 (VDE 0040-2-1) beachtet werden. + + + + + + + DocumentIdType + http://iais.fraunhofer.de/en/aas/page1/Document/DocumentId/IdType + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + IdType + + + STRING + + Besitzt ein Dokument mehrere Identifikationsnummern, muss mit Hilfe dieser Eigenschaft die führende ID angegeben werden. Der Wert „Primary“ ist für diese ID zu setzen. + + + + + + + DocumentPartIdDescription + http://iais.fraunhofer.de/en/aas/page1/DocumentPartId/Description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Description + + + STRING + + Eine Beschreibung zur Dokumententeile ID. Da eine Sprachangabe nicht möglich ist, sollte die Sprache für dieses Metadatum vor der Lieferung abgestimmt werden + + + + + + + DocumentIdDomainParty + http://iais.fraunhofer.de/en/aas/page1/DocumentIdDomain/Party + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Party + + + + + Verweis auf eine Party, die für diese Domäne verantwortlich ist. + + + + + + + DocumentDomainId + http://iais.fraunhofer.de/en/aas/page1/DocumentIdDomain/DocumentDomainId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentDomainId + + + STRING + + Kennung oder Kennzeichen einer Domäne. + + + + + + + DocumentClassId + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentClassId + + + STRING + + Eindeutige ID der Klasse in einer Klassifikation. + + + + + + + DocumentClassName + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassName + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentClassName + + + STRING_TRANSLATABLE + + Liste von sprachabhängigen Namen zur ClassId. + + + + + + + DocumentClassificationSystem + http://iais.fraunhofer.de/en/aas/page1/DocumentClassification/ClassificationSystem + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Classification System + + DocumentClassificationSystem + + + STRING + + Eindeutige Kennung für ein Klassifikationssystem. Für Klassifikationen nach VDI 2770 muss "VDI2770:2018" verwenden werden. + + + + + + + DocumentVersionId + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/DocumentVersionId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + VersionId + + + + + + + Identifikationsnummer zur Dokumenten-version. Verweist ein Document auf diese Dokumentenversion, muss die Kombination aus DocumentId und DocumentVersionId eindeutig sein. + + + + + + + Language + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Language + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Language + + Language + + + STRING + + Eine Liste der im Dokument verwendeten Sprachen. + + + + + + + DocumentVersionParty + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Party + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionParty + + + + + Eine Liste von Beteiligten, die im (bisherigen) Lebenszyklus der DocumentVersion aktiv waren. Es muss mindestens eine Party angegeben werden, die die Role „Author“ einnimmt. + + + + + + + DocumentVersionDescription + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/Description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionDescription + + + + + Zusammenfassende Beschreibungen zur Dokumentenversion in ggf. unterschiedlichen Sprachen. Es ist möglich, bspw. zu einem deutschen Dokument eine englische Beschreibung (zusätzlich) anzugeben. + + + + + + + DocumentVersionLifeCycleStatus + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/LifeCycleStatus + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionLifeCycleStatus + + + + + Liste von Statusdefinitionen mit Bezug zum Dokumentenlebenszyklus. inkl. der Angabe der Beteiligten und einem zugehörigen Zeitstempel. + + + + + + + DocumentRelationship + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/DocumentRelationship + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationship + + + + + Liste von Beziehungen zu anderen Dokumenten. Es ist möglich, auf einen Doku-ment, ein Dokument in einer spezifischen Dokumentenversion oder auch ein Teildokument zu verweisen. + + + + + + + StoredDocumentRepresentation + + http://iais.fraunhofer.de/en/aas/page1/DocumentVersion/StoredDocumentRepresentation + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + StoredDocumentRepresentation + + + + + Liste von digitalen Repräsentationen zur DocumentVersion. + + + + + + + DocumentVersionId + http://iais.fraunhofer.de/en/aas/page1/DocumentVersionId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionId + + + STRING + + Verschiedene Versionen eines Dokuments müssen eindeutig identifizierbar sein. Die DocumentVersionId stellt eine innerhalb einer Domäne eindeutige Versionsidentifikationsnummer dar. + + + + + + + DocumentVersionDomainId + http://iais.fraunhofer.de/en/aas/page1/DocumentVersionId/DomainId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentVersionDomainId + + + STRING + + Eindeutige ID einer Domäne + + + + + + + LanguageCode + http://iais.fraunhofer.de/en/aas/page1/LanguageCode + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + LanguageCode + + + STRING + + Bezug auf eine Liste von Sprachcodes gemäß ISO 639-1 oder -2. + + + + + + + LifeCycleStatusParty + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/Party + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + LifeCycleStatusParty + + + + + Liste der Beteiligten. Im Falle einer Freigabe sollte die herausgebende Organisation als Party mit der Rolle „Author“ aufgelistet werden. + + + + + + + http://iais.fraunhofer.de/en/aas/page1/Party + + + + + Status + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/StatusValue + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + StatusValue + + + STRING + + Jede Dokumentenversion stellt einen Zeitpunkt im Dokumentenlebenszyklus dar. Dieser Statuswert bezieht sich auf die Meilensteine im Dokumentenlebenszyklus. Für die Anwendung dieser Richtlinie sind die beiden folgenden Status zu verwenden. a) InReview (in Prüfung) b) Released (freigegeben) + + + + + + + Date + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/SetDate + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + SetDate + + + DATE + + Datum und Uhrzeit, an dem der Status festgelegt wurde. Es muss das Datumsformat „YYYY-MM-dd“ verwendet werden (Y = Jahr, M = Monat, d = Tag, siehe ISO 8601). + + + + + + + LifeCycleStatusPurpose + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/Purpose + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + LifeCycleStatusPurpose + + + STRING + + Hier kann ein Zweck zum Meilenstein angegeben werden, z.B. "zur Weiterleitung an den Kunden". + + + + + + + BasedOnProcedure + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/BasedOnProcedure + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + BasedOnProcedure + + + STRING + + Textueller Bezug auf ein Verfahren, das der Festlegung dieses Status zugrunde liegt. + + + + + + + LifeCycleStatusComments + http://iais.fraunhofer.de/en/aas/page1/LifeCycleStatus/Comments + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + LifeCycleStatusComments + + + STRING + + Textuelle Bemerkungen und Anmerkungen zum Status + + + + + + + Description + http://iais.fraunhofer.de/en/aas/page1/Description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Description + + + + + Zu jeder DocumentVersion müssen Metadaten angegeben werden, die sich auf den Inhalt der Dokumentenversion beziehen. Eine solche Description beinhaltet die Angabe eines Titels, einer Zusammenfassung sowie einer Menge von Schlagworten. Alle Angaben der Description sind sprachabhängig. Bei mehrsprachigen Dokumentenversionen (siehe C1.8) sollten mehrere Descriptions in unterschiedlichen Sprachken-nungen angegeben werden. + + + + + + + Title + http://iais.fraunhofer.de/en/aas/page1/Description/Title + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Title + + Title + + + STRING_TRANSLATABLE + + Sprachabhängiger Titel des Dokuments. + + + + + + + Summary + http://iais.fraunhofer.de/en/aas/page1/Description/Summary + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + + + Summary + + STRING_TRANSLATABLE + + Sprachabhängige, aussagekräftige Zusammenfassung des Dokumenteninhalts. + + + + + + + Keywords + http://iais.fraunhofer.de/en/aas/page1/Description/Keywords + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Keywords + + + STRING + + Sprachabhängige, durch Komma getrennte Liste von Schlagwörtern. + + + + + + + Party + http://iais.fraunhofer.de/en/aas/page1/Party + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Party + + + + + Um Verantwortlichkeiten und Herausgeber der auszutauschenden digitalen Herstellerinformationen kenntlich zu machen, kann mit Hilfe der Informationsstruktur Organization ein Unternehmen oder eine sonstige juristische Person beschrieben werden. Auf die Angabe von Personen oder Adressen sollte verzichtet werden, sofern nicht anders vereinbart. + + + + + + + OrganizationId + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + OrganizationId + + + STRING + + Eine eindeutige ID für die Organisation. + + + + + + + OrganizationName + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationName + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + gebräuchliche Bezeichnung für Organisation + organization name + + OrganizationName + + + STRING + + Die gebräuchliche Bezeichnung für die Organisation. + + + + + + + OrganizationOfficialName + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationOfficialName + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + offizieller Name der Organisation + offical name of the organization + + OrganizationOfficialName + + + STRING + + Der offizielle Namen der Organisation. + + + + + + + 0173-1#02-AAO677#002 + + + + + DigitalFile + http://iais.fraunhofer.de/en/aas/page1/StoredDocumentRepresentation/DigitalFile + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DigitalFile + + + + + Eine Datei, die die DocumentVersion repräsentiert. Neben der obligatorischen PDF/A Datei können weitere Dateien angegeben werden. + + + + + + + FileId + http://iais.fraunhofer.de/en/aas/page1/DigitalFile/FileId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + FileId + + + STRING + + Eine eindeutige ID für die Datei. + + + + + + + FileName + http://iais.fraunhofer.de/en/aas/page1/DigitalFile/FileName + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + FileName + + + STRING + + Der Name der Datei inkl. einer Dateiendung (sofern vorhanden). + + + + + + + FileFormat + http://iais.fraunhofer.de/en/aas/page1/DigitalFile/FileFormat + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + FileFormat + + + STRING + + Angabe eines Media Typs gemäß der Liste der IANA2 + + + + + + + DocumentRelationshipDocumentId + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/DocumentId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipDocumentId + + + STRING + + Identifikationsnummer (DocumentId) eines Documents + + + + + + + DocumentRelationshipDocumentVersionId + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/DocumentVersionId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipDocumentVersionId + + + + + Zur vereinfachten Referenzierung erfolgt der Verweis auf die Ziel-DocumentVersion mit Hilfe einer DocumentVersionId. + + + + + + + DocumentRelationshipDocumentPartId + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/DocumentPartId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipDocumentPartId + + + + + Identifikationsnummer eines Dokumententei-les. + + + + + + + DocumentRelationshipType + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/Type + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipType + + + STRING + + Typisierung der Beziehung zwischen den bei-den DocumentVersions. Folgende Bezie-hungsarten können verwendet werden: a) Affecting (hat Auswirkungen auf) b) ReferesTo (bezieht sich auf) c) BasedOn (basiert auf) + + + + + + + DocumentRelationshipDescription + http://iais.fraunhofer.de/en/aas/page1/DocumentRelationship/Description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + DocumentRelationshipDescription + + + STRING + + Eine Erläuterung zur Beziehung. Da eine Sprachangabe nicht möglich ist, sollte die Sprache für dieses Metadatum vor der Liefe-rung abgestimmt werden. + + + + + + + DomainId + http://iais.fraunhofer.de/en/aas/page1/DomainId + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Domänen ID + + DomainId + + + [DIN EN 62507-1; VDE 0040-2-1:2011, 3.3, modifiziert – Anmerkung nicht übernommen] + + STRING + + Identifikationsnummer einer Domäne. + + + + + + + Author + + Wert aus der Aufzählung "Role" (einer Party) + + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/page1/draft/apr19/dt/Role/Author + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Autor + Author + + Author + + + STRING + + Author + Autor + + + + + + + Manufacturer + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/manufacturer + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Hersteller + Manufacturer + + Manufacturer + + + + + + STRING + + Hersteller + Manufacturer + + + + + + + wifi-connection + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/wifi-connection + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + wireless connectivity for bluetotth and network + Kabellose Verbindungsmöglichekeiten + + + + + + 0173-1#05-AAA650#002 + + + + STRING + + wifi + wifi + + + + + + + ethernet + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/ethernet + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + wired network-connectivity + kabelgebundene Netzwerkanbindung + + + + + + 0173-1#05-AAA899#002 + + + + STRING + + LAN + LAN + + + + + + + + length + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/length + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + length of the raspberry + Seitenlänge des Rapsbery Pis + + + mm + + + 0173-1#05-AAA179#002 + + + + FLOAT + + l [mm] + l [mm] + + + + + + + + width + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/width + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + width of the raspberry + Seitenbreite des Rapsbery Pis + + + mm + + + 0173-1#05-AAA189#002 + + + + FLOAT + + w [mm] + b [mm] + + + + + + + + height + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/heigth + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + heigth of the raspberry + Höhe des Rapsbery Pis + + + mm + + + 0173-1#05-AAA179#002 + + + + FLOAT + + h [mm] + h [mm] + + + + + + + + weigth + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/weight + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + weigth of the raspberry + Gewicht des Rapsbery Pis + + + g + + + 0173-1#05-AAA179#002 + + + + FLOAT + + w [g] + g [g] + + + + + + + + + power-in + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/power-in + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + input voltage and power + Eingangsspannung + Eingangsstromstärke + + + V/A + + + 0173-1#05-AAA690#002 + + + + STRING + + input voltage * input power = W + Spannung * Stromstaerke = Leistung + + + + + + + + os + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/os + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Operating system + Betriebssystem + + OS + + + + 0173-1#05-AAA677#002 + + + + STRING + + the low-level software that supports a computer's basic functions, such as scheduling tasks and controlling peripherals. + Ein Betriebssystem, auch OS (von englisch operating system) genannt, ist eine Zusammenstellung von Computerprogrammen, die die Systemressourcen eines Computers wie Arbeitsspeicher, Festplatten, Ein- und Ausgabegeräte verwaltet und diese Anwendungsprogrammen zur Verfügung stellt. + + + + + + + + + clockingSpeed + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/clockingSpeed + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + clocking speed + Taktfrequenz + + clockingSpeed + GHz + + + 0173-1#05-AAA571#002 + + + + FLOAT + + clocking speed of the processor (single-core) + Taktfreuqenz des Prozessors (single-core) + + + + + + + architecture + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/processorarchitecture + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + architecture + Architektur + + architecture + Bit + + + 0173-1#05-AAA521#002 + + + + INT + + architecure of the processor + architecture of the processor + + + + + + + socket + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/socket + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + processor socket + Prozessorsockel + + socket + + + + 0173-1#05-AAA531#002 + + + + STRING + + socket of the processor + Prozessorsockel + + + + + + + cpu + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/cpu + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + central processing unit + Hauptprozessor + + CPU + + + + 0173-1#05-AAA591#002 + + + + STRING + + central processing unit name + Name der Haupt-CPU + + + + + + + ram + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/ram + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + random access memory + Arbeitsspeicher + + RAM + GB + + + 0173-1#05-AAA571#002 + + + + INT + + Rndom Access Memory size + Groeße des Arbeitsspeichers + + + + + + + audio-output + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/audio-output + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + audio + audio + + AUDIO + + + + 0173-1#05-AAB623#002 + + + + STRING + + ADUIO output + AUDIO Ausgang + + + + + + + usb + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/usb + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Universal serial BUS + universeller serieller BUS + + USB + + + + 0173-1#05-AAA546#002 + + + + STRING + + universal seriabl bus of version 2 that supports half duplex. + USB der zweiten Generation unterstützt Halbduplex. + + + + + + + GPIO + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/gpio + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + GPIO-pins + GPIO-Pinne + + GPIO-Pins + Pins + + + 0173-1#05-AAA991#002 + + + + INT + + GPIO pins are for ... + GPIO Pinne dienen der Anbindung von ... + + + + + + + Manufacturer + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/manufacturer + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Manufacturer name + Herstellername + + + + + STRING + + legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation + Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist + + + + + + + http://iais.fraunhofer.de/en/aas/page1/Organization/OrganizationOfficialName + + + + + Brand + 0173-1#02-AAO742#002 + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Marke + Brand + + BRAND + + + STRING + + Part of the naming for the support and the recognition of the brand position of products and services consisting of words, numbers, letters or other characters. Registered brands and trademarks are indicated with the appropriate protective signs (® or TM) + aus Wörtern, Zahlen, Buchstaben oder weiteren Schriftzeichen bestehender Teil der Namensgebung zur Wiedererkennung und Unterstützung der Markenpositionierung von Produkten und Dienstleitungen. Eingetragene Marken und Schutzmarken sind mit der entsprechenden Schutzkennzeichnung (® oder TM) anzugeben + + + + + + + AdditionalLinkAddress + 0173-1#02-AAE670#003 + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + zusätzlicher Online-Verweis + additional link address + + + + + STRING_TRANSLATABLE + + site address where you can view information about the product or to communicate + Angabe einer Web-Adresse, die zusätzliche Informationen zum Produkt oder Kontaktdaten enthält + + + + + + + ProductType + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-type + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Product type description + Produkt-Typbezeichnung + d&eacute;csignation de type du produit + + + + + STRING_TRANSLATABLE + + Name der Produktfamilie oder Variante des Produktes + A product type can also be an abbreviation or coded type + + + + + + + ProductFamily + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-family + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Manufacturer product family + Herstellerproduktfamilie + + + + + STRING_TRANSLATABLE + + 2. Ebene einer 3 stufigen herstellerspezifischen Produkthierarchie + 2nd level of a 3 level manufacturer specific product hierarchy + + + + + + + ProductRoot + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-root + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Herstellerproduktstamm + Manufacturer product root + + + + + STRING_TRANSLATABLE + + Oberste Ebene einer 3 stufigen herstellerspezifischen Produkthierarchie + Top level of a 3 level manufacturer specific product hierarchy + + + + + + + ArticleNumber + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/article-number + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + SUP_PROD_NUM + + + STRING + + unique product order identifier of the supplier + eindeutiger Bestellschlüssel des Lieferanten + + + + + + + ProductDescription + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/product-description + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Herstellerproduktbeschreibung + Manufacturer product description + + + + + STRING_TRANSLATABLE + + Beschreibung des Produktes, seiner technischen Eigenschaften und ggf. seiner Anwendung (Langtext) + Description of the product, it's technical features and implementation if needed (long text) + + + + + + + SerialNumber + http://iais.fraunhofer.de/en/aas/examples/raspberrypimodelthreebplus/cd/serial-number + + + + http://www.admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360 + + + + + + Seriennummer + Serial number + + SerialNumber + + + STRING + + The SerialNumber Property is a unique production number of the manufacturer of the Device manufacturer. This is often stamped on the outside of the Device and may be used for traceability and warranty purposes. + + + + + + + \ No newline at end of file diff --git a/rml_mapping/mapping_examples/raspberry-mapping.xml b/rml_mapping/mapping_examples/raspberry-mapping.xml new file mode 100644 index 0000000..f9a11c5 --- /dev/null +++ b/rml_mapping/mapping_examples/raspberry-mapping.xml @@ -0,0 +1,531 @@ + + + + + AdditionalLinkAddress + + 0173-1#02-AAE670#003 + + + OrderNumber + 0173-1#02-AAO736#004 + + + + Brand + + + 0173-1#02-AAO742#002 + + + single board computer for education, microservices and all other imaginable purposes + RaspberryPiModel3B+ + + + + + RaspberryPiModel3B+ + http://iais.fraunhofer.de/en/aas/devices/rspbry/755003377 + + + + Documentation + + + + + Official magazine of the Raspberry Pi Organization (April 2018) (EN) + Product sheet for the Raspberry Pi 3b+ (EN) + 3 608 870 A47 + 3 6wqi wq w7 + 03-02 + 33-04 + Product sheet (EN) + Review and full Guide to get started (EN) + VDI2770:2018 + EN | 2018-04-01 + EN | 2018-09-25 + en-EN + 2018-04-01 + 2018-09-25 + Raspberry Foundation + Raspberry Maganzine + Raspberry Pi Foundation + /aasx/documents/product_sheet.pdf + /aasx/documents/review_and_guide.pdf + Document + ProductSheet + Review and Guide + + + + + + + + + built-in-speaker + 1.4 + ARM Cortex-A53 CPU + Gigabit Ethernet over USB 2.0 (max 300 Mbps). Power-over-Ethernet support (with separate PoE HAT). Improved PXE network and USB mass-storage booting. + 40 + 17 + 85 + Raspberian OS (UNIX based) + 5/2.5 DC + 64 + 2 + Broadcom BCM2837B0, Cortex-A53 (ARMv8) 64-bit SoC + 4*USB2 + 31 + 56 + Dual-band 802.11ac wireless LAN (2.4GHz and 5GHz ) and Bluetooth 4.2 + Einplatinencomputer + single board computer + TechnicalData + + + + http://iais.fraunhofer.de/en/aas/examples/raspberry_pi_3b_plus + + + + ArticleNumber + + + + + + Audioausgang + audio-output + audio-output + + + + + + Max. clocking speed of the processor [GHz] + Max. taktfrequenz des Prozessors [GHz] + clockingSpeed + + + + + + Zentrale Prozessoreinheit + central processing unit + cpu + + + + + + kabelgebundene Netzwerkanbindung + wired network-connectivity + ethernet + + + + + GPIO + gpio + GPIO + gpio + + + + + + height + + + + + length + + + + + Manufacturer + + + + + + BS + OS + os + + + + + + Power-In + power-in + + + + + Prozessorarchitektur [BIT] + architecture + + + + + + ProductDescription + + + + + ProductFamily + + + + + ProductRoot + + + + + ProductType + + + + + Arbeitsspeicher [GB] + Random Access Memory [GB] + ram + + + + + + SerialNumber + + + + + + Prozessorsockel + processor socket + socket + + + + + + Universeller serieller BUS :) + universal serial BUS + usb + usb-ports + + + + + + weight + weigth + + + + + width + + + + + kabellose Verbindungsmglichkeiten + wireless connectivity + wifi-connection + + + + Wert aus der Aufzhlung "Role" (einer Party) + Author + + + + + Description + + + + + Keywords + + + + + Summary + + + + + Title + title + + + + + FileFormat + + + + + FileId + + + + + FileName + + + + + DocumentClassification + + + + + + DocumentId + + + + + DocumentIdDomainId + + + + + DocumentIdType + + + + + DocumentIdDomain + + + + + DocumentPartId + + + + + DocumentType + + + + + ReferencedObject + + + + + + DocumentClassId + + + + + + DocumentClassName + + + + + + DocumentClassificationSystem + + + + + DocumentDomainId + + + + + DocumentIdDomainParty + + + + + DocumentPartIdDescription + + + + + DocumentRelationshipDescription + + + + + DocumentRelationshipDocumentId + + + + + DocumentRelationshipDocumentPartId + + + + + DocumentRelationshipDocumentVersionId + + + + + DocumentRelationshipType + + + + + + DocumentVersion + EN + + + + + DocumentVersionDescription + + + + + DocumentRelationship + + + + + + DocumentVersionId + + + + + + Language + + + + + DocumentVersionLifeCycleStatus + + + + + DocumentVersionParty + + + + + StoredDocumentRepresentation + + + + + DocumentVersionId + + + + + DocumentVersionDomainId + + + + + DomainId + + + + + LanguageCode + + + + + BasedOnProcedure + + + + + LifeCycleStatusComments + + + + + LifeCycleStatusParty + + + + + LifeCycleStatusPurpose + + + + + + Date + + + + + Status + + + + + OrganizationId + + + + + + OrganizationName + + + + + + OrganizationOfficialName + + + + + Party + + + + + DigitalFile + + + + + 0608842005 + Raspberry Pi + RSBRYPIMDL3BP-1234567898765432123456789 + Raspberry Pi Foundation + The most popular sigle-board-microcomputer and latest model from Raspberry (2019/04). + micro-computer (single-board) (EN) Mikrocomputer/Einplatinencomputer (DE) + sinlge-board-micro-computer (EN) + computer (EN) Computer (DE) + 12345678987654321234567898765432123456789 + AssetIdentification + + + \ No newline at end of file diff --git a/rml_mapping/raspberry-mapping.rml.ttl b/rml_mapping/raspberry-mapping.rml.ttl deleted file mode 100644 index 708a205..0000000 --- a/rml_mapping/raspberry-mapping.rml.ttl +++ /dev/null @@ -1,967 +0,0 @@ -@prefix tm: . -@prefix ls: . -@prefix owl: . -@prefix rdf: . -@prefix rdfs: . -@prefix xsd: . -@prefix dcterms: . -@prefix skos: . -@prefix sh: . -@prefix rml: . -@prefix ql: . -@prefix rr: . -@prefix rami: . - - - -_:AssetShellMap1 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='assetAdministrationShell'][identification/@idType = 'URI']" - ] ; - - # URI mapping of the asset - rr:subjectMap [ - rml:reference "identification" ; - rr:class rami:AdminShell - ] ; - - - # the name of the Asset is encoded by the idShort - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:label ] ; - rr:objectMap [ - rml:reference "idShort" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:comment ] ; - rr:objectMap [ - rml:reference "description/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # an asset shell can have an asset - rr:predicateObjectMap [ - rr:predicateMap [ - rr:constant rami:hasAsset ; - rr:termType rr:URI - ] ; - rr:objectMap [ rml:reference "assetRef/keys/key" ] - ] ; - - # submodels for the asset - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:hasSubmodel ] ; - rr:objectMap [ - rml:reference "submodelRefs/submodelRef/keys/key" ; - rr:termType rr:URI - ] - ] ; - - . - - -_:AssetShellMap1 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='assetAdministrationShell']" - ] ; - - # URI mapping of the asset - rr:subjectMap [ - rr:template "http://example.org/{identification[@idType!='URI']}" ; - rr:class rami:AssetShell - ] ; - - - # the name of the Asset is encoded by the idShort - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:label ] ; - rr:objectMap [ - rml:reference "idShort" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:comment ] ; - rr:objectMap [ - rml:reference "description/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # the ID - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:id ] ; - rr:objectMap [ - rml:reference "identification" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # an asset shell can have an asset - rr:predicateObjectMap [ - rr:predicateMap [ - rr:constant rami:hasAsset ; - rr:termType rr:URI - ] ; - rr:objectMap [ rml:reference "assetRef/keys/key" ] - ] ; - - # submodels for the asset - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:hasSubmodel ] ; - rr:objectMap [ - rml:reference "submodelRefs/submodelRef/keys/key" ; - rr:termType rr:URI - ] - ] ; - - # derived from another AAS - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:derivedFrom ] ; - rr:objectMap [ - rml:reference "derivedFrom/keys/key" ; - rr:termType rr:URI - ] - ] ; - - # derived from another AAS - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:derivedFrom ] ; - rr:objectMap [ - rml:reference "derivedFrom/keys/key" ; - #rr:termType rr:URI - ] - ] ; - - . - - - - - - -_:AssetMap a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='asset']" - ] ; - - # URI mapping of the asset - rr:subjectMap [ - rml:reference "identification" ; - rr:class rami:Asset - ] ; - - - # the name of the Asset is encoded by the idShort - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:label ] ; - rr:objectMap [ - rml:reference "idShort" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:comment ] ; - rr:objectMap [ - rml:reference "description/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # an asset can be of kind instance or type - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:hasKind ] ; - rr:objectMap [ rr:template "https://w3id.org/i40/rami#{kind}" ] - ] ; - - # submodels for the asset - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:hasSubmodel ] ; - rr:objectMap [ - rml:reference "assetIdentificationModelRef/keys/key" ; - rr:termType rr:URI - ] - ] - . - - - -# SubmodelMap -_:SubModelMap a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='submodel']" - ] ; - - # URI mapping of the SubModel - rr:subjectMap [ - rml:reference "identification" ; - rr:class rami:Submodel - ] ; - - - # the name of the SubModel is encoded by the idShort - rr:predicateObjectMap [ - rr:predicate rdfs:label ; - rr:objectMap [ - rml:reference "idShort" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicate rdfs:comment ; - rr:objectMap [ - rml:reference "description/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # an asset can be of kind instance or type - rr:predicateObjectMap [ - rr:predicate rami:hasKind ; - rr:objectMap [ rr:template "https://w3id.org/i40/rami#{kind}" ] - ] ; - - # SubmodelElementCollection for the submodel - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:submodelElementCollection ] ; - rr:objectMap [ - rml:reference "submodelElements/submodelElement/submodelElementCollection/semanticId/keys/key[@idType='URI']" ; - rr:termType rr:URI - ] - ] ; - - # SubmodelElementCollection for the submodel - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:submodelElementCollection ] ; - rr:objectMap [ - rr:template "http://example.org/{submodelElements/submodelElement/submodelElementCollection[semanticId/keys/key/@idType != 'URI']/idShort}" ; - rr:termType rr:URI - ] - ] ; - - . - - - - -# SubmodelElementCollectionMap -_:SubmodelElementCollectionMap1 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='submodelElementCollection']" - ] ; - - # URI mapping of the SubModel - rr:subjectMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - rr:class rami:SubmodelElementCollection - ] ; - - - # the name of the SubModel is encoded by the idShort - rr:predicateObjectMap [ - rr:predicate rdfs:label ; - rr:objectMap [ - rml:reference "idShort" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicate rdfs:comment ; - rr:objectMap [ - rml:reference "description/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - . - -# SubmodelElementCollectionMap -_:SubmodelElementCollectionMap2 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='submodelElementCollection'][semanticId/keys/key/@idType != 'URI']" - ] ; - - # URI mapping of the SubModel - rr:subjectMap [ - rr:template "http://example.org/{idShort}" ; - rr:class rami:SubmodelElementCollection - ] ; - - - # the name of the SubModel is encoded by the idShort - rr:predicateObjectMap [ - rr:predicate rdfs:label ; - rr:objectMap [ - rml:reference "idShort" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicate rdfs:comment ; - rr:objectMap [ - rml:reference "description/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicate rami:id ; - rr:objectMap [ - rml:reference "semanticId/keys/key" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - . - - - -# PropertyMap for predicates at property position -_:PropertyMap1 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='property']" - ] ; - - # URI mapping of the SubModel or SubModelElementColletction, not the property itself - rr:subjectMap [ - rml:reference "ancestor::submodel[not(submodelElements/submodelElement/submodelElementCollection)]/identification" ; - #rr:class rami:Submodel - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - rr:termType rr:URI - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] ; - - rr:predicateObjectMap [ - rr:predicateMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType='IRDI']}" ; - rr:termType rr:URI - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] - . - - -# PropertyMap for predicates at property position -_:PropertyMap2 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='property']" - ] ; - - # URI mapping of the SubModel, not the property - rr:subjectMap [ - rml:reference "ancestor::submodelElementCollection/semanticId/keys/key" ; - #rr:class rami:SubmodelElementCollection - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - rr:termType rr:URI - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] ; - - rr:predicateObjectMap [ - rr:predicateMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType='IRDI']}" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] - . - - - - -# PropertyMap for predicates at file position -_:PropertyMap3 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='file']" - ] ; - - # URI mapping of the SubModel, not the property - rr:subjectMap [ - rml:reference "../../../submodel/identification" ; - #rr:template "http://IEC61360.org/localFile#" ; - #rr:class rami:Submodel - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType='IRDI']}" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] - . - - - -# PropertyMap for predicates at file position -_:PropertyMap4 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='file']" - ] ; - - # URI mapping of the SubModel, not the property - rr:subjectMap [ - rml:reference "ancestor::submodelElementCollection/semanticId/keys/key[@idType='URI']" ; - #rr:class rami:SubmodelElementCollection - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType='IRDI']}" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] - . - - - -# PropertyMap for predicates at blob position -_:PropertyMap5 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='blob']" - ] ; - - # URI mapping of the SubModel, not the property - rr:subjectMap [ - rml:reference "ancestor::submodel[not(submodelElements/submodelElement/submodelElementCollection)]/identification" ; - #rr:template "http://IEC61360.org/localFile#" ; - #rr:class rami:Submodel - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType='IRDI']}" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] - . - - -# PropertyMap for predicates at file position -_:PropertyMap6 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='blob']" - ] ; - - # URI mapping of the SubModel, not the property - rr:subjectMap [ - rml:reference "ancestor::submodelElementCollection/semanticId/keys/key[@idType='URI']" ; - #rr:class rami:SubmodelElementCollection - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType='IRDI']}" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] - . - - -# PropertyMap for predicates at property position -_:PropertyMap7 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='property']" - ] ; - - # URI mapping of the SubmodelElementCollection, not the property directly - rr:subjectMap [ - rr:template "http://example.org/{ancestor::submodelElementCollection/semanticId/keys/key[@idType='IRDI']}" ; - #rr:class rami:SubmodelElementCollection - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - rr:termType rr:URI - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] ; - - rr:predicateObjectMap [ - rr:predicateMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType='IRDI']}" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] - . - - -# PropertyMap for files at property position -_:PropertyMap8 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='file']" - ] ; - - # URI mapping of the SubmodelElementCollection, not the property directly - rr:subjectMap [ - rr:template "http://example.org/{ancestor::submodelElementCollection/semanticId/keys/key[@idType='IRDI']}" ; - #rr:class rami:SubmodelElementCollection - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - rr:termType rr:URI - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] ; - - rr:predicateObjectMap [ - rr:predicateMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType='IRDI']}" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] - . - - -# PropertyMap for blobs at property position -_:PropertyMap9 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='blob']" - ] ; - - # URI mapping of the SubmodelElementCollection, not the property directly - rr:subjectMap [ - rr:template "http://example.org/{ancestor::submodelElementCollection/semanticId/keys/key[@idType='IRDI']}" ; - #rr:class rami:SubmodelElementCollection - ] ; - # SubmodelElements with aas:property - rr:predicateObjectMap [ - rr:predicateMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - rr:termType rr:URI - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] ; - - rr:predicateObjectMap [ - rr:predicateMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType='IRDI']}" ; - ] ; - rr:objectMap [ - rml:reference "value" ; - ] - - ] - . - - - - - - - - - - - - -# PropertyMap for properties at subject position -_:PropertyMapA a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='property']" - ] ; - - # URI mapping of the SubModel, not the property - rr:subjectMap [ - rml:reference "semanticId/keys/key[@idType='URI']" ; - rr:class rami:Property - ] ; - - # rdfs:label - rr:predicateObjectMap [ - rr:predicate rdfs:label ; - rr:objectMap [ rml:reference "idShort" ] - ] ; - - # rdfs:comment - rr:predicateObjectMap [ - rr:predicate rdfs:comment ; - rr:objectMap [ rml:reference "description/langString" ] - ] ; - . - - -# PropertyMap for properties at subject position -_:PropertyMapB a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='property']" - ] ; - rr:subjectMap [ - rr:template "http://example.org/{semanticId/keys/key[@idType != 'URI']}" ; - rr:class rami:Property - ] ; - - # rdfs:label - rr:predicateObjectMap [ - rr:predicate rdfs:label ; - rr:objectMap [ rml:reference "idShort" ] - ] ; - - # rdfs:comment - rr:predicateObjectMap [ - rr:predicate rdfs:comment ; - rr:objectMap [ rml:reference "description/langString" ] - ] ; - - # rami:id - rr:predicateObjectMap [ - rr:predicate rami:id ; - rr:objectMap [ rml:reference "semanticId/keys/key" ] - ] ; - . - - - - - - - - - - - - -# ConceptDescription -_:ConceptDescriptionMap1 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='conceptDescription']" - ] ; - - # URI mapping of the conceptDescription - rr:subjectMap [ - rml:reference "identification" ; - rr:class rami:ConceptDescription - ] ; - - - # the name of the Asset is encoded by the idShort - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:label ] ; - rr:objectMap [ - rml:reference "idShort" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:comment ] ; - rr:objectMap [ - rml:reference "description/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a ConceptDescription can have a DataSpecification - rr:predicateObjectMap [ - rr:predicateMap [ - rr:constant rami:hasDataSpecification ; - rr:termType rr:URI - ] ; - rr:objectMap [ rml:reference "embeddedDataSpecification/hasDataSpecification/keys/key[@idType='URI']" ; - rr:termType rr:URI - ] - ] ; - - # IEC61360 DataSpecification, reference only - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:hasDataSpecificationIEC61360 ] ; - rr:objectMap [ - rr:template "http://IEC61360.org/localFile#{embeddedDataSpecification/dataSpecificationContent/dataSpecificationIEC61360/shortName}" ; - #rr:termType rr:BlankNode - ] - ] ; - - . - - -# ConceptDescription -_:ConceptDescriptionMap2 a rr:TriplesMap ; - - # XML source file with xPath iterator - rml:logicalSource [ - rml:source "examples/RaspberryPiModel3B_plus.aas.xml" ; - rml:referenceFormulation ql:XPath ; - rml:iterator "//*[local-name()='conceptDescription']" - ] ; - - # URI mapping of the conceptDescription - rr:subjectMap [ - rr:template "http://example.org/{identification[@idType='IRDI']}" ; - rr:class rami:ConceptDescription - ] ; - - - # the name of the Asset is encoded by the idShort - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:label ] ; - rr:objectMap [ - rml:reference "idShort" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # the name of the Asset is encoded by the - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:label ] ; - rr:objectMap [ - rml:reference "dataSpecificationContent/dataSpecificationIEC61360/preferredName/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # the name of the Asset is encoded by the - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:label ] ; - rr:objectMap [ - rml:reference "dataSpecificationContent/dataSpecificationIEC61360/shortName" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:comment ] ; - rr:objectMap [ - rml:reference "description/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a description can be supplied - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rdfs:comment ] ; - rr:objectMap [ - rml:reference "dataSpecificationContent/dataSpecificationIEC61360/definition/langString" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:id ] ; - rr:objectMap [ - rml:reference "identification" ; - rr:termType rr:Literal ; - rr:datatype xsd:string - ] - ] ; - - # a ConceptDescription can have a DataSpecification - rr:predicateObjectMap [ - rr:predicateMap [ - rr:constant rami:hasDataSpecification ; - rr:termType rr:URI - ] ; - rr:objectMap [ rml:reference "embeddedDataSpecification/hasDataSpecification/keys/key[@idType='URI']" ; - rr:termType rr:URI - ] - ] ; - - # IEC61360 DataSpecification, reference only - rr:predicateObjectMap [ - rr:predicateMap [ rr:constant rami:hasDataSpecificationIEC61360 ] ; - rr:objectMap [ - rr:template "http://IEC61360.org/localFile#{embeddedDataSpecification/dataSpecificationContent/dataSpecificationIEC61360/shortName}" ; - #rr:termType rr:BlankNode - ] - ] ; - - . - \ No newline at end of file diff --git a/rml_mapping/rml.sh.ttl b/rml_mapping/rml.sh.ttl new file mode 100644 index 0000000..83ef9c1 --- /dev/null +++ b/rml_mapping/rml.sh.ttl @@ -0,0 +1,482 @@ +# RML Shapes copied from https://github.com/carml/carml/ + +@prefix rdf: . +@prefix rdfs: . +@prefix sh: . +@prefix xsd: . + +@prefix rr: . +@prefix rml: . +@prefix fnml: . +@prefix fno: . + +@prefix carml: . + +@prefix rmlsh: . + +rmlsh: + rdfs:label "SHACL for RML"@en ; + rdfs:comment "This shapes graph can be used to validate RML mapping graphs."@en ; + sh:declare [ + sh:prefix "rmlsh" ; + sh:namespace "http://www.taxonic.com/ns/rml-shacl#" ; + ] ; +. + +rmlsh:TriplesMapShape + a sh:NodeShape ; + rdfs:label "Triples map shape"@en ; + rdfs:comment "Defines constraints for a well-formed triples map."@en ; + sh:message "TriplesMap is ill-formed." ; + + sh:targetClass rr:TriplesMap ; + sh:targetSubjectsOf + rr:logicalTable, + rml:logicalSource, + rr:subject, + rr:subjectMap ; + + sh:property [ + sh:message "Triples map should have one and only one logical source." ; + sh:path rml:logicalSource ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + + sh:xone ( + [ + sh:property [ + sh:path rr:subjectMap ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ] + [ + sh:property [ + sh:path rr:subject ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ] + ) ; +. + +rmlsh:TermMapShape + a sh:NodeShape ; + rdfs:label "Term map shape"@en ; + rdfs:comment "Defines constraints for a well-formed term map."@en ; + sh:message "Term map is ill-formed." ; + + # NOTE: We don't target object maps directly, because not all object maps are term maps; + # the range for `rr:objectMap` is `rr:ObjectMap` or `rr:RefObjectMap` + + sh:targetObjectsOf + rr:subjectMap , + rr:predicateMap , + rr:graphMap ; + + sh:targetClass + rr:SubjectMap , + rr:PredicateMap , + rr:GraphMap ; + + sh:targetSubjectsOf + rr:constant , + rml:reference , + rr:template , + rr:termType , + fnml:functionValue ; + + sh:xone ( + [ + sh:property [ + sh:path rr:constant ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ] + [ + sh:property [ + sh:path rml:reference ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ] + [ + sh:property [ + sh:path rr:template ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ] + [ + sh:property [ + sh:path fnml:functionValue ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ] + [ + sh:property [ + sh:path carml:multiReference ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ] + [ + sh:property [ + sh:path carml:multiTemplate ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ] + [ + sh:property [ + sh:path carml:multiFunctionValue ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ] + ) ; +. + +rmlsh:TermMapTermTypeShape + a sh:NodeShape ; + sh:targetSubjectsOf rr:termType ; + sh:property [ + sh:message "Term map may have at most one value for rr:termType." ; + sh:path rr:termType ; + sh:maxCount 1 ; + ] +. + +rmlsh:ObjectOrRefObjectMapShape + a sh:NodeShape ; + # TODO: PM: could we not use sh:targetObjectsOf? + sh:targetSubjectsOf rr:objectMap ; + + sh:xone ( + [ + sh:property [ + sh:path rr:objectMap ; + sh:node rmlsh:TermMapShape, rmlsh:ObjectMapShape ; + ] + ] + [ + sh:property [ + sh:path rr:objectMap ; + sh:node rmlsh:RefObjectMapShape ; + ] + ] + ) ; +. + +rmlsh:SubjectMapShape + a sh:NodeShape ; + rdfs:label "Subject map shape"@en ; + rdfs:comment "Defines constraints for a well-formed subject map."@en ; + sh:message "Subject map is ill-formed" ; + + sh:targetObjectsOf rr:subjectMap ; + sh:targetClass rr:SubjectMap ; + + sh:property + [ + sh:message "Value for rr:termType on subject map should be rr:IRI or rr:BlankNode." ; + sh:path rr:termType ; + sh:in ( rr:IRI rr:BlankNode ) ; + ] , + [ + sh:message "Value of rr:class in subject map should be an IRI" ; + sh:path rr:class ; + sh:nodeKind sh:IRI ; + ] ; +. + +rmlsh:ObjectMapShape + a sh:NodeShape ; + rdfs:label "Object map shape"@en ; + rdfs:comment "Defines constraints for a well-formed object map."@en ; + sh:message "Object map is ill-formed" ; + + sh:property [ + sh:message "Value for rr:termType on subject map should be rr:IRI or rr:BlankNode or rr:Literal." ; + sh:path rr:termType ; + sh:in ( rr:IRI rr:BlankNode rr:Literal ) ; + ] ; + + # @INCOMPLETE + # sh:xone ( + # [ + # sh:property [ + # sh:path rr:termType ; + # sh:in (rr:IRI rr:BlankNode) + # ] + # ] + # [ + # sh:property [ + # sh:path rr:termType ; + # sh:maxCount 0 ; + # ] + # ] + # [ + # sh:property [ + # sh:path rr:datatype ; + # sh:minCount 1 ; + # sh:nodeKind sh:IRI ; + # ] + # ] + # [ + # sh:property [ + # sh:path rr:datatype ; + # sh:minCount 1 ; + # sh:nodeKind sh:IRI ; + # ] + # ] + # ) +. + +rmlsh:RefObjectMapShape + a sh:NodeShape ; + rdfs:label "Ref object map shape"@en ; + rdfs:comment "Defines constraints for a well-formed ref object map."@en ; + sh:message "Referencing object map is ill-formed" ; + + sh:targetClass rr:RefObjectMap ; + sh:targetSubjectsOf rr:parentTriplesMap, rr:joinCondition, carml:multiJoinCondition ; + sh:targetObjectsOf rr:refObjectMap ; + + sh:property + [ + sh:message "Referencing object map should have one and only one parent triples map." ; + sh:path rr:parentTriplesMap ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] , + [ + sh:message "Value of rr:parentTriplesMap op referencing object map should be rr:IRI." ; + sh:path rr:parentTriplesMap ; + sh:nodeKind sh:IRI ; + ] ; +. + +rmlsh:PredicateMapShape + a sh:NodeShape ; + rdfs:label "Predicate map shape"@en ; + rdfs:comment "Defines constraints for a well-formed predicate map."@en ; + sh:message "Predicate map is ill-formed" ; + + sh:targetObjectsOf rr:predicateMap ; + + sh:property [ + sh:message "Value for rr:termType on predicate map should be rr:IRI." ; + sh:path rr:termType ; + sh:in ( rr:IRI ) ; + ] ; +. + +rmlsh:PredicateObjectMapShape + a sh:NodeShape ; + rdfs:label "Predicate object map shape"@en ; + rdfs:comment "Defines constraints for a well-formed predicate object map."@en ; + sh:message "Predicate object map is ill-formed" ; + + sh:targetSubjectsOf rr:predicate, rr:predicateMap, rr:object, rr:objectMap ; + sh:targetObjectsOf rr:predicateObjectMap ; + sh:targetClass rr:PredicateObjectMap ; + + sh:property + [ + sh:message "Predicate object map should have at least one predicate map." ; + sh:path [ + sh:alternativePath (rr:predicate rr:predicateMap) ; + ] ; + sh:minCount 1 ; + ] , + [ + sh:message "Predicate object map should have at least one object map." ; + sh:path [ + sh:alternativePath (rr:object rr:objectMap) ; + ] ; + sh:minCount 1 ; + ] ; +. + +rmlsh:BaseSourceShape + a sh:NodeShape ; + rdfs:label "Base source shape"@en ; + rdfs:comment "Defines constraints for a well-formed base source."@en ; +. + +rmlsh:LogicalSourceShape + a sh:NodeShape ; + rdfs:label "Logical source shape"@en ; + rdfs:comment "Defines constraints for a well-formed logical source."@en ; + sh:message "Logical source is ill-formed" ; + + sh:targetClass rml:LogicalSource ; + sh:targetObjectsOf rml:logicalSource ; + sh:targetSubjectsOf rml:source ; + + # @NOTE: The iterator and referenceFormulation could be required, based on the rml:source. These + # constraints will be checked at run time, and will cause a run time error when violated. + sh:property + [ + sh:message "LogicalSource should have one and only one source." ; + sh:path rml:source ; + sh:minCount 1; + sh:maxCount 1; + ] , + [ + sh:message "Logical source's source should be either a source location string or a valid carml stream description" ; + sh:path rml:source ; + sh:or ( + [ + sh:nodeKind sh:Literal ; + sh:datatype xsd:string ; + ] + + [ + sh:node rmlsh:CarmlStreamShape ; + ] + ) + ] , + [ + sh:message "LogicalSource should have at most one iterator." ; + sh:path rml:iterator ; + sh:maxCount 1; + ] , + [ + sh:message "LogicalSource should have at most one reference formulation." ; + sh:path rml:referenceFormulation ; + sh:maxCount 1 ; + + # @NOTE: The namespace sets the range to `rml:ReferenceFormulation`, but in practice, this + # class does not have any special characteristic. From a practical perspective, it + # seems useful to allow any IRI. + sh:nodeKind sh:IRI ; + ] ; +. + +rmlsh:CarmlStreamShape + a sh:NodeShape ; + sh:targetClass carml:Stream ; + sh:message "Carml stream is ill-formed." ; + sh:property + [ + sh:path rdf:type ; + sh:minCount 1 ; + sh:hasValue carml:Stream ; + ] , + [ + sh:message "Carlm stream can have at most one stream name."; + sh:path carml:streamName ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:datatype xsd:string ; + ] ; +. + +# rmlsh:ReferenceFormulationShape +# a sh:NodeShape ; +# rdfs:label "Reference formulation shape"@en ; +# rdfs:comment "Defines constraints for a well-formed reference formulation."@en; +# . + +rmlsh:GraphMapShape + a sh:NodeShape ; + rdfs:label "Graph map shape"@en ; + rdfs:comment "Defines constraints for a well-formed graph map."@en ; + sh:message "Graph map is ill-formed" ; + + sh:targetClass rr:GraphMap ; + sh:targetObjectsOf rr:graphMap ; + + sh:property [ + sh:message "Value for rr:termType on graph map should be rr:IRI." ; + sh:path rr:termType ; + sh:in ( rr:IRI ) ; + ] ; +. + +rmlsh:JoinShape + a sh:NodeShape ; + rdfs:label "Join shape"@en ; + rdfs:comment "Defines constraints for a well-formed join "@en ; + sh:message "Join is ill-formed" ; + + sh:targetClass rr:Join ; + sh:targetSubjectsOf rr:parent, rr:child ; + sh:targetObjectsOf rr:joinCondition ; + + sh:property + [ + sh:message "Join should have one and only one child." ; + sh:path rr:child ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] , + [ + sh:message "Value of child in join should be a literal value." ; + sh:path rr:child ; + sh:nodeKind sh:Literal ; + ] , + [ + sh:message "Join should have one and only one parent." ; + sh:path rr:parent ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] , + [ + sh:message "Join should have at least one parent." ; + sh:path rr:parent ; + sh:nodeKind sh:Literal ; + ] ; +. + +rmlsh:ConstantSubjectPredicateOrGraphShape + a sh:PropertyShape ; + rdfs:label "Constant value shape for subject, predicate or graph mappings"@en ; + rdfs:comment "Defines constraints for a well-formed constant value for a subject, predicate or graph mapping."@en ; + sh:message "A triple with an RML shorthand constant as predicate should have an IRI in the object position." ; + + sh:path rr:constant, rr:subject, rr:predicate, rr:graph ; + sh:nodeKind sh:IRI ; +. + +rmlsh:ConstantObjectShape + a sh:PropertyShape ; + rdfs:label "Constant value shape for object mappings"@en ; + rdfs:comment "Defines constraints for a well-formed constant value for an object mapping."@en ; + sh:message "Constant value for object mapping is ill-formed" ; + + sh:targetObjectsOf rr:object ; + + sh:xone ( [ sh:nodeKind sh:IRI ; ] [ sh:nodeKind sh:literal ] ) +. + +rmlsh:FunctionTermMapShape + a sh:NodeShape ; + sh:targetObjectsOf fnml:functionValue ; + sh:message "Functional term map is ill-formed." ; + sh:property [ + sh:message "Functional term map should have one and only one function executing predicate object map." ; + sh:path rr:predicateObjectMap ; + sh:qualifiedMinCount 1 ; + sh:qualifiedMaxCount 1 ; + sh:qualifiedValueShape rmlsh:FunctionExecutionPOM ; + ]; +. + +rmlsh:FunctionExecutionPOM + sh:or ( + [ + sh:path rr:predicate ; + sh:hasValue fno:executes ; + ] + [ + sh:path (rr:predicateMap rr:constant ) ; + sh:hasValue fno:executes ; + ] + ) ; +. diff --git a/rml_mapping/run_mapping.sh b/rml_mapping/run_mapping.sh new file mode 100644 index 0000000..930aee9 --- /dev/null +++ b/rml_mapping/run_mapping.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +SUFFIX=.rml.ttl +INPUT=$1 +FILE=${INPUT%"$SUFFIX"} + + + +#--------------- Turtle Mapping ------------------- +STARTTIME=$(date +%s%N) + +java -jar rmlmapper-4.3.3-r95.jar -m $1 -s turtle -o "examples/"$FILE".ttl" + +ENDTIME=$(date +%s%N) +TIME_TTL=$((($ENDTIME - $STARTTIME)/1000000)) + +echo 'Turtle mapping took an average of ' $TIME_TTL + + +#--------------- NQuad Mapping ------------------- +STARTTIME=$(date +%s%N) + +java -jar rmlmapper-4.3.3-r95.jar -v -m $1 -s nquads -o $FILE".nq" + +ENDTIME=$(date +%s%N) +TIME_NQ=$((($ENDTIME - $STARTTIME)/1000000)) + +echo 'NQuad mapping took an average of ' $TIME_NQ + +#--------------- JSON-LD Mapping ------------------- +STARTTIME=$(date +%s%N) + +java -jar rmlmapper-4.3.3-r95.jar -m $1 -s jsonld -o "examples/"$FILE".jsonld" + +ENDTIME=$(date +%s%N) +TIME_JSON=$((($ENDTIME - $STARTTIME)/1000000)) + +echo 'JSON-LD mapping took an average of ' $TIME_JSON diff --git a/schema/AAS-Shape.ttl b/schema/AAS-Shape.ttl index 572cc48..9386aa2 100644 --- a/schema/AAS-Shape.ttl +++ b/schema/AAS-Shape.ttl @@ -4,7 +4,7 @@ @prefix sh: . @prefix xsd: . @prefix dcterms: . -@prefix rami: . +@prefix aas: . # author: Sebastian Bader (sebastian.bader@iais.fraunhofer.de) @@ -16,7 +16,7 @@ <#AasShape> a sh:NodeShape ; - sh:targetClass rami:AdminShell ; + sh:targetClass aas:AssetAdministrationShell ; sh:property [ sh:path rdf:type ; sh:minCount 1 ; # this statement is redundant as each instance of type ids:Rule has at least one class relation (type). @@ -27,50 +27,50 @@ sh:message "Each AAS object must be a URI."@en ; ] ; sh:property [ - sh:path rami:derivedFrom ; - sh:class rami:AdminShell ; + sh:path aas:derivedFrom ; + sh:class aas:AssetAdministrationShell ; sh:minCount 0 ; sh:maxCount 1 ; sh:severity sh:Violation ; sh:message "Each AAS must be derived from either exactly 1 or none other AAS."@en ; ] ; sh:property [ - sh:path rami:security ; - sh:class rami:Security ; + sh:path aas:security ; + sh:class aas:Security ; sh:minCount 1 ; sh:maxCount 1 ; sh:severity sh:Violation ; sh:message "Each AAS must be related to exactly one Security element through the security relation."@en ; ] ; sh:property [ - sh:path rami:asset ; - sh:class rami:Asset ; + sh:path aas:asset ; + sh:class aas:Asset ; sh:minCount 1 ; sh:maxCount 1 ; sh:severity sh:Violation ; sh:message "Each AAS must be related to exactly one Asset through the asset relation."@en ; ] ; # sh:property [ - # sh:path rami:hasSubmodel ; - # sh:class rami:Submodel ; + # sh:path aas:hasSubmodel ; + # sh:class aas:Submodel ; # sh:minCount 0 ; # #sh:message ""@en ; # ] ; #otherwise the property is redundant, because it inherits also from DataSpecification sh:property [ - sh:path rami:conceptDescription ; - sh:class rami:ConceptDescription ; + sh:path aas:conceptDescription ; + sh:class aas:ConceptDescription ; sh:minCount 0 ; #sh:message ""@en ; ] ; sh:property [ - sh:path rami:hasView ; - sh:class rami:View ; + sh:path aas:hasView ; + sh:class aas:View ; sh:minCount 0 ; #Perhaps sh:minCount has to be 1 (see "AAS in detail", p. 65 Figure 33) #sh:message ""@en ; ] ; sh:property [ - sh:path rami:hasKind ; - sh:class rami:AssetKind ; + sh:path aas:hasKind ; + sh:class aas:AssetKind ; sh:minCount 1 ; sh:maxCount 1 ; sh:severity sh:Violation ; @@ -82,21 +82,21 @@ ] ; # AAS inherits from Identifiable sh:property [ - sh:path rami:administration ; + sh:path aas:administration ; sh:minCount 0 ; sh:maxCount 1 ; - sh:class rami:AdministrativeInformation ; + sh:class aas:AdministrativeInformation ; sh:severity sh:Violation ; sh:message ""@en ; ] ; sh:property [ - sh:path rami:id ; + sh:path aas:id ; sh:minCount 0 ; - sh:message "An identifiable entity can have a rami:id."@en ; + sh:message "An identifiable entity can have a aas:id."@en ; ] ; # Identifiable inherits from Referable sh:property [ - sh:path rami:idShort ; + sh:path aas:idShort ; sh:valueDatatype xsd:string ; sh:minCount 0 ; sh:maxCount 1 ; @@ -105,7 +105,7 @@ ] ; sh:property [ - sh:path rami:category ; + sh:path aas:category ; sh:valueDatatype xsd:string ; sh:minCount 0 ; sh:maxCount 1 ; @@ -114,7 +114,7 @@ ] ; sh:property [ - sh:path rami:description ; + sh:path aas:description ; sh:valueDatatype xsd:langString ; sh:minCount 0 ; sh:maxCount 1 ; @@ -123,8 +123,8 @@ ] ; sh:property [ - sh:path rami:parent ; - sh:class rami:Referable ; + sh:path aas:parent ; + sh:class aas:Referable ; sh:minCount 0 ; sh:maxCount 1 ; sh:severity sh:violation ; @@ -134,16 +134,16 @@ # AAS inherits from DataSpecification sh:property [ - sh:path rami:hasDataSpecification ; - sh:class rami:Reference ; + sh:path aas:hasDataSpecification ; + sh:class aas:Reference ; sh:minCount 0 ; sh:nodeKind sh:IRI ; # class Reference is not part of the ontology sh:severity sh:Violation ; - sh:message "rami:hasDataSpecification must point to a proper URI."@en ; + sh:message "aas:hasDataSpecification must point to a proper URI."@en ; ] ; sh:property [ - sh:path rami:hasSubmodel ; - sh:class rami:Submodel ; + sh:path aas:hasSubmodel ; + sh:class aas:Submodel ; sh:minCount 0 ; - sh:message "A DataSpecification entity can have a rami:hasSubmodel relation to a rami:Submodel."@en ; + sh:message "A DataSpecification entity can have a aas:hasSubmodel relation to a aas:Submodel."@en ; ] . \ No newline at end of file diff --git a/schema/AssetShape.ttl b/schema/AssetShape.ttl index 06b1a4d..124be16 100644 --- a/schema/AssetShape.ttl +++ b/schema/AssetShape.ttl @@ -4,7 +4,7 @@ @prefix sh: . @prefix xsd: . @prefix dcterms: . -@prefix rami: . +@prefix aas: . # author: Sebastian Bader (sebastian.bader@iais.fraunhofer.de) @@ -16,7 +16,7 @@ <#AssetShape> a sh:NodeShape ; - sh:targetClass rami:Asset ; + sh:targetClass aas:Asset ; sh:property [ sh:path rdf:type ; sh:minCount 1 ; # this statement is redundant as each instance of type ids:Rule has at least one class relation (type). diff --git a/schema/PropertyShape.ttl b/schema/PropertyShape.ttl index 37cd2fa..06ef7c8 100644 --- a/schema/PropertyShape.ttl +++ b/schema/PropertyShape.ttl @@ -9,13 +9,8 @@ <#RamiPropertyShape> a sh:PropertyShape ; -<<<<<<< HEAD - sh:path rami:property ; - sh:datatype xsd:string ; -======= sh:path rami:property ; sh:datatype xsd:string ; ->>>>>>> details_of_the_AAS_1.1 sh:minCount 0 ; sh:maxCount 1 ; @@ -32,16 +27,6 @@ sh:class rami:Reference ; sh:minCount 0 ; sh:maxCount 1 ; -<<<<<<< HEAD - sh:message "refers to the global unique identifier"@en - ] ; - - ################################# - - # inherits from DataElement (and DataElement inherits from SubmodelElement - # (SubmodelElements inherits from: - # HasDataSpecification; Referable; Qualifiable; HasSemantics; HasKind)) -======= sh:severity sh:Violation ; sh:message "rami:valueID refers to the global unique identifier and needs to be instance of rami:Reference."@en ] ; @@ -51,7 +36,6 @@ # (SubmodelElements inherits from: # HasDataSpecification; Referable; Qualifiable; HasSemantics; HasKind)) ################################## ->>>>>>> details_of_the_AAS_1.1 # DataSpecification: sh:property [ @@ -71,7 +55,6 @@ # Referable: sh:property [ -<<<<<<< HEAD sh:path rami:administration ; sh:minCount 0 ; sh:maxCount 1 ; @@ -80,7 +63,7 @@ sh:message ""@en ; ] ; -======= + sh:property [ sh:path rami:idShort ; sh:valueDatatype xsd:string ; sh:minCount 0 ; @@ -115,18 +98,13 @@ sh:severity sh:violation ; sh:message "..."@en ; ] ; - - ->>>>>>> details_of_the_AAS_1.1 + + # Qualifiable: sh:constraint [ sh:nodeKind sh:IRI ; sh:message "Each rami object must be a URI."@en ; -<<<<<<< HEAD ] ; -======= - ] ; ->>>>>>> details_of_the_AAS_1.1 sh:property [ sh:path rami:qualifier ; @@ -139,16 +117,6 @@ ] ; # HasSemantics: -<<<<<<< HEAD - sh:property [ - sh:path rami:semanticId ; - sh:nodeKind sh:URI ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:severity sh:Violation ; - sh:message "Every submodel element needs exactly one semantic definition (semanticId in HasSemantics)"@en ; - ] ; -======= # sh:property [ # sh:path rami:semanticId ; # sh:nodeKind sh:URI ; @@ -160,23 +128,12 @@ ######################################### # semanticID is specified by RDF itself # ######################################### ->>>>>>> details_of_the_AAS_1.1 # HasKind: sh:property [ sh:path rami:hasKind ; sh:minCount 0 ; sh:maxCount 1 ; -<<<<<<< HEAD - sh:someOf [ - sh:constraint [ - sh:nodeKind sh:Type ; - ] ; - sh:constraint [ - sh:nodeKind rami:Instance ; - ] ; - ] ; -======= sh:someOf [ sh:constraint [ sh:nodeKind sh:Type ; @@ -185,7 +142,6 @@ sh:nodeKind rami:Instance ; ] ; ] ; ->>>>>>> details_of_the_AAS_1.1 sh:severity sh:Violation ; sh:message "rami:hasKind must be either a rami:Instance or a rami:Type ."@en ; - ] . \ No newline at end of file + ] . diff --git a/schema/SubmodelShape.ttl b/schema/SubmodelShape.ttl index 7a05ede..c0a3df4 100644 --- a/schema/SubmodelShape.ttl +++ b/schema/SubmodelShape.ttl @@ -4,7 +4,7 @@ @prefix sh: . @prefix xsd: . @prefix dcterms: . -@prefix rami: . +@prefix aas: . # author: Sebastian Bader (sebastian.bader@iais.fraunhofer.de) @@ -16,9 +16,9 @@ <#SubmodelShape> a sh:NodeShape ; - sh:targetClass rami:Submodel ; + sh:targetClass aas:Submodel ; sh:property [ - sh:path rami:type ; + sh:path aas:type ; sh:minCount 1 ; # this statement is redundant as each instance of type ids:Rule has at least one class relation (type). #sh:message ""@en ; ] ; @@ -33,11 +33,11 @@ ] ; sh:property [ - sh:path rami:hasSubmodelElement ; # TODO: Add to RAMI.ttl - sh:class rami:SubmodelElement ; + sh:path aas:hasSubmodelElement ; # TODO: Add to RAMI.ttl + sh:class aas:SubmodelElement ; sh:minCount 0 ; sh:severity sh:Violation ; - sh:message "content of Submodel is stored in rami:SubmodelElement" ; + sh:message "content of Submodel is stored in aas:SubmodelElement" ; ] ; # Submodel inherits from HasSemantics @@ -45,46 +45,46 @@ # Submodel inherits from Qualifiable sh:property [ - sh:path rami:qualifier ; + sh:path aas:qualifier ; sh:minCount 0 ; sh:constraint [ sh:nodeKind sh:URI ; # Contraints are not part of the ontology ] ; sh:severity sh:Violation ; - sh:message "rami:qualifier must be point to a proper URI."@en ; + sh:message "aas:qualifier must be point to a proper URI."@en ; ] ; # Submodel inherits from Identifiable sh:property [ - sh:path rami:administration ; + sh:path aas:administration ; sh:minCount 0 ; sh:maxCount 1 ; - sh:class rami:AdministrativeInformation ; + sh:class aas:AdministrativeInformation ; sh:severity sh:Violation ; sh:message ""@en ; ] ; sh:property [ - sh:path rami:id ; + sh:path aas:id ; sh:minCount 0 ; - sh:message "An identifiable entity can have a rami:id."@en ; + sh:message "An identifiable entity can have a aas:id."@en ; ] ; # Submodel inherits from DataSpecification sh:property [ - sh:path rami:hasDataSpecification ; + sh:path aas:hasDataSpecification ; sh:minCount 0 ; - sh:class rami:Reference ; + sh:class aas:Reference ; sh:nodeKind sh:IRI ; # class Reference is not part of the ontology sh:severity sh:Violation ; - sh:message "rami:hasDataSpecification must point to a proper URI."@en ; + sh:message "aas:hasDataSpecification must point to a proper URI."@en ; ] ; sh:property [ - sh:path rami:hasSubmodel ; - sh:class rami:Submodel ; + sh:path aas:hasSubmodel ; + sh:class aas:Submodel ; sh:minCount 0 ; - sh:message "A DataSpecification entity can have a rami:hasSubmodel relation to a rami:Submodel."@en ; + sh:message "A DataSpecification entity can have a aas:hasSubmodel relation to a aas:Submodel."@en ; ] ; # Submodel inherits from HasKind sh:property [ - sh:path rami:hasKind ; + sh:path aas:hasKind ; sh:minCount 0 ; sh:maxCount 1 ; sh:someOf [ @@ -92,9 +92,9 @@ sh:nodeKind sh:Type ; ] ; sh:constraint [ - sh:nodeKind rami:Instance ; + sh:nodeKind aas:Instance ; ] ; ] ; sh:severity sh:Violation ; - sh:message "rami:hasKind must be either a rami:Instance or a rami:Type ."@en ; + sh:message "aas:hasKind must be either a aas:Instance or a aas:Type ."@en ; ] . \ No newline at end of file