-
Notifications
You must be signed in to change notification settings - Fork 14
SupplementalSemanticIds in AAS Queries #568
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: IDTA-01002-3-2_working
Are you sure you want to change the base?
Changes from all commits
f48ccbe
89e3261
5d64481
17963b7
c94085c
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -132,6 +132,10 @@ | |||||
| | `semanticId.type` | ReferenceType of a semanticId Reference | `$sm#semanticId.type` | ||||||
| | `semanticId.keys[<index>].type` | KeyType of a semanticId Reference | `$sm#semanticId.keys[].type` | ||||||
| | `semanticId.keys[<index>].value` | Value of a key of a semanticId Reference | `$sme#semanticId.keys[].value` | ||||||
| | `supplementalSemanticIds` | Shortcut for supplementalSemanticIds, see Clause xref:references[References] | `$sm#supplementalSemanticIds` | ||||||
| | `supplementalSemanticIds[<index>].type` | ReferenceType of a supplementalSemanticId Reference | `$sm#supplementalSemanticIds[].type` | ||||||
| | `supplementalSemanticIds[<index>].keys[<index>].type` | KeyType of a supplementalSemanticId Reference | `$sm#supplementalSemanticIds[].keys[].type` | ||||||
| | `supplementalSemanticIds[<index>].keys[<index>].value` | Value of a key of a supplementalSemanticId Reference | `$sm#supplementalSemanticIds[].keys[].value` | ||||||
| | `value` | Value of a Submodel Element | `$sme#value` | ||||||
| | `valueType` | ValueType of a Submodel Element | `$sme.someIdShort#valueType` | ||||||
| | `language` | Language of a Multilanguage Property | `$sme#language` | ||||||
|
|
@@ -163,6 +167,10 @@ | |||||
| | `submodelDescriptors.semanticId.type` | ReferenceType of a semanticId Reference used in a referenced Submodel of an Asset Administration Shell Descriptor | `$aasdesc#submodelDescriptors.semanticId.type` | ||||||
| | `submodelDescriptors.semanticId.keys[<index>].type` | KeyType of a semanticId Reference used in a referenced Submodel of an Asset Administration Shell Descriptor | `$aasdesc#submodelDescriptors.semanticId.keys[].type` | ||||||
| | `submodelDescriptors.semanticId.keys[<index>].value` | Value of a key of a semanticId Reference used in a referenced Submodel of an Asset Administration Shell Descriptor | `$aasdesc#submodelDescriptors.semanticId.keys[].value` | ||||||
| | `submodelDescriptors.supplementalSemanticIds` | Shortcut for supplementalSemanticIds, see Clause xref:references[References] | `$aasdesc#submodelDescriptors.supplementalSemanticIds` | ||||||
| | `submodelDescriptors.supplementalSemanticIds[<index>].type` | ReferenceType of a supplementalSemanticId Reference used in a referenced Submodel of an Asset Administration Shell Descriptor | `$aasdesc#submodelDescriptors.supplementalSemanticIds[].type` | ||||||
| | `submodelDescriptors.supplementalSemanticIds[<index>].keys[<index>].type` | KeyType of a supplementalSemanticId Reference used in a referenced Submodel of an Asset Administration Shell Descriptor | `$aasdesc#submodelDescriptors.supplementalSemanticIds[].keys[].type` | ||||||
| | `submodelDescriptors.supplementalSemanticIds[<index>].keys[<index>].value` | Value of a key of a supplementalSemanticId Reference used in a referenced Submodel of an Asset Administration Shell Descriptor | `$aasdesc#submodelDescriptors.supplementalSemanticIds[].keys[].value` | ||||||
| | `submodelDescriptors.id` | Identifier of a referenced Submodel as available in an Asset Administration Shell Descriptor | `$aasdesc#submodelDescriptors.id` | ||||||
| | `submodelDescriptors.idShort` | idShort of a referenced Submodel as available in an Asset Administration Shell Descriptor | `$aasdesc#submodelDescriptors.idShort` | ||||||
| | `submodelDescriptors.endpoints[<index>].interface` | Endpoint interface of a referenced Submodel as available in an Asset Administration Shell Descriptor | `$aasdesc#submodelDescriptors.endpoints[0].interface` | ||||||
|
|
@@ -382,7 +390,7 @@ | |||||
| To ease writing, `.keys[0].value` can be left off for References. + | ||||||
|
|
||||||
| semanticId is defined as the "value" of the first key of the semanticId Reference object. | ||||||
| The following two expressions are equivilant: | ||||||
|
|
||||||
| .... | ||||||
| <somePath>.semanticId | ||||||
|
|
@@ -395,6 +403,18 @@ | |||||
| $sme#semanticId $eq "https://example.com/a/semantic/id" | ||||||
| .... | ||||||
|
|
||||||
| This shall also work for supplementalSemanticIds, e.g.: | ||||||
|
|
||||||
| .... | ||||||
| $sme#supplementalSemanticIds $eq "https://example.com/a/supplemental/semantic/id" | ||||||
| .... | ||||||
|
|
||||||
| Which is equivilant to: | ||||||
| .... | ||||||
| $sme#supplementalSemanticIds[0].keys[0].value $eq "https://example.com/a/supplemental/semantic/id" | ||||||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Then with "contains" it would be $sme#supplementalSemanticIds[0].keys[0].value $eq "https://example.com/a/supplemental/semantic/id" OR $sme#supplementalSemanticIds[1].keys[0].value $eq "https://example.com/a/supplemental/semantic/id" OR $sme#supplementalSemanticIds[2].keys[0].value $eq "https://example.com/a/supplemental/semantic/id" a.s.o. In general: how do we know what is the highest number in a list and how long to iterate?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Currently: Not at all. But no index indicates "anywhere", so this might work better:
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think the seoncd [] on keys[] should remain keys[0] because then it is already a single semanticId
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
| .... | ||||||
|
|
||||||
|
|
||||||
| == Match of Elements in Lists | ||||||
|
|
||||||
| The `$match` operator signals that the following clauses (a) contain at least 1 list of elements with `[]` syntax, and that (b) all conditions shall be evaluated on the same element of this list. | ||||||
|
|
||||||
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it could be
$sme#supplementalSemanticIds $contains "https://example.com/a/supplemental/semantic/id"since it is a set
$contains is for comparing two string... but so far we do not have set-operations, do we?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At least I am not aware... Some query languages have an
$inoperator. But it then would need to have a different order:"https://example.com/a/supplemental/semantic/id" $in $sme#supplementalSemanticIdsAlso pretty big change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought it was clever to keep it close to
$sme#semanticId. Not sure if it really is.