Package net.sf.saxon.query

## Class Annotation

- java.lang.Object
- - net.sf.saxon.query.Annotation

-     public class Annotation
      extends java.lang.Object

  This class represents an annotation that appears in a function or variable declarations

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static StructuredQName` | `PRIVATE` |
    `static StructuredQName` | `PUBLIC` |
    `static StructuredQName` | `SIMPLE` |
    `static StructuredQName` | `UPDATING` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Annotation​(StructuredQName name)` | Create an annotation

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addAnnotationParameter​(AtomicValue value)` | Add a value to the list of annotation parameters
    `boolean` | `equals​(java.lang.Object other)` |
    `java.util.List<AtomicValue>` | `getAnnotationParameters()` | Get the list of annotation parameters
    `StructuredQName` | `getAnnotationQName()` | Get the name of the annotation (a QName)
    `int` | `hashCode()` |

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

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

- - ### Field Detail

    - #### UPDATING

          public static final StructuredQName UPDATING

    - #### SIMPLE

          public static final StructuredQName SIMPLE

    - #### PRIVATE

          public static final StructuredQName PRIVATE

    - #### PUBLIC

          public static final StructuredQName PUBLIC

  - ### Constructor Detail

    - #### Annotation

          public Annotation​(StructuredQName name)

      Create an annotation
      Parameters:
        `name` - the annotation name (a QName)

  - ### Method Detail

    - #### getAnnotationQName

          public StructuredQName getAnnotationQName()

      Get the name of the annotation (a QName)
      Returns:
        the annotation name

    - #### addAnnotationParameter

          public void addAnnotationParameter​(AtomicValue value)

      Add a value to the list of annotation parameters
      Parameters:
        `value` - the value to be added. This will always be a string or number, but Saxon enforces this only at the level of the query parser

    - #### getAnnotationParameters

          public java.util.List<AtomicValue> getAnnotationParameters()

      Get the list of annotation parameters
      Returns:
        the list of parameters

    - #### equals

          public boolean equals​(java.lang.Object other)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`