net.sf.saxon.style
Class XSLParam

java.lang.Object
  extended by net.sf.saxon.om.AbstractNode
      extended by net.sf.saxon.tree.NodeImpl
          extended by net.sf.saxon.tree.ParentNodeImpl
              extended by net.sf.saxon.tree.ElementImpl
                  extended by net.sf.saxon.tree.ElementWithAttributes
                      extended by net.sf.saxon.style.StyleElement
                          extended by net.sf.saxon.style.XSLGeneralVariable
                              extended by net.sf.saxon.style.XSLVariableDeclaration
                                  extended by net.sf.saxon.style.XSLParam
All Implemented Interfaces:
DOMLocator, Source, SourceLocator, VariableDeclaration, Item, NodeInfo, Element, NamedNodeMap, Node, Locator

public class XSLParam
extends XSLVariableDeclaration

An xsl:param element in the stylesheet.
The xsl:param element has mandatory attribute name and optional attributes select, required, as, ...


Field Summary
(package private)  Expression conversion
           
 
Fields inherited from class net.sf.saxon.style.XSLVariableDeclaration
references
 
Fields inherited from class net.sf.saxon.style.XSLGeneralVariable
assignable, constantText, global, procedure, redundant, requiredParam, requiredType, select, tunnel, variableFingerprint
 
Fields inherited from class net.sf.saxon.style.StyleElement
defaultXPathNamespace, extensionNamespaces, REPORT_ALWAYS, REPORT_IF_INSTANTIATED, REPORT_UNLESS_FORWARDS_COMPATIBLE, reportingCircumstances, staticContext, validationError, version
 
Fields inherited from class net.sf.saxon.tree.ElementWithAttributes
attributeList, namespaceList
 
Fields inherited from class net.sf.saxon.tree.ElementImpl
nameCode, root
 
Fields inherited from class net.sf.saxon.tree.ParentNodeImpl
sequence
 
Fields inherited from class net.sf.saxon.tree.NodeImpl
index, parent
 
Fields inherited from class net.sf.saxon.om.AbstractNode
NODE_LETTER
 
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
Fields inherited from interface net.sf.saxon.om.NodeInfo
ALL_NAMESPACES, LOCAL_NAMESPACES, NO_NAMESPACES
 
Constructor Summary
XSLParam()
           
 
Method Summary
protected  boolean allowsRequired()
           
protected  boolean allowsTunnelAttribute()
           
protected  boolean allowsValue()
           
 Instruction compile()
          Compile: this ensures space is available for local variables declared within this global variable
 SequenceType getRequiredType()
          Get the static type of the parameter.
 void validate()
          Check that the variable is not already declared, and allocate a slot number
 
Methods inherited from class net.sf.saxon.style.XSLVariableDeclaration
fixupBinding, fixupReferences, getSlotNumber, isInstruction, registerReference
 
Methods inherited from class net.sf.saxon.style.XSLGeneralVariable
allowsAsAttribute, allowsNameAttribute, checkAgainstRequiredType, getProcedure, getReturnedItemType, getSelectExpression, getVariableFingerprint, getVariableName, initializeInstruction, isAssignable, isTunnelParam, mayContainTemplateBody, prepareAttributes, setRedundant, setSelectExpression
 
Methods inherited from class net.sf.saxon.style.StyleElement
allocateSlots, backwardsCompatibleModeIsEnabled, bindVariable, checkEmpty, checkTopLevel, checkUnknownAttribute, checkWithinTemplate, compileChildren, compileError, compileError, compileWarning, definesExcludedNamespace, definesExtensionElement, fallbackProcessing, forwardsCompatibleModeIsEnabled, getAttributeSets, getAttributeValue, getCommonChildItemType, getConfiguration, getContainingStyleSheet, getContextItemType, getDefaultXPathNamespace, getLastChildInstruction, getLineNumber, getOwningProcedure, getPrecedence, getPreparedStyleSheet, getPrincipalStyleSheet, getSchemaType, getStyleSheetFunction, getTargetNamePool, getTypeAnnotation, getURIForPrefix, getVariableBinding, getVersion, getWithParamInstructions, isExcludedNamespace, isExtensionNamespace, issueWarning, issueWarning, isTopLevel, makeAttributeValueTemplate, makeExpression, makeNameCode, makeNamespaceContext, makePattern, makeSequenceType, makeSortKeys, markTailCalls, mayContainFallback, postValidate, processAllAttributes, processAttributes, processDefaultXPathNamespaceAttribute, processExcludedNamespaces, processExtensionElementAttribute, processVersionAttribute, reportAbsence, setLineNumber, setValidationError, substituteFor, typeCheck, typeCheck, validateChildren, validateSubtree
 
Methods inherited from class net.sf.saxon.tree.ElementWithAttributes
addNamespaceNodes, copy, getAttribute, getAttributeList, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getAttributeValue, getLength, getNamedItem, getNamedItemNS, getNamespaceCodes, getPrefixForURI, getURICodeForPrefix, hasAttribute, hasAttributeNS, hasAttributes, initialise, item, outputNamespaceNodes, removeAttribute, removeAttributeNode, removeAttributeNS, removeNamedItem, removeNamedItemNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setNamedItem, setNamedItemNS, setNamespaceDeclarations
 
Methods inherited from class net.sf.saxon.tree.ElementImpl
generateId, getBaseURI, getDocumentRoot, getNameCode, getNodeKind, getRoot, getSystemId, setNameCode, setSystemId
 
Methods inherited from class net.sf.saxon.tree.ParentNodeImpl
addChild, compact, enumerateChildren, getFirstChild, getLastChild, getNodeValue, getNthChild, getSequenceNumber, getStringValue, hasChildNodes, useChildrenArray
 
Methods inherited from class net.sf.saxon.tree.NodeImpl
compareOrder, copy, getDisplayName, getDocumentElement, getFingerprint, getLocalPart, getNamePool, getNextInDocument, getNextSibling, getOriginatingNode, getParent, getPrefix, getPreviousInDocument, getPreviousSibling, getURI, isSameNode, iterateAxis, iterateAxis
 
Methods inherited from class net.sf.saxon.om.AbstractNode
appendChild, appendData, cloneNode, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, deleteData, disallowUpdate, getChildNodes, getColumnNumber, getData, getDoctype, getDocumentNumber, getElementById, getElementsByTagName, getElementsByTagNameNS, getImplementation, getLocalName, getName, getNamespaceURI, getNodeName, getNodeType, getOwnerDocument, getOwnerElement, getParentNode, getPublicId, getSpecified, getTagName, getTypeAnnotation, getTypedValue, getValue, importNode, insertBefore, insertData, isSupported, normalize, removeChild, replaceChild, replaceData, setData, setNodeValue, setPrefix, setValue, splitText, substringData, supports
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.sf.saxon.expr.VariableDeclaration
getVariableFingerprint, getVariableName
 
Methods inherited from interface org.xml.sax.Locator
getColumnNumber, getPublicId, getSystemId
 
Methods inherited from interface org.w3c.dom.Element
getElementsByTagName, getElementsByTagNameNS, getSchemaTypeInfo, getTagName, setIdAttribute, setIdAttributeNode, setIdAttributeNS
 
Methods inherited from interface org.w3c.dom.Node
appendChild, cloneNode, compareDocumentPosition, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
 

Field Detail

conversion

Expression conversion
Constructor Detail

XSLParam

public XSLParam()
Method Detail

allowsValue

protected boolean allowsValue()
Overrides:
allowsValue in class XSLGeneralVariable

allowsRequired

protected boolean allowsRequired()
Overrides:
allowsRequired in class XSLGeneralVariable

allowsTunnelAttribute

protected boolean allowsTunnelAttribute()
Overrides:
allowsTunnelAttribute in class XSLGeneralVariable

validate

public void validate()
              throws TransformerConfigurationException
Description copied from class: XSLVariableDeclaration
Check that the variable is not already declared, and allocate a slot number

Overrides:
validate in class XSLVariableDeclaration
Throws:
TransformerConfigurationException

compile

public Instruction compile()
                    throws TransformerConfigurationException
Compile: this ensures space is available for local variables declared within this global variable

Specified by:
compile in class StyleElement
Returns:
either an Instruction, or null (indicating a no-op).
Throws:
TransformerConfigurationException

getRequiredType

public SequenceType getRequiredType()
Get the static type of the parameter. This is the declared type, because we cannot know the actual value in advance.

Specified by:
getRequiredType in class XSLVariableDeclaration