com.ihr.xbrl.om.taxonomy

## Class XBRLXSDTypeDefinition

- java.lang.Object
- - com.ihr.xbrl.om.taxonomy.XBRLXSDTypeDefinition

- All Implemented Interfaces:
    java.io.Serializable

      public class XBRLXSDTypeDefinition
      extends java.lang.Object
      implements java.io.Serializable

  This is a wrapper class over XSDTypeDefinition objects that implements the equals method.
  Author:
    Ignacio
  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `XBRLXSDTypeDefinition.ClsIgnoreAllReceiver` The Class ClsIgnoreAllReceiver.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static javax.xml.namespace.QName` | `Anonymous` Name of an anonymous type.
    `static javax.xml.namespace.QName` | `anyURIItemType` The Constant anyURIItemType.
    `static javax.xml.namespace.QName` | `base64BinaryItemType` The Constant base64BinaryItemType.
    `static javax.xml.namespace.QName` | `booleanItemType` The Constant booleanItemType.
    `static javax.xml.namespace.QName` | `byteItemType` The Constant byteItemType.
    `static javax.xml.namespace.QName` | `dateItemType` The Constant dateItemType.
    `static javax.xml.namespace.QName` | `dateTimeItemType` The Constant dateTimeItemType.
    `static javax.xml.namespace.QName` | `decimalItemType` The Constant decimalItemType.
    `static javax.xml.namespace.QName` | `doubleItemType` The Constant doubleItemType.
    `static javax.xml.namespace.QName` | `durationItemType` The Constant durationItemType.
    `static javax.xml.namespace.QName` | `floatItemType` The Constant floatItemType.
    `static javax.xml.namespace.QName` | `gDayItemType` The Constant gDayItemType.
    `static javax.xml.namespace.QName` | `gMonthDayItemType` The Constant gMonthDayItemType.
    `static javax.xml.namespace.QName` | `gMonthItemType` The Constant gMonthItemType.
    `static javax.xml.namespace.QName` | `gYearItemType` The Constant gYearItemType.
    `static javax.xml.namespace.QName` | `gYearMonthItemType` The Constant gYearMonthItemType.
    `static javax.xml.namespace.QName` | `hexBinaryItemType` The Constant hexBinaryItemType.
    `static javax.xml.namespace.QName` | `integerItemType` The Constant integerItemType.
    `static javax.xml.namespace.QName` | `intItemType` The Constant intItemType.
    `static javax.xml.namespace.QName` | `ITAescapedItemType` The Constant ITAescapedItemType.
    `static javax.xml.namespace.QName` | `languageItemType` The Constant languageItemType.
    `static javax.xml.namespace.QName` | `longItemType` The Constant longItemType.
    `static javax.xml.namespace.QName` | `monetaryItemType` The Constant monetaryItemType.
    `static javax.xml.namespace.QName` | `NameItemType` The Constant NameItemType.
    `static javax.xml.namespace.QName` | `NCNameItemType` The Constant NCNameItemType.
    `static javax.xml.namespace.QName` | `negativeIntegerItemType` The Constant negativeIntegerItemType.
    `static javax.xml.namespace.QName` | `nonmumTextBlockItemType` The Constant nonmumTextBlockItemType.
    `static javax.xml.namespace.QName` | `nonNegativeIntegerItemType` The Constant nonNegativeIntegerItemType.
    `static javax.xml.namespace.QName` | `nonPositiveIntegerItemType` The Constant nonPositiveIntegerItemType.
    `static javax.xml.namespace.QName` | `normalizedStringItemType` The Constant normalizedStringItemType.
    `static javax.xml.namespace.QName` | `positiveIntegerItemType` The Constant positiveIntegerItemType.
    `static javax.xml.namespace.QName` | `pureItemType` The Constant pureItemType.
    `static javax.xml.namespace.QName` | `QNameItemType` The Constant QNameItemType.
    `static javax.xml.namespace.QName` | `sharesItemType` The Constant sharesItemType.
    `static javax.xml.namespace.QName` | `shortItemType` The Constant shortItemType.
    `static javax.xml.namespace.QName` | `stringItemType` The Constant stringItemType.
    `static javax.xml.namespace.QName` | `timeItemType` The Constant timeItemType.
    `static javax.xml.namespace.QName` | `tokenItemType` The Constant tokenItemType.
    `static javax.xml.namespace.QName` | `unsignedByteItemType` The Constant unsignedByteItemType.
    `static javax.xml.namespace.QName` | `unsignedIntItemType` The Constant unsignedIntItemType.
    `static javax.xml.namespace.QName` | `unsignedLongItemType` The Constant unsignedLongItemType.
    `static javax.xml.namespace.QName` | `unsignedShortItemType` The Constant unsignedShortItemType.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XBRLXSDTypeDefinition(DTSContainer dts, javax.xml.namespace.QName name)` Creates a new type wrapper for a given type name.
    `XBRLXSDTypeDefinition(DTSContainer dts, net.sf.saxon.type.SchemaType type)` Creates a new type definition from a existing schema type. the type name will be obtained from the schema type.
    `XBRLXSDTypeDefinition(DTSContainer dts, net.sf.saxon.type.SchemaType type, javax.xml.namespace.QName name)` Creates a new type definition from an existing schema type and assigns the name.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(java.lang.Object other)`
    `XSDComposition` | `getComposition()` Returns a XSDComposition object that represents the content of this XSDType.
    `DTSContainer` | `getContainer()` Access to the container where this type has been defined.
    `javax.xml.namespace.QName` | `getName()` Returns a string representation of the type for the XBRL defined types this is the QName of the xbrli Type is returned for other types.
    `java.lang.String` | `getTypeName()` Returns a human readable name for the type name.
    `static java.lang.String` | `getTypeName(XBRLXSDTypeDefinition type)` Returns a human readable name for the type name.
    `net.sf.saxon.type.SchemaType` | `getXSDType()` Access to the surrounding schema type.
    `boolean` | `isDerivedFrom(javax.xml.namespace.QName name)` Returns true if this type is derived from the type name received as a parameter.
    `java.lang.String` | `toString()`
    `XBRLValidationReport` | `validate(XBRLFact fact, com.saxonica.validate.ContentValidator scv)` Validates a fact (item or tuple) according with the content model defined in the schema.
    `XBRLValidationReport` | `validate(XBRLFactItem factItem, com.saxonica.validate.ContentValidator scv)` Validate the value of a fact item according to the data type defined in the schemas.
    `XBRLValidationReport` | `validate(XBRLFactTuple factTuple, com.saxonica.validate.ContentValidator scv)` Validate the content of a tuple fact according to the content model defined by this object.

    - ### Methods inherited from class java.lang.Object

      `getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### Anonymous

          public static final javax.xml.namespace.QName Anonymous

      Name of an anonymous type.

    - #### monetaryItemType

          public static final javax.xml.namespace.QName monetaryItemType

      The Constant monetaryItemType.

    - #### NCNameItemType

          public static final javax.xml.namespace.QName NCNameItemType

      The Constant NCNameItemType.

    - #### NameItemType

          public static final javax.xml.namespace.QName NameItemType

      The Constant NameItemType.

    - #### languageItemType

          public static final javax.xml.namespace.QName languageItemType

      The Constant languageItemType.

    - #### tokenItemType

          public static final javax.xml.namespace.QName tokenItemType

      The Constant tokenItemType.

    - #### normalizedStringItemType

          public static final javax.xml.namespace.QName normalizedStringItemType

      The Constant normalizedStringItemType.

    - #### gMonthItemType

          public static final javax.xml.namespace.QName gMonthItemType

      The Constant gMonthItemType.

    - #### gDayItemType

          public static final javax.xml.namespace.QName gDayItemType

      The Constant gDayItemType.

    - #### gMonthDayItemType

          public static final javax.xml.namespace.QName gMonthDayItemType

      The Constant gMonthDayItemType.

    - #### gYearItemType

          public static final javax.xml.namespace.QName gYearItemType

      The Constant gYearItemType.

    - #### gYearMonthItemType

          public static final javax.xml.namespace.QName gYearMonthItemType

      The Constant gYearMonthItemType.

    - #### dateItemType

          public static final javax.xml.namespace.QName dateItemType

      The Constant dateItemType.

    - #### timeItemType

          public static final javax.xml.namespace.QName timeItemType

      The Constant timeItemType.

    - #### dateTimeItemType

          public static final javax.xml.namespace.QName dateTimeItemType

      The Constant dateTimeItemType.

    - #### durationItemType

          public static final javax.xml.namespace.QName durationItemType

      The Constant durationItemType.

    - #### QNameItemType

          public static final javax.xml.namespace.QName QNameItemType

      The Constant QNameItemType.

    - #### anyURIItemType

          public static final javax.xml.namespace.QName anyURIItemType

      The Constant anyURIItemType.

    - #### base64BinaryItemType

          public static final javax.xml.namespace.QName base64BinaryItemType

      The Constant base64BinaryItemType.

    - #### hexBinaryItemType

          public static final javax.xml.namespace.QName hexBinaryItemType

      The Constant hexBinaryItemType.

    - #### booleanItemType

          public static final javax.xml.namespace.QName booleanItemType

      The Constant booleanItemType.

    - #### stringItemType

          public static final javax.xml.namespace.QName stringItemType

      The Constant stringItemType.

    - #### positiveIntegerItemType

          public static final javax.xml.namespace.QName positiveIntegerItemType

      The Constant positiveIntegerItemType.

    - #### unsignedByteItemType

          public static final javax.xml.namespace.QName unsignedByteItemType

      The Constant unsignedByteItemType.

    - #### unsignedShortItemType

          public static final javax.xml.namespace.QName unsignedShortItemType

      The Constant unsignedShortItemType.

    - #### unsignedIntItemType

          public static final javax.xml.namespace.QName unsignedIntItemType

      The Constant unsignedIntItemType.

    - #### unsignedLongItemType

          public static final javax.xml.namespace.QName unsignedLongItemType

      The Constant unsignedLongItemType.

    - #### nonNegativeIntegerItemType

          public static final javax.xml.namespace.QName nonNegativeIntegerItemType

      The Constant nonNegativeIntegerItemType.

    - #### byteItemType

          public static final javax.xml.namespace.QName byteItemType

      The Constant byteItemType.

    - #### shortItemType

          public static final javax.xml.namespace.QName shortItemType

      The Constant shortItemType.

    - #### intItemType

          public static final javax.xml.namespace.QName intItemType

      The Constant intItemType.

    - #### longItemType

          public static final javax.xml.namespace.QName longItemType

      The Constant longItemType.

    - #### negativeIntegerItemType

          public static final javax.xml.namespace.QName negativeIntegerItemType

      The Constant negativeIntegerItemType.

    - #### nonPositiveIntegerItemType

          public static final javax.xml.namespace.QName nonPositiveIntegerItemType

      The Constant nonPositiveIntegerItemType.

    - #### integerItemType

          public static final javax.xml.namespace.QName integerItemType

      The Constant integerItemType.

    - #### pureItemType

          public static final javax.xml.namespace.QName pureItemType

      The Constant pureItemType.

    - #### sharesItemType

          public static final javax.xml.namespace.QName sharesItemType

      The Constant sharesItemType.

    - #### doubleItemType

          public static final javax.xml.namespace.QName doubleItemType

      The Constant doubleItemType.

    - #### floatItemType

          public static final javax.xml.namespace.QName floatItemType

      The Constant floatItemType.

    - #### decimalItemType

          public static final javax.xml.namespace.QName decimalItemType

      The Constant decimalItemType.

    - #### ITAescapedItemType

          public static final javax.xml.namespace.QName ITAescapedItemType

      The Constant ITAescapedItemType.

    - #### nonmumTextBlockItemType

          public static final javax.xml.namespace.QName nonmumTextBlockItemType

      The Constant nonmumTextBlockItemType.

  - ### Constructor Detail

    - #### XBRLXSDTypeDefinition

          public XBRLXSDTypeDefinition(DTSContainer dts,
                               net.sf.saxon.type.SchemaType type)

      Creates a new type definition from a existing schema type. the type name will be obtained from the schema type. If the type is global then the name will be a global name. if the type is local then the Anonymous name will be returned.
      Parameters:
        `dts` - the dts
        `type` - the type

    - #### XBRLXSDTypeDefinition

          public XBRLXSDTypeDefinition(DTSContainer dts,
                               net.sf.saxon.type.SchemaType type,
                               javax.xml.namespace.QName name)

      Creates a new type definition from an existing schema type and assigns the name. Make sure the name corresponds to the global type name before using this constructor.
      Parameters:
        `dts` - the dts
        `type` - the type
        `name` - the name

    - #### XBRLXSDTypeDefinition

          public XBRLXSDTypeDefinition(DTSContainer dts,
                               javax.xml.namespace.QName name)

      Creates a new type wrapper for a given type name. This constructor can be used when the schema type is new or is being created.
      Parameters:
        `dts` - the dts
        `name` - the name

  - ### Method Detail

    - #### getContainer

          public DTSContainer getContainer()

      Access to the container where this type has been defined.
      Returns:
        DTSContainer

    - #### getXSDType

          public net.sf.saxon.type.SchemaType getXSDType()

      Access to the surrounding schema type. If this type definition has not been created using a SchemaType as a parameter then this method throws an UnsupportedOperationException because the schema type can only be obtained from XML source. The Type name can be obtained as a QName instead.
      Returns:
        SchemaType

    - #### getName

          public javax.xml.namespace.QName getName()

      Returns a string representation of the type for the XBRL defined types this is the QName of the xbrli Type is returned for other types. If the type has a QName, then the QName is used If the type is anonymous then the QName "Anonymous" in the "" namespace is returned
      Returns:
        QName

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### equals

          public boolean equals(java.lang.Object other)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### getComposition

          public XSDComposition getComposition()

      Returns a XSDComposition object that represents the content of this XSDType.

      Type MUST be complex type only. If it is not complex type it returns null.

      XSDComposition may not be equal to the nodes representing the ALL, CHOICE or SEQUENCE in the XML Schema.

      Returns:
        XSDComposition
      Throws:
        `XBRLValidationException`

    - #### validate

          public XBRLValidationReport validate(XBRLFactItem factItem,
                                      com.saxonica.validate.ContentValidator scv)

      Validate the value of a fact item according to the data type defined in the schemas.
      Parameters:
        `factItem` - the fact item
        `scv` - the scv
      Returns:
        the XBRL validation report

    - #### validate

          public XBRLValidationReport validate(XBRLFact fact,
                                      com.saxonica.validate.ContentValidator scv)

      Validates a fact (item or tuple) according with the content model defined in the schema.
      Parameters:
        `fact` - the fact
        `scv` - the scv
      Returns:
        the XBRL validation report

    - #### validate

          public XBRLValidationReport validate(XBRLFactTuple factTuple,
                                      com.saxonica.validate.ContentValidator scv)

      Validate the content of a tuple fact according to the content model defined by this object.
      Parameters:
        `factTuple` - the fact tuple
        `scv` - the scv
      Returns:
        the XBRL validation report

    - #### isDerivedFrom

          public boolean isDerivedFrom(javax.xml.namespace.QName name)

      Returns true if this type is derived from the type name received as a parameter.
      Parameters:
        `name` - a type name
      Returns:
        true, if is derived from

    - #### getTypeName

          public static java.lang.String getTypeName(XBRLXSDTypeDefinition type)

      Returns a human readable name for the type name.
      Parameters:
        `type` - the type
      Returns:
        the type name

    - #### getTypeName

          public java.lang.String getTypeName()

      Returns a human readable name for the type name.
      Returns:
        the type name