1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project// LexicalHandler.java - optional handler for lexical parse events.
2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project// http://www.saxproject.org
3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project// Public Domain: no warranty.
4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project// $Id: LexicalHandler.java,v 1.5 2002/01/30 21:00:44 dbrownell Exp $
5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpackage org.xml.sax.ext;
7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.xml.sax.SAXException;
9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/**
11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * SAX2 extension handler for lexical events.
12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * <blockquote>
14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * <em>This module, both source code and documentation, is in the
15adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Public Domain, and comes with <strong>NO WARRANTY</strong>.</em>
16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * See <a href='http://www.saxproject.org'>http://www.saxproject.org</a>
17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * for further information.
18adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * </blockquote>
19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * <p>This is an optional extension handler for SAX2 to provide
21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * lexical information about an XML document, such as comments
22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * and CDATA section boundaries.
23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * XML readers are not required to recognize this handler, and it
24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * is not part of core-only SAX2 distributions.</p>
25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * <p>The events in the lexical handler apply to the entire document,
27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * not just to the document element, and all lexical handler events
28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * must appear between the content handler's startDocument and
29adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * endDocument events.</p>
30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * <p>To set the LexicalHandler for an XML reader, use the
32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * {@link org.xml.sax.XMLReader#setProperty setProperty} method
33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * with the property name
34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * <code>http://xml.org/sax/properties/lexical-handler</code>
35adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * and an object implementing this interface (or null) as the value.
36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * If the reader does not report lexical events, it will throw a
37adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * {@link org.xml.sax.SAXNotRecognizedException SAXNotRecognizedException}
38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * when you attempt to register the handler.</p>
39adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @since SAX 2.0 (extensions 1.0)
41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @author David Megginson
42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @version 2.0.1 (sax2r2)
43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic interface LexicalHandler
45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project{
46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Report the start of DTD declarations, if any.
49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>This method is intended to report the beginning of the
51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * DOCTYPE declaration; if the document has no DOCTYPE declaration,
52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * this method will not be invoked.</p>
53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
54f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     * <p>All declarations reported through
55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * {@link org.xml.sax.DTDHandler DTDHandler} or
56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * {@link org.xml.sax.ext.DeclHandler DeclHandler} events must appear
57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * between the startDTD and {@link #endDTD endDTD} events.
58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Declarations are assumed to belong to the internal DTD subset
59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * unless they appear between {@link #startEntity startEntity}
60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * and {@link #endEntity endEntity} events.  Comments and
61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * processing instructions from the DTD should also be reported
62f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     * between the startDTD and endDTD events, in their original
63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * order of (logical) occurrence; they are not required to
64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * appear in their correct locations relative to DTDHandler
65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * or DeclHandler events, however.</p>
66adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
67adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>Note that the start/endDTD events will appear within
68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * the start/endDocument events from ContentHandler and
69f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     * before the first
70adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * {@link org.xml.sax.ContentHandler#startElement startElement}
71adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * event.</p>
72adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
73adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @param name The document type name.
74adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @param publicId The declared public identifier for the
75adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *        external DTD subset, or null if none was declared.
76adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @param systemId The declared system identifier for the
77adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *        external DTD subset, or null if none was declared.
78adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *        (Note that this is not resolved against the document
79adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *        base URI.)
80adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @exception SAXException The application may raise an
81adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *            exception.
82adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @see #endDTD
83adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @see #startEntity
84adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
85adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public abstract void startDTD (String name, String publicId,
86adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project                   String systemId)
87adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    throws SAXException;
88adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
89adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
90adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
91adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Report the end of DTD declarations.
92adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
93adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>This method is intended to report the end of the
94adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * DOCTYPE declaration; if the document has no DOCTYPE declaration,
95adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * this method will not be invoked.</p>
96adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
97adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @exception SAXException The application may raise an exception.
98adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @see #startDTD
99adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
100adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public abstract void endDTD ()
101adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    throws SAXException;
102adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
103adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
104adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
105adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Report the beginning of some internal and external XML entities.
106adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
107adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>The reporting of parameter entities (including
108adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * the external DTD subset) is optional, and SAX2 drivers that
109adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * report LexicalHandler events may not implement it; you can use the
110adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <code
111adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * >http://xml.org/sax/features/lexical-handler/parameter-entities</code>
112adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * feature to query or control the reporting of parameter entities.</p>
113adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
114adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>General entities are reported with their regular names,
115f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     * parameter entities have '%' prepended to their names, and
116adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * the external DTD subset has the pseudo-entity name "[dtd]".</p>
117adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
118f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     * <p>When a SAX2 driver is providing these events, all other
119f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     * events must be properly nested within start/end entity
120f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     * events.  There is no additional requirement that events from
121adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * {@link org.xml.sax.ext.DeclHandler DeclHandler} or
122adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * {@link org.xml.sax.DTDHandler DTDHandler} be properly ordered.</p>
123adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
124adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>Note that skipped entities will be reported through the
125adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * {@link org.xml.sax.ContentHandler#skippedEntity skippedEntity}
126adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * event, which is part of the ContentHandler interface.</p>
127adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
128adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>Because of the streaming event model that SAX uses, some
129f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     * entity boundaries cannot be reported under any
130adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * circumstances:</p>
131adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
132adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <ul>
133adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <li>general entities within attribute values</li>
134adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <li>parameter entities within declarations</li>
135adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * </ul>
136adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
137adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>These will be silently expanded, with no indication of where
138adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * the original entity boundaries were.</p>
139adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
140adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>Note also that the boundaries of character references (which
141adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * are not really entities anyway) are not reported.</p>
142adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
143adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>All start/endEntity events must be properly nested.
144adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
145adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @param name The name of the entity.  If it is a parameter
146adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *        entity, the name will begin with '%', and if it is the
147adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *        external DTD subset, it will be "[dtd]".
148adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @exception SAXException The application may raise an exception.
149adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @see #endEntity
150adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @see org.xml.sax.ext.DeclHandler#internalEntityDecl
151f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     * @see org.xml.sax.ext.DeclHandler#externalEntityDecl
152adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
153adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public abstract void startEntity (String name)
154adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    throws SAXException;
155adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
156adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
157adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
158adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Report the end of an entity.
159adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
160adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @param name The name of the entity that is ending.
161adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @exception SAXException The application may raise an exception.
162adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @see #startEntity
163adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
164adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public abstract void endEntity (String name)
165adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    throws SAXException;
166adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
167adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
168adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
169adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Report the start of a CDATA section.
170adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
171adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>The contents of the CDATA section will be reported through
172adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * the regular {@link org.xml.sax.ContentHandler#characters
173adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * characters} event; this event is intended only to report
174adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * the boundary.</p>
175adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
176adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @exception SAXException The application may raise an exception.
177adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @see #endCDATA
178adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
179adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public abstract void startCDATA ()
180adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    throws SAXException;
181adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
182adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
183adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
184adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Report the end of a CDATA section.
185adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
186adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @exception SAXException The application may raise an exception.
187adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @see #startCDATA
188adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
189adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public abstract void endCDATA ()
190adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    throws SAXException;
191adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
192adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
193adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
194adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Report an XML comment anywhere in the document.
195adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
196adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * <p>This callback will be used for comments inside or outside the
197adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * document element, including comments in the external DTD
198adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * subset (if read).  Comments in the DTD must be properly
199adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * nested inside start/endDTD and start/endEntity events (if
200adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * used).</p>
201adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *
202adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @param ch An array holding the characters in the comment.
203adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @param start The starting position in the array.
204adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @param length The number of characters to use from the array.
205adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @exception SAXException The application may raise an exception.
206adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
207adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public abstract void comment (char ch[], int start, int length)
208adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    throws SAXException;
209adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
210adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project}
211adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
212adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project// end of LexicalHandler.java
213