Package net.sf.saxon.tree
Class ProcInstImpl
- java.lang.Object
-
- net.sf.saxon.tree.NodeImpl
-
- net.sf.saxon.tree.ProcInstImpl
-
- All Implemented Interfaces:
javax.xml.transform.Source
,javax.xml.transform.SourceLocator
,FingerprintedNode
,Item
,NodeInfo
,ValueRepresentation
class ProcInstImpl extends NodeImpl
ProcInstImpl is an implementation of ProcInstInfo used by the Propagator to construct its trees.- Author:
- Michael H. Kay
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.lang.String
content
(package private) int
lineNumber
(package private) int
nameCode
(package private) java.lang.String
systemId
-
Fields inherited from class net.sf.saxon.tree.NodeImpl
index, NODE_LETTER, parent
-
Fields inherited from interface net.sf.saxon.om.NodeInfo
ALL_NAMESPACES, EMPTY_NAMESPACE_LIST, IS_DTD_TYPE, IS_NILLED, LOCAL_NAMESPACES, NO_NAMESPACES
-
Fields inherited from interface net.sf.saxon.om.ValueRepresentation
EMPTY_VALUE_ARRAY
-
-
Constructor Summary
Constructors Constructor Description ProcInstImpl(int nameCode, java.lang.String content)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Value
atomize()
Get the typed value of this node.void
copy(Receiver out, int whichNamespaces, boolean copyAnnotations, int locationId)
Copy this node to a given outputterjava.lang.String
getData()
The content of this processing instruction.int
getLineNumber()
Get the line number of the node within its source entityint
getNameCode()
Get the nameCode of the node.int
getNodeKind()
Get the kind of node.java.lang.String
getStringValue()
Return the string value of the node as defined in the XPath data model.java.lang.String
getSystemId()
Get the system ID for the entity containing this node.java.lang.String
getTarget()
The target of this processing instruction.SequenceIterator
getTypedValue()
Get the typed value of this node.void
setLocation(java.lang.String uri, int lineNumber)
Set the system ID and line number-
Methods inherited from class net.sf.saxon.tree.NodeImpl
compareOrder, equals, generateId, getAttributeValue, getBaseURI, getColumnNumber, getConfiguration, getDeclaredNamespaces, getDisplayName, getDocumentNumber, getDocumentRoot, getFingerprint, getFirstChild, getLastChild, getLocalPart, getNamePool, getNextInDocument, getNextSibling, getParent, getPrefix, getPreviousInDocument, getPreviousSibling, getPublicId, getRoot, getSequenceNumber, getStringValueCS, getTypeAnnotation, getURI, hasChildNodes, hashCode, isSameNodeInfo, iterateAxis, iterateAxis, sendNamespaceDeclarations, setSystemId
-
-
-
-
Method Detail
-
getNameCode
public int getNameCode()
Get the nameCode of the node. This is used to locate the name in the NamePool- Specified by:
getNameCode
in interfaceNodeInfo
- Overrides:
getNameCode
in classNodeImpl
- Returns:
- an integer name code, which may be used to obtain the actual node name from the name pool. For unnamed nodes (text nodes, comments, document nodes, and namespace nodes for the default namespace), returns -1.
- See Also:
allocate
,getFingerprint
-
getStringValue
public java.lang.String getStringValue()
Description copied from interface:NodeInfo
Return the string value of the node as defined in the XPath data model.The interpretation of this depends on the type of node. For an element it is the accumulated character content of the element, including descendant elements.
This method returns the string value as if the node were untyped. Unlike the string value accessor in the XPath 2.0 data model, it does not report an error if the element has a complex type, instead it returns the concatenation of the descendant text nodes as it would if the element were untyped.
- Returns:
- the string value of the node
- See Also:
Item.getStringValueCS()
-
getTypedValue
public SequenceIterator getTypedValue()
Get the typed value of this node. Returns the string value, as an instance of xs:string- Specified by:
getTypedValue
in interfaceItem
- Overrides:
getTypedValue
in classNodeImpl
- Returns:
- an iterator over the items in the typed value of the node or atomic value. The items returned by this iterator will always be atomic values.
-
atomize
public Value atomize()
Get the typed value of this node. Returns the string value, as an instance of xs:string
-
getNodeKind
public final int getNodeKind()
Description copied from interface:NodeInfo
Get the kind of node. This will be a value such asType.ELEMENT
orType.ATTRIBUTE
. There are seven kinds of node: documents, elements, attributes, text, comments, processing-instructions, and namespaces.- Returns:
- an integer identifying the kind of node. These integer values are the same as those used in the DOM
- See Also:
Type
-
setLocation
public void setLocation(java.lang.String uri, int lineNumber)
Set the system ID and line number
-
getSystemId
public java.lang.String getSystemId()
Get the system ID for the entity containing this node.- Specified by:
getSystemId
in interfaceNodeInfo
- Specified by:
getSystemId
in interfacejavax.xml.transform.Source
- Specified by:
getSystemId
in interfacejavax.xml.transform.SourceLocator
- Overrides:
getSystemId
in classNodeImpl
- Returns:
- the System Identifier of the entity in the source document containing the node, or null if not known or not applicable.
-
getLineNumber
public int getLineNumber()
Get the line number of the node within its source entity- Specified by:
getLineNumber
in interfaceNodeInfo
- Specified by:
getLineNumber
in interfacejavax.xml.transform.SourceLocator
- Overrides:
getLineNumber
in classNodeImpl
- Returns:
- the line number of the node in its original source document; or -1 if not available
-
copy
public void copy(Receiver out, int whichNamespaces, boolean copyAnnotations, int locationId) throws XPathException
Copy this node to a given outputter- Parameters:
out
- the Receiver to which the node should be copiedwhichNamespaces
- in the case of an element, controls which namespace nodes should be copied. Values areNodeInfo.NO_NAMESPACES
,NodeInfo.LOCAL_NAMESPACES
,NodeInfo.ALL_NAMESPACES
copyAnnotations
- indicates whether the type annotations of element and attribute nodes should be copiedlocationId
- If non-zero, identifies the location of the instruction that requested this copy. If zero, indicates that the location information for the original node is to be copied; in this case the Receiver must be a LocationCopier- Throws:
XPathException
-
getTarget
public java.lang.String getTarget()
The target of this processing instruction. XML defines this as being the first token following the markup that begins the processing instruction.
-
getData
public java.lang.String getData()
The content of this processing instruction. This is from the first non white space character after the target to the character immediately preceding the?>
.
-
-