2002/css-validator/org/w3c/css/properties3 Css3Properties.java,1.2,1.3 Css3Style.java,1.19,1.20 CssAlignmentAdjust.java,1.3,1.4 CssAlignmentBaseLine.java,1.3,1.4 CssAllSpaceTreatment.java,1.2,1.3 CssAppearance.java,1.1,1.2 CssBackgroundClip.java,1.1,1.2 CssBackgroundOrigin.java,1.1,1.2 CssBackgroundQuantity.java,1.1,1.2 CssBackgroundSize.java,1.1,1.2 CssBackgroundSpacing.java,1.1,1.2 CssBaselineShift.java,1.2,1.3 CssBlockProgression.java,1.1,1.2 CssBorderBottomFitLength.java,1.1,1.2 CssBorderBottomFitWidth.java,1.1,1.2 CssBorderBottomImage.java,1.1,1.2 CssBorderBottomLeftFitLength.java,1.1,1.2 CssBorderBottomLeftFitWidth.java,1.1,1.2 CssBorderBottomLeftImage.java,1.1,1.2 CssBorderBottomLeftRadius.java,1.1,1.2 CssBorderBottomRightFitLength.java,1.1,1.2 CssBorderBottomRightFitWidth.java,1.1,1.2 CssBorderBottomRightImage.java,1.1,1.2 CssBorderBottomRightRadius.java,1.1,1.2 CssBorderBreak.java,1.1,1.2 CssBorderCornerFit.java,1.1,1.2 CssBorderCornerImage.java,1.1,1.2 CssBorderFit.java,1.1,1.2 CssBorderF

Update of /sources/public/2002/css-validator/org/w3c/css/properties3
In directory hutz:/tmp/cvs-serv27412/org/w3c/css/properties3

Modified Files:
	Css3Properties.java Css3Style.java CssAlignmentAdjust.java 
	CssAlignmentBaseLine.java CssAllSpaceTreatment.java 
	CssAppearance.java CssBackgroundClip.java 
	CssBackgroundOrigin.java CssBackgroundQuantity.java 
	CssBackgroundSize.java CssBackgroundSpacing.java 
	CssBaselineShift.java CssBlockProgression.java 
	CssBorderBottomFitLength.java CssBorderBottomFitWidth.java 
	CssBorderBottomImage.java CssBorderBottomLeftFitLength.java 
	CssBorderBottomLeftFitWidth.java CssBorderBottomLeftImage.java 
	CssBorderBottomLeftRadius.java 
	CssBorderBottomRightFitLength.java 
	CssBorderBottomRightFitWidth.java 
	CssBorderBottomRightImage.java CssBorderBottomRightRadius.java 
	CssBorderBreak.java CssBorderCornerFit.java 
	CssBorderCornerImage.java CssBorderFit.java 
	CssBorderFitLength.java CssBorderFitWidth.java 
	CssBorderImage.java CssBorderImageTransform.java 
	CssBorderLeftFitLength.java CssBorderLeftFitWidth.java 
	CssBorderLeftImage.java CssBorderRadius.java 
	CssBorderRightFitLength.java CssBorderRightFitWidth.java 
	CssBorderRightImage.java CssBorderTopFitLength.java 
	CssBorderTopFitWidth.java CssBorderTopImage.java 
	CssBorderTopLeftFitLength.java CssBorderTopLeftFitWidth.java 
	CssBorderTopLeftImage.java CssBorderTopLeftRadius.java 
	CssBorderTopRightFitLength.java CssBorderTopRightFitWidth.java 
	CssBorderTopRightImage.java CssBorderTopRightRadius.java 
	CssBoxHeight.java CssBoxShadow.java CssBoxSizing.java 
	CssBoxWidth.java CssClearAfter.java CssClearCSS3.java 
	CssCollapse.java CssColorProfile.java CssColumnCount.java 
	CssColumnGap.java CssColumnPadding.java CssColumnRule.java 
	CssColumnRuleColor.java CssColumnRuleStyle.java 
	CssColumnRuleWidth.java CssColumnSpaceDistribution.java 
	CssColumnSpan.java CssColumnWidth.java CssColumnWidthPol.java 
	CssCrop.java CssDisplayModel.java CssDisplayRole.java 
	CssDominantBaseLine.java CssDropInitialAfterAdjust.java 
	CssDropInitialAfterAlign.java CssDropInitialBeforeAdjust.java 
	CssDropInitialBeforeAlign.java CssDropInitialSize.java 
	CssDropInitialValue.java CssFit.java CssFitPosition.java 
	CssFloatCSS3.java CssFloatDisplace.java CssFontEffect.java 
	CssFontEmphasize.java CssFontEmphasizePos.java 
	CssFontEmphasizeStyle.java CssFontSmooth.java CssGlyphHor.java 
	CssGlyphOrVert.java CssGroupReset.java 
	CssHangingPunctuation.java CssHeightCSS3.java CssIcon.java 
	CssIndentEdgeReset.java CssInlineBoxAlign.java 
	CssKerningMode.java CssKerningPairTreshold.java CssKeyEq.java 
	CssLineBoxContain.java CssLineBreak.java CssLineGrid.java 
	CssLineGridMode.java CssLineGridProgression.java 
	CssLineHeightPolicy.java CssLineStacking.java 
	CssLineStackingRuby.java CssLineStackingShift.java 
	CssLineStackingStrategy.java CssLinefeedTreatment.java 
	CssLink.java CssLinkBehavior.java CssMarginInside.java 
	CssMarginOutside.java CssMarquee.java CssMarqueeDirection.java 
	CssMarqueeRepetition.java CssMarqueeSpeed.java 
	CssMarqueeStyle.java CssMaxFontSize.java CssMaxHeightCSS3.java 
	CssMaxWidthCSS3.java CssMedia.java CssMinFontSize.java 
	CssMinHeightCSS3.java CssMinWidthCSS3.java CssNavDown.java 
	CssNavIndex.java CssNavLeft.java CssNavRight.java 
	CssNavUp.java CssOpacity.java CssOutlineOffset.java 
	CssOverflowCSS3.java CssOverflowClip.java CssOverflowX.java 
	CssOverflowY.java CssPaddingBottomCSS3.java 
	CssPaddingCSS3.java CssPaddingLeftCSS3.java 
	CssPaddingRightCSS3.java CssPaddingSideCSS3.java 
	CssPaddingTopCSS3.java CssPunctuationTrim.java 
	CssRenderIntent.java CssResizer.java CssRubyAlign.java 
	CssRubyOverhang.java CssRubyPosition.java CssRubySpan.java 
	CssScript.java CssTabIndex.java CssTextAfterOverflow.java 
	CssTextAlignLast.java CssTextAutoSpace.java CssTextBlink.java 
	CssTextCombine.java CssTextDecorationCSS3.java 
	CssTextEndOverflow.java CssTextHeight.java 
	CssTextIndentCSS3.java CssTextJustify.java 
	CssTextJustifyTrim.java CssTextKashidaSpace.java 
	CssTextLTColor.java CssTextLTMode.java CssTextLTStyle.java 
	CssTextLineThrough.java CssTextOLColor.java CssTextOLMode.java 
	CssTextOLStyle.java CssTextOverLine.java CssTextOverflow.java 
	CssTextOverflowEllipsis.java CssTextOverflowMode.java 
	CssTextSpace.java CssTextUlColor.java CssTextUlMode.java 
	CssTextUlPos.java CssTextUlStyle.java CssTextUnderLine.java 
	CssToggleGroup.java CssUserFocus.java CssUserFocusKey.java 
	CssUserFocusPointer.java CssUserInput.java CssUserModify.java 
	CssUserSelect.java CssVisibilityCSS3.java 
	CssWhiteSpaceCSS3.java CssWhiteSpaceTreatment.java 
	CssWidthCSS3.java CssWordBreak.java CssWordBreakCJK.java 
	CssWordBreakInside.java CssWordSpacingCSS3.java 
	CssWrapOption.java CssWritingMode.java MediaColor.java 
	MediaColorIndex.java MediaDeviceAspectRatio.java 
	MediaDeviceHeight.java MediaDeviceWidth.java MediaGrid.java 
	MediaHeight.java MediaMaxColor.java MediaMaxColorIndex.java 
	MediaMaxDeviceAspectRatio.java MediaMaxDeviceHeight.java 
	MediaMaxDeviceWidth.java MediaMaxHeight.java 
	MediaMaxMonochrome.java MediaMaxResolution.java 
	MediaMaxWidth.java MediaMinColor.java MediaMinColorIndex.java 
	MediaMinDeviceAspectRatio.java MediaMinDeviceHeight.java 
	MediaMinDeviceWidth.java MediaMinHeight.java 
	MediaMinMonochrome.java MediaMinResolution.java 
	MediaMinWidth.java MediaMonochrome.java MediaResolution.java 
	MediaScan.java MediaWidth.java 
Log Message:
All those changed made by Jean-Guilhem Rouel:

Huge patch, imports fixed (automatic)
Bug fixed: 372, 920, 778, 287, 696, 764, 233
Partial bug fix for 289

Issue with "inherit" in CSS2.
The validator now checks the number of values (extraneous values were previously ignored)




Index: MediaMinWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMinWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMinWidth.java	8 Jan 2003 10:01:44 -0000	1.1
+++ MediaMinWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:01:44  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,33 +79,39 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMinWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssLength || val instanceof CssPercentage) {
-			    float f = ((Float) val.get()).floatValue();
-			    if (f < 0) {
-					throw new InvalidParamException("negative-value",
-								val.toString(), ac);
-			    }
-			    value = val;
-			} else if (val instanceof CssNumber) {
-			    value = ((CssNumber) val).getLength();
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMinWidth(ApplContext ac, CssExpression expression, 
+	    boolean check) throws InvalidParamException {
+	
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssLength || val instanceof CssPercentage) {
+		float f = ((Float) val.get()).floatValue();
+		if (f < 0) {
+		    throw new InvalidParamException("negative-value",
+			    val.toString(), ac);
 		}
+		value = val;
+	    } else if (val instanceof CssNumber) {
+		value = ((CssNumber) val).getLength();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
+    }
+    
+    public MediaMinWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
     }
 
     /**

Index: CssBorderBottomLeftImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomLeftImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomLeftImage.java	8 Jan 2003 10:17:35 -0000	1.1
+++ CssBorderBottomLeftImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,72 +8,78 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderBottomLeftImage extends CssProperty {
-
+    
     String value = "";
     ApplContext ac;
-	CssIdent contin = new CssIdent("continue");
-	CssIdent none = new CssIdent("none");
-
+    CssIdent contin = new CssIdent("continue");
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBorderBottomLeftImage
      */
     public CssBorderBottomLeftImage() {
-		value = "continue";
+	value = "continue";
     }
-
+    
     /**
      * Create new CssBorderBottomLeftImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderBottomLeftImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val != null) {
-			if (val.equals(none)) {
-				value = "none";
-			} else if (val.equals(contin)) {
-				value = "continue";
-			} else if (val instanceof CssURL) {
-				value = val.toString();
-			} else {
-				throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-			}
-		} else {
-			throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-		}
-
-		expression.next();
+    public CssBorderBottomLeftImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val != null) {
+	    if (val.equals(none)) {
+		value = "none";
+	    } else if (val.equals(contin)) {
+		value = "continue";
+	    } else if (val instanceof CssURL) {
+		value = val.toString();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	expression.next();
     }
-
+    
+    public CssBorderBottomLeftImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderBottomLeftImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderBottomLeftImage = this;
+	if (((Css3Style) style).cssBorderBottomLeftImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderBottomLeftImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -81,58 +87,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderBottomLeftImage();
-		} else {
-		    return ((Css3Style) style).cssBorderBottomLeftImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderBottomLeftImage();
+	} else {
+	    return ((Css3Style) style).cssBorderBottomLeftImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderBottomLeftImage &&
-                value.equals( ((CssBorderBottomLeftImage) property).value));
+	return (property instanceof CssBorderBottomLeftImage &&
+		value.equals( ((CssBorderBottomLeftImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-bottom-left-image";
+	return "border-bottom-left-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
 
 }

Index: MediaResolution.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaResolution.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaResolution.java	8 Jan 2003 10:01:44 -0000	1.1
+++ MediaResolution.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:01:44  sijtsche
  * new media feature for media queries
  *
@@ -40,17 +50,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssOperator;
 import org.w3c.css.values.CssResolution;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -72,25 +77,31 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaResolution(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssResolution) {
-				value = val;
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
-		}
+    public MediaResolution(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssResolution) {
+		value = val;
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
+    }
+    
+    public MediaResolution(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
     }
 
     /**

Index: CssBorderImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderImage.java	8 Jan 2003 10:17:35 -0000	1.1
+++ CssBorderImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,84 +8,88 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderImage extends CssProperty {
-
+    
     String value = "";
     ApplContext ac;
-	CssIdent none = new CssIdent("none");
-
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBorderImage
      */
     public CssBorderImage() {
-		value = "none";
+	value = "none";
     }
-
+    
     /**
      * Create new CssBorderImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = null;
-
-		if (!(expression.getCount() <= 4)) {
+    public CssBorderImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = null;
+	
+	if (!(expression.getCount() <= 4)) {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	for (int i=0; i < expression.getCount(); i++) {
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		
+		if (val.equals(none)) {
+		    value += "none" + " ";
+		} else if (val instanceof CssURL) {
+		    value += val.toString() + " ";
+		} else {
 		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-		}
-
-		for (int i=0; i < expression.getCount(); i++) {
-
-			val = expression.getValue();
-
-			if (val != null) {
-
-				if (val.equals(none)) {
-					value += "none" + " ";
-				} else if (val instanceof CssURL) {
-					value += val.toString() + " ";
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-
-			} else {
-				break;
-			}
-
-			expression.next();
+			    getPropertyName(), ac);
 		}
-
-		value = value.trim();
-
-
+		
+	    } else {
+		break;
+	    }
+	    
+	    expression.next();
+	}
+	
+	value = value.trim();
     }
-
+    
+    public CssBorderImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderImage = this;
+	if (((Css3Style) style).cssBorderImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -93,58 +97,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderImage();
-		} else {
-		    return ((Css3Style) style).cssBorderImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderImage();
+	} else {
+	    return ((Css3Style) style).cssBorderImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderImage &&
-                value.equals( ((CssBorderImage) property).value));
+	return (property instanceof CssBorderImage &&
+		value.equals( ((CssBorderImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-image";
+	return "border-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
 
 }

Index: CssBorderBottomRightFitLength.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomRightFitLength.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomRightFitLength.java	8 Jan 2003 10:18:44 -0000	1.1
+++ CssBorderBottomRightFitLength.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderBottomRightFitLength extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderBottomRightFitLength
      */
     public CssBorderBottomRightFitLength() {
-		value = "overwrite";
+	value = "overwrite";
     }
-
+    
     /**
      * Create a new CssBorderBottomRightFitLength
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderBottomRightFitLength(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderBottomRightFitLength(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderBottomRightFitLength(ApplContext ac,
+	    CssExpression expression) throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderBottomRightFitLength = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderBottomRightFitLength;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderBottomRightFitLength &&
 		value.equals(((CssBorderBottomRightFitLength) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-bottom-right-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("overwrite");
+	return value.equals("overwrite");
     }
-
+    
 }

Index: CssTextAutoSpace.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextAutoSpace.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextAutoSpace.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextAutoSpace.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -60,7 +60,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextAutoSpace(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextAutoSpace(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -80,6 +81,11 @@
 
     }
 
+    public CssTextAutoSpace(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderBottomRightRadius.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomRightRadius.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomRightRadius.java	8 Jan 2003 10:19:50 -0000	1.1
+++ CssBorderBottomRightRadius.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,61 +8,66 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssLength;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 public class CssBorderBottomRightRadius extends CssProperty {
 
     String value;
     ApplContext ac;
-
+    
     /**
      * Create new CssBorderBottomRightRadius
      */
     public CssBorderBottomRightRadius() {
-		CssNumber cssnum =  new CssNumber((float) 1.0);
-       	value = cssnum.toString();
+	CssNumber cssnum =  new CssNumber((float) 1.0);
+	value = cssnum.toString();
     }
-
+    
     /**
      * Create new CssBorderBottomRightRadius
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderBottomRightRadius(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
+    public CssBorderBottomRightRadius(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssLength) {
+	    value = val.toString();
+	    expression.next();
+	    
+	    val = expression.getValue();
+	    if (val != null) {
+		
 		if (val instanceof CssLength) {
-		    value = val.toString();
+		    value += " " + val.toString();
 		    expression.next();
-
-		    val = expression.getValue();
-		    if (val != null) {
-
-				if (val instanceof CssLength) {
-					value += " " + val.toString();
-					expression.next();
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-			}
-		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+		} else {
+		    throw new InvalidParamException("value", 
+			    expression.getValue(), getPropertyName(), ac);
 		}
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBorderBottomRightRadius(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
@@ -73,7 +78,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderBottomRightRadius = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -87,7 +92,7 @@
 	    return ((Css3Style) style).cssBorderBottomRightRadius;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -95,44 +100,44 @@
      */
     public boolean equals(CssProperty property) {
 	return (property instanceof CssBorderBottomRightRadius &&
-                value.equals( ((CssBorderBottomRightRadius) property).value));
+		value.equals( ((CssBorderBottomRightRadius) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-bottom-right-radius";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: CssPaddingRightCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssPaddingRightCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssPaddingRightCSS3.java	24 Dec 2002 13:20:53 -0000	1.1
+++ CssPaddingRightCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/12/24 13:20:53  sijtsche
  * new version for CSS3: value initial added
  *
@@ -31,10 +41,10 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 
 /**
  *   <H4>
@@ -57,75 +67,81 @@
  * @version $Revision$
  */
 public class CssPaddingRightCSS3 extends CssPaddingSideCSS3 {
-
-  /**
-   * Create a new CssPaddingRightCSS3
-   */
-  public CssPaddingRightCSS3() {
-    super();
-  }
-
-  /**
-   * Create a new CssPaddingRightCSS3 with an another CssPaddingSideCSS3
-   *
-   * @param another The another side
-   */
-  public CssPaddingRightCSS3(CssPaddingSideCSS3 another) {
-    super(another);
-  }
-
-  /**
-   * Create a new CssPaddingRightCSS3
-   *
-   * @param expression The expression for this property.
-   * @exception InvalidParamException Values are incorrect
-   */
-  public CssPaddingRightCSS3(ApplContext ac, CssExpression expression)
+    
+    /**
+     * Create a new CssPaddingRightCSS3
+     */
+    public CssPaddingRightCSS3() {
+	super();
+    }
+    
+    /**
+     * Create a new CssPaddingRightCSS3 with an another CssPaddingSideCSS3
+     *
+     * @param another The another side
+     */
+    public CssPaddingRightCSS3(CssPaddingSideCSS3 another) {
+	super(another);
+    }
+    
+    /**
+     * Create a new CssPaddingRightCSS3
+     *
+     * @param expression The expression for this property.
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssPaddingRightCSS3(ApplContext ac, CssExpression expression,
+	    boolean check)
     throws InvalidParamException {
-    super(ac, expression);
-  }
-
-  /**
-   * Returns the name of this property
-   */
-  public String getPropertyName() {
-    return "padding-right";
-  }
-
-  /**
-   * Add this property to the CssStyle.
-   *
-   * @param style The CssStyle
-   */
-  public void addToStyle(ApplContext ac, CssStyle style) {
-    if (((Css3Style) style).cssPaddingRightCSS3 != null)
+	super(ac, expression, check);
+    }
+    
+    public CssPaddingRightCSS3(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "padding-right";
+    }
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssPaddingRightCSS3 != null)
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssPaddingRightCSS3 = this;
-
-  }
-
-  /**
-   * Get this property in the style.
-   *
-   * @param style The style where the property is
-   * @param resolve if true, resolve the style to find this property
-   */
-  public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-    if (resolve) {
-      return ((Css3Style) style).getPaddingRightCSS3();
-    } else {
-      return ((Css3Style) style).cssPaddingCSS3.getRight();
+	
     }
-  }
-
-  /**
-   * Compares two properties for equality.
-   *
-   * @param value The other property.
-   */
-  public boolean equals(CssProperty property) {
-    return (property instanceof CssPaddingRightCSS3 &&
-	    value.equals(((CssPaddingRightCSS3) property).value));
-  }
-
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getPaddingRightCSS3();
+	} else {
+	    return ((Css3Style) style).cssPaddingCSS3.getRight();
+	}
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssPaddingRightCSS3 &&
+		value.equals(((CssPaddingRightCSS3) property).value));
+    }
+    
 }

Index: CssColumnRuleStyle.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnRuleStyle.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnRuleStyle.java	20 Aug 2002 08:51:51 -0000	1.1
+++ CssColumnRuleStyle.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
+import org.w3c.css.properties.CssBorderStyle;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssBorderStyle;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -44,7 +43,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssColumnRuleStyle(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssColumnRuleStyle(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -60,6 +60,11 @@
 	}
     }
 
