Package net.sf.saxon.trace

## Interface InstructionInfo

- All Superinterfaces:
    `Location`, `org.xml.sax.Locator`, `javax.xml.transform.SourceLocator`

      public interface InstructionInfo
      extends Location

  Information about an instruction in the stylesheet or a construct in a Query, made available at run-time to a TraceListener. Although the class is mainly used to provide information for diagnostics, it also has a role in detecting circularities among global variables.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `StructuredQName` | `getObjectName()` | Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc.
    `java.util.Iterator<java.lang.String>` | `getProperties()` | Get an iterator over all the properties available.
    `java.lang.Object` | `getProperty​(java.lang.String name)` | Get the value of a particular property of the instruction.

    - ### Methods inherited from interface net.sf.saxon.s9api.Location

      `getColumnNumber, getLineNumber, getPublicId, getSystemId, saveLocation`

- - ### Method Detail

    - #### getObjectName

          StructuredQName getObjectName()

      Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc. This is used only where the name is known statically.
      Returns:
        the QName of the object declared or manipulated by this instruction or expression

    - #### getProperty

          java.lang.Object getProperty​(java.lang.String name)

      Get the value of a particular property of the instruction. Properties of XSLT instructions are generally known by the name of the stylesheet attribute that defines them.
      Parameters:
        `name` - The name of the required property
      Returns:
        The value of the requested property, or null if the property is not available

    - #### getProperties

          java.util.Iterator<java.lang.String> getProperties()

      Get an iterator over all the properties available. The values returned by the iterator will be of type String, and each string can be supplied as input to the getProperty() method to retrieve the value of the property. The iterator may return properties whose value is null.
      Returns:
        an iterator over the properties.