|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.saxon.event.SequenceReceiver net.sf.saxon.event.SequenceWriter
public abstract class SequenceWriter
This outputter is used when writing a sequence of atomic values and nodes, for example, when xsl:variable is used with content and an "as" attribute. The outputter builds the sequence; the concrete subclass is responsible for deciding what to do with the resulting items.
This class is not used to build temporary trees. For that, the ComplexContentOutputter is used.
Field Summary |
---|
Fields inherited from class net.sf.saxon.event.SequenceReceiver |
---|
pipelineConfiguration, previousAtomic, systemId |
Fields inherited from interface javax.xml.transform.Result |
---|
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING |
Constructor Summary | |
---|---|
SequenceWriter()
|
Method Summary | |
---|---|
protected boolean |
adviseReuse()
Decide whether reuse of the SequenceWriter is advisable |
void |
append(Item item,
int locationId,
int copyNamespaces)
Append an item to the sequence, performing any necessary type-checking and conversion |
void |
attribute(int nameCode,
int typeCode,
CharSequence value,
int locationId,
int properties)
Output an attribute value. |
void |
characters(CharSequence s,
int locationId,
int properties)
Produce text content output. |
void |
close()
Close the output |
void |
comment(CharSequence comment,
int locationId,
int properties)
Write a comment. |
void |
endDocument()
Notify the end of a document node |
void |
endElement()
Output an element end tag. |
void |
namespace(int nscode,
int properties)
Output a namespace declaration. |
void |
processingInstruction(String target,
CharSequence data,
int locationId,
int properties)
Write a processing instruction No-op in this implementation |
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(int properties)
Start of a document node. |
void |
startElement(int nameCode,
int typeCode,
int locationId,
int properties)
Output an element start tag. |
boolean |
usesTypeAnnotations()
Ask whether this Receiver (or the downstream pipeline) makes any use of the type annotations supplied on element and attribute events |
abstract void |
write(Item item)
Abstract method to be supplied by subclasses: output one item in the sequence. |
Methods inherited from class net.sf.saxon.event.SequenceReceiver |
---|
append, getConfiguration, getNamePool, getPipelineConfiguration, getSystemId, open, setPipelineConfiguration, setSystemId, setUnparsedEntity |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public SequenceWriter()
Method Detail |
---|
public abstract void write(Item item) throws XPathException
item
- the item to be written to the sequence
XPathException
public void startDocument(int properties) throws XPathException
properties
- bit-significant integer indicating properties of the document node.
The definitions of the bits are in class ReceiverOptions
XPathException
protected boolean adviseReuse()
public void endDocument() throws XPathException
XPathException
public void startElement(int nameCode, int typeCode, int locationId, int properties) throws XPathException
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 informationlocationId
- an integer which can be interpreted using a LocationProvider
to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.
XPathException
public void endElement() throws XPathException
XPathException
public void namespace(int nscode, int properties) throws XPathException
nscode
- The namespace codeproperties
- Allows special properties to be passed if required
XPathException
- 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, CharSequence value, int locationId, int properties) throws XPathException
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 escapinglocationId
- an integer which can be interpreted using a LocationProvider
to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.
XPathException
- 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 XPathException
XPathException
- for any failurepublic void characters(CharSequence s, int locationId, int properties) throws XPathException
s
- The String to be outputproperties
- bit-significant flags for extra information, e.g. disable-output-escapinglocationId
- an integer which can be interpreted using a LocationProvider
to return information such as line number and system ID. If no location information is available,
the value zero is supplied.
XPathException
- for any failurepublic void comment(CharSequence comment, int locationId, int properties) throws XPathException
comment
- The content of the commentlocationId
- an integer which can be interpreted using a LocationProvider
to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.properties
- Additional information about the comment.
XPathException
public void processingInstruction(String target, CharSequence data, int locationId, int properties) throws XPathException
target
- The PI name. This must be a legal name (it will not be checked).data
- The data portion of the processing instructionlocationId
- an integer which can be interpreted using a LocationProvider
to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.properties
- Additional information about the PI.
XPathException
public void close() throws XPathException
XPathException
public void append(Item item, int locationId, int copyNamespaces) throws XPathException
append
in class SequenceReceiver
item
- the item to be appendedlocationId
- the location of the calling instruction, for diagnosticscopyNamespaces
- if the item is an element node, this indicates whether its namespaces
need to be copied. Values are NodeInfo.ALL_NAMESPACES
,
NodeInfo.LOCAL_NAMESPACES
, NodeInfo.NO_NAMESPACES
XPathException
public boolean usesTypeAnnotations()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |