Package net.sf.saxon.tree.linked
Class ProcInstImpl
- java.lang.Object
-
- net.sf.saxon.tree.linked.NodeImpl
-
- net.sf.saxon.tree.linked.ProcInstImpl
-
- All Implemented Interfaces:
javax.xml.transform.Source
,javax.xml.transform.SourceLocator
,GroundedValue
,Item
,MutableNodeInfo
,NodeInfo
,Sequence
,Location
,SteppingNode<NodeImpl>
,SiblingCountingNode
,org.xml.sax.Locator
public class ProcInstImpl extends NodeImpl
ProcInstImpl is an implementation of ProcInstInfo used by the Propagator to construct its trees.
-
-
Field Summary
-
Fields inherited from class net.sf.saxon.tree.linked.NodeImpl
NODE_LETTER
-
Fields inherited from interface net.sf.saxon.om.NodeInfo
IS_DTD_TYPE, IS_NILLED
-
-
Constructor Summary
Constructors Constructor Description ProcInstImpl(java.lang.String name, java.lang.String content)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AtomicSequence
atomize()
Get the typed value of this node.void
copy(Receiver out, int copyOptions, Location locationId)
Copy this node to a given outputterint
getColumnNumber()
Get the column number of the node within its source entityint
getLineNumber()
Get the line number of the node within its source entityint
getNodeKind()
Get the kind of node.NodeName
getNodeName()
Get the name of the 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.void
rename(NodeName newNameCode, boolean inheritNamespaces)
Rename this nodevoid
replaceStringValue(java.lang.CharSequence stringValue)
Replace the string-value of this nodevoid
setLocation(java.lang.String uri, int lineNumber, int columnNumber)
Set the system ID and line number-
Methods inherited from class net.sf.saxon.tree.linked.NodeImpl
addAttribute, addNamespace, attributes, compareOrder, delete, effectiveBooleanValue, equals, generateId, getAllNamespaces, getAttributeValue, getBaseURI, getConfiguration, getDeclaredNamespaces, getDisplayName, getFingerprint, getFirstChild, getLastChild, getLocalPart, getNamePool, getNextInDocument, getNextSibling, getParent, getPhysicalRoot, getPrefix, getPreviousInDocument, getPreviousSibling, getRawParent, getRoot, getSchemaType, getSequenceNumber, getSiblingPosition, getStringValueCS, getSuccessorElement, getTreeInfo, getURI, hasChildNodes, hasFingerprint, head, insertChildren, insertSiblings, isDeleted, iterateAxis, iterateAxis, newBuilder, removeAttribute, removeTypeAnnotation, replace, saveLocation, setAttributes, setRawParent, setSiblingPosition, setSystemId, setTypeAnnotation
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.saxon.om.GroundedValue
asIterable, concatenate, containsNode, materialize
-
Methods inherited from interface net.sf.saxon.om.Item
getLength, itemAt, iterate, reduce, subsequence
-
Methods inherited from interface net.sf.saxon.om.MutableNodeInfo
addNamespace, removeNamespace
-
Methods inherited from interface net.sf.saxon.om.NodeInfo
children, children, equals, getGenre, getPublicId, hashCode, isId, isIdref, isNilled, isSameNodeInfo, isStreamed, toShortString
-
Methods inherited from interface net.sf.saxon.om.Sequence
makeRepeatable
-
-
-
-
Method Detail
-
getNodeName
public NodeName getNodeName()
Get the name of the node. Returns null for an unnamed node- Overrides:
getNodeName
in classNodeImpl
- Returns:
- the name of the node
-
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()
-
atomize
public AtomicSequence atomize()
Get the typed value of this node. Returns the string value, as an instance of xs:string- Specified by:
atomize
in interfaceItem
- Specified by:
atomize
in interfaceNodeInfo
- Overrides:
atomize
in classNodeImpl
- Returns:
- the typed value. If requireSingleton is set to true, the result will always be an AtomicValue. In other cases it may be a Value representing a sequence whose items are atomic values.
-
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, int columnNumber)
Set the system ID and line number- Parameters:
uri
- the system identifierlineNumber
- the line number
-
getSystemId
public java.lang.String getSystemId()
Get the system ID for the entity containing this node.- Specified by:
getSystemId
in interfaceLocation
- Specified by:
getSystemId
in interfaceorg.xml.sax.Locator
- 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
-
getLineNumber
public int getLineNumber()
Get the line number of the node within its source entity- Specified by:
getLineNumber
in interfaceLocation
- Specified by:
getLineNumber
in interfaceorg.xml.sax.Locator
- 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. The default implementation returns -1.
-
getColumnNumber
public int getColumnNumber()
Get the column number of the node within its source entity- Specified by:
getColumnNumber
in interfaceLocation
- Specified by:
getColumnNumber
in interfaceorg.xml.sax.Locator
- Specified by:
getColumnNumber
in interfaceNodeInfo
- Specified by:
getColumnNumber
in interfacejavax.xml.transform.SourceLocator
- Overrides:
getColumnNumber
in classNodeImpl
- Returns:
- the column number of the node in its original source document; or -1 if not available. The default implementation returns -1.
-
copy
public void copy(Receiver out, int copyOptions, Location locationId) throws XPathException
Copy this node to a given outputter- Parameters:
out
- the Receiver to which the node should be copied. It is the caller's responsibility to ensure that this Receiver is open before the method is called (or that it is self-opening), and that it is closed after use.copyOptions
- a selection of the options defined inCopyOptions
locationId
- If non-null, identifies the location of the instruction that requested this copy. If zero, indicates that the location information is not available- Throws:
XPathException
- if any downstream error occurs
-
rename
public void rename(NodeName newNameCode, boolean inheritNamespaces)
Rename this node- Specified by:
rename
in interfaceMutableNodeInfo
- Overrides:
rename
in classNodeImpl
- Parameters:
newNameCode
- the new nameinheritNamespaces
-
-
replaceStringValue
public void replaceStringValue(java.lang.CharSequence stringValue)
Replace the string-value of this node- Parameters:
stringValue
- the new string value
-
-