diff options
Diffstat (limited to 'parser/xml/nsISAXLocator.idl')
-rw-r--r-- | parser/xml/nsISAXLocator.idl | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/parser/xml/nsISAXLocator.idl b/parser/xml/nsISAXLocator.idl new file mode 100644 index 0000000000..a5808313f5 --- /dev/null +++ b/parser/xml/nsISAXLocator.idl @@ -0,0 +1,89 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsISupports.idl" + +/** + * Interface for associating a SAX event with a document location. + * + * Note that the results returned by the object will be valid only + * during the scope of each callback method: the application will + * receive unpredictable results if it attempts to use the locator at + * any other time, or after parsing completes. + */ +[scriptable, uuid(7a307c6c-6cc9-11da-be43-001422106990)] +interface nsISAXLocator: nsISupports { + + /** + * Return the column number where the current document event ends. + * + * Warning: The return value from the method is intended only as an + * approximation for the sake of diagnostics; it is not intended to + * provide sufficient information to edit the character content of + * the original XML document. For example, when lines contain + * combining character sequences, wide characters, surrogate pairs, + * or bi-directional text, the value may not correspond to the + * column in a text editor's display. + * + * The return value is an approximation of the column number in the + * document entity or external parsed entity where the markup + * triggering the event appears. + * + * If possible, the SAX driver should provide the line position of + * the first character after the text associated with the document + * event. The first column in each line is column 1. + * + * @return The column number, or -1 if none is available. + */ + readonly attribute long columnNumber; + + /** + * Return the line number where the current document event ends. + * Lines are delimited by line ends, which are defined in the XML + * specification. + * + * Warning: The return value from the method is intended only as an + * approximation for the sake of diagnostics; it is not intended to + * provide sufficient information to edit the character content of + * the original XML document. In some cases, these "line" numbers + * match what would be displayed as columns, and in others they may + * not match the source text due to internal entity expansion. + * + * The return value is an approximation of the line number in the + * document entity or external parsed entity where the markup + * triggering the event appears. + * + * If possible, the SAX driver should provide the line position of + * the first character after the text associated with the document + * event. The first line is line 1. + * + * @return The line number, or -1 if none is available. + */ + readonly attribute long lineNumber; + + /** + * Return the public identifier for the current document event. + * + * The return value is the public identifier of the document entity + * or of the external parsed entity in which the markup triggering + * the event appears. + * + * @return A string containing the public identifier, or + * null if none is available. + */ + readonly attribute AString publicId; + + /** + * Return the system identifier for the current document event. + * + * The return value is the system identifier of the document entity + * or of the external parsed entity in which the markup triggering + * the event appears. + * + * @return A string containing the system identifier, or null + * if none is available. + */ + readonly attribute AString systemId; +}; |