## net.sf.saxon.pull
Class PullToStax

    java.lang.Object
      net.sf.saxon.pull.PullToStax

All Implemented Interfaces:
  javax.xml.stream.XMLStreamConstants, javax.xml.stream.XMLStreamReader

    public class PullToStax

extends java.lang.Object
implements javax.xml.stream.XMLStreamReader

This class bridges PullProvider events to XMLStreamReader (Stax) events. That is, it acts as an XMLStreamReader, fetching the underlying data from a PullProvider.

A PullProvider may provide access to any XDM sequence, whereas an XMLStreamReader always reads a document. The conversion of a sequence to a document follows the rules for "normalizing" a sequence in the Serialization specification: for example, atomic values are converted into text nodes, with adjacent atomic values being space-separated.

Nested Class Summary
`class` `PullToStax.SourceStreamLocation` Bridge a SAX SourceLocator to a javax.xml.stream.Location

Field Summary

Fields inherited from interface javax.xml.stream.XMLStreamConstants
`ATTRIBUTE, CDATA, CHARACTERS, COMMENT, DTD, END_DOCUMENT, END_ELEMENT, ENTITY_DECLARATION, ENTITY_REFERENCE, NAMESPACE, NOTATION_DECLARATION, PROCESSING_INSTRUCTION, SPACE, START_DOCUMENT, START_ELEMENT`

Constructor Summary
`PullToStax(PullProvider provider)` Create a PullToStax instance, which wraps a Saxon PullProvider as a Stax XMLStreamReader

