How to add new properties: 1/ all generic properties must be in the org.w3c.css.properties.css package It should contain the evolving version of the implementation of classes Typically what's in a WD, and not stable yet 2/ Once stable for a specific level, create a level-specific version of the \ class, starting with the minimum level it is defined. 3/ Add the relevant versions to the level property file in this directory. Example: 'display' is defined in CSS1, CSS2, CSS21, with different values. org.w3c.css.properties.css.CssDisplay is the core class org.w3c.css.properties.css1.CssDisplay extends the core class (basically, it redefines the allowed values) Note that as 'display' is defined in CSS1, it is present in Css1Style. org.w3c.css.properties.css2.CssDisplay does the same for CSS2 (redefining the core class, NOT the css1 one) org.w3c.css.properties.css21.CssDisplay does the same for CSS21 (marker removed since CSS2). same for CSS3, and upcoming levels. NOTE: be careful when extending the core class, not to break classes that are extending it !