All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.xml.sax.ext.Locator2 Maven / Gradle / Ivy

Go to download

Xerces2 is the next generation of high performance, fully compliant XML parsers in the Apache Xerces family. This new version of Xerces introduces the Xerces Native Interface (XNI), a complete framework for building parser components and configurations that is extremely modular and easy to program. The Apache Xerces2 parser is the reference implementation of XNI but other parser components, configurations, and parsers can be written using the Xerces Native Interface. For complete design and implementation documents, refer to the XNI Manual. Xerces2 is a fully conforming XML Schema 1.0 processor. A partial experimental implementation of the XML Schema 1.1 Structures and Datatypes Working Drafts (December 2009) and an experimental implementation of the XML Schema Definition Language (XSD): Component Designators (SCD) Candidate Recommendation (January 2010) are provided for evaluation. For more information, refer to the XML Schema page. Xerces2 also provides a complete implementation of the Document Object Model Level 3 Core and Load/Save W3C Recommendations and provides a complete implementation of the XML Inclusions (XInclude) W3C Recommendation. It also provides support for OASIS XML Catalogs v1.1. Xerces2 is able to parse documents written according to the XML 1.1 Recommendation, except that it does not yet provide an option to enable normalization checking as described in section 2.13 of this specification. It also handles namespaces according to the XML Namespaces 1.1 Recommendation, and will correctly serialize XML 1.1 documents if the DOM level 3 load/save APIs are in use.

The newest version!
// Locator2.java - extended Locator
// http://www.saxproject.org
// Public Domain: no warranty.
// $Id: Locator2.java 226236 2005-06-17 03:10:33Z mrglavas $

package org.xml.sax.ext;

import org.xml.sax.Locator;


/**
 * SAX2 extension to augment the entity information provided 
 * though a {@link Locator}.
 * If an implementation supports this extension, the Locator
 * provided in {@link org.xml.sax.ContentHandler#setDocumentLocator
 * ContentHandler.setDocumentLocator() } will implement this
 * interface, and the
 * http://xml.org/sax/features/use-locator2 feature
 * flag will have the value true.
 *
 * 
* This module, both source code and documentation, is in the * Public Domain, and comes with NO WARRANTY. *
* *

XMLReader implementations are not required to support this * information, and it is not part of core-only SAX2 distributions.

* * @since SAX 2.0 (extensions 1.1 alpha) * @author David Brownell * @version TBS */ public interface Locator2 extends Locator { /** * Returns the version of XML used for the entity. This will * normally be the identifier from the current entity's * <?xml version='...' ...?> declaration, * or be defaulted by the parser. * * @return Identifier for the XML version being used to interpret * the entity's text, or null if that information is not yet * available in the current parsing state. */ public String getXMLVersion (); /** * Returns the name of the character encoding for the entity. * If the encoding was declared externally (for example, in a MIME * Content-Type header), that will be the name returned. Else if there * was an <?xml ...encoding='...'?> declaration at * the start of the document, that encoding name will be returned. * Otherwise the encoding will been inferred (normally to be UTF-8, or * some UTF-16 variant), and that inferred name will be returned. * *

When an {@link org.xml.sax.InputSource InputSource} is used * to provide an entity's character stream, this method returns the * encoding provided in that input stream. * *

Note that some recent W3C specifications require that text * in some encodings be normalized, using Unicode Normalization * Form C, before processing. Such normalization must be performed * by applications, and would normally be triggered based on the * value returned by this method. * *

Encoding names may be those used by the underlying JVM, * and comparisons should be case-insensitive. * * @return Name of the character encoding being used to interpret * the entity's text, or null if this was not provided for a * character stream passed through an InputSource or is otherwise * not yet available in the current parsing state. */ public String getEncoding (); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy