net.sf.saxon.type
Class Type
- Serializable
public abstract class Type
extends java.lang.Object
implements Serializable
This class contains static information about types and methods for constructing type codes.
The class is never instantiated.
The constant integers used for type names in earlier versions of this class have been replaced
by constants in StandardNames
. The constants representing AtomicType
objects are now
available through the BuiltInAtomicType
class.
static short | ATTRIBUTE - Item type representing an attribute node - attribute()
|
static short | COMMENT - Item type representing a comment node
|
static short | DOCUMENT - Item type representing a document node
|
static short | ELEMENT - Type representing an element node - element()
|
static short | EMPTY - Item type that matches no items (corresponds to SequenceType empty())
|
static short | ITEM - An item type that matches any item
|
static ItemType | ITEM_TYPE
|
static short | MAX_NODE_TYPE
|
static short | NAMESPACE - Item type representing a namespace node
|
static short | NODE - An item type that matches any node
|
static ItemType | NODE_TYPE
|
static short | PARENT_POINTER - Dummy node kind used in the tiny tree to contain a parent pointer
|
static short | PROCESSING_INSTRUCTION - Item type representing a processing-instruction node
|
static short | STOPPER - Dummy node kind used in the tiny tree to mark the end of the tree
|
static short | TEXT - Item type representing a text node - text()
|
static short | WHITESPACE_TEXT - Item type representing a text node stored in the tiny tree as compressed whitespace
|
ATTRIBUTE
public static final short ATTRIBUTE
Item type representing an attribute node - attribute()
COMMENT
public static final short COMMENT
Item type representing a comment node
DOCUMENT
public static final short DOCUMENT
Item type representing a document node
ELEMENT
public static final short ELEMENT
Type representing an element node - element()
EMPTY
public static final short EMPTY
Item type that matches no items (corresponds to SequenceType empty())
ITEM
public static final short ITEM
An item type that matches any item
ITEM_TYPE
public static final ItemType ITEM_TYPE
MAX_NODE_TYPE
public static final short MAX_NODE_TYPE
NAMESPACE
public static final short NAMESPACE
Item type representing a namespace node
NODE
public static final short NODE
An item type that matches any node
NODE_TYPE
public static final ItemType NODE_TYPE
PARENT_POINTER
public static final short PARENT_POINTER
Dummy node kind used in the tiny tree to contain a parent pointer
PROCESSING_INSTRUCTION
public static final short PROCESSING_INSTRUCTION
Item type representing a processing-instruction node
STOPPER
public static final short STOPPER
Dummy node kind used in the tiny tree to mark the end of the tree
TEXT
public static final short TEXT
Item type representing a text node - text()
WHITESPACE_TEXT
public static final short WHITESPACE_TEXT
Item type representing a text node stored in the tiny tree as compressed whitespace
displayTypeName
public static String displayTypeName(Item item)
Output (for diagnostics) a representation of the type of an item. This
does not have to be the most specific type
item
- the item whose type is to be displayed
- a string representation of the type of the item
getBuiltInItemType
public static ItemType getBuiltInItemType(String namespace,
String localName)
Get the ItemType object for a built-in type
namespace
- the namespace URI of the typelocalName
- the local name of the type
- the ItemType, or null if not found
getCommonSuperType
public static ItemType getCommonSuperType(ItemType t1,
ItemType t2,
TypeHierarchy th)
Get a type that is a common supertype of two given item types
t1
- the first item typet2
- the second item typeth
- the type hierarchy cache
- the item type that is a supertype of both
the supplied item types
getItemType
public static ItemType getItemType(Item item,
TypeHierarchy th)
Get the ItemType of an Item
item
- the item whose type is requiredth
- the type hierarchy cache
- the item type of the item
isComparable
public static boolean isComparable(BuiltInAtomicType t1,
BuiltInAtomicType t2,
boolean ordered)
Determine whether two primitive atomic types are comparable
t1
- the first type to compared.
This must be a primitive atomic type as defined by ItemType.getPrimitiveType()
t2
- the second type to compared.
This must be a primitive atomic type as defined by ItemType.getPrimitiveType()
ordered
- true if testing for an ordering comparison (lt, gt, le, ge). False
if testing for an equality comparison (eq, ne)
- true if the types are comparable, as defined by the rules of the "eq" operator
isNodeType
public static boolean isNodeType(ItemType type)
Test whether a given type is (some subtype of) node()
type
- The type to be tested
- true if the item type is node() or a subtype of node()
isPrimitiveType
public static boolean isPrimitiveType(int code)
Determine whether this type is a primitive type. The primitive types are
the 19 primitive types of XML Schema, plus xs:integer, xs:dayTimeDuration and xs:yearMonthDuration;
xs:untypedAtomic; the 7 node kinds; and all supertypes of these (item(), node(), xs:anyAtomicType,
xs:numeric, ...)
code
- the item type code to be tested
- true if the type is considered primitive under the above rules