public class XmlSlurper
extends org.xml.sax.helpers.DefaultHandler
 def rootNode = new XmlSlurper().parseText(
    '<root><one a1="uno!"/><two>Some text!</two></root>' )
 assert rootNode.name() == 'root'
 assert rootNode.one[0].@a1 == 'uno!'
 assert rootNode.two.text() == 'Some text!'
 rootNode.children().each { assert it.name() in ['one','two'] }
 
 Note that in some cases, a 'selector' expression may not resolve to a single node. For example:
 def rootNode = new XmlSlurper().parseText(
    '''<root>
         <a>one!</a>
         <a>two!</a>
       </root>''' )
 assert rootNode.a.size() == 2
 rootNode.a.each { assert it.text() in ['one!','two!'] }
 GPathResult| Constructor and Description | 
|---|
| XmlSlurper()Creates a non-validating and namespace-aware  XmlSlurperwhich does not allow DOCTYPE declarations in documents. | 
| XmlSlurper(boolean validating,
          boolean namespaceAware)Creates a  XmlSlurperwhich does not allow DOCTYPE declarations in documents. | 
| XmlSlurper(boolean validating,
          boolean namespaceAware,
          boolean allowDocTypeDeclaration)Creates a  XmlSlurper. | 
| XmlSlurper(javax.xml.parsers.SAXParser parser) | 
| XmlSlurper(org.xml.sax.XMLReader reader) | 
| Modifier and Type | Method and Description | 
|---|---|
| void | characters(char[] ch,
          int start,
          int length) | 
| void | endDocument() | 
| void | endElement(java.lang.String namespaceURI,
          java.lang.String localName,
          java.lang.String qName) | 
| GPathResult | getDocument() | 
| org.xml.sax.DTDHandler | getDTDHandler() | 
| org.xml.sax.EntityResolver | getEntityResolver() | 
| org.xml.sax.ErrorHandler | getErrorHandler() | 
| boolean | getFeature(java.lang.String uri) | 
| java.lang.Object | getProperty(java.lang.String uri) | 
| void | ignorableWhitespace(char[] buffer,
                   int start,
                   int len) | 
| boolean | isKeepIgnorableWhitespace() | 
| GPathResult | parse(java.io.File file)Parses the content of the given file as XML turning it into a GPathResult object | 
| GPathResult | parse(org.xml.sax.InputSource input)Parse the content of the specified input source into a GPathResult object | 
| GPathResult | parse(java.io.InputStream input)Parse the content of the specified input stream into an GPathResult Object. | 
| GPathResult | parse(java.io.Reader in)Parse the content of the specified reader into a GPathResult Object. | 
| GPathResult | parse(java.lang.String uri)Parse the content of the specified URI into a GPathResult Object | 
| GPathResult | parseText(java.lang.String text)A helper method to parse the given text as XML | 
| void | setDTDHandler(org.xml.sax.DTDHandler dtdHandler) | 
| void | setEntityBaseUrl(java.net.URL base)Resolves entities against using the supplied URL as the base for relative URLs | 
| void | setEntityResolver(org.xml.sax.EntityResolver entityResolver) | 
| void | setErrorHandler(org.xml.sax.ErrorHandler errorHandler) | 
| void | setFeature(java.lang.String uri,
          boolean value) | 
| void | setKeepIgnorableWhitespace(boolean keepIgnorableWhitespace) | 
| void | setKeepWhitespace(boolean keepWhitespace)Deprecated. 
 use setKeepIgnorableWhitespace | 
| void | setProperty(java.lang.String uri,
           java.lang.Object value) | 
| void | startDocument() | 
| void | startElement(java.lang.String namespaceURI,
            java.lang.String localName,
            java.lang.String qName,
            org.xml.sax.Attributes atts) | 
| void | startPrefixMapping(java.lang.String tag,
                  java.lang.String uri) | 
public XmlSlurper()
           throws javax.xml.parsers.ParserConfigurationException,
                  org.xml.sax.SAXException
XmlSlurper which does not allow DOCTYPE declarations in documents.javax.xml.parsers.ParserConfigurationException - if no parser which satisfies the requested configuration can be created.org.xml.sax.SAXException - for SAX errors.public XmlSlurper(boolean validating,
                  boolean namespaceAware)
           throws javax.xml.parsers.ParserConfigurationException,
                  org.xml.sax.SAXException
XmlSlurper which does not allow DOCTYPE declarations in documents.validating - true if the parser should validate documents as they are parsed; false otherwise.namespaceAware - true if the parser should provide support for XML namespaces; false otherwise.javax.xml.parsers.ParserConfigurationException - if no parser which satisfies the requested configuration can be created.org.xml.sax.SAXException - for SAX errors.public XmlSlurper(boolean validating,
                  boolean namespaceAware,
                  boolean allowDocTypeDeclaration)
           throws javax.xml.parsers.ParserConfigurationException,
                  org.xml.sax.SAXException
XmlSlurper.validating - true if the parser should validate documents as they are parsed; false otherwise.namespaceAware - true if the parser should provide support for XML namespaces; false otherwise.allowDocTypeDeclaration - true if the parser should provide support for DOCTYPE declarations; false otherwise.javax.xml.parsers.ParserConfigurationException - if no parser which satisfies the requested configuration can be created.org.xml.sax.SAXException - for SAX errors.public XmlSlurper(org.xml.sax.XMLReader reader)
public XmlSlurper(javax.xml.parsers.SAXParser parser)
           throws org.xml.sax.SAXException