Method Summary
`void` `close()`
`int` `getAttributeCount()`
`java.lang.String` `getAttributeLocalName(int i)`
`javax.xml.namespace.QName` `getAttributeName(int i)`
`java.lang.String` `getAttributeNamespace(int i)`
`java.lang.String` `getAttributePrefix(int i)`
`java.lang.String` `getAttributeType(int i)`
`java.lang.String` `getAttributeValue(int i)`
`java.lang.String` `getAttributeValue(java.lang.String uri, java.lang.String local)`
`java.lang.String` `getCharacterEncodingScheme()`
`java.lang.String` `getElementText()`
`java.lang.String` `getEncoding()`
`int` `getEventType()`
`java.lang.String` `getLocalName()`
`javax.xml.stream.Location` `getLocation()`
`javax.xml.namespace.QName` `getName()`
`javax.xml.namespace.NamespaceContext` `getNamespaceContext()`
`int` `getNamespaceCount()`
`java.lang.String` `getNamespacePrefix(int i)`
`java.lang.String` `getNamespaceURI()`
`java.lang.String` `getNamespaceURI(int i)`
`java.lang.String` `getNamespaceURI(java.lang.String s)`
`java.lang.String` `getPIData()`
`java.lang.String` `getPITarget()`
`java.lang.String` `getPrefix()`
`java.lang.Object` `getProperty(java.lang.String s)`
`java.lang.String` `getText()`
`char[]` `getTextCharacters()`
`int` `getTextCharacters(int sourceStart, char[] target, int targetStart, int length)`
`int` `getTextLength()`
`int` `getTextStart()`
`java.lang.String` `getVersion()`
`boolean` `hasName()`
`boolean` `hasNext()`
`boolean` `hasText()`
`boolean` `isAttributeSpecified(int i)`
`boolean` `isCharacters()`
`boolean` `isEndElement()`
`boolean` `isStandalone()`
`boolean` `isStartElement()`
`boolean` `isWhiteSpace()`
`int` `next()`
`int` `nextTag()`
`void` `require(int event, java.lang.String uri, java.lang.String local)`
`boolean` `standaloneSet()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PullToStax

    public PullToStax(PullProvider provider)

  Create a PullToStax instance, which wraps a Saxon PullProvider as a Stax XMLStreamReader

  Parameters:
    `provider` - the Saxon PullProvider from which the events will be read

Method Detail

### getAttributeCount

    public int getAttributeCount()

  Specified by:
    `getAttributeCount` in interface `javax.xml.stream.XMLStreamReader`

### isAttributeSpecified

    public boolean isAttributeSpecified(int i)

  Specified by:
    `isAttributeSpecified` in interface `javax.xml.stream.XMLStreamReader`

### getAttributeName

    public javax.xml.namespace.QName getAttributeName(int i)

  Specified by:
    `getAttributeName` in interface `javax.xml.stream.XMLStreamReader`

### getAttributeLocalName

    public java.lang.String getAttributeLocalName(int i)

  Specified by:
    `getAttributeLocalName` in interface `javax.xml.stream.XMLStreamReader`

### getAttributeNamespace

    public java.lang.String getAttributeNamespace(int i)

  Specified by:
    `getAttributeNamespace` in interface `javax.xml.stream.XMLStreamReader`

### getAttributePrefix

    public java.lang.String getAttributePrefix(int i)

  Specified by:
    `getAttributePrefix` in interface `javax.xml.stream.XMLStreamReader`

### getAttributeType

    public java.lang.String getAttributeType(int i)

  Specified by:
    `getAttributeType` in interface `javax.xml.stream.XMLStreamReader`

### getAttributeValue

    public java.lang.String getAttributeValue(int i)

  Specified by:
    `getAttributeValue` in interface `javax.xml.stream.XMLStreamReader`

### getAttributeValue

    public java.lang.String getAttributeValue(java.lang.String uri,
                                              java.lang.String local)

  Specified by:
    `getAttributeValue` in interface `javax.xml.stream.XMLStreamReader`

### getEventType

    public int getEventType()

  Specified by:
    `getEventType` in interface `javax.xml.stream.XMLStreamReader`

### getNamespaceCount

    public int getNamespaceCount()

  Specified by:
    `getNamespaceCount` in interface `javax.xml.stream.XMLStreamReader`

### getText

    public java.lang.String getText()

  Specified by:
    `getText` in interface `javax.xml.stream.XMLStreamReader`

### getTextLength

    public int getTextLength()

  Specified by:
    `getTextLength` in interface `javax.xml.stream.XMLStreamReader`

### getTextStart

    public int getTextStart()

  Specified by:
    `getTextStart` in interface `javax.xml.stream.XMLStreamReader`

### getTextCharacters

    public char[] getTextCharacters()

  Specified by:
    `getTextCharacters` in interface `javax.xml.stream.XMLStreamReader`

### getTextCharacters

    public int getTextCharacters(int sourceStart,
                                 char[] target,
                                 int targetStart,
                                 int length)
                          throws javax.xml.stream.XMLStreamException

  Specified by:
    `getTextCharacters` in interface `javax.xml.stream.XMLStreamReader`
  Throws:
    `javax.xml.stream.XMLStreamException`

### next

    public int next()
             throws javax.xml.stream.XMLStreamException

  Specified by:
    `next` in interface `javax.xml.stream.XMLStreamReader`
  Throws:
    `javax.xml.stream.XMLStreamException`

### nextTag

    public int nextTag()
                throws javax.xml.stream.XMLStreamException

  Specified by:
    `nextTag` in interface `javax.xml.stream.XMLStreamReader`
  Throws:
    `javax.xml.stream.XMLStreamException`

### close

    public void close()
               throws javax.xml.stream.XMLStreamException

  Specified by:
    `close` in interface `javax.xml.stream.XMLStreamReader`
  Throws:
    `javax.xml.stream.XMLStreamException`

### hasName

    public boolean hasName()

  Specified by:
    `hasName` in interface `javax.xml.stream.XMLStreamReader`

### hasNext

    public boolean hasNext()
                    throws javax.xml.stream.XMLStreamException

  Specified by:
    `hasNext` in interface `javax.xml.stream.XMLStreamReader`
  Throws:
    `javax.xml.stream.XMLStreamException`

### hasText

    public boolean hasText()

  Specified by:
    `hasText` in interface `javax.xml.stream.XMLStreamReader`

### isCharacters

    public boolean isCharacters()

  Specified by:
    `isCharacters` in interface `javax.xml.stream.XMLStreamReader`

### isEndElement

    public boolean isEndElement()

  Specified by:
    `isEndElement` in interface `javax.xml.stream.XMLStreamReader`

### isStandalone

    public boolean isStandalone()

  Specified by:
    `isStandalone` in interface `javax.xml.stream.XMLStreamReader`

### isStartElement

    public boolean isStartElement()

  Specified by:
    `isStartElement` in interface `javax.xml.stream.XMLStreamReader`

### isWhiteSpace

    public boolean isWhiteSpace()

  Specified by:
    `isWhiteSpace` in interface `javax.xml.stream.XMLStreamReader`

### standaloneSet

    public boolean standaloneSet()

  Specified by:
    `standaloneSet` in interface `javax.xml.stream.XMLStreamReader`

### getCharacterEncodingScheme

    public java.lang.String getCharacterEncodingScheme()

  Specified by:
    `getCharacterEncodingScheme` in interface `javax.xml.stream.XMLStreamReader`

### getElementText

    public java.lang.String getElementText()
                                    throws javax.xml.stream.XMLStreamException

  Specified by:
    `getElementText` in interface `javax.xml.stream.XMLStreamReader`
  Throws:
    `javax.xml.stream.XMLStreamException`

### getEncoding

    public java.lang.String getEncoding()

  Specified by:
    `getEncoding` in interface `javax.xml.stream.XMLStreamReader`

### getLocalName

    public java.lang.String getLocalName()

  Specified by:
    `getLocalName` in interface `javax.xml.stream.XMLStreamReader`

### getNamespaceURI

    public java.lang.String getNamespaceURI()

  Specified by:
    `getNamespaceURI` in interface `javax.xml.stream.XMLStreamReader`

### getPIData

    public java.lang.String getPIData()

  Specified by:
    `getPIData` in interface `javax.xml.stream.XMLStreamReader`

### getPITarget

    public java.lang.String getPITarget()

  Specified by:
    `getPITarget` in interface `javax.xml.stream.XMLStreamReader`

### getPrefix

    public java.lang.String getPrefix()

  Specified by:
    `getPrefix` in interface `javax.xml.stream.XMLStreamReader`

### getVersion

    public java.lang.String getVersion()

  Specified by:
    `getVersion` in interface `javax.xml.stream.XMLStreamReader`

### getNamespacePrefix

    public java.lang.String getNamespacePrefix(int i)

  Specified by:
    `getNamespacePrefix` in interface `javax.xml.stream.XMLStreamReader`

### getNamespaceURI

    public java.lang.String getNamespaceURI(int i)

  Specified by:
    `getNamespaceURI` in interface `javax.xml.stream.XMLStreamReader`

### getNamespaceContext

    public javax.xml.namespace.NamespaceContext getNamespaceContext()

  Specified by:
    `getNamespaceContext` in interface `javax.xml.stream.XMLStreamReader`

### getName

    public javax.xml.namespace.QName getName()

  Specified by:
    `getName` in interface `javax.xml.stream.XMLStreamReader`

### getLocation

    public javax.xml.stream.Location getLocation()

  Specified by:
    `getLocation` in interface `javax.xml.stream.XMLStreamReader`

### getProperty

    public java.lang.Object getProperty(java.lang.String s)
                                 throws java.lang.IllegalArgumentException

  Specified by:
    `getProperty` in interface `javax.xml.stream.XMLStreamReader`
  Throws:
    `java.lang.IllegalArgumentException`

### require

    public void require(int event,
                        java.lang.String uri,
                        java.lang.String local)
                 throws javax.xml.stream.XMLStreamException

  Specified by:
    `require` in interface `javax.xml.stream.XMLStreamReader`
  Throws:
    `javax.xml.stream.XMLStreamException`

### getNamespaceURI

    public java.lang.String getNamespaceURI(java.lang.String s)

  Specified by:
    `getNamespaceURI` in interface `javax.xml.stream.XMLStreamReader`

Copyright (c) Saxonica Limited. All rights reserved.