From 1ff59b2126a4e9031d9886ceff7b261992d33e5b Mon Sep 17 00:00:00 2001 From: Bader Date: Wed, 21 Aug 2019 11:30:57 +0200 Subject: [PATCH 1/9] bug fixes in the mappings --- rml_mapping/AAS-to-SAAS-mapping.rml.ttl | 2 +- rml_mapping/raspberry-mapping.rml.ttl | 2 +- schema/PropertyShape.ttl | 52 ++----------------------- 3 files changed, 6 insertions(+), 50 deletions(-) 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/raspberry-mapping.rml.ttl b/rml_mapping/raspberry-mapping.rml.ttl index 708a205..34af3ea 100644 --- a/rml_mapping/raspberry-mapping.rml.ttl +++ b/rml_mapping/raspberry-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/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 + ] . From c61e9543acb7dcbdc14022ba2129da9be1be1886 Mon Sep 17 00:00:00 2001 From: Bader Date: Thu, 5 Sep 2019 15:00:43 +0200 Subject: [PATCH 2/9] renaming main turtle to admin-shell-io.ttl and minor fixes --- .../Raspberry_Pi_3b_plus/[Content_Types].xml | 1 + ..._aas_examples_raspberry_pi_3b_plus.aas.xml | 2915 +++++++++++++++++ admin-shell-io.ttl | 924 ++++++ .../RaspberryPiModel3B_plus.aas.xml | 2915 +++++++++++++++++ .../mapping_examples/raspberry-mapping.xml | 531 +++ 5 files changed, 7286 insertions(+) create mode 100644 AssetAdministrationShell_examples/Raspberry_Pi_3b_plus/[Content_Types].xml create mode 100644 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 create mode 100644 admin-shell-io.ttl create mode 100644 rml_mapping/mapping_examples/RaspberryPiModel3B_plus.aas.xml create mode 100644 rml_mapping/mapping_examples/raspberry-mapping.xml 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/admin-shell-io.ttl b/admin-shell-io.ttl new file mode 100644 index 0000000..6696019 --- /dev/null +++ b/admin-shell-io.ttl @@ -0,0 +1,924 @@ +@prefix rdf: . +@prefix rdfs: . +@prefix owl: . +@prefix xml: . +@prefix xsd: . +@prefix dul: . +@prefix skos: . +@prefix vann: . +@prefix void: . +@prefix vcard: . +@prefix dcterms: . +@prefix dce: . +@prefix foaf: . +@prefix om: . +@prefix geo: . +@prefix prov: . +@prefix obda: . +@prefix ssn: . +@prefix sto: . +@prefix aas: . +@base . + +aas: 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://www.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: , + dce: ; + skos:prefLabel "aas"@en ; + void:vocabulary xsd: ; + vann:preferredNamespacePrefix "aas" ; + rdfs:isDefinedBy ; + dcterms:creator ; + dcterms:creator ; +. + + +################################################################# +# Annotation properties +################################################################# + +### http://purl.org/dc/elements/1.1/date +dce:date rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/description +dce:description rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/format +dce:format rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/identifier +dce:identifier rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/language +dce:language rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/relation +dce:relation rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/elements/1.1/source +dce: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 dce: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 ; + dce: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 ; + dce: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 ; + dce: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 ; + dce: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 ; + dce: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 ; + dce: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 ; + dce: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 ; + dce: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/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 From f402e07ca263c533fa09eaa9021d1abdc1e9b4bb Mon Sep 17 00:00:00 2001 From: Bader Date: Wed, 18 Sep 2019 11:32:10 +0200 Subject: [PATCH 3/9] running mapping for Raspberry Instance AASX --- ...IAIS_Raspberry_Pi_3b_plus_INSTANCE_10.aasx | Bin 0 -> 44224 bytes rml_mapping/MDM_Connector.aasx | Bin 0 -> 4172 bytes rml_mapping/rml.sh.ttl | 482 ++++++++++++++++++ rml_mapping/run_mapping.sh | 38 ++ 4 files changed, 520 insertions(+) create mode 100644 rml_mapping/FraunhoferIAIS_Raspberry_Pi_3b_plus_INSTANCE_10.aasx create mode 100644 rml_mapping/MDM_Connector.aasx create mode 100644 rml_mapping/rml.sh.ttl create mode 100644 rml_mapping/run_mapping.sh 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 0000000000000000000000000000000000000000..ecbaee61bcafb386a10ab690010f2df98035e23b GIT binary patch literal 44224 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ƒ- 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%0DtQL6BgaF%nKOm&aM`jH*U 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 literal 0 HcmV?d00001 diff --git a/rml_mapping/MDM_Connector.aasx b/rml_mapping/MDM_Connector.aasx new file mode 100644 index 0000000000000000000000000000000000000000..38af6ea7f420d6df8d522284eb06abb93f5f0ad3 GIT binary patch literal 4172 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 An*aa+ literal 0 HcmV?d00001 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 From 7e9118622889b615ae21323406d72efaa65957d5 Mon Sep 17 00:00:00 2001 From: Bader Date: Sun, 20 Oct 2019 14:37:49 +0200 Subject: [PATCH 4/9] RDF Ontology 1.1 --- AAS-Ontology_1.1.ttl | 1339 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1339 insertions(+) create mode 100644 AAS-Ontology_1.1.ttl diff --git a/AAS-Ontology_1.1.ttl b/AAS-Ontology_1.1.ttl new file mode 100644 index 0000000..1f866f6 --- /dev/null +++ b/AAS-Ontology_1.1.ttl @@ -0,0 +1,1339 @@ +@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#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 "containedElement"^^xsd:string . + + +### 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#element # TODO View is not yet sufficiently specified +aas:element a owl:ObjectProperty ; + rdfs:label "has element" ; + rdfs:comment ""@en ; + rdfs:domain aas:View ; + #rdfs:range aas:Referable ; +. + + +### 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 ""@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 . + + +################################################################# +# Classes +################################################################# + +### 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#ConceptDescription +aas:ConceptDescription rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas: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://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: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#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 ""@en ; + . + + +### 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 . + + +### https://admin-shell.io/aas/1/1/rdf#OperationVariable +aas:OperationVariable rdf:type owl:Class ; + rdfs:subClassOf aas: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://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#ReferenceElement +aas:ReferenceElement rdf:type owl:Class ; + rdfs:subClassOf aas:DataElement ; + 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 ; + owl:oneOf ( + 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:OperationVariable_REFERABLE_ELEMENT #sba: not in the UML (any more?) + aas:PROPERTY_REFERABLE_ELEMENT + aas:REFERENCE_ELEMENT_REFERABLE_ELEMENT + aas:RELATIONSHIPT_ELEMENT_REFERABLE_ELEMENT + #aas:SUBMODEL_ELEMENT_REFERABLE_ELEMENT # Note: Event is abstract + aas:SUBMODEL_ELEMENT_COLLECTION_REFERABLE_ELEMENT + aas:VIEW_REFERABLE_ELEMENT + ) ; +. + +aas:ReferenceElement_REFERABLE_ELEMENT + a aas:ReferableElements ; +. + +### 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 . + + +### 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 ; + 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://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#ACCESS_PERMISSION_RULE_REFERABLE_ELEMENT +aas:ACCESS_PERMISSION_RULE_REFERABLE_ELEMENT a aas:ReferableElements ; + 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:ReferableElements ; + rdfs:label "Annotated relationship element"@en ; + rdfs:comment ""@en ; +. + +#aas:AssetAdministrationShell_REFERABLE_ELEMENT a aas:ReferableElements . +#aas:Asset_REFERABLE_ELEMENT a aas:ReferableElements . + +### https://admin-shell.io/aas/1/1/rdf#BLOB_REFERABLE_ELEMENT +aas:BLOB_REFERABLE_ELEMENT a aas:ReferableElements ; + rdfs:label "Blob"@en ; + rdfs:comment ""@en ; +. + +### https://admin-shell.io/aas/1/1/rdf#CAPABILITY_REFERABLE_ELEMENT +aas:CAPABILITY_REFERABLE_ELEMENT a aas:ReferableElements ; + rdfs:label "Capability"@en ; + rdfs:comment ""@en ; +. + +#aas:ConceptDescription_REFERABLE_ELEMENT a aas:ReferableElements . + +### https://admin-shell.io/aas/1/1/rdf#CONCEPT_DICTIONARY_REFERABLE_ELEMENT +aas:CONCEPT_DICTIONARY_REFERABLE_ELEMENT a aas:ReferableElements ; + 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:ReferableElements ; + 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:ReferableElements ; + rdfs:label "Event"@en ; + rdfs:comment ""@en ; + skos:note "Event is abstract"@en ; +. + +#aas:GlobalReference_REFERABLE_ELEMENT a aas:ReferableElements . + +### https://admin-shell.io/aas/1/1/rdf# +aas:MULTI_LANGUAGE_PROPERTY_REFERABLE_ELEMENT a aas:ReferableElements ; + 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:ReferableElements ; + rdfs:label "Operation"@en ; + rdfs:comment ""@en ; +. + +#aas:OperationVariable_REFERABLE_ELEMENT a aas:ReferableElements . + +### https://admin-shell.io/aas/1/1/rdf#PROPERTY_REFERABLE_ELEMENT +aas:PROPERTY_REFERABLE_ELEMENT a aas:ReferableElements ; + 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:ReferableElements ; + 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:ReferableElements ; + 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:ReferableElements ; + 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:ReferableElements ; + rdfs:label "Submodel Element Collection"@en ; + rdfs:comment "Collection of Submodel Elements"@en ; +. + +#aas:SubmodelElementsKindCheck a sh:ReferableElements . + +### https://admin-shell.io/aas/1/1/rdf#VIEW_REFERABLE_ELEMENT +aas:VIEW_REFERABLE_ELEMENT a aas:ReferableElements ; + rdfs:label "View"@en ; + rdfs:comment ""@en ; +. + + +### https://admin-shell.io/aas/1/1/rdf#IRDI +aas:IRDI a aas:IdentifierType ; + 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 +aas:URI a aas:IdentifierType ; + rdfs:label "URI"@en ; + rdfs:comment "URI"@en ; +. + + +### https://admin-shell.io/aas/1/1/rdf#CUSTOM +aas:CUSTOM rdf:Type aas:IdentifierType ; + rdfs:label "Custom"@en ; + rdfs:comment "Custom identifiers like GUIDs (globally unique Identifiers)"@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 + + + + + From 507ba6c959fcb0624aa78bbd835fa71478c4fdbb Mon Sep 17 00:00:00 2001 From: sbader Date: Fri, 3 Apr 2020 11:06:41 +0200 Subject: [PATCH 5/9] AAS in Detail version 1.1 --- .gitignore | 3 + AAS-Ontology_1.1.ttl | 828 +++++++++++-- README.md | 2 +- examples/AAS_Reference_Example.ttl | 68 + examples/AAS_Reference_shortExample.nt | 11 + examples/AAS_Reference_shortExample.ttl | 42 + examples/AssetAdministrationShell_Example.ttl | 14 + examples/Asset_Example.nt | 24 + examples/Asset_Example.ttl | 15 + examples/Complete_Example.ttl | 1102 +++++++++++++++++ examples/KapitelVerwaltungsschaleExample.ttl | 31 + examples/Overall-Example.nt | 36 + examples/ReferenceExample.ttl | 33 + examples/Submodel_SubmodelElement_Example.ttl | 114 ++ .../Submodel_SubmodelElement_shortExample.nt | 36 + .../Submodel_SubmodelElement_shortExample.ttl | 69 ++ rami.ttl | 926 -------------- rml_mapping/raspberry-mapping.rml.ttl | 967 --------------- schema/AAS-Shape.ttl | 62 +- schema/SubmodelShape.ttl | 42 +- 20 files changed, 2360 insertions(+), 2065 deletions(-) create mode 100644 .gitignore create mode 100644 examples/AAS_Reference_Example.ttl create mode 100644 examples/AAS_Reference_shortExample.nt create mode 100644 examples/AAS_Reference_shortExample.ttl create mode 100644 examples/AssetAdministrationShell_Example.ttl create mode 100644 examples/Asset_Example.nt create mode 100644 examples/Asset_Example.ttl create mode 100644 examples/Complete_Example.ttl create mode 100644 examples/KapitelVerwaltungsschaleExample.ttl create mode 100644 examples/Overall-Example.nt create mode 100644 examples/ReferenceExample.ttl create mode 100644 examples/Submodel_SubmodelElement_Example.ttl create mode 100644 examples/Submodel_SubmodelElement_shortExample.nt create mode 100644 examples/Submodel_SubmodelElement_shortExample.ttl delete mode 100644 rami.ttl delete mode 100644 rml_mapping/raspberry-mapping.rml.ttl 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 index 1f866f6..1a0cd70 100644 --- a/AAS-Ontology_1.1.ttl +++ b/AAS-Ontology_1.1.ttl @@ -163,6 +163,15 @@ dul:isPartOf 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 ; @@ -176,7 +185,7 @@ aas:administration rdf:type owl:ObjectProperty ; ### https://admin-shell.io/aas/1/1/rdf#asset aas:asset rdf:type owl:ObjectProperty ; rdfs:domain aas:AssetAdministrationShell; - rdfs:range aas:Asset ; + #rdfs:range aas:Asset ; rdfs:comment "The asset the AAS is representing."@en ; rdfs:label "asset"@en . @@ -217,8 +226,11 @@ aas:conceptDictionary rdf:type owl:ObjectProperty ; ### 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 "containedElement"^^xsd:string . + 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 @@ -288,15 +300,6 @@ aas:describes rdf:type owl:ObjectProperty ; rdfs:label "describes"@en . -### https://admin-shell.io/aas/1/1/rdf#element # TODO View is not yet sufficiently specified -aas:element a owl:ObjectProperty ; - rdfs:label "has element" ; - rdfs:comment ""@en ; - rdfs:domain aas:View ; - #rdfs:range aas:Referable ; -. - - ### https://admin-shell.io/aas/1/1/rdf#embeddedDataSpecification aas:embeddedDataSpecification a owl:ObjectProperty ; rdfs:label "has embedded data specification" ; @@ -346,7 +349,8 @@ aas:inAccordanceWith rdf:type owl:ObjectProperty ; ### https://admin-shell.io/aas/1/1/rdf#isCaseOf aas:isCaseOf rdf:type owl:ObjectProperty ; rdfs:subPropertyOf dcterms:identifier ; - rdfs:comment ""@en ; + 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 ; @@ -691,10 +695,116 @@ aas:version rdf:type owl:DatatypeProperty ; 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 ; @@ -774,11 +884,36 @@ aas:Blob rdf:type owl:Class ; 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 ; - 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 . + 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 @@ -834,9 +969,42 @@ aas:DataElement rdf:type owl:Class ; ### https://admin-shell.io/aas/1/1/rdf#DataSpecification aas: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 . + 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 @@ -921,8 +1089,45 @@ aas:Key rdf:type owl:Class ; ### https://admin-shell.io/aas/1/1/rdf#KeyElements aas:KeyElements rdf:type owl:Class ; rdfs:label "Key Elements" ; - rdfs:comment ""@en ; - . + 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 @@ -955,14 +1160,25 @@ aas:ObjectAttributes rdf:type owl:Class ; 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 . + 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 ; - rdfs:subClassOf aas: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 . + 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 @@ -1020,47 +1236,22 @@ aas:Referable rdf:type owl:Class ; ### 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: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#ReferenceElement -aas:ReferenceElement rdf:type owl:Class ; - rdfs:subClassOf aas:DataElement ; - 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 ; - owl:oneOf ( - 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:OperationVariable_REFERABLE_ELEMENT #sba: not in the UML (any more?) - aas:PROPERTY_REFERABLE_ELEMENT - aas:REFERENCE_ELEMENT_REFERABLE_ELEMENT - aas:RELATIONSHIPT_ELEMENT_REFERABLE_ELEMENT - #aas:SUBMODEL_ELEMENT_REFERABLE_ELEMENT # Note: Event is abstract - aas:SUBMODEL_ELEMENT_COLLECTION_REFERABLE_ELEMENT - aas:VIEW_REFERABLE_ELEMENT - ) ; -. - -aas:ReferenceElement_REFERABLE_ELEMENT - a aas:ReferableElements ; -. - ### 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 . + 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 @@ -1135,8 +1326,18 @@ aas:Value rdf:type owl:Class ; # TODO delete? ### https://admin-shell.io/aas/1/1/rdf#View aas:View rdf:type owl:Class ; rdfs:subClassOf aas:HasDataSpecification , - aas:Referable ; + 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 . @@ -1158,8 +1359,6 @@ RAMI4.0 model, as well, covering also order details and workflows, again with ty 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 ; @@ -1170,8 +1369,6 @@ RAMI4.0 model, as well, covering also order details and workflows, again with ty 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 ; @@ -1180,8 +1377,6 @@ aas:INSTANCE rdf:type owl:NamedIndividual , 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 ; @@ -1192,135 +1387,178 @@ aas:TYPE rdf:type owl:NamedIndividual , -### https://admin-shell.io/aas/1/1/rdf#ACCESS_PERMISSION_RULE_REFERABLE_ELEMENT -aas:ACCESS_PERMISSION_RULE_REFERABLE_ELEMENT a aas:ReferableElements ; +### 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:ReferableElements ; +aas:ANNOTATED_RELATIONSHIP_ELEMENT_REFERABLE_ELEMENT a aas:KeyElements ; rdfs:label "Annotated relationship element"@en ; rdfs:comment ""@en ; . - -#aas:AssetAdministrationShell_REFERABLE_ELEMENT a aas:ReferableElements . -#aas:Asset_REFERABLE_ELEMENT a aas:ReferableElements . - +#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:ReferableElements ; +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:ReferableElements ; +aas:CAPABILITY_REFERABLE_ELEMENT a aas:KeyElements ; rdfs:label "Capability"@en ; rdfs:comment ""@en ; . - -#aas:ConceptDescription_REFERABLE_ELEMENT a aas:ReferableElements . - +#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:ReferableElements ; +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:ReferableElements ; +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:ReferableElements ; +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:ReferableElements . - +#aas:GlobalReference_REFERABLE_ELEMENT a aas:KeyElements . ### https://admin-shell.io/aas/1/1/rdf# -aas:MULTI_LANGUAGE_PROPERTY_REFERABLE_ELEMENT a aas:ReferableElements ; +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:ReferableElements ; +aas:OPERATION_REFERABLE_ELEMENT a aas:KeyElements ; rdfs:label "Operation"@en ; rdfs:comment ""@en ; . - -#aas:OperationVariable_REFERABLE_ELEMENT a aas:ReferableElements . - +#aas:OperationVariable_REFERABLE_ELEMENT a aas:KeyElements . ### https://admin-shell.io/aas/1/1/rdf#PROPERTY_REFERABLE_ELEMENT -aas:PROPERTY_REFERABLE_ELEMENT a aas:ReferableElements ; +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:ReferableElements ; +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:ReferableElements ; +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:ReferableElements ; +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:ReferableElements ; +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:ReferableElements . - +#aas:SubmodelElementsKindCheck a sh:KeyElements . ### https://admin-shell.io/aas/1/1/rdf#VIEW_REFERABLE_ELEMENT -aas:VIEW_REFERABLE_ELEMENT a aas:ReferableElements ; +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 -aas:IRDI a aas:IdentifierType ; +### 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 -aas:URI a aas:IdentifierType ; + 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 -aas:CUSTOM rdf:Type aas:IdentifierType ; +### 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 ; +. + @@ -1337,3 +1575,355 @@ om:hasNumericalValue rdfs:label "has numerical value"@en . + + + +### 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/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/raspberry-mapping.rml.ttl b/rml_mapping/raspberry-mapping.rml.ttl deleted file mode 100644 index 34af3ea..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 - ] - ] ; - - . - - -_:AssetShellMap2 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/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/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 From 9e98941e53abb5c25c5b86455e92e5fd8c99a713 Mon Sep 17 00:00:00 2001 From: sbader Date: Fri, 3 Apr 2020 11:24:17 +0200 Subject: [PATCH 6/9] moving to version 2.0.1, updating namespace aas: Merge branch 'master' of https://github.com/sebbader/AssetAdminShellOntology # Conflicts: # .gitignore # AAS-Ontology_1-1.ttl --- ...ssetAdministrationShell_Ontology_2.0.1.ttl | 570 +++++++++--------- 1 file changed, 285 insertions(+), 285 deletions(-) rename admin-shell-io.ttl => AssetAdministrationShell_Ontology_2.0.1.ttl (67%) diff --git a/admin-shell-io.ttl b/AssetAdministrationShell_Ontology_2.0.1.ttl similarity index 67% rename from admin-shell-io.ttl rename to AssetAdministrationShell_Ontology_2.0.1.ttl index 6696019..6b24eed 100644 --- a/admin-shell-io.ttl +++ b/AssetAdministrationShell_Ontology_2.0.1.ttl @@ -17,13 +17,13 @@ @prefix obda: . @prefix ssn: . @prefix sto: . -@prefix aas: . -@base . +@prefix aas: . +@base . aas: 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://www.admin-shell.io/aas/1/1/rdf#" ; - owl:versionInfo 0.5 ; + 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 2.0)'" ; + vann:preferredNamespaceUri "https://www.admin-shell.io/aas/2/0/rdf#" ; + owl:versionInfo 2.0 ; 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: , @@ -31,7 +31,7 @@ aas: rdf:type owl:Ontology ; skos:prefLabel "aas"@en ; void:vocabulary xsd: ; vann:preferredNamespacePrefix "aas" ; - rdfs:isDefinedBy ; + rdfs:isDefinedBy ; dcterms:creator ; dcterms:creator ; . @@ -112,31 +112,31 @@ 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://admin-shell.io/aas/2/0/rdf#assetId +aas:assetId rdf:type owl:DatatypeProperty ; + rdfs:domain aas:Asset . -### https://w3id.org/i40/rami#description -rami:description rdf:type owl:AnnotationProperty ; +### https://admin-shell.io/aas/2/0/rdf#description +aas:description rdf:type owl:AnnotationProperty ; rdfs:subPropertyOf rdfs:comment ; rdfs:range xsd:string ; - rdfs:domain rami:Asset . + rdfs:domain aas:Asset . -### https://w3id.org/i40/rami#display -rami:display rdf:type owl:AnnotationProperty . +### https://admin-shell.io/aas/2/0/rdf#display +aas:display rdf:type owl:AnnotationProperty . -### https://w3id.org/i40/rami#idShort -rami:idShort rdf:type owl:AnnotationProperty . +### https://admin-shell.io/aas/2/0/rdf#idShort +aas:idShort rdf:type owl:AnnotationProperty . -### https://w3id.org/i40/rami#semanticId -rami:semanticId rdf:type owl:AnnotationProperty ; +### https://admin-shell.io/aas/2/0/rdf#semanticId +aas:semanticId rdf:type owl:AnnotationProperty ; rdfs:subPropertyOf rdfs:seeAlso ; - rdfs:range rami:ExpressionSemantic ; - rdfs:domain rami:Submodel . + rdfs:range aas:ExpressionSemantic ; + rdfs:domain aas:Submodel . ################################################################# @@ -147,22 +147,22 @@ rami:semanticId rdf:type owl:AnnotationProperty ; xsd:date rdf:type rdfs:Datatype . -### https://w3id.org/i40/rami#IRDI -rami:IRDI rdf:type rdfs:Datatype ; +### https://admin-shell.io/aas/2/0/rdf#IRDI +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#blob +aas: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 . + rdfs:label "aas:blob"^^xsd:string . -### https://w3id.org/i40/rami#file -rami:file rdf:type rdfs:Datatype ; +### https://admin-shell.io/aas/2/0/rdf#file +aas: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 . + rdfs:label "aas:file"^^xsd:string . ################################################################# @@ -172,8 +172,8 @@ rami:file rdf:type rdfs:Datatype ; ### 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: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 . @@ -184,216 +184,216 @@ dul:isPartOf rdf:type owl:ObjectProperty , rdfs:subPropertyOf owl:topObjectProperty . -### https://w3id.org/i40/rami#administration -rami:administration rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/rdf#administration +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#asset +aas:asset rdf:type owl:ObjectProperty ; + rdfs:domain aas:AdminShell ; + rdfs:range aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#assetIdentificationModel +aas:assetIdentificationModel rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf aas:hasSubmodel ; + 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://w3id.org/i40/rami#conceptDictionary -rami:conceptDictionary rdf:type owl:ObjectProperty ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:ConceptDictionary ; +### https://admin-shell.io/aas/2/0/rdf#conceptDictionary +aas:conceptDictionary rdf:type owl:ObjectProperty ; + rdfs:domain aas:AdminShell ; + 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://w3id.org/i40/rami#containedElement -rami:containedElement rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/rdf#containedElement +aas: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#dataElement -rami:dataElement rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#defaultEnvironmentAttributes -rami:defaultEnvironmentAttributes rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#defaultPermissions -rami:defaultPermissions rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#defaultSubjectAttributes -rami:defaultSubjectAttributes rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#dependsOn -rami:dependsOn rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/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 "dependsOn"@en . -### https://w3id.org/i40/rami#derivedFrom -rami:derivedFrom rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/rdf#derivedFrom +aas:derivedFrom rdf:type owl:ObjectProperty ; rdfs:subPropertyOf ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:AdminShell ; + rdfs:domain aas:AdminShell ; + rdfs:range aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#describes +aas:describes rdf:type owl:ObjectProperty ; + rdfs:domain aas:AdminShell ; + rdfs:range aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#first +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#hasConceptDescription +aas: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#hasDatatype -rami:hasDatatype rdf:type owl:ObjectProperty ; - rdfs:domain rami:Submodel ; +### https://admin-shell.io/aas/2/0/rdf#hasDatatype +aas:hasDatatype rdf:type owl:ObjectProperty ; + rdfs:domain aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#hasIdType +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#hasKey +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#hasKind +aas:hasKind rdf:type owl:ObjectProperty ; rdfs:subPropertyOf owl:topObjectProperty ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:AssetKind ; + rdfs:domain aas:AdminShell ; + rdfs:range aas:AssetKind ; rdfs:label "has kind"@en . -### https://w3id.org/i40/rami#hasReference -rami:hasReference rdf:type owl:ObjectProperty ; - rdfs:domain rami:Submodel ; +### https://admin-shell.io/aas/2/0/rdf#hasReference +aas:hasReference rdf:type owl:ObjectProperty ; + rdfs:domain aas:Submodel ; rdfs:label "has Reference"@en . -### https://w3id.org/i40/rami#hasSubjectAttribute -rami:hasSubjectAttribute rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/rdf#hasSubjectAttribute +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#hasSubmodel +aas:hasSubmodel rdf:type owl:ObjectProperty ; + rdfs:domain aas:Asset ; + 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 ; 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://admin-shell.io/aas/2/0/rdf#hasValue +aas:hasValue rdf:type owl:ObjectProperty ; + rdfs:domain aas:Submodel ; + rdfs:range aas:Value . -### https://w3id.org/i40/rami#hasView -rami:hasView rdf:type owl:ObjectProperty ; - rdfs:domain rami:AdminShell ; - rdfs:range rami:View ; +### https://admin-shell.io/aas/2/0/rdf#hasView +aas:hasView rdf:type owl:ObjectProperty ; + rdfs:domain aas:AdminShell ; + 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 . -### 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://admin-shell.io/aas/2/0/rdf#in +aas:in rdf:type owl:ObjectProperty ; + rdfs:comment "the aas:in attribute of aas:operation is the input parameter"@en . -### https://w3id.org/i40/rami#inAccordanceWith -rami:inAccordanceWith rdf:type owl:ObjectProperty ; - rdfs:domain rami:Submodel ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#isCaseOf -rami:isCaseOf rdf:type owl:ObjectProperty . +### https://admin-shell.io/aas/2/0/rdf#isCaseOf +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#isConnectedTo +aas:isConnectedTo rdf:type owl:ObjectProperty ; + rdfs:domain aas:AdminShell ; + rdfs:range aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#mimeType +aas: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” @@ -406,89 +406,89 @@ Mime type of the content of the File."""@en ; rdfs:seeAlso "http://uri4uri.net/vocab.html/#MimetypeDatatype"^^xsd:string . -### https://w3id.org/i40/rami#object -rami:object rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#objectAttribute -rami:objectAttribute rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#out -rami:out rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/rdf#out +aas: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 ; +### https://admin-shell.io/aas/2/0/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 . -### https://w3id.org/i40/rami#preferredName -rami:preferredName rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#qualifierType -rami:qualifierType rdf:type owl:ObjectProperty . +### https://admin-shell.io/aas/2/0/rdf#qualifierType +aas:qualifierType rdf:type owl:ObjectProperty . -### https://w3id.org/i40/rami#qualifierValue -rami:qualifierValue rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/rdf#qualifierValue +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#second +aas: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#submodelElement -rami:submodelElement rdf:type owl:ObjectProperty ; - rdfs:range rami:SubmodelElement ; +### https://admin-shell.io/aas/2/0/rdf#submodelElement +aas:submodelElement rdf:type owl:ObjectProperty ; + rdfs:range aas: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#targetSubjectAttributes -rami:targetSubjectAttributes rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#trustAnchor -rami:trustAnchor rdf:type owl:ObjectProperty ; +### https://admin-shell.io/aas/2/0/rdf#trustAnchor +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#value +aas:value rdf:type owl:ObjectProperty ; rdfs:comment "The key value, for example an IRDI if the idType=IRDI."@en ; rdfs:label "keyValue"^^xsd:string . @@ -509,98 +509,98 @@ dcterms:identifier rdf:type owl:DatatypeProperty . om:hasNumericalValue rdf:type owl:DatatypeProperty . -### https://w3id.org/i40/rami#allowDuplicates -rami:allowDuplicates rdf:type owl:DatatypeProperty ; +### https://admin-shell.io/aas/2/0/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 . -### https://w3id.org/i40/rami#assetId -rami:assetId rdf:type owl:DatatypeProperty ; +### https://admin-shell.io/aas/2/0/rdf#assetId +aas: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#definition -rami:definition rdf:type owl:DatatypeProperty ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#description -rami:description rdf:type owl:DatatypeProperty . +### https://admin-shell.io/aas/2/0/rdf#description +aas:description rdf:type owl:DatatypeProperty . -### https://w3id.org/i40/rami#hasLocal -rami:hasLocal rdf:type owl:DatatypeProperty ; +### https://admin-shell.io/aas/2/0/rdf#hasLocal +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#id +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#idShort +aas:idShort rdf:type owl:DatatypeProperty ; rdfs:subPropertyOf dcterms:identifier . -### https://w3id.org/i40/rami#isCaseOf -rami:isCaseOf rdf:type owl:DatatypeProperty ; +### https://admin-shell.io/aas/2/0/rdf#isCaseOf +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#isDescribedWith +aas:isDescribedWith rdf:type owl:DatatypeProperty ; + rdfs:seeAlso aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#logs +aas: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 ; +### https://admin-shell.io/aas/2/0/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 . -### https://w3id.org/i40/rami#publishedURL -rami:publishedURL rdf:type owl:DatatypeProperty . +### https://admin-shell.io/aas/2/0/rdf#publishedURL +aas:publishedURL rdf:type owl:DatatypeProperty . -### https://w3id.org/i40/rami#revision -rami:revision rdf:type owl:DatatypeProperty ; +### https://admin-shell.io/aas/2/0/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 . -### https://w3id.org/i40/rami#semanticId -rami:semanticId rdf:type owl:DatatypeProperty ; +### https://admin-shell.io/aas/2/0/rdf#semanticId +aas:semanticId rdf:type owl:DatatypeProperty ; rdfs:subPropertyOf dcterms:identifier . -### https://w3id.org/i40/rami#version -rami:version rdf:type owl:DatatypeProperty ; +### https://admin-shell.io/aas/2/0/rdf#version +aas:version rdf:type owl:DatatypeProperty ; rdfs:subPropertyOf dcterms:hasVersion ; rdfs:comment "Version of the element."@en ; rdfs:label "version"@en . @@ -610,16 +610,16 @@ rami:version rdf:type owl:DatatypeProperty ; # Classes ################################################################# -### https://w3id.org/i40/rami#AccessControlPolicyPoints -rami:AccessControlPolicyPoints rdf:type owl:Class ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#AdminShell -rami:AdminShell rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:Identifiable ; +### https://admin-shell.io/aas/2/0/rdf#AdminShell +aas:AdminShell rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas:Identifiable ; dce:source "This definition comprises material from RAMI4.0."@en ; rdfs:label "Admin Shell"@en ; skos:altLabel "Administration Shell"@en , @@ -628,9 +628,9 @@ rami:AdminShell rdf:type owl:Class ; skos:prefLabel "Verwaltungsschale"^^xsd:string . -### https://w3id.org/i40/rami#AdministrativeInformation -rami:AdministrativeInformation rdf:type owl:Class ; - rdfs:subClassOf rami:DataSpecification ; +### https://admin-shell.io/aas/2/0/rdf#AdministrativeInformation +aas:AdministrativeInformation rdf:type owl:Class ; + rdfs:subClassOf aas: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 @@ -639,185 +639,185 @@ In the first version of the AAS metamodel only version information as defined by 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://admin-shell.io/aas/2/0/rdf#Asset +aas:Asset rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas:HasKind , + aas:Identifiable . -### https://w3id.org/i40/rami#AssetKind -rami:AssetKind rdf:type owl:Class ; - rdfs:subClassOf rami:Dimension ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#Blob -rami:Blob rdf:type owl:Class ; - rdfs:subClassOf rami:DataElement ; +### https://admin-shell.io/aas/2/0/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 "BlobDataElement"@en . -### https://w3id.org/i40/rami#ConceptDescription -rami:ConceptDescription rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:Identifiable ; +### https://admin-shell.io/aas/2/0/rdf#ConceptDescription +aas:ConceptDescription rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas:Identifiable ; dce: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#DataElement -rami:DataElement rdf:type owl:Class ; - rdfs:subClassOf rami:SubmodelElement ; +### https://admin-shell.io/aas/2/0/rdf#DataElement +aas:DataElement rdf:type owl:Class ; + rdfs:subClassOf aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#DataSpecification +aas: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://admin-shell.io/aas/2/0/rdf#Dimension +aas:Dimension rdf:type owl:Class . -### https://w3id.org/i40/rami#File -rami:File rdf:type owl:Class ; - rdfs:subClassOf rami:DataElement ; +### https://admin-shell.io/aas/2/0/rdf#File +aas:File rdf:type owl:Class ; + rdfs:subClassOf aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#Formula +aas:Formula rdf:type owl:Class ; dce: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 ; +### https://admin-shell.io/aas/2/0/rdf#HasDataSpecification +aas: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#Identifiable -rami:Identifiable rdf:type owl:Class ; - rdfs:subClassOf rami:Referable ; +### https://admin-shell.io/aas/2/0/rdf#Identifiable +aas:Identifiable rdf:type owl:Class ; + rdfs:subClassOf aas: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#ObjectAttributes -rami:ObjectAttributes rdf:type owl:Class ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#Operation -rami:Operation rdf:type owl:Class ; - rdfs:subClassOf rami:SubmodelElement ; +### https://admin-shell.io/aas/2/0/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 . -### https://w3id.org/i40/rami#OperationVariable -rami:OperationVariable rdf:type owl:Class ; - rdfs:subClassOf rami:SubmodelElement ; +### https://admin-shell.io/aas/2/0/rdf#OperationVariable +aas:OperationVariable rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; dce: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#Property -rami:Property rdf:type owl:Class ; +### https://admin-shell.io/aas/2/0/rdf#Property +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#PropertyValueType +aas:PropertyValueType rdf:type owl:Class ; dce: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 ; +### https://admin-shell.io/aas/2/0/rdf#Qualifier +aas:Qualifier rdf:type owl:Class ; dce: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 ; +### https://admin-shell.io/aas/2/0/rdf#Referable +aas: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#ReferenceElement -rami:ReferenceElement rdf:type owl:Class ; +### https://admin-shell.io/aas/2/0/rdf#ReferenceElement +aas:ReferenceElement rdf:type owl:Class ; dce: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 ; +### https://admin-shell.io/aas/2/0/rdf#RelationshipElement +aas:RelationshipElement rdf:type owl:Class ; + rdfs:subClassOf aas:SubmodelElement ; dce: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 ; +### https://admin-shell.io/aas/2/0/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://w3id.org/i40/rami#Submodel -rami:Submodel rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:HasKind , - rami:Identifiable ; +### https://admin-shell.io/aas/2/0/rdf#Submodel +aas:Submodel rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas:HasKind , + aas: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 , @@ -825,35 +825,35 @@ Submodels can become standardized and thus become submodels types. Submodels can rdfs:label "Submodel"@en . -### https://w3id.org/i40/rami#SubmodelElement -rami:SubmodelElement rdf:type owl:Class ; - rdfs:subClassOf rami:HasDataSpecification , - rami:HasKind , - rami:Identifiable ; +### https://admin-shell.io/aas/2/0/rdf#SubmodelElement +aas:SubmodelElement rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas:HasKind , + aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#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 "SubmodelElementCollection"@en . -### https://w3id.org/i40/rami#Value -rami:Value rdf:type owl:Class ; +### https://admin-shell.io/aas/2/0/rdf#Value +aas: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 ; +### https://admin-shell.io/aas/2/0/rdf#View +aas:View rdf:type owl:Class ; + rdfs:subClassOf aas:HasDataSpecification , + aas: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 , @@ -864,17 +864,17 @@ rami:View rdf:type owl:Class ; # Individuals ################################################################# -### https://w3id.org/i40/rami#Asset -rami:Asset rdf:type owl:NamedIndividual . +### https://admin-shell.io/aas/2/0/rdf#Asset +aas:Asset rdf:type owl:NamedIndividual . -### https://w3id.org/i40/rami#Instance -rami:Instance rdf:type owl:NamedIndividual . +### https://admin-shell.io/aas/2/0/rdf#Instance +aas:Instance rdf:type owl:NamedIndividual . -### https://w3id.org/i40/rami#Type -rami:Type rdf:type owl:NamedIndividual , - rami:AssetKind ; +### https://admin-shell.io/aas/2/0/rdf#Type +aas: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 ; @@ -889,7 +889,7 @@ RAMI4.0 model, as well, covering also order details and workflows, again with ty om:hasNumericalValue rdfs:label "has numerical value"@en . -rami:Asset skos:altLabel "Object"@en ; +aas:Asset skos:altLabel "Object"@en ; skos:definition "Clearly identifiable asset for the Administration Shell"@en ; skos:altLabel "Entity"@en ; skos:prefLabel "Asset"@en ; @@ -901,20 +901,20 @@ The asset has a globally unique identifier plus – if needed – additional dom skos:altLabel "Entität"@de . -rami:assetId owl:deprecated "true"^^xsd:boolean ; +aas: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 ; +aas: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 ; +aas: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 ; +aas: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 ; From 49fc1639d53cb67387c2628a72fd6283c3076272 Mon Sep 17 00:00:00 2001 From: sbader Date: Mon, 4 May 2020 22:01:18 +0200 Subject: [PATCH 7/9] ### Added * `http://admin-shell.io/aas/2/0/Key/idType` propert for `aas:Key` * ### Changed * Namespace: from `aas: ` to `aas: ` * `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` ### 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` --- AssetAdministrationShell_Ontology_2.0.1.ttl | 2366 ++++++++++++++----- CHANGELOG.md | 34 + schema/AssetShape.ttl | 4 +- 3 files changed, 1772 insertions(+), 632 deletions(-) create mode 100644 CHANGELOG.md diff --git a/AssetAdministrationShell_Ontology_2.0.1.ttl b/AssetAdministrationShell_Ontology_2.0.1.ttl index 6b24eed..fbc56a8 100644 --- a/AssetAdministrationShell_Ontology_2.0.1.ttl +++ b/AssetAdministrationShell_Ontology_2.0.1.ttl @@ -1,924 +1,2030 @@ +@prefix aas: . +@prefix iec61360: . +@prefix phys_unit: . +@prefix dash: . +@prefix dc: . +@prefix dcterms: . +@prefix owl: . @prefix rdf: . @prefix rdfs: . -@prefix owl: . -@prefix xml: . -@prefix xsd: . -@prefix dul: . @prefix skos: . @prefix vann: . -@prefix void: . -@prefix vcard: . -@prefix dcterms: . -@prefix dce: . -@prefix foaf: . -@prefix om: . -@prefix geo: . -@prefix prov: . -@prefix obda: . -@prefix ssn: . -@prefix sto: . -@prefix aas: . -@base . - -aas: 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 2.0)'" ; - vann:preferredNamespaceUri "https://www.admin-shell.io/aas/2/0/rdf#" ; - owl:versionInfo 2.0 ; - 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: , - dce: ; - skos:prefLabel "aas"@en ; - void:vocabulary xsd: ; - vann:preferredNamespacePrefix "aas" ; - rdfs:isDefinedBy ; - dcterms:creator ; - dcterms:creator ; -. - +@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 ; +. ################################################################# -# Annotation properties +# Object Properties ################################################################# -### http://purl.org/dc/elements/1.1/date -dce:date rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/certificate +aas: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://purl.org/dc/elements/1.1/description -dce:description rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/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 ; +. +### http://admin-shell.io/aas/2/0/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"^^xsd:string ; +. -### http://purl.org/dc/elements/1.1/format -dce:format rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/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"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/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 "has default subject attributes"^^xsd:string ; +. -### http://purl.org/dc/elements/1.1/identifier -dce:identifier rdf:type owl:AnnotationProperty . -### http://purl.org/dc/elements/1.1/language -dce:language rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/embeddedDataSpecification +aas:embeddedDataSpecification rdf:type owl:ObjectProperty ; + rdfs:label "has embedded data specification"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/inputVariable +aas: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://purl.org/dc/elements/1.1/relation -dce:relation rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/inoutputVariable +aas: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/inAccordanceWith todo +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 "is in accordance With"^^xsd:string ; +. -### http://purl.org/dc/elements/1.1/source -dce:source rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/key todo +aas:key rdf:type owl:ObjectProperty ; + rdfs:comment "Unique reference in its name space."@en ; + rdfs:label "has key"^^xsd:string ; + rdfs:range aas:Key ; +. +### http://admin-shell.io/aas/2/0/max +aas: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://purl.org/dc/terms/description -dcterms:description rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/min +aas: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/object todo +aas:object rdf:type owl:ObjectProperty ; + rdfs:comment "Element to which permission shall be assigned."@en ; + rdfs:label "has object"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/objectAttribute todo +aas:objectAttribute rdf:type owl:ObjectProperty ; + rdfs:comment "A data element that further classifies an object."@en ; + rdfs:label "has object attribute"^^xsd:string ; +. -### http://purl.org/dc/terms/identifier -dcterms:identifier rdf:type owl:AnnotationProperty ; - rdfs:subPropertyOf dce:identifier ; - rdfs:range rdfs:Literal . +### http://admin-shell.io/aas/2/0/outputVariable +aas: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/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."@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://purl.org/vocab/vann/preferredNamespacePrefix -vann:preferredNamespacePrefix rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/preferredName todo +aas:preferredName rdf:type owl:ObjectProperty ; + rdfs:comment "This is the preferredName of a ConceptDescription object"@en ; + rdfs:label "has preferred name"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/propertyCategory +aas:propertyCategory rdf:type owl:ObjectProperty ; + rdfs:label "has property category"^^xsd:string ; + rdfs:comment "The following categories are defined for properties and multi-language properties: aas:CONSTANT, aas:PARAMETER, and aas:VARIABLE."@en ; +. -### http://purl.org/vocab/vann/preferredNamespaceUri -vann:preferredNamespaceUri rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/qualifier +aas: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/qualifierType +aas:qualifierType 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://rdfs.org/ns/void#vocabulary -void:vocabulary rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/qualifierValue +aas:qualifierValue 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/qualifierValueId +aas:qualifierValueId 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://www.w3.org/2004/02/skos/core#altLabel -skos:altLabel rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/relationshipFirst +aas:relationshipFirst 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/relationshipSecond +aas:relationshipSecond 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://www.w3.org/2004/02/skos/core#definition -skos:definition rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/selectableEnvironmentAttributes todo +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 "has selectable environment attributes"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/subjectAttribute todo +aas:subjectAttribute rdf:type owl:ObjectProperty ; + rdfs:comment "A data element that further classifies a specific subject."@en ; + rdfs:label "has subject attribute"^^xsd:string ; +. -### http://www.w3.org/2004/02/skos/core#note -skos:note rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/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"^^xsd:string ; +. -### http://www.w3.org/2004/02/skos/core#prefLabel -skos:prefLabel rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/targetObjectAttributes todo +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"^^xsd:string ; +. +### http://admin-shell.io/aas/2/0/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"^^xsd:string ; +. -### http://www.wurvoc.org/vocabularies/om-1.8/hasNumericalValue -om:hasNumericalValue rdf:type owl:DatatypeProperty ; - rdfs:domain om:Measure . +################################################################# +# Data properties +################################################################# -### https://admin-shell.io/aas/2/0/rdf#assetId -aas:assetId rdf:type owl:DatatypeProperty ; - rdfs:domain aas:Asset . +### http://admin-shell.io/aas/2/0/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 ; + rdfs:label "allow duplicates"^^xsd:string ; + rdfs:domain aas:SubmodelElementCollection ; + rdfs:range xsd:boolean ; +. +### http://admin-shell.io/aas/2/0/category +aas: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 ; +. -### https://admin-shell.io/aas/2/0/rdf#description -aas:description rdf:type owl:AnnotationProperty ; - rdfs:subPropertyOf rdfs:comment ; - rdfs:range xsd:string ; - rdfs:domain aas:Asset . +### http://admin-shell.io/aas/2/0/description +aas: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/externalPolicyDecisionPoint +aas: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:PolicyEnforcementPoint ; + rdfs:range xsd:boolean ; +. -### https://admin-shell.io/aas/2/0/rdf#display -aas:display rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/externalPolicyEnforcementPoint +aas: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 ; +. -### https://admin-shell.io/aas/2/0/rdf#idShort -aas:idShort rdf:type owl:AnnotationProperty . +### http://admin-shell.io/aas/2/0/idShort +aas: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/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/2/0/rdf#semanticId -aas:semanticId rdf:type owl:AnnotationProperty ; - rdfs:subPropertyOf rdfs:seeAlso ; - rdfs:range aas:ExpressionSemantic ; - rdfs:domain aas:Submodel . ################################################################# -# Datatypes +# Classes ################################################################# -### http://www.w3.org/2001/XMLSchema#date -xsd:date rdf:type rdfs:Datatype . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#IRDI -aas: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#blob -aas: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 "aas:blob"^^xsd:string . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#file -aas:file rdf:type rdfs:Datatype ; - rdfs:comment "A File is a data element that represents a file via its path description."@en ; - rdfs:label "aas:file"^^xsd:string . +### 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 ; +. -################################################################# -# 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://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://www.w3.org/TR/2013/REC-prov-o-20130430/#wasDerivedFrom - rdf:type owl:ObjectProperty ; - rdfs:subPropertyOf owl:topObjectProperty . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#administration -aas: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#asset -aas:asset rdf:type owl:ObjectProperty ; - rdfs:domain aas:AdminShell ; - rdfs:range aas:Asset ; - rdfs:comment "The asset the AAS is representing."@en ; - rdfs:label "asset"@en . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#assetIdentificationModel -aas:assetIdentificationModel rdf:type owl:ObjectProperty ; - rdfs:subPropertyOf aas:hasSubmodel ; - 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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#conceptDictionary -aas:conceptDictionary rdf:type owl:ObjectProperty ; - rdfs:domain aas:AdminShell ; - 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/2/0/rdf#containedElement -aas:containedElement rdf:type owl:ObjectProperty ; - rdfs:comment "Referable elements that are contained in the view."@en ; - rdfs:label "containedElement"^^xsd:string . -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 "dependsOn"@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 ; +. -### https://admin-shell.io/aas/2/0/rdf#derivedFrom -aas:derivedFrom rdf:type owl:ObjectProperty ; - rdfs:subPropertyOf ; - rdfs:domain aas:AdminShell ; - rdfs:range aas: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#describes -aas:describes rdf:type owl:ObjectProperty ; - rdfs:domain aas:AdminShell ; - rdfs:range aas:Asset ; - rdfs:comment "Connect the Asset with the Administration Shell"@en ; - skos:altLabel "describes"@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 ; +. -### https://admin-shell.io/aas/2/0/rdf#first -aas:first rdf:type owl:ObjectProperty ; - rdfs:comment "First element in the relationship taking the role of the subject."@en ; - rdfs:label "first"^^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 ; +. -### https://admin-shell.io/aas/2/0/rdf#hasConceptDescription -aas: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#hasDatatype -aas:hasDatatype rdf:type owl:ObjectProperty ; - rdfs:domain aas:Submodel ; - rdfs:comment "Points to the datatypes of the Submodels"@en ; - rdfs:label "has Datatype"@en . +### 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 ( + + + ) ; +. -### https://admin-shell.io/aas/2/0/rdf#hasIdType -aas: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 . +### http://admin-shell.io/aas/2/0/AssetKind/INSTANCE + rdf:type owl:NamedIndividual , 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 owl:NamedIndividual , 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 ; + owl:differentFrom aas:INSTANCE ; # todo + owl:differentFrom ; +. -### https://admin-shell.io/aas/2/0/rdf#hasKey -aas:hasKey rdf:type owl:ObjectProperty ; - rdfs:comment "Unique reference in its name space."@en ; - rdfs:label "has Key"^^xsd:string . -### https://admin-shell.io/aas/2/0/rdf#hasKind -aas:hasKind rdf:type owl:ObjectProperty ; - rdfs:subPropertyOf owl:topObjectProperty ; - rdfs:domain aas:AdminShell ; - rdfs:range aas:AssetKind ; - rdfs:label "has kind"@en . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#hasReference -aas:hasReference rdf:type owl:ObjectProperty ; - rdfs:domain aas:Submodel ; - rdfs:label "has Reference"@en . -### https://admin-shell.io/aas/2/0/rdf#hasSubjectAttribute -aas:hasSubjectAttribute rdf:type owl:ObjectProperty ; - rdfs:comment "A data element that further classifies a specific subject."@en ; - rdfs:label "has subjectAttribute"^^xsd:string . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#hasSubmodel -aas:hasSubmodel rdf:type owl:ObjectProperty ; - rdfs:domain aas:Asset ; - 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 ; - skos:altLabel "assetIdentificationModel"@en . +### http://admin-shell.io/aas/2/0/Blob/value + rdf:type rdf:ObjectProperty ; + rdfs:domain aas:Blob ; + rdfs:range aas:BlobType ; # todo + 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#hasValue -aas:hasValue rdf:type owl:ObjectProperty ; - rdfs:domain aas:Submodel ; - rdfs:range aas:Value . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#hasView -aas:hasView rdf:type owl:ObjectProperty ; - rdfs:domain aas:AdminShell ; - 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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#in -aas:in rdf:type owl:ObjectProperty ; - rdfs:comment "the aas:in attribute of aas:operation is the input parameter"@en . +### http://admin-shell.io/aas/2/0/lastCertificate +http://admin-shell.io/aas/2/0/BlobCertificate/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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#isCaseOf -aas:isCaseOf rdf:type owl:ObjectProperty . -### https://admin-shell.io/aas/2/0/rdf#isConnectedTo -aas:isConnectedTo rdf:type owl:ObjectProperty ; - rdfs:domain aas:AdminShell ; - rdfs:range aas:Dimension ; - rdfs:comment "Connects the Admin Shell with the different RAMI4.0 Dimensions"@en ; - rdfs:label "is Connected To"@en . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#mimeType -aas: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 +### 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 ; +. -Mime type of the content of the File."""@en ; - rdfs:label "mimeType"^^xsd:string ; - rdfs:seeAlso "http://uri4uri.net/vocab.html/#MimetypeDatatype"^^xsd:string . +### 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:domain aas:Reference ; +. -### https://admin-shell.io/aas/2/0/rdf#object -aas:object rdf:type owl:ObjectProperty ; - rdfs:comment "Element to which permission shall be assigned."@en ; - rdfs:label "has object"^^xsd:string . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#objectAttribute -aas:objectAttribute rdf:type owl:ObjectProperty ; - rdfs:comment "A data element that further classifies an object."@en ; - rdfs:label "objectAttribute"^^xsd:string . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#out -aas:out rdf:type owl:ObjectProperty ; - rdfs:comment "out is the output paramter of the Operation"@en ; - rdfs:label "out"@en . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . -### https://admin-shell.io/aas/2/0/rdf#preferredName -aas:preferredName rdf:type owl:ObjectProperty ; - rdfs:comment "This is the preferredName of a ConceptDescription object"@en ; - rdfs:label "preferredName"^^xsd:string . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#qualifierType -aas:qualifierType rdf:type owl:ObjectProperty . +### 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"@en ; +. -### https://admin-shell.io/aas/2/0/rdf#qualifierValue -aas: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#second -aas: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://admin-shell.io/aas/2/0/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 . +### 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:comment "todo"@en ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range aas:DataTypeIEC61360 ; +. -### https://admin-shell.io/aas/2/0/rdf#submodelElement -aas:submodelElement rdf:type owl:ObjectProperty ; - rdfs:range aas:SubmodelElement ; - rdfs:comment """A submodel consists of zero or more -submodel elements."""@en ; - rdfs:label "has Submodel Element"@en . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/preferedName + rdf:type owl:DatatypeProperty ; + rdfs:label "has prefered name"^^xsd:string ; + rdfs:comment "todo"@en ; + 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:comment "todo"@en ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range rdf:langString ; +. -### https://admin-shell.io/aas/2/0/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 . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/symbol + rdf:type owl:DatatypeProperty ; + rdfs:label "has symbol"^^xsd:string ; + rdfs:comment "todo"@en ; + 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:comment "todo"@en ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. -### https://admin-shell.io/aas/2/0/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 . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/unitId + rdf:type owl:DatatypeProperty ; + rdfs:label "has unit id"^^xsd:string ; + rdfs:comment "todo"@en ; + 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:comment "todo"@en ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. -### https://admin-shell.io/aas/2/0/rdf#trustAnchor -aas:trustAnchor rdf:type owl:ObjectProperty ; - rdfs:comment "Trust anchor of AAS, typically certificates."@en ; - rdfs:label "trustAnchor"^^xsd:string . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/value + rdf:type owl:ObjectProperty ; + rdfs:label "has value"^^xsd:string ; + rdfs:comment "todo"@en ; + 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#value -aas:value rdf:type owl:ObjectProperty ; - rdfs:comment "The key value, for example an IRDI if the idType=IRDI."@en ; - rdfs:label "keyValue"^^xsd:string . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/valueId + rdf:type owl:ObjectProperty ; + rdfs:label "has value id"^^xsd:string ; + rdfs:comment "todo"@en ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range xsd:string ; +. -################################################################# -# Data properties -################################################################# -### http://purl.org/dc/terms/hasVersion -dcterms:hasVersion rdf:type owl:DatatypeProperty . +### 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:comment "todo"@en ; + rdfs:label "has conversion factor"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. -### http://purl.org/dc/terms/identifier -dcterms:identifier rdf:type owl:DatatypeProperty . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/dinNotation +phys_unit:dinNotation rdf:type owl:DatatypeProperty ; + rdfs:comment "todo"@en ; + 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:comment "todo"@en ; + rdfs:label "has ECE code"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. -### http://www.wurvoc.org/vocabularies/om-1.8/hasNumericalValue -om:hasNumericalValue rdf:type owl:DatatypeProperty . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/eceName +phys_unit:eceName rdf:type owl:DatatypeProperty ; + rdfs:comment "todo"@en ; + 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:comment "todo"@en ; + rdfs:label "has NIST name"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. -### https://admin-shell.io/aas/2/0/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 . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/siName + rdf:type owl:DatatypeProperty ; + rdfs:comment "todo"@en ; + 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:comment "todo"@en ; + rdfs:label "has SI notation"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. -### https://admin-shell.io/aas/2/0/rdf#assetId -aas:assetId rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:identifier . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/registrationAuthority +phys_unit:registrationAuthority rdf:type owl:DatatypeProperty ; + rdfs:comment "todo"@en ; + 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:comment "todo"@en ; + rdfs:label "has supplier"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. -### https://admin-shell.io/aas/2/0/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 . +### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/2/0/unitName +phys_unit:unitName rdf:type owl:DatatypeProperty ; + rdfs:comment "todo"@en ; + 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:comment "todo"@en ; + rdfs:label "unit has symbol"^^xsd:string ; + rdfs:domain phys_unit: ; + rdfs:range xsd:string ; +. -### https://admin-shell.io/aas/2/0/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/2/0/rdf#description -aas:description rdf:type owl:DatatypeProperty . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#hasLocal -aas: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#id -aas: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://admin-shell.io/aas/2/0/rdf#idShort -aas:idShort rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:identifier . +### 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 owl:NamedIndividual , 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#isCaseOf -aas:isCaseOf rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:identifier . +### http://admin-shell.io/aas/2/0/EntityType/SELF_MANAGED_ENTITY + rdf:type owl:NamedIndividual , 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#isDescribedWith -aas:isDescribedWith rdf:type owl:DatatypeProperty ; - rdfs:seeAlso aas: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#logs -aas:logs rdf:type owl:DatatypeProperty ; - rdfs:range xsd:string ; - skos:prefLabel "logs"@en . -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#publishedURL -aas:publishedURL rdf:type owl:DatatypeProperty . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . -### https://admin-shell.io/aas/2/0/rdf#semanticId -aas:semanticId rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:identifier . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#version -aas:version rdf:type owl:DatatypeProperty ; - rdfs:subPropertyOf dcterms:hasVersion ; - rdfs:comment "Version of the element."@en ; - rdfs:label "version"@en . +### http://admin-shell.io/aas/2/0/File/value + rdf:type rdf:ObjectProperty ; + rdfs:domain aas:File ; + rdfs:range aas:PathType ; # todo + 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 ; +. -################################################################# -# Classes -################################################################# -### https://admin-shell.io/aas/2/0/rdf#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/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 ; +. -### https://admin-shell.io/aas/2/0/rdf#AdminShell -aas:AdminShell rdf:type owl:Class ; - rdfs:subClassOf aas:HasDataSpecification , - aas:Identifiable ; - dce: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#AdministrativeInformation -aas:AdministrativeInformation rdf:type owl:Class ; - rdfs:subClassOf aas: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#Asset -aas:Asset rdf:type owl:Class ; - rdfs:subClassOf aas:HasDataSpecification , - aas:HasKind , - aas:Identifiable . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 "BlobDataElement"@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 ; +. -### https://admin-shell.io/aas/2/0/rdf#ConceptDescription -aas:ConceptDescription rdf:type owl:Class ; - rdfs:subClassOf aas:HasDataSpecification , - aas:Identifiable ; - dce: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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" . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#DataElement -aas:DataElement rdf:type owl:Class ; - rdfs:subClassOf aas: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" . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#DataSpecification -aas: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://admin-shell.io/aas/2/0/rdf#Dimension -aas:Dimension rdf:type owl:Class . +### 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 ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/IdentifiableElements/ASSET_ADMINISTRATION_SHELL + rdf:type aas:IdentifiableElements ; + rdfs:label "Asset Administration Shell"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/IdentifiableElements/CONCEPT_DESCRIPTION_ + rdf:type aas:IdentifiableElement ; + rdfs:label "Concept Description"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/IdentifiableElements/SUBMODEL + rdf:type aas:IdentifiableElement ; + rdfs:label "Submodel"^^xsd:string ; + rdfs:comment "todo"@en ; +. -### https://admin-shell.io/aas/2/0/rdf#File -aas:File rdf:type owl:Class ; - rdfs:subClassOf aas:DataElement ; - rdfs:comment "A File is a data element that represents a file via its path description."@en ; - rdfs:label "FileDataElement"@en . -### https://admin-shell.io/aas/2/0/rdf#Formula -aas:Formula rdf:type owl:Class ; - dce:description "A formula is used to describe constraints by a logical expression."@en ; - rdfs:label "Formula"@en . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#HasDataSpecification -aas: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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#Identifiable -aas:Identifiable rdf:type owl:Class ; - rdfs:subClassOf aas:Referable ; - rdfs:comment "An element that has a globally unique identifier."@en ; - rdfs:label "Identifiable"@en ; - skos:note "abstract"@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 ; +. -### https://admin-shell.io/aas/2/0/rdf#Key + +### 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 . + 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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/GLOBAL_REFERENCE +aas: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/FRAGMENT_REFERENCE +aas:FRAGMENT_REFERENCE rdf:type aas:KeyElements ; + rdfs:label "Fragement Reference"^^xsd:string ; + rdfs:comment "todo"@en ; +. + + + +### 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/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 . -### https://admin-shell.io/aas/2/0/rdf#OperationVariable +### 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/OperationVariable aas:OperationVariable rdf:type owl:Class ; - rdfs:subClassOf aas:SubmodelElement ; - dce: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 . + 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 ; +. + +### 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/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 ( + aas:ALLOW + aas:DENY + aas:NOT_APPLICABLE + aas:UNDEFINED + ) ; +. + +### 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 ; +. -### https://admin-shell.io/aas/2/0/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 . +### 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/PolicyEnforcementPoint +aas:PolicyEnforcementPoint rdf:type owl:Class ; + rdfs:comment "Defines the security policy enforcement points (PEP)."@en ; + rdfs:label "Policy Enforcement Point"^^xsd:string ; +. -### https://admin-shell.io/aas/2/0/rdf#Property -aas: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?" . +### 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/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 ; +. -### https://admin-shell.io/aas/2/0/rdf#PropertyValueType -aas:PropertyValueType rdf:type owl:Class ; - dce: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 . +### 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/Qualifiable +aas:Qualifiable rdf:type owl:Class ; + dash:abstract true ; + rdfs:comment "Additional qualification of a qualifiable element."@en ; + rdfs:label "Qualifiable"^^xsd:string ; +. -### https://admin-shell.io/aas/2/0/rdf#Qualifier +### http://admin-shell.io/aas/2/0/Qualifier aas:Qualifier rdf:type owl:Class ; - dce: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 . + 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/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 ; +. -### https://admin-shell.io/aas/2/0/rdf#Referable +### http://admin-shell.io/aas/2/0/Referable aas: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" . + 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/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 ( + + + + + + + + + + + + + + + + + + + + + + + + + ) ; +. -### https://admin-shell.io/aas/2/0/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 . +### http://admin-shell.io/aas/2/0/ReferableElements/ACCESS_PERMISSION_RULE + rdf:type aas:ReferableElements ; + rdfs:label "Access Permission Rule"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/ANNOTATED_RELATIONSHIP_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "Annotated relationship element"^^xsd:string ; + rdfs:comment "todo"@en ; +. -### https://admin-shell.io/aas/2/0/rdf#ReferenceElement -aas:ReferenceElement rdf:type owl:Class ; - dce: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 . +### http://admin-shell.io/aas/2/0/ReferableElements/BASIC_EVENT + rdf:type aas:ReferableElements ; + rdfs:label "Basic Event"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/BLOB + rdf:type aas:ReferableElements ; + rdfs:label "Blob"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/CAPABILITY + rdf:type aas:ReferableElements ; + rdfs:label "Capability"^^xsd:string ; + rdfs:comment "todo"@en ; +. -### https://admin-shell.io/aas/2/0/rdf#RelationshipElement -aas:RelationshipElement rdf:type owl:Class ; - rdfs:subClassOf aas:SubmodelElement ; - dce:description "A relationship element is used to define a relationship between two referable elements."@en ; - rdfs:label "RelationshipElement"@en . +### http://admin-shell.io/aas/2/0/ReferableElements/CONCEPT_DICTIONARY + rdf:type aas:ReferableElements ; + rdfs:label "Concept Dictionary"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/DATA_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "Data Element"^^xsd:string ; + rdfs:comment "todo"@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/2/0/rdf#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/ReferableElements/ENTITY + rdf:type aas:ReferableElements ; + rdfs:label "Entity"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/EVENT + rdf:type aas:ReferableElements ; + rdfs:label "Event"^^xsd:string ; + rdfs:comment "todo"@en ; + skos:note "Event is abstract"@en ; +. -### https://admin-shell.io/aas/2/0/rdf#Submodel -aas:Submodel rdf:type owl:Class ; - rdfs:subClassOf aas:HasDataSpecification , - aas:HasKind , - aas: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 . +### 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 ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/PROPERTY + rdf:type aas:ReferableElements ; + rdfs:label "Property"^^xsd:string ; + rdfs:comment "todo"@en ; +. -### https://admin-shell.io/aas/2/0/rdf#SubmodelElement -aas:SubmodelElement rdf:type owl:Class ; - rdfs:subClassOf aas:HasDataSpecification , - aas:HasKind , - aas: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 . +### http://admin-shell.io/aas/2/0/ReferableElements/RANGE + rdf:type aas:ReferableElements ; + rdfs:label "Range"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/REFERENCE_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "Reference Element"^^xsd:string ; + rdfs:comment "todo"@en ; +. -### https://admin-shell.io/aas/2/0/rdf#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 "SubmodelElementCollection"@en . +### http://admin-shell.io/aas/2/0/ReferableElements/RELATIONSHIPT_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "Relationship Element"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/ReferableElements/SUBMODEL_ELEMENT + rdf:type aas:ReferableElements ; + rdfs:label "SubmodelElement"^^xsd:string ; + rdfs:comment "todo"@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 ; +. + +### 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#Value -aas: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 . +### http://admin-shell.io/aas/2/0/ReferableElement/VIEW + rdf:type aas:ReferableElements ; + rdfs:label "View"^^xsd:string ; + rdfs:comment "todo"@en ; +. -### https://admin-shell.io/aas/2/0/rdf#View +### 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/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/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 ; + owl:disjointWith aas:DataElement ; + owl:disjointWith aas:Event ; + owl:disjointWith aas:Operation ; + owl:disjointWith aas:OperationVariable ; + owl:disjointWith aas:SubmodelElementCollection ; +. + +### 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/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/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/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 ; + 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 "Submodel Element Collection"^^xsd:string ; +. + +### http://admin-shell.io/aas/2/0/View aas:View rdf:type owl:Class ; - rdfs:subClassOf aas:HasDataSpecification , - aas: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 . + rdfs:subClassOf aas:HasDataSpecification , aas:Referable , aas:HasSemantics ; + 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 "View"^^xsd:string ; +. ################################################################# # Individuals ################################################################# -### https://admin-shell.io/aas/2/0/rdf#Asset -aas:Asset rdf:type owl:NamedIndividual . +### http://admin-shell.io/aas/2/0/INSTANCE +aas:INSTANCE rdf:type owl:NamedIndividual , 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 ; + owl:differentFrom aas:ASSET_INSTANCE ; + owl:differentFrom aas:TEMPLATE ; +. +### http://admin-shell.io/aas/2/0/TYPE +aas:TEMPLATE rdf:type owl:NamedIndividual , aas:ModelingKind ; + rdfs:comment "Software element which specifies the common attributes shared by all instances of the template."@en ; + rdfs:label "Template"^^xsd:string ; + owl:differentFrom aas:ASSET_TYPE ; + owl:differentFrom aas:INSTANCE ; +. -### https://admin-shell.io/aas/2/0/rdf#Instance -aas:Instance rdf:type owl:NamedIndividual . +### http://admin-shell.io/aas/2/0/CONSTANT +aas:CONSTANT rdf:type owl:NamedIndividual , 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 ; +. -### https://admin-shell.io/aas/2/0/rdf#Type -aas: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 . +### http://admin-shell.io/aas/2/0/PARAMETER +aas:PARAMETER rdf:type owl:NamedIndividual , 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/VARIABLE +aas:VARIABLE rdf:type owl:NamedIndividual , 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 ; +. -################################################################# -# Annotations -################################################################# -om:hasNumericalValue rdfs:label "has numerical value"@en . +### http://admin-shell.io/aas/2/0/ALLOW +aas: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/DENY +aas: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/NOT_APPLICABLE +aas: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/UNDEFINED +aas: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/accessControlPolicyPoints +aas: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/requiredCertificateExtension +aas: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/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"^^xsd:string ; + rdfs:domain aas:PolicyAdministrationPoint ; + rdfs:range aas:AccessControl ; +. + +### http://admin-shell.io/aas/2/0/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"^^xsd:string ; + rdfs:domain aas:PolicyAdministrationPoint ; + rdfs:range aas:Endpoint ; +. + +### http://admin-shell.io/aas/2/0/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"^^xsd:string ; + rdfs:domain aas:PolicyInformationPoints ; + rdfs:range aas:Endpoint ; +. + +### http://admin-shell.io/aas/2/0/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"^^xsd:string ; + rdfs:domain aas:PolicyInformationPoints ; + rdfs:range aas:Submodel ; +. + + +### http://admin-shell.io/aas/2/0/object +aas: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 ; +. -aas: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 . +### http://admin-shell.io/aas/2/0/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"^^xsd:string ; + rdfs:domain aas:PermissionsPerObject ; + rdfs:range aas:ObjectAttributes ; +. +### http://admin-shell.io/aas/2/0/objectAttribute +aas: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 ; +. -aas: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 . +### http://admin-shell.io/aas/2/0/objectPermission +aas: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/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"^^xsd:string ; + rdfs:domain aas:Permission ; + rdfs:range aas:Property ; +. -aas:description rdfs:comment "Description or comments on the element. The description can be provided in several languages."@en ; - skos:prefLabel "has Description"@en . +### http://admin-shell.io/aas/2/0/propertyValueId +aas:propertyValueId rdf:type owl:ObjectProperty ; + rdfs:comment "Reference to the global unqiue 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/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"^^xsd:string ; + rdfs:domain aas:Permission ; + rdfs:range aas:PermissionKind ; +. -aas:idShort rdfs:label "idShort"@en ; - owl:deprecated "true"^^xsd:boolean . +### http://admin-shell.io/aas/2/0/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"^^xsd:string ; + rdfs:domain aas:SubjectAttributes ; + rdfs:range aas:DataElement ; +. -aas: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 . +### 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_IEC6360_DATATYPE + iec61360:STRING_IEC6360_DATATYPE + iec61360:STRING_TRANSLATABLE_IEC6360_DATATYPE + iec61360:REAL_MEASURE_IEC6360_DATATYPE + iec61360:REAL_COUNT_IEC6360_DATATYPE + iec61360:REAL_CURRENCY_IEC6360_DATATYPE + iec61360:BOOLEAN_IEC6360_DATATYPE + iec61360:URL_IEC6360_DATATYPE + iec61360:RATIONAL_IEC6360_DATATYPE + iec61360:RATIONAL_MEASURE_IEC6360_DATATYPE + iec61360:TIME_IEC6360_DATATYPE + iec61360:TIMESTAMP_IEC6360_DATATYPE + ) ; +. -### Generated by the OWL API (version 4.2.8.20170104-2310) https://github.com/owlcs/owlapi +### http://admin-shell.io/aas/2/0/DATE_IEC6360_DATATYPE +iec61360:DATE_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "date according to IEC61360"^^xsd:string ; + rdfs:seeAlso xsd:date ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/BOOLEAN_IEC6360_DATATYPE +iec61360:BOOLEAN_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "boolean according to IEC61360"^^xsd:string ; + rdfs:seeAlso xsd:boolean ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/REAL_CURRENCY_IEC6360_DATATYPE +iec61360:REAL_CURRENCY_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "real currency according to IEC61360"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/REAL_COUNT_IEC6360_DATATYPE +iec61360:REAL_COUNT_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "real count according to IEC61360"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/REAL_MEASURE_IEC6360_DATATYPE +iec61360:REAL_MEASURE_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "real measure according to IEC61360"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/STRING_IEC6360_DATATYPE +iec61360:STRING_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "string according to IEC61360"^^xsd:string ; + rdfs:seeAlso xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/STRING_TRANSLATABLE_IEC6360_DATATYPE +iec61360:STRING_TRANSLATABLE_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "translatable string according to IEC61360"^^xsd:string ; + rdfs:seeAlso xsd:langString ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/RATIONAL_MEASURE_IEC6360_DATATYPE +iec61360:RATIONAL_MEASURE_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "retional measure according to IEC61360"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/RATIONAL_IEC6360_DATATYPE +iec61360:RATIONAL_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "retional according to IEC61360"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/TIME_IEC6360_DATATYPE +iec61360:TIME_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "time according to IEC61360"^^xsd:string ; + rdfs:comment "todo"@en ; +. +### http://admin-shell.io/aas/2/0/TIMESTAMP_IEC6360_DATATYPE +iec61360:TIMESTAMP_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "time stamp according to IEC61360"^^xsd:string ; + rdfs:comment "todo"@en ; + rdfs:seeAlso xsd:dateTime ; +. +### http://admin-shell.io/aas/2/0/URL_IEC6360_DATATYPE +iec61360:URL_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; + rdfs:label "url according to IEC61360"^^xsd:string ; + rdfs:comment "todo"@en ; +. diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..961a347 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,34 @@ +# 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` +* + + +### Changed + +* Namespace: from `aas: ` to `aas: ` +* `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` + + +### 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` + 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). From 0d3e12568b5f2eec4850e6e4bfcc825038d616f3 Mon Sep 17 00:00:00 2001 From: sbader Date: Thu, 7 May 2020 20:33:04 +0200 Subject: [PATCH 8/9] Updates for 'AAS in Detail - Part 1 - Version 2.0.1' -- K to Z. --- AssetAdministrationShell_Ontology_2.0.1.ttl | 2239 +++++++++---------- CHANGELOG.md | 15 +- 2 files changed, 1029 insertions(+), 1225 deletions(-) diff --git a/AssetAdministrationShell_Ontology_2.0.1.ttl b/AssetAdministrationShell_Ontology_2.0.1.ttl index fbc56a8..12440b2 100644 --- a/AssetAdministrationShell_Ontology_2.0.1.ttl +++ b/AssetAdministrationShell_Ontology_2.0.1.ttl @@ -21,432 +21,132 @@ rdfs:isDefinedBy ; . -################################################################# -# Object Properties -################################################################# - - -### http://admin-shell.io/aas/2/0/certificate -aas: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/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 ; -. - -### http://admin-shell.io/aas/2/0/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"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/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"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/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 "has default subject attributes"^^xsd:string ; -. - - - -### http://admin-shell.io/aas/2/0/embeddedDataSpecification -aas:embeddedDataSpecification rdf:type owl:ObjectProperty ; - rdfs:label "has embedded data specification"^^xsd:string ; - rdfs:comment "todo"@en ; -. - -### http://admin-shell.io/aas/2/0/inputVariable -aas: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/inoutputVariable -aas: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/inAccordanceWith todo -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 "is in accordance With"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/key todo -aas:key rdf:type owl:ObjectProperty ; - rdfs:comment "Unique reference in its name space."@en ; - rdfs:label "has key"^^xsd:string ; - rdfs:range aas:Key ; -. - -### http://admin-shell.io/aas/2/0/max -aas: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/min -aas: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/object todo -aas:object rdf:type owl:ObjectProperty ; - rdfs:comment "Element to which permission shall be assigned."@en ; - rdfs:label "has object"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/objectAttribute todo -aas:objectAttribute rdf:type owl:ObjectProperty ; - rdfs:comment "A data element that further classifies an object."@en ; - rdfs:label "has object attribute"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/outputVariable -aas: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/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."@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/preferredName todo -aas:preferredName rdf:type owl:ObjectProperty ; - rdfs:comment "This is the preferredName of a ConceptDescription object"@en ; - rdfs:label "has preferred name"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/propertyCategory -aas:propertyCategory rdf:type owl:ObjectProperty ; - rdfs:label "has property category"^^xsd:string ; - rdfs:comment "The following categories are defined for properties and multi-language properties: aas:CONSTANT, aas:PARAMETER, and aas:VARIABLE."@en ; -. - -### http://admin-shell.io/aas/2/0/qualifier -aas: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/qualifierType -aas:qualifierType 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/qualifierValue -aas:qualifierValue 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/qualifierValueId -aas:qualifierValueId 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/relationshipFirst -aas:relationshipFirst 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/relationshipSecond -aas:relationshipSecond 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/selectableEnvironmentAttributes todo -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 "has selectable environment attributes"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/subjectAttribute todo -aas:subjectAttribute rdf:type owl:ObjectProperty ; - rdfs:comment "A data element that further classifies a specific subject."@en ; - rdfs:label "has subject attribute"^^xsd:string ; -. - - -### http://admin-shell.io/aas/2/0/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"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/targetObjectAttributes todo -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"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/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"^^xsd:string ; -. - - -################################################################# -# Data properties -################################################################# - -### http://admin-shell.io/aas/2/0/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 ; - rdfs:label "allow duplicates"^^xsd:string ; - rdfs:domain aas:SubmodelElementCollection ; - rdfs:range xsd:boolean ; -. - -### http://admin-shell.io/aas/2/0/category -aas: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/description -aas: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/externalPolicyDecisionPoint -aas: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:PolicyEnforcementPoint ; - rdfs:range xsd:boolean ; -. - -### http://admin-shell.io/aas/2/0/externalPolicyEnforcementPoint -aas: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/idShort -aas: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/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 ; -. - - - -################################################################# -# Classes -################################################################# - - ### 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 . + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; @@ -472,8 +172,6 @@ aas:AdministrativeInformation rdf:type owl:Class ; rdfs:range xsd:string ; . - - ### http://admin-shell.io/aas/2/0/AnnotatedRelationshipElement aas:AnnotatedRelationshipElement rdf:type owl:Class ; rdfs:subClassOf aas:RelationshipElement ; @@ -483,74 +181,70 @@ aas:AnnotatedRelationshipElement rdf:type owl:Class ; ### 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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:domain aas:AssetAdministrationShell ; rdfs:range aas:Reference ; - rdfs:comment "The asset the AAS is representing."@en ; - rdfs:label "has asset"^^xsd:string ; + 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 ; + 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 @@ -564,9 +258,9 @@ aas:AssetAdministrationShell rdf:type owl:Class ; ### 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 ; + 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 @@ -579,15 +273,13 @@ aas:AssetAdministrationShell rdf:type owl:Class ; ### 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 ; + 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 ; @@ -599,50 +291,44 @@ aas:AssetKind rdf:type owl:Class ; . ### http://admin-shell.io/aas/2/0/AssetKind/INSTANCE - rdf:type owl:NamedIndividual , 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 ; + 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 owl:NamedIndividual , 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 ; - owl:differentFrom aas:INSTANCE ; # todo - owl:differentFrom ; + 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 ; + 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 ; + 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 ; + 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: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 ; @@ -652,428 +338,399 @@ aas:Blob rdf:type owl:Class ; ### http://admin-shell.io/aas/2/0/Blob/value rdf:type rdf:ObjectProperty ; rdfs:domain aas:Blob ; - rdfs:range aas:BlobType ; # todo - rdfs:comment "The value of the BLOB instance of a blob data element."@en ; + 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 ; + 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 ; + 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:comment "Certificate as BLOB."@en ; rdfs:label "Blob Certificate"^^xsd:string ; - rdfs:domain aas:BlobCertificate ; - rdfs:range xsd:byte ; + 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 ; + 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 -http://admin-shell.io/aas/2/0/BlobCertificate/lastCertificate> rdf:type owl:DatatypeProperty ; + 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 ; + 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 ; + 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 ; + 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: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 ; + 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:domain aas:Reference ; + 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 ; + 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 ; + 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 ; + 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 ; + 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"@en ; + 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 ; + 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 ; +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:comment "todo"@en ; - rdfs:domain iec61360:DataSpecificationIEC61360 ; - rdfs:range aas:DataTypeIEC61360 ; + rdfs:label "has datatype"^^xsd:string ; + rdfs:domain iec61360:DataSpecificationIEC61360 ; + rdfs:range aas:DataTypeIEC61360 ; . -### http://admin-shell.io/DataSpecificationTemplates/DataSpecificationIEC61360/2/0/DataSpecificationIEC61360/preferedName - rdf:type owl:DatatypeProperty ; - rdfs:label "has prefered name"^^xsd:string ; - rdfs:comment "todo"@en ; - rdfs:domain iec61360:DataSpecificationIEC61360 ; - rdfs:range rdf:langString ; +### 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:comment "todo"@en ; - rdfs:domain iec61360:DataSpecificationIEC61360 ; - rdfs:range rdf:langString ; + 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:comment "todo"@en ; - rdfs:domain iec61360:DataSpecificationIEC61360 ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:domain iec61360:DataSpecificationIEC61360 ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:domain iec61360:DataSpecificationIEC61360 ; - rdfs:range aas:Reference ; + 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:comment "todo"@en ; - rdfs:domain iec61360:DataSpecificationIEC61360 ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:domain iec61360:DataSpecificationIEC61360 ; - rdfs:range xsd:string ; + 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 ; + 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:comment "todo"@en ; - rdfs:domain iec61360:DataSpecificationIEC61360 ; - rdfs:range xsd:string ; + 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 ; + 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:comment "todo"@en ; - rdfs:label "has conversion factor"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "has DIN notation"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "has ECE code"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "has ECE name"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "has NIST name"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "has SI name"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "has SI notation"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "has registration authority"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "has supplier"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "unit has name"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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:comment "todo"@en ; - rdfs:label "unit has symbol"^^xsd:string ; - rdfs:domain phys_unit: ; - rdfs:range xsd:string ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ( ) ; + 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 owl:NamedIndividual , 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 ; + 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 owl:NamedIndividual , 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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:domain aas:File ; rdfs:range xsd:string ; rdfs:comment "Mime type of the content of the File."@en ; rdfs:label "has mimetype"^^xsd:string ; @@ -1083,68 +740,60 @@ aas:File rdf:type owl:Class ; ### http://admin-shell.io/aas/2/0/File/value rdf:type rdf:ObjectProperty ; rdfs:domain aas:File ; - rdfs:range aas:PathType ; # todo - 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 ; + 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 @@ -1158,127 +807,113 @@ aas:HasSemantics rdf:type owl:Class ; 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 ; + 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 ; + 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:domain aas:Identifiable ; rdfs:range aas:Identifier ; - rdfs:label "has identification"^^xsd:string ; - rdfs:comment "The globally unique identification of the element."@en ; + 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 ( - - - - - ) ; + 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 ; - rdfs:comment "todo"@en ; + 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 ; - rdfs:comment "todo"@en ; + 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 ; - rdfs:comment "todo"@en ; + rdfs:label "Concept Description"^^xsd:string ; . ### http://admin-shell.io/aas/2/0/IdentifiableElements/SUBMODEL rdf:type aas:IdentifiableElement ; - rdfs:label "Submodel"^^xsd:string ; - rdfs:comment "todo"@en ; + 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 ; + 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 ; + 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 ; + 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 ( - - - + 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 ; + 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 ; + 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 ; + 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 ; @@ -1287,18 +922,18 @@ aas:Key rdf:type owl:Class ; ### 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 ; + 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 ; + 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 @@ -1311,10 +946,10 @@ aas:Key rdf:type owl:Class ; ### 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 ; + 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 @@ -1324,101 +959,111 @@ aas:Key rdf:type owl:Class ; 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/GLOBAL_REFERENCE -aas: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/FRAGMENT_REFERENCE -aas:FRAGMENT_REFERENCE rdf:type aas:KeyElements ; - rdfs:label "Fragement Reference"^^xsd:string ; - rdfs:comment "todo"@en ; + 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 ( + 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 ( - - - ) ; + 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 ; + 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 ; + 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) ; + 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 @@ -1431,67 +1076,222 @@ aas:MultiLanguageProperty rdf:type owl:Class ; ### 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 . + 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 ; + 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 ; - 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 ; + 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 ; + 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 ( - aas:ALLOW - aas:DENY - aas:NOT_APPLICABLE - aas:UNDEFINED - ) ; + 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 + http://admin-shell.io/aas/2/0/PermissionKind/DENY + http://admin-shell.io/aas/2/0/PermissionKind/NOT_APPLICABLE + http://admin-shell.io/aas/2/0/PermissionKind/UNDEFINED + ) ; +. + +### 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 ; + 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 ; + rdfs:comment "Definition of a security administration point (PDP)."@en ; + rdfs:label "Policy Administration Point"^^xsd:string ; . -### 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/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 ; + 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 ; + 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 @@ -1501,183 +1301,288 @@ aas:Property rdf:type owl:Class ; 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 ; + 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 ; + 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 ; + 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 ; + 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 ( - - - - - - - - - - - - - - - - - - - - - - - - - ) ; + 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 ; - rdfs:comment "todo"@en ; + 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 ; - rdfs:comment "todo"@en ; + 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 ; - rdfs:comment "todo"@en ; + rdfs:label "Basic Event"^^xsd:string ; . ### http://admin-shell.io/aas/2/0/ReferableElements/BLOB rdf:type aas:ReferableElements ; - rdfs:label "Blob"^^xsd:string ; - rdfs:comment "todo"@en ; + rdfs:label "Blob"^^xsd:string ; . ### http://admin-shell.io/aas/2/0/ReferableElements/CAPABILITY rdf:type aas:ReferableElements ; - rdfs:label "Capability"^^xsd:string ; - rdfs:comment "todo"@en ; + 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 ; - rdfs:comment "todo"@en ; + 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 ; - rdfs:comment "todo"@en ; - skos:note "Data Element is abstract, i.e. if a key uses 'DataElement' the reference may be a Property, a File etc."@en ; + 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 ; - rdfs:comment "todo"@en ; + rdfs:label "Entity"^^xsd:string ; . ### http://admin-shell.io/aas/2/0/ReferableElements/EVENT rdf:type aas:ReferableElements ; - rdfs:label "Event"^^xsd:string ; - rdfs:comment "todo"@en ; - skos:note "Event is abstract"@en ; + 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 ; + 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 ; - rdfs:comment "todo"@en ; + rdfs:label "Operation"^^xsd:string ; . ### http://admin-shell.io/aas/2/0/ReferableElements/PROPERTY rdf:type aas:ReferableElements ; - rdfs:label "Property"^^xsd:string ; - rdfs:comment "todo"@en ; + rdfs:label "Property"^^xsd:string ; . ### http://admin-shell.io/aas/2/0/ReferableElements/RANGE rdf:type aas:ReferableElements ; - rdfs:label "Range"^^xsd:string ; - rdfs:comment "todo"@en ; + 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 ; - rdfs:comment "todo"@en ; + 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 ; - rdfs:comment "todo"@en ; + 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 ; - rdfs:comment "todo"@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 ; + 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 ; + 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 ; - rdfs:comment "todo"@en ; + 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 ; + 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 @@ -1687,27 +1592,80 @@ aas:ReferenceElement rdf:type owl:Class ; 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 ; - owl:disjointWith aas:DataElement ; - owl:disjointWith aas:Event ; - owl:disjointWith aas:Operation ; - owl:disjointWith aas:OperationVariable ; - owl:disjointWith aas:SubmodelElementCollection ; +. + +### 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 . + 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 ; + 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 @@ -1718,313 +1676,148 @@ aas:Submodel rdf:type owl:Class ; 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 ; + "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 ; + 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 ; - 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 "Submodel Element Collection"^^xsd:string ; -. - -### http://admin-shell.io/aas/2/0/View -aas:View rdf:type owl:Class ; - rdfs:subClassOf aas:HasDataSpecification , aas:Referable , aas:HasSemantics ; - 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 "View"^^xsd:string ; -. - - -################################################################# -# Individuals -################################################################# - -### http://admin-shell.io/aas/2/0/INSTANCE -aas:INSTANCE rdf:type owl:NamedIndividual , 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 ; - owl:differentFrom aas:ASSET_INSTANCE ; - owl:differentFrom aas:TEMPLATE ; -. - -### http://admin-shell.io/aas/2/0/TYPE -aas:TEMPLATE rdf:type owl:NamedIndividual , aas:ModelingKind ; - rdfs:comment "Software element which specifies the common attributes shared by all instances of the template."@en ; - rdfs:label "Template"^^xsd:string ; - owl:differentFrom aas:ASSET_TYPE ; - owl:differentFrom aas:INSTANCE ; -. - - -### http://admin-shell.io/aas/2/0/CONSTANT -aas:CONSTANT rdf:type owl:NamedIndividual , 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/PARAMETER -aas:PARAMETER rdf:type owl:NamedIndividual , 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 ; + 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/VARIABLE -aas:VARIABLE rdf:type owl:NamedIndividual , 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/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/ALLOW -aas: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/DENY -aas: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/NOT_APPLICABLE -aas: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/UNDEFINED -aas: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/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/accessControlPolicyPoints -aas: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/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/requiredCertificateExtension -aas: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/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/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"^^xsd:string ; - rdfs:domain aas:PolicyAdministrationPoint ; - rdfs:range aas:AccessControl ; +### 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/aas/2/0/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"^^xsd:string ; - rdfs:domain aas:PolicyAdministrationPoint ; - rdfs:range aas:Endpoint ; +### 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/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"^^xsd:string ; - rdfs:domain aas:PolicyInformationPoints ; - rdfs:range aas:Endpoint ; +### 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/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"^^xsd:string ; - rdfs:domain aas:PolicyInformationPoints ; - rdfs:range aas:Submodel ; +### 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/object -aas: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/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/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"^^xsd:string ; - rdfs:domain aas:PermissionsPerObject ; - rdfs:range aas:ObjectAttributes ; +### 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/objectAttribute -aas: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/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/objectPermission -aas: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/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/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"^^xsd:string ; - rdfs:domain aas:Permission ; - rdfs:range aas:Property ; +### 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/propertyValueId -aas:propertyValueId rdf:type owl:ObjectProperty ; - rdfs:comment "Reference to the global unqiue 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/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/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"^^xsd:string ; - rdfs:domain aas:Permission ; - rdfs:range aas:PermissionKind ; +### 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/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"^^xsd:string ; - rdfs:domain aas:SubjectAttributes ; - rdfs:range aas:DataElement ; +### 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/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_IEC6360_DATATYPE - iec61360:STRING_IEC6360_DATATYPE - iec61360:STRING_TRANSLATABLE_IEC6360_DATATYPE - iec61360:REAL_MEASURE_IEC6360_DATATYPE - iec61360:REAL_COUNT_IEC6360_DATATYPE - iec61360:REAL_CURRENCY_IEC6360_DATATYPE - iec61360:BOOLEAN_IEC6360_DATATYPE - iec61360:URL_IEC6360_DATATYPE - iec61360:RATIONAL_IEC6360_DATATYPE - iec61360:RATIONAL_MEASURE_IEC6360_DATATYPE - iec61360:TIME_IEC6360_DATATYPE - iec61360:TIMESTAMP_IEC6360_DATATYPE - ) ; -. - -### http://admin-shell.io/aas/2/0/DATE_IEC6360_DATATYPE -iec61360:DATE_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "date according to IEC61360"^^xsd:string ; - rdfs:seeAlso xsd:date ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/BOOLEAN_IEC6360_DATATYPE -iec61360:BOOLEAN_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "boolean according to IEC61360"^^xsd:string ; - rdfs:seeAlso xsd:boolean ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/REAL_CURRENCY_IEC6360_DATATYPE -iec61360:REAL_CURRENCY_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "real currency according to IEC61360"^^xsd:string ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/REAL_COUNT_IEC6360_DATATYPE -iec61360:REAL_COUNT_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "real count according to IEC61360"^^xsd:string ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/REAL_MEASURE_IEC6360_DATATYPE -iec61360:REAL_MEASURE_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "real measure according to IEC61360"^^xsd:string ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/STRING_IEC6360_DATATYPE -iec61360:STRING_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "string according to IEC61360"^^xsd:string ; - rdfs:seeAlso xsd:string ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/STRING_TRANSLATABLE_IEC6360_DATATYPE -iec61360:STRING_TRANSLATABLE_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "translatable string according to IEC61360"^^xsd:string ; - rdfs:seeAlso xsd:langString ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/RATIONAL_MEASURE_IEC6360_DATATYPE -iec61360:RATIONAL_MEASURE_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "retional measure according to IEC61360"^^xsd:string ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/RATIONAL_IEC6360_DATATYPE -iec61360:RATIONAL_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "retional according to IEC61360"^^xsd:string ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/TIME_IEC6360_DATATYPE -iec61360:TIME_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "time according to IEC61360"^^xsd:string ; - rdfs:comment "todo"@en ; -. -### http://admin-shell.io/aas/2/0/TIMESTAMP_IEC6360_DATATYPE -iec61360:TIMESTAMP_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "time stamp according to IEC61360"^^xsd:string ; - rdfs:comment "todo"@en ; - rdfs:seeAlso xsd:dateTime ; -. -### http://admin-shell.io/aas/2/0/URL_IEC6360_DATATYPE -iec61360:URL_IEC6360_DATATYPE rdf:type iec61360:DataTypeIEC61360 ; - rdfs:label "url according to IEC61360"^^xsd:string ; - rdfs:comment "todo"@en ; +### 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/CHANGELOG.md b/CHANGELOG.md index 961a347..4eba85a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,12 +10,16 @@ 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/` @@ -23,6 +27,12 @@ Version 2.0.1 of the AAS RDF Serialization * `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 @@ -31,4 +41,5 @@ Version 2.0.1 of the AAS RDF Serialization * `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` From cb42333378f1aa81b1b04ba15e4e72ba59a67f87 Mon Sep 17 00:00:00 2001 From: sbader Date: Thu, 7 May 2020 20:45:12 +0200 Subject: [PATCH 9/9] correcting syntax error --- AssetAdministrationShell_Ontology_2.0.1.ttl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/AssetAdministrationShell_Ontology_2.0.1.ttl b/AssetAdministrationShell_Ontology_2.0.1.ttl index 12440b2..3bf8840 100644 --- a/AssetAdministrationShell_Ontology_2.0.1.ttl +++ b/AssetAdministrationShell_Ontology_2.0.1.ttl @@ -1161,10 +1161,10 @@ 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 - http://admin-shell.io/aas/2/0/PermissionKind/DENY - http://admin-shell.io/aas/2/0/PermissionKind/NOT_APPLICABLE - http://admin-shell.io/aas/2/0/PermissionKind/UNDEFINED + + + + ) ; .