Package net.sf.saxon.style
Class LiteralResultElement
- java.lang.Object
-
- net.sf.saxon.tree.linked.NodeImpl
-
- net.sf.saxon.tree.linked.ParentNodeImpl
-
- net.sf.saxon.tree.linked.ElementImpl
-
- net.sf.saxon.style.StyleElement
-
- net.sf.saxon.style.LiteralResultElement
-
- All Implemented Interfaces:
java.io.Serializable
,javax.xml.transform.Source
,javax.xml.transform.SourceLocator
,LocationProvider
,SaxonLocator
,PullEvent
,Container
,FingerprintedNode
,Item<NodeInfo>
,MutableNodeInfo
,NamespaceResolver
,NodeInfo
,ValueRepresentation<NodeInfo>
,InstructionInfo
,SiblingCountingNode
,org.xml.sax.Locator
public class LiteralResultElement extends StyleElement
This class represents a literal result element in the style sheet (typically an HTML element to be output).
It is also used to represent unknown top-level elements, which are ignored.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class net.sf.saxon.style.StyleElement
ACTION_COMPILE, ACTION_FIXUP, ACTION_OPTIMIZE, ACTION_PROCESS_ATTRIBUTES, ACTION_TYPECHECK, ACTION_VALIDATE, actionsCompleted, defaultCollationName, defaultXPathNamespace, extensionNamespaces, REPORT_ALWAYS, REPORT_IF_INSTANTIATED, REPORT_UNLESS_FALLBACK_AVAILABLE, REPORT_UNLESS_FORWARDS_COMPATIBLE, reportingCircumstances, staticContext, validationError, version, YES_NO
-
Fields inherited from class net.sf.saxon.tree.linked.NodeImpl
NODE_LETTER
-
Fields inherited from interface net.sf.saxon.om.NodeInfo
ALL_NAMESPACES, IS_DTD_TYPE, IS_NILLED, LOCAL_NAMESPACES, NO_NAMESPACES
-
Fields inherited from interface net.sf.saxon.om.ValueRepresentation
EMPTY_VALUE_ARRAY
-
-
Constructor Summary
Constructors Constructor Description LiteralResultElement()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Expression
compile(Executable exec, Declaration decl)
Compile code to process the literal result element at runtimeint
getConstructType()
Get the type of construct.StructuredQName
getObjectName()
Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc.java.lang.Object
getProperty(java.lang.String name)
Get the value of a particular property of the instruction.boolean
isInstruction()
Specify that this is an instructionDocumentImpl
makeStylesheet(PreparedStylesheet pss)
Make a top-level literal result element into a stylesheet.boolean
mayContainSequenceConstructor()
Determine whether this type of element is allowed to contain a sequence constructorvoid
prepareAttributes()
Process the attribute listvoid
validate(Declaration decl)
Validate that this node is OKprotected void
validateChildren(Declaration decl)
Validate the children of this node, recursively.-
Methods inherited from class net.sf.saxon.style.StyleElement
allocateLocationId, allocatePatternSlots, allocateSlots, bindLocalVariable, bindVariable, checkAttributeValue, checkEmpty, checkSortComesFirst, checkTopLevel, checkUnknownAttribute, compileDeclaration, compileError, compileError, compileError, compileError, compileSequenceConstructor, compileWarning, compileWarning, definesExcludedNamespace, definesExtensionElement, fallbackProcessing, fixupReferences, forwardsCompatibleModeIsEnabled, getAttributeSets, getAttributeValue, getColumnNumber, getCommonChildItemType, getContainerGranularity, getContainingSlotManager, getContainingStylesheet, getDefaultCollationName, getDefaultXPathNamespace, getEffectiveVersion, getExecutable, getHostLanguage, getLastChildInstruction, getLineNumber, getLocationProvider, getNamespaceResolver, getPreparedStylesheet, getPrincipalStylesheetModule, getProcessorVersion, getProperties, getReturnedItemType, getSchemaType, getStaticContext, getSystemId, getTypeAnnotation, getWithParamInstructions, index, isActionCompleted, isDeclaration, isExcludedNamespace, isExplaining, isExtensionNamespace, isPermittedChild, issueWarning, issueWarning, isTopLevel, isXslt30Processor, makeAttributeValueTemplate, makeExpression, makeExpressionVisitor, makeNamespaceContext, makePattern, makeQName, makeSequenceType, makeSortKeys, makeTraceInstruction, markTailCalls, mayContainFallback, mayContainParam, postValidate, processAllAttributes, processAttributes, processDefaultCollationAttribute, processDefaultXPathNamespaceAttribute, processExcludedNamespaces, processExtensionElementAttribute, processStandardAttributes, processVersionAttribute, reportAbsence, seesAvuncularVariables, setActionCompleted, setObjectName, setValidationError, substituteFor, typeCheck, typeCheck, undeclaredNamespaceError, validateSubtree, xPath10ModeIsEnabled
-
Methods inherited from class net.sf.saxon.tree.linked.ElementImpl
addAttribute, addNamespace, copy, delete, fixupInsertedNamespaces, generateId, getAttributeList, getAttributeValue, getAttributeValue, getBaseURI, getColumnNumber, getDeclaredNamespaces, getDocumentRoot, getLineNumber, getNameCode, getNamespaceList, getNodeKind, getPrefixForURI, getRoot, getSchemaType, getSystemId, getTypeAnnotation, getURIForPrefix, gsetAttributeCollection, initialise, isId, isNilled, iteratePrefixes, removeAttribute, removeTypeAnnotation, rename, replaceStringValue, setAttributeList, setLocation, setNameCode, setNamespaceDeclarations, setNamespaceList, setSystemId, setTypeAnnotation
-
Methods inherited from class net.sf.saxon.tree.linked.ParentNodeImpl
addChild, compact, enumerateChildren, getFirstChild, getLastChild, getNthChild, getNumberOfChildren, getRawSequenceNumber, getSequenceNumber, getStringValue, getStringValueCS, hasChildNodes, insertChildren, insertChildrenAt, removeChild, replaceChildrenAt, setChildren, setRawSequenceNumber
-
Methods inherited from class net.sf.saxon.tree.linked.NodeImpl
atomize, compareOrder, equals, getConfiguration, getDisplayName, getDocumentNumber, getFingerprint, getLocalPart, getNamePool, getNextInDocument, getNextSibling, getParent, getPhysicalRoot, getPrefix, getPreviousInDocument, getPreviousSibling, getPublicId, getRawParent, getSiblingPosition, getTypedValue, getURI, insertSiblings, isDeleted, isIdref, isSameNodeInfo, iterateAxis, iterateAxis, newBuilder, replace, setRawParent, setSiblingPosition
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.saxon.trace.InstructionInfo
getLineNumber, getSystemId
-
-
-
-
Method Detail
-
mayContainSequenceConstructor
public boolean mayContainSequenceConstructor()
Determine whether this type of element is allowed to contain a sequence constructor- Overrides:
mayContainSequenceConstructor
in classStyleElement
- Returns:
- true: yes, it may contain a sequence constructor
-
isInstruction
public boolean isInstruction()
Specify that this is an instruction- Overrides:
isInstruction
in classStyleElement
- Returns:
- true if this element is an instruction
-
prepareAttributes
public void prepareAttributes() throws XPathException
Process the attribute list- Specified by:
prepareAttributes
in classStyleElement
- Throws:
XPathException
- if a static error is detected
-
validate
public void validate(Declaration decl) throws XPathException
Validate that this node is OK- Overrides:
validate
in classStyleElement
- Parameters:
decl
-- Throws:
XPathException
- if any error is found during validation
-
validateChildren
protected void validateChildren(Declaration decl) throws XPathException
Validate the children of this node, recursively. Overridden for top-level data elements.- Overrides:
validateChildren
in classStyleElement
- Parameters:
decl
-- Throws:
XPathException
- if validation fails
-
compile
public Expression compile(Executable exec, Declaration decl) throws XPathException
Compile code to process the literal result element at runtime- Overrides:
compile
in classStyleElement
- Parameters:
exec
- the Executabledecl
- the containing top-level declaration, for example xsl:function or xsl:template- 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
- if validation fails
-
makeStylesheet
public DocumentImpl makeStylesheet(PreparedStylesheet pss) throws XPathException
Make a top-level literal result element into a stylesheet. This implements the "Simplified Stylesheet" facility.- Parameters:
pss
- the PreparedStylesheet (the compiled stylesheet as provided)- Returns:
- the reconstructed stylesheet with an xsl:stylesheet and xsl:template element added
- Throws:
XPathException
-
getConstructType
public int getConstructType()
Get the type of construct. This will be a constant in classLocation
. This method is part of theInstructionInfo
interface- Specified by:
getConstructType
in interfaceInstructionInfo
- Overrides:
getConstructType
in classStyleElement
- Returns:
- an integer identifying the kind of construct
-
getObjectName
public StructuredQName getObjectName()
Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc. This is used only where the name is known statically. If there is no name, the value will be -1.- Specified by:
getObjectName
in interfaceInstructionInfo
- Overrides:
getObjectName
in classStyleElement
- Returns:
- the name of the literal result element
-
getProperty
public java.lang.Object getProperty(java.lang.String name)
Get the value of a particular property of the instruction. This is part of theInstructionInfo
interface for run-time tracing and debugging. The properties available include all the attributes of the source instruction (named by the attribute name): these are all provided as string values.- Specified by:
getProperty
in interfaceInstructionInfo
- Overrides:
getProperty
in classStyleElement
- Parameters:
name
- The name of the required property- Returns:
- The value of the requested property, or null if the property is not available
-
-