Package net.sf.saxon.om

## Class AttributeInfo

- java.lang.Object
- - net.sf.saxon.om.AttributeInfo

- Direct Known Subclasses:
    `AttributeInfo.Deleted`, `SingletonAttributeMap`

      public class AttributeInfo
      extends java.lang.Object

  This class contains immutable information about an attribute. An `AttributeInfo` is not a node: it has no identity and no navigation capability to the parent element or to any other nodes on the tree.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `AttributeInfo.Deleted` | AttributeInfo.Deleted is a subclass used to mark a deleted attribute (in XQuery Update)

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `AttributeInfo​(NodeName nodeName, SimpleType type, java.lang.String value, Location location, int properties)` | Create an immutable AttributeInfo object

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Location` | `getLocation()` | Get the location of the attribute, if known
    `NodeName` | `getNodeName()` | Get the name of the attribute
    `int` | `getProperties()` | Get properties of the attribute
    `SimpleType` | `getType()` | Get the type annotation of the attribute
    `java.lang.String` | `getValue()` | Get the string value of the attribute
    `boolean` | `isId()` | Ask whether this is an ID attribute
    `AttributeInfo` | `withNodeName​(NodeName newName)` |

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

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

- - ### Constructor Detail

    - #### AttributeInfo

          public AttributeInfo​(NodeName nodeName,
                               SimpleType type,
                               java.lang.String value,
                               Location location,
                               int properties)

      Create an immutable AttributeInfo object
      Parameters:
        `nodeName` - the name of the attribute
        `type` - the type annotation of the attribute
        `value` - the string value of the attribute
        `location` - the location of the attribute within a source document (if known)
        `properties` - additional bitwise properties of the attribute, enumerated in class `ReceiverOption`

  - ### Method Detail

    - #### getNodeName

          public NodeName getNodeName()

      Get the name of the attribute
      Returns:
        the name of the attribute

    - #### getType

          public SimpleType getType()

      Get the type annotation of the attribute
      Returns:
        the type annotation

    - #### getValue

          public java.lang.String getValue()

      Get the string value of the attribute
      Returns:
        the string value

    - #### getLocation

          public Location getLocation()

      Get the location of the attribute, if known
      Returns:
        the location of the attribute (or `Loc.NONE` if unknown)

    - #### getProperties

          public int getProperties()

      Get properties of the attribute
      Returns:
        properties of the attribute, identified by constants in `ReceiverOption`

    - #### isId

          public boolean isId()

      Ask whether this is an ID attribute
      Returns:
        true if the name is xml:id, or the properties include the IS_ID property, or the type annotation is an ID type.

    - #### withNodeName

          public AttributeInfo withNodeName​(NodeName newName)