org.xml.sax.SAXException@Deprecated public void setKeepWhitespace(boolean keepWhitespace)
keepWhitespace - If true then whitespace before elements is kept.
                       The default is to discard the whitespace.public void setKeepIgnorableWhitespace(boolean keepIgnorableWhitespace)
keepIgnorableWhitespace - If true then ignorable whitespace (i.e. whitespace before elements) is kept.
                       The default is to discard the whitespace.public boolean isKeepIgnorableWhitespace()
public GPathResult getDocument()
public GPathResult parse(org.xml.sax.InputSource input) throws java.io.IOException, org.xml.sax.SAXException
input - the InputSource to parseorg.xml.sax.SAXException - Any SAX exception, possibly wrapping another exception.java.io.IOException - An IO exception from the parser, possibly from a byte stream
         or character stream supplied by the application.public GPathResult parse(java.io.File file) throws java.io.IOException, org.xml.sax.SAXException
file - the File to parseorg.xml.sax.SAXException - Any SAX exception, possibly wrapping another exception.java.io.IOException - An IO exception from the parser, possibly from a byte stream
         or character stream supplied by the application.public GPathResult parse(java.io.InputStream input) throws java.io.IOException, org.xml.sax.SAXException
input - the InputStream to parseorg.xml.sax.SAXException - Any SAX exception, possibly wrapping another exception.java.io.IOException - An IO exception from the parser, possibly from a byte stream
         or character stream supplied by the application.public GPathResult parse(java.io.Reader in) throws java.io.IOException, org.xml.sax.SAXException
in - the Reader to parseorg.xml.sax.SAXException - Any SAX exception, possibly wrapping another exception.java.io.IOException - An IO exception from the parser, possibly from a byte stream
         or character stream supplied by the application.public GPathResult parse(java.lang.String uri) throws java.io.IOException, org.xml.sax.SAXException
uri - a String containing the URI to parseorg.xml.sax.SAXException - Any SAX exception, possibly wrapping another exception.java.io.IOException - An IO exception from the parser, possibly from a byte stream
         or character stream supplied by the application.public GPathResult parseText(java.lang.String text) throws java.io.IOException, org.xml.sax.SAXException
text - a String containing XML to parseorg.xml.sax.SAXException - Any SAX exception, possibly wrapping another exception.java.io.IOException - An IO exception from the parser, possibly from a byte stream
         or character stream supplied by the application.public org.xml.sax.DTDHandler getDTDHandler()
public org.xml.sax.EntityResolver getEntityResolver()
public org.xml.sax.ErrorHandler getErrorHandler()
public boolean getFeature(java.lang.String uri)
                   throws org.xml.sax.SAXNotRecognizedException,
                          org.xml.sax.SAXNotSupportedException
org.xml.sax.SAXNotRecognizedExceptionorg.xml.sax.SAXNotSupportedExceptionpublic java.lang.Object getProperty(java.lang.String uri)
                             throws org.xml.sax.SAXNotRecognizedException,
                                    org.xml.sax.SAXNotSupportedException
org.xml.sax.SAXNotRecognizedExceptionorg.xml.sax.SAXNotSupportedExceptionpublic void setDTDHandler(org.xml.sax.DTDHandler dtdHandler)
public void setEntityResolver(org.xml.sax.EntityResolver entityResolver)
public void setEntityBaseUrl(java.net.URL base)
base - The URL used to resolve relative URLspublic void setErrorHandler(org.xml.sax.ErrorHandler errorHandler)
public void setFeature(java.lang.String uri,
                       boolean value)
                throws org.xml.sax.SAXNotRecognizedException,
                       org.xml.sax.SAXNotSupportedException
org.xml.sax.SAXNotRecognizedExceptionorg.xml.sax.SAXNotSupportedExceptionpublic void setProperty(java.lang.String uri,
                        java.lang.Object value)
                 throws org.xml.sax.SAXNotRecognizedException,
                        org.xml.sax.SAXNotSupportedException
org.xml.sax.SAXNotRecognizedExceptionorg.xml.sax.SAXNotSupportedExceptionpublic void startDocument()
                   throws org.xml.sax.SAXException
startDocument in interface org.xml.sax.ContentHandlerstartDocument in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXExceptionpublic void startPrefixMapping(java.lang.String tag,
                               java.lang.String uri)
                        throws org.xml.sax.SAXException
startPrefixMapping in interface org.xml.sax.ContentHandlerstartPrefixMapping in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXExceptionpublic void startElement(java.lang.String namespaceURI,
                         java.lang.String localName,
                         java.lang.String qName,
                         org.xml.sax.Attributes atts)
                  throws org.xml.sax.SAXException
startElement in interface org.xml.sax.ContentHandlerstartElement in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXExceptionpublic void ignorableWhitespace(char[] buffer,
                                int start,
                                int len)
                         throws org.xml.sax.SAXException
ignorableWhitespace in interface org.xml.sax.ContentHandlerignorableWhitespace in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXExceptionpublic void characters(char[] ch,
                       int start,
                       int length)
                throws org.xml.sax.SAXException
characters in interface org.xml.sax.ContentHandlercharacters in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXExceptionpublic void endElement(java.lang.String namespaceURI,
                       java.lang.String localName,
                       java.lang.String qName)
                throws org.xml.sax.SAXException
endElement in interface org.xml.sax.ContentHandlerendElement in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXExceptionpublic void endDocument()
                 throws org.xml.sax.SAXException
endDocument in interface org.xml.sax.ContentHandlerendDocument in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXException