## org.apache.xml.utils
Class StylesheetPIHandler

    java.lang.Object
      |
      +--org.xml.sax.helpers.DefaultHandler
            |
            +--org.apache.xml.utils.StylesheetPIHandler

public class StylesheetPIHandler
extends DefaultHandler

Search for the xml-stylesheet processing instructions in an XML document.

See Also:
  Associating Style Sheets with XML documents, Version 1.0

Constructor Summary
`StylesheetPIHandler(java.lang.String baseID, java.lang.String media, java.lang.String title, java.lang.String charset)` Construct a StylesheetPIHandler instance that will search for xml-stylesheet PIs based on the given criteria.

Method Summary
`Source` `getAssociatedStylesheet()` Return the last stylesheet found that match the constraints.
`java.lang.String` `getBaseId()`
`URIResolver` `getURIResolver()` Get the object that will be used to resolve URIs in href in xml-stylesheet processing instruction.
`void` `processingInstruction(java.lang.String target, java.lang.String data)` Handle the xml-stylesheet processing instruction.
`void` `setBaseId(java.lang.String baseId)` Added additional getter and setter methods for the Base Id to fix bugzilla bug 24187
`void` `setURIResolver(URIResolver resolver)` Get the object that will be used to resolve URIs in href in xml-stylesheet processing instruction.
`void` `startElement(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName, Attributes atts)` The spec notes that "The xml-stylesheet processing instruction is allowed only in the prolog of an XML document.", so, at least for right now, I'm going to go ahead an throw a TransformerException in order to stop the parse.

Methods inherited from class org.xml.sax.helpers.DefaultHandler
`characters, endDocument, endElement, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning`

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

Constructor Detail

### StylesheetPIHandler

    public StylesheetPIHandler(java.lang.String baseID,
                               java.lang.String media,
                               java.lang.String title,
                               java.lang.String charset)

  Construct a StylesheetPIHandler instance that will search for xml-stylesheet PIs based on the given criteria.
  Parameters:
    `baseID` - The base ID of the XML document, needed to resolve relative IDs.
    `media` - The desired media criteria.
    `title` - The desired title criteria.
    `charset` - The desired character set criteria.

Method Detail

### setURIResolver

    public void setURIResolver(URIResolver resolver)

  Get the object that will be used to resolve URIs in href in xml-stylesheet processing instruction.
  Parameters:
    `resolver` - An object that implements the URIResolver interface, or null.

### getURIResolver

    public URIResolver getURIResolver()

  Get the object that will be used to resolve URIs in href in xml-stylesheet processing instruction.
  Returns:
    The URIResolver that was set with setURIResolver.

### getAssociatedStylesheet

    public Source getAssociatedStylesheet()

  Return the last stylesheet found that match the constraints.
  Returns:
    Source object that references the last stylesheet reference that matches the constraints.

### processingInstruction

    public void processingInstruction(java.lang.String target,
                                      java.lang.String data)
                               throws SAXException

  Handle the xml-stylesheet processing instruction.
  Parameters:
    `target` - The processing instruction target.
    `data` - The processing instruction data, or null if none is supplied.
  Throws:
    SAXException - Any SAX exception, possibly wrapping another exception.
  Overrides:
    processingInstruction in class DefaultHandler
  See Also:
    `ContentHandler.processingInstruction(java.lang.String, java.lang.String)`, Associating Style Sheets with XML documents, Version 1.0

### startElement

    public void startElement(java.lang.String namespaceURI,
                             java.lang.String localName,
                             java.lang.String qName,
                             Attributes atts)
                      throws SAXException

  The spec notes that "The xml-stylesheet processing instruction is allowed only in the prolog of an XML document.", so, at least for right now, I'm going to go ahead an throw a TransformerException in order to stop the parse.
  Parameters:
    `namespaceURI` - The Namespace URI, or an empty string.
    `localName` - The local name (without prefix), or empty string if not namespace processing.
    `qName` - The qualified name (with prefix).
    `atts` - The specified or defaulted attributes.
  Throws:
    StopParseException - since there can be no valid xml-stylesheet processing instructions past the first element.
  Overrides:
    startElement in class DefaultHandler

### setBaseId

    public void setBaseId(java.lang.String baseId)

  Added additional getter and setter methods for the Base Id to fix bugzilla bug 24187

### getBaseId

    public java.lang.String getBaseId()

Copyright © 2006 Apache XML Project. All Rights Reserved.