Open VladimirAlexiev opened 8 months ago
@sebbader-sap @mhrimaz can you please have a look?
@VladimirAlexiev The Ontology of the metamodel and its constraints in the form of SHACL shapes outlines the structure of RDF representation of AAS. The focus of the examples are to show the structure of the RDF representation, but it does not really reflects best practices. If you also notice, all the attributes are blank nodes which is not suitable in many scenarios. So this example is also valid:
@base <https://dfki.de/dt/aas/> .
@prefix aas: <https://admin-shell.io/aas/3/0/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xs: <http://www.w3.org/2001/XMLSchema#> .
<shell-473220a3-8deb-4346-b7df-751bc55d57f3> rdf:type aas:AssetAdministrationShell ;
<https://admin-shell.io/aas/3/0/Identifiable/id> "https://dfki.de/dt/aas/shell-473220a3-8deb-4346-b7df-751bc55d57f3"^^xs:string ;
<https://admin-shell.io/aas/3/0/AssetAdministrationShell/assetInformation> [
rdf:type aas:AssetInformation ;
<https://admin-shell.io/aas/3/0/AssetInformation/assetKind> <https://admin-shell.io/aas/3/0/AssetKind/Instance> ;
<https://admin-shell.io/aas/3/0/AssetInformation/globalAssetId> "https://dfki.de/dt/assets/asset-998cc9f2-2df1-44fe-9375-6166fe77d06f"^^xs:string ;
<https://admin-shell.io/aas/3/0/AssetInformation/assetType> "https://dfki.de/catalouge/dfki_transporter_robot"^^xs:string ;
] ;
<https://admin-shell.io/aas/3/0/AssetAdministrationShell/submodels> [
rdf:type aas:Reference ;
<https://admin-shell.io/aas/3/0/Reference/type> <https://admin-shell.io/aas/3/0/ReferenceTypes/ModelReference> ;
<https://admin-shell.io/aas/3/0/Reference/keys> [
rdf:type aas:Key ;
<https://admin-shell.io/aas/3/0/Key/type> <https://admin-shell.io/aas/3/0/KeyTypes/Submodel> ;
<https://admin-shell.io/aas/3/0/Key/value> "https://dfki.de/dt/aas/shell-473220a3-8deb-4346-b7df-751bc55d57f3/OperationalInformation"^^xs:string ;
] ;
] ;
.
You might also suggest a better vocabulary that follows best practices, spot issues related to data types, or invalid SHACL shape . These are under discussion.
Describe the bug RDF examples use relative URLs but don't specify a
@base
. This is a bad practice since the full URL then depends on the (cwd of the) processing systemWhere https://github.com/admin-shell-io/aas-specs/blob/2ab08f92bdd1d44edc1cfee52552fe5429d2178e/schemas/rdf/examples/generated/AssetAdministrationShell/maximal.ttl#L7