Package net.sf.saxon.style

## Class XSLPackage

- 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.XSLModuleRoot
          - - net.sf.saxon.style.XSLPackage

- All Implemented Interfaces:
    `javax.xml.transform.Source`, `javax.xml.transform.SourceLocator`, `GroundedValue`, `Item`, `MutableNodeInfo`, `NamespaceResolver`, `NodeInfo`, `Sequence`, `Location`, `SteppingNode<NodeImpl>`, `SiblingCountingNode`, `org.xml.sax.Locator`

      public class XSLPackage
      extends XSLModuleRoot

  Handler for xsl:package elements. Explicit xsl:package elements are not permitted in Saxon-HE, but implicit packages are created, so the class is present in HE. The top-level module of a stylesheet/package will always be represented by an XSLPackage object, but if the original name was xsl:stylesheet or xsl:transform then this original name will be present as the name of the element.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class net.sf.saxon.style.StyleElement

      `StyleElement.OnFailure`

  - ### Field Summary

    - ### Fields inherited from class net.sf.saxon.style.XSLModuleRoot

      `ANNOTATION_PRESERVE, ANNOTATION_STRIP, ANNOTATION_UNSPECIFIED`

    - ### Fields inherited from class net.sf.saxon.style.StyleElement

      `ACTION_COMPILE, ACTION_FIXUP, ACTION_OPTIMIZE, ACTION_PROCESS_ATTRIBUTES, ACTION_TYPECHECK, ACTION_VALIDATE, actionsCompleted, defaultCollationName, defaultMode, defaultXPathNamespace, expandText, extensionNamespaces, reportingCircumstances, staticContext, validationError, version`

    - ### Fields inherited from class net.sf.saxon.tree.linked.NodeImpl

      `NODE_LETTER`

    - ### Fields inherited from interface net.sf.saxon.om.NodeInfo

      `IS_DTD_TYPE, IS_NILLED`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `XSLPackage()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.String` | `getName()` | Get the name of the package (the value of its @name attribute)
    `VersionedPackageName` | `getNameAndVersion()` |
    `PackageVersion` | `getPackageVersion()` | Get the package version (the value of the @package-version attribute)
    `int` | `getVersion()` | Get the requested XSLT version (the value of the @version attribute)
    `void` | `initialise​(NodeName elemName, SchemaType elementType, AttributeMap atts, NodeInfo parent, int sequenceNumber)` | Initialise a new ElementImpl with an element name
    `boolean` | `isDeclaredModes()` | Ask whether it is required that modes be explicitly declared
    `protected void` | `prepareAttributes()` | Set the attribute list for the element.
    `void` | `validate​(ComponentDeclaration decl)` | Recursive walk through the stylesheet to validate all nodes

    - ### Methods inherited from class net.sf.saxon.style.XSLModuleRoot

      `getInputTypeAnnotationsAttribute, index, processAllAttributes`

    - ### Methods inherited from class net.sf.saxon.style.StyleElement

      `allocateLocation, bindLocalVariable, bindVariable, checkEmpty, checkTopLevel, checkUnknownAttribute, compile, compileDeclaration, compileError, compileError, compileError, compileError, compileError, compileError, compileErrorInAttribute, compileSequenceConstructor, compileSequenceConstructor, compileWarning, compileWarning, compileWarning, fixupReferences, generateId, getAttributeValue, getBaseURI, getBindingInformation, getCompilation, getConfiguration, getContainingPackage, getContainingSlotManager, getDeclaredVisibility, getDefaultCollationName, getDefaultXPathNamespace, getNamespaceResolver, getObjectName, getPackageData, getPrincipalStylesheetModule, getProperties, getSchemaType, getStaticContext, getStaticContext, getTypeAnnotation, getUsedPackage, getVisibility, getWithParamInstructions, getXslOriginal, hasImplicitBinding, invalidAttribute, isDeclaration, isExtensionAttributeAllowed, isExtensionNamespace, isInstruction, isPermittedChild, isSchemaAware, issueWarning, issueWarning, isTopLevel, isWithinDeclaredStreamableConstruct, makeAttributeValueTemplate, makeExpression, makeExpressionVisitor, makeQName, makeRetainedStaticContext, makeSequenceType, markTailCalls, mayContainFallback, mayContainParam, mayContainSequenceConstructor, postValidate, processBooleanAttribute, processStandardAttributes, processVersionAttribute, reportAbsence, requireSyntaxExtensions, seesAvuncularVariables, setCompilation, setObjectName, setValidationError, substituteFor, typeCheck, typeCheck, validateChildren, validateSubtree, validateValidationAttribute`

    - ### Methods inherited from class net.sf.saxon.tree.linked.ElementImpl

      `addAttribute, addNamespace, addNamespace, attributes, checkNotNamespaceSensitiveElement, copy, delete, fixupInsertedNamespaces, generateId, getAllNamespaces, getAttributeValue, getColumnNumber, getDeclaredNamespaces, getLineNumber, getNodeKind, getNodeName, getRoot, getSchemaType, getSystemId, getURIForPrefix, isId, isIdref, isInScopeNamespace, isNilled, iteratePrefixes, removeAttribute, removeNamespace, removeTypeAnnotation, rename, replaceStringValue, setAttributeInfo, setAttributes, setLocation, setNamespaceMap, setNilled, setNodeName, setSystemId, setTypeAnnotation`

    - ### Methods inherited from class net.sf.saxon.tree.linked.ParentNodeImpl

      `addChild, children, compact, getFirstChild, getLastChild, getNthChild, getNumberOfChildren, getRawSequenceNumber, getSequenceNumber, getStringValue, getStringValueCS, hasChildNodes, insertChildren, iterateChildren, removeChild, replaceChildrenAt, setChildren, setRawSequenceNumber`

    - ### Methods inherited from class net.sf.saxon.tree.linked.NodeImpl

      `atomize, compareOrder, effectiveBooleanValue, equals, getDisplayName, getFingerprint, getLocalPart, getNamePool, getNextInDocument, getNextSibling, getParent, getPhysicalRoot, getPrefix, getPreviousInDocument, getPreviousSibling, getRawParent, getSiblingPosition, getSuccessorElement, getTreeInfo, getURI, hasFingerprint, head, insertSiblings, isDeleted, iterateAxis, iterateAxis, newBuilder, replace, saveLocation, setRawParent, setSiblingPosition`

    - ### 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.om.GroundedValue

      `asIterable, concatenate, containsNode, materialize`

    - ### Methods inherited from interface net.sf.saxon.om.Item

      `getLength, itemAt, iterate, reduce, subsequence`

    - ### Methods inherited from interface net.sf.saxon.om.NodeInfo

      `children, equals, getGenre, getPublicId, hashCode, isSameNodeInfo, isStreamed, toShortString`

    - ### Methods inherited from interface net.sf.saxon.om.Sequence

      `makeRepeatable`

    - ### Methods inherited from interface javax.xml.transform.Source

      `isEmpty`

