gnu.xml.aelfred2
Class XmlReader
- XMLReader
This SAX2 parser optionally layers a validator over the Ælfred2
SAX2 parser. While this will not evaluate every XML validity constraint,
it does support all the validity constraints that are of any real utility
outside the strict SGML-compatible world. See the documentation for the
SAXDriver class for information about the SAX2 features and properties
that are supported, and documentation for the ValidationConsumer for
information about what validity constraints may not be supported.
(Ælfred2 tests some of those, even in non-validating mode, to
achieve better conformance.)
Note that due to its internal construction, you can't change most
handlers until parse() returns. This diverges slightly from SAX, which
expects later binding to be supported. Early binding involves less
runtime overhead, which is an issue for event pipelines as used inside
this parser. Rather than relying on the parser to handle late binding
to your own handlers, do it yourself.
XmlReader() - Constructs a SAX Parser.
|
XmlReader(boolean invalidIsFatal) - Constructs a SAX Parser, optionally treating validity errors
as if they were fatal errors.
|
ContentHandler | getContentHandler() - SAX2: Returns the object used to report the logical
content of an XML document.
|
DTDHandler | getDTDHandler() - SAX2: Returns the object used to process declarations related
to notations and unparsed entities.
|
EntityResolver | getEntityResolver() - SAX2: Returns the object used when resolving external
entities during parsing (both general and parameter entities).
|
ErrorHandler | getErrorHandler() - SAX2: Returns the object used to receive callbacks for XML
errors of all levels (fatal, nonfatal, warning); this is never null;
|
boolean | getFeature(String featureId) - SAX2: Tells whether this parser supports the specified feature.
|
Object | getProperty(String propertyId) - SAX2: Returns the specified property.
|
void | parse(InputSource source) - SAX1: Underlying API to parse an XML document, used
directly when no URI is available.
|
void | parse(String systemId) - SAX1: Preferred API to parse an XML document, using a
system identifier (URI).
|
void | setContentHandler(ContentHandler handler) - SAX2: Assigns the object used to report the logical
content of an XML document.
|
void | setDTDHandler(DTDHandler handler) - SAX1 Assigns DTD handler
|
void | setEntityResolver(EntityResolver handler) - SAX1 Assigns parser's entity resolver
|
void | setErrorHandler(ErrorHandler handler) - SAX1 Assigns error handler
|
void | setFeature(String featureId, boolean state) - SAX2: Sets the state of features supported in this parser.
|
void | setLocale(Locale locale) - SAX1: Sets the locale used for diagnostics; currently,
only locales using the English language are supported.
|
void | setProperty(String propertyId, Object value) - SAX2: Assigns the specified property.
|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
XmlReader
public XmlReader()
Constructs a SAX Parser.
XmlReader
public XmlReader(boolean invalidIsFatal)
Constructs a SAX Parser, optionally treating validity errors
as if they were fatal errors.
getContentHandler
public ContentHandler getContentHandler()
SAX2: Returns the object used to report the logical
content of an XML document.
getDTDHandler
public DTDHandler getDTDHandler()
SAX2: Returns the object used to process declarations related
to notations and unparsed entities.
getEntityResolver
public EntityResolver getEntityResolver()
SAX2: Returns the object used when resolving external
entities during parsing (both general and parameter entities).
getErrorHandler
public ErrorHandler getErrorHandler()
SAX2: Returns the object used to receive callbacks for XML
errors of all levels (fatal, nonfatal, warning); this is never null;
getFeature
public boolean getFeature(String featureId)
throws SAXNotRecognizedException,
SAXNotSupportedException
SAX2: Tells whether this parser supports the specified feature.
At this time, this directly parallels the underlying SAXDriver,
except that validation is optionally supported.
getProperty
public Object getProperty(String propertyId)
throws SAXNotRecognizedException
SAX2: Returns the specified property.
parse
public void parse(InputSource source)
throws SAXException,
IOException
SAX1: Underlying API to parse an XML document, used
directly when no URI is available. When this is invoked,
and the parser is set to validate, some features will be
automatically reset to appropriate values: for reporting
namespace prefixes, and incorporating external entities.
source
- The XML input source.
IllegalStateException
- if called mid-parseIOException
- IOExceptions are normally through through
the parser if there are problems reading the source document.
parse
public void parse(String systemId)
throws SAXException,
IOException
SAX1: Preferred API to parse an XML document, using a
system identifier (URI).
setContentHandler
public void setContentHandler(ContentHandler handler)
SAX2: Assigns the object used to report the logical
content of an XML document.
setDTDHandler
public void setDTDHandler(DTDHandler handler)
SAX1 Assigns DTD handler
setEntityResolver
public void setEntityResolver(EntityResolver handler)
SAX1 Assigns parser's entity resolver
setErrorHandler
public void setErrorHandler(ErrorHandler handler)
SAX1 Assigns error handler
setFeature
public void setFeature(String featureId,
boolean state)
throws SAXNotRecognizedException,
SAXNotSupportedException
SAX2: Sets the state of features supported in this parser.
Note that this parser requires reporting of namespace prefixes when
validating.
setLocale
public void setLocale(Locale locale)
throws SAXException
SAX1: Sets the locale used for diagnostics; currently,
only locales using the English language are supported.
locale
- The locale for which diagnostics will be generated
setProperty
public void setProperty(String propertyId,
Object value)
throws SAXNotRecognizedException,
SAXNotSupportedException
SAX2: Assigns the specified property.
XmlReader.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version.