diff --git a/README.md b/README.md index 6c4298c..35ffefa 100644 --- a/README.md +++ b/README.md @@ -28,12 +28,19 @@ The following release contains the latest version of the AAS schemas (see also the [releases](https://github.com/admin-shell-io/aas-specs-security/releases) section of this repository): -* [3.0.0](https://github.com/admin-shell-io/aas-specs-security/releases/tag/v3.0.0) -is the latest release for the `V3.0.0` version of the AAS Security, +* [3.0.1](https://github.com/admin-shell-io/aas-specs-security/releases/tag/v3.0.1) +is the latest bugfix release for the `V3.0.1` version of the AAS Security, containing the normative sources for the published document - "Specification of the Asset Administration Shell: Part 4 - **Version 3.0.0**". + "Specification of the Asset Administration Shell: Part 4 - **Version 3.0.1**". *Use this release if you want to work with the latest specified AAS version.* +Previous releases: + +* [3.0.0](https://github.com/admin-shell-io/aas-specs-security/releases/tag/v3.0.0) +is the first release for the `V3.0` version of the AAS Security, +containing the normative sources for the published document + "Specification of the Asset Administration Shell: Part 4 - Version 3.0.0". + ## Contributing Feature requests, reports about inconsistencies, mistakes *etc.* are highly diff --git a/documentation/IDTA-01004/modules/ROOT/pages/access-rule-model.adoc b/documentation/IDTA-01004/modules/ROOT/pages/access-rule-model.adoc index 3a9f069..09963fb 100644 --- a/documentation/IDTA-01004/modules/ROOT/pages/access-rule-model.adoc +++ b/documentation/IDTA-01004/modules/ROOT/pages/access-rule-model.adoc @@ -174,8 +174,6 @@ Global Attributes are: * *ANONYMOUS* - Tag for anonymous and non-authenticated user, i.e. no access token -References in ReferenceAttributes are defined in Section xref:access-rule-model.adoc#text-serialization-of-values-of-type-reference[Text Serialization of Values of Type Reference]. - ==== Objects @@ -188,8 +186,6 @@ Objects to be protected are either API Routes, Identifiables (e.g. AAS or Submod Routes may use * or end with a *, which means that all routes with a given prefix are valid. -References to IdentifiableObjects, ReferableObjects, FragmentObjects and DescriptorObjects are defined in Section xref:access-rule-model.adoc#text-serialization-of-values-of-type-reference[Text Serialization of Values of Type Reference]. - An Object Group defines a list of single objects and/or a list of names of other object groups. ==== Formulas @@ -218,18 +214,6 @@ This enables access rules related to week days or specific times in the year. An important special operation is $match, which can be used with any element containing a list of elements, e.g. semanticId[], specificAssetId[], SubmodelElementList or SubmodelElementCollection. The list element is written with [] to express, that $match shall check if a certain expression is true for at least one element in the list. -[[text-serialization-of-values-of-type-reference]] -==== Text Serialization of Values of Type Reference - -References are used in ReferenceAttributes, IdentifiableObjects, ReferableObjects, FragmentObjects and DescriptorObjects for the corresponding ReferenceLiterals, IdentifiableLiterals, ReferableLiterals, FragmentLiterals and DescriptorLiterals. - -Such references use the link:https://industrialdigitaltwin.io/aas-specifications/IDTA-01001/v3.1/mappings/mappings.html#reference-serialization[Part 1 Mapping in Section "Text Serialization of Values of Type Reference"] for specific instances of elements, e.g. an AAS, a Submodel, a ConceptDescription or a specific SubmodelElement. - -Access Rules may also be defined for all Identifiables of the Keytypes AssetAdministrationShell, Submodel or ConceptDescription. -In this case an IdentifiableLiteral uses the format "(AssetAdministrationShell)\*", "(Submodel)*" and "(ConceptDescription)*". - -Access Rules extend the Keytypes of Part 1 by "(aasDesc)" for AAS Descriptors and "(smdesc)" for submodel descriptors. -To define all descriptors "(aasDesc)\*" or "(smdesc)*" may be used in DescriptorLiterals accordingly. [[json-serialization]] == JSON Serialization of Access Rule Model diff --git a/documentation/IDTA-01004/modules/ROOT/pages/annex/text-access-rule-examples.adoc b/documentation/IDTA-01004/modules/ROOT/pages/annex/text-access-rule-examples.adoc index c9cf7c3..cfc7c1c 100644 --- a/documentation/IDTA-01004/modules/ROOT/pages/annex/text-access-rule-examples.adoc +++ b/documentation/IDTA-01004/modules/ROOT/pages/annex/text-access-rule-examples.adoc @@ -61,6 +61,7 @@ include::partial$examples/bpn.bnf[] include::partial$examples/allow-read-all-users-of-company-for-submodel.bnf[] ---- +[[allow-read-submodels-id-pattern]] == Allow READ to all Submodels with ID pattern for all authenticated users of a company for submodels with Nameplate and TechnicalData from 9:00-17:00 [source,bnf,linenums] diff --git a/documentation/IDTA-01004/modules/ROOT/pages/changelog.adoc b/documentation/IDTA-01004/modules/ROOT/pages/changelog.adoc index d651166..fbfb77d 100644 --- a/documentation/IDTA-01004/modules/ROOT/pages/changelog.adoc +++ b/documentation/IDTA-01004/modules/ROOT/pages/changelog.adoc @@ -8,6 +8,30 @@ SPDX-License-Identifier: CC-BY-4.0 //// +[[change-notes]] = Change Notes -This is the first Release. +== Changes w.r.t. V3.1 vs. V3.0.1 + +*changed: with more detailed definition in BNF Grammar and JSON Schema +*changed: , , , with more detailed definition in BNF Grammar and JSON Schema + + +== Changes w.r.t. V3.0.1 vs. V3.0 + +Bugfixes: + +* changed: Removed incorrect but required whitespaces from grammar and examples [#477 of API](https://github.com/admin-shell-io/aas-specs-api/issues/477) +* changed: fixed idShortPath definition in the BNF Grammar for the Query Language [#34](https://github.com/admin-shell-io/aas-specs-security/issues/34) +* changed: xref:access-rule-model.adoc#text-serialization-of-values-of-type-reference[text serialization of Reference] does not follow text serialization of Part 1 of References, the updated grammar will be added in the V3.1 [#33](https://github.com/admin-shell-io/aas-specs-security/issues/33) + + +Minor Changes: + +* changed: correct xref:annex/text-access-rule-examples.adoc#allow-read-submodels-id-pattern[example] in Annex +* removed: remove in grammar and use directly + + +== Changes V3.0 + +This is the first release diff --git a/documentation/IDTA-01004/modules/ROOT/pages/index.adoc b/documentation/IDTA-01004/modules/ROOT/pages/index.adoc index 23cd2a2..bb23ae6 100644 --- a/documentation/IDTA-01004/modules/ROOT/pages/index.adoc +++ b/documentation/IDTA-01004/modules/ROOT/pages/index.adoc @@ -18,31 +18,37 @@ This specification is part of the https://industrialdigitaltwin.org/en/content-h == Version -This is version 3.0 of the specification IDTA-01004. +This is version 3.0.1 of the specification IDTA-01004. + +Previous version: 3.0. [#metamodel-versions] == Metamodel Versions -This document (version 3.0) uses the following parts of the “Specification of the Asset Administration Shell” series: +This document uses the following parts and versions of the “Specification of the Asset Administration Shell” series: * IDTA-01001 Part 1: Metamodel in version 3.1 xref:bibliography.adoc#bib1[[1\]] * IDTA-01002 Part 2: Application Programming Interfaces in version 3.1 xref:bibliography.adoc#bib2[[2\]] * IDTA-01003-a Part 3a: Data Specification – IEC 61360 in version 3.1 xref:bibliography.adoc#bib3[[3\]] +If there are bugfixes of the parts, these shall be used. + == Notice Copyright: Industrial Digital Twin Association e.V. (IDTA) -DOI: https://doi.org/10.62628/IDTA.01004-3-0 +DOI: https://doi.org/10.62628/IDTA.01004-3-0-1 + +IDTA Number: IDTA-01004 -IDTA Document Number: IDTA-01004-3-0 +Version: 3.0.1 This work is licensed under a https://creativecommons.org/licenses/by/4.0/[Creative Commons Attribution 4.0 International License]. SPDX-License-Identifier: CC-BY-4.0 -May 2025 +July 2025 == How to Get in Contact diff --git a/documentation/IDTA-01004/modules/ROOT/partials/bnf/access-rules.bnf b/documentation/IDTA-01004/modules/ROOT/partials/bnf/access-rules.bnf index e93b434..c6c6e5e 100644 --- a/documentation/IDTA-01004/modules/ROOT/partials/bnf/access-rules.bnf +++ b/documentation/IDTA-01004/modules/ROOT/partials/bnf/access-rules.bnf @@ -41,7 +41,12 @@ "GLOBAL" "(" ( "LOCALNOW" | "UTCNOW" | "CLIENTNOW" | "ANONYMOUS" ) ")" ::= - "REFERENCE" "(" ")" + "REFERENCE(" ( + ("$aas" "#" ) | + ("$sm" "#" ) | + ("$cd" "#" ) | + ("$sme" "." "#" ) + ) ")" ::= ( )* @@ -56,17 +61,20 @@ ::= "ROUTE" + ::= "(" ")" + ::= | "(\"*\")" + ::= - "IDENTIFIABLE" + "IDENTIFIABLE" ("$aas" | "$sm" | "$cd") ::= - "REFERABLE" + "REFERABLE" "$sme" "." ::= - "FRAGMENT" - + "FRAGMENT" "$sme" "." ( )+ + ::= - "DESCRIPTOR" + "DESCRIPTOR" ("$aasdesc" | "$smdesc") ::= ( )* @@ -103,13 +111,13 @@ ::= ( ( "$starts-with" | "$ends-with" | "$contains" | "$regex") "(" "," ")" ) | ( ) | - ( ) | - ( ) + ( ) | + ( ) ::= ( ) | - ( ) | - ( ) + ( ) | + ( ) ::= @@ -129,7 +137,7 @@ ::= | | | | | ::= - | | | + | | | ::= | | @@ -164,25 +172,23 @@ ::= "time" "(" ( | ) ")" - ::= ::=