12 Standard DataTypes

12.41 SemanticVersionString DataType

The SemanticVersionString DataType is a sub-type of String. It is formally defined in Table 280.
SemanticVersionString can be used if the version follows the rules of the Semantic Versioning 2.0.0
The syntax shall follow the BNF inTable 281.
Table 280 – SemanticVersionString definition
Attributes | Value | ||||
---|---|---|---|---|---|
BrowseName | SemanticVersionString | ||||
IsAbstract | FALSE | ||||
References | NodeClass | BrowseName | DataType | TypeDefinition | ModellingRule |
Subtype of the String DataType defined in Table 167. | |||||
Conformance Units | |||||
Base Info SemanticVersionString |
Table 281 – Backus–Naur Form Grammar for SemanticVersionString
<valid semver> ::= <version core>
| <version core> "-" <pre-release>
| <version core> "+" <build>
| <version core> "-" <pre-release> "+" <build>
<version core> ::= <major> “.” <minor> “.” <patch>
<major> ::= <numeric identifier>
<minor> ::= <numeric identifier>
<patch> ::= <numeric identifier>
<pre-release> ::= <dot-separated pre-release identifiers>
<dot-separated pre-release identifiers> ::= <pre-release identifier>
| <pre-release identifier> "." <dot-separated pre-release identifiers>
<build> ::= <dot-separated build identifiers>
<dot-separated build identifiers> ::= <build identifier>
| <build identifier> "." <dot-separated build identifiers>
<pre-release identifier> ::= <alphanumeric identifier>
| <numeric identifier>
<build identifier> ::= <alphanumeric identifier>
| <digits>
<alphanumeric identifier> ::= <non-digit>
| <non-digit> <identifier characters>
| <identifier characters> <non-digit>
| <identifier characters> <non-digit> <identifier characters>
<numeric identifier> ::= “0”
| <positive digit>
| <positive digit> <digits>
<identifier characters> ::= <identifier character>
| <identifier character> <identifier characters>
<identifier character> ::= <digit>
| <non-digit>
<non-digit> ::= <letter>
| "-"
<digits> ::= <digit>
| <digit> <digits>
<digit> ::= “0”
| <positive digit>
<positive digit> ::= “1” | “2” | “3” | “4” | “5” | “6” | “7” | “8” | “9” |
<letter> ::= “A” | “B” | “C” | “D” | “E” | “F” | “G” | “H” | “I” | “J” |
| "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" | "S" | "T"
| "U" | "V" | "W" | "X" | "Y" | "Z" | "a" | "b" | "c" | "d"
| "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n"
| "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x"
| "y" | "z"