01: /*
02: * Copyright (c) 1999 World Wide Web Consortium
03: * (Massachusetts Institute of Technology, Institut National de Recherche
04: * en Informatique et en Automatique, Keio University).
05: * All Rights Reserved. http://www.w3.org/Consortium/Legal/
06: *
07: * The original version of this interface comes from SAX :
08: * http://www.megginson.com/SAX/
09: *
10: * $Id$
11: */
12: package org.w3c.css.sac;
13:
14: /**
15: * Interface for associating a CSS event with a document location.
16: *
17: * <p>If a SAX parser provides location information to the SAX
18: * application, it does so by implementing this interface and then
19: * passing an instance to the application using the document
20: * handler's setDocumentLocator method. The application can use the
21: * object to obtain the location of any other document handler event
22: * in the CSS source document.</p>
23: *
24: * <p>Note that the results returned by the object will be valid only
25: * during the scope of each document handler method: the application
26: * will receive unpredictable results if it attempts to use the
27: * locator at any other time.</p>
28: *
29: * <p>CSS parsers are not required to supply a locator, but they are
30: * very strong encouraged to do so. If the parser supplies a
31: * locator, it must do so before reporting any other document events.
32: * If no locator has been set by the time the application receives
33: * the startDocument event, the application should assume that a
34: * locator is not available.</p>
35: *
36: * @version $Revision$
37: * @author Philippe Le Hegaret
38: */
39: public interface Locator {
40:
41: /**
42: * Return the URI for the current document event.
43: *
44: * <p>The parser must resolve the URI fully before passing it to the
45: * application.</p>
46: *
47: * @return A string containing the URI, or null
48: * if none is available.
49: */
50: public String getURI();
51:
52: /**
53: * Return the line number where the current document event ends.
54: * Note that this is the line position of the first character
55: * after the text associated with the document event.
56: * @return The line number, or -1 if none is available.
57: * @see #getColumnNumber
58: */
59: public int getLineNumber();
60:
61: /**
62: * Return the column number where the current document event ends.
63: * Note that this is the column number of the first
64: * character after the text associated with the document
65: * event. The first column in a line is position 1.
66: * @return The column number, or -1 if none is available.
67: * @see #getLineNumber
68: */
69: public int getColumnNumber();
70: }
|