Class StaticProperty

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

public abstract class StaticProperty extends Object
This class contains constants identifying dependencies that an XPath expression might have on its context.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Bit set if multiple values are allowed
    static final int
    Bit set if a single value is allowed
    static final int
    Occurence indicator for "one or more" (+)
    static final int
     
    static final int
    Occurence indicator for "zero or more" (*)
    static final int
    Occurence indicator for "zero or one" (?)
    static final int
    Expression property: this bit is set by getProperties() in the case of an expression that delivers a set of nodes with the guarantee that every node in the result will be an attribute or namespace of the context node
    static final int
    Mask for all cardinality bits
    static final int
    Expression property: this bit is set by getProperties() in the case of an expression whose item type is node, when the nodes in the result are guaranteed all to be in the same document as the context node.
    static final int
    Mask to select all the dependency bits
    static final int
    Bit setting: Expression depends on the document containing the context node
    static final int
    Bit setting: Expression depends on context item
    static final int
    Bit setting: Expression depends on current-group() and/or current-grouping-key()
    static final int
    Bit setting: Expression depends on current() item
    static final int
    Combination of bits representing dependencies on the focus
    static final int
    Bit setting: Expression depends on last()
    static final int
    Bit setting: Expression depends on local variables
    static final int
    Combination of bits representing dependencies on the focus, but excluding dependencies on the current document
    static final int
    Bit setting: Expression depends on position()
    static final int
    Bit setting: Expression depends on regex-group()
    static final int
    Bit setting: Expression depends on user-defined functions
    static final int
    Combination of bits representing dependencies on the XSLT context
    static final int
    Occurence indicator when an empty sequence is required
    static final int
    Occurence indicator for "exactly one" (default occurrence indicator)
    static final int
    Expression property: this bit indicates that an expression has (or might have) side-effects.
    static final int
    Expression property: this bit is set in the case of an expression that will never return newly created nodes, nor a value that depends on the identity of newly created nodes (for example generate-id(new-node())).
    static final int
    Expression property: this bit is set by getProperties() in the case of an expression whose item type is node, when the nodes in the result are in document order.
    static final int
    Expression property: this bit is set by getProperties() in the case of an expression that delivers a set of nodes with the guarantee that no node in the set will be an ancestor of any other.
    static final int
    Expression property: this bit is set by getProperties() in the case of an expression that delivers items in the reverse of the correct order, when unordered retrieval is requested.
    static final int
    Expression property: this bit is set in the case of an expression that delivers a set of nodes that are all in the same document (not necessarily the same document as the context node).
    static final int
    Mask for "special properties": that is, all properties other than cardinality and dependencies
    static final int
    Expression property: this bit is set by getProperties() in the case of an expression that delivers a set of nodes with the guarantee that every node in the result will be a descendant or self, or attribute or namespace, of the context node
  • Method Summary

    Modifier and Type
    Method
    Description
    static final int
    getCardinalityCode(int cardinality)
    Reduce the cardinality value to an integer in the range 0-7
    static final String
    getCardinalityDescription(int cardinality)
    Display the cardinality value as a string (used for diagnostics)

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • DEPENDS_ON_CURRENT_ITEM

      public static final int DEPENDS_ON_CURRENT_ITEM
      Bit setting: Expression depends on current() item
      See Also:
    • DEPENDS_ON_CONTEXT_ITEM

      public static final int DEPENDS_ON_CONTEXT_ITEM
      Bit setting: Expression depends on context item
      See Also:
    • DEPENDS_ON_POSITION

      public static final int DEPENDS_ON_POSITION
      Bit setting: Expression depends on position()
      See Also:
    • DEPENDS_ON_LAST

      public static final int DEPENDS_ON_LAST
      Bit setting: Expression depends on last()
      See Also:
    • DEPENDS_ON_CONTEXT_DOCUMENT

      public static final int DEPENDS_ON_CONTEXT_DOCUMENT
      Bit setting: Expression depends on the document containing the context node
      See Also:
    • DEPENDS_ON_CURRENT_GROUP

      public static final int DEPENDS_ON_CURRENT_GROUP
      Bit setting: Expression depends on current-group() and/or current-grouping-key()
      See Also:
    • DEPENDS_ON_REGEX_GROUP

      public static final int DEPENDS_ON_REGEX_GROUP
      Bit setting: Expression depends on regex-group()
      See Also:
    • DEPENDS_ON_LOCAL_VARIABLES

      public static final int DEPENDS_ON_LOCAL_VARIABLES
      Bit setting: Expression depends on local variables
      See Also:
    • DEPENDS_ON_USER_FUNCTIONS

      public static final int DEPENDS_ON_USER_FUNCTIONS
      Bit setting: Expression depends on user-defined functions
      See Also:
    • DEPENDS_ON_XSLT_CONTEXT

      public static final int DEPENDS_ON_XSLT_CONTEXT
      Combination of bits representing dependencies on the XSLT context
      See Also:
    • DEPENDS_ON_FOCUS

      public static final int DEPENDS_ON_FOCUS
      Combination of bits representing dependencies on the focus
      See Also:
    • DEPENDS_ON_NON_DOCUMENT_FOCUS

      public static final int DEPENDS_ON_NON_DOCUMENT_FOCUS
      Combination of bits representing dependencies on the focus, but excluding dependencies on the current document
      See Also:
    • ALLOWS_ZERO

      public static final int ALLOWS_ZERO
      See Also:
    • ALLOWS_ONE

      public static final int ALLOWS_ONE
      Bit set if a single value is allowed
      See Also:
    • ALLOWS_MANY

      public static final int ALLOWS_MANY
      Bit set if multiple values are allowed
      See Also:
    • CARDINALITY_MASK

      public static final int CARDINALITY_MASK
      Mask for all cardinality bits
      See Also:
    • ALLOWS_ONE_OR_MORE

      public static final int ALLOWS_ONE_OR_MORE
      Occurence indicator for "one or more" (+)
      See Also:
    • ALLOWS_ZERO_OR_MORE

      public static final int ALLOWS_ZERO_OR_MORE
      Occurence indicator for "zero or more" (*)
      See Also:
    • ALLOWS_ZERO_OR_ONE

      public static final int ALLOWS_ZERO_OR_ONE
      Occurence indicator for "zero or one" (?)
      See Also:
    • EXACTLY_ONE

      public static final int EXACTLY_ONE
      Occurence indicator for "exactly one" (default occurrence indicator)
      See Also:
    • EMPTY

      public static final int EMPTY
      Occurence indicator when an empty sequence is required
      See Also:
    • CONTEXT_DOCUMENT_NODESET

      public static final int CONTEXT_DOCUMENT_NODESET
      Expression property: this bit is set by getProperties() in the case of an expression whose item type is node, when the nodes in the result are guaranteed all to be in the same document as the context node. For expressions that return values other than nodes, the setting is undefined.
      See Also:
    • ORDERED_NODESET

      public static final int ORDERED_NODESET
      Expression property: this bit is set by getProperties() in the case of an expression whose item type is node, when the nodes in the result are in document order.
      See Also:
    • REVERSE_DOCUMENT_ORDER

      public static final int REVERSE_DOCUMENT_ORDER
      Expression property: this bit is set by getProperties() in the case of an expression that delivers items in the reverse of the correct order, when unordered retrieval is requested.
      See Also:
    • PEER_NODESET

      public static final int PEER_NODESET
      Expression property: this bit is set by getProperties() in the case of an expression that delivers a set of nodes with the guarantee that no node in the set will be an ancestor of any other. This property is useful in deciding whether the results of a path expression are pre-sorted. The property is only used in the case where the NATURALLY_SORTED property is true, so there is no point in setting it in other cases.
      See Also:
    • SUBTREE_NODESET

      public static final int SUBTREE_NODESET
      Expression property: this bit is set by getProperties() in the case of an expression that delivers a set of nodes with the guarantee that every node in the result will be a descendant or self, or attribute or namespace, of the context node
      See Also:
    • ATTRIBUTE_NS_NODESET

      public static final int ATTRIBUTE_NS_NODESET
      Expression property: this bit is set by getProperties() in the case of an expression that delivers a set of nodes with the guarantee that every node in the result will be an attribute or namespace of the context node
      See Also:
    • NON_CREATIVE

      public static final int NON_CREATIVE
      Expression property: this bit is set in the case of an expression that will never return newly created nodes, nor a value that depends on the identity of newly created nodes (for example generate-id(new-node())). Expressions that do create new nodes cannot be moved out of loops as this could cause too few nodes to be created: for example if f() creates a new node, then count(for $i in 1 to 5 return f()) must be 5.
      See Also:
    • SINGLE_DOCUMENT_NODESET

      public static final int SINGLE_DOCUMENT_NODESET
      Expression property: this bit is set in the case of an expression that delivers a set of nodes that are all in the same document (not necessarily the same document as the context node).
      See Also:
    • HAS_SIDE_EFFECTS

      public static final int HAS_SIDE_EFFECTS
      Expression property: this bit indicates that an expression has (or might have) side-effects. This property is applied to calls on extension functions and to certain instructions such as xsl:result-document and xsl:message.
      See Also:
    • DEPENDENCY_MASK

      public static final int DEPENDENCY_MASK
      Mask to select all the dependency bits
      See Also:
    • SPECIAL_PROPERTY_MASK

      public static final int SPECIAL_PROPERTY_MASK
      Mask for "special properties": that is, all properties other than cardinality and dependencies
      See Also:
  • Method Details

    • getCardinalityCode

      public static final int getCardinalityCode(int cardinality)
      Reduce the cardinality value to an integer in the range 0-7
    • getCardinalityDescription

      public static final String getCardinalityDescription(int cardinality)
      Display the cardinality value as a string (used for diagnostics)