You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-cvs@xml.apache.org by mr...@apache.org on 2006/11/20 03:54:40 UTC
svn commit: r477010 [1/2] - in
/xml/commons/trunk/java/external/src/org/w3c/css: ./ sac/ sac/helpers/
Author: mrglavas
Date: Sun Nov 19 18:54:38 2006
New Revision: 477010
URL: http://svn.apache.org/viewvc?view=rev&rev=477010
Log:
Merging the SAC bindings into the trunk from the external-extended branch.
Added:
xml/commons/trunk/java/external/src/org/w3c/css/
xml/commons/trunk/java/external/src/org/w3c/css/sac/
xml/commons/trunk/java/external/src/org/w3c/css/sac/AttributeCondition.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSException.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSParseException.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/CharacterDataSelector.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/CombinatorCondition.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/Condition.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionFactory.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionalSelector.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/ContentCondition.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/DescendantSelector.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/DocumentHandler.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/ElementSelector.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/ErrorHandler.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/InputSource.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/LangCondition.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/LexicalUnit.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/Locator.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeCondition.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeSelector.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/Parser.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/PositionalCondition.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/ProcessingInstructionSelector.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/SACMediaList.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/Selector.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/SelectorFactory.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/SelectorList.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/SiblingSelector.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/SimpleSelector.java (with props)
xml/commons/trunk/java/external/src/org/w3c/css/sac/helpers/
xml/commons/trunk/java/external/src/org/w3c/css/sac/helpers/ParserFactory.java (with props)
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/AttributeCondition.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/AttributeCondition.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/AttributeCondition.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/AttributeCondition.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,68 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Condition#SAC_ATTRIBUTE_CONDITION
+ * @see Condition#SAC_ONE_OF_ATTRIBUTE_CONDITION
+ * @see Condition#SAC_BEGIN_HYPHEN_ATTRIBUTE_CONDITION
+ * @see Condition#SAC_ID_CONDITION
+ * @see Condition#SAC_CLASS_CONDITION
+ * @see Condition#SAC_PSEUDO_CLASS_CONDITION
+ */
+public interface AttributeCondition extends Condition {
+
+ /**
+ * Returns the
+ * <a href="http://www.w3.org/TR/REC-xml-names/#dt-NSName">namespace
+ * URI</a> of this attribute condition.
+ * <p><code>NULL</code> if :
+ * <ul>
+ * <li>this attribute condition can match any namespace.
+ * <li>this attribute is an id attribute.
+ * </ul>
+ */
+ public String getNamespaceURI();
+
+ /**
+ * Returns the
+ * <a href="http://www.w3.org/TR/REC-xml-names/#NT-LocalPart">local part</a>
+ * of the
+ * <a href="http://www.w3.org/TR/REC-xml-names/#ns-qualnames">qualified
+ * name</a> of this attribute.
+ * <p><code>NULL</code> if :
+ * <ul>
+ * <li><p>this attribute condition can match any attribute.
+ * <li><p>this attribute is a class attribute.
+ * <li><p>this attribute is an id attribute.
+ * <li><p>this attribute is a pseudo-class attribute.
+ * </ul>
+ */
+ public String getLocalName();
+
+ /**
+ * Returns <code>true</code> if the attribute must have an explicit value
+ * in the original document, <code>false</code> otherwise.
+ */
+ public boolean getSpecified();
+
+ /**
+ * Returns the value of the attribute.
+ * If this attribute is a class or a pseudo class attribute, you'll get
+ * the class name (or psedo class name) without the '.' or ':'.
+ */
+ public String getValue();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/AttributeCondition.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/AttributeCondition.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSException.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSException.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSException.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSException.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,142 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * The original version of this interface comes from SAX :
+ * http://www.megginson.com/SAX/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ */
+public class CSSException extends RuntimeException {
+
+ protected String s;
+
+ /**
+ * this error is unspecified.
+ */
+ public static final short SAC_UNSPECIFIED_ERR = 0;
+
+ /**
+ * If the operation is not supported
+ */
+ public static final short SAC_NOT_SUPPORTED_ERR = 1;
+
+ /**
+ * If an invalid or illegal string is specified
+ */
+ public static final short SAC_SYNTAX_ERR = 2;
+
+ /*
+ * Default message for unspecified error.
+ */
+ protected static final String S_SAC_UNSPECIFIED_ERR
+ = "unknown error";
+ /*
+ * Default message for not supported error.
+ */
+ protected static final String S_SAC_NOT_SUPPORTED_ERR
+ = "not supported";
+ /*
+ * Default message for syntax error.
+ */
+ protected static final String S_SAC_SYNTAX_ERR
+ = "syntax error";
+
+ /**
+ * The internal exception.
+ */
+ protected Exception e;
+
+ protected short code;
+
+ /**
+ * Creates a new CSSException
+ */
+ public CSSException() {
+ }
+
+ /**
+ * Creates a new CSSException
+ */
+ public CSSException(String s) {
+ this.code = SAC_UNSPECIFIED_ERR;
+ this.s = s;
+ }
+
+ /**
+ * Creates a new CSSException with an embeded exception.
+ * @param a the embeded exception.
+ */
+ public CSSException(Exception e) {
+ this.code = SAC_UNSPECIFIED_ERR;
+ this.e = e;
+ }
+
+ /**
+ * Creates a new CSSException with a specific code.
+ * @param a the embeded exception.
+ */
+ public CSSException(short code) {
+ this.code = code;
+ }
+
+ /**
+ * Creates a new CSSException with an embeded exception and a specified
+ * message.
+ * @param code the specified code.
+ * @param e the embeded exception.
+ */
+ public CSSException(short code, String s, Exception e) {
+ this.code = code;
+ this.s = s;
+ this.e = e;
+ }
+
+ /**
+ * Returns the detail message of this throwable object.
+ *
+ * @return the detail message of this Throwable, or null if this Throwable
+ * does not have a detail message.
+ */
+ public String getMessage() {
+ if (s != null) {
+ return s;
+ } else if (e != null) {
+ return e.getMessage();
+ } else {
+ switch (code) {
+ case SAC_UNSPECIFIED_ERR:
+ return S_SAC_UNSPECIFIED_ERR;
+ case SAC_NOT_SUPPORTED_ERR:
+ return S_SAC_NOT_SUPPORTED_ERR;
+ case SAC_SYNTAX_ERR:
+ return S_SAC_SYNTAX_ERR;
+ default:
+ return null;
+ }
+ }
+ }
+
+ /**
+ * returns the error code for this exception.
+ */
+ public short getCode() {
+ return code;
+ }
+
+ /**
+ * Returns the internal exception if any, null otherwise.
+ */
+ public Exception getException() {
+ return e;
+ }
+
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSException.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSException.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSParseException.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSParseException.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSParseException.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSParseException.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,173 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * The original version of this interface comes from SAX :
+ * http://www.megginson.com/SAX/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * Encapsulate a CSS parse error or warning.
+ *
+ * <p>This exception will include information for locating the error
+ * in the original CSS document. Note that although the application
+ * will receive a CSSParseException as the argument to the handlers
+ * in the ErrorHandler interface, the application is not actually
+ * required to throw the exception; instead, it can simply read the
+ * information in it and take a different action.</p>
+ *
+ * <p>Since this exception is a subclass of CSSException, it
+ * inherits the ability to wrap another exception.</p>
+ *
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ */
+public class CSSParseException extends CSSException {
+
+ private String uri;
+ private int lineNumber;
+ private int columnNumber;
+
+ /**
+ * Create a new CSSParseException from a message and a Locator.
+ *
+ * <p>This constructor is especially useful when an application is
+ * creating its own exception from within a DocumentHandler
+ * callback.</p>
+ *
+ * @param message The error or warning message.
+ * @param locator The locator object for the error or warning.
+ * @see Locator
+ * @see Parser#setLocale
+ */
+ public CSSParseException(String message, Locator locator) {
+ super(message);
+ this.code = SAC_SYNTAX_ERR;
+ this.uri = locator.getURI();
+ this.lineNumber = locator.getLineNumber();
+ this.columnNumber = locator.getColumnNumber();
+ }
+
+
+ /**
+
+ * Wrap an existing exception in a CSSParseException.
+ *
+ * <p>This constructor is especially useful when an application is
+ * creating its own exception from within a DocumentHandler
+ * callback, and needs to wrap an existing exception that is not a
+ * subclass of CSSException.</p>
+ *
+ * @param message The error or warning message, or null to
+ * use the message from the embedded exception.
+ * @param locator The locator object for the error or warning.
+ * @param e Any exception
+ * @see Locator
+ * @see Parser#setLocale
+ */
+ public CSSParseException(String message, Locator locator,
+ Exception e) {
+ super(SAC_SYNTAX_ERR, message, e);
+ this.uri = locator.getURI();
+ this.lineNumber = locator.getLineNumber();
+ this.columnNumber = locator.getColumnNumber();
+ }
+
+
+ /**
+ * Create a new CSSParseException.
+ *
+ * <p>This constructor is most useful for parser writers.</p>
+ *
+ * <p>the parser must resolve the URI fully before creating the exception.</p>
+ *
+ * @param message The error or warning message.
+ * @param uri The URI of the document that generated the error or warning.
+ * @param lineNumber The line number of the end of the text that
+ * caused the error or warning.
+ * @param columnNumber The column number of the end of the text that
+ * cause the error or warning.
+ * @see Parser#setLocale
+ */
+ public CSSParseException(String message, String uri,
+ int lineNumber, int columnNumber) {
+ super(message);
+ this.code = SAC_SYNTAX_ERR;
+ this.uri = uri;
+ this.lineNumber = lineNumber;
+ this.columnNumber = columnNumber;
+ }
+
+ /**
+ * Create a new CSSParseException with an embedded exception.
+ *
+ * <p>This constructor is most useful for parser writers who
+ * need to wrap an exception that is not a subclass of
+ * CSSException.</p>
+ *
+ * <p>The parser must resolve the URI fully before creating the
+ * exception.</p>
+ *
+ * @param message The error or warning message, or null to use
+ * the message from the embedded exception.
+ * @param uri The URI of the document that generated
+ * the error or warning.
+ * @param lineNumber The line number of the end of the text that
+ * caused the error or warning.
+ * @param columnNumber The column number of the end of the text that
+ * cause the error or warning.
+ * @param e Another exception to embed in this one.
+ * @see Parser#setLocale
+ */
+ public CSSParseException(String message, String uri,
+ int lineNumber, int columnNumber, Exception e) {
+ super(SAC_SYNTAX_ERR, message, e);
+ this.uri = uri;
+ this.lineNumber = lineNumber;
+ this.columnNumber = columnNumber;
+ }
+
+ /**
+ * Get the URI of the document where the exception occurred.
+ *
+ * <p>The URI will be resolved fully.</p>
+ *
+ * @return A string containing the URI, or null
+ * if none is available.
+ * @see Locator#getURI
+ */
+ public String getURI() {
+ return this.uri;
+ }
+
+
+ /**
+ * The line number of the end of the text where the exception occurred.
+ *
+ * @return An integer representing the line number, or -1
+ * if none is available.
+ * @see Locator#getLineNumber
+ */
+ public int getLineNumber() {
+ return this.lineNumber;
+ }
+
+
+ /**
+ * The column number of the end of the text where the exception occurred.
+ *
+ * <p>The first column in a line is position 1.</p>
+ *
+ * @return An integer representing the column number, or -1
+ * if none is available.
+ * @see Locator#getColumnNumber
+ */
+ public int getColumnNumber() {
+ return this.columnNumber;
+ }
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSParseException.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/CSSParseException.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/CharacterDataSelector.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/CharacterDataSelector.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/CharacterDataSelector.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/CharacterDataSelector.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,24 @@
+/*
+ * (c) COPYRIGHT 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Selector#SAC_TEXT_NODE_SELECTOR
+ * @see Selector#SAC_CDATA_SECTION_NODE_SELECTOR
+ * @see Selector#SAC_COMMENT_NODE_SELECTOR
+ */
+public interface CharacterDataSelector extends SimpleSelector {
+
+ /**
+ * Returns the character data.
+ */
+ public String getData();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/CharacterDataSelector.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/CharacterDataSelector.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/CombinatorCondition.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/CombinatorCondition.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/CombinatorCondition.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/CombinatorCondition.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,28 @@
+/*
+ * (c) COPYRIGHT 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Condition#SAC_AND_CONDITION
+ * @see Condition#SAC_OR_CONDITION
+ */
+public interface CombinatorCondition extends Condition {
+
+ /**
+ * Returns the first condition.
+ */
+ public Condition getFirstCondition();
+
+ /**
+ * Returns the second condition.
+ */
+ public Condition getSecondCondition();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/CombinatorCondition.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/CombinatorCondition.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/Condition.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/Condition.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/Condition.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/Condition.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,140 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ */
+public interface Condition {
+
+ /**
+ * This condition checks exactly two conditions.
+ * example:
+ * <pre class="example">
+ * .part1:lang(fr)
+ * </pre>
+ * @see CombinatorCondition
+ */
+ public static final short SAC_AND_CONDITION = 0;
+
+ /**
+ * This condition checks one of two conditions.
+ * @see CombinatorCondition
+ */
+ public static final short SAC_OR_CONDITION = 1;
+
+ /**
+ * This condition checks that a condition can't be applied to a node.
+ * @see NegativeCondition
+ */
+ public static final short SAC_NEGATIVE_CONDITION = 2;
+
+ /**
+ * This condition checks a specified position.
+ * example:
+ * <pre class="example">
+ * :first-child
+ * </pre>
+ * @see PositionalCondition
+ */
+ public static final short SAC_POSITIONAL_CONDITION = 3;
+
+ /**
+ * This condition checks an attribute.
+ * example:
+ * <pre class="example">
+ * [simple]
+ * [restart="never"]
+ * </pre>
+ * @see AttributeCondition
+ */
+ public static final short SAC_ATTRIBUTE_CONDITION = 4;
+ /**
+ * This condition checks an id attribute.
+ * example:
+ * <pre class="example">
+ * #myId
+ * </pre>
+ * @see AttributeCondition
+ */
+ public static final short SAC_ID_CONDITION = 5;
+ /**
+ * This condition checks the language of the node.
+ * example:
+ * <pre class="example">
+ * :lang(fr)
+ * </pre>
+ * @see LangCondition
+ */
+ public static final short SAC_LANG_CONDITION = 6;
+ /**
+ * This condition checks for a value in a space-separated values in a
+ * specified attribute
+ * example:
+ * <pre class="example">
+ * [values~="10"]
+ * </pre>
+ * @see AttributeCondition
+ */
+ public static final short SAC_ONE_OF_ATTRIBUTE_CONDITION = 7;
+ /**
+ * This condition checks if the value is in a hypen-separated list of values
+ * in a specified attribute.
+ * example:
+ * <pre class="example">
+ * [languages|="fr"]
+ * </pre>
+ * @see AttributeCondition
+ */
+ public static final short SAC_BEGIN_HYPHEN_ATTRIBUTE_CONDITION = 8;
+ /**
+ * This condition checks for a specified class.
+ * example:
+ * <pre class="example">
+ * .example
+ * </pre>
+ * @see AttributeCondition
+ */
+ public static final short SAC_CLASS_CONDITION = 9;
+ /**
+ * This condition checks for the link pseudo class.
+ * example:
+ * <pre class="example">
+ * :link
+ * :visited
+ * :hover
+ * </pre>
+ * @see AttributeCondition
+ */
+ public static final short SAC_PSEUDO_CLASS_CONDITION = 10;
+ /**
+ * This condition checks if a node is the only one in the node list.
+ */
+ public static final short SAC_ONLY_CHILD_CONDITION = 11;
+ /**
+ * This condition checks if a node is the only one of his type.
+ */
+ public static final short SAC_ONLY_TYPE_CONDITION = 12;
+ /**
+ * This condition checks the content of a node.
+ * @see ContentCondition
+ */
+ public static final short SAC_CONTENT_CONDITION = 13;
+
+ /**
+ * An integer indicating the type of <code>Condition</code>.
+ */
+ public short getConditionType();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/Condition.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/Condition.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionFactory.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionFactory.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionFactory.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionFactory.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,197 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ */
+public interface ConditionFactory {
+
+ /**
+ * Creates an and condition
+ *
+ * @param first the first condition
+ * @param second the second condition
+ * @return A combinator condition
+ * @exception CSSException if this exception is not supported.
+ */
+ CombinatorCondition createAndCondition(Condition first, Condition second)
+ throws CSSException;
+
+ /**
+ * Creates an or condition
+ *
+ * @param first the first condition
+ * @param second the second condition
+ * @return A combinator condition
+ * @exception CSSException if this exception is not supported.
+ */
+ CombinatorCondition createOrCondition(Condition first, Condition second)
+ throws CSSException;
+
+ /**
+ * Creates a negative condition
+ *
+ * @param condition the condition
+ * @return A negative condition
+ * @exception CSSException if this exception is not supported.
+ */
+ NegativeCondition createNegativeCondition(Condition condition)
+ throws CSSException;
+
+ /**
+ * Creates a positional condition
+ *
+ * @param position the position of the node in the list.
+ * @param typeNode <code>true</code> if the list should contain
+ * only nodes of the same type (element, text node, ...).
+ * @param type <code>true</code> true if the list should contain
+ * only nodes of the same node (for element, same localName
+ * and same namespaceURI).
+ * @return A positional condition
+ * @exception CSSException if this exception is not supported.
+ */
+ PositionalCondition createPositionalCondition(int position,
+ boolean typeNode,
+ boolean type)
+ throws CSSException;
+
+ /**
+ * Creates an attribute condition
+ *
+ * @param localName the localName of the attribute
+ * @param namespaceURI the namespace URI of the attribute
+ * @param specified <code>true</code> if the attribute must be specified
+ * in the document.
+ * @param value the value of this attribute.
+ * @return An attribute condition
+ * @exception CSSException if this exception is not supported.
+ */
+ AttributeCondition createAttributeCondition(String localName,
+ String namespaceURI,
+ boolean specified,
+ String value)
+ throws CSSException;
+
+ /**
+ * Creates an id condition
+ *
+ * @param value the value of the id.
+ * @return An Id condition
+ * @exception CSSException if this exception is not supported.
+ */
+ AttributeCondition createIdCondition(String value)
+ throws CSSException;
+
+ /**
+ * Creates a lang condition
+ *
+ * @param value the value of the language.
+ * @return A lang condition
+ * @exception CSSException if this exception is not supported.
+ */
+ LangCondition createLangCondition(String lang)
+ throws CSSException;
+
+ /**
+ * Creates a "one of" attribute condition
+ *
+ * @param localName the localName of the attribute
+ * @param namespaceURI the namespace URI of the attribute
+ * @param specified <code>true</code> if the attribute must be specified
+ * in the document.
+ * @param value the value of this attribute.
+ * @return A "one of" attribute condition
+ * @exception CSSException if this exception is not supported.
+ */
+ AttributeCondition createOneOfAttributeCondition(String localName,
+ String namespaceURI,
+ boolean specified,
+ String value)
+ throws CSSException;
+
+ /**
+ * Creates a "begin hyphen" attribute condition
+ *
+ * @param localName the localName of the attribute
+ * @param namespaceURI the namespace URI of the attribute
+ * @param specified <code>true</code> if the attribute must be specified
+ * in the document.
+ * @param value the value of this attribute.
+ * @return A "begin hyphen" attribute condition
+ * @exception CSSException if this exception is not supported.
+ */
+ AttributeCondition createBeginHyphenAttributeCondition(String localName,
+ String namespaceURI,
+ boolean specified,
+ String value)
+ throws CSSException;
+
+ /**
+ * Creates a class condition
+ *
+ * @param localName the localName of the attribute
+ * @param namespaceURI the namespace URI of the attribute
+ * @param specified <code>true</code> if the attribute must be specified
+ * in the document.
+ * @param value the name of the class.
+ * @return A class condition
+ * @exception CSSException if this exception is not supported.
+ */
+ AttributeCondition createClassCondition(String namespaceURI,
+ String value)
+ throws CSSException;
+
+ /**
+ * Creates a pseudo class condition
+ *
+ * @param namespaceURI the namespace URI of the attribute
+ * @param value the name of the pseudo class
+ * @return A pseudo class condition
+ * @exception CSSException if this exception is not supported.
+ */
+ AttributeCondition createPseudoClassCondition(String namespaceURI,
+ String value)
+ throws CSSException;
+
+ /**
+ * Creates a "only one" child condition
+ *
+ * @return A "only one" child condition
+ * @exception CSSException if this exception is not supported.
+ */
+ Condition createOnlyChildCondition() throws CSSException;
+
+
+ /**
+ * Creates a "only one" type condition
+ *
+ * @return A "only one" type condition
+ * @exception CSSException if this exception is not supported.
+ */
+ Condition createOnlyTypeCondition() throws CSSException;
+
+ /**
+ * Creates a content condition
+ *
+ * @param data the data in the content
+ * @return A content condition
+ * @exception CSSException if this exception is not supported.
+ */
+ ContentCondition createContentCondition(String data)
+ throws CSSException;
+
+
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionFactory.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionFactory.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionalSelector.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionalSelector.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionalSelector.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionalSelector.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,28 @@
+/*
+ * (c) COPYRIGHT 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Selector#SAC_CONDITIONAL_SELECTOR
+ */
+public interface ConditionalSelector extends SimpleSelector {
+
+ /**
+ * Returns the simple selector.
+ * <p>The simple selector can't be a <code>ConditionalSelector</code>.</p>
+ */
+ public SimpleSelector getSimpleSelector();
+
+ /**
+ * Returns the condition to be applied on the simple selector.
+ */
+ public Condition getCondition();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionalSelector.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ConditionalSelector.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/ContentCondition.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/ContentCondition.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/ContentCondition.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/ContentCondition.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,21 @@
+/*
+ * (c) COPYRIGHT 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Condition#SAC_CONTENT_CONDITION
+ */
+public interface ContentCondition extends Condition {
+ /**
+ * Returns the content.
+ */
+ public String getData();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ContentCondition.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ContentCondition.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/DescendantSelector.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/DescendantSelector.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/DescendantSelector.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/DescendantSelector.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,28 @@
+/*
+ * (c) COPYRIGHT 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Selector#SAC_DESCENDANT_SELECTOR
+ * @see Selector#SAC_CHILD_SELECTOR
+ */
+public interface DescendantSelector extends Selector {
+
+ /**
+ * Returns the parent selector.
+ */
+ public Selector getAncestorSelector();
+
+ /*
+ * Returns the simple selector.
+ */
+ public SimpleSelector getSimpleSelector();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/DescendantSelector.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/DescendantSelector.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/DocumentHandler.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/DocumentHandler.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/DocumentHandler.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/DocumentHandler.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,191 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * This is the main interface that most CSS applications implement: if the
+ * application needs to be informed of basic parsing events, it implements this
+ * interface and registers an instance with the CSS parser using the
+ * setCSSHandler method.
+ *
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ */
+public interface DocumentHandler {
+
+ /**
+ * Receive notification of the beginning of a style sheet.
+ *
+ * The CSS parser will invoke this method only once, before any other
+ * methods in this interface.
+ *
+ * @param uri The URI of the style sheet. @@TODO can be NULL ! (inline style sheet)
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void startDocument(InputSource source)
+ throws CSSException;
+
+ /**
+ * Receive notification of the end of a document.
+ *
+ * The CSS parser will invoke this method only once, and it will be the
+ * last method invoked during the parse. The parser shall not invoke this
+ * method until it has either abandoned parsing (because of an
+ * unrecoverable error) or reached the end of input.
+ *
+ * @param uri The URI of the style sheet.
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void endDocument(InputSource source) throws CSSException;
+
+ /**
+ * Receive notification of a comment.
+ * If the comment appears in a declaration (e.g. color: /* comment * / blue;),
+ * the parser notifies the comment before the declaration.
+ *
+ * @param text The comment.
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void comment(String text) throws CSSException;
+
+ /**
+ * Receive notification of an unknown rule t-rule not supported by this
+ * parser.
+ *
+ * @param at-rule The complete ignored at-rule.
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void ignorableAtRule(String atRule) throws CSSException;
+
+ /**
+ * Receive notification of an unknown rule t-rule not supported by this
+ * parser.
+ *
+ * @param prefix <code>null</code> if this is the default namespace
+ * @param uri The URI for this namespace.
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void namespaceDeclaration(String prefix, String uri)
+ throws CSSException;
+
+ /**
+ * Receive notification of a import statement in the style sheet.
+ *
+ * @param uri The URI of the imported style sheet.
+ * @param media The intended destination media for style information.
+ * @param defaultNamepaceURI The default namespace URI for the imported
+ * style sheet.
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void importStyle(String uri, SACMediaList media,
+ String defaultNamespaceURI)
+ throws CSSException;
+
+ /**
+ * Receive notification of the beginning of a media statement.
+ *
+ * The Parser will invoke this method at the beginning of every media
+ * statement in the style sheet. there will be a corresponding endMedia()
+ * event for every startElement() event.
+ *
+ * @param media The intended destination media for style information.
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void startMedia(SACMediaList media) throws CSSException;
+
+ /**
+ * Receive notification of the end of a media statement.
+ *
+ * @param media The intended destination media for style information.
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void endMedia(SACMediaList media) throws CSSException;
+
+ /**
+ * Receive notification of the beginning of a page statement.
+ *
+ * The Parser will invoke this method at the beginning of every page
+ * statement in the style sheet. there will be a corresponding endPage()
+ * event for every startPage() event.
+ *
+ * @param name the name of the page (if any, null otherwise)
+ * @param pseudo_page the pseudo page (if any, null otherwise)
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void startPage(String name, String pseudo_page) throws CSSException;
+
+ /**
+ * Receive notification of the end of a media statement.
+ *
+ * @param media The intended destination medium for style information.
+ * @param pseudo_page the pseudo page (if any, null otherwise)
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void endPage(String name, String pseudo_page) throws CSSException;
+
+ /**
+ * Receive notification of the beginning of a font face statement.
+ *
+ * The Parser will invoke this method at the beginning of every font face
+ * statement in the style sheet. there will be a corresponding endFontFace()
+ * event for every startFontFace() event.
+ *
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void startFontFace() throws CSSException;
+
+ /**
+ * Receive notification of the end of a font face statement.
+ *
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void endFontFace() throws CSSException;
+
+ /**
+ * Receive notification of the beginning of a rule statement.
+ *
+ * @param selectors All intended selectors for all declarations.
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void startSelector(SelectorList selectors) throws CSSException;
+
+ /**
+ * Receive notification of the end of a rule statement.
+ *
+ * @param selectors All intended selectors for all declarations.
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void endSelector(SelectorList selectors) throws CSSException;
+
+ /**
+ * Receive notification of a declaration.
+ *
+ * @param name the name of the property.
+ * @param value the value of the property. All whitespace are stripped.
+ * @param important is this property important ?
+ * @exception CSSException Any CSS exception, possibly wrapping another
+ * exception.
+ */
+ public void property(String name, LexicalUnit value, boolean important)
+ throws CSSException;
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/DocumentHandler.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/DocumentHandler.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/ElementSelector.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/ElementSelector.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/ElementSelector.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/ElementSelector.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Selector#SAC_ELEMENT_NODE_SELECTOR
+ */
+public interface ElementSelector extends SimpleSelector {
+
+ /**
+ * Returns the
+ * <a href="http://www.w3.org/TR/REC-xml-names/#dt-NSName">namespace
+ * URI</a> of this element selector.
+ * <p><code>NULL</code> if this element selector can match any namespace.</p>
+ */
+ public String getNamespaceURI();
+
+ /**
+ * Returns the
+ * <a href="http://www.w3.org/TR/REC-xml-names/#NT-LocalPart">local part</a>
+ * of the
+ * <a href="http://www.w3.org/TR/REC-xml-names/#ns-qualnames">qualified
+ * name</a> of this element.
+ * <p><code>NULL</code> if this element selector can match any element.</p>
+ * </ul>
+ */
+ public String getLocalName();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ElementSelector.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ElementSelector.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/ErrorHandler.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/ErrorHandler.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/ErrorHandler.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/ErrorHandler.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,108 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * The original version of this interface comes from SAX :
+ * http://www.megginson.com/SAX/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * Basic interface for CSS error handlers.
+ *
+ * <p>If a CSS application needs to implement customized error
+ * handling, it must implement this interface and then register an
+ * instance with the CSS parser using the parser's setErrorHandler
+ * method. The parser will then report all errors and warnings
+ * through this interface.</p>
+ *
+ * <p> The parser shall use this interface instead of throwing an
+ * exception: it is up to the application whether to throw an
+ * exception for different types of errors and warnings. Note,
+ * however, that there is no requirement that the parser continue to
+ * provide useful information after a call to fatalError (in other
+ * words, a CSS driver class could catch an exception and report a
+ * fatalError).</p>
+ *
+ * <p>The HandlerBase class provides a default implementation of this
+ * interface, ignoring warnings and recoverable errors and throwing a
+ * SAXParseException for fatal errors. An application may extend
+ * that class rather than implementing the complete interface
+ * itself.</p>
+ *
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ */
+public interface ErrorHandler {
+
+
+ /**
+ * Receive notification of a warning.
+ *
+ * <p>CSS parsers will use this method to report conditions that
+ * are not errors or fatal errors as defined by the XML 1.0
+ * recommendation. The default behaviour is to take no action.</p>
+ *
+ * <p>The CSS parser must continue to provide normal parsing events
+ * after invoking this method: it should still be possible for the
+ * application to process the document through to the end.</p>
+ *
+ * @param exception The warning information encapsulated in a
+ * CSS parse exception.
+ * @exception CSSException Any CSS exception, possibly
+ * wrapping another exception.
+ * @see CSSParseException
+ */
+ public void warning(CSSParseException exception) throws CSSException;
+
+ /**
+ * Receive notification of a recoverable error.
+ *
+ * <p>This corresponds to the definition of "error" in section 1.2
+ * of the W3C XML 1.0 Recommendation. For example, a validating
+ * parser would use this callback to report the violation of a
+ * validity constraint. The default behaviour is to take no
+ * action.</p>
+ *
+ * <p>The CSS parser must continue to provide normal parsing events
+ * after invoking this method: it should still be possible for the
+ * application to process the document through to the end. If the
+ * application cannot do so, then the parser should report a fatal
+ * error even if the XML 1.0 recommendation does not require it to
+ * do so.</p>
+ *
+ * @param exception The error information encapsulated in a
+ * CSS parse exception.
+ * @exception CSSException Any CSS exception, possibly
+ * wrapping another exception.
+ * @see CSSParseException
+ */
+ public void error(CSSParseException exception) throws CSSException;
+
+ /**
+ * Receive notification of a non-recoverable error.
+ *
+ * <p>This corresponds to the definition of "fatal error" in
+ * section 1.2 of the W3C XML 1.0 Recommendation. For example, a
+ * parser would use this callback to report the violation of a
+ * well-formedness constraint.</p>
+ *
+ * <p>The application must assume that the document is unusable
+ * after the parser has invoked this method, and should continue
+ * (if at all) only for the sake of collecting addition error
+ * messages: in fact, CSS parsers are free to stop reporting any
+ * other events once this method has been invoked.</p>
+ *
+ * @param exception The error information encapsulated in a
+ * CSS parse exception.
+ * @exception CSSException Any CSS exception, possibly
+ * wrapping another exception.
+ * @see CSSParseException
+ */
+ public void fatalError(CSSParseException exception) throws CSSException;
+
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ErrorHandler.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/ErrorHandler.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/InputSource.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/InputSource.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/InputSource.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/InputSource.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,258 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * The original version of this interface comes from SAX :
+ * http://www.megginson.com/SAX/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+import java.io.InputStream;
+import java.io.Reader;
+
+/**
+ * A single input source for a CSS source.
+ *
+ * <p>This class allows a CSS application to encapsulate information about an
+ * input source in a single object, which may include a URI, a byte stream
+ * (possibly with a specified encoding), and/or a character stream.</p>
+ *
+ * <p>The CSS parser will use the InputSource object to determine how
+ * to read CSS input. If there is a character stream available, the
+ * parser will read that stream directly; if not, the parser will use
+ * a byte stream, if available; if neither a character stream nor a
+ * byte stream is available, the parser will attempt to open a URI
+ * connection to the resource identified by the URI.</p>
+ *
+ * <p>An InputSource object belongs to the application: the CSS parser
+ * shall never modify it in any way (it may modify a copy if
+ * necessary).</p>
+ *
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ */
+public class InputSource {
+
+ private String uri;
+ private InputStream byteStream;
+ private String encoding;
+ private Reader characterStream;
+ private String title;
+ private String media;
+
+ /**
+ * Zero-argument default constructor.
+ *
+ * @see #setURI
+ * @see #setByteStream
+ * @see #setCharacterStream
+ * @see #setEncoding
+ */
+ public InputSource() {
+ }
+
+ /**
+ * Create a new input source with a URI.
+ *
+ * <p>The URI must be full resolved.</p>
+ *
+ * @param uri The URI.
+ * @see #setURI
+ * @see #setByteStream
+ * @see #setEncoding
+ * @see #setCharacterStream
+ */
+ public InputSource(String uri) {
+ setURI(uri);
+ }
+
+ /**
+ * Create a new input source with a character stream.
+ *
+ * <p>Application writers may use setURI() to provide a base
+ * for resolving relative URIs, and setPublicId to include a
+ * public identifier.</p>
+ *
+ * <p>The character stream shall not include a byte order mark.</p>
+ *
+ * @see #setURI
+ * @see #setByteStream
+ * @see #setCharacterStream
+ */
+ public InputSource(Reader characterStream) {
+ setCharacterStream(characterStream);
+ }
+
+ /**
+ * Set the URI for this input source.
+ *
+ * <p>The URI is optional if there is a byte stream or a character stream,
+ * but it is still useful to provide one, since the application can use it
+ * to resolve relative URIs and can include it in error messages and
+ * warnings (the parser will attempt to open a connection to the URI only
+ * if there is no byte stream or character stream specified).</p>
+ *
+ * <p>If the application knows the character encoding of the
+ * object pointed to by the URI, it can register
+ * the encoding using the setEncoding method.</p>
+ *
+ * <p>The URI must be fully resolved.</p>
+ *
+ * @param uri The URI as a string.
+ * @see #setEncoding
+ * @see #getURI
+ * @see Locator#getURI
+ * @see CSSParseException#getURI
+ */
+ public void setURI(String uri) {
+ this.uri = uri;
+ }
+
+ /**
+ * Get the URI for this input source.
+ *
+ * <p>The getEncoding method will return the character encoding
+ * of the object pointed to, or null if unknown.</p>
+ *
+ * <p>The URI will be fully resolved.</p>
+ *
+ * @return The URI.
+ * @see #setURI
+ * @see #getEncoding
+ */
+ public String getURI() {
+ return uri;
+ }
+
+ /**
+ * Set the byte stream for this input source.
+ *
+ * <p>The SAX parser will ignore this if there is also a character
+ * stream specified, but it will use a byte stream in preference
+ * to opening a URI connection itself.</p>
+ *
+ * <p>If the application knows the character encoding of the
+ * byte stream, it should set it with the setEncoding method.</p>
+ *
+ * @param byteStream A byte stream containing an CSS document or
+ * other entity.
+ * @see #setEncoding
+ * @see #getByteStream
+ * @see #getEncoding
+ */
+ public void setByteStream(InputStream byteStream) {
+ this.byteStream = byteStream;
+ }
+
+ /**
+ * Get the byte stream for this input source.
+ *
+ * <p>The getEncoding method will return the character
+ * encoding for this byte stream, or null if unknown.</p>
+ *
+ * @return The byte stream, or null if none was supplied.
+ * @see #getEncoding
+ * @see #setByteStream
+ */
+ public InputStream getByteStream() {
+ return byteStream;
+ }
+
+ /**
+ * Set the character encoding, if known.
+ *
+ * <p>The encoding must be a string acceptable for an
+ * CHARSET encoding declaration (see section 4.4 of the CSS
+ * recommendation Level 2).</p>
+ *
+ * <p>This method has no effect when the application provides a
+ * character stream.</p>
+ *
+ * @param encoding A string describing the character encoding.
+ * @see #setURI
+ * @see #setByteStream
+ * @see #getEncoding
+ */
+ public void setEncoding(String encoding) {
+ this.encoding = encoding;
+ }
+
+ /**
+ * Get the character encoding for a byte stream or URI.
+ *
+ * @return The encoding, or null if none was supplied.
+ * @see #setByteStream
+ * @see #getURI
+ * @see #getByteStream
+ */
+ public String getEncoding() {
+ return encoding;
+ }
+
+ /**
+ * Set the character stream for this input source.
+ *
+ * <p>If there is a character stream specified, the SAX parser
+ * will ignore any byte stream and will not attempt to open
+ * a URI connection to the URI.</p>
+ *
+ * @param characterStream The character stream containing the
+ * CSS document or other entity.
+ * @see #getCharacterStream
+ */
+ public void setCharacterStream(Reader characterStream) {
+ this.characterStream = characterStream;
+ }
+
+ /**
+ * Get the character stream for this input source.
+ *
+ * @return The character stream, or null if none was supplied.
+ * @see #setCharacterStream
+ */
+ public Reader getCharacterStream() {
+ return characterStream;
+ }
+
+ /**
+ * Set the title for this input source.
+ * @param title The advisory title. See the title attribute definition
+ * for the <a href="http://www.w3.org/TR/REC-html40/struct/links.html#edef-LINK">LINK</A>
+ * element in HTML 4.0, and the title pseudo-attribute for the XML
+ * style sheet processing instruction.
+ */
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
+ /**
+ * Returns the title for this input source.
+ */
+ public String getTitle() {
+ return title;
+ }
+
+ /**
+ * Set the media for this input source.
+ * @param media A comma separated list with all media.
+ */
+ public void setMedia(String media) {
+ this.media = media;
+ }
+
+ /**
+ * Returns the media associated to the input source or <code>null</code>
+ * if media are currently unknown.
+ * @return the media associated to this input source.
+ */
+ public String getMedia() {
+ if (media == null) {
+ return "all";
+ }
+ return media;
+ }
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/InputSource.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/InputSource.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/LangCondition.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/LangCondition.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/LangCondition.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/LangCondition.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,21 @@
+/*
+ * (c) COPYRIGHT 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Condition#SAC_LANG_CONDITION
+ */
+public interface LangCondition extends Condition {
+ /**
+ * Returns the language
+ */
+ public String getLang();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/LangCondition.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/LangCondition.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/LexicalUnit.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/LexicalUnit.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/LexicalUnit.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/LexicalUnit.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,370 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * This is a lexical unit for CSS values.
+ * <p><b>Remarks</b>: Not all the following lexical units are supported (or
+ * will be supported) by CSS.
+ * <p>All examples are CSS2 compliant.
+ *
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ */
+public interface LexicalUnit {
+
+ /**
+ * ,
+ */
+ public static final short SAC_OPERATOR_COMMA = 0;
+ /**
+ * +
+ */
+ public static final short SAC_OPERATOR_PLUS = 1;
+ /**
+ * -
+ */
+ public static final short SAC_OPERATOR_MINUS = 2;
+ /**
+ * *
+ */
+ public static final short SAC_OPERATOR_MULTIPLY = 3;
+ /**
+ * /
+ */
+ public static final short SAC_OPERATOR_SLASH = 4;
+ /**
+ * %
+ */
+ public static final short SAC_OPERATOR_MOD = 5;
+ /**
+ * ^
+ */
+ public static final short SAC_OPERATOR_EXP = 6;
+ /**
+ * <
+ */
+ public static final short SAC_OPERATOR_LT = 7;
+ /**
+ * >
+ */
+ public static final short SAC_OPERATOR_GT = 8;
+ /**
+ * <=
+ */
+ public static final short SAC_OPERATOR_LE = 9;
+ /**
+ * >=
+ */
+ public static final short SAC_OPERATOR_GE = 10;
+ /**
+ * ~
+ */
+ public static final short SAC_OPERATOR_TILDE = 11;
+
+ /**
+ * identifier <code>inherit</code>.
+ */
+ public static final short SAC_INHERIT = 12;
+ /**
+ * Integers.
+ * @see #getIntegerValue
+ */
+ public static final short SAC_INTEGER = 13;
+ /**
+ * reals.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_REAL = 14;
+ /**
+ * Relative length<code>em</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_EM = 15;
+ /**
+ * Relative length<code>ex</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_EX = 16;
+ /**
+ * Relative length <code>px</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_PIXEL = 17;
+ /**
+ * Absolute length <code>in</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_INCH = 18;
+ /**
+ * Absolute length <code>cm</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_CENTIMETER = 19;
+ /**
+ * Absolute length <code>mm</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_MILLIMETER = 20;
+ /**
+ * Absolute length <code>pt</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_POINT = 21;
+ /**
+ * Absolute length <code>pc</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_PICA = 22;
+ /**
+ * Percentage.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_PERCENTAGE = 23;
+ /**
+ * URI: <code>uri(...)</code>.
+ * @see #getStringValue
+ */
+ public static final short SAC_URI = 24;
+ /**
+ * function <code>counter</code>.
+ * @see #getFunctionName
+ * @see #getParameters
+ */
+ public static final short SAC_COUNTER_FUNCTION = 25;
+ /**
+ * function <code>counters</code>.
+ * @see #getFunctionName
+ * @see #getParameters
+ */
+ public static final short SAC_COUNTERS_FUNCTION = 26;
+ /**
+ * RGB Colors.
+ * <code>rgb(0, 0, 0)</code> and <code>#000</code>
+ * @see #getFunctionName
+ * @see #getParameters
+ */
+ public static final short SAC_RGBCOLOR = 27;
+ /**
+ * Angle <code>deg</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_DEGREE = 28;
+ /**
+ * Angle <code>grad</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_GRADIAN = 29;
+ /**
+ * Angle <code>rad</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_RADIAN = 30;
+ /**
+ * Time <code>ms</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_MILLISECOND = 31;
+ /**
+ * Time <code>s</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_SECOND = 32;
+ /**
+ * Frequency <code>Hz</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_HERTZ = 33;
+ /**
+ * Frequency <code>kHz</code>.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_KILOHERTZ = 34;
+
+ /**
+ * any identifier except <code>inherit</code>.
+ * @see #getStringValue
+ */
+ public static final short SAC_IDENT = 35;
+ /**
+ * A string.
+ * @see #getStringValue
+ */
+ public static final short SAC_STRING_VALUE = 36;
+ /**
+ * Attribute: <code>attr(...)</code>.
+ * @see #getStringValue
+ */
+ public static final short SAC_ATTR = 37;
+ /**
+ * function <code>rect</code>.
+ * @see #getFunctionName
+ * @see #getParameters
+ */
+ public static final short SAC_RECT_FUNCTION = 38;
+ /**
+ * A unicode range. @@TO BE DEFINED
+ */
+ public static final short SAC_UNICODERANGE = 39;
+
+ /**
+ * sub expressions
+ * <code>(a)</code> <code>(a + b)</code> <code>(normal/none)</code>
+ * @see #getSubValues
+ */
+ public static final short SAC_SUB_EXPRESSION = 40;
+
+ /**
+ * unknown function.
+ * @see #getFunctionName
+ * @see #getParameters
+ */
+ public static final short SAC_FUNCTION = 41;
+ /**
+ * unknown dimension.
+ * @see #getFloatValue
+ * @see #getDimensionUnitText
+ */
+ public static final short SAC_DIMENSION = 42;
+
+ /**
+ * An integer indicating the type of <code>LexicalUnit</code>.
+ */
+ public short getLexicalUnitType();
+
+ /**
+ * Returns the next value or <code>null</code> if any.
+ */
+ public LexicalUnit getNextLexicalUnit();
+
+ /**
+ * Returns the previous value or <code>null</code> if any.
+ */
+ public LexicalUnit getPreviousLexicalUnit();
+
+ /**
+ * Returns the integer value.
+ * @see #SAC_INTEGER
+ */
+ public int getIntegerValue();
+
+
+ /**
+ * Returns the float value.
+ * <p>If the type of <code>LexicalUnit</code> is one of SAC_DEGREE,
+ * SAC_GRADIAN, SAC_RADIAN, SAC_MILLISECOND, SAC_SECOND, SAC_HERTZ
+ * or SAC_KILOHERTZ, the value can never be negative.</p>
+ *
+ * @see #SAC_REAL
+ * @see #SAC_DIMENSION
+ * @see #SAC_EM
+ * @see #SAC_EX
+ * @see #SAC_PIXEL
+ * @see #SAC_INCH
+ * @see #SAC_CENTIMETER
+ * @see #SAC_MILLIMETER
+ * @see #SAC_POINT
+ * @see #SAC_PICA
+ * @see #SAC_PERCENTAGE
+ * @see #SAC_DEGREE
+ * @see #SAC_GRADIAN
+ * @see #SAC_RADIAN
+ * @see #SAC_MILLISECOND
+ * @see #SAC_SECOND
+ * @see #SAC_HERTZ
+ * @see #SAC_KILOHERTZ
+ */
+ public float getFloatValue();
+
+ /**
+ * Returns the string representation of the unit.
+ * <p>if this lexical unit represents a float, the dimension is an empty
+ * string.</p>
+ * @see #SAC_REAL
+ * @see #SAC_DIMENSION
+ * @see #SAC_EM
+ * @see #SAC_EX
+ * @see #SAC_PIXEL
+ * @see #SAC_INCH
+ * @see #SAC_CENTIMETER
+ * @see #SAC_MILLIMETER
+ * @see #SAC_POINT
+ * @see #SAC_PICA
+ * @see #SAC_PERCENTAGE
+ * @see #SAC_DEGREE
+ * @see #SAC_GRADIAN
+ * @see #SAC_RADIAN
+ * @see #SAC_MILLISECOND
+ * @see #SAC_SECOND
+ * @see #SAC_HERTZ
+ * @see #SAC_KILOHERTZ
+ */
+ public String getDimensionUnitText();
+
+ /**
+ * Returns the name of the function.
+ * @see #SAC_COUNTER_FUNCTION
+ * @see #SAC_COUNTERS_FUNCTION
+ * @see #SAC_RECT_FUNCTION
+ * @see #SAC_FUNCTION
+ * @see #SAC_RGBCOLOR
+ */
+ public String getFunctionName();
+
+ /**
+ * The function parameters including operators (like the comma).
+ * <code>#000</code> is converted to <code>rgb(0, 0, 0)</code>
+ * can return <code>null</code> if <code>SAC_FUNCTION</code>.
+ * @see #SAC_COUNTER_FUNCTION
+ * @see #SAC_COUNTERS_FUNCTION
+ * @see #SAC_RECT_FUNCTION
+ * @see #SAC_FUNCTION
+ * @see #SAC_RGBCOLOR
+ */
+ public LexicalUnit getParameters();
+
+ /**
+ * Returns the string value.
+ * <p>If the type is <code>SAC_URI</code>, the return value doesn't contain
+ * <code>uri(....)</code> or quotes.
+ * <p>If the type is <code>SAC_ATTR</code>, the return value doesn't contain
+ * <code>attr(....)</code>.
+ *
+ * @see #SAC_URI
+ * @see #SAC_ATTR
+ * @see #SAC_IDENT
+ * @see #SAC_STRING_VALUE
+ * @see #SAC_UNICODERANGE @@TO BE DEFINED
+ */
+ public String getStringValue();
+
+ /**
+ * Returns a list of values inside the sub expression.
+ * @see #SAC_SUB_EXPRESSION
+ */
+ public LexicalUnit getSubValues();
+
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/LexicalUnit.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/LexicalUnit.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/Locator.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/Locator.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/Locator.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/Locator.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * The original version of this interface comes from SAX :
+ * http://www.megginson.com/SAX/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * Interface for associating a CSS event with a document location.
+ *
+ * <p>If a SAX parser provides location information to the SAX
+ * application, it does so by implementing this interface and then
+ * passing an instance to the application using the document
+ * handler's setDocumentLocator method. The application can use the
+ * object to obtain the location of any other document handler event
+ * in the CSS source document.</p>
+ *
+ * <p>Note that the results returned by the object will be valid only
+ * during the scope of each document handler method: the application
+ * will receive unpredictable results if it attempts to use the
+ * locator at any other time.</p>
+ *
+ * <p>CSS parsers are not required to supply a locator, but they are
+ * very strong encouraged to do so. If the parser supplies a
+ * locator, it must do so before reporting any other document events.
+ * If no locator has been set by the time the application receives
+ * the startDocument event, the application should assume that a
+ * locator is not available.</p>
+ *
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ */
+public interface Locator {
+
+ /**
+ * Return the URI for the current document event.
+ *
+ * <p>The parser must resolve the URI fully before passing it to the
+ * application.</p>
+ *
+ * @return A string containing the URI, or null
+ * if none is available.
+ */
+ public String getURI();
+
+ /**
+ * Return the line number where the current document event ends.
+ * Note that this is the line position of the first character
+ * after the text associated with the document event.
+ * @return The line number, or -1 if none is available.
+ * @see #getColumnNumber
+ */
+ public int getLineNumber();
+
+ /**
+ * Return the column number where the current document event ends.
+ * Note that this is the column number of the first
+ * character after the text associated with the document
+ * event. The first column in a line is position 1.
+ * @return The column number, or -1 if none is available.
+ * @see #getLineNumber
+ */
+ public int getColumnNumber();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/Locator.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/Locator.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeCondition.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeCondition.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeCondition.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeCondition.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,22 @@
+/*
+ * (c) COPYRIGHT 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Condition#SAC_NEGATIVE_CONDITION
+ */
+public interface NegativeCondition extends Condition {
+
+ /**
+ * Returns the condition.
+ */
+ public Condition getCondition();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeCondition.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeCondition.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeSelector.java
URL: http://svn.apache.org/viewvc/xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeSelector.java?view=auto&rev=477010
==============================================================================
--- xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeSelector.java (added)
+++ xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeSelector.java Sun Nov 19 18:54:38 2006
@@ -0,0 +1,22 @@
+/*
+ * (c) COPYRIGHT 1999 World Wide Web Consortium
+ * (Massachusetts Institute of Technology, Institut National de Recherche
+ * en Informatique et en Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ *
+ * $Id$
+ */
+package org.w3c.css.sac;
+
+/**
+ * @version $Revision$
+ * @author Philippe Le Hegaret
+ * @see Selector#SAC_NEGATIVE_SELECTOR
+ */
+public interface NegativeSelector extends SimpleSelector {
+
+ /**
+ * Returns the simple selector.
+ */
+ public SimpleSelector getSimpleSelector();
+}
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeSelector.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xml/commons/trunk/java/external/src/org/w3c/css/sac/NegativeSelector.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision