net.sf.saxon.style
Class XSLVariable
java.lang.Object
net.sf.saxon.tree.NodeImpl
net.sf.saxon.tree.ParentNodeImpl
net.sf.saxon.tree.ElementImpl
net.sf.saxon.tree.ElementWithAttributes
net.sf.saxon.style.StyleElement
net.sf.saxon.style.XSLGeneralVariable
net.sf.saxon.style.XSLVariableDeclaration
net.sf.saxon.style.XSLVariable
- All Implemented Interfaces:
- Container, FingerprintedNode, InstructionInfo, Item, LocationProvider, Locator, NodeInfo, SaxonLocator, Source, SourceLocator, StylesheetProcedure, ValueRepresentation, VariableDeclaration
- public class XSLVariable
- extends XSLVariableDeclaration
Handler for xsl:variable elements in stylesheet.
The xsl:variable element has mandatory attribute name and optional attribute select
Fields inherited from class net.sf.saxon.style.StyleElement |
defaultCollationName, defaultXPathNamespace, extensionNamespaces, REPORT_ALWAYS, REPORT_IF_INSTANTIATED, REPORT_UNLESS_FALLBACK_AVAILABLE, REPORT_UNLESS_FORWARDS_COMPATIBLE, reportingCircumstances, staticContext, validationError, version |
Methods inherited from class net.sf.saxon.style.XSLGeneralVariable |
allowsAsAttribute, allowsRequired, allowsTunnelAttribute, allowsValue, checkAgainstRequiredType, getConstructType, getReturnedItemType, getVariableFingerprint, getVariableName, initializeInstruction, isAssignable, isGlobal, isRequiredParam, isTunnelParam, mayContainSequenceConstructor, setRedundant |
Methods inherited from class net.sf.saxon.style.StyleElement |
allocateLocationId, allocateSlots, backwardsCompatibleModeIsEnabled, bindVariable, checkEmpty, checkSortComesFirst, checkTopLevel, checkUnknownAttribute, checkWithinTemplate, compileError, compileError, compileError, compileSequenceConstructor, compileWarning, definesExcludedNamespace, definesExtensionElement, fallbackProcessing, forwardsCompatibleModeIsEnabled, getAttributeSets, getAttributeValue, getCommonChildItemType, getContainingSlotManager, getContainingStylesheet, getDefaultCollationName, getDefaultXPathNamespace, getExecutable, getHostLanguage, getLastChildInstruction, getLineNumber, getLineNumber, getLocationProvider, getNamespaceResolver, getObjectFingerprint, getObjectNameCode, getPrecedence, getPreparedStylesheet, getPrincipalStylesheet, getProperties, getProperty, getSchemaType, getStaticContext, getStylesheetFunction, getSystemId, getTargetNamePool, getTypeAnnotation, getVersion, getWithParamInstructions, isExcludedNamespace, isExplaining, isExtensionNamespace, isPermittedChild, issueWarning, issueWarning, isTopLevel, makeAttributeValueTemplate, makeExpression, makeNameCode, makeNamespaceContext, makePattern, makeSequenceType, makeSortKeys, makeTraceInstruction, markTailCalls, mayContainFallback, postValidate, processAllAttributes, processAttributes, processDefaultCollationAttribute, processDefaultXPathNamespaceAttribute, processExcludedNamespaces, processExtensionElementAttribute, processVersionAttribute, reportAbsence, setLineNumber, setObjectNameCode, setValidationError, substituteFor, typeCheck, typeCheck, undeclaredNamespaceError, validateChildren, validateSubtree |
Methods inherited from class net.sf.saxon.tree.ElementWithAttributes |
copy, getAttributeList, getAttributeValue, getDeclaredNamespaces, getInScopeNamespaceCodes, getPrefixForURI, getURICodeForPrefix, getURIForPrefix, initialise, iteratePrefixes, sendNamespaceDeclarations, setNamespaceDeclarations |
Methods inherited from class net.sf.saxon.tree.ElementImpl |
addChild, compact, enumerateChildren, generateId, getBaseURI, getDocumentRoot, getFirstChild, getLastChild, getNameCode, getNodeKind, getNthChild, getRoot, getSequenceNumber, getStringValue, getStringValueCS, getSystemId, hasChildNodes, setNameCode, setSystemId, useChildrenArray |
Methods inherited from class net.sf.saxon.tree.NodeImpl |
atomize, compareOrder, equals, getColumnNumber, getConfiguration, getDisplayName, getDocumentNumber, getFingerprint, getLocalPart, getNamePool, getNextInDocument, getNextSibling, getParent, getPrefix, getPreviousInDocument, getPreviousSibling, getPublicId, getTypeAnnotation, getTypedValue, getURI, hashCode, isSameNodeInfo, iterateAxis, iterateAxis |
XSLVariable
public XSLVariable()
prepareAttributes
public void prepareAttributes()
throws XPathException
- Description copied from class:
StyleElement
- Set the attribute list for the element. This is called to process the attributes (note
the distinction from processAttributes in the superclass).
Must be supplied in a subclass
- Overrides:
prepareAttributes
in class XSLGeneralVariable
- Throws:
XPathException
isInstruction
public boolean isInstruction()
- Determine whether this node is an instruction.
- Overrides:
isInstruction
in class XSLVariableDeclaration
- Returns:
- true - it is an instruction (well, it can be, anyway)
getRequiredType
public SequenceType getRequiredType()
- Get the static type of the variable. This is the declared type, unless the value
is statically known and constant, in which case it is the actual type of the value.
- Specified by:
getRequiredType
in class XSLVariableDeclaration
compile
public Expression compile(Executable exec)
throws XPathException
- Compile: used only for global variables.
This method ensures space is available for local variables declared within
this global variable
- Specified by:
compile
in class StyleElement
- Returns:
- either a ComputedExpression, or null. The value null is returned when compiling an instruction
that returns a no-op, or when compiling a top-level object such as an xsl:template that compiles
into something other than an instruction.
- Throws:
XPathException
compileLocalVariable
public Expression compileLocalVariable(Executable exec)
throws XPathException
- Throws:
XPathException