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 SequenceTypeA type that allows any sequence of itemsstatic final SequenceTypestatic final SequenceTypeA type that only permits the empty sequencestatic final SequenceTypeA type that allows a sequence of zero or mode function itemsstatic final SequenceTypeA type that allows a sequence of integersstatic final SequenceTypeA type that allows a sequence of zero or more nodesstatic final SequenceTypeA type that only permits a non-empty sequencestatic final SequenceTypeA type that allows a single optional anyURIstatic final SequenceTypeA type that allows zero or one atomic valuesstatic final SequenceTypeA type that allows a single optional xs:Base64Binarystatic final SequenceTypeA type that allows a single optional booleanstatic final SequenceTypeA type that allows a single optional bytestatic final SequenceTypeA type that allows a single optional datestatic final SequenceTypeA type that allows a single optional dateTimestatic final SequenceTypeA type that allows a single optional dayTimeDurationstatic final SequenceTypeA type that allows a single optional decimalstatic final SequenceTypeA type that allows a single document nodestatic final SequenceTypeA type that allows a single optional doublestatic final SequenceTypeA type that allows a single optional durationstatic final SequenceTypeA type that allows a single optional floatstatic final SequenceTypeA type that allows a sequence of zero or one function itemsstatic final SequenceTypeA type that allows a single optional gDaystatic final SequenceTypeA type that allows a single optional gMonthstatic final SequenceTypeA type that allows a single optional gMonthDaystatic final SequenceTypeA type that allows a single optional gYearstatic final SequenceTypeA type that allows a single optional gYearMonthstatic final SequenceTypeA type that allows a single optional xs:hexBinarystatic final SequenceTypeA type that allows a single optional integerstatic final SequenceTypeA type that allows zero or one items, of any kindstatic final SequenceTypeA type that allows zero or one nodesstatic final SequenceTypeA type that allows a single optional xs:NOTATIONstatic final SequenceTypeA type that allows an optional numeric valuestatic final SequenceTypeA type that allows a single optional xs:QNamestatic final SequenceTypeA type that allows a single optional shortstatic final SequenceTypeA type that allows a single optional stringstatic final SequenceTypeA type that allows a single optional timestatic final SequenceTypeA type that allows a single optional yearMonthDurationstatic final SequenceTypeA type that allows exactly one atomic valuestatic final SequenceTypeA type that allows a single booleanstatic final SequenceTypeA type that allows a single shortstatic final SequenceTypeA type that allows a single decimalstatic final SequenceTypeA type that allows a single doublestatic final SequenceTypeA type that allows a single floatstatic final SequenceTypeA type that allows a single function itemstatic final SequenceTypeA type that allows a single integerstatic final SequenceTypeA type that allows exactly one item, of any kindstatic final SequenceTypeA type that allows a single nodestatic final SequenceTypestatic final SequenceTypeA type that allows a single xs:QNamestatic final SequenceTypeA type that allows a single shortstatic final SequenceTypeA type that allows a single stringstatic final SequenceTypeA type that allows a single untyped atomicstatic final SequenceTypeA type that allows a sequence of zero or more string valuesstatic final SequenceTypeA type that has no instances -
Constructor Summary
ConstructorsConstructorDescriptionSequenceType(ItemType primaryType, int cardinality) Construct an instance of SequenceType. -
Method Summary
Modifier and TypeMethodDescriptionbooleanIndicates 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.intGet the cardinality component of this SequenceType.Get the "primary" part of this required type.inthashCode()Returns a hash code value for the object.booleanisSameType(SequenceType other, TypeHierarchy th) static SequenceTypemakeSequenceType(ItemType primaryType, int cardinality) Construct an instance of SequenceType.booleanmatches(GroundedValue value, TypeHierarchy th) Determine whether a given value is a valid instance of this SequenceTypestatic SequenceTypeReturn 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
-
SequenceType
Construct an instance of SequenceType.- Parameters:
primaryType- The item typecardinality- The required cardinality
-
-
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
-