The tables in this section describe the scope (range of applicability) of the various components in a module's static context and dynamic context.
The following table describes the components of the static context. For each component, "global" indicates that the value of the component applies throughout an XPath expression, whereas "lexical" indicates that the value of the component applies only within the subexpression in which it is defined.
Component | Scope |
---|---|
XPath 1.0 Compatibility Mode | global |
Statically known namespaces | global |
Default element/type namespace | global |
Default function namespace | global |
In-scope schema types | global |
In-scope element declarations | global |
In-scope attribute declarations | global |
In-scope variables | lexical; for-expressions, let-expressions, and quantified expressions can bind new variables |
Context item static type | lexical |
Statically known function signatures | global |
Statically known collations | global |
Default collation | global |
Base URI | global |
Statically known documents | global |
Statically known collections | global |
Statically known default collection type | global |
The following table describes how values are assigned to the various components of the dynamic context. All these components are initialized by mechanisms defined by the host language. For each component, "global" indicates that the value of the component remains constant throughout evaluation of the XPath expression, whereas "dynamic" indicates that the value of the component can be modified by the evaluation of subexpressions.
Component | Scope |
---|---|
Context item | dynamic; changes during evaluation of path expressions and predicates |
Context position | dynamic; changes during evaluation of path expressions and predicates |
Context size | dynamic; changes during evaluation of path expressions and predicates |
Variable values | dynamic; for-expressions, let-expressions, and quantified expressions can bind new variables |
Current date and time | global; must be initialized |
Implicit timezone | global; must be initialized |
Available documents | global; must be initialized |
Available node collections | global; must be initialized |
Default collection | global; overwriteable by implementation |
Available URI collections | global; must be initialized |
Default URI collection | global; overwriteable by implementation |