Text.XML.HaXml.Schema.PrimitiveTypes
- class SimpleType a where
- module Text.Parse
- newtype XsdString = XsdString String
- type Boolean = Bool
- data Base64Binary = Base64Binary String
- data HexBinary = HexBinary String
- data Float
- data Decimal = Decimal Double
- data Double
- data AnyURI = AnyURI String
- data QName
- data NOTATION = NOTATION String
- data Duration = Duration Bool Int Int Int Int Int Float
- data DateTime = DateTime
- data Time = Time
- data Date = Date
- data GYearMonth = GYearMonth
- data GYear = GYear
- data GMonthDay = GMonthDay
- data GDay = GDay
- data GMonth = GMonth
- newtype NormalizedString = Normalized String
- newtype Token = Token String
- newtype Language = Language String
- newtype Name = Name String
- newtype NCName = NCName String
- newtype ID = ID String
- newtype IDREF = IDREF String
- newtype IDREFS = IDREFS String
- newtype ENTITY = ENTITY String
- newtype ENTITIES = ENTITIES String
- newtype NMTOKEN = NMTOKEN String
- newtype NMTOKENS = NMTOKENS String
- data Integer
- newtype NonPositiveInteger = NonPos Integer
- newtype NegativeInteger = Negative Integer
- newtype Long = Long Int64
- data Int
- newtype Short = Short Int16
- newtype Byte = Byte Int8
- newtype NonNegativeInteger = NonNeg Integer
- newtype UnsignedLong = ULong Word64
- newtype UnsignedInt = UInt Word32
- newtype UnsignedShort = UShort Word16
- newtype UnsignedByte = UByte Word8
- newtype PositiveInteger = Positive Integer
Type class for parsing simpleTypes
class SimpleType a where
Ultimately, an XML parser will find some plain text as the content of a simpleType, which will need to be parsed. We use a TextParser, because values of simpleTypes can also be given elsewhere, e.g. as attribute values in an XSD definition, e.g. to restrict the permissible values of the simpleType. Such restrictions are therefore implemented as layered parsers.
Methods
Instances
module Text.Parse
Primitive XSD datatypes
newtype XsdString
Instances
data Base64Binary
Constructors
Base64Binary String |
data HexBinary
Instances
data Float
Single-precision floating point numbers. It is desirable that this type be at least equal in range and precision to the IEEE single-precision type.
data Decimal
Instances
data Double
Double-precision floating point numbers. It is desirable that this type be at least equal in range and precision to the IEEE double-precision type.
data AnyURI
Instances
data QName
A QName is a (possibly) qualified name, in the sense of XML namespaces.
data NOTATION
Instances
data Duration
Instances
data GYearMonth
Constructors
GYearMonth |
Derived, yet builtin, datatypes
newtype NormalizedString
Constructors
Normalized String |
newtype Token
Instances
newtype Language
Instances
newtype NCName
Instances
newtype IDREF
Instances
newtype IDREFS
Instances
newtype ENTITY
Instances
newtype ENTITIES
Instances
newtype NMTOKEN
Instances
newtype NMTOKENS
Instances
data Integer
Arbitrary-precision integers.
newtype NonPositiveInteger
newtype NegativeInteger
data Int
A fixed-precision integer type with at least the range [-2^29 .. 2^29-1]
.
The exact range for a given implementation can be determined by using
Prelude.minBound
and Prelude.maxBound
from the Prelude.Bounded
class.
newtype Short
Instances
newtype NonNegativeInteger
newtype UnsignedLong
newtype UnsignedInt
newtype UnsignedShort
newtype UnsignedByte
newtype PositiveInteger