net.sf.saxon.expr.parser

## Class ExpressionLocation

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

- All Implemented Interfaces:
    Serializable, SourceLocator, LocationProvider, SaxonLocator, Locator

      public class ExpressionLocation
      extends Object
      implements SaxonLocator, 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

    Constructors
    Constructor and Description
    `ExpressionLocation()` Create an ExpressionLocation
    `ExpressionLocation(LocationProvider provider, long locationId)` Create an ExpressionLocation, taking the data from a supplied locationId along with a LocationProvider to interpret its meaning
    `ExpressionLocation(SourceLocator loc)` Create an ExpressionLocation, taking the data from a supplied JAXP SourceLocator
    `ExpressionLocation(String systemId, int lineNumber, int columnNumber)` Create an ExpressionLocation corresponding to a given module, line number, and column number

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getColumnNumber()` Get the column number
    `int` | `getColumnNumber(long locationId)` Get the column number within the document, entity, or module containing a particular location
    `int` | `getLineNumber()` Get the line number
    `int` | `getLineNumber(long locationId)` Get the line number corresponding to a given location Id
    `String` | `getPublicId()` Get the Public ID
    `static SaxonLocator` | `getSourceLocator(long locationId, LocationProvider locationProvider)` Construct an object holding location information for a validation error message
    `String` | `getSystemId()` Get the system ID (the module URI)
    `String` | `getSystemId(long locationId)` Get the system Id corresponding to a given location Id
    `static ExpressionLocation` | `makeFromSax(Locator loc)` Create an ExpressionLocation, taking the data from a supplied SAX Locator
    `void` | `setColumnNumber(int columnNumber)` Set the column number
    `void` | `setLineNumber(int lineNumber)` Set the line number
    `void` | `setSystemId(String systemId)` Set the systemId (the module URI)

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ExpressionLocation

          public ExpressionLocation()

      Create an ExpressionLocation

    - #### ExpressionLocation

          public ExpressionLocation(SourceLocator loc)

      Create an ExpressionLocation, taking the data from a supplied JAXP SourceLocator
      Parameters:
        `loc` - the JAXP SourceLocator

    - #### ExpressionLocation

          public ExpressionLocation(LocationProvider provider,
                            long locationId)

      Create an ExpressionLocation, taking the data from a supplied locationId along with a LocationProvider to interpret its meaning
      Parameters:
        `provider` - the LocationProvider
        `locationId` - the locationId

    - #### ExpressionLocation

          public ExpressionLocation(String systemId,
                            int lineNumber,
                            int columnNumber)

      Create an ExpressionLocation corresponding to a given module, line number, and column number
      Parameters:
        `systemId` - the module URI
        `lineNumber` - the line number
        `columnNumber` - the column number

  - ### Method Detail

    - #### makeFromSax

          public static ExpressionLocation makeFromSax(Locator loc)

      Create an ExpressionLocation, taking the data from a supplied SAX Locator
      Parameters:
        `loc` - the SAX Locator

    - #### getSystemId

          public String getSystemId()

      Get the system ID (the module URI)
      Specified by:
        `getSystemId` in interface `SourceLocator`
      Specified by:
        `getSystemId` in interface `Locator`
      Returns:
        the system ID

    - #### getPublicId

          public String getPublicId()

      Get the Public ID
      Specified by:
        `getPublicId` in interface `SourceLocator`
      Specified by:
        `getPublicId` in interface `Locator`
      Returns:
        always null in this implementation

    - #### getLineNumber

          public int getLineNumber()

      Get the line number
      Specified by:
        `getLineNumber` in interface `SourceLocator`
      Specified by:
        `getLineNumber` in interface `Locator`
      Returns:
        the line number

    - #### getColumnNumber

          public int getColumnNumber()

      Get the column number
      Specified by:
        `getColumnNumber` in interface `SourceLocator`
      Specified by:
        `getColumnNumber` in interface `Locator`
      Returns:
        the column number

    - #### setSystemId

          public void setSystemId(String systemId)

      Set the systemId (the module URI)
      Parameters:
        `systemId` - the systemId

    - #### setLineNumber

          public void setLineNumber(int lineNumber)

      Set the line number
      Parameters:
        `lineNumber` - the line number within the module

    - #### setColumnNumber

          public void setColumnNumber(int columnNumber)

      Set the column number
      Parameters:
        `columnNumber` - the column number

    - #### getSystemId

          public String getSystemId(long locationId)

      Get the system Id corresponding to a given location Id
      Specified by:
        `getSystemId` in interface `LocationProvider`
      Parameters:
        `locationId` - the location Id
      Returns:
        the system Id

    - #### getLineNumber

          public int getLineNumber(long locationId)

      Get the line number corresponding to a given location Id
      Specified by:
        `getLineNumber` in interface `LocationProvider`
      Parameters:
        `locationId` - the location Id
      Returns:
        the line number

    - #### getColumnNumber

          public int getColumnNumber(long locationId)

      Description copied from interface: `LocationProvider`
      Get the column number within the document, entity, or module containing a particular location
      Specified by:
        `getColumnNumber` in interface `LocationProvider`
      Parameters:
        `locationId` - identifier of the location in question (as passed down the Receiver pipeline)
      Returns:
        the column number within the document, entity, or module, or -1 if this is not available

    - #### getSourceLocator

          public static SaxonLocator getSourceLocator(long 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

Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.