## javax.xml.xquery
Interface XQSequenceType

All Known Subinterfaces:
  XQItemType

All Known Implementing Classes:
  SaxonXQItemType, SaxonXQSequenceType

    public interface XQSequenceType

The `XQSequenceType` interface represents a sequence type as XQuery 1.0: An XML Query language. The `XQSequenceType` is the base interface for the `XQItemType` interface and contains an occurence indicator.

Field Summary
`static int` `OCC_EMPTY`
`static int` `OCC_EXACTLY_ONE`
`static int` `OCC_ONE_OR_MORE`
`static int` `OCC_ZERO_OR_MORE`
`static int` `OCC_ZERO_OR_ONE`

Method Summary
`boolean` `equals(Object o)` Compares the specified object with this sequence type for equality.
`int` `getItemOccurrence()` Returns the occurrence indicator for the sequence type.
`XQItemType` `getItemType()` Returns the type of the item in the sequence type.
`int` `hashCode()` Returns a hash code consistent with the definition of the equals method.
`String` `toString()` Returns a human-readable implementation-defined string representation of the sequence type.

Field Detail

### OCC_ZERO_OR_ONE

    static final int OCC_ZERO_OR_ONE

See Also:
  Constant Field Values

### OCC_EXACTLY_ONE

    static final int OCC_EXACTLY_ONE

See Also:
  Constant Field Values

### OCC_ZERO_OR_MORE

    static final int OCC_ZERO_OR_MORE

See Also:
  Constant Field Values

### OCC_ONE_OR_MORE

    static final int OCC_ONE_OR_MORE

See Also:
  Constant Field Values

### OCC_EMPTY

    static final int OCC_EMPTY

See Also:
  Constant Field Values

Method Detail

### getItemType

    XQItemType getItemType()

  Returns the type of the item in the sequence type.

  Returns:
    `XQItemType` representing the item type in the sequence. `null` is returned in case of an empty sequence.

### getItemOccurrence

    int getItemOccurrence()

  Returns the occurrence indicator for the sequence type. One of:

  Description | Value
  --- | ---
  Zero or one | `OCC_ZERO_OR_ONE`
  Exactly one | `OCC_EXACTLY_ONE`
  Zero or more | `OCC_ZERO_OR_MORE`
  One or more | `OCC_ONE_OR_MORE`
  Empty | `OCC_EMPTY`

  Returns:
    `int` indicating the occurrence indicator

### toString

    String toString()

  Returns a human-readable implementation-defined string representation of the sequence type.

  Overrides:
    `toString` in class `Object`
  Returns:
    a `String` representation of the sequence type

### equals

    boolean equals(Object o)

  Compares the specified object with this sequence type for equality. The result is `true` only if the argument is a sequence type object which represents the same XQuery sequence type.
  In order to comply with the general contract of `equals` and `hashCode` across different implementations the following algorithm must be used. Return `true` if and only if both objects are `XQsequenceType` and:
  - `getItemOccurrence()` is equal
  - if not `OCC_EMPTY`, `getItemType()` is equal

  Overrides:
    `equals` in class `Object`
  Parameters:
    `o` - an `XQItemType` object representing an XQuery sequence type
  Returns:
    `true` if the input item type object represents the same XQuery sequence type, `false` otherwise

### hashCode

    int hashCode()

  Returns a hash code consistent with the definition of the equals method.
  In order to comply with the general contract of `equals` and `hashCode` across different implementations the following algorithm must be used:

        int hashCode;
        if (getItemOccurrence() == XQSequenceType.OCC_EMPTY)
        {
          hashCode = 1;
        }
        else
        {
          hashCode = getItemOccurrence()*31 + getItemType().hashCode();
        }

  Overrides:
    `hashCode` in class `Object`
  Returns:
    hash code for this item type

Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.