## net.sf.saxon.expr
Interface VariableDeclaration

All Known Implementing Classes:
  GlobalVariableDefinition, RangeVariableDeclaration, Variable, 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
`int` `getNameCode()` Get the fingerprint code that identifies the name of the variable
`java.lang.String` `getVariableName()` Get the name of the variable for use in diagnostics - a lexical QName
`void` `registerReference(BindingReference ref)` Method called by a BindingReference to register the variable reference for subsequent fixup.

Method Detail

### registerReference

    public 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.

### getNameCode

    public int getNameCode()

  Get the fingerprint code that identifies the name of the variable

### getVariableName

    public java.lang.String getVariableName()

  Get the name of the variable for use in diagnostics - a lexical QName