In Table 14, the mapping of built-in XML data types to OPC UA DataTypes is defined, where there is no corresponding built-in OPC UA DataType available. Those OPC UA DataTypes are defined in 6. In some cases, the range is smaller than possible in the XML data type.

Table 14 – New OPC UA DataTypes

OPC UA DataType

XML DataType

Comment

XmlQName

QName

Contains XML document specific prefix

Implementations might limit the maximum String size.

Array of XmlQName

NOTATION

Contains XML document specific prefixes

Implementations might limit the maximum String size.

XmlToken

token

Implementations might limit the maximum String size.

XmlNmToken

NMTOKEN

Implementations might limit the maximum String size.

Array of XmlNmToken

NMTOKENS

Implementations might limit the maximum array length.

XmlName

Name

Implementations might limit the maximum String size.

XmlNcName

NCName

Implementations might limit the maximum String size.

XmlId

ID

Implementations might limit the maximum String size.

XmlIdRef

IDREF

Implementations might limit the maximum String size.

Array of XmlIdRef

IDREFS

Implementations might limit the maximum array length.

XmlEntity

ENTITY

Implementations might limit the maximum String size.

Array of XmlEntity

ENTITIES

Implementations might limit the maximum array length.

XmlInteger

integer

XmlInteger is a subtype of Int64 with a limited max. and min. value, whereas the size of integer is unlimited.

XmlNonPositiveInteger

nonPositiveInteger

The min. of XmlNonPositiveInteger is limited to min. of Int64, whereas the min. of nonPositiveInteger is unlimited.

XmlNegativeInteger

negativeInteger

The min. of XmlNegativeInteger is limited to min. of Int64, whereas the min. of negativeInteger is unlimited.

XmlNonNegativeInteger

nonNegativeInteger

The max. of XmlNonNegativeInteger is limited to max. of UInt64, whereas the max. of nonNegativeInteger is unlimited.

XmlPositiveInteger

positiveInteger

The max. of XmlPositiveInteger is limited to max. of UInt64, whereas the max. of positiveInteger is unlimited.

XmlHexBinary

hexBinary

Implementations might limit the maximum ByteString size.

XmlYearMonthDuration

yearMonthDuration

Implementations might limit the maximum String size.

XmlGYearMonth

gYearMonth

Implementations might limit the maximum String size.

XmlDayTimeDuration

dayTimeDuration

Implementations might limit the maximum String size.

XmlGYear

gYear

Implementations might limit the maximum String size.

XmlGMonth

gMonth

Implementations might limit the maximum String size.

XmlGDay

gDay

Implementations might limit the maximum String size.

XmlGMonthDay

gMonthDay

Implementations might limit the maximum String size.

XmlTime

time

Implementations might limit the maximum String size.

XmlDate

date

Implementations might limit the maximum String size.