Class ConstructedItemType

java.lang.Object
net.sf.saxon.s9api.ItemType
net.sf.saxon.s9api.ConstructedItemType

class ConstructedItemType extends ItemType
An item type constructed by the ItemTypeFactory (as distinct from one that is predefined)

This class is not user-visible.

  • Constructor Details

    • ConstructedItemType

      protected ConstructedItemType(ItemType underlyingType, Processor processor)
      Protected constructor
      Parameters:
      underlyingType - the Saxon internal item type. Must not be null.
      processor - The s9api processor Must not be null
  • Method Details

    • getConversionRules

      public ConversionRules getConversionRules()
      Get the conversion rules implemented by this type. The conversion rules reflect variations between different versions of the W3C specifications, for example XSD 1.1 allows "+INF" as a lexical representation of xs:double, while XSD 1.0 does not.
      Overrides:
      getConversionRules in class ItemType
      Returns:
      the conversion rules
    • matches

      public boolean matches(XdmItem item) throws SaxonApiUncheckedException
      Determine whether this item type matches a given item.
      Specified by:
      matches in class ItemType
      Parameters:
      item - the item to be tested against this item type
      Returns:
      true if the item matches this item type, false if it does not match.
      Throws:
      SaxonApiUncheckedException - in the rare event that the item is a map or array containing a lazily evaluated sequence, and evaluation of the sequence fails with a dynamic error in the course of checking
    • subsumes

      public boolean subsumes(ItemType other)
      Determine whether this ItemType subsumes another ItemType. Specifically, A.subsumes(B) is true if every value that matches the ItemType B also matches the ItemType A.
      Specified by:
      subsumes in class ItemType
      Parameters:
      other - the other ItemType
      Returns:
      true if this ItemType subsumes the other ItemType. This includes the case where A and B represent the same ItemType.
      Since:
      9.1
    • getUnderlyingItemType

      public ItemType getUnderlyingItemType()
      Method to get the underlying Saxon implementation object

      This gives access to Saxon methods that may change from one release to another.

      Specified by:
      getUnderlyingItemType in class ItemType
      Returns:
      the underlying Saxon implementation object
    • getProcessor

      protected Processor getProcessor()
      Get the underlying Processor
      Returns:
      the processor used to create this ItemType. This will be null if the ItemType is one of the three static constant item types ItemType.ANY_ITEM, ItemType.ANY_NODE, or ItemType.ANY_ATOMIC_VALUE