Skip to content
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

Introduce the IDTA Query Language #292

Draft
wants to merge 48 commits into
base: IDTA-01002-3-1_preparation
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 29 commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
528d33b
add query interface section
sebbader-sap Jun 30, 2024
e6a253e
start the query language definitions
sebbader-sap Jun 30, 2024
9364501
add the changelog entries
sebbader-sap Jun 30, 2024
8f283f0
adjust interface naming grammar
sebbader-sap Jul 2, 2024
2400f92
remove the ...IdsByQuery operations and rename the others
sebbader-sap Jul 2, 2024
2156164
adding tables for the other query interfaces
sebbader-sap Jul 12, 2024
74eb829
adding example table for comparison operators
sebbader-sap Jul 12, 2024
acd9248
add example for nested comparisons
sebbader-sap Jul 12, 2024
c1d607b
Add missing part for sort, paging and added like
waltersve Jul 23, 2024
4623dcf
adding comparison operator definitions
sebbader-sap Jul 29, 2024
269c978
continue with the query language
sebbader-sap Jul 29, 2024
a2542d1
add "exists" operator
sebbader-sap Aug 2, 2024
a400082
add first BNF draft
sebbader-sap Aug 5, 2024
1484f0e
add text to the query language intro
sebbader-sap Aug 5, 2024
130d592
adjust BNF to aas spefics
sebbader-sap Aug 5, 2024
a3dc667
add xpath-inspired approach
sebbader-sap Aug 9, 2024
3834089
Add `or` logical expression (#315)
zrgt Sep 10, 2024
c21449a
update grammar + adding casting functions
sebbader-sap Sep 20, 2024
63313fb
escape the <= characters
sebbader-sap Sep 24, 2024
7076771
Update query language
aorzelskiGH Sep 26, 2024
65558c6
Add example
aorzelskiGH Sep 26, 2024
fffbc5d
Update query language
aorzelskiGH Sep 29, 2024
2e94906
Update query language
aorzelskiGH Sep 29, 2024
6e4839d
Update grammar
aorzelskiGH Oct 2, 2024
9de342e
Bug fix full grammar
aorzelskiGH Oct 11, 2024
ecfc16e
add query overview plantuml file
sebbader-sap Nov 2, 2024
c74b4ba
externalize grammar to own file + minor text changes
sebbader-sap Nov 2, 2024
59c5a7a
extend grammar with fieldidentifiers and query options
sebbader-sap Nov 2, 2024
fe96c5a
debug grammar through a small number of reference examples
sebbader-sap Nov 2, 2024
db7a13c
query fixes + additions to the http query explanation
sebbader-sap Nov 2, 2024
ff797a1
split json schema in common, and query and access rule-specific parts.
sebbader-sap Nov 8, 2024
42d256f
enhance with more detailed fieldmodifiers and query test data
sebbader-sap Nov 10, 2024
6e1cd16
remove width of the query picture
sebbader-sap Nov 14, 2024
f2c23e6
extending the query parts, general explanations + grammar
sebbader-sap Nov 24, 2024
2955ca6
Merge branch 'SeBa/query-language' of https://github.com/admin-shell-…
sebbader-sap Nov 24, 2024
fc62990
fix typos in the elemMatch table
sebbader-sap Nov 26, 2024
2c17bc8
additional example to the comparison table
sebbader-sap Nov 26, 2024
1d3a42e
remove non-queryable fields
sebbader-sap Dec 1, 2024
ce4b095
redraw query overview picture
sebbader-sap Dec 1, 2024
a1a1d15
minor corrections grammar querying and access control (#349)
BirgitBoss Dec 4, 2024
fa7b419
merge grammar with security tf version
sebbader-sap Dec 7, 2024
2275410
new version of the query overview picture
sebbader-sap Dec 7, 2024
eb94a99
add query profiles + update text in the general and http-specific sec…
sebbader-sap Dec 7, 2024
e720fa0
add openapi domain for the query classes
sebbader-sap Dec 7, 2024
53b3014
add the query class to the openapi profiles
sebbader-sap Dec 9, 2024
20f01fe
Update grammar.adoc
aorzelskiGH Dec 10, 2024
d7ab9c1
Add JSON schema for query language
aorzelskiGH Dec 10, 2024
3ff1d12
Merge pull request #355 from aorzelskiGH/aorzelski/pr1
aorzelskiGH Dec 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
@startuml
class AccessRule {
ACL acl
List<SingleObject> singleObjects
List<ObjectGroup> objectGroups
Formula formula
}

AccessRule --> ACL
AccessRule --> SingleObject : List
AccessRule --> ObjectGroup : List
AccessRule --> Formula

class ACL {
List<SingleAttribute> singleAttributes
List<AttributeGroup> attributeGroups
List<Right> rights
Access access
}

ACL --> SingleAttribute : List
ACL --> AttributeGroup : List
ACL --> Right : List
ACL --> Access

class SingleObject {
}

SingleObject <|-- RouteObject
SingleObject <|-- IdentifiableObject
SingleObject <|-- ReferableObject
SingleObject <|-- FragmentObject
SingleObject <|-- DescriptorObject

class RouteObject {
StringLiteral stringLiteral
}

class IdentifiableObject {
StringLiteral stringLiteral
}

class ReferableObject {
StringLiteral stringLiteral
}

class FragmentObject {
StringLiteral stringLiteral
}

class DescriptorObject {
StringLiteral stringLiteral
}

class ObjectGroup {
List<SingleObject> singleObjects
}

ObjectGroup --> SingleObject : List

class SingleAttribute {
}

SingleAttribute <|-- ClaimAttribute
SingleAttribute <|-- GlobalAttribute
SingleAttribute <|-- ReferenceAttribute

class ClaimAttribute {
StringLiteral stringLiteral
}

class GlobalAttribute {
StringLiteral stringLiteral
}

class ReferenceAttribute {
StringLiteral stringLiteral
}

class AttributeGroup {
List<SingleAttribute> singleAttributes
List<AttributeGroup> attributeGroups
}

AttributeGroup --> SingleAttribute : List
AttributeGroup --> AttributeGroup : List

enum Right {
CREATE, READ, UPDATE, DELETE, EXECUTE, VIEW, ALL, TREE
}

enum Access {
ALLOW, DISABLED
}

class Formula {
}
@enduml
14 changes: 14 additions & 0 deletions documentation/IDTA-01002-3/modules/ROOT/pages/changelog.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ Major Changes:
* Bulk Operations and Profiles for Bulk Operations
* deprecated: operation GetAllAssetAdministrationShellIdsByAssetLink
* new: operation SearchAllAssetAdministrationShellIdsByAssetLink (as substitute for GetAllAssetAdministrationShellIdsByAssetLink)
* new Query Interface and API Operations
* new Profile for Discovery Service: Read Only SSP-002
* updated: Terms and Definitions adopted to IEC 63278-1:2023 (before IEC 63278-1 Draft July 2022 was the basis), also abbreviations partly adopted; changed definitions:
** changed: interface
Expand All @@ -32,6 +33,7 @@ Major Changes:
[%autowidth, width="100%", cols="10%,29%,10%,51%",options="header",]
|===
|*BWC* |*Interface Change* |*Kind of Change* |*Comment*
| | Query Interface | New a| Newly introduced Interface
| | AAS Basic Discovery | Changed a| deprecate GetAllAssetAdministrationShellIdsByAssetLink

add SearchAllAssetAdministrationShellIdsByAssetLink
Expand All @@ -47,11 +49,22 @@ add PutBulkSubmodelDescriptorsById,

add DeleteBulkSubmodelDescriptorsById
|===

=== Operation Changes w.r.t. V3.0.2 to V3.1

[%autowidth, width="100%", cols="32%,34%,13%,21%",options="header",]
|===
|*Operation Change Old* |*Operation Change New* |*Kind of Change* |*Comment*
|GetAllAssetAdministrationShellIdsByQuery | |new |
|GetAllAssetAdministrationShellsByQuery | |new |
|GetAllSubmodelIdsByQuery | |new |
|GetAllSubmodelsByQuery | |new |
|GetAllAssetAdministrationShellDescriptorIdsByQuery | |new |
|GetAllAssetAdministrationShellDescriptorsByQuery | |new |
|GetAllSubmodelDescriptorIdsByQuery | |new |
|GetAllSubmodelDescriptorsByQuery | |new |
|GetAllConceptDescriptionIdsByQuery | |new |
|GetAllConceptDescriptionsByQuery | |new |
|GetAllAssetAdministrationShellIdsByAssetLink | |deprecated | substituted by SearchAllAssetAdministrationShellIdsByAssetLink
| | SearchAllAssetAdministrationShellIdsByAssetLink|new | substitute for GetAllAssetAdministrationShellIdsByAssetLink
||PostBulkSubmodelDescriptors |new |
Expand All @@ -63,6 +76,7 @@ add DeleteBulkSubmodelDescriptorsById

|===
|*Profile Change Old* |*Profile Change New* |*Kind of Change* |*Comment*
| |Query Profile |new |
| |Asset Administration Shell Registry Profile – Bulk Profile |new |
| |Submodel Registry Profile – Bulk Profile |new |
|Discovery Profile – Full Profile| |update |GetAllAssetAdministrationShellIdsByAssetLink set to deprecated, added new API-operation SearchAllAssetAdministrationShellIdsByAssetLink
Expand Down
Loading