|
103 | 103 | <stringComparison> ::= |
104 | 104 | ( ( "$starts-with" | "$ends-with" | "$contains" | "$regex") <ws> "(" <ws> <stringOperand> <ws> "," <ws> <stringOperand> <ws> ")" <ws> ) | |
105 | 105 | ( <stringOperand> <ws> <allComparisons> <ws> <stringOperand> <ws> ) | |
106 | | - ( <stringOperand> <ws> <allComparisons> <ws> <FieldIdentifierString> <ws> ) | |
107 | | - ( <FieldIdentifierString> <ws> <allComparisons> <ws> <stringOperand> <ws> ) |
| 106 | + ( <stringOperand> <ws> <allComparisons> <ws> <FieldIdentifier> <ws> ) | |
| 107 | + ( <FieldIdentifier> <ws> <allComparisons> <ws> <stringOperand> <ws> ) |
108 | 108 |
|
109 | 109 | <numericalComparison> ::= |
110 | 110 | ( <numericalOperand> <ws> <allComparisons> <ws> <numericalOperand> <ws> ) | |
111 | | - ( <numericalOperand> <ws> <allComparisons> <ws> <FieldIdentifierString> <ws> ) | |
112 | | - ( <FieldIdentifierString> <ws> <allComparisons> <ws> <numericalOperand> <ws> ) |
| 111 | + ( <numericalOperand> <ws> <allComparisons> <ws> <FieldIdentifier> <ws> ) | |
| 112 | + ( <FieldIdentifier> <ws> <allComparisons> <ws> <numericalOperand> <ws> ) |
113 | 113 |
|
114 | 114 | <hexComparison> ::= |
115 | 115 | <hexOperand> <ws> <allComparisons> <ws> <hexOperand> <ws> |
|
129 | 129 | <operand> ::= <stringOperand> | <numericalOperand> | <hexOperand> | <boolOperand> | <dateTimeOperand> | <timeOperand> |
130 | 130 |
|
131 | 131 | <stringOperand> ::= |
132 | | - <FieldIdentifierString> | <StringLiteral> | <castToString> | <SingleAttribute> |
| 132 | + <FieldIdentifier> | <StringLiteral> | <castToString> | <SingleAttribute> |
133 | 133 |
|
134 | 134 | <numericalOperand> ::= |
135 | 135 | <NumericalLiteral> | <castToNumerical> | <dateTimeToNum> |
|
164 | 164 | <castToTime> ::= |
165 | 165 | "time" <ws> "(" <ws> ( <stringOperand> | <dateTimeOperand> ) <ws> ")" <ws> |
166 | 166 |
|
167 | | - |
168 | 167 | <DateTimeLiteral> ::= <datetime> <ws> |
169 | 168 | <TimeLiteral> ::= <time> <ws> |
170 | | -<datetime> ::= <date> <ws> ( "T" | " " ) <ws> <time> <ws> ( <timezone> <ws> )? |
171 | | -<date> ::= <year> <ws> "-" <ws> <month> <ws> "-" <ws> <day> <ws> |
172 | | -<year> ::= <digit> <ws> <digit> <ws> <digit> <ws> <digit> <ws> |
173 | | -<month> ::= <digit> <ws> <digit> <ws> |
174 | | -<day> ::= <digit> <ws> <digit> <ws> |
175 | | -<time> ::= <hour> <ws> ":" <ws> <minute> <ws> ( ":" <ws> <second> <ws> )? ( "." <ws> <fraction> <ws> )? |
176 | | -<timezone> ::= ( "Z" | ( "+" | "-" ) <ws> <hour> <ws> ":" <ws> <minute> <ws> ) |
177 | | -<hour> ::= <digit> <ws> <digit> <ws> |
178 | | -<minute> ::= <digit> <ws> <digit> <ws> |
179 | | -<second> ::= <digit> <ws> <digit> <ws> |
180 | | -<fraction> ::= <digit>+ <ws> |
181 | | - |
182 | | -<digit> ::= [0-9] <ws> |
| 169 | +<datetime> ::= <date> ( "T" | "" ) <time> ( <timezone> )? |
| 170 | +<date> ::= <year> "-" <month> "-" <day> |
| 171 | +<year> ::= <digit> <digit> <digit> <digit> |
| 172 | +<month> ::= <digit> <digit> |
| 173 | +<day> ::= <digit> <digit> |
| 174 | +<time> ::= <hour> ":" <minute> ( ":" <second> )? ( "." <fraction> )? |
| 175 | +<timezone> ::= ( "Z" | ( "+" | "-" ) <hour> ":" <minute> ) |
| 176 | +<hour> ::= <digit> <digit> |
| 177 | +<minute> ::= <digit> <digit> |
| 178 | +<second> ::= <digit> <digit> |
| 179 | +<fraction> ::= <digit>+ |
| 180 | + |
| 181 | +<digit> ::= [0-9] |
183 | 182 | <StringLiteral> ::= "\"" ( [A-Z] | [a-z] | [0-9] | "/" | "*" | "[" | "]" | "(" | ")" | " " | "_" | "@" | "#" | "\\" | "+" | "-" | "." | "," | ":" | "$" | "^" )+ "\"" |
184 | 183 | <ClaimLiteral> ::= <StringLiteral> |
185 | 184 | <ReferenceLiteral> ::= <StringLiteral> |
|
191 | 190 | <NumericalLiteral> ::= ( "+" | "-" )? ( [0-9]+ ( "." [0-9]* )? | "." [0-9]+ ) ( ( "e" | "E" )? [0-9]+ ) |
192 | 191 | <HexLiteral> ::= "16#" ( [0-9] | [A-F] )+ |
193 | 192 | <BoolLiteral> ::= "true" | "false" |
194 | | -<FieldIdentifier> ::= <FieldIdentifierString> |
195 | | -<FieldIdentifierString> ::= <FieldIdentifierAAS> | <FieldIdentifierSM> | <FieldIdentifierSME> | <FieldIdentifierCD> | <FieldIdentifierAasDescriptor> | <FieldIdentifierSmDescriptor> |
| 193 | + |
| 194 | +<FieldIdentifier> ::= <FieldIdentifierAAS> | <FieldIdentifierSM> | <FieldIdentifierSME> | <FieldIdentifierCD> | <FieldIdentifierAasDescriptor> | <FieldIdentifierSmDescriptor> |
196 | 195 | <FieldIdentifierAAS> ::= "$aas#" ( "idShort" | "id" | "assetInformation.assetKind" | "assetInformation.assetType" | "assetInformation.globalAssetId" | "assetInformation." <SpecificAssetIdsClause> | "submodels." <ReferenceClause> ) |
197 | 196 | <FieldIdentifierSM> ::= "$sm#" ( <SemanticIdClause> | "idShort" | "id" ) |
198 | 197 | <FieldIdentifierSME> ::= "$sme" ( "." <idShortPath> )? "#" ( <SemanticIdClause> | "idShort" | "value" | "valueType" | "language" ) |
|
205 | 204 | <ReferenceClause> ::= ( "type" | "keys" ( "[" ( [0-9]* ) "]" ) ( ".type" | ".value" ) ) |
206 | 205 | <SemanticIdClause> ::= ( "semanticId" | "semanticId." <ReferenceClause> ) |
207 | 206 | <SpecificAssetIdsClause> ::= ( "specificAssetIds" ( "[" ( [0-9]* ) "]" ) ( ".name" | ".value" | ".externalSubjectId" | ".externalSubjectId." <ReferenceClause> ) ) |
208 | | -<idShortPath> ::= ( <idShort> ("[" ( [0-9]* ) "]" ) ( "." <idShortPath> )* ) |
| 207 | +<idShortPath> ::= ( <idShort> ("[" ( [0-9]* ) "]" )* ( "." <idShortPath> )* ) |
209 | 208 | <idShort> ::= ( ( [a-z] | [A-Z] ) ( [a-z] | [A-Z] | [0-9] | "_" )* ) |
210 | 209 |
|
211 | | -<ws> ::= ( " " | "\t" | "\r" | "\n" )+ |
| 210 | +<ws> ::= ( " " | "\t" | "\r" | "\n" )* |
0 commit comments