Class SimpleSAXParser

java.lang.Object
org.eclipse.rdf4j.common.xml.SimpleSAXParser

public class SimpleSAXParser extends Object
An XML parser that generates "simple" SAX-like events from a limited subset of XML documents. The SimpleSAXParser can parse simple XML documents; it doesn't support processing instructions or elements that contain both sub-element and character data; character data is only supported in the "leaves" of the XML element tree.

Example:

Parsing the following XML:

<?xml version='1.0' encoding='UTF-8'?>
<xml-doc>
  <foo a="1" b="2&amp;3"/>
  <bar>Hello World!</bar>
</xml-doc>

will result in the following method calls to the SimpleSAXListener:

startDocument()
startTag("xml-doc", emptyMap, "")

startTag("foo", a_b_Map, "")
endTag("foo")

startTag("bar", emptyMap, "Hello World!")
endTag("bar")

endTag("xml-doc")
endDocument()
  • Constructor Details

    • SimpleSAXParser

      public SimpleSAXParser(XMLReader xmlReader)
      Creates a new SimpleSAXParser that will use the supplied XMLReader for parsing the XML. One must set a SimpleSAXListener on this object before calling one of the parse() methods.
      Parameters:
      xmlReader - The XMLReader to use for parsing.
      See Also:
    • SimpleSAXParser

      public SimpleSAXParser() throws SAXException
      Creates a new SimpleSAXParser that will try to create a new XMLReader using info.aduna.xml.XMLReaderFactory for parsing the XML. One must set a SimpleSAXListener on this object before calling one of the parse() methods.
      Throws:
      SAXException - If the SimpleSAXParser was unable to create an XMLReader.
      See Also:
  • Method Details

    • setListener

      public void setListener(SimpleSAXListener listener)
      Sets the (new) listener that should receive any events from this parser. This listener will replace any previously set listener.
      Parameters:
      listener - The (new) listener for events from this parser.
    • getListener

      public SimpleSAXListener getListener()
      Gets the listener that currently will receive any events from this parser.
      Returns:
      The listener for events from this parser.
    • getLocator

      public Locator getLocator()
    • setPreserveWhitespace

      public void setPreserveWhitespace(boolean preserveWhitespace)
      Sets whether leading and trailing whitespace characters in text elements should be preserved. Such whitespace characters are discarded by default.
    • isPreserveWhitespace

      public boolean isPreserveWhitespace()
      Checks whether leading and trailing whitespace characters in text elements are preserved. Defaults to false.
    • parse

      public void parse(File file) throws SAXException, IOException
      Parses the content of the supplied File as XML.
      Parameters:
      file - The file containing the XML to parse.
      Throws:
      SAXException
      IOException
    • parse

      public void parse(InputStream in) throws SAXException, IOException
      Parses the content of the supplied InputStream as XML.
      Parameters:
      in - An InputStream containing XML data.
      Throws:
      SAXException
      IOException
    • parse

      public void parse(Reader reader) throws SAXException, IOException
      Parses the content of the supplied Reader as XML.
      Parameters:
      reader - A Reader containing XML data.
      Throws:
      SAXException
      IOException
    • parse

      public void parse(InputSource inputSource) throws SAXException, IOException
      Parses the content of the supplied InputSource as XML.
      Parameters:
      inputSource - An InputSource containing XML data.
      Throws:
      SAXException
      IOException