+    public CssColumnRuleStyle(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextOLMode.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextOLMode.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssTextOLMode.java	14 Jul 2003 14:33:56 -0000	1.2
+++ CssTextOLMode.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextOLMode(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextOLMode(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -73,6 +74,11 @@
 	}
     }
 
+    public CssTextOLMode(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextLineThrough.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextLineThrough.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextLineThrough.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextLineThrough.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextLineThrough(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextLineThrough(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	CssValue val = expression.getValue();
 	int maxvalues = 3;
@@ -109,6 +109,10 @@
 
     }
 
+    public CssTextLineThrough(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle

Index: MediaColorIndex.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaColorIndex.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaColorIndex.java	8 Jan 2003 10:05:40 -0000	1.1
+++ MediaColorIndex.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:05:40  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,33 +78,39 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaColorIndex(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-		char op = SPACE;
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaColorIndex(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	//char op = SPACE;
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaColorIndex(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssBorderLeftFitLength.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderLeftFitLength.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderLeftFitLength.java	8 Jan 2003 10:19:50 -0000	1.1
+++ CssBorderLeftFitLength.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderLeftFitLength extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderLeftFitLength
      */
     public CssBorderLeftFitLength() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderLeftFitLength
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderLeftFitLength(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderLeftFitLength(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderLeftFitLength(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderLeftFitLength = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderLeftFitLength;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderLeftFitLength &&
 		value.equals(((CssBorderLeftFitLength) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-left-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: CssBorderFit.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderFit.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderFit.java	8 Jan 2003 10:13:38 -0000	1.1
+++ CssBorderFit.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,76 +9,80 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderFit extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderFit
      */
     public CssBorderFit() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderFit
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderFit(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (expression.getCount() <= 2) {
-
-			val = expression.getValue();
-
-			if (val != null) {
-
-				for (; i < expression.getCount(); i++) {
-
-					int j = 0;
-					for (; j < values.length; j++) {
-					    if (val.toString().equals(values[j])) {
-							value += val.toString() + " ";
-							expression.next();
-							break;
-				    	}
-					}
-
-					if (j == values.length) {
-						    throw new InvalidParamException("value", expression.getValue(),
-										    getPropertyName(), ac);
-					}
-				}
+    public CssBorderFit(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (expression.getCount() <= 2) {
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		
+		for (; i < expression.getCount(); i++) {
+		    
+		    int j = 0;
+		    for (; j < values.length; j++) {
+			if (val.toString().equals(values[j])) {
+			    value += val.toString() + " ";
+			    expression.next();
+			    break;
 			}
-
-		} else {
+		    }
+		    
+		    if (j == values.length) {
 			throw new InvalidParamException("value", expression.getValue(),
 				getPropertyName(), ac);
+		    }
 		}
-
+	    }
+	    
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
     }
-
+    
+    public CssBorderFit(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -89,7 +93,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderFit = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -104,7 +108,7 @@
 	    return ((Css3Style) style).cssBorderFit;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -114,41 +118,41 @@
 	return (property instanceof CssBorderFit &&
 		value.equals(((CssBorderFit) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-fit";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: CssBorderBottomLeftFitLength.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomLeftFitLength.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomLeftFitLength.java	8 Jan 2003 10:17:35 -0000	1.1
+++ CssBorderBottomLeftFitLength.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderBottomLeftFitLength extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderBottomLeftFitLength
      */
     public CssBorderBottomLeftFitLength() {
-		value = "overwrite";
+	value = "overwrite";
     }
-
+    
     /**
      * Create a new CssBorderBottomLeftFitLength
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderBottomLeftFitLength(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderBottomLeftFitLength(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderBottomLeftFitLength(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderBottomLeftFitLength = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderBottomLeftFitLength;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderBottomLeftFitLength &&
 		value.equals(((CssBorderBottomLeftFitLength) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-bottom-left-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("overwrite");
+	return value.equals("overwrite");
     }
-
+    
 }

Index: CssLineHeightPolicy.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineHeightPolicy.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineHeightPolicy.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssLineHeightPolicy.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/07/19 20:30:12  sijtsche
  * files representing CSS3 properties
  *
@@ -25,12 +35,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *   <H4>
@@ -74,7 +84,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */  
-    public CssLineHeightPolicy(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssLineHeightPolicy(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 	
 	setByUser();
@@ -98,6 +109,11 @@
 	}
     }
     
+    public CssLineHeightPolicy(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssAlignmentAdjust.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssAlignmentAdjust.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- CssAlignmentAdjust.java	20 Aug 2002 08:50:39 -0000	1.3
+++ CssAlignmentAdjust.java	8 Aug 2005 13:18:54 -0000	1.4
@@ -9,14 +9,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -45,38 +45,39 @@
 	"text-before-edge", "middle", "central", "after-edge", "text-after-edge",
 	"ideographic", "alphabetic", "hanging", "mathematical", "inherit", "initial"
     };
-
+    
     /**
      * Create a new CssAlignmentAdjust
      */
     public CssAlignmentAdjust() {
 	alignadjust = auto;
     }
-
+    
     /**
      * Create a new CssAlignmentAdjust
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssAlignmentAdjust(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
+    public CssAlignmentAdjust(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
 	setByUser();
 	CssValue val = expression.getValue();
-
+	
 	if (val instanceof CssIdent) {
-		int i = 0;
-		for (; i < values.length; i++) {
-		    if (val.toString().equals(values[i])) {
-				alignadjust = val;
-				expression.next();
-				break;
-	    	}
-		}
-		if (i == values.length) {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
+	    int i = 0;
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    alignadjust = val;
+		    expression.next();
+		    break;
 		}
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
 	}
 	else if (val instanceof CssPercentage) {
 	    alignadjust = val;
@@ -88,10 +89,15 @@
 	}
 	else {
 	    throw new InvalidParamException("value", expression.getValue(),
-					    getPropertyName(), ac);
+		    getPropertyName(), ac);
 	}
     }
-
+    
+    public CssAlignmentAdjust(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -102,7 +108,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssAlignmentAdjust = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -117,7 +123,7 @@
 	    return ((Css3Style) style).cssAlignmentAdjust;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -127,35 +133,35 @@
 	return (property instanceof CssAlignmentAdjust &&
 		alignadjust.equals(((CssAlignmentAdjust) property).alignadjust));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "alignment-adjust";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return alignadjust;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return alignadjust.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return alignadjust.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
@@ -163,5 +169,5 @@
     public boolean isDefault() {
 	return alignadjust == auto;
     }
-
+    
 }

Index: CssGroupReset.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssGroupReset.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssGroupReset.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssGroupReset.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -11,13 +11,13 @@
 import java.util.Vector;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -31,7 +31,6 @@
  *  The groups defined by the group-reset property are used as values 
  *  for the toggle-group property.
  */
-
 public class CssGroupReset extends CssProperty {
 
     CssValue groupreset;
@@ -52,7 +51,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssGroupReset(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssGroupReset(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -89,6 +89,11 @@
 	}
     }
 
+    public CssGroupReset(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssLineStacking.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineStacking.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineStacking.java	20 Aug 2002 13:53:41 -0000	1.1
+++ CssLineStacking.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,17 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import java.util.Hashtable;
-
-import org.w3c.css.values.CssColor;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -44,56 +40,61 @@
      * @param expression The expression for this property
      * @exception InvalidParamException The expression is incorrect
      */
-    public CssLineStacking(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
+    public CssLineStacking(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
 	CssValue val = expression.getValue();
 	int maxvalues = 3;
 	boolean correct = true;
 	char op = SPACE;
-
+	
 	while (correct && (val != null) && (maxvalues-- > 0)) {
-
+	    
 	    correct = false;
-
+	    
 	    if (!correct && lsruby == null) {
-			try {
-			    lsruby = new CssLineStackingRuby(ac, expression);
-			    correct = true;
-			}
-			catch (InvalidParamException e) {
-			}
+		try {
+		    lsruby = new CssLineStackingRuby(ac, expression);
+		    correct = true;
+		}
+		catch (InvalidParamException e) {
+		}
 	    }
-
+	    
 	    if (!correct && lsshift == null) {
-			try {
-			    lsshift = new CssLineStackingShift(ac, expression);
-			    correct = true;
-			}
-			catch (InvalidParamException e) {
-			}
+		try {
+		    lsshift = new CssLineStackingShift(ac, expression);
+		    correct = true;
+		}
+		catch (InvalidParamException e) {
+		}
 	    }
-
+	    
 	    if (!correct && lsstrategy == null) {
-			try {
-				lsstrategy = new CssLineStackingStrategy(ac, expression);
-				correct = true;
-			} catch (InvalidParamException e) {
-			}
+		try {
+		    lsstrategy = new CssLineStackingStrategy(ac, expression);
+		    correct = true;
+		} catch (InvalidParamException e) {
 		}
-
+	    }
+	    
 	    if (!correct) {
 		throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+			getPropertyName(), ac);
 	    }
-
+	    
 	    val = expression.getValue();
 	    op = expression.getOperator();
-
+	    
 	}
-
+	
     }
-
-
+    
+    public CssLineStacking(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssDropInitialAfterAlign.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssDropInitialAfterAlign.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssDropInitialAfterAlign.java	20 Aug 2002 13:53:40 -0000	1.1
+++ CssDropInitialAfterAlign.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -56,7 +56,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssDropInitialAfterAlign(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssDropInitialAfterAlign(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -75,6 +76,11 @@
 	}
     }
 
+    public CssDropInitialAfterAlign(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssFontEmphasizePos.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssFontEmphasizePos.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssFontEmphasizePos.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssFontEmphasizePos.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,14 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssLength;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -60,7 +59,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssFontEmphasizePos(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssFontEmphasizePos(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	
@@ -78,6 +78,11 @@
 	}
     }
     
+    public CssFontEmphasizePos(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssMarginOutside.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMarginOutside.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMarginOutside.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssMarginOutside.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/07/19 20:30:12  sijtsche
  * files representing CSS3 properties
  *
@@ -31,11 +41,11 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.properties.CssMarginSide;
 import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 
 /**
  *   <H4>
@@ -79,10 +89,16 @@
    * @param expression The expression for this property.
    * @exception InvalidParamException Values are incorrect
    */
-  public CssMarginOutside(ApplContext ac, CssExpression expression) throws InvalidParamException {
-    super(ac, expression);
+  public CssMarginOutside(ApplContext ac, CssExpression expression,
+	  boolean check) throws InvalidParamException {
+    super(ac, expression, check);
   }
   
+  public CssMarginOutside(ApplContext ac, CssExpression expression)
+	throws InvalidParamException {
+    this(ac, expression, false);
+  }  
+  
   /**
    * Returns the name of this property
    */  

Index: CssOpacity.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssOpacity.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- CssOpacity.java	8 Apr 2003 09:22:11 -0000	1.3
+++ CssOpacity.java	8 Aug 2005 13:18:54 -0000	1.4
@@ -9,15 +9,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.util.Util;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -35,132 +35,139 @@
  */
 
 public class CssOpacity extends CssProperty implements CssOperator {
-
-   String opaclevel;
-   ApplContext ac;
-
-
+    
+    String opaclevel;
+    ApplContext ac;
+    
+    
     /**
      * Create a new CssOpacity
      */
-   public CssOpacity() {
-       CssNumber cssnum =  new CssNumber((float) 1.0);
-       opaclevel = cssnum.toString();
-   }
-
-   /**
-    * Create a new CssOpacity
-    *
-    * @param expression The expression for this property
-    * @exception InvalidParamException Values are incorrect
-    */
-   public CssOpacity(ApplContext ac, CssExpression expression) throws InvalidParamException {
-       this.ac = ac;
-       setByUser(); // tell this property is set by the user
-       CssValue val = expression.getValue();
-
-       if (val instanceof CssNumber) {
-
-		   CssNumber cssnum = new CssNumber(clampedValue(ac, ((CssNumber) val).getValue()));
-		   opaclevel = cssnum.toString();
-		   expression.next();
-       }
-       else if (val instanceof CssIdent) {
-           if (val.equals(inherit)) {
-	       	  	opaclevel = "inherit";
-	       	 	expression.next();
-           } else {
-				throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-		   }
-       }
-       else {
-	   		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-       }
-   }
+    public CssOpacity() {
+	CssNumber cssnum =  new CssNumber((float) 1.0);
+	opaclevel = cssnum.toString();
+    }
+    
+    /**
+     * Create a new CssOpacity
+     *
+     * @param expression The expression for this property
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssOpacity(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	this.ac = ac;
+	setByUser(); // tell this property is set by the user
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssNumber) {
+	    
+	    CssNumber cssnum = new CssNumber(clampedValue(ac, ((CssNumber) val).getValue()));
+	    opaclevel = cssnum.toString();
+	    expression.next();
+	}
+	else if (val instanceof CssIdent) {
+	    if (val.equals(inherit)) {
+		opaclevel = "inherit";
+		expression.next();
+	    } else {
+		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+	}
+    }
+    
+    public CssOpacity(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Brings all values back between 0 and 1
      *
      * @param opac The value to be modified if necessary
      */
-   private float clampedValue(ApplContext ac, float opac) {
-       if (opac < 0 || opac > 1) {
-          ac.getFrame().addWarning("out-of-range", Util.displayFloat(opac));
-          return ((opac<0)?0:1);
-       }
-       else return(opac);
-   }
-
+    private float clampedValue(ApplContext ac, float opac) {
+	if (opac < 0 || opac > 1) {
+	    ac.getFrame().addWarning("out-of-range", Util.displayFloat(opac));
+	    return ((opac<0)?0:1);
+	}
+	else return(opac);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
-     public void addToStyle(ApplContext ac, CssStyle style) {
-	 if (((Css3Style) style).cssOpacity != null)
-	     style.addRedefinitionWarning(ac, this);
-	 ((Css3Style) style).cssOpacity = this;
-     }
-
-      /**
-       * Get this property in the style.
-       *
-       * @param style The style where the property is
-       * @param resolve if true, resolve the style to find this property
-       */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getOpacity();
-	    } else {
-		return ((Css3Style) style).cssOpacity;
-	    }
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssOpacity != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssOpacity = this;
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getOpacity();
+	} else {
+	    return ((Css3Style) style).cssOpacity;
 	}
-
-       /**
-        * Compares two properties for equality.
-        *
-        * @param value The other property.
-        */
-       public boolean equals(CssProperty property) {
-	   return (property instanceof CssOpacity &&
-                opaclevel.equals( ((CssOpacity) property).opaclevel));
-       }
-
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssOpacity &&
+		opaclevel.equals( ((CssOpacity) property).opaclevel));
+    }
+    
     /**
      * Returns the name of this property
      */
-   public String getPropertyName() {
-       return "opacity";
-   }
-
+    public String getPropertyName() {
+	return "opacity";
+    }
+    
     /**
      * Returns the value of this property
      */
-   public Object get() {
-       return opaclevel;
-   }
-
+    public Object get() {
+	return opaclevel;
+    }
+    
     /**
      * Returns true if this property is "softly" inherited
      */
-   public boolean isSoftlyInherited() {
-       return opaclevel.equals("inherit");
-   }
-
-   /**
-    * Returns a string representation of the object
-    */
-   public String toString() {
-       return opaclevel;
-   }
-
+    public boolean isSoftlyInherited() {
+	return opaclevel.equals("inherit");
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return opaclevel;
+    }
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
-   public boolean isDefault() {
-       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       return opaclevel == cssnum.toString();
-   }
-
+    public boolean isDefault() {
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return opaclevel == cssnum.toString();
+    }
+    
 }
 

Index: MediaWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaWidth.java	8 Jan 2003 10:01:44 -0000	1.1
+++ MediaWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:01:44  sijtsche
  * new media feature for media queries
  *
@@ -40,79 +50,84 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
  */
 public class MediaWidth extends CssProperty {
-
+    
     CssValue value;
-
+    
     /**
      * Create a new MediaWidth
      */
     public MediaWidth() {
-		//empty
+	//empty
     }
-
+    
     /**
      * Create a new MediaWidth.
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssLength || val instanceof CssPercentage) {
-			    float f = ((Float) val.get()).floatValue();
-			    if (f < 0) {
-					throw new InvalidParamException("negative-value",
-								val.toString(), ac);
-			    }
-			    value = val;
-			} else if (val instanceof CssNumber) {
-			    value = ((CssNumber) val).getLength();
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssLength || val instanceof CssPercentage) {
+		float f = ((Float) val.get()).floatValue();
+		if (f < 0) {
+		    throw new InvalidParamException("negative-value",
+			    val.toString(), ac);
 		}
+		value = val;
+	    } else if (val instanceof CssNumber) {
+		value = ((CssNumber) val).getLength();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
 	}
-
+    }
+    
+    public MediaWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns the name of this property.
      */
     public String getPropertyName() {
 	return "width";
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      * e.g. his value equals inherit
@@ -120,19 +135,19 @@
     public boolean isSoftlyInherited() {
 	return value == inherit;
     }
-
+    
     /**
      * Returns a string representation of the object.
      */
     public String toString() {
-		if (value != null) {
-			return value.toString();
-		} else {
-			return null;
-		}
+	if (value != null) {
+	    return value.toString();
+	} else {
+	    return null;
+	}
     }
-
-
+    
+    
     /**
      * Add this property to the CssStyle.
      *
@@ -144,7 +159,7 @@
 	    style0.addRedefinitionWarning(ac, this);
 	style0.mediaWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -158,7 +173,7 @@
 	    return ((Css3Style) style).mediaWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -167,7 +182,7 @@
     public boolean equals(CssProperty property) {
 	return (property instanceof MediaWidth && value.equals(((MediaWidth) property).value));
     }
-
+    
     /**
      * Is the value of this property is a default value.
      * It is used by all macro for the function <code>print</code>
@@ -175,5 +190,5 @@
     public boolean isDefault() {
 	return false;
     }
-
+    
 }

Index: CssCollapse.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssCollapse.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssCollapse.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssCollapse.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
+import org.w3c.css.properties.CssContent;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssContent;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 /**
@@ -50,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssCollapse(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssCollapse(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -73,6 +74,11 @@
 	}
     }
 
+    public CssCollapse(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssFitPosition.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssFitPosition.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssFitPosition.java	24 Dec 2002 13:12:28 -0000	1.1
+++ CssFitPosition.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,224 +9,230 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.util.Util;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 
 public class CssFitPosition extends CssProperty implements CssOperator {
-
-   String fitpos = new String();
+    
+    String fitpos = new String();
     ApplContext ac;
     CssIdent auto = new CssIdent("auto");
     CssIdent initial = new CssIdent("initial");
     CssIdent top = new CssIdent("top");
     CssIdent center = new CssIdent("center");
     CssIdent bottom = new CssIdent("bottom");
-
+    
     CssIdent left = new CssIdent("left");
     CssIdent right = new CssIdent("right");
-
+    
     /**
      * Create a new CssFitPosition
      */
-   public CssFitPosition() {
-       fitpos = "0% 0%";
-   }
-
-   /**
-    * Create a new CssFitPosition
-    *
-    * @param expression The expression for this property
-    * @exception InvalidParamException Values are incorrect
-    */
-   public CssFitPosition(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-       this.ac = ac;
-       setByUser(); // tell this property is set by the user
-       CssValue val = expression.getValue();
-       char op = expression.getOperator();
-
-       if (op == SPACE) {
-
-		   val = expression.getValue();
-
-		   if (val != null) {
-
-		   		if (val instanceof CssIdent) {
-		   			if (val.equals(top)) {
-						fitpos += " " + val.toString();
-					} else if (val.equals(center)) {
-						fitpos += " " + val.toString();
-					} else if (val.equals(bottom)) {
-						fitpos += " " + val.toString();
-					} else if (val.equals(initial)) {
-						fitpos += " " + val.toString();
-					} else {
-						throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-					}
-
-					expression.next();
-					op = expression.getOperator();
-					val = expression.getValue();
-
-					if (val != null && val instanceof CssIdent) {
-			   			if (val.equals(left)) {
-							fitpos += " " + val.toString();
-						} else if (val.equals(center)) {
-							fitpos += " " + val.toString();
-						} else if (val.equals(right)) {
-							fitpos += " " + val.toString();
-						} else {
-							throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-						}
-					}
-
-					expression.next();
-
-	   	   		} else if (val instanceof CssLength) {
-					fitpos += " " + val.toString();
-
-					expression.next();
-					op = expression.getOperator();
-					val = expression.getValue();
-
-					if (val != null && val instanceof CssLength) {
-						fitpos += " " + val.toString();
-						expression.next();
-					} else if (val instanceof CssPercentage) {
-						fitpos += " " + val.toString();
-						expression.next();
-					}
-
-		   		} else if (val instanceof CssPercentage) {
-					fitpos += " " + val.toString();
-
-					expression.next();
-					op = expression.getOperator();
-					val = expression.getValue();
-
-					if (val != null && val instanceof CssLength) {
-						fitpos += " " + val.toString();
-						expression.next();
-					} else if (val instanceof CssPercentage) {
-						fitpos += " " + val.toString();
-						expression.next();
-					}
-
-				} else {
-					throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-				}
+    public CssFitPosition() {
+	fitpos = "0% 0%";
+    }
+    
+    /**
+     * Create a new CssFitPosition
+     *
+     * @param expression The expression for this property
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssFitPosition(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	this.ac = ac;
+	setByUser(); // tell this property is set by the user
+	CssValue val = expression.getValue();
+	char op = expression.getOperator();
+	
+	if (op == SPACE) {
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		
+		if (val instanceof CssIdent) {
+		    if (val.equals(top)) {
+			fitpos += " " + val.toString();
+		    } else if (val.equals(center)) {
+			fitpos += " " + val.toString();
+		    } else if (val.equals(bottom)) {
+			fitpos += " " + val.toString();
+		    } else if (val.equals(initial)) {
+			fitpos += " " + val.toString();
+		    } else {
+			throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+		    }
+		    
+		    expression.next();
+		    op = expression.getOperator();
+		    val = expression.getValue();
+		    
+		    if (val != null && val instanceof CssIdent) {
+			if (val.equals(left)) {
+			    fitpos += " " + val.toString();
+			} else if (val.equals(center)) {
+			    fitpos += " " + val.toString();
+			} else if (val.equals(right)) {
+			    fitpos += " " + val.toString();
+			} else {
+			    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
 			}
-
-	   }
-       else if (val instanceof CssIdent) {
-           if (val.equals(inherit)) {
-	       		fitpos = "inherit";
-	       		expression.next();
-           } else if (val.equals(auto)) {
-			    fitpos = "auto";
-			    expression.next();
-		   } else if (val.equals(initial)) {
-				fitpos = "initial";
-			    expression.next();
-		   }
-       }
-       else {
-	   		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-       }
-   }
+		    }
+		    
+		    expression.next();
+		    
+		} else if (val instanceof CssLength) {
+		    fitpos += " " + val.toString();
+		    
+		    expression.next();
+		    op = expression.getOperator();
+		    val = expression.getValue();
+		    
+		    if (val != null && val instanceof CssLength) {
+			fitpos += " " + val.toString();
+			expression.next();
+		    } else if (val instanceof CssPercentage) {
+			fitpos += " " + val.toString();
+			expression.next();
+		    }
+		    
+		} else if (val instanceof CssPercentage) {
+		    fitpos += " " + val.toString();
+		    
+		    expression.next();
+		    op = expression.getOperator();
+		    val = expression.getValue();
+		    
+		    if (val != null && val instanceof CssLength) {
+			fitpos += " " + val.toString();
+			expression.next();
+		    } else if (val instanceof CssPercentage) {
+			fitpos += " " + val.toString();
+			expression.next();
+		    }
+		    
+		} else {
+		    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+		}
+	    }
+	    
+	}
+	else if (val instanceof CssIdent) {
+	    if (val.equals(inherit)) {
+		fitpos = "inherit";
+		expression.next();
+	    } else if (val.equals(auto)) {
+		fitpos = "auto";
+		expression.next();
+	    } else if (val.equals(initial)) {
+		fitpos = "initial";
+		expression.next();
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+	}
+    }
+    
+    public CssFitPosition(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Brings all values back between 0 and 1
      *
      * @param opac The value to be modified if necessary
      */
-   private float clampedValue(ApplContext ac, float opac) {
-       if (opac < 0 || opac > 1) {
-          ac.getFrame().addWarning("out-of-range", Util.displayFloat(opac));
-          return ((opac<0)?0:1);
-       }
-       else return(opac);
-   }
-
+    private float clampedValue(ApplContext ac, float opac) {
+	if (opac < 0 || opac > 1) {
+	    ac.getFrame().addWarning("out-of-range", Util.displayFloat(opac));
+	    return ((opac<0)?0:1);
+	}
+	else return(opac);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
-     public void addToStyle(ApplContext ac, CssStyle style) {
-		 if (((Css3Style) style).cssFitPosition != null)
-		     style.addRedefinitionWarning(ac, this);
-		 ((Css3Style) style).cssFitPosition = this;
-     }
-
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssFitPosition != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssFitPosition = this;
+    }
+    
     /**
      * Get this property in the style.
      *
      * @param style The style where the property is
      * @param resolve if true, resolve the style to find this property
      */
-     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-			return ((Css3Style) style).getFitPosition();
-	    } else {
-			return ((Css3Style) style).cssFitPosition;
-	    }
-	 }
-
-  /**
-   * Compares two properties for equality.
-   *
-   * @param value The other property.
-   */
-   public boolean equals(CssProperty property) {
-	   return (property instanceof CssFitPosition &&
-               fitpos.equals( ((CssFitPosition) property).fitpos));
-   }
-
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getFitPosition();
+	} else {
+	    return ((Css3Style) style).cssFitPosition;
+	}
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssFitPosition &&
+		fitpos.equals( ((CssFitPosition) property).fitpos));
+    }
+    
     /**
      * Returns the name of this property
      */
-   public String getPropertyName() {
-       return "fit-position";
-   }
-
+    public String getPropertyName() {
+	return "fit-position";
+    }
+    
     /**
      * Returns the value of this property
      */
-   public Object get() {
-       return fitpos;
-   }
-
+    public Object get() {
+	return fitpos;
+    }
+    
     /**
      * Returns true if this property is "softly" inherited
      */
-   public boolean isSoftlyInherited() {
-       return fitpos.equals("inherit");
-   }
-
-   /**
-    * Returns a string representation of the object
-    */
-   public String toString() {
-       return fitpos;
-   }
-
+    public boolean isSoftlyInherited() {
+	return fitpos.equals("inherit");
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return fitpos;
+    }
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
-   public boolean isDefault() {
-       return fitpos.equals("0% 0%");
-   }
-
+    public boolean isDefault() {
+	return fitpos.equals("0% 0%");
+    }
+    
 }
 

Index: MediaMinDeviceHeight.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMinDeviceHeight.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMinDeviceHeight.java	8 Jan 2003 10:02:55 -0000	1.1
+++ MediaMinDeviceHeight.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:02:55  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,7 +79,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMinDeviceHeight(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public MediaMinDeviceHeight(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 		CssValue val = null;
 
 		if (expression != null) {
@@ -98,6 +108,11 @@
 		}
     }
 
+    public MediaMinDeviceHeight(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssBorderTopLeftFitWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopLeftFitWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopLeftFitWidth.java	8 Jan 2003 10:21:57 -0000	1.1
+++ CssBorderTopLeftFitWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderTopLeftFitWidth extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderTopLeftFitWidth
      */
     public CssBorderTopLeftFitWidth() {
-		value = "overwrite";
+	value = "overwrite";
     }
-
+    
     /**
      * Create a new CssBorderTopLeftFitWidth
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderTopLeftFitWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderTopLeftFitWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderTopLeftFitWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderTopLeftFitWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderTopLeftFitWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderTopLeftFitWidth &&
 		value.equals(((CssBorderTopLeftFitWidth) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-top-left-fit-width";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("overwrite");
+	return value.equals("overwrite");
     }
-
+    
 }

Index: CssTextUlColor.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextUlColor.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextUlColor.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextUlColor.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssColor;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -48,7 +47,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextUlColor(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextUlColor(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	boolean correct = false;
@@ -78,6 +78,11 @@
 	}
     }
 
+    public CssTextUlColor(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssWordBreakInside.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssWordBreakInside.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssWordBreakInside.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssWordBreakInside.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -48,7 +48,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssWordBreakInside(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssWordBreakInside(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	
 	setByUser();
 	CssValue val = expression.getValue();
@@ -71,6 +72,11 @@
 	}
     }
 
+    public CssWordBreakInside(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssMarqueeStyle.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMarqueeStyle.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMarqueeStyle.java	24 Dec 2002 13:16:26 -0000	1.1
+++ CssMarqueeStyle.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 public class CssMarqueeStyle extends CssProperty {
 
@@ -39,7 +39,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssMarqueeStyle(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMarqueeStyle(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -59,6 +60,11 @@
 
     }
 
+    public CssMarqueeStyle(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderTopImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopImage.java	8 Jan 2003 10:13:38 -0000	1.1
+++ CssBorderTopImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,96 +8,102 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderTopImage extends CssProperty {
-
+    
     String value;
     ApplContext ac;
-	CssIdent none = new CssIdent("none");
-
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBorderTopImage
      */
     public CssBorderTopImage() {
-		value = "none";
+	value = "none";
     }
-
+    
     /**
      * Create new CssBorderTopImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderTopImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val instanceof CssIdent) {
-			if (val.equals(none)) {
-				value = "none";
-				expression.next();
-			} else if (val.equals(inherit)) {
-				value = "inherit";
-				expression.next();
-			}
-		} else if (val instanceof CssURL) {
-
-			value = val.toString();
-			expression.next();
-
-			val = expression.getValue();
-
-			if (val != null) {
-				if (val instanceof CssURL) {
-					value += " " + val.toString();
-					expression.next();
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-
-				expression.next();
-				val = expression.getValue();
-
-				if (val != null) {
-					if (val instanceof CssURL) {
-						value += " " + val.toString();
-						expression.next();
-					} else {
-						throw new InvalidParamException("value", expression.getValue(),
-							getPropertyName(), ac);
-					}
-				}
-			}
-		}
-		else {
+    public CssBorderTopImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssIdent) {
+	    if (val.equals(none)) {
+		value = "none";
+		expression.next();
+	    } else if (val.equals(inherit)) {
+		value = "inherit";
+		expression.next();
+	    }
+	} else if (val instanceof CssURL) {
+	    
+	    value = val.toString();
+	    expression.next();
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		if (val instanceof CssURL) {
+		    value += " " + val.toString();
+		    expression.next();
+		} else {
 		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+			    getPropertyName(), ac);
 		}
+		
+		expression.next();
+		val = expression.getValue();
+		
+		if (val != null) {
+		    if (val instanceof CssURL) {
+			value += " " + val.toString();
+			expression.next();
+		    } else {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
+		}
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBorderTopImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderTopImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderTopImage = this;
+	if (((Css3Style) style).cssBorderTopImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderTopImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -105,58 +111,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderTopImage();
-		} else {
-		    return ((Css3Style) style).cssBorderTopImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderTopImage();
+	} else {
+	    return ((Css3Style) style).cssBorderTopImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderTopImage &&
-                value.equals( ((CssBorderTopImage) property).value));
+	return (property instanceof CssBorderTopImage &&
+		value.equals( ((CssBorderTopImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-top-image";
+	return "border-top-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
 
 }

Index: CssResizer.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssResizer.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssResizer.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssResizer.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -48,7 +47,8 @@
     /** 
      * Create a new CssResizer
      */
-    public CssResizer(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssResizer(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	
 	setByUser();
 	CssValue val = expression.getValue();
@@ -83,6 +83,11 @@
 	}
     }
 
+    public CssResizer(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssBlockProgression.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBlockProgression.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBlockProgression.java	14 Jul 2003 14:50:15 -0000	1.1
+++ CssBlockProgression.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,133 +9,137 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 public class CssBlockProgression extends CssProperty implements CssOperator {
-
-   CssValue blockprog;
-   ApplContext ac;
-   CssIdent tb = new CssIdent("tb");
-   CssIdent rl = new CssIdent("rl");
-   CssIdent lr = new CssIdent("lr");
-
+    
+    CssValue blockprog;
+    ApplContext ac;
+    CssIdent tb = new CssIdent("tb");
+    CssIdent rl = new CssIdent("rl");
+    CssIdent lr = new CssIdent("lr");
+    
     /**
      * Create a new CssBlockProgression
      */
-   public CssBlockProgression() {
-       blockprog = tb;
-   }
-
-   /**
-    * Create a new CssBlockProgression
-    *
-    * @param expression The expression for this property
-    * @exception InvalidParamException Values are incorrect
-    */
-   public CssBlockProgression(ApplContext ac, CssExpression expression) throws InvalidParamException {
-       this.ac = ac;
-       setByUser(); // tell this property is set by the user
-       CssValue val = expression.getValue();
-
-       if (val.equals(tb)) {
-		   blockprog = val;
-		   expression.next();
-       }
-       else if (val.equals(rl)) {
-		   blockprog = val;
-		   expression.next();
-       }
-	   else if (val.equals(lr)) {
-		   blockprog = val;
-		   expression.next();
-       }
-       else if (val.equals(inherit)) {
-	       blockprog = inherit;
-	       expression.next();
-       }
-       else {
-	   		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-       }
-   }
-
+    public CssBlockProgression() {
+	blockprog = tb;
+    }
+    
+    /**
+     * Create a new CssBlockProgression
+     *
+     * @param expression The expression for this property
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssBlockProgression(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	this.ac = ac;
+	setByUser(); // tell this property is set by the user
+	CssValue val = expression.getValue();
+	
+	if (val.equals(tb)) {
+	    blockprog = val;
+	    expression.next();
+	}
+	else if (val.equals(rl)) {
+	    blockprog = val;
+	    expression.next();
+	}
+	else if (val.equals(lr)) {
+	    blockprog = val;
+	    expression.next();
+	}
+	else if (val.equals(inherit)) {
+	    blockprog = inherit;
+	    expression.next();
+	}
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+	}
+    }
+    
+    public CssBlockProgression(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
-     public void addToStyle(ApplContext ac, CssStyle style) {
-	 if (((Css3Style) style).cssBlockProgression != null)
-	     style.addRedefinitionWarning(ac, this);
-	 ((Css3Style) style).cssBlockProgression = this;
-     }
-
-      /**
-       * Get this property in the style.
-       *
-       * @param style The style where the property is
-       * @param resolve if true, resolve the style to find this property
-       */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getBlockProgression();
-	    } else {
-		return ((Css3Style) style).cssBlockProgression;
-	    }
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssBlockProgression != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBlockProgression = this;
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getBlockProgression();
+	} else {
+	    return ((Css3Style) style).cssBlockProgression;
 	}
-
-       /**
-        * Compares two properties for equality.
-        *
-        * @param value The other property.
-        */
-       public boolean equals(CssProperty property) {
-	   return (property instanceof CssBlockProgression &&
-                blockprog.equals( ((CssBlockProgression) property).blockprog));
-       }
-
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssBlockProgression &&
+		blockprog.equals( ((CssBlockProgression) property).blockprog));
+    }
+    
     /**
      * Returns the name of this property
      */
-   public String getPropertyName() {
-       return "block-progression";
-   }
-
+    public String getPropertyName() {
+	return "block-progression";
+    }
+    
     /**
      * Returns the value of this property
      */
-   public Object get() {
-       return blockprog;
-   }
-
+    public Object get() {
+	return blockprog;
+    }
+    
     /**
      * Returns true if this property is "softly" inherited
      */
-   public boolean isSoftlyInherited() {
-       return blockprog.equals("inherit");
-   }
-
-   /**
-    * Returns a string representation of the object
-    */
-   public String toString() {
-       return blockprog.toString();
-   }
-
+    public boolean isSoftlyInherited() {
+	return blockprog.equals("inherit");
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return blockprog.toString();
+    }
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
-   public boolean isDefault() {
-       return blockprog.equals(new CssIdent("tb"));
-   }
-
+    public boolean isDefault() {
+	return blockprog.equals(new CssIdent("tb"));
+    }
+    
 }
 

Index: CssIcon.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssIcon.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssIcon.java	18 Dec 2002 09:18:18 -0000	1.1
+++ CssIcon.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -10,15 +10,15 @@
 package org.w3c.css.properties3;
 import java.util.Vector;
 
-import org.w3c.css.properties.CssProperty;
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssURL;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -45,45 +45,51 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssIcon(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		CssValue val = expression.getValue();
-		char op = expression.getOperator();
-
-		setByUser();
-		boolean correct = false;
-
-
-		if (val.equals(inherit)) {
-			inheritedValue = true;
-		    icon = inherit;
-		    expression.next();
-		    return;
-		} else if (val.equals(auto)) {
-			icon = auto;
-			expression.next();
-			return;
-		}
-
-		while (val != null) {
-		    if (val instanceof CssURL) {
-		    	uris.addElement(val);
-		    	expression.next();
-		    	val = expression.getValue();
-		    	op = expression.getOperator();
-				correct = true;
-			} else {
-				throw new InvalidParamException("value",
-					val.toString(), getPropertyName(), ac);
-			}
-		}
-
-		if (!correct) {
-			throw new InvalidParamException("value",
-						val.toString(), getPropertyName(), ac);
-		}
+    public CssIcon(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	CssValue val = expression.getValue();
+	char op = expression.getOperator();
+	
+	setByUser();
+	boolean correct = false;
+	
+	
+	if (val.equals(inherit)) {
+	    inheritedValue = true;
+	    icon = inherit;
+	    expression.next();
+	    return;
+	} else if (val.equals(auto)) {
+	    icon = auto;
+	    expression.next();
+	    return;
+	}
+	
+	while (val != null) {
+	    if (val instanceof CssURL) {
+		uris.addElement(val);
+		expression.next();
+		val = expression.getValue();
+		op = expression.getOperator();
+		correct = true;
+	    } else {
+		throw new InvalidParamException("value",
+			val.toString(), getPropertyName(), ac);
+	    }
+	}
+	
+	if (!correct) {
+	    throw new InvalidParamException("value",
+		    val.toString(), getPropertyName(), ac);
+	}
     }
-
+    
+    public CssIcon(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssLineBreak.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineBreak.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineBreak.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssLineBreak.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -49,7 +49,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssLineBreak(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssLineBreak(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -72,6 +73,11 @@
 	}
     }
 
+    public CssLineBreak(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssDisplayRole.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssDisplayRole.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssDisplayRole.java	24 Dec 2002 13:06:42 -0000	1.2
+++ CssDisplayRole.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -55,7 +55,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssDisplayRole(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssDisplayRole(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -74,6 +75,11 @@
 	}
     }
 
+    public CssDisplayRole(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssCrop.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssCrop.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssCrop.java	24 Dec 2002 13:12:28 -0000	1.1
+++ CssCrop.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,18 +9,17 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssFunction;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssFunction;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -38,181 +37,187 @@
  */
 
 public class CssCrop extends CssProperty implements CssOperator {
-
-   String crop;
+    
+    String crop;
     ApplContext ac;
     CssIdent none = new CssIdent("none");
-	CssIdent initial = new CssIdent("initial");
-
+    CssIdent initial = new CssIdent("initial");
+    
     /**
      * Create a new CssCrop
      */
-   public CssCrop() {
-       crop = "none";
-   }
-
-   /**
-    * Create a new CssCrop
-    *
-    * @param expression The expression for this property
-    * @exception InvalidParamException Values are incorrect
-    */
-   public CssCrop(ApplContext ac, CssExpression expression) throws InvalidParamException {
-       this.ac = ac;
-       setByUser(); // tell this property is set by the user
-       CssValue val = expression.getValue();
-
-		if (val instanceof CssFunction) {
-		    CssFunction fun = (CssFunction) val;
-		    CssExpression params = fun.getParameters();
-
-			CssValue v;
-
-		    if (fun.getName().equals("rect")) {
-				if (params.getCount() == 4) {
-
-					crop = "rect(";
-
-					for (int i =0; i < 4; i++) {
-						v = params.getValue();
-				    	if (!(v instanceof CssLength || v instanceof CssPercentage) ) {
-				    		throw new InvalidParamException("value", params.getValue(),
-								    getPropertyName(), ac);
-						} else {
-							if (i == 0)
-								crop += v.toString();
-							else
-								crop += ", " + v.toString();
-						}
-						params.next();
-					}
-
-				} else {
-				    throw new InvalidParamException("value", params.getValue(),
-								    getPropertyName(), ac);
-				}
-		    } else if (fun.getName().equals("inset-rect")) {
-
-				if (params.getCount() == 4) {
-
-					crop = "inset-rect(";
-
-					for (int i =0; i < 4; i++) {
-						v = params.getValue();
-				    	if (!(v instanceof CssLength || v instanceof CssPercentage) ) {
-				    		throw new InvalidParamException("value", params.getValue(),
-								    getPropertyName(), ac);
-						} else {
-							if (i == 0)
-								crop += v.toString();
-							else
-								crop += ", " + v.toString();
-						}
-						params.next();
-					}
-
-				} else {
-				    throw new InvalidParamException("value", params.getValue(),
-								    getPropertyName(), ac);
-				}
+    public CssCrop() {
+	crop = "none";
+    }
+    
+    /**
+     * Create a new CssCrop
+     *
+     * @param expression The expression for this property
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssCrop(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	this.ac = ac;
+	setByUser(); // tell this property is set by the user
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssFunction) {
+	    CssFunction fun = (CssFunction) val;
+	    CssExpression params = fun.getParameters();
+	    
+	    CssValue v;
+	    
+	    if (fun.getName().equals("rect")) {
+		if (params.getCount() == 4) {
+		    
+		    crop = "rect(";
+		    
+		    for (int i =0; i < 4; i++) {
+			v = params.getValue();
+			if (!(v instanceof CssLength || v instanceof CssPercentage) ) {
+			    throw new InvalidParamException("value", params.getValue(),
+				    getPropertyName(), ac);
+			} else {
+			    if (i == 0)
+				crop += v.toString();
+			    else
+				crop += ", " + v.toString();
 			}
-		    else throw new InvalidParamException("value", expression.getValue(),
-							 getPropertyName(), ac);
-
-			crop += ")";
-		    expression.next();
-		    return;
-	   }
-       else if (val instanceof CssIdent) {
-           if (val.equals(inherit)) {
-	       	 	crop = "inherit";
-	       		expression.next();
-           } else if (val.equals(none)) {
-			  	crop = "none";
-			  	expression.next();
-		   } else if (val.equals(initial)) {
-				crop = "initial";
-				expression.next();
-		   } else {
-				throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-		   }
-       }
-       else {
-	   		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-       }
-   }
-
+			params.next();
+		    }
+		    
+		} else {
+		    throw new InvalidParamException("value", params.getValue(),
+			    getPropertyName(), ac);
+		}
+	    } else if (fun.getName().equals("inset-rect")) {
+		
+		if (params.getCount() == 4) {
+		    
+		    crop = "inset-rect(";
+		    
+		    for (int i =0; i < 4; i++) {
+			v = params.getValue();
+			if (!(v instanceof CssLength || v instanceof CssPercentage) ) {
+			    throw new InvalidParamException("value", params.getValue(),
+				    getPropertyName(), ac);
+			} else {
+			    if (i == 0)
+				crop += v.toString();
+			    else
+				crop += ", " + v.toString();
+			}
+			params.next();
+		    }
+		    
+		} else {
+		    throw new InvalidParamException("value", params.getValue(),
+			    getPropertyName(), ac);
+		}
+	    }
+	    else throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	    
+	    crop += ")";
+	    expression.next();
+	    return;
+	}
+	else if (val instanceof CssIdent) {
+	    if (val.equals(inherit)) {
+		crop = "inherit";
+		expression.next();
+	    } else if (val.equals(none)) {
+		crop = "none";
+		expression.next();
+	    } else if (val.equals(initial)) {
+		crop = "initial";
+		expression.next();
+	    } else {
+		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+	}
+    }
+    
+    public CssCrop(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
-     public void addToStyle(ApplContext ac, CssStyle style) {
-	 if (((Css3Style) style).cssCrop != null)
-	     style.addRedefinitionWarning(ac, this);
-	 ((Css3Style) style).cssCrop = this;
-     }
-
-      /**
-       * Get this property in the style.
-       *
-       * @param style The style where the property is
-       * @param resolve if true, resolve the style to find this property
-       */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getCrop();
-	    } else {
-		return ((Css3Style) style).cssCrop;
-	    }
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssCrop != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssCrop = this;
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getCrop();
+	} else {
+	    return ((Css3Style) style).cssCrop;
 	}
-
-       /**
-        * Compares two properties for equality.
-        *
-        * @param value The other property.
-        */
-       public boolean equals(CssProperty property) {
-	   return (property instanceof CssCrop &&
-                crop.equals( ((CssCrop) property).crop));
-       }
-
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssCrop &&
+		crop.equals( ((CssCrop) property).crop));
+    }
+    
     /**
      * Returns the name of this property
      */
-   public String getPropertyName() {
-       return "crop";
-   }
-
+    public String getPropertyName() {
+	return "crop";
+    }
+    
     /**
      * Returns the value of this property
      */
-   public Object get() {
-       return crop;
-   }
-
+    public Object get() {
+	return crop;
+    }
+    
     /**
      * Returns true if this property is "softly" inherited
      */
-   public boolean isSoftlyInherited() {
-       return crop.equals("inherit");
-   }
-
-   /**
-    * Returns a string representation of the object
-    */
-   public String toString() {
-       return crop;
-   }
-
+    public boolean isSoftlyInherited() {
+	return crop.equals("inherit");
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return crop;
+    }
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
-   public boolean isDefault() {
-       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       return crop == cssnum.toString();
-   }
-
+    public boolean isDefault() {
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return crop == cssnum.toString();
+    }
+    
 }
 

Index: CssLineStackingShift.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineStackingShift.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineStackingShift.java	20 Aug 2002 13:53:41 -0000	1.1
+++ CssLineStackingShift.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -41,7 +41,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssLineStackingShift(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssLineStackingShift(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -64,6 +65,11 @@
 	}
     }
 
+    public CssLineStackingShift(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssWordSpacingCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssWordSpacingCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssWordSpacingCSS3.java	9 Aug 2002 12:29:14 -0000	1.1
+++ CssWordSpacingCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/08/09 12:29:14  sijtsche
  * extra value for word-spacing added, therefore separate CSS3 version
  *
@@ -34,14 +44,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *   <H4>
@@ -86,7 +96,8 @@
      * @param expression The expression
      * @exception InvalidParamException The expression is incorrect
      */
-    public CssWordSpacingCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssWordSpacingCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -112,6 +123,11 @@
 	}
     }
 
+    public CssWordSpacingCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssMaxHeightCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMaxHeightCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMaxHeightCSS3.java	24 Dec 2002 13:18:37 -0000	1.1
+++ CssMaxHeightCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,15 +9,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  */
@@ -41,7 +41,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssMaxHeightCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMaxHeightCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -69,6 +70,11 @@
 	expression.next();
     }
 
+    public CssMaxHeightCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssHeightCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssHeightCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssHeightCSS3.java	24 Dec 2002 13:18:36 -0000	1.1
+++ CssHeightCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/12/24 13:18:36  sijtsche
  * new version for CSS3: value initial added
  *
@@ -37,15 +47,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *   <H4>
@@ -97,7 +107,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException The expression is incorrect
      */
-    public CssHeightCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssHeightCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -124,6 +135,11 @@
 	expression.next();
     }
 
+    public CssHeightCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssRenderIntent.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssRenderIntent.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssRenderIntent.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssRenderIntent.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,13 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * <P>
@@ -29,131 +29,136 @@
  * This property permits the specification of a color profile rendering intent other than the default.
  * The behavior of values other than auto and inherent are defined by the International Color Consortium standard.
  */
-
-    public class CssRenderIntent extends CssProperty {
-
-	CssValue renderintent;
-
-	static CssIdent auto = new CssIdent("auto");
-	static CssIdent abscolorimetric = new CssIdent("absolute-colorimetric");
-	static CssIdent relcolorimetric = new CssIdent("relative-colorimetric");
-	static CssIdent saturation = new CssIdent("saturation");
-	static CssIdent perceptual = new CssIdent("perceptual");
-
-	/**
-	 * Create a new CssRenderIntent
-	 */
-	public CssRenderIntent() {
+public class CssRenderIntent extends CssProperty {
+    
+    CssValue renderintent;
+    
+    static CssIdent auto = new CssIdent("auto");
+    static CssIdent abscolorimetric = new CssIdent("absolute-colorimetric");
+    static CssIdent relcolorimetric = new CssIdent("relative-colorimetric");
+    static CssIdent saturation = new CssIdent("saturation");
+    static CssIdent perceptual = new CssIdent("perceptual");
+    
+    /**
+     * Create a new CssRenderIntent
+     */
+    public CssRenderIntent() {
+	renderintent = auto;
+    }
+    
+    /**
+     * Create a new CssRenderIntent
+     *
+     *
+     */
+    public CssRenderIntent(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	if (val.equals(auto)) {
 	    renderintent = auto;
+	    expression.next();
 	}
-
-	/**
-	 * Create a new CssRenderIntent
-	 *
-	 *
-	 */
-	public CssRenderIntent(ApplContext ac, CssExpression expression) throws InvalidParamException {
-	    setByUser();
-	    CssValue val = expression.getValue();
-	    if (val.equals(auto)) {
-		renderintent = auto;
-		expression.next();
-	    }
-	    else if (val.equals(perceptual)) {
-		renderintent = perceptual;
-		expression.next();
-	    }
-	    else if (val.equals(relcolorimetric)) {
-		renderintent = relcolorimetric;
-		expression.next();
-	    }
-	    else if (val.equals(saturation)) {
-		renderintent = saturation;
-		expression.next();
-	    }
-	    else if (val.equals(abscolorimetric)) {
-		renderintent = abscolorimetric;
-		expression.next();
-	    }
-	    else if (val.equals(inherit)) {
-		renderintent = inherit;
-		expression.next();
-	    }
-	    else {
-		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-	    }
-	}
-
-	/**
-	 * Add this property to the CssStyle.
-	 *
-	 * @param style The CssStyle
-	 */
-	public void addToStyle(ApplContext ac, CssStyle style) {
-	    if (((Css3Style) style).cssRenderIntent != null)
-		style.addRedefinitionWarning(ac, this);
-	    ((Css3Style) style).cssRenderIntent = this;
-
-	}
-
-	/**
-	 * Get this property in the style.
-	 *
-	 * @param style The style where the property is
-	 * @param resolve if true, resolve the style to find this property
-	 */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getRenderIntent();
-	    } else {
-		return ((Css3Style) style).cssRenderIntent;
-	    }
+	else if (val.equals(perceptual)) {
+	    renderintent = perceptual;
+	    expression.next();
 	}
-
-	/**
-	 * Compares two properties for equality.
-	 *
-	 * @param value The other property.
-	 */
-	public boolean equals(CssProperty property) {
-	    return (property instanceof CssRenderIntent &&
-		    renderintent.equals( ((CssRenderIntent) property).renderintent));
+	else if (val.equals(relcolorimetric)) {
+	    renderintent = relcolorimetric;
+	    expression.next();
 	}
-
-	/**
-	 * Returns the name of this property
-	 */
-	public String getPropertyName() {
-	    return "rendering-intent";
+	else if (val.equals(saturation)) {
+	    renderintent = saturation;
+	    expression.next();
 	}
-
-	/**
-	 * Returns the value of this property
-	 */
-	public Object get() {
-	    return renderintent;
+	else if (val.equals(abscolorimetric)) {
+	    renderintent = abscolorimetric;
+	    expression.next();
 	}
-
-	/**
-	 * Returns true if this property is "softly" inherited
-	 */
-	public boolean isSoftlyInherited() {
-	    return renderintent.equals(inherit);
+	else if (val.equals(inherit)) {
+	    renderintent = inherit;
+	    expression.next();
 	}
-
-	/**
-	 * Returns a string representation of the object
-	 */
-	public String toString() {
-	    return renderintent.toString();
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
 	}
-
-	/**
-	 * Is the value of this property a default value
-	 * It is used by all macro for the function <code>print</code>
-	 */
-	public boolean isDefault() {
-	    return renderintent == auto;
+    }
+    
+    public CssRenderIntent(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssRenderIntent != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssRenderIntent = this;
+	
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getRenderIntent();
+	} else {
+	    return ((Css3Style) style).cssRenderIntent;
 	}
-
     }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssRenderIntent &&
+		renderintent.equals( ((CssRenderIntent) property).renderintent));
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "rendering-intent";
+    }
+    
+    /**
+     * Returns the value of this property
+     */
+    public Object get() {
+	return renderintent;
+    }
+    
+    /**
+     * Returns true if this property is "softly" inherited
+     */
+    public boolean isSoftlyInherited() {
+	return renderintent.equals(inherit);
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return renderintent.toString();
+    }
+    
+    /**
+     * Is the value of this property a default value
+     * It is used by all macro for the function <code>print</code>
+     */
+    public boolean isDefault() {
+	return renderintent == auto;
+    }
+    
+}

Index: CssTextCombine.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextCombine.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextCombine.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextCombine.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,7 +50,8 @@
      * @param expression The expression for this parameter
      * @exception InvalidParamException Incorrect value
      */
-    public CssTextCombine(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextCombine(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -77,6 +78,11 @@
 	}
     }
 
+    public CssTextCombine(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderCornerImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderCornerImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderCornerImage.java	8 Jan 2003 10:18:44 -0000	1.1
+++ CssBorderCornerImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,99 +8,102 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderCornerImage extends CssProperty {
-
+    
     String value = "";
     ApplContext ac;
-	CssIdent none = new CssIdent("none");
-	CssIdent cont = new CssIdent("continue");
-
+    CssIdent none = new CssIdent("none");
+    CssIdent cont = new CssIdent("continue");
+    
     /**
      * Create new CssBorderCornerImage
      */
     public CssBorderCornerImage() {
-		value = "none";
+	value = "none";
     }
-
+    
     /**
      * Create new CssBorderCornerImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderCornerImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = null;
-
-		if (!(expression.getCount() <= 4)) {
-		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-		}
-
-		if (expression.getCount() == 1) {
-			if (val.equals(cont)) {
-				value = "continue";
-			} else if (val.equals(none)) {
-				value = "none";
-			} else if (val instanceof CssURL) {
-				value = val.toString();
-			} else {
-				throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-			}
+    public CssBorderCornerImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = null;
+	
+	if (!(expression.getCount() <= 4)) {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	if (expression.getCount() == 1) {
+	    if (val.equals(cont)) {
+		value = "continue";
+	    } else if (val.equals(none)) {
+		value = "none";
+	    } else if (val instanceof CssURL) {
+		value = val.toString();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	} else {
+	    
+	    for (int i=0; i < expression.getCount(); i++) {
+		
+		val = expression.getValue();
+		
+		if (val != null) {
+		    if (val.equals(cont)) {
+			value += "continue ";
+		    } else if (val instanceof CssURL) {
+			value += val.toString() + " ";
+		    } else {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
+		    
 		} else {
-
-			for (int i=0; i < expression.getCount(); i++) {
-
-				val = expression.getValue();
-
-				if (val != null) {
-					if (val.equals(cont)) {
-						value += "continue ";
-					} else if (val instanceof CssURL) {
-						value += val.toString() + " ";
-					} else {
-						throw new InvalidParamException("value", expression.getValue(),
-							getPropertyName(), ac);
-					}
-
-				} else {
-					break;
-				}
-
-				expression.next();
-			}
-
+		    break;
 		}
-
-		value = value.trim();
-
-
+		
+		expression.next();
+	    }
+	    
+	}	
+	value = value.trim();		
     }
-
+ 
+    public CssBorderCornerImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderCornerImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderCornerImage = this;
+	if (((Css3Style) style).cssBorderCornerImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderCornerImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -108,58 +111,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderCornerImage();
-		} else {
-		    return ((Css3Style) style).cssBorderCornerImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderCornerImage();
+	} else {
+	    return ((Css3Style) style).cssBorderCornerImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderCornerImage &&
-                value.equals( ((CssBorderCornerImage) property).value));
+	return (property instanceof CssBorderCornerImage &&
+		value.equals( ((CssBorderCornerImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-corner-image";
+	return "border-corner-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: CssDropInitialAfterAdjust.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssDropInitialAfterAdjust.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssDropInitialAfterAdjust.java	20 Aug 2002 13:53:40 -0000	1.1
+++ CssDropInitialAfterAdjust.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -58,7 +58,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssDropInitialAfterAdjust(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssDropInitialAfterAdjust(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -90,6 +91,11 @@
 					    getPropertyName(), ac);
 	}
     }
+    
+    public CssDropInitialAfterAdjust(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle

Index: CssTextSpace.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextSpace.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextSpace.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextSpace.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextSpace(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextSpace(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	if (val.equals(normal)) {
@@ -66,10 +67,16 @@
 	    expression.next();
 	}
 	else {
-	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+	    throw new InvalidParamException("value", val.toString(),
+		    getPropertyName(), ac);
 	}
     }
 
+    public CssTextSpace(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssMarqueeSpeed.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMarqueeSpeed.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMarqueeSpeed.java	24 Dec 2002 13:16:26 -0000	1.1
+++ CssMarqueeSpeed.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssTime;
-import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
+import org.w3c.css.values.CssValue;
 
 public class CssMarqueeSpeed extends CssProperty {
 
@@ -40,7 +40,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssMarqueeSpeed(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMarqueeSpeed(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -63,16 +64,16 @@
 	else if (val instanceof CssLength) {
 	    mspeed = val.toString();
 	    expression.next();
-
+	    
 	    val = expression.getValue();
 	    if (val != null) {
-			if (val instanceof CssTime) {
-				mspeed = mspeed += " " + val.toString();
-				expression.next();
-			} else {
-				throw new InvalidParamException("value", expression.getValue(), getPropertyName(), ac);
-			}
+		if (val instanceof CssTime) {
+		    mspeed = mspeed += " " + val.toString();
+		    expression.next();
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(), getPropertyName(), ac);
 		}
+	    }
 	}
 	else if (val.equals(inherit)) {
 	    mspeed = "inherit";
@@ -80,12 +81,17 @@
 	}
 	else {
 	    throw new InvalidParamException("value",
-					    expression.getValue(),
-					    getPropertyName(), ac);
+		    expression.getValue(),
+		    getPropertyName(), ac);
 	}
-
+	
     }
 
+    public CssMarqueeSpeed(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssFit.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssFit.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssFit.java	24 Dec 2002 13:13:01 -0000	1.2
+++ CssFit.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -53,7 +53,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssFit(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssFit(ApplContext ac, CssExpression expression, boolean check)
+    	throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -72,6 +73,11 @@
 	}
     }
 
+    public CssFit(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: MediaMinHeight.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMinHeight.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMinHeight.java	8 Jan 2003 10:01:44 -0000	1.1
+++ MediaMinHeight.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:01:44  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,7 +79,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMinHeight(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public MediaMinHeight(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 		CssValue val = null;
 
 		if (expression != null) {
@@ -98,6 +108,11 @@
 		}
     }
 
+    public MediaMinHeight(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssColorProfile.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColorProfile.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColorProfile.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssColorProfile.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,15 +8,14 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssColor;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 /**
  * <P>
@@ -27,7 +26,8 @@
  * <EM>Percentages:</EM>no<BR>
  * <EM>Media:</EM>visual
  * <P>
- * This property permits the specification of a source color profile other than the default.
+ * This property permits the specification of a source color profile other
+ *  than the default.
  */
 
     public class CssColorProfile extends CssProperty {
@@ -49,7 +49,8 @@
 	 * @param expression The expression for this property
 	 * @exception InvalidParamException Values are incorrect
 	 */
-	public CssColorProfile(ApplContext ac, CssExpression expression) throws InvalidParamException {
+	public CssColorProfile(ApplContext ac, CssExpression expression,
+		boolean check) throws InvalidParamException {
 	    setByUser();
 	    CssValue val = expression.getValue();
 	    if (val instanceof CssIdent) {
@@ -62,7 +63,8 @@
 		    expression.next();
 		}
 		else {
-		    colorprofile = new org.w3c.css.values.CssColor(ac, (String) val.get());
+		    colorprofile = new org.w3c.css.values.CssColor(ac,
+			    (String) val.get());
 		    expression.next();
 		}
 	    }
@@ -75,10 +77,16 @@
 		expression.next();
 	    }
 	    else {
-		throw new InvalidParamException("value", expression.getValue(), getPropertyName(), ac);
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
 	    }  
         }
 	
+	public CssColorProfile(ApplContext ac, CssExpression expression)
+		throws InvalidParamException {
+	    this(ac, expression, false);
+	}
+	
 	/**
 	 * Add this property to the CssStyle.
 	 *

Index: CssTextOverLine.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextOverLine.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextOverLine.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextOverLine.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,7 +49,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextOverLine(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextOverLine(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	CssValue val = expression.getValue();
 	int maxvalues = 3;
@@ -106,6 +106,11 @@
 	}
     }
 
+    public CssTextOverLine(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssPunctuationTrim.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssPunctuationTrim.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssPunctuationTrim.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssPunctuationTrim.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssPunctuationTrim(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssPunctuationTrim(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	if (val.equals(none)) {
@@ -70,6 +71,11 @@
 	}
     }
 
+    public CssPunctuationTrim(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssColumnCount.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnCount.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnCount.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssColumnCount.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -49,7 +49,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssColumnCount(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssColumnCount(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -69,6 +70,11 @@
 	}
     }
 
+    public CssColumnCount(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssColumnPadding.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnPadding.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnPadding.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssColumnPadding.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -45,7 +44,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssColumnPadding(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssColumnPadding(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -65,6 +65,11 @@
 	}
     }
 
+    public CssColumnPadding(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssLineGridMode.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineGridMode.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineGridMode.java	15 Aug 2002 09:07:45 -0000	1.1
+++ CssLineGridMode.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,13 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -40,7 +40,8 @@
 	 *
 	 *
 	 */
-	public CssLineGridMode(ApplContext ac, CssExpression expression) throws InvalidParamException {
+	public CssLineGridMode(ApplContext ac, CssExpression expression,
+		boolean check) throws InvalidParamException {
 	    setByUser();
 	    CssValue val = expression.getValue();
 	    if (val.equals(none)) {
@@ -65,6 +66,11 @@
 	    }
 	}
 
+	public CssLineGridMode(ApplContext ac, CssExpression expression)
+		throws InvalidParamException {
+	    this(ac, expression, false);
+	}
+	
 	/**
 	 * Add this property to the CssStyle.
 	 *

Index: CssBorderBottomImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomImage.java	8 Jan 2003 10:13:38 -0000	1.1
+++ CssBorderBottomImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,96 +8,102 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderBottomImage extends CssProperty {
-
+    
     String value;
     ApplContext ac;
-	CssIdent none = new CssIdent("none");
-
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBorderBottomImage
      */
     public CssBorderBottomImage() {
-		value = "none";
+	value = "none";
     }
-
+    
     /**
      * Create new CssBorderBottomImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderBottomImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val instanceof CssIdent) {
-			if (val.equals(none)) {
-				value = "none";
-				expression.next();
-			} else if (val.equals(inherit)) {
-				value = "inherit";
-				expression.next();
-			}
-		} else if (val instanceof CssURL) {
-
-			value = val.toString();
-			expression.next();
-
-			val = expression.getValue();
-
-			if (val != null) {
-				if (val instanceof CssURL) {
-					value += " " + val.toString();
-					expression.next();
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-
-				expression.next();
-				val = expression.getValue();
-
-				if (val != null) {
-					if (val instanceof CssURL) {
-						value += " " + val.toString();
-						expression.next();
-					} else {
-						throw new InvalidParamException("value", expression.getValue(),
-							getPropertyName(), ac);
-					}
-				}
-			}
-		}
-		else {
+    public CssBorderBottomImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssIdent) {
+	    if (val.equals(none)) {
+		value = "none";
+		expression.next();
+	    } else if (val.equals(inherit)) {
+		value = "inherit";
+		expression.next();
+	    }
+	} else if (val instanceof CssURL) {
+	    
+	    value = val.toString();
+	    expression.next();
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		if (val instanceof CssURL) {
+		    value += " " + val.toString();
+		    expression.next();
+		} else {
 		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+			    getPropertyName(), ac);
+		}
+		
+		expression.next();
+		val = expression.getValue();
+		
+		if (val != null) {
+		    if (val instanceof CssURL) {
+			value += " " + val.toString();
+			expression.next();
+		    } else {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
 		}
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBorderBottomImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderBottomImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderBottomImage = this;
+	if (((Css3Style) style).cssBorderBottomImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderBottomImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -105,58 +111,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderBottomImage();
-		} else {
-		    return ((Css3Style) style).cssBorderBottomImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderBottomImage();
+	} else {
+	    return ((Css3Style) style).cssBorderBottomImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderBottomImage &&
-                value.equals( ((CssBorderBottomImage) property).value));
+	return (property instanceof CssBorderBottomImage &&
+		value.equals( ((CssBorderBottomImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-bottom-image";
+	return "border-bottom-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: Css3Properties.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/Css3Properties.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- Css3Properties.java	12 Jul 2005 14:47:55 -0000	1.2
+++ Css3Properties.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -12,27 +12,27 @@
 import org.w3c.css.util.Utf8Properties;
 
 public class Css3Properties {
-
-	public static Utf8Properties properties;
-
-   public static String getString(CssProperty property, String prop) {
-		return properties.getProperty(property.getPropertyName() + "." + prop);
-   }
-
-   public static boolean getInheritance(CssProperty property) {
-      return getString(property, "inherited").equals("true");
-   }
-
-   static {
-		properties = new Utf8Properties();
-      try {
-			URL url = Css3Properties.class
-					.getResource("CSS3Default.properties");
-        properties.load(url.openStream());
-		} catch (Exception e) {
-			System.err
-					.println("org.w3c.css.properties3.Css3Properties: couldn't load properties ");
-			System.err.println("  " + e.toString());
-      }
-   }
+    
+    public static Utf8Properties properties;
+    
+    public static String getString(CssProperty property, String prop) {
+	return properties.getProperty(property.getPropertyName() + "." + prop);
+    }
+    
+    public static boolean getInheritance(CssProperty property) {
+	return getString(property, "inherited").equals("true");
+    }
+    
+    static {
+	properties = new Utf8Properties();
+	try {
+	    URL url = Css3Properties.class
+	    .getResource("CSS3Default.properties");
+	    properties.load(url.openStream());
+	} catch (Exception e) {
+	    System.err
+	    .println("org.w3c.css.properties3.Css3Properties: couldn't load properties ");
+	    System.err.println("  " + e.toString());
+	}
+    }
 }

Index: CssOutlineOffset.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssOutlineOffset.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssOutlineOffset.java	20 Dec 2002 15:58:14 -0000	1.1
+++ CssOutlineOffset.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 public class CssOutlineOffset extends CssProperty {
 
@@ -38,7 +38,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssOutlineOffset(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssOutlineOffset(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	this.ac = ac;
 	setByUser();
@@ -56,6 +57,11 @@
 	}
     }
 
+    public CssOutlineOffset(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssScript.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssScript.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- CssScript.java	24 Dec 2002 12:31:24 -0000	1.3
+++ CssScript.java	8 Aug 2005 13:18:54 -0000	1.4
@@ -8,132 +8,136 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssString;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *
  */
-
-    public class CssScript extends CssProperty {
-
-	CssValue script;
-
-	private static CssIdent auto = new CssIdent("auto");
-	private static CssIdent none = new CssIdent("none");
-
-	/**
-	 * Create a new CssScript
-	 */
-	public CssScript() {
+public class CssScript extends CssProperty {
+    
+    CssValue script;
+    
+    private static CssIdent auto = new CssIdent("auto");
+    private static CssIdent none = new CssIdent("none");
+    
+    /**
+     * Create a new CssScript
+     */
+    public CssScript() {
+	script = auto;
+    }
+    
+    /**
+     * Create a new CssScript
+     *
+     *
+     */
+    public CssScript(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	if (val.equals(auto)) {
 	    script = auto;
+	    expression.next();
 	}
-
-	/**
-	 * Create a new CssScript
-	 *
-	 *
-	 */
-	public CssScript(ApplContext ac, CssExpression expression) throws InvalidParamException {
-	    setByUser();
-	    CssValue val = expression.getValue();
-	    if (val.equals(auto)) {
-			script = auto;
-			expression.next();
-	    }
-	    else if (val.equals(none)) {
-			script = none;
-			expression.next();
-	    }
-	    else if (val.equals(inherit)) {
-			script = inherit;
-			expression.next();
-	    }
-	    else if (val instanceof CssIdent) {
-			script = val;
-			expression.next();
-		}
-	    else {
-		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-	    }
-	}
-
-	/**
-	 * Add this property to the CssStyle.
-	 *
-	 * @param style The CssStyle
-	 */
-	public void addToStyle(ApplContext ac, CssStyle style) {
-	    if (((Css3Style) style).cssScript != null)
-		style.addRedefinitionWarning(ac, this);
-	    ((Css3Style) style).cssScript = this;
-
-	}
-
-	/**
-	 * Get this property in the style.
-	 *
-	 * @param style The style where the property is
-	 * @param resolve if true, resolve the style to find this property
-	 */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getScript();
-	    } else {
-		return ((Css3Style) style).cssScript;
-	    }
-	}
-
-	/**
-	 * Compares two properties for equality.
-	 *
-	 * @param value The other property.
-	 */
-	public boolean equals(CssProperty property) {
-	    return (property instanceof CssScript &&
-		    script.equals( ((CssScript) property).script));
-	}
-
-	/**
-	 * Returns the name of this property
-	 */
-	public String getPropertyName() {
-	    return "text-script";
+	else if (val.equals(none)) {
+	    script = none;
+	    expression.next();
 	}
-
-	/**
-	 * Returns the value of this property
-	 */
-	public Object get() {
-	    return script;
+	else if (val.equals(inherit)) {
+	    script = inherit;
+	    expression.next();
 	}
-
-	/**
-	 * Returns true if this property is "softly" inherited
-	 */
-	public boolean isSoftlyInherited() {
-	    return script.equals(inherit);
+	else if (val instanceof CssIdent) {
+	    script = val;
+	    expression.next();
 	}
-
-	/**
-	 * Returns a string representation of the object
-	 */
-	public String toString() {
-	    return script.toString();
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
 	}
-
-	/**
-	 * Is the value of this property a default value
-	 * It is used by all macro for the function <code>print</code>
-	 */
-	public boolean isDefault() {
-	    return script == auto;
+    }
+    
+    public CssScript(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssScript != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssScript = this;
+	
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getScript();
+	} else {
+	    return ((Css3Style) style).cssScript;
 	}
-
     }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssScript &&
+		script.equals( ((CssScript) property).script));
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "text-script";
+    }
+    
+    /**
+     * Returns the value of this property
+     */
+    public Object get() {
+	return script;
+    }
+    
+    /**
+     * Returns true if this property is "softly" inherited
+     */
+    public boolean isSoftlyInherited() {
+	return script.equals(inherit);
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return script.toString();
+    }
+    
+    /**
+     * Is the value of this property a default value
+     * It is used by all macro for the function <code>print</code>
+     */
+    public boolean isDefault() {
+	return script == auto;
+    }
+    
+}

Index: CssTextIndentCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextIndentCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextIndentCSS3.java	11 Jul 2003 14:08:42 -0000	1.1
+++ CssTextIndentCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/07/11 14:08:42  sijtsche
  * text-indent added as CSS3 property (different from other versions)
  *
@@ -34,16 +44,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *   <H4>
@@ -84,27 +93,33 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssTextIndentCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextIndentCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
-
+	
 	setByUser();
-
+	
 	if (val.equals(inherit)) {
 	    value = inherit;
 	} else if (val instanceof CssLength || val instanceof CssPercentage) {
 	    value = val;
 	} else if (val instanceof CssNumber) {
 	    value = ((CssNumber) val).getLength();
-    } else if (val.equals(hanging)) {
-		value = hanging;
+	} else if (val.equals(hanging)) {
+	    value = hanging;
 	} else {
 	    throw new InvalidParamException("value", val.toString(),
-					    getPropertyName(), ac);
+		    getPropertyName(), ac);
 	}
-
+	
 	expression.next();
     }
-
+    
+    public CssTextIndentCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssMaxWidthCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMaxWidthCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMaxWidthCSS3.java	24 Dec 2002 13:18:36 -0000	1.1
+++ CssMaxWidthCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,15 +9,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  */
@@ -41,7 +41,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssMaxWidthCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMaxWidthCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -69,6 +70,11 @@
 	expression.next();
     }
 
+    public CssMaxWidthCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: MediaMinDeviceWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMinDeviceWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMinDeviceWidth.java	8 Jan 2003 10:02:55 -0000	1.1
+++ MediaMinDeviceWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:02:55  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,7 +79,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMinDeviceWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public MediaMinDeviceWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 		CssValue val = null;
 
 		if (expression != null) {
@@ -98,6 +108,11 @@
 		}
     }
 
+    public MediaMinDeviceWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssBorderBottomRightFitWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomRightFitWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomRightFitWidth.java	8 Jan 2003 10:18:44 -0000	1.1
+++ CssBorderBottomRightFitWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderBottomRightFitWidth extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderBottomRightFitWidth
      */
     public CssBorderBottomRightFitWidth() {
-		value = "overwrite";
+	value = "overwrite";
     }
-
+    
     /**
      * Create a new CssBorderBottomRightFitWidth
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderBottomRightFitWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderBottomRightFitWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderBottomRightFitWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderBottomRightFitWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderBottomRightFitWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderBottomRightFitWidth &&
 		value.equals(((CssBorderBottomRightFitWidth) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-bottom-right-fit-width";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("overwrite");
+	return value.equals("overwrite");
     }
-
+    
 }

Index: CssBorderCornerFit.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderCornerFit.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderCornerFit.java	8 Jan 2003 10:18:44 -0000	1.1
+++ CssBorderCornerFit.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,75 +9,80 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderCornerFit extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent overwrite = new CssIdent("overwrite");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderCornerFit
      */
     public CssBorderCornerFit() {
-		value = "overwrite";
+	value = "overwrite";
     }
-
+    
     /**
      * Create a new CssBorderCornerFit
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderCornerFit(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (expression.getCount() == 4 || expression.getCount() == 2 || expression.getCount() == 1) {
-
-			val = expression.getValue();
-
-			if (val != null) {
-
-				for (int i = 0; i < expression.getCount(); i++) {
-
-					int j = 0;
-					for (; j < values.length; j++) {
-					    if (val.toString().equals(values[j])) {
-							value += val.toString() + " ";
-							expression.next();
-							break;
-				    	}
-					}
-
-					if (j == values.length) {
-						    throw new InvalidParamException("value", expression.getValue(),
-										    getPropertyName(), ac);
-					}
-				}
+    public CssBorderCornerFit(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (expression.getCount() == 4 || expression.getCount() == 2 ||
+		expression.getCount() == 1) {
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		
+		for (int i = 0; i < expression.getCount(); i++) {
+		    
+		    int j = 0;
+		    for (; j < values.length; j++) {
+			if (val.toString().equals(values[j])) {
+			    value += val.toString() + " ";
+			    expression.next();
+			    break;
 			}
-
-		} else {
-			throw new InvalidParamException("value", expression.getValue(),
-				getPropertyName(), ac);
+		    }
+		    
+		    if (j == values.length) {
+			throw new InvalidParamException("value",
+				expression.getValue(), getPropertyName(), ac);
+		    }
 		}
-
+	    }
+	    
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
     }
-
+    
+    public CssBorderCornerFit(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -88,7 +93,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderCornerFit = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -103,7 +108,7 @@
 	    return ((Css3Style) style).cssBorderCornerFit;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -113,41 +118,41 @@
 	return (property instanceof CssBorderCornerFit &&
 		value.equals(((CssBorderCornerFit) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-corner-fit";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("overwrite");
+	return value.equals("overwrite");
     }
-
+    
 }

Index: CssColumnRule.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnRule.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnRule.java	20 Aug 2002 08:51:51 -0000	1.1
+++ CssColumnRule.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,22 +9,21 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssOperator;
-import org.w3c.css.properties.CssBorderTopWidth;
+import org.w3c.css.properties.CssBorderBottomStyle;
 import org.w3c.css.properties.CssBorderBottomWidth;
+import org.w3c.css.properties.CssBorderLeftStyle;
 import org.w3c.css.properties.CssBorderLeftWidth;
+import org.w3c.css.properties.CssBorderRightStyle;
 import org.w3c.css.properties.CssBorderRightWidth;
 import org.w3c.css.properties.CssBorderTopStyle;
-import org.w3c.css.properties.CssBorderBottomStyle;
-import org.w3c.css.properties.CssBorderLeftStyle;
-import org.w3c.css.properties.CssBorderRightStyle;
+import org.w3c.css.properties.CssBorderTopWidth;
 import org.w3c.css.properties.CssColor;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -41,8 +40,10 @@
 implements CssOperator {
 
     CssValue value;
-    /* I should use border-width and border-style here, but I don't see how to implement a
-       shorthand property for shorthand properties ... So I splitted it up*/
+    /* I should use border-width and border-style here, but I don't 
+     * see how to implement a 
+     * shorthand property for shorthand properties ... So I splitted it up
+     */
     CssBorderTopWidth btw;
     CssBorderRightWidth brw;
     CssBorderLeftWidth blw;
@@ -66,7 +67,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssColumnRule(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssColumnRule(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	CssValue val = expression.getValue();
 	int maxvalues = 9;
@@ -169,6 +171,10 @@
 	}
     }
 
+    public CssColumnRule(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle

Index: CssWordBreak.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssWordBreak.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssWordBreak.java	9 Aug 2002 11:54:56 -0000	1.2
+++ CssWordBreak.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssWordBreak(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssWordBreak(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	CssValue val = expression.getValue();
 	int maxvalues = 3;
@@ -97,6 +97,11 @@
 
     }
 
+    public CssWordBreak(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextJustify.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextJustify.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextJustify.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextJustify.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -58,7 +58,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssTextJustify(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextJustify(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -77,6 +78,11 @@
 	}
     }
 
+    public CssTextJustify(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: MediaMinMonochrome.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMinMonochrome.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMinMonochrome.java	8 Jan 2003 10:02:55 -0000	1.1
+++ MediaMinMonochrome.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:02:55  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,33 +78,39 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMinMonochrome(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-		char op = SPACE;
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMinMonochrome(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	char op = SPACE;
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaMinMonochrome(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssTextUlMode.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextUlMode.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssTextUlMode.java	14 Jul 2003 14:33:56 -0000	1.2
+++ CssTextUlMode.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextUlMode(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextUlMode(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -73,6 +74,11 @@
 	}
     }
 
+    public CssTextUlMode(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssGlyphOrVert.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssGlyphOrVert.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- CssGlyphOrVert.java	14 Jul 2003 14:39:23 -0000	1.3
+++ CssGlyphOrVert.java	8 Aug 2005 13:18:54 -0000	1.4
@@ -9,14 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssAngle;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +50,8 @@
      * @param expression The expression for this property
      8 @exception InvalidParamException Incorrect value
      */
-    public CssGlyphOrVert(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssGlyphOrVert(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -83,6 +83,10 @@
 	}
     }
 
+    public CssGlyphOrVert(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle

Index: CssPaddingSideCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssPaddingSideCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssPaddingSideCSS3.java	24 Dec 2002 13:20:53 -0000	1.1
+++ CssPaddingSideCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/12/24 13:20:53  sijtsche
  * new version for CSS3: value initial added
  *
@@ -33,15 +43,15 @@
  */
 package org.w3c.css.properties3;
 
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -73,7 +83,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssPaddingSideCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssPaddingSideCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -100,6 +111,11 @@
 	}
     }
 
+    public CssPaddingSideCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssUserFocusKey.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssUserFocusKey.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssUserFocusKey.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssUserFocusKey.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -56,7 +56,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssUserFocusKey(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssUserFocusKey(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -99,6 +100,11 @@
 	}
     }
 
+    public CssUserFocusKey(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: MediaDeviceHeight.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaDeviceHeight.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaDeviceHeight.java	8 Jan 2003 10:05:40 -0000	1.1
+++ MediaDeviceHeight.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:05:40  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,34 +79,40 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaDeviceHeight(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssLength || val instanceof CssPercentage) {
-			    float f = ((Float) val.get()).floatValue();
-			    if (f < 0) {
-					throw new InvalidParamException("negative-value",
-								val.toString(), ac);
-			    }
-			    value = val;
-			} else if (val instanceof CssNumber) {
-			    value = ((CssNumber) val).getLength();
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaDeviceHeight(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssLength || val instanceof CssPercentage) {
+		float f = ((Float) val.get()).floatValue();
+		if (f < 0) {
+		    throw new InvalidParamException("negative-value",
+			    val.toString(), ac);
 		}
+		value = val;
+	    } else if (val instanceof CssNumber) {
+		value = ((CssNumber) val).getLength();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
-
+    
+    public MediaDeviceHeight(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssLineGridProgression.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineGridProgression.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineGridProgression.java	15 Aug 2002 09:07:45 -0000	1.1
+++ CssLineGridProgression.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,14 +8,14 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -40,7 +40,8 @@
 	 *
 	 *
 	 */
-	public CssLineGridProgression(ApplContext ac, CssExpression expression) throws InvalidParamException {
+	public CssLineGridProgression(ApplContext ac, CssExpression expression,
+		boolean check) throws InvalidParamException {
 	    setByUser();
 	    CssValue val = expression.getValue();
 	    if (val.equals(normal)) {
@@ -65,6 +66,11 @@
 	    }
 	}
 
+	public CssLineGridProgression(ApplContext ac, CssExpression expression)
+		throws InvalidParamException {
+	    this(ac, expression, false);
+	}
+	
 	/**
 	 * Add this property to the CssStyle.
 	 *

Index: CssWidthCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssWidthCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssWidthCSS3.java	24 Dec 2002 13:18:36 -0000	1.1
+++ CssWidthCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/12/24 13:18:36  sijtsche
  * new version for CSS3: value initial added
  *
@@ -37,15 +47,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *   <H4>
@@ -94,7 +104,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssWidthCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssWidthCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -122,6 +133,11 @@
 	expression.next();
     }
 
+    public CssWidthCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssKerningPairTreshold.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssKerningPairTreshold.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssKerningPairTreshold.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssKerningPairTreshold.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -49,7 +49,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssKerningPairTreshold(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssKerningPairTreshold(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	if (val.equals(auto)) {
@@ -69,6 +70,11 @@
 	}
     }
 
+    public CssKerningPairTreshold(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssColumnSpan.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnSpan.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnSpan.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssColumnSpan.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -29,128 +28,135 @@
  */
 
 public class CssColumnSpan extends CssProperty {
-
-   CssValue value;
+    
+    CssValue value;
     ApplContext ac;
-
+    
     CssIdent none = new CssIdent("none");
     CssIdent all = new CssIdent("all");
-
+    
     /**
      * Create a new CssColumnSpan
      */
-   public CssColumnSpan() {
-       //nothing to do
-   }
-   
-   /**
-    * Create a new CssColumnSpan
-    *
-    * @param expression The expression for this property     
-    * @exception InvalidParamException Values are incorrect
-    */
-   public CssColumnSpan(ApplContext ac, CssExpression expression) throws InvalidParamException {
-       this.ac = ac;
-       setByUser(); // tell this property is set by the user
-       CssValue val = expression.getValue();
-
-       if (val instanceof CssNumber) {
+    public CssColumnSpan() {
+	//nothing to do
+    }
+    
+    /**
+     * Create a new CssColumnSpan
+     *
+     * @param expression The expression for this property     
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssColumnSpan(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	this.ac = ac;
+	setByUser(); // tell this property is set by the user
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssNumber) {
 	    if (((CssNumber) val).isInteger()) {
 		value = val;
 		expression.next();
 		return;
 	    } else {
 		throw new InvalidParamException("integer", 
-						val.toString(), 
-						getPropertyName(), ac);
+			val.toString(), 
+			getPropertyName(), ac);
 	    }
-       }
-       else if (val instanceof CssIdent) {
-           if (val.equals(inherit)) {
-	       value = inherit;
-	       expression.next();
-           } else if (val.equals(none)) {
-	       value = none;
-	       expression.next();
-	   } else if (val.equals(all)) {
-	       value = all;
-	       expression.next();
-	   }
-       }
-       else {
-	   throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-       }
-   }
-   
+	}
+	else if (val instanceof CssIdent) {
+	    if (val.equals(inherit)) {
+		value = inherit;
+		expression.next();
+	    } else if (val.equals(none)) {
+		value = none;
+		expression.next();
+	    } else if (val.equals(all)) {
+		value = all;
+		expression.next();
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", val.toString(), 
+		    getPropertyName(), ac);
+	}
+    }
+    
+    public CssColumnSpan(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
-     public void addToStyle(ApplContext ac, CssStyle style) {
-	 if (((Css3Style) style).cssColumnSpan != null)
-	     style.addRedefinitionWarning(ac, this);
-	 ((Css3Style) style).cssColumnSpan = this;
-     }
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssColumnSpan != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssColumnSpan = this;
+    }
     
-      /**
-       * Get this property in the style.
-       *
-       * @param style The style where the property is
-       * @param resolve if true, resolve the style to find this property
-       */  
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getColumnSpan();
-	    } else {
-		return ((Css3Style) style).cssColumnSpan;
-	    }
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */  
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getColumnSpan();
+	} else {
+	    return ((Css3Style) style).cssColumnSpan;
 	}
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */  
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssColumnSpan && 
+		value.equals( ((CssColumnSpan) property).value));
+    }
     
-       /**
-        * Compares two properties for equality.
-        *
-        * @param value The other property.
-        */  
-       public boolean equals(CssProperty property) {
-	   return (property instanceof CssColumnSpan && 
-                value.equals( ((CssColumnSpan) property).value));
-       }
-
     /**
      * Returns the name of this property
      */
-   public String getPropertyName() {
-       return "column-span";
-   }
-   
+    public String getPropertyName() {
+	return "column-span";
+    }
+    
     /**
      * Returns the value of this property
      */
-   public Object get() {
-       return value;
-   }
-   
+    public Object get() {
+	return value;
+    }
+    
     /**
      * Returns true if this property is "softly" inherited
      */
-   public boolean isSoftlyInherited() {
-       return value.equals(inherit);
-   }
-
-   /**
-    * Returns a string representation of the object
-    */
-   public String toString() {
-       return value.toString();
-   }
- 
+    public boolean isSoftlyInherited() {
+	return value.equals(inherit);
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return value.toString();
+    }
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
-   public boolean isDefault() {	
-       return value == none;
-   }
-
+    public boolean isDefault() {	
+	return value == none;
+    }
+    
 }

Index: CssWritingMode.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssWritingMode.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- CssWritingMode.java	14 Jul 2003 13:56:56 -0000	1.3
+++ CssWritingMode.java	8 Aug 2005 13:18:54 -0000	1.4
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -39,7 +39,7 @@
     static CssIdent lr = new CssIdent("lr");
     static CssIdent rl = new CssIdent("rl");
     static CssIdent tb = new CssIdent("tb");
-	static CssIdent ltr = new CssIdent("ltr");
+    static CssIdent ltr = new CssIdent("ltr");
     static CssIdent rtl = new CssIdent("rtl");
 
 
@@ -53,7 +53,8 @@
     /**
      * Create a new CssWritingMode
      */
-    public CssWritingMode(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssWritingMode(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -104,6 +105,11 @@
 	}
     }
 
+    public CssWritingMode(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssMinFontSize.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMinFontSize.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMinFontSize.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssMinFontSize.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,15 +8,14 @@
 
 package org.w3c.css.properties3;
 
+import org.w3c.css.font.FontSize;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.font.FontSize;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssMinFontSize(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMinFontSize(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -73,6 +73,11 @@
 	}
     }
 
+    public CssMinFontSize(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssBorderTopLeftImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopLeftImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopLeftImage.java	8 Jan 2003 10:21:57 -0000	1.1
+++ CssBorderTopLeftImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,72 +8,78 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderTopLeftImage extends CssProperty {
-
+    
     String value = "";
     ApplContext ac;
-	CssIdent contin = new CssIdent("continue");
-	CssIdent none = new CssIdent("none");
-
+    CssIdent contin = new CssIdent("continue");
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBorderTopLeftImage
      */
     public CssBorderTopLeftImage() {
-		value = "continue";
+	value = "continue";
     }
-
+    
     /**
      * Create new CssBorderTopLeftImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderTopLeftImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val != null) {
-			if (val.equals(none)) {
-				value = "none";
-			} else if (val.equals(contin)) {
-				value = "continue";
-			} else if (val instanceof CssURL) {
-				value = val.toString();
-			} else {
-				throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-			}
-		} else {
-			throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-		}
-
-		expression.next();
+    public CssBorderTopLeftImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val != null) {
+	    if (val.equals(none)) {
+		value = "none";
+	    } else if (val.equals(contin)) {
+		value = "continue";
+	    } else if (val instanceof CssURL) {
+		value = val.toString();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	expression.next();
     }
-
+    
+    public CssBorderTopLeftImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderTopLeftImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderTopLeftImage = this;
+	if (((Css3Style) style).cssBorderTopLeftImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderTopLeftImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -81,58 +87,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderTopLeftImage();
-		} else {
-		    return ((Css3Style) style).cssBorderTopLeftImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderTopLeftImage();
+	} else {
+	    return ((Css3Style) style).cssBorderTopLeftImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderTopLeftImage &&
-                value.equals( ((CssBorderTopLeftImage) property).value));
+	return (property instanceof CssBorderTopLeftImage &&
+		value.equals( ((CssBorderTopLeftImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-top-left-image";
+	return "border-top-left-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: CssKeyEq.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssKeyEq.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- CssKeyEq.java	30 May 2004 05:06:52 -0000	1.3
+++ CssKeyEq.java	8 Aug 2005 13:18:54 -0000	1.4
@@ -11,14 +11,14 @@
 import java.util.Vector;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssOperator;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssFunction;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -73,7 +73,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssKeyEq(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssKeyEq(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	String kc = new String();
 	int hyphenindex;
 	int counter = 0;
@@ -181,6 +182,11 @@
 
     }
 
+    public CssKeyEq(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssColumnRuleWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnRuleWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnRuleWidth.java	20 Aug 2002 08:51:51 -0000	1.1
+++ CssColumnRuleWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
+import org.w3c.css.properties.CssBorderWidth;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssBorderWidth;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -44,7 +43,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssColumnRuleWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssColumnRuleWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -60,6 +60,11 @@
 	}
     }
 
+    public CssColumnRuleWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssFontEmphasize.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssFontEmphasize.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssFontEmphasize.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssFontEmphasize.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,17 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import java.util.Hashtable;
-
-import org.w3c.css.values.CssColor;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  * <P>
@@ -51,7 +47,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException The expression is incorrect
      */
-    public CssFontEmphasize(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssFontEmphasize(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	CssValue val = expression.getValue();
 	int maxvalues = 2;
@@ -90,6 +87,10 @@
 
     }
 
+    public CssFontEmphasize(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle

Index: CssWordBreakCJK.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssWordBreakCJK.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssWordBreakCJK.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssWordBreakCJK.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssWordBreakCJK(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssWordBreakCJK(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	
 	setByUser();
 	CssValue val = expression.getValue();
@@ -77,6 +78,11 @@
 	}
     }
 
+    public CssWordBreakCJK(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssAllSpaceTreatment.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssAllSpaceTreatment.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssAllSpaceTreatment.java	15 Aug 2002 14:57:15 -0000	1.2
+++ CssAllSpaceTreatment.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -8,126 +8,131 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  */
-
-    public class CssAllSpaceTreatment extends CssProperty {
-
-	CssValue spacetreat;
-
-	private static CssIdent preserve = new CssIdent("collapse");
-	private static CssIdent collapse = new CssIdent("preserve");
-
-	/**
-	 * Create a new CssAllSpaceTreatment
-	 */
-	public CssAllSpaceTreatment() {
-	    spacetreat = collapse;
-	}
-
-	/**
-	 * Create a new CssAllSpaceTreatment
-	 *
-	 *
-	 */
-	public CssAllSpaceTreatment(ApplContext ac, CssExpression expression) throws InvalidParamException {
-	    setByUser();
-	    CssValue val = expression.getValue();
-	    if (val.equals(preserve)) {
-		spacetreat = preserve;
-		expression.next();
-	    }
-	    else if (val.equals(collapse)) {
-		spacetreat = collapse;
-		expression.next();
-	    }
-	    else if (val.equals(inherit)) {
-		spacetreat = inherit;
-		expression.next();
-	    }
-	    else {
-		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-	    }
-	}
-
-	/**
-	 * Add this property to the CssStyle.
-	 *
-	 * @param style The CssStyle
-	 */
-	public void addToStyle(ApplContext ac, CssStyle style) {
-	    if (((Css3Style) style).cssAllSpaceTreatment != null)
-		style.addRedefinitionWarning(ac, this);
-	    ((Css3Style) style).cssAllSpaceTreatment = this;
-
-	}
-
-	/**
-	 * Get this property in the style.
-	 *
-	 * @param style The style where the property is
-	 * @param resolve if true, resolve the style to find this property
-	 */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getAllSpaceTreatment();
-	    } else {
-		return ((Css3Style) style).cssAllSpaceTreatment;
-	    }
-	}
-
-	/**
-	 * Compares two properties for equality.
-	 *
-	 * @param value The other property.
-	 */
-	public boolean equals(CssProperty property) {
-	    return (property instanceof CssAllSpaceTreatment &&
-		    spacetreat.equals( ((CssAllSpaceTreatment) property).spacetreat));
-	}
-
-	/**
-	 * Returns the name of this property
-	 */
-	public String getPropertyName() {
-	    return "all-space-treatment";
+public class CssAllSpaceTreatment extends CssProperty {
+    
+    CssValue spacetreat;
+    
+    private static CssIdent preserve = new CssIdent("collapse");
+    private static CssIdent collapse = new CssIdent("preserve");
+    
+    /**
+     * Create a new CssAllSpaceTreatment
+     */
+    public CssAllSpaceTreatment() {
+	spacetreat = collapse;
+    }
+    
+    /**
+     * Create a new CssAllSpaceTreatment
+     *
+     *
+     */
+    public CssAllSpaceTreatment(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	if (val.equals(preserve)) {
+	    spacetreat = preserve;
+	    expression.next();
 	}
-
-	/**
-	 * Returns the value of this property
-	 */
-	public Object get() {
-	    return spacetreat;
+	else if (val.equals(collapse)) {
+	    spacetreat = collapse;
+	    expression.next();
 	}
-
-	/**
-	 * Returns true if this property is "softly" inherited
-	 */
-	public boolean isSoftlyInherited() {
-	    return spacetreat.equals(inherit);
+	else if (val.equals(inherit)) {
+	    spacetreat = inherit;
+	    expression.next();
 	}
-
-	/**
-	 * Returns a string representation of the object
-	 */
-	public String toString() {
-	    return spacetreat.toString();
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
 	}
-
-	/**
-	 * Is the value of this property a default value
-	 * It is used by all macro for the function <code>print</code>
-	 */
-	public boolean isDefault() {
-	    return spacetreat == collapse;
+    }
+    
+    public CssAllSpaceTreatment(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssAllSpaceTreatment != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssAllSpaceTreatment = this;
+	
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getAllSpaceTreatment();
+	} else {
+	    return ((Css3Style) style).cssAllSpaceTreatment;
 	}
-
     }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssAllSpaceTreatment &&
+		spacetreat.equals( ((CssAllSpaceTreatment) property).spacetreat));
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "all-space-treatment";
+    }
+    
+    /**
+     * Returns the value of this property
+     */
+    public Object get() {
+	return spacetreat;
+    }
+    
+    /**
+     * Returns true if this property is "softly" inherited
+     */
+    public boolean isSoftlyInherited() {
+	return spacetreat.equals(inherit);
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return spacetreat.toString();
+    }
+    
+    /**
+     * Is the value of this property a default value
+     * It is used by all macro for the function <code>print</code>
+     */
+    public boolean isDefault() {
+	return spacetreat == collapse;
+    }
+    
+}

Index: CssBoxShadow.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBoxShadow.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBoxShadow.java	8 Jan 2003 10:13:38 -0000	1.1
+++ CssBoxShadow.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,121 +8,125 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssColor;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssColor;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBoxShadow extends CssProperty implements CssOperator {
-
+    
     String value = "";
     ApplContext ac;
-	CssIdent none = new CssIdent("none");
-
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBoxShadow
      */
     public CssBoxShadow() {
-		value = "none";
+	value = "none";
     }
-
+    
     /**
      * Create new CssBoxShadow
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBoxShadow(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-		char op = COMMA;
-
-		if (val instanceof CssIdent) {
-			if (val.equals(none)) {
-				value = "none";
-				expression.next();
-			} else if (val.equals(inherit)) {
-				value = "inherit";
-				expression.next();
+    public CssBoxShadow(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	char op = COMMA;
+	
+	if (val instanceof CssIdent) {
+	    if (val.equals(none)) {
+		value = "none";
+		expression.next();
+	    } else if (val.equals(inherit)) {
+		value = "inherit";
+		expression.next();
+	    }
+	} else {
+	    
+	    // <length> <length> <length>? || <color> [, <length> <length> <length>? || <color>]+
+	    
+	    int lengthcounter = 0;
+	    int runs = 1;
+	    
+	    for (int i = 0; i < expression.getCount(); i++) {
+		
+		if (op != COMMA) {
+		    throw new InvalidParamException("operator",
+			    ((new Character(op)).toString()), ac);
+		} else if (runs != 1) {
+		    value += ", ";
+		}
+		
+		val = expression.getValue();
+		
+		if (val != null) {
+		    
+		    while (val instanceof CssLength && lengthcounter < 3) {
+			value += val.toString() + " ";
+			expression.next();
+			i++;
+			val = expression.getValue();
+			lengthcounter++;
+		    }
+		    
+		    if (lengthcounter == 2 || lengthcounter == 3) {
+			if (val instanceof CssColor) {
+			    value += val.toString() + " ";
+			} else {
+			    value += (new org.w3c.css.values.CssColor(ac, (String) val.get())).toString() + " ";
 			}
+		    } else {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
 		} else {
-
-			// <length> <length> <length>? || <color> [, <length> <length> <length>? || <color>]+
-
-			int lengthcounter = 0;
-			int runs = 1;
-
-			for (int i = 0; i < expression.getCount(); i++) {
-
-				if (op != COMMA) {
-					throw new InvalidParamException("operator",
-						((new Character(op)).toString()), ac);
-				} else if (runs != 1) {
-					value += ", ";
-				}
-
-				val = expression.getValue();
-
-				if (val != null) {
-
-					while (val instanceof CssLength && lengthcounter < 3) {
-						value += val.toString() + " ";
-						expression.next();
-						i++;
-						val = expression.getValue();
-						lengthcounter++;
-					}
-
-					if (lengthcounter == 2 || lengthcounter == 3) {
-						if (val instanceof CssColor) {
-							value += val.toString() + " ";
-						} else {
-							value += (new org.w3c.css.values.CssColor(ac, (String) val.get())).toString() + " ";
-						}
-					} else {
-					    throw new InvalidParamException("value", expression.getValue(),
-							getPropertyName(), ac);
-					}
-				} else {
-
-					if (runs < 2) {
-						throw new InvalidParamException("value", expression.getValue(),
-							getPropertyName(), ac);
-					}
-
-					value = value.trim();
-					return;
-				}
-
-				op = expression.getOperator();
-				lengthcounter = 0;
-				expression.next();
-				runs++;
-			}
+		    
+		    if (runs < 2) {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
+		    
+		    value = value.trim();
+		    return;
 		}
+		
+		op = expression.getOperator();
+		lengthcounter = 0;
+		expression.next();
+		runs++;
+	    }
+	}
     }
-
+    
+    public CssBoxShadow(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBoxShadow != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBoxShadow = this;
+	if (((Css3Style) style).cssBoxShadow != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBoxShadow = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -130,57 +134,57 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBoxShadow();
-		} else {
-		    return ((Css3Style) style).cssBoxShadow;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBoxShadow();
+	} else {
+	    return ((Css3Style) style).cssBoxShadow;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBoxShadow &&
-                value.equals( ((CssBoxShadow) property).value));
+	return (property instanceof CssBoxShadow &&
+		value.equals( ((CssBoxShadow) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "box-shadow";
+	return "box-shadow";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals(none);
+	return value.equals(none);
     }
 
 }

Index: CssDropInitialBeforeAdjust.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssDropInitialBeforeAdjust.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssDropInitialBeforeAdjust.java	20 Aug 2002 13:53:40 -0000	1.1
+++ CssDropInitialBeforeAdjust.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -58,24 +58,25 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssDropInitialBeforeAdjust(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
+    public CssDropInitialBeforeAdjust(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
 	setByUser();
 	CssValue val = expression.getValue();
-
+	
 	if (val instanceof CssIdent) {
-		int i = 0;
-		for (; i < values.length; i++) {
-		    if (val.toString().equals(values[i])) {
-				dropvalue = val;
-				expression.next();
-				break;
-	    	}
-		}
-		if (i == values.length) {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
+	    int i = 0;
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    dropvalue = val;
+		    expression.next();
+		    break;
 		}
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
 	}
 	else if (val instanceof CssPercentage) {
 	    dropvalue = val;
@@ -87,10 +88,15 @@
 	}
 	else {
 	    throw new InvalidParamException("value", expression.getValue(),
-					    getPropertyName(), ac);
+		    getPropertyName(), ac);
 	}
     }
 
+    public CssDropInitialBeforeAdjust(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderBottomRightImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomRightImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomRightImage.java	8 Jan 2003 10:19:50 -0000	1.1
+++ CssBorderBottomRightImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,72 +8,78 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderBottomRightImage extends CssProperty {
-
+    
     String value = "";
     ApplContext ac;
-	CssIdent contin = new CssIdent("continue");
-	CssIdent none = new CssIdent("none");
-
+    CssIdent contin = new CssIdent("continue");
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBorderBottomRightImage
      */
     public CssBorderBottomRightImage() {
-		value = "continue";
+	value = "continue";
     }
-
+    
     /**
      * Create new CssBorderBottomRightImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderBottomRightImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val != null) {
-			if (val.equals(none)) {
-				value = "none";
-			} else if (val.equals(contin)) {
-				value = "continue";
-			} else if (val instanceof CssURL) {
-				value = val.toString();
-			} else {
-				throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-			}
-		} else {
-			throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-		}
-
-		expression.next();
+    public CssBorderBottomRightImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val != null) {
+	    if (val.equals(none)) {
+		value = "none";
+	    } else if (val.equals(contin)) {
+		value = "continue";
+	    } else if (val instanceof CssURL) {
+		value = val.toString();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	expression.next();
     }
-
+    
+    public CssBorderBottomRightImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderBottomRightImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderBottomRightImage = this;
+	if (((Css3Style) style).cssBorderBottomRightImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderBottomRightImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -81,58 +87,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderBottomRightImage();
-		} else {
-		    return ((Css3Style) style).cssBorderBottomRightImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderBottomRightImage();
+	} else {
+	    return ((Css3Style) style).cssBorderBottomRightImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderBottomRightImage &&
-                value.equals( ((CssBorderBottomRightImage) property).value));
+	return (property instanceof CssBorderBottomRightImage &&
+		value.equals( ((CssBorderBottomRightImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-bottom-left-image";
+	return "border-bottom-left-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: MediaMaxColorIndex.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMaxColorIndex.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMaxColorIndex.java	8 Jan 2003 10:05:40 -0000	1.1
+++ MediaMaxColorIndex.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:05:40  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,33 +78,39 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMaxColorIndex(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-		char op = SPACE;
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMaxColorIndex(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	char op = SPACE;
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
-
+    
+    public MediaMaxColorIndex(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: MediaMinResolution.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMinResolution.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMinResolution.java	8 Jan 2003 10:02:55 -0000	1.1
+++ MediaMinResolution.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:02:55  sijtsche
  * new media feature for media queries
  *
@@ -40,17 +50,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssOperator;
 import org.w3c.css.values.CssResolution;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -72,27 +77,33 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMinResolution(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssResolution) {
-				value = val;
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
-		}
+    public MediaMinResolution(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssResolution) {
+		value = val;
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaMinResolution(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: MediaMinColorIndex.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMinColorIndex.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMinColorIndex.java	8 Jan 2003 10:02:55 -0000	1.1
+++ MediaMinColorIndex.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:02:55  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -64,40 +71,46 @@
     public MediaMinColorIndex() {
 		//empty
     }
-
+    
     /**
      * Create a new MediaMinColorIndex.
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMinColorIndex(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-		char op = SPACE;
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMinColorIndex(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	char op = SPACE;
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
-
+    
+    public MediaMinColorIndex(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssBorderBottomFitWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomFitWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomFitWidth.java	8 Jan 2003 10:13:38 -0000	1.1
+++ CssBorderBottomFitWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderBottomFitWidth extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderBottomFitWidth
      */
     public CssBorderBottomFitWidth() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderBottomFitWidth
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderBottomFitWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderBottomFitWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderBottomFitWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderBottomFitWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderBottomFitWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderBottomFitWidth &&
 		value.equals(((CssBorderBottomFitWidth) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-bottom-fit-width";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: CssTextAfterOverflow.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextAfterOverflow.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextAfterOverflow.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextAfterOverflow.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -53,7 +53,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextAfterOverflow(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextAfterOverflow(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	if (val.equals(clip)) {
@@ -85,6 +86,11 @@
 	}
     }
 
+    public CssTextAfterOverflow(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBackgroundClip.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBackgroundClip.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBackgroundClip.java	19 Jul 2002 20:30:11 -0000	1.1
+++ CssBackgroundClip.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -30,43 +30,49 @@
  */
 
 public class CssBackgroundClip extends CssProperty {
-
+    
     CssValue bgclip;
-
+    
     CssIdent border = new CssIdent("border");
     CssIdent padding = new CssIdent("padding");
-
+    
     /**
      * Create a new CssBackgroundClip
      */
     public CssBackgroundClip() {
-		bgclip = border;
+	bgclip = border;
     }
-
+    
     /**
      * Create a new CssBackgroundClip
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBackgroundClip(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val.equals(border)) {
-		    bgclip = border;
-		    expression.next();
-		} else if (val.equals(padding)) {
-		    bgclip = padding;
-		    expression.next();
-		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
-		}
+    public CssBackgroundClip(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val.equals(border)) {
+	    bgclip = border;
+	    expression.next();
+	} else if (val.equals(padding)) {
+	    bgclip = padding;
+	    expression.next();
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBackgroundClip(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -77,7 +83,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBackgroundClip = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -92,51 +98,51 @@
 	    return ((Css3Style) style).cssBackgroundClip;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBackgroundClip &&
-			bgclip.equals(((CssBackgroundClip) property).bgclip));
+	return (property instanceof CssBackgroundClip &&
+		bgclip.equals(((CssBackgroundClip) property).bgclip));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "background-clip";
+	return "background-clip";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return bgclip;
+	return bgclip;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return bgclip.equals(inherit);
+	return bgclip.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return bgclip.toString();
+	return bgclip.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return bgclip == border;
+	return bgclip == border;
     }
-
+    
 }

Index: CssMarqueeRepetition.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMarqueeRepetition.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMarqueeRepetition.java	24 Dec 2002 13:16:26 -0000	1.1
+++ CssMarqueeRepetition.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 public class CssMarqueeRepetition extends CssProperty {
 
@@ -38,10 +38,11 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssMarqueeRepetition(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMarqueeRepetition(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
-
+	
 	if (val.equals(infinite)) {
 	    mrep = infinite;
 	    expression.next();
@@ -50,18 +51,23 @@
 	    mrep = inherit;
 	    expression.next();
 	} else if (val instanceof CssNumber && ((CssNumber) val).isInteger() ) {
-
-		mrep = val;
-		expression.next();
+	    
+	    mrep = val;
+	    expression.next();
 	}
 	else {
 	    throw new InvalidParamException("value",
-					    expression.getValue(),
-					    getPropertyName(), ac);
+		    expression.getValue(),
+		    getPropertyName(), ac);
 	}
-
+	
     }
-
+    
+    public CssMarqueeRepetition(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }    
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextUnderLine.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextUnderLine.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextUnderLine.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextUnderLine.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -52,7 +51,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextUnderLine(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextUnderLine(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	CssValue val = expression.getValue();
 	int maxvalues = 4;
@@ -120,6 +120,11 @@
 
     }
 
+    public CssTextUnderLine(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssPaddingLeftCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssPaddingLeftCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssPaddingLeftCSS3.java	24 Dec 2002 13:20:53 -0000	1.1
+++ CssPaddingLeftCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/12/24 13:20:53  sijtsche
  * new version for CSS3: value initial added
  *
@@ -31,10 +41,10 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 
 /**
  *   <H4>
@@ -56,73 +66,79 @@
  * @version $Revision$
  */
 public class CssPaddingLeftCSS3 extends CssPaddingSideCSS3 {
-
-  /**
-   * Create a new CssPaddingLeftCSS3
-   */
-  public CssPaddingLeftCSS3() {
-    super();
-  }
-
-  /**
-   * Create a new CssPaddingLeftCSS3 with an another CssPaddingSideCSS3
-   * @param another The another side.
-   */
-  public CssPaddingLeftCSS3(CssPaddingSideCSS3 another) {
-    super(another);
-  }
-
-  /**
-   * Create a new CssPaddingLeftCSS3
-   *
-   * @param expression The expression for this property.
-   * @exception InvalidParamException Values are incorrect
-   */
-  public CssPaddingLeftCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
-    super(ac, expression);
-  }
-
-  /**
-   * Returns the name of this property
-   */
-  public String getPropertyName() {
-    return "padding-left";
-  }
-
-  /**
-   * Add this property to the CssStyle.
-   *
-   * @param style The CssStyle
-   */
-  public void addToStyle(ApplContext ac, CssStyle style) {
-    if (((Css3Style) style).cssPaddingLeftCSS3 != null)
+    
+    /**
+     * Create a new CssPaddingLeftCSS3
+     */
+    public CssPaddingLeftCSS3() {
+	super();
+    }
+    
+    /**
+     * Create a new CssPaddingLeftCSS3 with an another CssPaddingSideCSS3
+     * @param another The another side.
+     */
+    public CssPaddingLeftCSS3(CssPaddingSideCSS3 another) {
+	super(another);
+    }
+    
+    /**
+     * Create a new CssPaddingLeftCSS3
+     *
+     * @param expression The expression for this property.
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssPaddingLeftCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	super(ac, expression, check);
+    }
+    
+    public CssPaddingLeftCSS3(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "padding-left";
+    }
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssPaddingLeftCSS3 != null)
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssPaddingLeftCSS3 = this;
-
-  }
-
-  /**
-   * Get this property in the style.
-   *
-   * @param style The style where the property is
-   * @param resolve if true, resolve the style to find this property
-   */
-  public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-    if (resolve) {
-      return ((Css3Style) style).getPaddingLeftCSS3();
-    } else {
-      return ((Css3Style) style).cssPaddingCSS3.getLeft();
+	
     }
-  }
-
-  /**
-   * Compares two properties for equality.
-   *
-   * @param value The other property.
-   */
-  public boolean equals(CssProperty property) {
-    return (property instanceof CssPaddingLeftCSS3 &&
-	    value.equals(((CssPaddingLeftCSS3) property).value));
-  }
-
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getPaddingLeftCSS3();
+	} else {
+	    return ((Css3Style) style).cssPaddingCSS3.getLeft();
+	}
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssPaddingLeftCSS3 &&
+		value.equals(((CssPaddingLeftCSS3) property).value));
+    }
+    
 }

Index: MediaMaxWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMaxWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMaxWidth.java	8 Jan 2003 10:04:22 -0000	1.1
+++ MediaMaxWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:04:22  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,34 +79,40 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMaxWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssLength || val instanceof CssPercentage) {
-			    float f = ((Float) val.get()).floatValue();
-			    if (f < 0) {
-					throw new InvalidParamException("negative-value",
-								val.toString(), ac);
-			    }
-			    value = val;
-			} else if (val instanceof CssNumber) {
-			    value = ((CssNumber) val).getLength();
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMaxWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssLength || val instanceof CssPercentage) {
+		float f = ((Float) val.get()).floatValue();
+		if (f < 0) {
+		    throw new InvalidParamException("negative-value",
+			    val.toString(), ac);
 		}
+		value = val;
+	    } else if (val instanceof CssNumber) {
+		value = ((CssNumber) val).getLength();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
-
+    
+    public MediaMaxWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssClearCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssClearCSS3.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssClearCSS3.java	24 Dec 2002 13:05:56 -0000	1.2
+++ CssClearCSS3.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.3  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.2  2002/12/24 13:05:56  sijtsche
  * value initial added
  *
@@ -28,12 +38,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *   <H4>
@@ -79,7 +89,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssClearCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssClearCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -96,6 +107,11 @@
 					getPropertyName(), ac);
     }
 
+    public CssClearCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssInlineBoxAlign.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssInlineBoxAlign.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssInlineBoxAlign.java	20 Aug 2002 13:53:41 -0000	1.1
+++ CssInlineBoxAlign.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -41,29 +41,35 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssInlineBoxAlign(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
+    public CssInlineBoxAlign(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
 	setByUser();
 	CssValue val = expression.getValue();
-
+	
 	if (val.equals(initial)) {
-		inlineboxalign = initial;
-		expression.next();
+	    inlineboxalign = initial;
+	    expression.next();
 	}
 	else if (val.equals(last)) {
-		inlineboxalign = last;
-		expression.next();
+	    inlineboxalign = last;
+	    expression.next();
 	}
 	else if (val instanceof CssNumber) {
-		inlineboxalign = val;
-		expression.next();
+	    inlineboxalign = val;
+	    expression.next();
 	}
 	else {
 	    throw new InvalidParamException("value", expression.getValue(),
-					    getPropertyName(), ac);
+		    getPropertyName(), ac);
 	}
     }
 
+    public CssInlineBoxAlign(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssColumnGap.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnGap.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnGap.java	20 Aug 2002 08:51:50 -0000	1.1
+++ CssColumnGap.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,16 +8,15 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -40,7 +39,8 @@
 	 *
 	 *
 	 */
-	public CssColumnGap(ApplContext ac, CssExpression expression) throws InvalidParamException {
+	public CssColumnGap(ApplContext ac, CssExpression expression,
+		boolean check) throws InvalidParamException {
 	    setByUser();
 	    CssValue val = expression.getValue();
 	    if (val instanceof CssPercentage) {
@@ -61,6 +61,11 @@
 	    }
 	}
 
+	public CssColumnGap(ApplContext ac, CssExpression expression)
+		throws InvalidParamException {
+	    this(ac, expression, false);
+	}
+	
 	/**
 	 * Add this property to the CssStyle.
 	 *

Index: MediaDeviceWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaDeviceWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaDeviceWidth.java	8 Jan 2003 10:05:40 -0000	1.1
+++ MediaDeviceWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:05:40  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,33 +79,39 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaDeviceWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssLength || val instanceof CssPercentage) {
-			    float f = ((Float) val.get()).floatValue();
-			    if (f < 0) {
-					throw new InvalidParamException("negative-value",
-								val.toString(), ac);
-			    }
-			    value = val;
-			} else if (val instanceof CssNumber) {
-			    value = ((CssNumber) val).getLength();
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaDeviceWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssLength || val instanceof CssPercentage) {
+		float f = ((Float) val.get()).floatValue();
+		if (f < 0) {
+		    throw new InvalidParamException("negative-value",
+			    val.toString(), ac);
 		}
+		value = val;
+	    } else if (val instanceof CssNumber) {
+		value = ((CssNumber) val).getLength();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
-
+    
+    public MediaDeviceWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssLinkBehavior.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLinkBehavior.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLinkBehavior.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssLinkBehavior.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -52,7 +52,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssLinkBehavior(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssLinkBehavior(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -71,6 +72,11 @@
 	}
     }
 
+    public CssLinkBehavior(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextOLStyle.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextOLStyle.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextOLStyle.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextOLStyle.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -7,12 +7,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +51,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextOLStyle(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextOLStyle(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -70,6 +71,11 @@
 	}
     }
 
+    public CssTextOLStyle(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextEndOverflow.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextEndOverflow.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextEndOverflow.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextEndOverflow.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -53,7 +53,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextEndOverflow(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextEndOverflow(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	if (val.equals(clip)) {
@@ -85,6 +86,11 @@
 	}
     }
 
+    public CssTextEndOverflow(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssColumnWidthPol.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnWidthPol.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnWidthPol.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssColumnWidthPol.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -54,7 +54,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssColumnWidthPol(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssColumnWidthPol(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -73,6 +74,11 @@
 	}
     }
 
+    public CssColumnWidthPol(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssUserFocusPointer.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssUserFocusPointer.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssUserFocusPointer.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssUserFocusPointer.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -55,7 +55,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssUserFocusPointer(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssUserFocusPointer(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -98,6 +99,11 @@
 	}
     }
 
+    public CssUserFocusPointer(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssMinHeightCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMinHeightCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMinHeightCSS3.java	24 Dec 2002 13:18:36 -0000	1.1
+++ CssMinHeightCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,15 +9,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  */
@@ -38,7 +38,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssMinHeightCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMinHeightCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -64,6 +65,11 @@
 	expression.next();
     }
 
+    public CssMinHeightCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssAlignmentBaseLine.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssAlignmentBaseLine.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- CssAlignmentBaseLine.java	20 Aug 2002 08:50:39 -0000	1.3
+++ CssAlignmentBaseLine.java	8 Aug 2005 13:18:54 -0000	1.4
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -39,28 +39,30 @@
 
     private static String[] values = {
 	"baseline", "use-script", "before-edge",
-	"text-before-edge", "after-edge", "text-after-edge", "central", "middle",
-	"ideographic", "alphabetic", "hanging", "mathematical", "inherit", "initial"
+	"text-before-edge", "after-edge", "text-after-edge", "central",
+	"middle", "ideographic", "alphabetic", "hanging", "mathematical",
+	"inherit", "initial"
     };
-
+    
     /**
      * Create a new CssAlignmentBaseLine
      */
     public CssAlignmentBaseLine() {
-		albaseline = baseline;
+	albaseline = baseline;
     }
-
+    
     /**
      * Create a new CssAlignmentBaseLine
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssAlignmentBaseLine(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
+    public CssAlignmentBaseLine(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
 	setByUser();
 	CssValue val = expression.getValue();
-
+	
 	int i = 0;
 	for (; i < values.length; i++) {
 	    if (val.toString().equals(values[i])) {
@@ -71,10 +73,15 @@
 	}
 	if (i == values.length) {
 	    throw new InvalidParamException("value", expression.getValue(),
-					    getPropertyName(), ac);
+		    getPropertyName(), ac);
 	}
     }
-
+    
+    public CssAlignmentBaseLine(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -85,7 +92,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssAlignmentBaseLine = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -100,7 +107,7 @@
 	    return ((Css3Style) style).cssAlignmentBaseLine;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -110,35 +117,35 @@
 	return (property instanceof CssAlignmentBaseLine &&
 		albaseline.equals(((CssAlignmentBaseLine) property).albaseline));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "alignment-baseline";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return albaseline;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return albaseline.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return albaseline.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
@@ -146,5 +153,5 @@
     public boolean isDefault() {
 	return (albaseline == baseline);
     }
-
+    
 }

Index: CssTextOLColor.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextOLColor.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextOLColor.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextOLColor.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssColor;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -48,7 +47,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextOLColor(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextOLColor(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -78,6 +78,11 @@
 	}
     }
 
+    public CssTextOLColor(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderRightImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderRightImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderRightImage.java	8 Jan 2003 10:21:01 -0000	1.1
+++ CssBorderRightImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,96 +8,102 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderRightImage extends CssProperty {
-
+    
     String value;
     ApplContext ac;
-	CssIdent none = new CssIdent("none");
-
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBorderRightImage
      */
     public CssBorderRightImage() {
-		value = "none";
+	value = "none";
     }
-
+    
     /**
      * Create new CssBorderRightImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderRightImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val instanceof CssIdent) {
-			if (val.equals(none)) {
-				value = "none";
-				expression.next();
-			} else if (val.equals(inherit)) {
-				value = "inherit";
-				expression.next();
-			}
-		} else if (val instanceof CssURL) {
-
-			value = val.toString();
-			expression.next();
-
-			val = expression.getValue();
-
-			if (val != null) {
-				if (val instanceof CssURL) {
-					value += " " + val.toString();
-					expression.next();
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-
-				expression.next();
-				val = expression.getValue();
-
-				if (val != null) {
-					if (val instanceof CssURL) {
-						value += " " + val.toString();
-						expression.next();
-					} else {
-						throw new InvalidParamException("value", expression.getValue(),
-							getPropertyName(), ac);
-					}
-				}
-			}
-		}
-		else {
+    public CssBorderRightImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssIdent) {
+	    if (val.equals(none)) {
+		value = "none";
+		expression.next();
+	    } else if (val.equals(inherit)) {
+		value = "inherit";
+		expression.next();
+	    }
+	} else if (val instanceof CssURL) {
+	    
+	    value = val.toString();
+	    expression.next();
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		if (val instanceof CssURL) {
+		    value += " " + val.toString();
+		    expression.next();
+		} else {
 		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+			    getPropertyName(), ac);
+		}
+		
+		expression.next();
+		val = expression.getValue();
+		
+		if (val != null) {
+		    if (val instanceof CssURL) {
+			value += " " + val.toString();
+			expression.next();
+		    } else {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
 		}
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBorderRightImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderRightImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderRightImage = this;
+	if (((Css3Style) style).cssBorderRightImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderRightImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -105,58 +111,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderRightImage();
-		} else {
-		    return ((Css3Style) style).cssBorderRightImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderRightImage();
+	} else {
+	    return ((Css3Style) style).cssBorderRightImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderRightImage &&
-                value.equals( ((CssBorderRightImage) property).value));
+	return (property instanceof CssBorderRightImage &&
+		value.equals( ((CssBorderRightImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-right-image";
+	return "border-right-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: CssIndentEdgeReset.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssIndentEdgeReset.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssIndentEdgeReset.java	24 Dec 2002 13:12:28 -0000	1.1
+++ CssIndentEdgeReset.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 public class CssIndentEdgeReset extends CssProperty {
 
@@ -39,7 +39,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssIndentEdgeReset(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssIndentEdgeReset(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -58,6 +59,11 @@
 	}
     }
 
+    public CssIndentEdgeReset(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssColumnWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnWidth.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssColumnWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssColumnWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssColumnWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -70,6 +71,11 @@
 	}
     }
 
+    public CssColumnWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssDropInitialBeforeAlign.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssDropInitialBeforeAlign.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssDropInitialBeforeAlign.java	20 Aug 2002 13:53:41 -0000	1.1
+++ CssDropInitialBeforeAlign.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -56,7 +56,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssDropInitialBeforeAlign(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssDropInitialBeforeAlign(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -75,6 +76,11 @@
 	}
     }
 
+    public CssDropInitialBeforeAlign(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextOverflowMode.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextOverflowMode.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextOverflowMode.java	15 Aug 2002 09:07:45 -0000	1.1
+++ CssTextOverflowMode.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,13 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -40,7 +40,8 @@
 	 *
 	 *
 	 */
-	public CssTextOverflowMode(ApplContext ac, CssExpression expression) throws InvalidParamException {
+	public CssTextOverflowMode(ApplContext ac, CssExpression expression,
+		boolean check) throws InvalidParamException {
 	    setByUser();
 	    CssValue val = expression.getValue();
 	    if (val.equals(clip)) {
@@ -65,6 +66,11 @@
 	    }
 	}
 
+	public CssTextOverflowMode(ApplContext ac, CssExpression expression)
+		throws InvalidParamException {
+	    this(ac, expression, false);
+	}
+	
 	/**
 	 * Add this property to the CssStyle.
 	 *

Index: MediaMaxDeviceWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMaxDeviceWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMaxDeviceWidth.java	8 Jan 2003 10:04:22 -0000	1.1
+++ MediaMaxDeviceWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:04:22  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -61,43 +70,49 @@
      * Create a new MediaMaxDeviceWidth
      */
     public MediaMaxDeviceWidth() {
-		//empty
+	//empty
     }
-
+    
     /**
      * Create a new MediaMaxDeviceWidth.
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMaxDeviceWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssLength || val instanceof CssPercentage) {
-			    float f = ((Float) val.get()).floatValue();
-			    if (f < 0) {
-					throw new InvalidParamException("negative-value",
-								val.toString(), ac);
-			    }
-			    value = val;
-			} else if (val instanceof CssNumber) {
-			    value = ((CssNumber) val).getLength();
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMaxDeviceWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssLength || val instanceof CssPercentage) {
+		float f = ((Float) val.get()).floatValue();
+		if (f < 0) {
+		    throw new InvalidParamException("negative-value",
+			    val.toString(), ac);
 		}
+		value = val;
+	    } else if (val instanceof CssNumber) {
+		value = ((CssNumber) val).getLength();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaMaxDeviceWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssWhiteSpaceCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssWhiteSpaceCSS3.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssWhiteSpaceCSS3.java	23 Dec 2002 08:19:46 -0000	1.2
+++ CssWhiteSpaceCSS3.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.3  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.2  2002/12/23 08:19:46  sijtsche
  * values changed
  *
@@ -37,12 +47,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *   <H4>
@@ -92,7 +102,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException values are incorrect
      */
-    public CssWhiteSpaceCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssWhiteSpaceCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -111,6 +122,10 @@
 					getPropertyName(), ac);
     }
 
+    public CssWhiteSpaceCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Returns the value of this property

Index: CssPaddingBottomCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssPaddingBottomCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssPaddingBottomCSS3.java	24 Dec 2002 13:20:53 -0000	1.1
+++ CssPaddingBottomCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/12/24 13:20:53  sijtsche
  * new version for CSS3: value initial added
  *
@@ -31,10 +41,10 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 
 /**
  *   <H4>
@@ -56,73 +66,80 @@
  * @version $Revision$
  */
 public class CssPaddingBottomCSS3 extends CssPaddingSideCSS3 {
-
-  /**
-   * Create a new CssPaddingBottomCSS3
-   */
-  public CssPaddingBottomCSS3() {
-    super();
-  }
-
-  /**
-   * Create a new CssPaddingBottomCSS3 with an another CssPaddingSideCSS3
-   *
-   * @param another The another side.
-   */
-  public CssPaddingBottomCSS3(CssPaddingSideCSS3 another) {
-    super(another);
-  }
-
-  /**
-   * Create a new CssPaddingBottomCSS3
-   *
-   * @param expression The expression for this property.
-   * @exception InvalidParamException Values are incorrect
-   */
-  public CssPaddingBottomCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
-    super(ac, expression);
-  }
-
-  /**
-   * Returns the name of this property
-   */
-  public String getPropertyName() {
-    return "padding-bottom";
-  }
-
-  /**
-   * Add this property to the CssStyle.
-   *
-   * @param style The CssStyle
-   */
-  public void addToStyle(ApplContext ac, CssStyle style) {
-    if (((Css3Style) style).cssPaddingBottomCSS3 != null)
+    
+    /**
+     * Create a new CssPaddingBottomCSS3
+     */
+    public CssPaddingBottomCSS3() {
+	super();
+    }
+    
+    /**
+     * Create a new CssPaddingBottomCSS3 with an another CssPaddingSideCSS3
+     *
+     * @param another The another side.
+     */
+    public CssPaddingBottomCSS3(CssPaddingSideCSS3 another) {
+	super(another);
+    }
+    
+    /**
+     * Create a new CssPaddingBottomCSS3
+     *
+     * @param expression The expression for this property.
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssPaddingBottomCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	super(ac, expression, check);
+    }
+    
+    public CssPaddingBottomCSS3(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "padding-bottom";
+    }
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssPaddingBottomCSS3 != null)
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssPaddingBottomCSS3 = this;
-
-  }
-
-  /**
-   * Get this property in the style.
-   *
-   * @param style The style where the property is
-   * @param resolve if true, resolve the style to find this property
-   */
-  public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-    if (resolve) {
-      return ((Css3Style) style).getPaddingBottomCSS3();
-    } else {
-      return ((Css3Style) style).cssPaddingCSS3.getBottom();
+	
     }
-  }
-
-  /**
-   * Compares two properties for equality.
-   *
-   * @param value The other property.
-   */
-  public boolean equals(CssProperty property) {
-    return (property instanceof CssPaddingBottomCSS3 && value.equals(((CssPaddingBottomCSS3) property).value));
-  }
-
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getPaddingBottomCSS3();
+	} else {
+	    return ((Css3Style) style).cssPaddingCSS3.getBottom();
+	}
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssPaddingBottomCSS3 && 
+		value.equals(((CssPaddingBottomCSS3) property).value));
+    }
+    
 }

Index: MediaMaxDeviceHeight.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMaxDeviceHeight.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMaxDeviceHeight.java	8 Jan 2003 10:04:22 -0000	1.1
+++ MediaMaxDeviceHeight.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:04:22  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,34 +79,40 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMaxDeviceHeight(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssLength || val instanceof CssPercentage) {
-			    float f = ((Float) val.get()).floatValue();
-			    if (f < 0) {
-					throw new InvalidParamException("negative-value",
-								val.toString(), ac);
-			    }
-			    value = val;
-			} else if (val instanceof CssNumber) {
-			    value = ((CssNumber) val).getLength();
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMaxDeviceHeight(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssLength || val instanceof CssPercentage) {
+		float f = ((Float) val.get()).floatValue();
+		if (f < 0) {
+		    throw new InvalidParamException("negative-value",
+			    val.toString(), ac);
 		}
+		value = val;
+	    } else if (val instanceof CssNumber) {
+		value = ((CssNumber) val).getLength();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaMaxDeviceHeight(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssBorderBottomLeftRadius.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomLeftRadius.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomLeftRadius.java	8 Jan 2003 10:17:35 -0000	1.1
+++ CssBorderBottomLeftRadius.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,61 +8,66 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssLength;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 public class CssBorderBottomLeftRadius extends CssProperty {
 
     String value;
     ApplContext ac;
-
+    
     /**
      * Create new CssBorderBottomLeftRadius
      */
     public CssBorderBottomLeftRadius() {
-		CssNumber cssnum =  new CssNumber((float) 1.0);
-       	value = cssnum.toString();
+	CssNumber cssnum =  new CssNumber((float) 1.0);
+	value = cssnum.toString();
     }
-
+    
     /**
      * Create new CssBorderBottomLeftRadius
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderBottomLeftRadius(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
+    public CssBorderBottomLeftRadius(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssLength) {
+	    value = val.toString();
+	    expression.next();
+	    
+	    val = expression.getValue();
+	    if (val != null) {
+		
 		if (val instanceof CssLength) {
-		    value = val.toString();
+		    value += " " + val.toString();
 		    expression.next();
-
-		    val = expression.getValue();
-		    if (val != null) {
-
-				if (val instanceof CssLength) {
-					value += " " + val.toString();
-					expression.next();
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-			}
-		}
-		else {
+		} else {
 		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+			    getPropertyName(), ac);
 		}
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBorderBottomLeftRadius(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
@@ -73,7 +78,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderBottomLeftRadius = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -87,7 +92,7 @@
 	    return ((Css3Style) style).cssBorderBottomLeftRadius;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -95,44 +100,44 @@
      */
     public boolean equals(CssProperty property) {
 	return (property instanceof CssBorderBottomLeftRadius &&
-                value.equals( ((CssBorderBottomLeftRadius) property).value));
+		value.equals( ((CssBorderBottomLeftRadius) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-bottom-left-radius";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: CssRubyAlign.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssRubyAlign.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssRubyAlign.java	15 Aug 2002 09:04:11 -0000	1.2
+++ CssRubyAlign.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,14 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -67,7 +65,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssRubyAlign(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssRubyAlign(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -113,6 +112,10 @@
 	}
     }
 
+    public CssRubyAlign(ApplContext ac, CssExpression expression)
+	throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle.

Index: CssFloatCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssFloatCSS3.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssFloatCSS3.java	24 Dec 2002 13:44:39 -0000	1.2
+++ CssFloatCSS3.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.3  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.2  2002/12/24 13:44:39  sijtsche
  * values changed
  *
@@ -37,12 +47,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssValue;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
 
 /**
  *   <H4>
@@ -178,7 +188,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssFloatCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssFloatCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 	setByUser();
 	if ( val instanceof CssIdent) {
@@ -194,6 +205,11 @@
 					getPropertyName(), ac);
     }
 
+    public CssFloatCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssMaxFontSize.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMaxFontSize.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMaxFontSize.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssMaxFontSize.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,15 +8,14 @@
 
 package org.w3c.css.properties3;
 
+import org.w3c.css.font.FontSize;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
-import org.w3c.css.font.FontSize;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -49,7 +48,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssMaxFontSize(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMaxFontSize(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -75,6 +75,11 @@
 	}
     }
 
+    public CssMaxFontSize(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssColumnRuleColor.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnRuleColor.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssColumnRuleColor.java	20 Aug 2002 08:51:51 -0000	1.1
+++ CssColumnRuleColor.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
+import org.w3c.css.properties.CssColor;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssColor;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -49,7 +48,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssColumnRuleColor(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssColumnRuleColor(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -65,6 +65,11 @@
 	}
     }
 
+    public CssColumnRuleColor(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextDecorationCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextDecorationCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextDecorationCSS3.java	7 Aug 2002 14:22:12 -0000	1.1
+++ CssTextDecorationCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/08/07 14:22:12  sijtsche
  * separate version for CSS3: lining values added
  *
@@ -37,12 +47,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *   <H4>
@@ -104,8 +114,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssTextDecorationCSS3(ApplContext ac, CssExpression expression)
-	    throws InvalidParamException {
+    public CssTextDecorationCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 	boolean find = true;
 	int computed = 0;
@@ -123,7 +133,7 @@
 	    return;
 	}
 	val = null;
-
+	
 	while (find) {
 	    find = false;
 	    val = expression.getValue();
@@ -131,7 +141,7 @@
 		index = getIndex((CssIdent) val, ac);
 		if (values[index] == true) {
 		    throw new InvalidParamException("same-value",
-						    TEXTDECORATION[index], ac);
+			    TEXTDECORATION[index], ac);
 		} else {
 		    values[index] = true;
 		    find = true;
@@ -139,11 +149,16 @@
 		}
 	    } else if (val != null) {
 		throw new InvalidParamException("value", val.toString(),
-						getPropertyName(), ac);
+			getPropertyName(), ac);
 	    }
 	}
     }
-
+    
+    public CssTextDecorationCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: MediaMaxDeviceAspectRatio.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMaxDeviceAspectRatio.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMaxDeviceAspectRatio.java	8 Jan 2003 10:04:22 -0000	1.1
+++ MediaMaxDeviceAspectRatio.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:04:22  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,58 +78,64 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMaxDeviceAspectRatio(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
+    public MediaMaxDeviceAspectRatio(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	char op = SPACE;
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val.toString();
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
-
-		setByUser();
-		char op = SPACE;
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val.toString();
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			op = expression.getOperator();
-			expression.next();
-			val = expression.getValue();
-
-			if (op == SLASH && val != null) {
-
-				if (val instanceof CssNumber) {
-					if (((CssNumber) val).isInteger()) {
-						value += "/" + val.toString();
-					} else {
-					    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-					}
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-				}
-
-
-			} else {
-				throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-			}
-
-			expression.next();
-
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    op = expression.getOperator();
+	    expression.next();
+	    val = expression.getValue();
+	    
+	    if (op == SLASH && val != null) {
+		
+		if (val instanceof CssNumber) {
+		    if (((CssNumber) val).isInteger()) {
+			value += "/" + val.toString();
+		    } else {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+		
+		
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	    
+	}
     }
 
+    public MediaMaxDeviceAspectRatio(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssTextAlignLast.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextAlignLast.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssTextAlignLast.java	11 Jul 2003 14:04:08 -0000	1.2
+++ CssTextAlignLast.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -60,7 +60,8 @@
      * @param expression The expression for this parameter
      * @exception InvalidParamException Incorrect value
      */
-    public CssTextAlignLast(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextAlignLast(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -101,6 +102,11 @@
 	}
     }
 
+    public CssTextAlignLast(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: MediaGrid.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaGrid.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaGrid.java	8 Jan 2003 10:05:40 -0000	1.1
+++ MediaGrid.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:05:40  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,32 +77,38 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaGrid(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaGrid(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaGrid(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssBorderRadius.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderRadius.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderRadius.java	8 Jan 2003 10:18:44 -0000	1.1
+++ CssBorderRadius.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,15 +8,14 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssLength;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 
 
@@ -24,58 +23,64 @@
 
     String value;
     ApplContext ac;
-
+    
     /**
      * Create new CssBorderRadius
      */
     public CssBorderRadius() {
-		CssNumber cssnum =  new CssNumber((float) 1.0);
-       	value = cssnum.toString();
+	CssNumber cssnum =  new CssNumber((float) 1.0);
+	value = cssnum.toString();
     }
-
+    
     /**
      * Create new CssBorderRadius
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderRadius(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
+    public CssBorderRadius(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssLength) {
+	    value = val.toString();
+	    expression.next();
+	    
+	    val = expression.getValue();
+	    if (val != null) {
+		
 		if (val instanceof CssLength) {
-		    value = val.toString();
+		    value += " " + val.toString();
 		    expression.next();
-
-		    val = expression.getValue();
-		    if (val != null) {
-
-				if (val instanceof CssLength) {
-					value += " " + val.toString();
-					expression.next();
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-			}
-		}
-		else {
+		} else {
 		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+			    getPropertyName(), ac);
 		}
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBorderRadius(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }    
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderRadius != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderRadius = this;
+	if (((Css3Style) style).cssBorderRadius != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderRadius = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -83,58 +88,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderRadius();
-		} else {
-		    return ((Css3Style) style).cssBorderRadius;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderRadius();
+	} else {
+	    return ((Css3Style) style).cssBorderRadius;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderRadius &&
-                value.equals( ((CssBorderRadius) property).value));
+	return (property instanceof CssBorderRadius &&
+		value.equals( ((CssBorderRadius) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-radius";
+	return "border-radius";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
 
 }

Index: CssBorderRightFitLength.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderRightFitLength.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderRightFitLength.java	8 Jan 2003 10:21:01 -0000	1.1
+++ CssBorderRightFitLength.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderRightFitLength extends CssProperty {
@@ -42,54 +40,60 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderRightFitLength(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderRightFitLength(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderRightFitLength(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderRightFitLength = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderRightFitLength;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderRightFitLength &&
 		value.equals(((CssBorderRightFitLength) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-right-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
 
 }

Index: CssBorderFitWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderFitWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderFitWidth.java	8 Jan 2003 10:18:44 -0000	1.1
+++ CssBorderFitWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,76 +9,80 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderFitWidth extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderFitWidth
      */
     public CssBorderFitWidth() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderFitWidth
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderFitWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (expression.getCount() <= 4) {
-
-			val = expression.getValue();
-
-			if (val != null) {
-
-				for (; i < expression.getCount(); i++) {
-
-					int j = 0;
-					for (; j < values.length; j++) {
-					    if (val.toString().equals(values[j])) {
-							value += val.toString() + " ";
-							expression.next();
-							break;
-				    	}
-					}
-
-					if (j == values.length) {
-						    throw new InvalidParamException("value", expression.getValue(),
-										    getPropertyName(), ac);
-					}
-				}
+    public CssBorderFitWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (expression.getCount() <= 4) {
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		
+		for (; i < expression.getCount(); i++) {
+		    
+		    int j = 0;
+		    for (; j < values.length; j++) {
+			if (val.toString().equals(values[j])) {
+			    value += val.toString() + " ";
+			    expression.next();
+			    break;
 			}
-
-		} else {
+		    }
+		    
+		    if (j == values.length) {
 			throw new InvalidParamException("value", expression.getValue(),
 				getPropertyName(), ac);
+		    }
 		}
-
+	    }
+	    
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
     }
-
+    
+    public CssBorderFitWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -89,7 +93,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderFitWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -104,7 +108,7 @@
 	    return ((Css3Style) style).cssBorderFitWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -114,41 +118,41 @@
 	return (property instanceof CssBorderFitWidth &&
 		value.equals(((CssBorderFitWidth) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-fit-width";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: MediaMaxColor.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMaxColor.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMaxColor.java	8 Jan 2003 10:05:40 -0000	1.1
+++ MediaMaxColor.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:05:40  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -62,7 +68,7 @@
      * Create a new MediaMaxColor
      */
     public MediaMaxColor() {
-		//empty
+	//empty
     }
 
     /**
@@ -71,32 +77,38 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMaxColor(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMaxColor(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaMaxColor(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssFontSmooth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssFontSmooth.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssFontSmooth.java	7 Aug 2002 13:01:15 -0000	1.2
+++ CssFontSmooth.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -10,14 +10,14 @@
 
 import java.util.Hashtable;
 
-import org.w3c.css.values.CssLength;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -65,7 +65,8 @@
      * @param  expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssFontSmooth(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssFontSmooth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	fsizes.put(xxsmall, "nothing");
 	fsizes.put(xsmall, "nothing");
@@ -118,79 +119,83 @@
 					    getPropertyName(), ac);
 	}
     }
-
-
-	/**
-	 * Add this property to the CssStyle.
-	 *
-	 * @param style The CssStyle
-	 */
-	public void addToStyle(ApplContext ac, CssStyle style) {
-	    if (((Css3Style) style).cssFontSmooth != null)
-		style.addRedefinitionWarning(ac, this);
-	    ((Css3Style) style).cssFontSmooth = this;
-	}
-
-	/**
-	 * Get this property in the style.
-	 *
-	 * @param style The style where the property is
-	 * @param resolve if true, resolve the style to find this property
-	 */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getFontSmooth();
-	    } else {
-		return ((Css3Style) style).cssFontSmooth;
-	    }
-	}
-
-       /**
-        * Compares two properties for equality.
-        *
-        * @param value The other property.
-        */
-       public boolean equals(CssProperty property) {
-	   return (property instanceof CssFontSmooth &&
-                fontsmooth.equals( ((CssFontSmooth) property).fontsmooth));
-       }
-
-	/**
-	 * Returns the name of this property
-	 */
-	public String getPropertyName() {
-	    return "font-smooth";
-	}
-
-	/**
-	 * Returns the value of this property
-	 */
-	public Object get() {
-	    return fontsmooth;
-	}
-
-	/**
-	 * Returns true if this property is "softly" inherited
-	 */
-	public boolean isSoftlyInherited() {
-	    return fontsmooth.equals(inherit);
-	}
-
-	/**
-	 * Returns a string representation of the object
-	 */
-	public String toString() {
-	    return fontsmooth.toString();
-	}
-
-	/**
-	 * Is the value of this property a default value
-	 * It is used by all macro for the function <code>print</code>
-	 */
-	public boolean isDefault() {
-	    return fontsmooth == auto;
+    
+    public CssFontSmooth(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }    
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssFontSmooth != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssFontSmooth = this;
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getFontSmooth();
+	} else {
+	    return ((Css3Style) style).cssFontSmooth;
 	}
-
     }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssFontSmooth &&
+		fontsmooth.equals( ((CssFontSmooth) property).fontsmooth));
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "font-smooth";
+    }
+    
+    /**
+     * Returns the value of this property
+     */
+    public Object get() {
+	return fontsmooth;
+    }
+    
+    /**
+     * Returns true if this property is "softly" inherited
+     */
+    public boolean isSoftlyInherited() {
+	return fontsmooth.equals(inherit);
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return fontsmooth.toString();
+    }
+    
+    /**
+     * Is the value of this property a default value
+     * It is used by all macro for the function <code>print</code>
+     */
+    public boolean isDefault() {
+	return fontsmooth == auto;
+    }
+    
+}
 
 

Index: CssDropInitialValue.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssDropInitialValue.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssDropInitialValue.java	20 Aug 2002 13:53:41 -0000	1.1
+++ CssDropInitialValue.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,15 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -42,7 +40,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssDropInitialValue(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssDropInitialValue(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -61,6 +60,11 @@
 	}
     }
 
+    public CssDropInitialValue(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssLineStackingStrategy.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineStackingStrategy.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineStackingStrategy.java	20 Aug 2002 13:53:41 -0000	1.1
+++ CssLineStackingStrategy.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -27,7 +27,8 @@
     static CssIdent inlinelineheight = new CssIdent("inline-line-height");
 
     private static String[] values = {
-	"inline-line-height", "block-line-height", "max-height", "grid-height", "inherit", "initial"
+	"inline-line-height", "block-line-height", "max-height", "grid-height", 
+	"inherit", "initial"
     };
 
     /**
@@ -43,7 +44,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssLineStackingStrategy(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssLineStackingStrategy(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -62,6 +64,11 @@
 	}
     }
 
+    public CssLineStackingStrategy(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderTopRightFitLength.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopRightFitLength.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopRightFitLength.java	8 Jan 2003 10:21:57 -0000	1.1
+++ CssBorderTopRightFitLength.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderTopRightFitLength extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderTopRightFitLength
      */
     public CssBorderTopRightFitLength() {
-		value = "overwrite";
+	value = "overwrite";
     }
-
+    
     /**
      * Create a new CssBorderTopRightFitLength
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderTopRightFitLength(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderTopRightFitLength(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderTopRightFitLength(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderTopRightFitLength = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderTopRightFitLength;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderTopRightFitLength &&
 		value.equals(((CssBorderTopRightFitLength) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-top-right-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("overwrite");
+	return value.equals("overwrite");
     }
 
 }

Index: CssTextUlPos.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextUlPos.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssTextUlPos.java	8 Aug 2002 08:35:03 -0000	1.2
+++ CssTextUlPos.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +51,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextUlPos(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextUlPos(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -83,6 +84,11 @@
 
     }
 
+    public CssTextUlPos(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextOverflow.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextOverflow.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextOverflow.java	19 Aug 2002 07:35:33 -0000	1.1
+++ CssTextOverflow.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,17 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import java.util.Hashtable;
-
-import org.w3c.css.values.CssColor;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -43,7 +39,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException The expression is incorrect
      */
-    public CssTextOverflow(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextOverflow(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	CssValue val = expression.getValue();
 	int maxvalues = 2;
@@ -82,6 +79,10 @@
 
     }
 
+    public CssTextOverflow(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle

Index: CssGlyphHor.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssGlyphHor.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- CssGlyphHor.java	14 Jul 2003 14:39:23 -0000	1.3
+++ CssGlyphHor.java	8 Aug 2005 13:18:54 -0000	1.4
@@ -9,14 +9,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssAngle;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -53,7 +53,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssGlyphHor(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssGlyphHor(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	this.ac = ac;
 	setByUser();
@@ -83,6 +84,10 @@
 	}
     }
 
+    public CssGlyphHor(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }    
 
     /**
      * Add this property to the CssStyle

Index: CssLineBoxContain.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineBoxContain.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineBoxContain.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssLineBoxContain.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/07/19 20:30:12  sijtsche
  * files representing CSS3 properties
  *
@@ -25,12 +35,11 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
 
 /**
  *   <H4>
@@ -69,7 +78,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */  
-    public CssLineBoxContain(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssLineBoxContain(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 	
 	setByUser();
@@ -89,6 +99,11 @@
 
     }
     
+    public CssLineBoxContain(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssLineGrid.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineGrid.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineGrid.java	15 Aug 2002 09:07:45 -0000	1.1
+++ CssLineGrid.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,17 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import java.util.Hashtable;
-
-import org.w3c.css.values.CssColor;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -43,7 +39,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException The expression is incorrect
      */
-    public CssLineGrid(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssLineGrid(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	CssValue val = expression.getValue();
 	int maxvalues = 2;
@@ -82,6 +79,10 @@
 
     }
 
+    public CssLineGrid(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle

Index: MediaDeviceAspectRatio.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaDeviceAspectRatio.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaDeviceAspectRatio.java	8 Jan 2003 10:05:40 -0000	1.1
+++ MediaDeviceAspectRatio.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:05:40  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,58 +78,64 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaDeviceAspectRatio(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
+    public MediaDeviceAspectRatio(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	char op = SPACE;
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val.toString();
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
-
-		setByUser();
-		char op = SPACE;
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val.toString();
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			op = expression.getOperator();
-			expression.next();
-			val = expression.getValue();
-
-			if (op == SLASH && val != null) {
-
-				if (val instanceof CssNumber) {
-					if (((CssNumber) val).isInteger()) {
-						value += "/" + val.toString();
-					} else {
-					    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-					}
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-				}
-
-
-			} else {
-				throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-			}
-
-			expression.next();
-
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    op = expression.getOperator();
+	    expression.next();
+	    val = expression.getValue();
+	    
+	    if (op == SLASH && val != null) {
+		
+		if (val instanceof CssNumber) {
+		    if (((CssNumber) val).isInteger()) {
+			value += "/" + val.toString();
+		    } else {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+		
+		
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	    
+	}
     }
 
+    public MediaDeviceAspectRatio(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: MediaMaxResolution.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMaxResolution.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMaxResolution.java	8 Jan 2003 10:04:22 -0000	1.1
+++ MediaMaxResolution.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:04:22  sijtsche
  * new media feature for media queries
  *
@@ -40,17 +50,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssOperator;
 import org.w3c.css.values.CssResolution;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -72,27 +77,33 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMaxResolution(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssResolution) {
-				value = val;
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
-		}
+    public MediaMaxResolution(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssResolution) {
+		value = val;
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaMaxResolution(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssTextLTColor.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextLTColor.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextLTColor.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextLTColor.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssColor;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -48,7 +47,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextLTColor(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextLTColor(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -78,6 +78,11 @@
 	}
     }
 
+    public CssTextLTColor(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssKerningMode.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssKerningMode.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssKerningMode.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssKerningMode.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -49,7 +49,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssKerningMode(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssKerningMode(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	if (val.equals(none)) {
@@ -73,6 +74,11 @@
 	}
     }
 
+    public CssKerningMode(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextJustifyTrim.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextJustifyTrim.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssTextJustifyTrim.java	14 Jul 2003 13:59:18 -0000	1.2
+++ CssTextJustifyTrim.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -54,7 +54,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssTextJustifyTrim(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextJustifyTrim(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -81,6 +82,11 @@
 	}
     }
 
+    public CssTextJustifyTrim(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssDominantBaseLine.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssDominantBaseLine.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- CssDominantBaseLine.java	20 Aug 2002 09:02:23 -0000	1.3
+++ CssDominantBaseLine.java	8 Aug 2005 13:18:54 -0000	1.4
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -60,7 +60,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssDominantBaseLine(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssDominantBaseLine(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -79,6 +80,11 @@
 	}
     }
 
+    public CssDominantBaseLine(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: MediaMinDeviceAspectRatio.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMinDeviceAspectRatio.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMinDeviceAspectRatio.java	8 Jan 2003 10:02:55 -0000	1.1
+++ MediaMinDeviceAspectRatio.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:02:55  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,58 +78,64 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMinDeviceAspectRatio(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
+    public MediaMinDeviceAspectRatio(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	char op = SPACE;
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val.toString();
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
-
-		setByUser();
-		char op = SPACE;
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val.toString();
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			op = expression.getOperator();
-			expression.next();
-			val = expression.getValue();
-
-			if (op == SLASH && val != null) {
-
-				if (val instanceof CssNumber) {
-					if (((CssNumber) val).isInteger()) {
-						value += "/" + val.toString();
-					} else {
-					    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-					}
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-				}
-
-
-			} else {
-				throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-			}
-
-			expression.next();
-
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    op = expression.getOperator();
+	    expression.next();
+	    val = expression.getValue();
+	    
+	    if (op == SLASH && val != null) {
+		
+		if (val instanceof CssNumber) {
+		    if (((CssNumber) val).isInteger()) {
+			value += "/" + val.toString();
+		    } else {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+		
+		
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	    
+	}
     }
-
+    
+    public MediaMinDeviceAspectRatio(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssColumnSpaceDistribution.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssColumnSpaceDistribution.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssColumnSpaceDistribution.java	19 Aug 2002 10:47:27 -0000	1.2
+++ CssColumnSpaceDistribution.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -34,62 +34,68 @@
  */
 
 public class CssColumnSpaceDistribution extends CssProperty implements CssOperator {
-
+    
     String distribution = "";
-
+    
     static CssIdent end = new CssIdent("end");
-
+    
     private static String[] values = {
 	"start", "end", "inner", "outer", "between", "inherit"
     };
-
+    
     /**
      * Create a new CssColumnSpaceDistribution
      */
     public CssColumnSpaceDistribution() {
 	// nothing to do
     }
-
+    
     /**
      * Create a new CssColumnSpaceDistribution
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssColumnSpaceDistribution(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-
-		CssValue val = expression.getValue();
-		int maxvalues = 2;
-		boolean correct = true;
-		char op = SPACE;
-
-		while (correct && (val != null) && (maxvalues-- > 0)) {
-
-			correct = false;
-
-			for (int i = 0; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					distribution += " " + val.toString();
-					expression.next();
-					correct = true;
-					break;
-			    }
-			}
-
-		    if (!correct) {
-			throw new InvalidParamException("value", expression.getValue(),
-							getPropertyName(), ac);
-		    }
-
-		    val = expression.getValue();
-		    op = expression.getOperator();
-
+    public CssColumnSpaceDistribution(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	
+	CssValue val = expression.getValue();
+	int maxvalues = 2;
+	boolean correct = true;
+	char op = SPACE;
+	
+	while (correct && (val != null) && (maxvalues-- > 0)) {
+	    
+	    correct = false;
+	    
+	    for (int i = 0; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    distribution += " " + val.toString();
+		    expression.next();
+		    correct = true;
+		    break;
 		}
-
+	    }
+	    
+	    if (!correct) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    val = expression.getValue();
+	    op = expression.getOperator();
+	    
+	}
+	
     }
-
+    
+    public CssColumnSpaceDistribution(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +106,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssColumnSpaceDistribution = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +121,7 @@
 	    return ((Css3Style) style).cssColumnSpaceDistribution;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,35 +131,35 @@
 	return (property instanceof CssColumnSpaceDistribution &&
 		distribution.equals(((CssColumnSpaceDistribution) property).distribution));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "column-space-distribution";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return distribution;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return distribution.equals("inherit");
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return distribution;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
@@ -161,5 +167,5 @@
     public boolean isDefault() {
 	return (distribution.equals("end"));
     }
-
+    
 }

Index: MediaScan.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaScan.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaScan.java	8 Jan 2003 10:01:44 -0000	1.1
+++ MediaScan.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:01:44  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -72,33 +79,39 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaScan(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-			    if (val.equals(progressive) || val.equals(interlace)) {
-			    	value = val;
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaScan(ApplContext ac, CssExpression expression, boolean check)
+    	throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		if (val.equals(progressive) || val.equals(interlace)) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+		
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaScan(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssWrapOption.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssWrapOption.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssWrapOption.java	23 Dec 2002 08:19:46 -0000	1.2
+++ CssWrapOption.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -8,138 +8,143 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *
  */
-
-    public class CssWrapOption extends CssProperty {
-
-	CssValue wrapoption;
-
-	private static CssIdent wrap = new CssIdent("wrap");
-	private static CssIdent softwrap = new CssIdent("soft-wrap");
-	private static CssIdent hardwrap = new CssIdent("hard-wrap");
-	private static CssIdent emergency = new CssIdent("emergency");
-
-	/**
-	 * Create a new CssWrapOption
-	 */
-	public CssWrapOption() {
+public class CssWrapOption extends CssProperty {
+    
+    CssValue wrapoption;
+    
+    private static CssIdent wrap = new CssIdent("wrap");
+    private static CssIdent softwrap = new CssIdent("soft-wrap");
+    private static CssIdent hardwrap = new CssIdent("hard-wrap");
+    private static CssIdent emergency = new CssIdent("emergency");
+    
+    /**
+     * Create a new CssWrapOption
+     */
+    public CssWrapOption() {
+	wrapoption = wrap;
+    }
+    
+    /**
+     * Create a new CssWrapOption
+     *
+     *
+     */
+    public CssWrapOption(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	if (val.equals(wrap)) {
 	    wrapoption = wrap;
+	    expression.next();
 	}
-
-	/**
-	 * Create a new CssWrapOption
-	 *
-	 *
-	 */
-	public CssWrapOption(ApplContext ac, CssExpression expression) throws InvalidParamException {
-	    setByUser();
-	    CssValue val = expression.getValue();
-	    if (val.equals(wrap)) {
-			wrapoption = wrap;
-			expression.next();
-	    }
-	    else if (val.equals(softwrap)) {
-			wrapoption = softwrap;
-			expression.next();
-	    }
-	    else if (val.equals(hardwrap)) {
-			wrapoption = hardwrap;
-			expression.next();
-	    }
-	    else if (val.equals(emergency)) {
-			wrapoption = emergency;
-			expression.next();
-	    }
-	    else if (val.equals(inherit)) {
-			wrapoption = inherit;
-			expression.next();
-	    }
-
-	    else {
-		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-	    }
-	}
-
-	/**
-	 * Add this property to the CssStyle.
-	 *
-	 * @param style The CssStyle
-	 */
-	public void addToStyle(ApplContext ac, CssStyle style) {
-	    if (((Css3Style) style).cssWrapOption != null)
-		style.addRedefinitionWarning(ac, this);
-	    ((Css3Style) style).cssWrapOption = this;
-
-	}
-
-	/**
-	 * Get this property in the style.
-	 *
-	 * @param style The style where the property is
-	 * @param resolve if true, resolve the style to find this property
-	 */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getWrapOption();
-	    } else {
-		return ((Css3Style) style).cssWrapOption;
-	    }
-	}
-
-	/**
-	 * Compares two properties for equality.
-	 *
-	 * @param value The other property.
-	 */
-	public boolean equals(CssProperty property) {
-	    return (property instanceof CssWrapOption &&
-		    wrapoption.equals( ((CssWrapOption) property).wrapoption));
+	else if (val.equals(softwrap)) {
+	    wrapoption = softwrap;
+	    expression.next();
 	}
-
-	/**
-	 * Returns the name of this property
-	 */
-	public String getPropertyName() {
-	    return "wrap-option";
+	else if (val.equals(hardwrap)) {
+	    wrapoption = hardwrap;
+	    expression.next();
 	}
-
-	/**
-	 * Returns the value of this property
-	 */
-	public Object get() {
-	    return wrapoption;
+	else if (val.equals(emergency)) {
+	    wrapoption = emergency;
+	    expression.next();
 	}
-
-	/**
-	 * Returns true if this property is "softly" inherited
-	 */
-	public boolean isSoftlyInherited() {
-	    return wrapoption.equals(inherit);
+	else if (val.equals(inherit)) {
+	    wrapoption = inherit;
+	    expression.next();
 	}
-
-	/**
-	 * Returns a string representation of the object
-	 */
-	public String toString() {
-	    return wrapoption.toString();
+	
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
 	}
-
-	/**
-	 * Is the value of this property a default value
-	 * It is used by all macro for the function <code>print</code>
-	 */
-	public boolean isDefault() {
-	    return wrapoption == wrap;
+    }
+    
+    public CssWrapOption(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssWrapOption != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssWrapOption = this;
+	
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getWrapOption();
+	} else {
+	    return ((Css3Style) style).cssWrapOption;
 	}
-
     }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssWrapOption &&
+		wrapoption.equals( ((CssWrapOption) property).wrapoption));
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "wrap-option";
+    }
+    
+    /**
+     * Returns the value of this property
+     */
+    public Object get() {
+	return wrapoption;
+    }
+    
+    /**
+     * Returns true if this property is "softly" inherited
+     */
+    public boolean isSoftlyInherited() {
+	return wrapoption.equals(inherit);
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return wrapoption.toString();
+    }
+    
+    /**
+     * Is the value of this property a default value
+     * It is used by all macro for the function <code>print</code>
+     */
+    public boolean isDefault() {
+	return wrapoption == wrap;
+    }
+    
+}

Index: CssBorderTopFitWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopFitWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopFitWidth.java	8 Jan 2003 10:21:01 -0000	1.1
+++ CssBorderTopFitWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderTopFitWidth extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderTopFitWidth
      */
     public CssBorderTopFitWidth() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderTopFitWidth
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderTopFitWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderTopFitWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+        
+    public CssBorderTopFitWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderTopFitWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderTopFitWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderTopFitWidth &&
 		value.equals(((CssBorderTopFitWidth) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-top-fit-width";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: CssUserInput.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssUserInput.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssUserInput.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssUserInput.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -52,7 +51,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssUserInput(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssUserInput(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	
 	setByUser();
 	CssValue val = expression.getValue();
@@ -79,6 +79,11 @@
 	}
     }
 
+    public CssUserInput(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssUserSelect.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssUserSelect.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssUserSelect.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssUserSelect.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -54,7 +54,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssUserSelect(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssUserSelect(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -89,6 +90,11 @@
 	}
     }
 
+    public CssUserSelect(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextOverflowEllipsis.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextOverflowEllipsis.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextOverflowEllipsis.java	19 Aug 2002 07:35:33 -0000	1.1
+++ CssTextOverflowEllipsis.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,14 +8,14 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssURL;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -31,47 +31,55 @@
 	public CssTextOverflowEllipsis() {
 	    overflowellipsis = "...";
 	}
-
+	
 	/**
 	 * Create a new CssTextOverflowEllipsis
 	 *
 	 *
 	 */
-	public CssTextOverflowEllipsis(ApplContext ac, CssExpression expression) throws InvalidParamException {
+	public CssTextOverflowEllipsis(ApplContext ac, CssExpression expression,
+		boolean check) throws InvalidParamException {
 	    setByUser();
 	    CssValue val = expression.getValue();
 	    CssValue val2 = null;
-
+	    
 	    if (val instanceof CssIdent) {
-			overflowellipsis = val.toString();
-			expression.next();
+		overflowellipsis = val.toString();
+		expression.next();
 	    }
 	    else if (val instanceof CssURL) {
-			overflowellipsis = val.toString();
-			expression.next();
+		overflowellipsis = val.toString();
+		expression.next();
 	    }
 	    else {
-		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+		throw new InvalidParamException("value", val.toString(),
+			getPropertyName(), ac);
 	    }
-
+	    
 	    val2 = expression.getValue();
-
+	    
 	    if (val2 != null) {
-
-		    if (val2 instanceof CssIdent) {
-				overflowellipsis += " " + val2.toString();
-				expression.next();
-		    }
-		    else if (val2 instanceof CssURL) {
-				overflowellipsis += " " + val2.toString();
-				expression.next();
-		    }
-		    else {
-				throw new InvalidParamException("value", val2.toString(), getPropertyName(), ac);
-		    }
+		
+		if (val2 instanceof CssIdent) {
+		    overflowellipsis += " " + val2.toString();
+		    expression.next();
+		}
+		else if (val2 instanceof CssURL) {
+		    overflowellipsis += " " + val2.toString();
+		    expression.next();
 		}
+		else {
+		    throw new InvalidParamException("value",
+			    val2.toString(), getPropertyName(), ac);
+		}
+	    }
 	}
 
+	public CssTextOverflowEllipsis(ApplContext ac, CssExpression expression)
+		throws InvalidParamException {
+	    this(ac, expression, false);
+	}
+	
 	/**
 	 * Add this property to the CssStyle.
 	 *

Index: CssFloatDisplace.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssFloatDisplace.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssFloatDisplace.java	24 Dec 2002 13:12:28 -0000	1.1
+++ CssFloatDisplace.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -52,7 +52,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssFloatDisplace(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssFloatDisplace(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -71,6 +72,11 @@
 	}
     }
 
+    public CssFloatDisplace(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderTopRightRadius.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopRightRadius.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopRightRadius.java	8 Jan 2003 10:19:50 -0000	1.1
+++ CssBorderTopRightRadius.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,61 +8,66 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssLength;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 public class CssBorderTopRightRadius extends CssProperty {
-
+    
     String value;
     ApplContext ac;
-
+    
     /**
      * Create new CssBorderTopRightRadius
      */
     public CssBorderTopRightRadius() {
-		CssNumber cssnum =  new CssNumber((float) 1.0);
-       	value = cssnum.toString();
+	CssNumber cssnum =  new CssNumber((float) 1.0);
+	value = cssnum.toString();
     }
-
+    
     /**
      * Create new CssBorderTopRightRadius
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderTopRightRadius(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
+    public CssBorderTopRightRadius(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssLength) {
+	    value = val.toString();
+	    expression.next();
+	    
+	    val = expression.getValue();
+	    if (val != null) {
+		
 		if (val instanceof CssLength) {
-		    value = val.toString();
+		    value += " " + val.toString();
 		    expression.next();
-
-		    val = expression.getValue();
-		    if (val != null) {
-
-				if (val instanceof CssLength) {
-					value += " " + val.toString();
-					expression.next();
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-			}
-		}
-		else {
+		} else {
 		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+			    getPropertyName(), ac);
 		}
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBorderTopRightRadius(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
@@ -73,7 +78,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderTopRightRadius = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -87,7 +92,7 @@
 	    return ((Css3Style) style).cssBorderTopRightRadius;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -95,44 +100,44 @@
      */
     public boolean equals(CssProperty property) {
 	return (property instanceof CssBorderTopRightRadius &&
-                value.equals( ((CssBorderTopRightRadius) property).value));
+		value.equals( ((CssBorderTopRightRadius) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-top-right-radius";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: CssDropInitialSize.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssDropInitialSize.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssDropInitialSize.java	20 Aug 2002 13:53:41 -0000	1.1
+++ CssDropInitialSize.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,15 +9,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -55,7 +55,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssDropInitialSize(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssDropInitialSize(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -86,6 +87,11 @@
 	}
     }
 
+    public CssDropInitialSize(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssMarginInside.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMarginInside.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMarginInside.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssMarginInside.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/07/19 20:30:12  sijtsche
  * files representing CSS3 properties
  *
@@ -31,11 +41,11 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.properties.CssMarginSide;
 import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 
 /**
  *   <H4>
@@ -80,8 +90,14 @@
    * @param expression The expression foir this property.
    * @exception InvalidParamException Values are incorrect
    */
-  public CssMarginInside(ApplContext ac, CssExpression expression) throws InvalidParamException {
-    super(ac, expression);
+  public CssMarginInside(ApplContext ac, CssExpression expression,
+	  boolean check) throws InvalidParamException {
+    super(ac, expression, check);
+  }
+  
+  public CssMarginInside(ApplContext ac, CssExpression expression)
+	throws InvalidParamException {
+    this(ac, expression, false);
   }
   
   /**

Index: CssRubySpan.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssRubySpan.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssRubySpan.java	20 Dec 2002 15:58:14 -0000	1.1
+++ CssRubySpan.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -11,14 +11,13 @@
 import java.util.Vector;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssOperator;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssFunction;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,51 +49,57 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssRubySpan(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		String kc = new String();
-		int hyphenindex;
-		int counter = 0;
-		char op = expression.getOperator();
-	        CssValue val = expression.getValue();
-		String part = new String();
-		String rest = new String();
-		Vector ks = new Vector();
-		setByUser();
-
-		if (val.equals(none)) {
-		    rubyspan = none;
-		    expression.next();
-		    return;
-		}
-		else if (val.equals(inherit)) {
-		    rubyspan = inherit;
-		    expression.next();
-		    return;
-		}
-		else if (val instanceof CssFunction) {
-		    CssFunction attr = (CssFunction) val;
-		    CssExpression params = attr.getParameters();
-		    CssValue v = params.getValue();
-		    if (attr.getName().equals("attr")) {
-				if ((params.getCount() != 1)
-				    || !(v instanceof CssIdent)) {
-				    throw new InvalidParamException("attr", params.getValue(),
-								    getPropertyName(), ac);
-				}
-		    }
-		    else throw new InvalidParamException("value", expression.getValue(),
-							 getPropertyName(), ac);
-		    rubyspan = val;
-		    expression.next();
-		    return;
-		} else {
-			throw new InvalidParamException("value", expression.getValue(),
-							 getPropertyName(), ac);
+    public CssRubySpan(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	//String kc = new String();
+	//int hyphenindex;
+	//int counter = 0;
+	//char op = expression.getOperator();
+	CssValue val = expression.getValue();
+	//String part = new String();
+	//String rest = new String();
+	//Vector ks = new Vector();
+	setByUser();
+	
+	if (val.equals(none)) {
+	    rubyspan = none;
+	    expression.next();
+	    return;
+	}
+	else if (val.equals(inherit)) {
+	    rubyspan = inherit;
+	    expression.next();
+	    return;
+	}
+	else if (val instanceof CssFunction) {
+	    CssFunction attr = (CssFunction) val;
+	    CssExpression params = attr.getParameters();
+	    CssValue v = params.getValue();
+	    if (attr.getName().equals("attr")) {
+		if ((params.getCount() != 1)
+			|| !(v instanceof CssIdent)) {
+		    throw new InvalidParamException("attr", params.getValue(),
+			    getPropertyName(), ac);
 		}
-
+	    }
+	    else throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	    rubyspan = val;
+	    expression.next();
+	    return;
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
     }
 
+    public CssRubySpan(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssBackgroundSize.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBackgroundSize.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBackgroundSize.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssBackgroundSize.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,15 +8,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *   <H4>
@@ -37,7 +37,7 @@
 
     public CssValue value1 = null;
     CssValue value2 = null;
-	CssIdent auto = new CssIdent("auto");
+    CssIdent auto = new CssIdent("auto");
 
     /**
      * Create a new CssBackgroundSize
@@ -51,55 +51,61 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBackgroundSize(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		for (int i = 0; i < 2; i++) {
-
-			CssValue val = expression.getValue();
-
-			setByUser();
-
-			if ((i == 0) || (i == 1 && val != null)) {
-
-				if (val.equals(auto)) {
-				    if (i == 0) {
-						value1 = auto;
-					} else {
-						value2 = auto;
-					}
-				} else if (val instanceof CssLength || val instanceof CssPercentage) {
-				    if (i == 0) {
-						value1 = val;
-					} else {
-						value2 = val;
-					}
-				} else if (val instanceof CssNumber) {
-				    if (i == 0) {
-						value1 = ((CssNumber) val).getLength();
-					} else {
-						value2 = ((CssNumber) val).getLength();
-					}
-				} else {
-				    throw new InvalidParamException("value", val.toString(),
-								    getPropertyName(), ac);
-				}
-
-				expression.next();
-			}
+    public CssBackgroundSize(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	for (int i = 0; i < 2; i++) {
+	    
+	    CssValue val = expression.getValue();
+	    
+	    setByUser();
+	    
+	    if ((i == 0) || (i == 1 && val != null)) {
+		
+		if (val.equals(auto)) {
+		    if (i == 0) {
+			value1 = auto;
+		    } else {
+			value2 = auto;
+		    }
+		} else if (val instanceof CssLength || val instanceof CssPercentage) {
+		    if (i == 0) {
+			value1 = val;
+		    } else {
+			value2 = val;
+		    }
+		} else if (val instanceof CssNumber) {
+		    if (i == 0) {
+			value1 = ((CssNumber) val).getLength();
+		    } else {
+			value2 = ((CssNumber) val).getLength();
+		    }
+		} else {
+		    throw new InvalidParamException("value", val.toString(),
+			    getPropertyName(), ac);
 		}
+		
+		expression.next();
+	    }
+	}
     }
 
+    public CssBackgroundSize(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBackgroundSize != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBackgroundSize = this;
+	if (((Css3Style) style).cssBackgroundSize != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBackgroundSize = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -107,12 +113,12 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getCssBackgroundSize();
-		}
-		else {
-		    return ((Css3Style) style).cssBackgroundSize;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getCssBackgroundSize();
+	}
+	else {
+	    return ((Css3Style) style).cssBackgroundSize;
+	}
     }
 
     /**
@@ -130,40 +136,40 @@
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "background-size";
+	return "background-size";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value1;
+	return value1;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return false;
+	return false;
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		if (value2 == null) {
-			return value1.toString();
-		} else {
-			return value1.toString() + " " + value2.toString();
-		}
+	if (value2 == null) {
+	    return value1.toString();
+	} else {
+	    return value1.toString() + " " + value2.toString();
+	}
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value1 == auto;
+	return value1 == auto;
     }
 
 }

Index: CssBorderTopRightImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopRightImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopRightImage.java	8 Jan 2003 10:19:50 -0000	1.1
+++ CssBorderTopRightImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,72 +8,78 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderTopRightImage extends CssProperty {
-
+    
     String value = "";
     ApplContext ac;
-	CssIdent contin = new CssIdent("continue");
-	CssIdent none = new CssIdent("none");
-
+    CssIdent contin = new CssIdent("continue");
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBorderTopRightImage
      */
     public CssBorderTopRightImage() {
-		value = "continue";
+	value = "continue";
     }
-
+    
     /**
      * Create new CssBorderTopRightImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderTopRightImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val != null) {
-			if (val.equals(none)) {
-				value = "none";
-			} else if (val.equals(contin)) {
-				value = "continue";
-			} else if (val instanceof CssURL) {
-				value = val.toString();
-			} else {
-				throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-			}
-		} else {
-			throw new InvalidParamException("value", expression.getValue(),
-					getPropertyName(), ac);
-		}
-
-		expression.next();
+    public CssBorderTopRightImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val != null) {
+	    if (val.equals(none)) {
+		value = "none";
+	    } else if (val.equals(contin)) {
+		value = "continue";
+	    } else if (val instanceof CssURL) {
+		value = val.toString();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	expression.next();
     }
-
+    
+    public CssBorderTopRightImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderTopRightImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderTopRightImage = this;
+	if (((Css3Style) style).cssBorderTopRightImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderTopRightImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -81,58 +87,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderTopRightImage();
-		} else {
-		    return ((Css3Style) style).cssBorderTopRightImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderTopRightImage();
+	} else {
+	    return ((Css3Style) style).cssBorderTopRightImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderTopRightImage &&
-                value.equals( ((CssBorderTopRightImage) property).value));
+	return (property instanceof CssBorderTopRightImage &&
+		value.equals( ((CssBorderTopRightImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-top-right-image";
+	return "border-top-right-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: CssBoxWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBoxWidth.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssBoxWidth.java	24 Dec 2002 13:05:56 -0000	1.2
+++ CssBoxWidth.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,16 +9,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +49,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBoxWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssBoxWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -81,6 +80,11 @@
 	}
     }
 
+    public CssBoxWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssBorderRightFitWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderRightFitWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderRightFitWidth.java	8 Jan 2003 10:21:01 -0000	1.1
+++ CssBorderRightFitWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderRightFitWidth extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderRightFitWidth
      */
     public CssBorderRightFitWidth() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderRightFitWidth
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderRightFitWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderRightFitWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderRightFitWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderRightFitWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderRightFitWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderRightFitWidth &&
 		value.equals(((CssBorderRightFitWidth) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-right-fit-width";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: CssTextHeight.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextHeight.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextHeight.java	20 Aug 2002 13:53:41 -0000	1.1
+++ CssTextHeight.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -43,7 +43,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssTextHeight(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextHeight(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -62,6 +63,11 @@
 	}
     }
 
+    public CssTextHeight(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssLink.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLink.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssLink.java	20 Oct 2003 13:15:49 -0000	1.2
+++ CssLink.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -10,13 +10,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssFunction;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +51,7 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssLink(ApplContext ac, CssExpression expression)
+    public CssLink(ApplContext ac, CssExpression expression, boolean check)
 	throws InvalidParamException {
 
 	setByUser();
@@ -97,6 +97,11 @@
 	}
     }
 
+    public CssLink(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssWhiteSpaceTreatment.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssWhiteSpaceTreatment.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssWhiteSpaceTreatment.java	15 Aug 2002 09:07:45 -0000	1.1
+++ CssWhiteSpaceTreatment.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,13 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -42,7 +42,8 @@
 	 *
 	 *
 	 */
-	public CssWhiteSpaceTreatment(ApplContext ac, CssExpression expression) throws InvalidParamException {
+	public CssWhiteSpaceTreatment(ApplContext ac, CssExpression expression,
+		boolean check) throws InvalidParamException {
 	    setByUser();
 	    CssValue val = expression.getValue();
 	    if (val.equals(ignore)) {
@@ -75,6 +76,11 @@
 	    }
 	}
 
+	public CssWhiteSpaceTreatment(ApplContext ac, CssExpression expression)
+		throws InvalidParamException {
+	    this(ac, expression, false);
+	}
+	
 	/**
 	 * Add this property to the CssStyle.
 	 *

Index: CssBaselineShift.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBaselineShift.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssBaselineShift.java	20 Aug 2002 09:02:23 -0000	1.2
+++ CssBaselineShift.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,14 +9,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -56,7 +56,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBaselineShift(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssBaselineShift(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -95,6 +96,11 @@
 	}
     }
 
+    public CssBaselineShift(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderLeftImage.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderLeftImage.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderLeftImage.java	8 Jan 2003 10:19:50 -0000	1.1
+++ CssBorderLeftImage.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,96 +8,102 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssURL;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 
 
 public class CssBorderLeftImage extends CssProperty {
-
+    
     String value;
     ApplContext ac;
-	CssIdent none = new CssIdent("none");
-
+    CssIdent none = new CssIdent("none");
+    
     /**
      * Create new CssBorderLeftImage
      */
     public CssBorderLeftImage() {
-		value = "none";
+	value = "none";
     }
-
+    
     /**
      * Create new CssBorderLeftImage
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderLeftImage(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val instanceof CssIdent) {
-			if (val.equals(none)) {
-				value = "none";
-				expression.next();
-			} else if (val.equals(inherit)) {
-				value = "inherit";
-				expression.next();
-			}
-		} else if (val instanceof CssURL) {
-
-			value = val.toString();
-			expression.next();
-
-			val = expression.getValue();
-
-			if (val != null) {
-				if (val instanceof CssURL) {
-					value += " " + val.toString();
-					expression.next();
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-
-				expression.next();
-				val = expression.getValue();
-
-				if (val != null) {
-					if (val instanceof CssURL) {
-						value += " " + val.toString();
-						expression.next();
-					} else {
-						throw new InvalidParamException("value", expression.getValue(),
-							getPropertyName(), ac);
-					}
-				}
-			}
-		}
-		else {
+    public CssBorderLeftImage(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssIdent) {
+	    if (val.equals(none)) {
+		value = "none";
+		expression.next();
+	    } else if (val.equals(inherit)) {
+		value = "inherit";
+		expression.next();
+	    }
+	} else if (val instanceof CssURL) {
+	    
+	    value = val.toString();
+	    expression.next();
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		if (val instanceof CssURL) {
+		    value += " " + val.toString();
+		    expression.next();
+		} else {
 		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+			    getPropertyName(), ac);
+		}
+		
+		expression.next();
+		val = expression.getValue();
+		
+		if (val != null) {
+		    if (val instanceof CssURL) {
+			value += " " + val.toString();
+			expression.next();
+		    } else {
+			throw new InvalidParamException("value", expression.getValue(),
+				getPropertyName(), ac);
+		    }
 		}
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBorderLeftImage(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderLeftImage != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderLeftImage = this;
+	if (((Css3Style) style).cssBorderLeftImage != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderLeftImage = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -105,58 +111,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderLeftImage();
-		} else {
-		    return ((Css3Style) style).cssBorderLeftImage;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderLeftImage();
+	} else {
+	    return ((Css3Style) style).cssBorderLeftImage;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderLeftImage &&
-                value.equals( ((CssBorderLeftImage) property).value));
+	return (property instanceof CssBorderLeftImage &&
+		value.equals( ((CssBorderLeftImage) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-left-image";
+	return "border-left-image";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: CssTextBlink.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextBlink.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextBlink.java	23 Dec 2002 08:21:19 -0000	1.1
+++ CssTextBlink.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 public class CssTextBlink extends CssProperty {
 
@@ -37,7 +37,8 @@
      * @param expression The expression for this parameter
      * @exception InvalidParamException Incorrect value
      */
-    public CssTextBlink(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextBlink(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -60,6 +61,11 @@
 	}
     }
 
+    public CssTextBlink(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssOverflowY.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssOverflowY.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssOverflowY.java	24 Dec 2002 13:03:49 -0000	1.2
+++ CssOverflowY.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,78 +9,82 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 public class CssOverflowY extends CssProperty {
-
+    
     CssValue overflowY;
-
+    
     static CssIdent auto = new CssIdent("auto");
     static CssIdent visible = new CssIdent("visible");
     static CssIdent hidden = new CssIdent("hidden");
     static CssIdent scroll = new CssIdent("scroll");
     static CssIdent initial = new CssIdent("initial");
-
+    
     /**
      * Create a new CssOverflowY
      */
     public CssOverflowY() {
 	// nothing to do
     }
-
+    
     /**
      * Create a new CssOverflowY
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssOverflowY(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val.equals(inherit)) {
-		    overflowY = val;
-		    expression.next();
-		} else if (val.equals(visible)) {
-		    overflowY = val;
-		    expression.next();
-		} else if (val.equals(hidden)) {
-		    overflowY = val;
-		    expression.next();
-		} else if (val.equals(scroll)) {
-		    overflowY = val;
-		    expression.next();
-		} else if (val.equals(auto)) {
-		    overflowY = val;
-		    expression.next();
-		} else if (val.equals(initial)) {
-		    overflowY = val;
-		    expression.next();
-		} else {
-		    throw new InvalidParamException("value", expression.getValue(),
-					    getPropertyName(), ac);
-		}
+    public CssOverflowY(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val.equals(inherit)) {
+	    overflowY = val;
+	    expression.next();
+	} else if (val.equals(visible)) {
+	    overflowY = val;
+	    expression.next();
+	} else if (val.equals(hidden)) {
+	    overflowY = val;
+	    expression.next();
+	} else if (val.equals(scroll)) {
+	    overflowY = val;
+	    expression.next();
+	} else if (val.equals(auto)) {
+	    overflowY = val;
+	    expression.next();
+	} else if (val.equals(initial)) {
+	    overflowY = val;
+	    expression.next();
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssOverflowY(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssOverflowY != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssOverflowY = this;
-	}
-
+	if (((Css3Style) style).cssOverflowY != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssOverflowY = this;
+    }
+    
     /**
      * Get this property in the style.
      *
@@ -95,7 +99,7 @@
 	    return ((Css3Style) style).cssOverflowY;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -105,42 +109,42 @@
 	return (property instanceof CssOverflowY &&
 		overflowY.equals(((CssOverflowY) property).overflowY));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "overflow-y";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return overflowY;
+	return overflowY;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return overflowY.equals(inherit);
+	return overflowY.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return overflowY.toString();
+	return overflowY.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-
-		return overflowY == visible;
+	
+	return overflowY == visible;
     }
-
+    
 }

Index: CssBorderTopLeftFitLength.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopLeftFitLength.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopLeftFitLength.java	8 Jan 2003 10:21:57 -0000	1.1
+++ CssBorderTopLeftFitLength.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderTopLeftFitLength extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderTopLeftFitLength
      */
     public CssBorderTopLeftFitLength() {
-		value = "overwrite";
+	value = "overwrite";
     }
-
+    
     /**
      * Create a new CssBorderTopLeftFitLength
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderTopLeftFitLength(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderTopLeftFitLength(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderTopLeftFitLength(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderTopLeftFitLength = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderTopLeftFitLength;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderTopLeftFitLength &&
 		value.equals(((CssBorderTopLeftFitLength) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-top-left-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("overwrite");
+	return value.equals("overwrite");
     }
-
+    
 }

Index: CssBackgroundSpacing.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBackgroundSpacing.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBackgroundSpacing.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssBackgroundSpacing.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,120 +9,126 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.properties.CssProperty;
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
+import org.w3c.css.values.CssValue;
 
 
 /**
  */
 public class CssBackgroundSpacing extends CssProperty implements CssOperator {
-
+    
     CssValue value;
-	CssIdent initial = new CssIdent("initial");
+    CssIdent initial = new CssIdent("initial");
     CssValue second;
-
+    
     /**
      * Create a new CssBackgroundSpacing
      */
     public CssBackgroundSpacing() {
     }
-
+    
     /**
      * Creates a new CssBackgroundSpacing
      *
      * @param expression the expression of the size
      * @exception InvalidParamException The expression is incorrect
      */
-    public CssBackgroundSpacing(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = expression.getValue();
-		setByUser();
-
-		if (val.equals(inherit)) {
-		    value = inherit;
-	    } else if (val.equals(initial)) {
-			value = initial;
-		} else if (val instanceof CssLength || val instanceof CssNumber) {
-			if (val instanceof CssNumber) {
-				val = ((CssNumber) val).getLength();
-			}
-			value = val;
-			expression.next();
-			val = expression.getValue();
-
-			if (val != null) {
-				if (expression.getOperator() == SPACE) {
-					if (val instanceof CssNumber) {
-						val = ((CssNumber) val).getLength();
-					}
-					second = val;
-					expression.next();
-				} else {
-					// invalid operator
-				}
-			}
+    public CssBackgroundSpacing(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = expression.getValue();
+	setByUser();
+	
+	if (val.equals(inherit)) {
+	    value = inherit;
+	} else if (val.equals(initial)) {
+	    value = initial;
+	} else if (val instanceof CssLength || val instanceof CssNumber) {
+	    if (val instanceof CssNumber) {
+		val = ((CssNumber) val).getLength();
+	    }
+	    value = val;
+	    expression.next();
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		if (expression.getOperator() == SPACE) {
+		    if (val instanceof CssNumber) {
+			val = ((CssNumber) val).getLength();
+		    }
+		    second = val;
+		    expression.next();
 		} else {
-		    throw new InvalidParamException("value",
-						    val.toString(),
-						    getPropertyName(), ac);
+		    // invalid operator
 		}
-
-		expression.next();
+	    }
+	} else {
+	    throw new InvalidParamException("value",
+		    val.toString(),
+		    getPropertyName(), ac);
+	}
+	
+	expression.next();
     }
-
+    
+    public CssBackgroundSpacing(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the current value
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      * e.g. his value equals inherit
      */
     public boolean isSoftlyInherited() {
-		return value == inherit;
+	return value == inherit;
     }
-
+    
     /**
      * Returns a string representation of the object.
      */
     public String toString() {
-		if (second != null) {
-		    return value + " " + second;
-		} else {
-		    return value.toString();
-		}
+	if (second != null) {
+	    return value + " " + second;
+	} else {
+	    return value.toString();
+	}
     }
-
-
+    
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "background-spacing";
+	return "background-spacing";
     }
-
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBackgroundSpacing != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBackgroundSpacing = this;
-	}
-
-
+	if (((Css3Style) style).cssBackgroundSpacing != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBackgroundSpacing = this;
+    }
+    
+    
     /**
      * Get this property in the style.
      *
@@ -130,30 +136,30 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getCssBackgroundSpacing();
-		}
-		else {
-		    return ((Css3Style) style).cssBackgroundSpacing;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getCssBackgroundSpacing();
+	}
+	else {
+	    return ((Css3Style) style).cssBackgroundSpacing;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBackgroundSpacing &&
-			value.equals(((CssBackgroundSpacing) property).value));
+	return (property instanceof CssBackgroundSpacing &&
+		value.equals(((CssBackgroundSpacing) property).value));
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value == new CssNumber(0);
+	return value == new CssNumber(0);
     }
-
+    
 }

Index: MediaMaxMonochrome.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMaxMonochrome.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMaxMonochrome.java	8 Jan 2003 10:04:22 -0000	1.1
+++ MediaMaxMonochrome.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:04:22  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,33 +78,39 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMaxMonochrome(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-		char op = SPACE;
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMaxMonochrome(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	char op = SPACE;
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaMaxMonochrome(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssBorderImageTransform.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderImageTransform.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderImageTransform.java	8 Jan 2003 10:19:50 -0000	1.1
+++ CssBorderImageTransform.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,62 +9,66 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderImageTransform extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent none = new CssIdent("none");
-
+    
     private static String[] values = {
-		"none", "rotate", "reflect-xy", "reflect-right", "reflect-left"
+	"none", "rotate", "reflect-xy", "reflect-right", "reflect-left"
     };
-
+    
     /**
      * Create a new CssBorderImageTransform
      */
     public CssBorderImageTransform() {
-		value = "none";
+	value = "none";
     }
-
+    
     /**
      * Create a new CssBorderImageTransform
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderImageTransform(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-
-		val = expression.getValue();
-
-		int j = 0;
-		for (int i = 0; i < values.length; i++) {
-		    if (val.toString().equals(values[j])) {
-				value += val.toString() + " ";
-				expression.next();
-				break;
-			}
-		}
-
-		if (j == values.length) {
-			throw new InvalidParamException("value", expression.getValue(),
-				getPropertyName(), ac);
-		}
-
+    public CssBorderImageTransform(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	val = expression.getValue();
+	
+	int j = 0;
+	for (int i = 0; i < values.length; i++) {
+	    if (val.toString().equals(values[j])) {
+		value += val.toString() + " ";
+		expression.next();
+		break;
+	    }
+	}
+	
+	if (j == values.length) {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
     }
-
+    
+    public CssBorderImageTransform(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -75,7 +79,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderImageTransform = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -90,7 +94,7 @@
 	    return ((Css3Style) style).cssBorderImageTransform;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -100,41 +104,41 @@
 	return (property instanceof CssBorderImageTransform &&
 		value.equals(((CssBorderImageTransform) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-corner-fit";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("none");
+	return value.equals("none");
     }
-
+    
 }

Index: CssFontEffect.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssFontEffect.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssFontEffect.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssFontEffect.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -54,7 +54,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssFontEffect(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssFontEffect(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	if (val.equals(none)) {
@@ -82,6 +83,11 @@
 	}
     }
 
+    public CssFontEffect(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderTopLeftRadius.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopLeftRadius.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopLeftRadius.java	8 Jan 2003 10:21:57 -0000	1.1
+++ CssBorderTopLeftRadius.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,61 +8,66 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.values.CssLength;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 public class CssBorderTopLeftRadius extends CssProperty {
-
+    
     String value;
     ApplContext ac;
-
+    
     /**
      * Create new CssBorderTopLeftRadius
      */
     public CssBorderTopLeftRadius() {
-		CssNumber cssnum =  new CssNumber((float) 1.0);
-       	value = cssnum.toString();
+	CssNumber cssnum =  new CssNumber((float) 1.0);
+	value = cssnum.toString();
     }
-
+    
     /**
      * Create new CssBorderTopLeftRadius
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBorderTopLeftRadius(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
+    public CssBorderTopLeftRadius(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssLength) {
+	    value = val.toString();
+	    expression.next();
+	    
+	    val = expression.getValue();
+	    if (val != null) {
+		
 		if (val instanceof CssLength) {
-		    value = val.toString();
+		    value += " " + val.toString();
 		    expression.next();
-
-		    val = expression.getValue();
-		    if (val != null) {
-
-				if (val instanceof CssLength) {
-					value += " " + val.toString();
-					expression.next();
-				} else {
-					throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
-				}
-			}
-		}
-		else {
+		} else {
 		    throw new InvalidParamException("value", expression.getValue(),
-						getPropertyName(), ac);
+			    getPropertyName(), ac);
 		}
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBorderTopLeftRadius(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
@@ -73,7 +78,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderTopLeftRadius = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -87,7 +92,7 @@
 	    return ((Css3Style) style).cssBorderTopLeftRadius;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -95,44 +100,44 @@
      */
     public boolean equals(CssProperty property) {
 	return (property instanceof CssBorderTopLeftRadius &&
-                value.equals( ((CssBorderTopLeftRadius) property).value));
+		value.equals( ((CssBorderTopLeftRadius) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-top-left-radius";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
     public boolean isDefault() {
-	       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       	   return value == cssnum.toString();
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return value == cssnum.toString();
     }
-
+    
 }

Index: CssMarqueeDirection.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMarqueeDirection.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMarqueeDirection.java	24 Dec 2002 13:16:26 -0000	1.1
+++ CssMarqueeDirection.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssMarqueeDirection extends CssProperty {
@@ -24,7 +24,8 @@
     static CssIdent auto = new CssIdent("auto");
 
     private static String[] values = {
-		"forwards", "backwards", "ahead", "reverse", "left", "right", "up", "down", "auto", "initial", "inherit"
+		"forwards", "backwards", "ahead", "reverse", 
+		"left", "right", "up", "down", "auto", "initial", "inherit"
     };
 
     /**
@@ -40,28 +41,34 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssMarqueeDirection(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		setByUser();
-		CssValue val = expression.getValue();
-
-		int i = 0;
-
-		for (;i < values.length; i++) {
-		    if (val.toString().equals(values[i])) {
-				mdir = val;
-				expression.next();
-				break;
-		    }
-		}
-
-		if (i == values.length) {
-		    throw new InvalidParamException("value",
-						    expression.getValue(),
-						    getPropertyName(), ac);
-		}
-
+    public CssMarqueeDirection(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	int i = 0;
+	
+	for (;i < values.length; i++) {
+	    if (val.toString().equals(values[i])) {
+		mdir = val;
+		expression.next();
+		break;
+	    }
+	}
+	
+	if (i == values.length) {
+	    throw new InvalidParamException("value",
+		    expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
     }
 
+    public CssMarqueeDirection(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderLeftFitWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderLeftFitWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderLeftFitWidth.java	8 Jan 2003 10:21:01 -0000	1.1
+++ CssBorderLeftFitWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,92 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderLeftFitWidth extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch",
+	"overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderLeftFitWidth
      */
     public CssBorderLeftFitWidth() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderLeftFitWidth
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderLeftFitWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderLeftFitWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderLeftFitWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +105,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderLeftFitWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +120,7 @@
 	    return ((Css3Style) style).cssBorderLeftFitWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +130,41 @@
 	return (property instanceof CssBorderLeftFitWidth &&
 		value.equals(((CssBorderLeftFitWidth) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-left-fit-width";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: CssNavLeft.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssNavLeft.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssNavLeft.java	20 Dec 2002 16:00:14 -0000	1.1
+++ CssNavLeft.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 public class CssNavLeft extends CssProperty {
 
@@ -36,7 +36,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssNavLeft(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssNavLeft(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -56,6 +57,11 @@
 	}
     }
 
+    public CssNavLeft(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssOverflowClip.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssOverflowClip.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssOverflowClip.java	24 Dec 2002 13:44:00 -0000	1.1
+++ CssOverflowClip.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,18 +9,17 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssFunction;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssFunction;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -38,180 +37,185 @@
  */
 
 public class CssOverflowClip extends CssProperty implements CssOperator {
-
-   String overflowclip = new String();
+    
+    String overflowclip = new String();
     ApplContext ac;
     CssIdent auto = new CssIdent("auto");
     CssIdent initial = new CssIdent("initial");
-
+    
     /**
      * Create a new CssOverflowClip
      */
-   public CssOverflowClip() {
-
-   }
-
-   /**
-    * Create a new CssOverflowClip
-    *
-    * @param expression The expression for this property
-    * @exception InvalidParamException Values are incorrect
-    */
-   public CssOverflowClip(ApplContext ac, CssExpression expression) throws InvalidParamException {
-       this.ac = ac;
-       setByUser(); // tell this property is set by the user
-       CssValue val = expression.getValue();
-
-		if (val instanceof CssFunction) {
-		    CssFunction fun = (CssFunction) val;
-		    CssExpression params = fun.getParameters();
-
-			CssValue v;
-
-		    if (fun.getName().equals("rect")) {
-				if (params.getCount() == 4) {
-
-					overflowclip = "rect(";
-
-					for (int i =0; i < 4; i++) {
-						v = params.getValue();
-				    	if (!(v instanceof CssLength || v instanceof CssPercentage) ) {
-				    		throw new InvalidParamException("value", params.getValue(),
-								    getPropertyName(), ac);
-						} else {
-							if (i == 0)
-								overflowclip += v.toString();
-							else
-								overflowclip += ", " + v.toString();
-						}
-					}
-
-				} else {
-				    throw new InvalidParamException("value", params.getValue(),
-								    getPropertyName(), ac);
-				}
-		    } else if (fun.getName().equals("inset-rect")) {
-
-				if (params.getCount() == 4) {
-
-					overflowclip = "inset-rect(";
-
-					for (int i =0; i < 4; i++) {
-						v = params.getValue();
-				    	if (!(v instanceof CssLength || v instanceof CssPercentage) ) {
-				    		throw new InvalidParamException("value", params.getValue(),
-								    getPropertyName(), ac);
-						} else {
-							if (i == 0)
-								overflowclip += v.toString();
-							else
-								overflowclip += ", " + v.toString();
-						}
-					}
-				} else {
-					throw new InvalidParamException("value", params.getValue(),
-												    getPropertyName(), ac);
-				}
-
+    public CssOverflowClip() {
+	
+    }
+    
+    /**
+     * Create a new CssOverflowClip
+     *
+     * @param expression The expression for this property
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssOverflowClip(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	this.ac = ac;
+	setByUser(); // tell this property is set by the user
+	CssValue val = expression.getValue();
+	
+	if (val instanceof CssFunction) {
+	    CssFunction fun = (CssFunction) val;
+	    CssExpression params = fun.getParameters();
+	    
+	    CssValue v;
+	    
+	    if (fun.getName().equals("rect")) {
+		if (params.getCount() == 4) {
+		    
+		    overflowclip = "rect(";
+		    
+		    for (int i =0; i < 4; i++) {
+			v = params.getValue();
+			if (!(v instanceof CssLength || v instanceof CssPercentage) ) {
+			    throw new InvalidParamException("value", params.getValue(),
+				    getPropertyName(), ac);
+			} else {
+			    if (i == 0)
+				overflowclip += v.toString();
+			    else
+				overflowclip += ", " + v.toString();
 			}
-		    else throw new InvalidParamException("value", expression.getValue(),
-							 getPropertyName(), ac);
-
-			overflowclip += ")";
-		    expression.next();
-		    return;
-	   }
-       else if (val instanceof CssIdent) {
-           if (val.equals(inherit)) {
-	       	 	overflowclip = "inherit";
-	       		expression.next();
-           } else if (val.equals(auto)) {
-			  	overflowclip = "auto";
-			  	expression.next();
-		   } else if (val.equals(initial)) {
-			    overflowclip = "initial";
-			    expression.next();
-		   } else {
-				throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-		   }
-       }
-       else {
-	   		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-       }
-   }
-
-
+		    }
+		    
+		} else {
+		    throw new InvalidParamException("value", params.getValue(),
+			    getPropertyName(), ac);
+		}
+	    } else if (fun.getName().equals("inset-rect")) {
+		
+		if (params.getCount() == 4) {
+		    
+		    overflowclip = "inset-rect(";
+		    
+		    for (int i =0; i < 4; i++) {
+			v = params.getValue();
+			if (!(v instanceof CssLength || v instanceof CssPercentage) ) {
+			    throw new InvalidParamException("value", params.getValue(),
+				    getPropertyName(), ac);
+			} else {
+			    if (i == 0)
+				overflowclip += v.toString();
+			    else
+				overflowclip += ", " + v.toString();
+			}
+		    }
+		} else {
+		    throw new InvalidParamException("value", params.getValue(),
+			    getPropertyName(), ac);
+		}
+		
+	    }
+	    else throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	    
+	    overflowclip += ")";
+	    expression.next();
+	    return;
+	}
+	else if (val instanceof CssIdent) {
+	    if (val.equals(inherit)) {
+		overflowclip = "inherit";
+		expression.next();
+	    } else if (val.equals(auto)) {
+		overflowclip = "auto";
+		expression.next();
+	    } else if (val.equals(initial)) {
+		overflowclip = "initial";
+		expression.next();
+	    } else {
+		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
+	}
+    }
+    
+    public CssOverflowClip(ApplContext ac, CssExpression expression)
+    	throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *
      * @param style The CssStyle
      */
-     public void addToStyle(ApplContext ac, CssStyle style) {
-	 if (((Css3Style) style).cssOverflowClip != null)
-	     style.addRedefinitionWarning(ac, this);
-	 ((Css3Style) style).cssOverflowClip = this;
-     }
-
-      /**
-       * Get this property in the style.
-       *
-       * @param style The style where the property is
-       * @param resolve if true, resolve the style to find this property
-       */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getOverflowClip();
-	    } else {
-		return ((Css3Style) style).cssOverflowClip;
-	    }
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssOverflowClip != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssOverflowClip = this;
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getOverflowClip();
+	} else {
+	    return ((Css3Style) style).cssOverflowClip;
 	}
-
-       /**
-        * Compares two properties for equality.
-        *
-        * @param value The other property.
-        */
-       public boolean equals(CssProperty property) {
-	   return (property instanceof CssOverflowClip &&
-                overflowclip.equals( ((CssOverflowClip) property).overflowclip));
-       }
-
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssOverflowClip &&
+		overflowclip.equals( ((CssOverflowClip) property).overflowclip));
+    }
+    
     /**
      * Returns the name of this property
      */
-   public String getPropertyName() {
-       return "overflow-clip";
-   }
-
+    public String getPropertyName() {
+	return "overflow-clip";
+    }
+    
     /**
      * Returns the value of this property
      */
-   public Object get() {
-       return overflowclip;
-   }
-
+    public Object get() {
+	return overflowclip;
+    }
+    
     /**
      * Returns true if this property is "softly" inherited
      */
-   public boolean isSoftlyInherited() {
-       return overflowclip.equals("inherit");
-   }
-
-   /**
-    * Returns a string representation of the object
-    */
-   public String toString() {
-       return overflowclip;
-   }
-
+    public boolean isSoftlyInherited() {
+	return overflowclip.equals("inherit");
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return overflowclip;
+    }
+    
     /**
      * Is the value of this property a default value
      * It is used by all macro for the function <code>print</code>
      */
-   public boolean isDefault() {
-       CssNumber cssnum = new CssNumber(ac, (float) 1.0);
-       return overflowclip == cssnum.toString();
-   }
-
+    public boolean isDefault() {
+	CssNumber cssnum = new CssNumber(ac, (float) 1.0);
+	return overflowclip == cssnum.toString();
+    }
+    
 }
 

Index: CssOverflowCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssOverflowCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssOverflowCSS3.java	24 Dec 2002 13:22:14 -0000	1.1
+++ CssOverflowCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  */
@@ -43,7 +41,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException The expression is incorrect
      */
-    public CssOverflowCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssOverflowCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -75,6 +74,11 @@
 
     }
 
+    public CssOverflowCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssMedia.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMedia.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMedia.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssMedia.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -11,14 +11,13 @@
 import java.util.Vector;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 
 /**
@@ -46,7 +45,8 @@
     /** 
      * Create a new CssMedia
      */
-    public CssMedia(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMedia(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	//setByUser();
 	char op = expression.getOperator();
@@ -77,6 +77,11 @@
 	}
     }
 
+    public CssMedia(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssBorderFitLength.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderFitLength.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderFitLength.java	8 Jan 2003 10:18:44 -0000	1.1
+++ CssBorderFitLength.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,76 +9,80 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderFitLength extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderFitLength
      */
     public CssBorderFitLength() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderFitLength
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderFitLength(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (expression.getCount() <= 4) {
-
-			val = expression.getValue();
-
-			if (val != null) {
-
-				for (; i < expression.getCount(); i++) {
-
-					int j = 0;
-					for (; j < values.length; j++) {
-					    if (val.toString().equals(values[j])) {
-							value += val.toString() + " ";
-							expression.next();
-							break;
-				    	}
-					}
-
-					if (j == values.length) {
-						    throw new InvalidParamException("value", expression.getValue(),
-										    getPropertyName(), ac);
-					}
-				}
+    public CssBorderFitLength(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (expression.getCount() <= 4) {
+	    
+	    val = expression.getValue();
+	    
+	    if (val != null) {
+		
+		for (; i < expression.getCount(); i++) {
+		    
+		    int j = 0;
+		    for (; j < values.length; j++) {
+			if (val.toString().equals(values[j])) {
+			    value += val.toString() + " ";
+			    expression.next();
+			    break;
 			}
-
-		} else {
+		    }
+		    
+		    if (j == values.length) {
 			throw new InvalidParamException("value", expression.getValue(),
 				getPropertyName(), ac);
+		    }
 		}
-
+	    }
+	    
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
     }
-
+    
+    public CssBorderFitLength(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -89,7 +93,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderFitLength = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -104,7 +108,7 @@
 	    return ((Css3Style) style).cssBorderFitLength;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -114,41 +118,41 @@
 	return (property instanceof CssBorderFitLength &&
 		value.equals(((CssBorderFitLength) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: CssClearAfter.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssClearAfter.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssClearAfter.java	24 Dec 2002 13:12:28 -0000	1.1
+++ CssClearAfter.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssClearAfter extends CssProperty {
@@ -41,36 +41,42 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssClearAfter(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-
-		int i = 0;
-		for (; i < values.length; i++) {
-		    if (val.toString().equals(values[i])) {
-				value = val;
-				expression.next();
-				break;
-		    }
-		}
-		if (i == values.length) {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
-		}
+    public CssClearAfter(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	int i = 0;
+	for (; i < values.length; i++) {
+	    if (val.toString().equals(values[i])) {
+		value = val;
+		expression.next();
+		break;
+	    }
+	}
+	if (i == values.length) {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssClearAfter(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssClearAfter != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssClearAfter = this;
+	if (((Css3Style) style).cssClearAfter != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssClearAfter = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -78,58 +84,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getClearAfter();
-		}
-		else {
-		    return ((Css3Style) style).cssClearAfter;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getClearAfter();
+	}
+	else {
+	    return ((Css3Style) style).cssClearAfter;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssClearAfter &&
-			value.equals(((CssClearAfter) property).value));
+	return (property instanceof CssClearAfter &&
+		value.equals(((CssClearAfter) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "clear-after";
+	return "clear-after";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return value.toString();
+	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return (value == none);
+	return (value == none);
     }
-
+    
 }

Index: CssFontEmphasizeStyle.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssFontEmphasizeStyle.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssFontEmphasizeStyle.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssFontEmphasizeStyle.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -57,7 +57,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssFontEmphasizeStyle(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssFontEmphasizeStyle(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 	if (val.equals(none)) {
@@ -88,6 +89,11 @@
 					     getPropertyName(), ac);
     }
 
+    public CssFontEmphasizeStyle(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssBoxHeight.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBoxHeight.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssBoxHeight.java	24 Dec 2002 13:05:56 -0000	1.2
+++ CssBoxHeight.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,16 +9,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
 import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +49,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssBoxHeight(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssBoxHeight(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -81,6 +80,11 @@
 	}
     }
 
+    public CssBoxHeight(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssLinefeedTreatment.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLinefeedTreatment.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssLinefeedTreatment.java	23 Dec 2002 08:19:46 -0000	1.2
+++ CssLinefeedTreatment.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -8,13 +8,13 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -44,43 +44,49 @@
 	 *
 	 *
 	 */
-	public CssLinefeedTreatment(ApplContext ac, CssExpression expression) throws InvalidParamException {
+	public CssLinefeedTreatment(ApplContext ac, CssExpression expression,
+		boolean check) throws InvalidParamException {
 	    setByUser();
 	    CssValue val = expression.getValue();
 	    if (val.equals(auto)) {
-			linefeedtreat = auto;
-			expression.next();
+		linefeedtreat = auto;
+		expression.next();
 	    }
 	    else if (val.equals(ignore)) {
-			linefeedtreat = ignore;
-			expression.next();
+		linefeedtreat = ignore;
+		expression.next();
 	    }
 	    else if (val.equals(treatasspace)) {
-			linefeedtreat = treatasspace;
-			expression.next();
+		linefeedtreat = treatasspace;
+		expression.next();
 	    }
 	    else if (val.equals(preserve)) {
-			linefeedtreat = preserve;
-			expression.next();
+		linefeedtreat = preserve;
+		expression.next();
 	    }
 	    else if (val.equals(treataszerowidthspace)) {
-			linefeedtreat = treataszerowidthspace;
-			expression.next();
+		linefeedtreat = treataszerowidthspace;
+		expression.next();
 	    }
 	    else if (val.equals(ignoreifafterlinefeed)) {
-			linefeedtreat = ignoreifafterlinefeed;
-			expression.next();
+		linefeedtreat = ignoreifafterlinefeed;
+		expression.next();
 	    }
 	    else if (val.equals(inherit)) {
-			linefeedtreat = inherit;
-			expression.next();
+		linefeedtreat = inherit;
+		expression.next();
 	    }
-
+	    
 	    else {
 		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
 	    }
 	}
-
+	
+	public CssLinefeedTreatment(ApplContext ac, CssExpression expression)
+	throws InvalidParamException {
+	    this(ac, expression, false);
+	}
+	
 	/**
 	 * Add this property to the CssStyle.
 	 *

Index: CssNavDown.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssNavDown.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssNavDown.java	20 Dec 2002 16:00:14 -0000	1.1
+++ CssNavDown.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 public class CssNavDown extends CssProperty {
 
@@ -36,7 +36,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssNavDown(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssNavDown(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -56,6 +57,11 @@
 	}
     }
 
+    public CssNavDown(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTextKashidaSpace.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextKashidaSpace.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTextKashidaSpace.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTextKashidaSpace.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssPercentage;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -56,7 +55,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssTextKashidaSpace(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextKashidaSpace(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -75,6 +75,11 @@
 	}
     }
 
+    public CssTextKashidaSpace(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssTabIndex.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTabIndex.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssTabIndex.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssTabIndex.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -49,7 +49,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssTabIndex(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTabIndex(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -71,6 +72,11 @@
 	}
     }
 
+    public CssTabIndex(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssVisibilityCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssVisibilityCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssVisibilityCSS3.java	24 Dec 2002 13:22:14 -0000	1.1
+++ CssVisibilityCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  */
@@ -42,7 +40,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException The expression is incorrect
      */
-    public CssVisibilityCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssVisibilityCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -68,6 +67,11 @@
 
     }
 
+    public CssVisibilityCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssBorderBottomLeftFitWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomLeftFitWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomLeftFitWidth.java	8 Jan 2003 10:17:35 -0000	1.1
+++ CssBorderBottomLeftFitWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderBottomLeftFitWidth extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderBottomLeftFitWidth
      */
     public CssBorderBottomLeftFitWidth() {
-		value = "overwrite";
+	value = "overwrite";
     }
-
+    
     /**
      * Create a new CssBorderBottomLeftFitWidth
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderBottomLeftFitWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderBottomLeftFitWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderBottomLeftFitWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderBottomLeftFitWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderBottomLeftFitWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderBottomLeftFitWidth &&
 		value.equals(((CssBorderBottomLeftFitWidth) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-bottom-left-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("overwrite");
+	return value.equals("overwrite");
     }
-
+    
 }

Index: MediaMinColor.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMinColor.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMinColor.java	8 Jan 2003 10:02:55 -0000	1.1
+++ MediaMinColor.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:02:55  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,32 +77,38 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMinColor(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMinColor(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
-
+    
+    public MediaMinColor(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssTextUlStyle.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextUlStyle.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssTextUlStyle.java	8 Aug 2002 09:11:08 -0000	1.2
+++ CssTextUlStyle.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -53,7 +53,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextUlStyle(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextUlStyle(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -73,6 +74,11 @@
 
     }
 
+    public CssTextUlStyle(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssHangingPunctuation.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssHangingPunctuation.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssHangingPunctuation.java	15 Aug 2002 09:07:45 -0000	1.1
+++ CssHangingPunctuation.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -8,137 +8,142 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssValue;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssIdent;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  *
  */
-
-    public class CssHangingPunctuation extends CssProperty {
-
-	CssValue hangpunct;
-
-	private static CssIdent none = new CssIdent("none");
-	private static CssIdent start = new CssIdent("start");
-	private static CssIdent end = new CssIdent("end");
-	private static CssIdent both = new CssIdent("both");
-
-	/**
-	 * Create a new CssHangingPunctuation
-	 */
-	public CssHangingPunctuation() {
+public class CssHangingPunctuation extends CssProperty {
+    
+    CssValue hangpunct;
+    
+    private static CssIdent none = new CssIdent("none");
+    private static CssIdent start = new CssIdent("start");
+    private static CssIdent end = new CssIdent("end");
+    private static CssIdent both = new CssIdent("both");
+    
+    /**
+     * Create a new CssHangingPunctuation
+     */
+    public CssHangingPunctuation() {
+	hangpunct = none;
+    }
+    
+    /**
+     * Create a new CssHangingPunctuation
+     *
+     *
+     */
+    public CssHangingPunctuation(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	setByUser();
+	CssValue val = expression.getValue();
+	if (val.equals(none)) {
 	    hangpunct = none;
+	    expression.next();
 	}
-
-	/**
-	 * Create a new CssHangingPunctuation
-	 *
-	 *
-	 */
-	public CssHangingPunctuation(ApplContext ac, CssExpression expression) throws InvalidParamException {
-	    setByUser();
-	    CssValue val = expression.getValue();
-	    if (val.equals(none)) {
-			hangpunct = none;
-			expression.next();
-	    }
-	    else if (val.equals(start)) {
-			hangpunct = start;
-			expression.next();
-	    }
-	    else if (val.equals(inherit)) {
-			hangpunct = inherit;
-			expression.next();
-	    }
-	    else if (val.equals(end)) {
-			hangpunct = end;
-			expression.next();
-	    }
-	    else if (val.equals(both)) {
-			hangpunct = both;
-			expression.next();
-	    }
-	    else {
-		throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
-	    }
-	}
-
-	/**
-	 * Add this property to the CssStyle.
-	 *
-	 * @param style The CssStyle
-	 */
-	public void addToStyle(ApplContext ac, CssStyle style) {
-	    if (((Css3Style) style).cssHangingPunctuation != null)
-		style.addRedefinitionWarning(ac, this);
-	    ((Css3Style) style).cssHangingPunctuation = this;
-
-	}
-
-	/**
-	 * Get this property in the style.
-	 *
-	 * @param style The style where the property is
-	 * @param resolve if true, resolve the style to find this property
-	 */
-        public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-	    if (resolve) {
-		return ((Css3Style) style).getHangingPunctuation();
-	    } else {
-		return ((Css3Style) style).cssHangingPunctuation;
-	    }
-	}
-
-	/**
-	 * Compares two properties for equality.
-	 *
-	 * @param value The other property.
-	 */
-	public boolean equals(CssProperty property) {
-	    return (property instanceof CssHangingPunctuation &&
-		    hangpunct.equals( ((CssHangingPunctuation) property).hangpunct));
+	else if (val.equals(start)) {
+	    hangpunct = start;
+	    expression.next();
 	}
-
-	/**
-	 * Returns the name of this property
-	 */
-	public String getPropertyName() {
-	    return "hanging-punctuation";
+	else if (val.equals(inherit)) {
+	    hangpunct = inherit;
+	    expression.next();
 	}
-
-	/**
-	 * Returns the value of this property
-	 */
-	public Object get() {
-	    return hangpunct;
+	else if (val.equals(end)) {
+	    hangpunct = end;
+	    expression.next();
 	}
-
-	/**
-	 * Returns true if this property is "softly" inherited
-	 */
-	public boolean isSoftlyInherited() {
-	    return hangpunct.equals(inherit);
+	else if (val.equals(both)) {
+	    hangpunct = both;
+	    expression.next();
 	}
-
-	/**
-	 * Returns a string representation of the object
-	 */
-	public String toString() {
-	    return hangpunct.toString();
+	else {
+	    throw new InvalidParamException("value", val.toString(), getPropertyName(), ac);
 	}
-
-	/**
-	 * Is the value of this property a default value
-	 * It is used by all macro for the function <code>print</code>
-	 */
-	public boolean isDefault() {
-	    return hangpunct == none;
+    }
+    
+    public CssHangingPunctuation(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssHangingPunctuation != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssHangingPunctuation = this;
+	
+    }
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getHangingPunctuation();
+	} else {
+	    return ((Css3Style) style).cssHangingPunctuation;
 	}
-
     }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssHangingPunctuation &&
+		hangpunct.equals( ((CssHangingPunctuation) property).hangpunct));
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "hanging-punctuation";
+    }
+    
+    /**
+     * Returns the value of this property
+     */
+    public Object get() {
+	return hangpunct;
+    }
+    
+    /**
+     * Returns true if this property is "softly" inherited
+     */
+    public boolean isSoftlyInherited() {
+	return hangpunct.equals(inherit);
+    }
+    
+    /**
+     * Returns a string representation of the object
+     */
+    public String toString() {
+	return hangpunct.toString();
+    }
+    
+    /**
+     * Is the value of this property a default value
+     * It is used by all macro for the function <code>print</code>
+     */
+    public boolean isDefault() {
+	return hangpunct == none;
+    }
+    
+}

Index: CssUserModify.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssUserModify.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssUserModify.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssUserModify.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -55,7 +55,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssUserModify(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssUserModify(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -80,6 +81,11 @@
 					    getPropertyName(), ac);
 	}
     }
+    
+    public CssUserModify(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle

Index: CssOverflowX.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssOverflowX.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssOverflowX.java	24 Dec 2002 13:03:49 -0000	1.2
+++ CssOverflowX.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,78 +9,82 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 public class CssOverflowX extends CssProperty {
 
     CssValue overflowX;
-
+    
     static CssIdent auto = new CssIdent("auto");
     static CssIdent visible = new CssIdent("visible");
     static CssIdent hidden = new CssIdent("hidden");
     static CssIdent scroll = new CssIdent("scroll");
     static CssIdent initial = new CssIdent("initial");
-
+    
     /**
      * Create a new CssOverflowX
      */
     public CssOverflowX() {
 	// nothing to do
     }
-
+    
     /**
      * Create a new CssOverflowX
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssOverflowX(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val.equals(inherit)) {
-		    overflowX = val;
-		    expression.next();
-		} else if (val.equals(visible)) {
-		    overflowX = val;
-		    expression.next();
-		} else if (val.equals(hidden)) {
-		    overflowX = val;
-		    expression.next();
-		} else if (val.equals(scroll)) {
-		    overflowX = val;
-		    expression.next();
-		} else if (val.equals(auto)) {
-		    overflowX = val;
-		    expression.next();
-		} else if (val.equals(initial)) {
-		    overflowX = val;
-		    expression.next();
-		} else {
-		    throw new InvalidParamException("value", expression.getValue(),
-					    getPropertyName(), ac);
-		}
+    public CssOverflowX(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val.equals(inherit)) {
+	    overflowX = val;
+	    expression.next();
+	} else if (val.equals(visible)) {
+	    overflowX = val;
+	    expression.next();
+	} else if (val.equals(hidden)) {
+	    overflowX = val;
+	    expression.next();
+	} else if (val.equals(scroll)) {
+	    overflowX = val;
+	    expression.next();
+	} else if (val.equals(auto)) {
+	    overflowX = val;
+	    expression.next();
+	} else if (val.equals(initial)) {
+	    overflowX = val;
+	    expression.next();
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssOverflowX(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssOverflowX != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssOverflowX = this;
-	}
-
+	if (((Css3Style) style).cssOverflowX != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssOverflowX = this;
+    }
+    
     /**
      * Get this property in the style.
      *
@@ -95,7 +99,7 @@
 	    return ((Css3Style) style).cssOverflowX;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -105,42 +109,42 @@
 	return (property instanceof CssOverflowX &&
 		overflowX.equals(((CssOverflowX) property).overflowX));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "overflow-x";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return overflowX;
+	return overflowX;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return overflowX.equals(inherit);
+	return overflowX.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return overflowX.toString();
+	return overflowX.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-
-		return overflowX == visible;
+	
+	return overflowX == visible;
     }
-
+    
 }

Index: CssUserFocus.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssUserFocus.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssUserFocus.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssUserFocus.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -60,7 +60,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssUserFocus(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssUserFocus(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -103,6 +104,11 @@
 	}
     }
 
+    public CssUserFocus(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssPaddingCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssPaddingCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssPaddingCSS3.java	24 Dec 2002 13:20:53 -0000	1.1
+++ CssPaddingCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/12/24 13:20:53  sijtsche
  * new version for CSS3: value initial added
  *
@@ -39,15 +49,14 @@
  */
 package org.w3c.css.properties3;
 
-import org.w3c.css.parser.CssStyle;
 import org.w3c.css.parser.CssSelectors;
-import org.w3c.css.parser.CssPrinterStyle;
+import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
 import org.w3c.css.values.CssValue;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
 
 /**
  *   <H4>
@@ -104,7 +113,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssPaddingCSS3(ApplContext ac, CssExpression expression)  throws InvalidParamException {
+    public CssPaddingCSS3(ApplContext ac, CssExpression expression,
+	    boolean check)  throws InvalidParamException {
 	CssValue val = expression.getValue();
 	setByUser();
 
@@ -161,6 +171,11 @@
 	}
     }
 
+    public CssPaddingCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property
      */

Index: CssBorderBottomFitLength.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBottomFitLength.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBottomFitLength.java	8 Jan 2003 10:13:38 -0000	1.1
+++ CssBorderBottomFitLength.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderBottomFitLength extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderBottomFitLength
      */
     public CssBorderBottomFitLength() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderBottomFitLength
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderBottomFitLength(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderBottomFitLength(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderBottomFitLength(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderBottomFitLength = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderBottomFitLength;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderBottomFitLength &&
 		value.equals(((CssBorderBottomFitLength) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-bottom-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: CssTextLTStyle.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextLTStyle.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssTextLTStyle.java	15 Aug 2002 09:06:53 -0000	1.2
+++ CssTextLTStyle.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -53,7 +53,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextLTStyle(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextLTStyle(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -72,6 +73,11 @@
 	}
     }
 
+    public CssTextLTStyle(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderTopFitLength.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopFitLength.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopFitLength.java	8 Jan 2003 10:21:01 -0000	1.1
+++ CssBorderTopFitLength.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderTopFitLength extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderTopFitLength
      */
     public CssBorderTopFitLength() {
-		value = "repeat";
+	value = "repeat";
     }
-
+    
     /**
      * Create a new CssBorderTopFitLength
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderTopFitLength(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderTopFitLength(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderTopFitLength(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderTopFitLength = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderTopFitLength;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderTopFitLength &&
 		value.equals(((CssBorderTopFitLength) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-top-fit-length";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("repeat");
+	return value.equals("repeat");
     }
-
+    
 }

Index: Css3Style.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/Css3Style.java,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- Css3Style.java	14 Jul 2003 13:58:02 -0000	1.19
+++ Css3Style.java	8 Aug 2005 13:18:54 -0000	1.20
@@ -8,12 +8,7 @@
 
 package org.w3c.css.properties3;
 
-import org.w3c.css.util.Warnings;
-import org.w3c.css.util.Warning;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.parser.CssPrinterStyle;
-import org.w3c.css.properties2.Css2Style;
-import org.w3c.css.values.CssValue;
 
 public class Css3Style extends org.w3c.css.atsc.ATSCStyle {
 

Index: CssToggleGroup.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssToggleGroup.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssToggleGroup.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssToggleGroup.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -12,12 +12,12 @@
 import java.util.Vector;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -55,7 +55,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssToggleGroup(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssToggleGroup(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -96,6 +97,11 @@
 	}
     }
 
+    public CssToggleGroup(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssBackgroundOrigin.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBackgroundOrigin.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBackgroundOrigin.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssBackgroundOrigin.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -32,44 +32,50 @@
 public class CssBackgroundOrigin extends CssProperty {
 
     CssValue bgorigin;
-
+    
     CssIdent border = new CssIdent("border");
     CssIdent padding = new CssIdent("padding");
     CssIdent content = new CssIdent("content");
-
+    
     /**
      * Create a new CssBackgroundOrigin
      */
     public CssBackgroundOrigin() {
-		bgorigin = padding;
+	bgorigin = padding;
     }
-
+    
     /**
      * Create a new CssBackgroundOrigin
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBackgroundOrigin(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-
-		if (val.equals(border)) {
-		    bgorigin = border;
-		    expression.next();
-		} else if (val.equals(padding)) {
-		    bgorigin = padding;
-		    expression.next();
-		} else if (val.equals(content)) {
-			bgorigin = content;
-			expression.next();
-		} else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
-		}
+    public CssBackgroundOrigin(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	
+	if (val.equals(border)) {
+	    bgorigin = border;
+	    expression.next();
+	} else if (val.equals(padding)) {
+	    bgorigin = padding;
+	    expression.next();
+	} else if (val.equals(content)) {
+	    bgorigin = content;
+	    expression.next();
+	} else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
     }
-
+    
+    public CssBackgroundOrigin(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }    
+    
     /**
      * Add this property to the CssStyle
      *
@@ -80,7 +86,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBackgroundOrigin = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -95,51 +101,51 @@
 	    return ((Css3Style) style).cssBackgroundOrigin;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBackgroundOrigin &&
-			bgorigin.equals(((CssBackgroundOrigin) property).bgorigin));
+	return (property instanceof CssBackgroundOrigin &&
+		bgorigin.equals(((CssBackgroundOrigin) property).bgorigin));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "background-origin";
+	return "background-origin";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return bgorigin;
+	return bgorigin;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return bgorigin.equals(inherit);
+	return bgorigin.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return bgorigin.toString();
+	return bgorigin.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return bgorigin == padding;
+	return bgorigin == padding;
     }
-
+    
 }

Index: MediaMaxHeight.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMaxHeight.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMaxHeight.java	8 Jan 2003 10:04:22 -0000	1.1
+++ MediaMaxHeight.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:04:22  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,34 +79,40 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMaxHeight(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssLength || val instanceof CssPercentage) {
-			    float f = ((Float) val.get()).floatValue();
-			    if (f < 0) {
-					throw new InvalidParamException("negative-value",
-								val.toString(), ac);
-			    }
-			    value = val;
-			} else if (val instanceof CssNumber) {
-			    value = ((CssNumber) val).getLength();
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMaxHeight(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssLength || val instanceof CssPercentage) {
+		float f = ((Float) val.get()).floatValue();
+		if (f < 0) {
+		    throw new InvalidParamException("negative-value",
+			    val.toString(), ac);
 		}
+		value = val;
+	    } else if (val instanceof CssNumber) {
+		value = ((CssNumber) val).getLength();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
-
+    
+    public MediaMaxHeight(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssBorderTopRightFitWidth.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderTopRightFitWidth.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderTopRightFitWidth.java	8 Jan 2003 10:21:01 -0000	1.1
+++ CssBorderTopRightFitWidth.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,87 +9,91 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderTopRightFitWidth extends CssProperty {
-
+    
     String value = "";
-
+    
     CssIdent repeat = new CssIdent("repeat");
-
+    
     private static String[] values = {
-		"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
+	"clip", "repeat", "scale", "stretch", "overwrite", "overflow", "space"
     };
-
+    
     /**
      * Create a new CssBorderTopRightFitWidth
      */
     public CssBorderTopRightFitWidth() {
-		value = "overwrite";
+	value = "overwrite";
     }
-
+    
     /**
      * Create a new CssBorderTopRightFitWidth
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderTopRightFitWidth(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-		CssValue val = expression.getValue();
-		int i = 0;
-
-		if (val instanceof CssIdent) {
-			for (; i < values.length; i++) {
-			    if (val.toString().equals(values[i])) {
-					value = val.toString();
-					expression.next();
-					break;
-		    	}
-			}
-			if (i == values.length) {
-				    throw new InvalidParamException("value", expression.getValue(),
-								    getPropertyName(), ac);
-			}
+    public CssBorderTopRightFitWidth(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	CssValue val = expression.getValue();
+	int i = 0;
+	
+	if (val instanceof CssIdent) {
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    value = val.toString();
+		    expression.next();
+		    break;
 		}
-		else {
-		    throw new InvalidParamException("value", expression.getValue(),
-						    getPropertyName(), ac);
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
+	else {
+	    throw new InvalidParamException("value", expression.getValue(),
+		    getPropertyName(), ac);
+	}
+	
+	val = expression.getValue();
+	i = 0;
+	
+	if (val != null) {
+	    if (val instanceof CssIdent) {
+		for (; i < values.length; i++) {
+		    if (val.toString().equals(values[i])) {
+			value += " " + val.toString();
+			expression.next();
+			break;
+		    }
 		}
-
-		val = expression.getValue();
-		i = 0;
-
-		if (val != null) {
-			if (val instanceof CssIdent) {
-				for (; i < values.length; i++) {
-				    if (val.toString().equals(values[i])) {
-						value += " " + val.toString();
-						expression.next();
-						break;
-			    	}
-				}
-				if (i == values.length) {
-					    throw new InvalidParamException("value", expression.getValue(),
-									    getPropertyName(), ac);
-				}
-			}
-			else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
+		if (i == values.length) {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    }
+	    else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	}
     }
-
+    
+    public CssBorderTopRightFitWidth(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -100,7 +104,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBorderTopRightFitWidth = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -115,7 +119,7 @@
 	    return ((Css3Style) style).cssBorderTopRightFitWidth;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
@@ -125,41 +129,41 @@
 	return (property instanceof CssBorderTopRightFitWidth &&
 		value.equals(((CssBorderTopRightFitWidth) property).value));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
 	return "border-top-right-fit-width";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
 	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
 	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
 	return value.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals("overwrite");
+	return value.equals("overwrite");
     }
 
 }

Index: MediaHeight.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaHeight.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaHeight.java	8 Jan 2003 10:05:40 -0000	1.1
+++ MediaHeight.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:05:40  sijtsche
  * new media feature for media queries
  *
@@ -40,15 +50,14 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -70,34 +79,40 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaHeight(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssLength || val instanceof CssPercentage) {
-			    float f = ((Float) val.get()).floatValue();
-			    if (f < 0) {
-					throw new InvalidParamException("negative-value",
-								val.toString(), ac);
-			    }
-			    value = val;
-			} else if (val instanceof CssNumber) {
-			    value = ((CssNumber) val).getLength();
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaHeight(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssLength || val instanceof CssPercentage) {
+		float f = ((Float) val.get()).floatValue();
+		if (f < 0) {
+		    throw new InvalidParamException("negative-value",
+			    val.toString(), ac);
 		}
+		value = val;
+	    } else if (val instanceof CssNumber) {
+		value = ((CssNumber) val).getLength();
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaHeight(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssRubyPosition.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssRubyPosition.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssRubyPosition.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssRubyPosition.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -56,7 +54,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssRubyPosition(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssRubyPosition(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	
 	setByUser();
 	CssValue val = expression.getValue();
@@ -86,6 +85,10 @@
 	}
     }
     
+    public CssRubyPosition(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 	
     /**
      * Add this property to the CssStyle.

Index: MediaMonochrome.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaMonochrome.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaMonochrome.java	8 Jan 2003 10:01:44 -0000	1.1
+++ MediaMonochrome.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:01:44  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -71,33 +78,39 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaMonochrome(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-		char op = SPACE;
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaMonochrome(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	char op = SPACE;
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
 
+    public MediaMonochrome(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: MediaColor.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/MediaColor.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- MediaColor.java	8 Jan 2003 10:05:40 -0000	1.1
+++ MediaColor.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2003/01/08 10:05:40  sijtsche
  * new media feature for media queries
  *
@@ -40,16 +50,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
 import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssLength;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssOperator;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  * @version $Revision$
@@ -62,7 +68,7 @@
      * Create a new MediaColor
      */
     public MediaColor() {
-		//empty
+	//empty
     }
 
     /**
@@ -71,32 +77,38 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public MediaColor(ApplContext ac, CssExpression expression) throws InvalidParamException {
-		CssValue val = null;
-
-		if (expression != null) {
-			val = expression.getValue();
-		}
-
-		setByUser();
-
-		if (val != null) {
-			if (val instanceof CssNumber) {
-				if (((CssNumber) val).isInteger()) {
-					value = val;
-				} else {
-				    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-				}
-			} else {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
-			}
-
-			expression.next();
+    public MediaColor(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	CssValue val = null;
+	
+	if (expression != null) {
+	    val = expression.getValue();
+	}
+	
+	setByUser();
+	
+	if (val != null) {
+	    if (val instanceof CssNumber) {
+		if (((CssNumber) val).isInteger()) {
+		    value = val;
+		} else {
+		    throw new InvalidParamException("value", expression.getValue(),
+			    getPropertyName(), ac);
 		}
+	    } else {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
+	    
+	    expression.next();
+	}
     }
-
+    
+    public MediaColor(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssRubyOverhang.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssRubyOverhang.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssRubyOverhang.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssRubyOverhang.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.Util;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -51,7 +49,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssRubyOverhang(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssRubyOverhang(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	
 	setByUser();
 	CssValue val = expression.getValue();
@@ -82,6 +81,11 @@
 	}
     }
 
+    public CssRubyOverhang(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssNavRight.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssNavRight.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssNavRight.java	20 Dec 2002 16:00:14 -0000	1.1
+++ CssNavRight.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 public class CssNavRight extends CssProperty {
 
@@ -36,7 +36,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssNavRight(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssNavRight(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -56,6 +57,11 @@
 	}
     }
 
+    public CssNavRight(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssNavUp.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssNavUp.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssNavUp.java	20 Dec 2002 16:00:15 -0000	1.1
+++ CssNavUp.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssURL;
+import org.w3c.css.values.CssValue;
 
 public class CssNavUp extends CssProperty {
 
@@ -36,7 +36,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssNavUp(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssNavUp(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -56,6 +57,11 @@
 	}
     }
 
+    public CssNavUp(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssLineStackingRuby.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssLineStackingRuby.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssLineStackingRuby.java	20 Aug 2002 13:53:41 -0000	1.1
+++ CssLineStackingRuby.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *
@@ -41,7 +41,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssLineStackingRuby(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssLineStackingRuby(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -64,6 +65,11 @@
 	}
     }
 
+    public CssLineStackingRuby(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBorderBreak.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBorderBreak.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBorderBreak.java	8 Jan 2003 10:17:35 -0000	1.1
+++ CssBorderBreak.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,55 +9,59 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.properties.CssProperty;
 import org.w3c.css.properties.CssBorderFaceStyle;
-import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.properties.CssProperty;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 
 public class CssBorderBreak extends CssProperty {
 
     CssBorderFaceStyle bfsvalue = null;
     CssValue value = null;
-
+    
     CssIdent none = new CssIdent("none");
-
+    
     /**
      * Create a new CssBorderBreak
      */
     public CssBorderBreak() {
-		value = none;
+	value = none;
     }
-
+    
     /**
      * Create a new CssBorderBreak
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBorderBreak(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		setByUser();
-
-		bfsvalue = new CssBorderFaceStyle(ac, expression);
+    public CssBorderBreak(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	setByUser();
+	
+	bfsvalue = new CssBorderFaceStyle(ac, expression);
     }
-
+    
+    public CssBorderBreak(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssBorderBreak != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssBorderBreak = this;
+	if (((Css3Style) style).cssBorderBreak != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssBorderBreak = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -65,63 +69,63 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getBorderBreak();
-		}
-		else {
-		    return ((Css3Style) style).cssBorderBreak;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getBorderBreak();
+	}
+	else {
+	    return ((Css3Style) style).cssBorderBreak;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBorderBreak &&
-			(value.equals(((CssBorderBreak) property).value) ||
-			 bfsvalue.equals(((CssBorderBreak) property).bfsvalue)));
+	return (property instanceof CssBorderBreak &&
+		(value.equals(((CssBorderBreak) property).value) ||
+			bfsvalue.equals(((CssBorderBreak) property).bfsvalue)));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "border-break";
+	return "border-break";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return value;
+	return value;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return value.equals(inherit);
+	return value.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		if (value != null) {
-			return value.toString();
-		} else {
-			return bfsvalue.toString();
-		}
+	if (value != null) {
+	    return value.toString();
+	} else {
+	    return bfsvalue.toString();
+	}
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return value.equals(new CssBorderFaceStyle());
+	return value.equals(new CssBorderFaceStyle());
     }
-
+    
 }

Index: CssNavIndex.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssNavIndex.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssNavIndex.java	20 Dec 2002 16:00:14 -0000	1.1
+++ CssNavIndex.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 public class CssNavIndex extends CssProperty {
 
@@ -36,7 +36,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssNavIndex(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssNavIndex(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -55,6 +56,11 @@
 					    getPropertyName(), ac);
 	}
     }
+    
+    public CssNavIndex(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
 
     /**
      * Add this property to the CssStyle

Index: CssPaddingTopCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssPaddingTopCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssPaddingTopCSS3.java	24 Dec 2002 13:20:53 -0000	1.1
+++ CssPaddingTopCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -6,6 +6,16 @@
 // Please first read the full copyright statement in file COPYRIGHT.html
 /*
  * $Log$
+ * Revision 1.2  2005/08/08 13:18:54  ylafon
+ * All those changed made by Jean-Guilhem Rouel:
+ *
+ * Huge patch, imports fixed (automatic)
+ * Bug fixed: 372, 920, 778, 287, 696, 764, 233
+ * Partial bug fix for 289
+ *
+ * Issue with "inherit" in CSS2.
+ * The validator now checks the number of values (extraneous values were previously ignored)
+ *
  * Revision 1.1  2002/12/24 13:20:53  sijtsche
  * new version for CSS3: value initial added
  *
@@ -31,10 +41,10 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssExpression;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
 import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 
 /**
  *   <H4>
@@ -56,72 +66,78 @@
  * @version $Revision$
  */
 public class CssPaddingTopCSS3 extends CssPaddingSideCSS3 {
-
-  /**
-   * Create a new CssPaddingTopCSS3
-   */
-  public CssPaddingTopCSS3() {
-    super();
-  }
-
-  /**
-   * Create a new CssPaddingTopCSS3 with an another CssPaddingSideCSS3.
-   *
-   * @param another The another side.
-   */
-  public CssPaddingTopCSS3(CssPaddingSideCSS3 another) {
-    super(another);
-  }
-
-  /**
-   * Create a new CssPaddingTopCSS3
-   *
-   * @param expression The expression for this property.
-   * @exception InvalidParamException Values are incorrect
-   */
-  public CssPaddingTopCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
-    super(ac, expression);
-  }
-
-  /**
-   * Returns the name of this property
-   */
-  public String getPropertyName() {
-    return "padding-top";
-  }
-
-  /**
-   * Add this property to the CssStyle.
-   *
-   * @param style The CssStyle
-   */
-  public void addToStyle(ApplContext ac, CssStyle style) {
-    if (((Css3Style) style).cssPaddingTopCSS3 != null)
+    
+    /**
+     * Create a new CssPaddingTopCSS3
+     */
+    public CssPaddingTopCSS3() {
+	super();
+    }
+    
+    /**
+     * Create a new CssPaddingTopCSS3 with an another CssPaddingSideCSS3.
+     *
+     * @param another The another side.
+     */
+    public CssPaddingTopCSS3(CssPaddingSideCSS3 another) {
+	super(another);
+    }
+    
+    /**
+     * Create a new CssPaddingTopCSS3
+     *
+     * @param expression The expression for this property.
+     * @exception InvalidParamException Values are incorrect
+     */
+    public CssPaddingTopCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	super(ac, expression, check);
+    }
+    
+    public CssPaddingTopCSS3(ApplContext ac, CssExpression expression)
+    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
+    /**
+     * Returns the name of this property
+     */
+    public String getPropertyName() {
+	return "padding-top";
+    }
+    
+    /**
+     * Add this property to the CssStyle.
+     *
+     * @param style The CssStyle
+     */
+    public void addToStyle(ApplContext ac, CssStyle style) {
+	if (((Css3Style) style).cssPaddingTopCSS3 != null)
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssPaddingTopCSS3 = this;
-  }
-
-  /**
-   * Get this property in the style.
-   *
-   * @param style The style where the property is
-   * @param resolve if true, resolve the style to find this property
-   */
-  public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-    if (resolve) {
-      return ((Css3Style) style).getPaddingTopCSS3();
-    } else {
-      return ((Css3Style) style).cssPaddingCSS3.getTop();
     }
-  }
-
-  /**
-   * Compares two properties for equality.
-   *
-   * @param value The other property.
-   */
-  public boolean equals(CssProperty property) {
-    return (property instanceof CssPaddingTopCSS3 && value.equals(((CssPaddingTopCSS3) property).value));
-  }
-
+    
+    /**
+     * Get this property in the style.
+     *
+     * @param style The style where the property is
+     * @param resolve if true, resolve the style to find this property
+     */
+    public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
+	if (resolve) {
+	    return ((Css3Style) style).getPaddingTopCSS3();
+	} else {
+	    return ((Css3Style) style).cssPaddingCSS3.getTop();
+	}
+    }
+    
+    /**
+     * Compares two properties for equality.
+     *
+     * @param value The other property.
+     */
+    public boolean equals(CssProperty property) {
+	return (property instanceof CssPaddingTopCSS3 && value.equals(((CssPaddingTopCSS3) property).value));
+    }
+    
 }

Index: CssDisplayModel.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssDisplayModel.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssDisplayModel.java	24 Dec 2002 13:06:42 -0000	1.2
+++ CssDisplayModel.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -33,7 +33,8 @@
     static CssIdent text = new CssIdent("text");
 
     private static String[] values = {
-		"inline-inside", "block-inside", "table", "ruby", "initial", "inherit"
+		"inline-inside", "block-inside", "table", "ruby",
+		"initial", "inherit"
     };
 
     /**
@@ -49,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssDisplayModel(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssDisplayModel(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -68,6 +70,11 @@
 	}
     }
 
+    public CssDisplayModel(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBackgroundQuantity.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBackgroundQuantity.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssBackgroundQuantity.java	19 Jul 2002 20:30:12 -0000	1.1
+++ CssBackgroundQuantity.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,13 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -32,58 +32,63 @@
 public class CssBackgroundQuantity extends CssProperty {
 
     CssValue bgquantity;
-
+    
     CssIdent initial = new CssIdent("initial");
     CssIdent infinite = new CssIdent("infinite");
-
+    
     /**
      * Create a new CssBackgroundQuantity
      */
     public CssBackgroundQuantity() {
-		bgquantity = infinite;
+	bgquantity = infinite;
     }
-
+    
     /**
      * Create a new CssBackgroundQuantity
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssBackgroundQuantity(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
-		CssValue val = expression.getValue();
-		setByUser();
-
-		if (val.equals(inherit)) {
-		    bgquantity = inherit;
-		    expression.next();
-		    return;
-		} else if (val.equals(infinite)) {
-			bgquantity = infinite;
-			expression.next();
-			return;
-		} else if (val.equals(initial)) {
-			bgquantity = initial;
-			expression.next();
-			return;
-		} else if (val instanceof CssNumber) {
-		    if (((CssNumber) val).isInteger()) {
-				bgquantity = val;
-				expression.next();
-				return;
-		    } else {
-				throw new InvalidParamException("integer",
-							val.toString(),
-							getPropertyName(), ac);
-		    }
-		}
-
-		throw new InvalidParamException("value",
-						    val.toString(),
-						    getPropertyName(), ac);
+    public CssBackgroundQuantity(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
+	CssValue val = expression.getValue();
+	setByUser();
+	
+	if (val.equals(inherit)) {
+	    bgquantity = inherit;
+	    expression.next();
+	    return;
+	} else if (val.equals(infinite)) {
+	    bgquantity = infinite;
+	    expression.next();
+	    return;
+	} else if (val.equals(initial)) {
+	    bgquantity = initial;
+	    expression.next();
+	    return;
+	} else if (val instanceof CssNumber) {
+	    if (((CssNumber) val).isInteger()) {
+		bgquantity = val;
+		expression.next();
+		return;
+	    } else {
+		throw new InvalidParamException("integer",
+			val.toString(),
+			getPropertyName(), ac);
+	    }
+	}
+	
+	throw new InvalidParamException("value",
+		val.toString(),
+		getPropertyName(), ac);
     }
-
-
+    
+    public CssBackgroundQuantity(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *
@@ -94,7 +99,7 @@
 	    style.addRedefinitionWarning(ac, this);
 	((Css3Style) style).cssBackgroundQuantity = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -109,51 +114,51 @@
 	    return ((Css3Style) style).cssBackgroundQuantity;
 	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssBackgroundQuantity &&
-			bgquantity.equals(((CssBackgroundQuantity) property).bgquantity));
+	return (property instanceof CssBackgroundQuantity &&
+		bgquantity.equals(((CssBackgroundQuantity) property).bgquantity));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "background-quantity";
+	return "background-quantity";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return bgquantity;
+	return bgquantity;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return bgquantity.equals(inherit);
+	return bgquantity.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return bgquantity.toString();
+	return bgquantity.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return bgquantity == infinite;
+	return bgquantity == infinite;
     }
-
+    
 }

Index: CssAppearance.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssAppearance.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssAppearance.java	18 Dec 2002 09:18:18 -0000	1.1
+++ CssAppearance.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,14 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssLength;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -35,65 +33,73 @@
  */
 
 public class CssAppearance extends CssProperty {
-
+    
     CssValue appearance;
-
-	CssIdent normal = new CssIdent("normal");
-
+    
+    CssIdent normal = new CssIdent("normal");
+    
     private static String[] values = {
-		"normal", "icon", "window", "document", "workspace", "desktop", "tooltip", "dialog", "button",
-		"default-button", "hyperlink", "menu", "pull-down-menu", "pop-up-menu", "list-menu", "field", "inherit"
+	"normal", "icon", "window", "document", "workspace", 
+	"desktop", "tooltip", "dialog", "button", "default-button",
+	"hyperlink", "menu", "pull-down-menu", "pop-up-menu", "list-menu",
+	"field", "inherit"
     };
-
+    
     /**
      * Create a new CssAppearance
      */
     public CssAppearance() {
-		appearance = normal;
+	appearance = normal;
     }
-
+    
     /**
      * Create a new CssAppearance
      *
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect value
      */
-    public CssAppearance(ApplContext ac, CssExpression expression) throws InvalidParamException {
-
+    public CssAppearance(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
+	
 	setByUser();
 	CssValue val = expression.getValue();
-
+	
 	if (val instanceof CssIdent) {
-		int i = 0;
-		for (; i < values.length; i++) {
-		    if (val.toString().equals(values[i])) {
-				appearance = val;
-				expression.next();
-				break;
-	    	}
-		}
-		if (i == values.length) {
-			    throw new InvalidParamException("value", expression.getValue(),
-							    getPropertyName(), ac);
+	    int i = 0;
+	    for (; i < values.length; i++) {
+		if (val.toString().equals(values[i])) {
+		    appearance = val;
+		    expression.next();
+		    break;
 		}
+	    }
+	    if (i == values.length) {
+		throw new InvalidParamException("value", expression.getValue(),
+			getPropertyName(), ac);
+	    }
 	}
 	else {
 	    throw new InvalidParamException("value", expression.getValue(),
-					    getPropertyName(), ac);
+		    getPropertyName(), ac);
 	}
     }
-
+    
+    public CssAppearance(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }  
+    
     /**
      * Add this property to the CssStyle
      *
      * @param style The CssStyle
      */
     public void addToStyle(ApplContext ac, CssStyle style) {
-		if (((Css3Style) style).cssAppearance != null)
-		    style.addRedefinitionWarning(ac, this);
-		((Css3Style) style).cssAppearance = this;
+	if (((Css3Style) style).cssAppearance != null)
+	    style.addRedefinitionWarning(ac, this);
+	((Css3Style) style).cssAppearance = this;
     }
-
+    
     /**
      * Get this property in the style.
      *
@@ -101,58 +107,58 @@
      * @param resolve if true, resolve the style to find this property
      */
     public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
-		if (resolve) {
-		    return ((Css3Style) style).getAppearance();
-		}
-		else {
-		    return ((Css3Style) style).cssAppearance;
-		}
+	if (resolve) {
+	    return ((Css3Style) style).getAppearance();
+	}
+	else {
+	    return ((Css3Style) style).cssAppearance;
+	}
     }
-
+    
     /**
      * Compares two properties for equality.
      *
      * @param value The other property.
      */
     public boolean equals(CssProperty property) {
-		return (property instanceof CssAppearance &&
-			appearance.equals(((CssAppearance) property).appearance));
+	return (property instanceof CssAppearance &&
+		appearance.equals(((CssAppearance) property).appearance));
     }
-
+    
     /**
      * Returns the name of this property
      */
     public String getPropertyName() {
-		return "appearance";
+	return "appearance";
     }
-
+    
     /**
      * Returns the value of this property
      */
     public Object get() {
-		return appearance;
+	return appearance;
     }
-
+    
     /**
      * Returns true if this property is "softly" inherited
      */
     public boolean isSoftlyInherited() {
-		return appearance.equals(inherit);
+	return appearance.equals(inherit);
     }
-
+    
     /**
      * Returns a string representation of the object
      */
     public String toString() {
-		return appearance.toString();
+	return appearance.toString();
     }
-
+    
     /**
      * Is the value of this property a default value
      * It is used by alle macro for the function <code>print</code>
      */
     public boolean isDefault() {
-		return appearance == normal;
+	return appearance == normal;
     }
-
+    
 }

Index: CssMinWidthCSS3.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMinWidthCSS3.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMinWidthCSS3.java	24 Dec 2002 13:18:36 -0000	1.1
+++ CssMinWidthCSS3.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,15 +9,15 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
+import org.w3c.css.properties.CssProperty;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.values.CssExpression;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.values.CssIdent;
 import org.w3c.css.values.CssLength;
+import org.w3c.css.values.CssNumber;
 import org.w3c.css.values.CssPercentage;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.util.InvalidParamException;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.properties.CssProperty;
+import org.w3c.css.values.CssValue;
 
 /**
  */
@@ -38,7 +38,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Values are incorrect
      */
-    public CssMinWidthCSS3(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMinWidthCSS3(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	CssValue val = expression.getValue();
 
 	setByUser();
@@ -64,6 +65,11 @@
 	expression.next();
     }
 
+    public CssMinWidthCSS3(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Returns the value of this property.
      */

Index: CssMarquee.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssMarquee.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- CssMarquee.java	24 Dec 2002 13:16:26 -0000	1.1
+++ CssMarquee.java	8 Aug 2005 13:18:54 -0000	1.2
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
 import org.w3c.css.values.CssOperator;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -52,7 +51,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssMarquee(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssMarquee(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	CssValue val = expression.getValue();
 	int maxvalues = 4;
@@ -120,6 +120,11 @@
 
     }
 
+    public CssMarquee(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Index: CssBoxSizing.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssBoxSizing.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssBoxSizing.java	24 Dec 2002 13:05:56 -0000	1.2
+++ CssBoxSizing.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,13 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
-import org.w3c.css.values.CssNumber;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -43,7 +42,8 @@
 	boxsizing = contentbox;
     }
 
-    public CssBoxSizing(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssBoxSizing(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 
 	setByUser();
 	CssValue val = expression.getValue();
@@ -70,6 +70,11 @@
 	}
     }
 
+    public CssBoxSizing(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle.
      *

Index: CssTextLTMode.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/properties3/CssTextLTMode.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- CssTextLTMode.java	14 Jul 2003 14:33:56 -0000	1.2
+++ CssTextLTMode.java	8 Aug 2005 13:18:54 -0000	1.3
@@ -9,12 +9,12 @@
 package org.w3c.css.properties3;
 
 import org.w3c.css.parser.CssStyle;
-import org.w3c.css.values.CssIdent;
-import org.w3c.css.values.CssValue;
-import org.w3c.css.values.CssExpression;
 import org.w3c.css.properties.CssProperty;
-import org.w3c.css.util.InvalidParamException;
 import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.InvalidParamException;
+import org.w3c.css.values.CssExpression;
+import org.w3c.css.values.CssIdent;
+import org.w3c.css.values.CssValue;
 
 /**
  *  <P>
@@ -50,7 +50,8 @@
      * @param expression The expression for this property
      * @exception InvalidParamException Incorrect values
      */
-    public CssTextLTMode(ApplContext ac, CssExpression expression) throws InvalidParamException {
+    public CssTextLTMode(ApplContext ac, CssExpression expression,
+	    boolean check) throws InvalidParamException {
 	setByUser();
 	CssValue val = expression.getValue();
 
@@ -73,6 +74,11 @@
 	}
     }
 
+    public CssTextLTMode(ApplContext ac, CssExpression expression)
+	    throws InvalidParamException {
+	this(ac, expression, false);
+    }
+    
     /**
      * Add this property to the CssStyle
      *

Received on Monday, 8 August 2005 22:47:34 UTC