sig
  class virtual atomicValue :
    Namespace_symbols.rtype_symbol ->
    object
      method virtual atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method virtual cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private virtual eq : Dm_atomic.atomicValue -> bool
      method virtual erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method virtual getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private virtual gt : Dm_atomic.atomicValue -> bool
      method private virtual gteq : Dm_atomic.atomicValue -> bool
      method private virtual lt : Dm_atomic.atomicValue -> bool
      method private virtual lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicString :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_string ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicBoolean :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_boolean ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicDecimal :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_decimal ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicFloat :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_float ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicDouble :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_double ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicInteger :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_integer ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicDuration :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_duration ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicDateTime :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_dateTime ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicTime :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_time ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicDate :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_date ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicGYearMonth :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_gYearMonth ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicGYear :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_gYear ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicGMonthDay :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_gMonthDay ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicGDay :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_gDay ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicGMonth :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_gMonth ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicYearMonthDuration :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_yearMonthDuration ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicDayTimeDuration :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_dayTimeDuration ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicHexBinary :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_hexBinary ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicBase64Binary :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_base64Binary ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicAnyURI :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_anyURI ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicQName :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_QName ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicNotation :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_NOTATION ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  and atomicUntyped :
    ?ta:Namespace_symbols.rtype_symbol ->
    Datatypes.xs_untyped ->
    object
      method atomic_type : unit -> Namespace_symbols.rtype_symbol
      method atomic_value_compare : Dm_atomic.atomicValue -> int
      method atomic_value_eq : Dm_atomic.atomicValue -> bool
      method atomic_value_gt : Dm_atomic.atomicValue -> bool
      method atomic_value_gteq : Dm_atomic.atomicValue -> bool
      method atomic_value_lt : Dm_atomic.atomicValue -> bool
      method atomic_value_lteq : Dm_atomic.atomicValue -> bool
      method cast_to :
        Namespace_context.nsenv ->
        Namespace_symbols.rtype_symbol ->
        Datatypes.atomic_type -> Dm_atomic.atomicValue
      method private eq : Dm_atomic.atomicValue -> bool
      method erase_atomic_value : unit -> Datatypes.xs_untyped
      method getAtomicAnyURI : unit -> Datatypes.xs_anyURI
      method getAtomicBase64Binary : unit -> Datatypes.xs_base64Binary
      method getAtomicBoolean : unit -> Datatypes.xs_boolean
      method getAtomicDate : unit -> Datatypes.xs_date
      method getAtomicDateTime : unit -> Datatypes.xs_dateTime
      method getAtomicDayTimeDuration : unit -> Datatypes.xs_dayTimeDuration
      method getAtomicDecimal : unit -> Datatypes.xs_decimal
      method getAtomicDouble : unit -> Datatypes.xs_double
      method getAtomicDuration : unit -> Datatypes.xs_duration
      method getAtomicFloat : unit -> Datatypes.xs_float
      method getAtomicGDay : unit -> Datatypes.xs_gDay
      method getAtomicGMonth : unit -> Datatypes.xs_gMonth
      method getAtomicGMonthDay : unit -> Datatypes.xs_gMonthDay
      method getAtomicGYear : unit -> Datatypes.xs_gYear
      method getAtomicGYearMonth : unit -> Datatypes.xs_gYearMonth
      method getAtomicHexBinary : unit -> Datatypes.xs_hexBinary
      method getAtomicInteger : unit -> Datatypes.xs_integer
      method getAtomicNotation : unit -> Datatypes.xs_NOTATION
      method getAtomicQName : unit -> Datatypes.xs_QName
      method getAtomicString : unit -> Datatypes.xs_string
      method getAtomicTime : unit -> Datatypes.xs_time
      method getAtomicUntyped : unit -> Datatypes.xs_untyped
      method getAtomicValueKind : unit -> Datatypes.atomic_type
      method getAtomicYearMonthDuration :
        unit -> Datatypes.xs_yearMonthDuration
      method private gt : Dm_atomic.atomicValue -> bool
      method private gteq : Dm_atomic.atomicValue -> bool
      method private lt : Dm_atomic.atomicValue -> bool
      method private lteq : Dm_atomic.atomicValue -> bool
      method string_value : unit -> Datatypes.xs_untyped
    end
  module AtomicValueHash :
    sig
      type key = atomicValue
      type 'a t
      val create : int -> 'a t
      val clear : 'a t -> unit
      val reset : 'a t -> unit
      val copy : 'a t -> 'a t
      val add : 'a t -> key -> '-> unit
      val remove : 'a t -> key -> unit
      val find : 'a t -> key -> 'a
      val find_all : 'a t -> key -> 'a list
      val replace : 'a t -> key -> '-> unit
      val mem : 'a t -> key -> bool
      val iter : (key -> '-> unit) -> 'a t -> unit
      val fold : (key -> '-> '-> 'b) -> 'a t -> '-> 'b
      val length : 'a t -> int
      val stats : 'a t -> Hashtbl.statistics
    end
end