- - ### Constructor Detail

    - #### XSLPackage

          public XSLPackage()

  - ### Method Detail

    - #### initialise

          public void initialise​(NodeName elemName,
                                 SchemaType elementType,
                                 AttributeMap atts,
                                 NodeInfo parent,
                                 int sequenceNumber)

      Initialise a new ElementImpl with an element name
      Overrides:
        `initialise` in class `ElementImpl`
      Parameters:
        `elemName` - Integer representing the element name, with namespaces resolved
        `elementType` - the schema type of the element node
        `atts` - The attribute list: always null
        `parent` - The parent node
        `sequenceNumber` - Integer identifying this element within the document

    - #### getName

          public java.lang.String getName()

      Get the name of the package (the value of its @name attribute)
      Returns:
        the name of the package, or null if the @name attribute is omitted

    - #### getVersion

          public int getVersion()

      Get the requested XSLT version (the value of the @version attribute)
      Returns:
        the value of the @version attribute, times ten as an integer

    - #### getNameAndVersion

          public VersionedPackageName getNameAndVersion()

    - #### getPackageVersion

          public PackageVersion getPackageVersion()

      Get the package version (the value of the @package-version attribute)
      Returns:
        the value of the @package-version attribute, defaulting to "1.0"

    - #### prepareAttributes

          protected void prepareAttributes()

      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
      Specified by:
        `prepareAttributes` in class `StyleElement`

    - #### isDeclaredModes

          public boolean isDeclaredModes()

      Ask whether it is required that modes be explicitly declared
      Overrides:
        `isDeclaredModes` in class `XSLModuleRoot`
      Returns:
        true if modes referenced within this package must be explicitly declared

    - #### validate

          public void validate​(ComponentDeclaration decl)
                        throws XPathException

      Recursive walk through the stylesheet to validate all nodes
      Overrides:
        `validate` in class `StyleElement`
      Parameters:
        `decl` - not used
      Throws:
        `XPathException` - if invalid