Package com.saxonica.ee.schema.sdoc
Class SchemaNodeFactory
- java.lang.Object
-
- com.saxonica.ee.schema.sdoc.SchemaNodeFactory
-
- All Implemented Interfaces:
NodeFactory
public class SchemaNodeFactory extends java.lang.Object implements NodeFactory
Class SchemaNodeFactory.
A Factory for nodes in the schema document tree.
Currently only allows Element nodes to be user-constructed.
-
-
Constructor Summary
Constructors Constructor Description SchemaNodeFactory(SchemaCompiler compiler, PipelineConfiguration pipe, SchemaElement referrer)
Create a SchemaNodeFactory, used for building the tree representation of a schema document
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PipelineConfiguration
getPipelineConfiguration()
Get the pipeline configurationSchemaCompiler
getSchemaCompiler()
Get the SchemaCompiler associated with this node factoryElementImpl
makeElementNode(NodeInfo parent, NodeName elemName, SchemaType elemType, boolean isNilled, AttributeMap attlist, NamespaceMap namespaces, PipelineConfiguration pipe, Location locationId, int sequence)
Create an Element node.TextImpl
makeTextNode(NodeInfo parent, java.lang.CharSequence content)
Make a text nodeSchemaException
registerId(java.lang.String id, SchemaElement element)
Register an ID value found on an element in the schema document
-
-
-
Constructor Detail
-
SchemaNodeFactory
public SchemaNodeFactory(SchemaCompiler compiler, PipelineConfiguration pipe, SchemaElement referrer)
Create a SchemaNodeFactory, used for building the tree representation of a schema document- Parameters:
compiler
- used for error reportingpipe
- the PipelineConfigurationreferrer
- the element, typically an xs:include, xs:import, or xs:redefine, that caused this schema document to be built
-
-
Method Detail
-
getPipelineConfiguration
public PipelineConfiguration getPipelineConfiguration()
Get the pipeline configuration- Returns:
- the pipeline configuration
-
getSchemaCompiler
public SchemaCompiler getSchemaCompiler()
Get the SchemaCompiler associated with this node factory- Returns:
- the SchemaCompiler associated with this node factory
-
makeElementNode
public ElementImpl makeElementNode(NodeInfo parent, NodeName elemName, SchemaType elemType, boolean isNilled, AttributeMap attlist, NamespaceMap namespaces, PipelineConfiguration pipe, Location locationId, int sequence)
Create an Element node.- Specified by:
makeElementNode
in interfaceNodeFactory
- Parameters:
parent
- The parent elementelemName
- The element nameelemType
- The type annotation of the elementisNilled
- true if the element is to be marked as nilledattlist
- The attribute collection, excluding any namespace attributesnamespaces
- in-scope namespace declarations for this elementpipe
- The pipeline configuration (provides access to the error listener and the location provider)locationId
- Indicates the source document and line number containing the nodesequence
- Sequence number to be assigned to represent document order.- Returns:
- the element node
-
makeTextNode
public TextImpl makeTextNode(NodeInfo parent, java.lang.CharSequence content)
Make a text node- Specified by:
makeTextNode
in interfaceNodeFactory
- Parameters:
parent
- the parent elementcontent
- the content of the text node- Returns:
- the constructed text node
-
registerId
public SchemaException registerId(java.lang.String id, SchemaElement element)
Register an ID value found on an element in the schema document- Parameters:
id
- the ID valueelement
- the element on which the ID value appears- Returns:
- a SchemaException if the ID value is invalid or non-unique: note this is returned, not thrown.
-
-