Mapping XML Data Types to CLR Types

The following table describes the default mapping between the XML data types and the common language runtime (CLR) types.

The following table describes the default mappings of an XML data type to a CLR type.


The xs and the xdt prefixes are mapped to the and the namespace URIs respectively.

XML Type CLR Type
xs:anyURI Uri
xs:base64Binary Byte[]
xs:boolean Boolean
xs:byte SByte
xs:date DateTime
xs:dateTime DateTime
xs:decimal Decimal
xs:double Double
xs:duration TimeSpan
xs:ENTITIES String[]
xs:ENTITY String
xs:float Single
xs:gDay DateTime
xs:gMonthDay DateTime
xs:gYear DateTime
xs:gYearMonth DateTime
xs:hexBinary Byte[]
xs:ID String
xs:IDREF String
xs:IDREFS String[]
xs:int Int32
xs:integer Decimal
xs:language String
xs:long Int64
xs:gMmonth DateTime
xs:Name String
xs:NCName String
xs:negativeInteger Decimal
xs:NMTOKEN String
xs:NMTOKENS String[]
xs:nonNegativeInteger Decimal
xs:nonPositiveInteger Decimal
xs:normalizedString String
xs:NOTATION XmlQualifiedName
xs:positiveInteger Decimal
xs:QName XmlQualifiedName
xs:short Int16
xs:string String
xs:time DateTime
xs:token String
xs:unsignedByte Byte
xs:unsignedInt UInt32
xs:unsignedLong UInt64
xs:unsignedShort UInt16
xdt:dayTimeDuration TimeSpan
xdt:yearMonthDuration TimeSpan
xdt:untypedAtomic String
xdt:anyAtomicType Object
xs:anySimpleType String
Document node XPathNavigator
Element node XPathNavigator
Attribute node XPathNavigator
Namespace node XPathNavigator
Text node XPathNavigator
Comment node XPathNavigator
Processing instruction node XPathNavigator

See Also

Type Support in the System.Xml Classes