- From: Yves Lafon via cvs-syncmail <cvsmail@w3.org>
- Date: Mon, 16 Feb 2009 12:16:36 +0000
- To: www-validator-cvs@w3.org
Update of /sources/public/2002/css-validator/org/w3c/css/parser/analyzer In directory hutz:/tmp/cvs-serv27391/org/w3c/css/parser/analyzer Modified Files: CssParser.java CssParser.jj Log Message: More namespace support Index: CssParser.java =================================================================== RCS file: /sources/public/2002/css-validator/org/w3c/css/parser/analyzer/CssParser.java,v retrieving revision 1.56 retrieving revision 1.57 diff -u -d -r1.56 -r1.57 --- CssParser.java 14 Feb 2009 09:40:55 -0000 1.56 +++ CssParser.java 16 Feb 2009 12:16:34 -0000 1.57 @@ -541,7 +541,6 @@ } } -/* Modified by Sijtsche Smeman, preference, colorprofile and phoneticAlphabet added for CSS3 */ final public void afterImportDeclaration() throws ParseException { String ret; label_7: @@ -2379,15 +2378,30 @@ ; } // FIXME namespace, check versions of CSS in a better way. - if (!ac.getCssVersion().equals("css3") && (p!=null)) { - StringBuilder sb = new StringBuilder("namespace \""); - if (n != null) sb.append(n.toString()); - sb.append("\""); - ac.getFrame().addError(new CssError(new InvalidParamException("notversion", - "namespace", - ac.getCssVersion(), ac))); + if (p != null) { + if (!ac.getCssVersion().equals("css3")) { + StringBuilder sb = new StringBuilder("namespace \""); + if (n != null) sb.append(n.toString()); + sb.append("\""); + ac.getFrame().addError(new CssError(new + InvalidParamException("notversion", + "namespace", + ac.getCssVersion(), + ac))); // addError(new ParseException("namespace"), sb.toString()); - skipStatement(); + // ignoreStatement(); + } else if (n!=null) { + String nsprefix = convertIdent(n.image); + if (!ac.isNamespaceDefined(getURL(), nsprefix)) { + // ns is not defined + addError(new ParseException("Undefined namespace"), + ": The namespace \""+nsprefix + +"\" is not defined. " + + nsprefix ); + ignoreStatement(); + // skipStatement(); + } + } } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IDENT: Index: CssParser.jj =================================================================== RCS file: /sources/public/2002/css-validator/org/w3c/css/parser/analyzer/CssParser.jj,v retrieving revision 1.56 retrieving revision 1.57 diff -u -d -r1.56 -r1.57 --- CssParser.jj 14 Feb 2009 09:40:55 -0000 1.56 +++ CssParser.jj 16 Feb 2009 12:16:34 -0000 1.57 @@ -11,7 +11,7 @@ IGNORE_CASE = true; STATIC = false; UNICODE_INPUT = true; - /* + /* DEBUG_TOKEN_MANAGER = true; DEBUG_PARSER = true; */ @@ -698,7 +698,6 @@ } } -/* Modified by Sijtsche Smeman, preference, colorprofile and phoneticAlphabet added for CSS3 */ void afterImportDeclaration() : {String ret; } { @@ -1575,15 +1574,30 @@ { ( LOOKAHEAD(2) (n=<IDENT> | n=<ANY>)? p="|" )? { // FIXME namespace, check versions of CSS in a better way. - if (!ac.getCssVersion().equals("css3") && (p!=null)) { - StringBuilder sb = new StringBuilder("namespace \""); - if (n != null) sb.append(n.toString()); - sb.append("\""); - ac.getFrame().addError(new CssError(new InvalidParamException("notversion", - "namespace", - ac.getCssVersion(), ac))); + if (p != null) { + if (!ac.getCssVersion().equals("css3")) { + StringBuilder sb = new StringBuilder("namespace \""); + if (n != null) sb.append(n.toString()); + sb.append("\""); + ac.getFrame().addError(new CssError(new + InvalidParamException("notversion", + "namespace", + ac.getCssVersion(), + ac))); // addError(new ParseException("namespace"), sb.toString()); - skipStatement(); + // ignoreStatement(); + } else if (n!=null) { + String nsprefix = convertIdent(n.image); + if (!ac.isNamespaceDefined(getURL(), nsprefix)) { + // ns is not defined + addError(new ParseException("Undefined namespace"), + ": The namespace \""+nsprefix + +"\" is not defined. " + + nsprefix ); + ignoreStatement(); + // skipStatement(); + } + } } } ( n=<IDENT> { // s.setElement(convertIdent(n.image), ac);
Received on Monday, 16 February 2009 12:16:54 UTC