Package net.sf.saxon.value
Class SequenceType
java.lang.Object
net.sf.saxon.value.SequenceType
SequenceType: a sequence type consists of a primary type, which indicates the type of item,
and a cardinality, which indicates the number of occurrences permitted. Where the primary type
is element or attribute, there may also be a content type, indicating the required type
annotation on the element or attribute content.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final SequenceType
A type that allows any sequence of itemsstatic final SequenceType
static final SequenceType
A type that only permits the empty sequencestatic final SequenceType
A type that allows a sequence of zero or mode function itemsstatic final SequenceType
A type that allows a sequence of integersstatic final SequenceType
A type that allows a sequence of zero or more nodesstatic final SequenceType
A type that only permits a non-empty sequencestatic final SequenceType
A type that allows a single optional anyURIstatic final SequenceType
A type that allows zero or one atomic valuesstatic final SequenceType
A type that allows a single optional xs:Base64Binarystatic final SequenceType
A type that allows a single optional booleanstatic final SequenceType
A type that allows a single optional bytestatic final SequenceType
A type that allows a single optional datestatic final SequenceType
A type that allows a single optional dateTimestatic final SequenceType
A type that allows a single optional dayTimeDurationstatic final SequenceType
A type that allows a single optional decimalstatic final SequenceType
A type that allows a single document nodestatic final SequenceType
A type that allows a single optional doublestatic final SequenceType
A type that allows a single optional durationstatic final SequenceType
A type that allows a single optional floatstatic final SequenceType
A type that allows a sequence of zero or one function itemsstatic final SequenceType
A type that allows a single optional gDaystatic final SequenceType
A type that allows a single optional gMonthstatic final SequenceType
A type that allows a single optional gMonthDaystatic final SequenceType
A type that allows a single optional gYearstatic final SequenceType
A type that allows a single optional gYearMonthstatic final SequenceType
A type that allows a single optional xs:hexBinarystatic final SequenceType
A type that allows a single optional integerstatic final SequenceType
A type that allows zero or one items, of any kindstatic final SequenceType
A type that allows zero or one nodesstatic final SequenceType
A type that allows a single optional xs:NOTATIONstatic final SequenceType
A type that allows an optional numeric valuestatic final SequenceType
A type that allows a single optional xs:QNamestatic final SequenceType
A type that allows a single optional shortstatic final SequenceType
A type that allows a single optional stringstatic final SequenceType
A type that allows a single optional timestatic final SequenceType
A type that allows a single optional yearMonthDurationstatic final SequenceType
A type that allows exactly one atomic valuestatic final SequenceType
A type that allows a single booleanstatic final SequenceType
A type that allows a single shortstatic final SequenceType
A type that allows a single decimalstatic final SequenceType
A type that allows a single doublestatic final SequenceType
A type that allows a single floatstatic final SequenceType
A type that allows a single function itemstatic final SequenceType
A type that allows a single integerstatic final SequenceType
A type that allows exactly one item, of any kindstatic final SequenceType
A type that allows a single nodestatic final SequenceType
static final SequenceType
A type that allows a single xs:QNamestatic final SequenceType
A type that allows a single shortstatic final SequenceType
A type that allows a single stringstatic final SequenceType
A type that allows a single untyped atomicstatic final SequenceType
A type that allows a sequence of zero or more string valuesstatic final SequenceType
A type that has no instances -
Constructor Summary
ConstructorsConstructorDescriptionSequenceType
(ItemType primaryType, int cardinality) Construct an instance of SequenceType. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Indicates whether some other object is "equal to" this one.explainMismatch
(GroundedValue value, TypeHierarchy th) Get extra diagnostic information about why a supplied item does not conform to this item type, if available.int
Get the cardinality component of this SequenceType.Get the "primary" part of this required type.int
hashCode()
Returns a hash code value for the object.boolean
isSameType
(SequenceType other, TypeHierarchy th) static SequenceType
makeSequenceType
(ItemType primaryType, int cardinality) Construct an instance of SequenceType.boolean
matches
(GroundedValue value, TypeHierarchy th) Determine whether a given value is a valid instance of this SequenceTypestatic SequenceType
Return a string representation of this SequenceType suitable for use in stylesheet export files.toString()
Return a string representation of this SequenceType
-
Field Details
-
ANY_SEQUENCE
A type that allows any sequence of items -
SINGLE_ITEM
A type that allows exactly one item, of any kind -
OPTIONAL_ITEM
A type that allows zero or one items, of any kind -
SINGLE_ATOMIC
A type that allows exactly one atomic value -
OPTIONAL_ATOMIC
A type that allows zero or one atomic values -
ATOMIC_SEQUENCE
-
SINGLE_STRING
A type that allows a single string -
SINGLE_UNTYPED_ATOMIC
A type that allows a single untyped atomic -
OPTIONAL_STRING
A type that allows a single optional string -
SINGLE_BOOLEAN
A type that allows a single boolean -
OPTIONAL_BOOLEAN
A type that allows a single optional boolean -
SINGLE_INTEGER
A type that allows a single integer -
SINGLE_DECIMAL
A type that allows a single decimal -
OPTIONAL_INTEGER
A type that allows a single optional integer -
INTEGER_SEQUENCE
A type that allows a sequence of integers -
SINGLE_SHORT
A type that allows a single short -
OPTIONAL_SHORT
A type that allows a single optional short -
SINGLE_BYTE
A type that allows a single short -
OPTIONAL_BYTE
A type that allows a single optional byte -
SINGLE_DOUBLE
A type that allows a single double -
OPTIONAL_DOUBLE
A type that allows a single optional double -
SINGLE_FLOAT
A type that allows a single float -
OPTIONAL_FLOAT
A type that allows a single optional float -
OPTIONAL_DECIMAL
A type that allows a single optional decimal -
OPTIONAL_ANY_URI
A type that allows a single optional anyURI -
OPTIONAL_DATE
A type that allows a single optional date -
OPTIONAL_TIME
A type that allows a single optional time -
OPTIONAL_G_YEAR
A type that allows a single optional gYear -
OPTIONAL_G_YEAR_MONTH
A type that allows a single optional gYearMonth -
OPTIONAL_G_MONTH
A type that allows a single optional gMonth -
OPTIONAL_G_MONTH_DAY
A type that allows a single optional gMonthDay -
OPTIONAL_G_DAY
A type that allows a single optional gDay -
OPTIONAL_DATE_TIME
A type that allows a single optional dateTime -
OPTIONAL_DURATION
A type that allows a single optional duration -
OPTIONAL_YEAR_MONTH_DURATION
A type that allows a single optional yearMonthDuration -
OPTIONAL_DAY_TIME_DURATION
A type that allows a single optional dayTimeDuration -
SINGLE_QNAME
A type that allows a single xs:QName -
OPTIONAL_QNAME
A type that allows a single optional xs:QName -
OPTIONAL_NOTATION
A type that allows a single optional xs:NOTATION -
OPTIONAL_BASE64_BINARY
A type that allows a single optional xs:Base64Binary -
OPTIONAL_HEX_BINARY
A type that allows a single optional xs:hexBinary -
OPTIONAL_NUMERIC
A type that allows an optional numeric value -
SINGLE_NUMERIC
-
OPTIONAL_NODE
A type that allows zero or one nodes -
SINGLE_NODE
A type that allows a single node -
OPTIONAL_DOCUMENT_NODE
A type that allows a single document node -
NODE_SEQUENCE
A type that allows a sequence of zero or more nodes -
STRING_SEQUENCE
A type that allows a sequence of zero or more string values -
SINGLE_FUNCTION
A type that allows a single function item -
OPTIONAL_FUNCTION_ITEM
A type that allows a sequence of zero or one function items -
FUNCTION_ITEM_SEQUENCE
A type that allows a sequence of zero or mode function items -
EMPTY_SEQUENCE
A type that only permits the empty sequence -
NON_EMPTY_SEQUENCE
A type that only permits a non-empty sequence -
VOID
A type that has no instances
-
-
Constructor Details
-
Method Details
-
makeSequenceType
Construct an instance of SequenceType. This is a factory method: it maintains a pool of SequenceType objects to reduce the amount of object creation.- Parameters:
primaryType
- The item typecardinality
- The required cardinality. This must be one of the constantsStaticProperty.EXACTLY_ONE
,StaticProperty.ALLOWS_ONE_OR_MORE
, etc- Returns:
- the SequenceType (either a newly created object, or an existing one from the cache)
-
one
-
getPrimaryType
Get the "primary" part of this required type. E.g. for type element(*, xs:date) the "primary type" is element()- Returns:
- The item type code of the primary type
-
getCardinality
public int getCardinality()Get the cardinality component of this SequenceType. This is one of the constantsStaticProperty.EXACTLY_ONE
,StaticProperty.ALLOWS_ONE_OR_MORE
, etc- Returns:
- the required cardinality
- See Also:
-
matches
Determine whether a given value is a valid instance of this SequenceType- Parameters:
value
- the value to be testedth
- the type hierarchy cache- Returns:
- true if the value is a valid instance of this type
-
explainMismatch
Get extra diagnostic information about why a supplied item does not conform to this item type, if available. If extra information is returned, it should be in the form of a complete sentence, minus the closing full stop. No information should be returned for obvious cases.- Parameters:
value
- the value which has been found not to match this sequence typeth
- the TypeHierarchy cache- Returns:
- any extra information
-
toString
Return a string representation of this SequenceType -
toExportString
Return a string representation of this SequenceType suitable for use in stylesheet export files. This differs from the result of toString() in that it will not contain any references to anonymous types. Note that it may also use the Saxon extended syntax for union types and tuple types.- Returns:
- the string representation as an instance of the XPath SequenceType construct
-
toAlphaCode
-
hashCode
public int hashCode()Returns a hash code value for the object. -
equals
Indicates whether some other object is "equal to" this one. -
isSameType
-