## net.sf.saxon.expr
Interface VariableDeclaration

All Known Implementing Classes:
  GlobalVariableDefinition, JAXPVariable, UndeclaredVariable, XPathVariable, XSLParam, XSLVariable, XSLVariableDeclaration

    public interface VariableDeclaration

Generic interface representing a variable declaration in the static context of an XPath expression. The declaration may be internal or external to the XPath expression itself. An external VariableDeclaration is identified (perhaps created) by the bindVariable() method in the StaticContext.

Method Summary
`StructuredQName` `getVariableQName()` Get the name of the variable as a structured QName
`void` `registerReference(BindingReference ref)` Method called by a BindingReference to register the variable reference for subsequent fixup.

Method Detail

### registerReference

    void registerReference(BindingReference ref)

  Method called by a BindingReference to register the variable reference for subsequent fixup. This method is called by the XPath parser when each reference to the variable is encountered. At some time after parsing and before execution of the expression, the VariableDeclaration is responsible for calling the two methods setStaticType() and fixup() on each BindingReference that has been registered with it.

  Parameters:
    `ref` - the variable reference

### getVariableQName

    StructuredQName getVariableQName()

  Get the name of the variable as a structured QName

  Returns:
    the variable name

Copyright (c) Saxonica Limited. All rights reserved.