## net.sf.saxon.expr
Class ExpressionLocation

    java.lang.Object
      net.sf.saxon.expr.ExpressionLocation

All Implemented Interfaces:
  LocationProvider, org.xml.sax.Locator, SaxonLocator, java.io.Serializable, javax.xml.transform.SourceLocator

public class ExpressionLocation
extends java.lang.Object
implements SaxonLocator, java.io.Serializable

Class to hold details of the location of an expression, of an error in a source file, etc.

See Also:
  Serialized Form

Constructor Summary
`ExpressionLocation()`
`ExpressionLocation(LocationProvider provider, int locationId)`
`ExpressionLocation(javax.xml.transform.SourceLocator loc)`
`ExpressionLocation(java.lang.String systemId, int lineNumber, int columnNumber)`

Method Summary
`int` `getColumnNumber()` Return the column number where the current document event ends.
`int` `getLineNumber()` Return the line number where the current document event ends.
`int` `getLineNumber(int locationId)`
`java.lang.String` `getPublicId()` Return the public identifier for the current document event.
`static SaxonLocator` `getSourceLocator(int locationId, LocationProvider locationProvider)` Construct an object holding location information for a validation error message
`java.lang.String` `getSystemId()` Return the system identifier for the current document event.
`java.lang.String` `getSystemId(int locationId)`
`void` `setColumnNumber(int columnNumber)`
`void` `setLineNumber(int lineNumber)`
`void` `setPublicId(java.lang.String publicId)`
`void` `setSystemId(java.lang.String systemId)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ExpressionLocation

    public ExpressionLocation()

### ExpressionLocation

    public ExpressionLocation(javax.xml.transform.SourceLocator loc)

### ExpressionLocation

    public ExpressionLocation(LocationProvider provider,
                              int locationId)

### ExpressionLocation

    public ExpressionLocation(java.lang.String systemId,
                              int lineNumber,
                              int columnNumber)

Method Detail

### getSystemId

    public java.lang.String getSystemId()

  Description copied from interface: `org.xml.sax.Locator`
  Return the system identifier for the current document event.

  The return value is the system identifier of the document entity or of the external parsed entity in which the markup triggering the event appears.

  If the system identifier is a URL, the parser must resolve it fully before passing it to the application.

  Specified by:
    `getSystemId` in interface `org.xml.sax.Locator`
  Returns:
    A string containing the system identifier, or null if none is available.
  See Also:
    `Locator.getPublicId()`

### getPublicId

    public java.lang.String getPublicId()

  Description copied from interface: `org.xml.sax.Locator`
  Return the public identifier for the current document event.

  The return value is the public identifier of the document entity or of the external parsed entity in which the markup triggering the event appears.

  Specified by:
    `getPublicId` in interface `org.xml.sax.Locator`
  Returns:
    A string containing the public identifier, or null if none is available.
  See Also:
    `Locator.getSystemId()`

### getLineNumber

    public int getLineNumber()

  Description copied from interface: `org.xml.sax.Locator`
  Return the line number where the current document event ends.

  Warning: The return value from the method is intended only as an approximation for the sake of error reporting; it is not intended to provide sufficient information to edit the character content of the original XML document.

  The return value is an approximation of the line number in the document entity or external parsed entity where the markup triggering the event appears.

  If possible, the SAX driver should provide the line position of the first character after the text associated with the document event. The first line in the document is line 1.

  Specified by:
    `getLineNumber` in interface `org.xml.sax.Locator`
  Returns:
    The line number, or -1 if none is available.
  See Also:
    `Locator.getColumnNumber()`

### getColumnNumber

    public int getColumnNumber()

  Description copied from interface: `org.xml.sax.Locator`
  Return the column number where the current document event ends.

  Warning: The return value from the method is intended only as an approximation for the sake of error reporting; it is not intended to provide sufficient information to edit the character content of the original XML document.

  The return value is an approximation of the column number in the document entity or external parsed entity where the markup triggering the event appears.

  If possible, the SAX driver should provide the line position of the first character after the text associated with the document event.

  If possible, the SAX driver should provide the line position of the first character after the text associated with the document event. The first column in each line is column 1.

  Specified by:
    `getColumnNumber` in interface `org.xml.sax.Locator`
  Returns:
    The column number, or -1 if none is available.
  See Also:
    `Locator.getLineNumber()`

### setSystemId

    public void setSystemId(java.lang.String systemId)

### setPublicId

    public void setPublicId(java.lang.String publicId)

### setLineNumber

    public void setLineNumber(int lineNumber)

### setColumnNumber

    public void setColumnNumber(int columnNumber)

### getSystemId

    public java.lang.String getSystemId(int locationId)

  Specified by:
    `getSystemId` in interface `LocationProvider`

### getLineNumber

    public int getLineNumber(int locationId)

  Specified by:
    `getLineNumber` in interface `LocationProvider`

### getSourceLocator

    public static SaxonLocator getSourceLocator(int locationId,
                                                LocationProvider locationProvider)

  Construct an object holding location information for a validation error message

  Parameters:
    `locationId` - The locationId as supplied with an event such as startElement or attribute
    `locationProvider` - The object that understands how to interpret the locationId
  Returns:
    a SaxonLocator containing the location information