com.saxonica.validate
Class StartTagBufferEE

java.lang.Object
  extended by net.sf.saxon.event.SequenceReceiver
      extended by net.sf.saxon.event.ProxyReceiver
          extended by net.sf.saxon.event.StartTagBuffer
              extended by com.saxonica.validate.StartTagBufferEE
All Implemented Interfaces:
Result, Receiver, NamespaceResolver

public class StartTagBufferEE
extends StartTagBuffer

This class handles attribute inheritance. It's a ProxyReceiver inserted into the validation pipeline that received notification of all events.


Field Summary
 
Fields inherited from class net.sf.saxon.event.StartTagBuffer
bufferedAttributes, elementLocationId, elementNameCode, elementProperties, elementTypeCode, namespaces, namespacesSize
 
Fields inherited from class net.sf.saxon.event.ProxyReceiver
nextReceiver
 
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
StartTagBufferEE(Receiver next)
           
 
Method Summary
 NodeInfo createSkeletonElementNode()
          Get an element node representing the element whose start tag this is, as required for implementing conditional type assignment
 void endElement()
          End of element
 void gatherInheritedAttributes(AttributeCollectionImpl atts)
          Get all inherited attributes
 boolean hasInheritedAttributes()
          Ask whether there are any attributes to inherit.
 void notifyInheritableAttribute(NodeName nameCode, String value, int location, int properties)
          Notify an inheritable attribute
 void startElement(NodeName nameCode, SchemaType typeCode, int locationId, int properties)
          Notify the start of an element
 
Methods inherited from class net.sf.saxon.event.StartTagBuffer
attribute, declareAllNamespaces, declareNamespacesForStartElement, endDocument, getAllAttributes, getAttribute, getLocalNamespaces, getURIForPrefix, hasAttributes, iteratePrefixes, namespace, setPipelineConfiguration, startContent, startDocument, undeclareNamespacesForElement
 
Methods inherited from class net.sf.saxon.event.ProxyReceiver
append, characters, close, comment, getNamePool, getUnderlyingReceiver, open, processingInstruction, setSystemId, setUnderlyingReceiver, setUnparsedEntity, usesTypeAnnotations
 
Methods inherited from class net.sf.saxon.event.SequenceReceiver
append, getConfiguration, getPipelineConfiguration, getSystemId
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StartTagBufferEE

public StartTagBufferEE(Receiver next)
Method Detail

startElement

public void startElement(NodeName nameCode,
                         SchemaType typeCode,
                         int locationId,
                         int properties)
                  throws XPathException
Notify the start of an element

Specified by:
startElement in interface Receiver
Overrides:
startElement in class StartTagBuffer
Parameters:
nameCode - integer code identifying the name of the element within the name pool.
typeCode - integer code identifying the element's type within the name pool.
properties - properties of the element node
locationId - 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.
Throws:
XPathException - if an error occurs

endElement

public void endElement()
                throws XPathException
End of element

Specified by:
endElement in interface Receiver
Overrides:
endElement in class StartTagBuffer
Throws:
XPathException - if an error occurs

notifyInheritableAttribute

public void notifyInheritableAttribute(NodeName nameCode,
                                       String value,
                                       int location,
                                       int properties)
Notify an inheritable attribute

Parameters:
nameCode - the name of the attribute
value - the value of the attribute

gatherInheritedAttributes

public void gatherInheritedAttributes(AttributeCollectionImpl atts)
Get all inherited attributes

Parameters:
atts - a collection of attributes; inherited attributes will be added to this collection unless there is already an attribute in the collection with the same name

hasInheritedAttributes

public boolean hasInheritedAttributes()
Ask whether there are any attributes to inherit. (This is an optimization, returning true when there are none does not matter)


createSkeletonElementNode

public NodeInfo createSkeletonElementNode()
                                   throws XPathException
Get an element node representing the element whose start tag this is, as required for implementing conditional type assignment

Returns:
an element node. This contains all the required namespaces and attributes, and has no children; it is untyped, as are the attributes.
Throws:
XPathException


Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.