Package net.sf.saxon.tree
Class AttributeLocation
- java.lang.Object
-
- net.sf.saxon.tree.AttributeLocation
-
-
Constructor Summary
Constructors Constructor Description AttributeLocation(NodeInfo element, StructuredQName attributeName)
AttributeLocation(StructuredQName elementName, StructuredQName attributeName, Location location)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StructuredQName
getAttributeName()
Get the name of the containing attributeint
getColumnNumber()
Get the column number.StructuredQName
getElementName()
Get the name of the containing elementNodeInfo
getElementNode()
Get the reference to the containing element node, if available.int
getLineNumber()
Get the line number.java.lang.String
getPublicId()
Get the Public IDjava.lang.String
getSystemId()
Get the system ID.Location
saveLocation()
Get an immutable copy of this Location object.void
setElementNode(NodeInfo node)
Add a reference to the containing element node.
-
-
-
Constructor Detail
-
AttributeLocation
public AttributeLocation(NodeInfo element, StructuredQName attributeName)
-
AttributeLocation
public AttributeLocation(StructuredQName elementName, StructuredQName attributeName, Location location)
-
-
Method Detail
-
setElementNode
public void setElementNode(NodeInfo node)
Add a reference to the containing element node. This needs care because we don't want to retain links to the source stylesheet at run-time; it is therefore done only for static errors
-
getElementNode
public NodeInfo getElementNode()
Get the reference to the containing element node, if available.- Returns:
- the containing element node, or null if not available or not applicable.
-
getElementName
public StructuredQName getElementName()
Get the name of the containing element- Returns:
- the name of the containing element in the stylesheet
-
getAttributeName
public StructuredQName getAttributeName()
Get the name of the containing attribute- Returns:
- the name of the containing attribute in the stylesheet. May be null if the XPath expression is contained in a text node
-
getColumnNumber
public int getColumnNumber()
Get the column number. This column number is relative to the line identified by the line number. Column numbers start at 1.- Specified by:
getColumnNumber
in interfaceLocation
- Specified by:
getColumnNumber
in interfaceorg.xml.sax.Locator
- Specified by:
getColumnNumber
in interfacejavax.xml.transform.SourceLocator
- Returns:
- the column number, or -1 if the information is not available.
-
getSystemId
public java.lang.String getSystemId()
Get the system ID. This should be the system identifier of an XML external entity; if a stylesheet module comprises multiple external entities, the distinction should be retained. This means, for example, that an instruction in a stylesheet can have a different system identifier from its parent instruction. However, SAX parsers only provide location information at the element level, so when part of an XPath expression is in a different external entity from other parts of the same expression, this distinction is lost.The system identifier of a node is in general not the same as its base URI. The base URI is affected by xml:base attributes; the system identifier is not.
- Specified by:
getSystemId
in interfaceLocation
- Specified by:
getSystemId
in interfaceorg.xml.sax.Locator
- Specified by:
getSystemId
in interfacejavax.xml.transform.SourceLocator
- Returns:
- the system ID, or null if the information is not available.
-
getPublicId
public java.lang.String getPublicId()
Get the Public ID- Specified by:
getPublicId
in interfaceLocation
- Specified by:
getPublicId
in interfaceorg.xml.sax.Locator
- Specified by:
getPublicId
in interfacejavax.xml.transform.SourceLocator
- Returns:
- usually null
-
getLineNumber
public int getLineNumber()
Get the line number. This line number is relative to the external entity identified by the system identifier. Line numbers start at 1. The value may be an approximation; SAX parsers only provide line number information at the level of element nodes.- Specified by:
getLineNumber
in interfaceLocation
- Specified by:
getLineNumber
in interfaceorg.xml.sax.Locator
- Specified by:
getLineNumber
in interfacejavax.xml.transform.SourceLocator
- Returns:
- the line number, or -1 if the information is not available.
-
saveLocation
public Location saveLocation()
Get an immutable copy of this Location object. By default Location objects may be mutable, so they should not be saved for later use. The result of this operation holds the same location information, but in an immutable form.- Specified by:
saveLocation
in interfaceLocation
- Returns:
- an immutable copy (which may be the original object, if it is already immutable)
-
-