You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your task related to a problem? Please describe.
When generating the AAS Environment based on a SAMM definition, it would be useful for later value processing of an AAS instance to keep the full semantic information of the TTL file (including namespaces) within the AAS model.
Currently, when the AAS model is generated, especially aas:Property elements have aas:semanticId which point's to the elements qualified name of out of the SAMM model. The corresponding aas:ConceptDescription is created and part of the AAS environment.
Minor change: The generated aas:semanticId is generated as ExternalReference. It might be created as a ModelReference referencing the generated aas:ConceptDescription.
Problem: The aas:semanticId however is not added for aas:SubmodelElementCollection elements, although the respective aas:ConceptDescription is present in the environment.
That way, the relevant semantic information of the aspect model w.r.t the entity type is lost in the AAS model.
Describe the solution you'd like
The generated AAS model should retain the full semantic information. Based on that, an AAS Submodel or or even SubmodelElements may be represented/serialized as lightweight RDF / JSON-LD documents in addition to the yet existing Value Only serialization. This would allow for further validation of AAS instance data with existing RDF tools.
In order to retain the linking between the generated AAS model and its originating TTL file, the following should happen:
Each element's aas:semanticId refers to its corresponding aas:ConceptDescription.
The corresponding aas:ConceptDescription created on behalf of samm:Property elements either outline the aas:dataSpecificationContent (for aas:DataElement's) or indicate the entity type for aas:SubmodelElementCollection elements representing samm:Entity elements, e.g. samm:Property elements with a complex characteristic type results in aas:ConceptDescription elements where the entity type is stated as ExternalReference in the element's aas:isCaseOf list.
Describe alternatives you've considered
Additional context
To solve the issue (when reasonable & applicable), it is sufficient, to tweak the AspectModelAasVisitor. You may check the provided version (based on v2.13.0 AspectModelAasVisitor)
The following changes are relevant (starting with line number)
345: Do not exclude SubmodelElementList & SubmodelElementCollection when using payloadName
382: include a semanticId for SubmodelElementCollection referencing the yet generated ConceptDescription
403: build the semanticId for SubmodelElementCollection
480: build the Reference(s) for complex type characteristic
515: include the reference(s) for complex type characteristics
Is your task related to a problem? Please describe.
When generating the AAS Environment based on a SAMM definition, it would be useful for later value processing of an AAS instance to keep the full semantic information of the TTL file (including namespaces) within the AAS model.
Currently, when the AAS model is generated, especially aas:Property elements have aas:semanticId which point's to the elements qualified name of out of the SAMM model. The corresponding aas:ConceptDescription is created and part of the AAS environment.
Minor change: The generated aas:semanticId is generated as ExternalReference. It might be created as a ModelReference referencing the generated aas:ConceptDescription.
Problem: The aas:semanticId however is not added for aas:SubmodelElementCollection elements, although the respective aas:ConceptDescription is present in the environment.
That way, the relevant semantic information of the aspect model w.r.t the entity type is lost in the AAS model.
Describe the solution you'd like
The generated AAS model should retain the full semantic information. Based on that, an AAS Submodel or or even SubmodelElements may be represented/serialized as lightweight RDF / JSON-LD documents in addition to the yet existing Value Only serialization. This would allow for further validation of AAS instance data with existing RDF tools.
In order to retain the linking between the generated AAS model and its originating TTL file, the following should happen:
Describe alternatives you've considered
Additional context
To solve the issue (when reasonable & applicable), it is sufficient, to tweak the AspectModelAasVisitor. You may check the provided version (based on v2.13.0 AspectModelAasVisitor)
AspectModelAasVisitor.java
The following changes are relevant (starting with line number)
345: Do not exclude SubmodelElementList & SubmodelElementCollection when using payloadName
382: include a semanticId for SubmodelElementCollection referencing the yet generated ConceptDescription
403: build the semanticId for SubmodelElementCollection
480: build the Reference(s) for complex type characteristic
515: include the reference(s) for complex type characteristics
Kind regards