|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--net.sf.saxon.event.Outputter | +--net.sf.saxon.event.SequenceOutputter
This outputter is used when writing a sequence of atomic values and nodes, that is, when xsl:variable is used with content and an "as" attribute. The outputter builds the sequence and provides access to it. (It isn't really an outputter at all, it doesn't pass the events to anyone, it merely constructs the sequence in memory and provides access to it). Note that the event sequence can include calls such as startElement and endElement that require trees to be built. If nodes such as attributes and text nodes are received while an element is being constructed, the nodes are added to the tree. Otherwise, "orphan" nodes (nodes with no parent) are created and added directly to the sequence.
This class is not used to build temporary trees. For that, the ComplexContentOutputter is used.
The SequenceOutputter no longer does type checking. This function is now performed, where necessary, by a SequenceChecker that filters the event stream before it reaches the SequenceOutputter.
Field Summary |
Fields inherited from class net.sf.saxon.event.Outputter |
previousAtomic |
Fields inherited from interface javax.xml.transform.Result |
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING |
Constructor Summary | |
SequenceOutputter()
Create a new SequenceOutputter |
Method Summary | |
void |
append(Item item)
Append an item to the sequence, performing any necessary type-checking and conversion |
void |
attribute(int nameCode,
int typeCode,
java.lang.CharSequence value,
int properties)
Output an attribute value. |
void |
characters(java.lang.CharSequence s,
int properties)
Produce text content output. |
void |
comment(java.lang.CharSequence comment,
int properties)
Write a comment. |
void |
endDocument()
Close the output |
void |
endElement()
Output an element end tag. |
Configuration |
getConfiguration()
Get the configuration |
Item |
getFirstItem()
Get the first item in the sequence that has been built |
NamePool |
getNamePool()
Get the name pool |
Value |
getSequence()
Get the sequence that has been built |
java.lang.String |
getSystemId()
Get the system ID |
void |
namespace(int nscode,
int properties)
Output a namespace declaration. |
void |
processingInstruction(java.lang.String target,
java.lang.CharSequence data,
int properties)
Write a processing instruction No-op in this implementation |
void |
setConfiguration(Configuration config)
Set the name pool. |
void |
setSystemId(java.lang.String systemId)
Set the system ID |
void |
startContent()
The startContent() event is notified after all namespaces and attributes of an element have been notified, and before any child nodes are notified. |
void |
startDocument()
Notify the start of the document. |
void |
startElement(int nameCode,
int typeCode,
int properties)
Output an element start tag. |
Methods inherited from class net.sf.saxon.event.Outputter |
setDocumentLocator, setUnparsedEntity |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public SequenceOutputter()
Method Detail |
public void setConfiguration(Configuration config)
setConfiguration
in interface Receiver
setConfiguration
in class Outputter
config
- the configuration. The name pool held by this configuration
must contain all the name codes that are passed across this interface.public NamePool getNamePool()
public Configuration getConfiguration()
Receiver
getConfiguration
in interface Receiver
getConfiguration
in class Outputter
public void setSystemId(java.lang.String systemId)
setSystemId
in interface Receiver
setSystemId
in class Outputter
systemId
- the URI used to identify the tree being passed across this interfacepublic java.lang.String getSystemId()
getSystemId
in interface javax.xml.transform.Result
getSystemId
in class Outputter
public final void startDocument() throws javax.xml.transform.TransformerException
startDocument
in interface Receiver
startDocument
in class Outputter
javax.xml.transform.TransformerException
public void startElement(int nameCode, int typeCode, int properties) throws javax.xml.transform.TransformerException
nameCode
- The element name code - a code held in the Name PooltypeCode
- Integer code identifying the type of this element. Zero identifies the default
type, that is xs:anyTypeproperties
- bit-significant flags indicating any special information
javax.xml.transform.TransformerException
public void endElement() throws javax.xml.transform.TransformerException
javax.xml.transform.TransformerException
public void namespace(int nscode, int properties) throws javax.xml.transform.TransformerException
nscode
- The namespace codeproperties
- Allows special properties to be passed if required
javax.xml.transform.TransformerException
- if there is no start tag to write to (created using writeStartTag),
or if character content has been written since the start tag was written.public void attribute(int nameCode, int typeCode, java.lang.CharSequence value, int properties) throws javax.xml.transform.TransformerException
nameCode
- An integer code representing the name of the attribute, as held in the Name PooltypeCode
- Integer code identifying the type annotation of the attribute; zero represents
the default type (xs:untypedAtomic)value
- The value of the attributeproperties
- Bit significant flags for passing extra information to the serializer, e.g.
to disable escaping
javax.xml.transform.TransformerException
- if there is no start tag to write to (created using writeStartTag),
or if character content has been written since the start tag was written.public void startContent() throws javax.xml.transform.TransformerException
javax.xml.transform.TransformerException
- for any failurepublic void characters(java.lang.CharSequence s, int properties) throws javax.xml.transform.TransformerException
s
- The String to be outputproperties
- bit-significant flags for extra information, e.g. disable-output-escaping
javax.xml.transform.TransformerException
- for any failurepublic void comment(java.lang.CharSequence comment, int properties) throws javax.xml.transform.TransformerException
comment
- The content of the commentproperties
- Additional information about the comment. The following bits are
defined:
javax.xml.transform.TransformerException
public void processingInstruction(java.lang.String target, java.lang.CharSequence data, int properties) throws javax.xml.transform.TransformerException
target
- The PI name. This must be a legal name (it will not be checked).data
- The data portion of the processing instructionproperties
- Additional information about the PI. The following bits are
defined:
javax.xml.transform.TransformerException
public void endDocument() throws javax.xml.transform.TransformerException
javax.xml.transform.TransformerException
public void append(Item item) throws javax.xml.transform.TransformerException
javax.xml.transform.TransformerException
public Value getSequence()
public Item getFirstItem()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |