- From: Elika Etemad via cvs-syncmail <cvsmail@w3.org>
- Date: Mon, 05 Mar 2012 22:48:19 +0000
- To: public-css-commits@w3.org
Update of /sources/public/csswg/css3-values In directory hutz:/tmp/cvs-serv25894 Modified Files: Overview.html Overview.src.html Log Message: Add conformance section. Drop issues on size/precision limits since Arron never provided them. Index: Overview.html =================================================================== RCS file: /sources/public/csswg/css3-values/Overview.html,v retrieving revision 1.163 retrieving revision 1.164 diff -u -d -r1.163 -r1.164 --- Overview.html 5 Mar 2012 22:43:08 -0000 1.163 +++ Overview.html 5 Mar 2012 22:48:17 -0000 1.164 @@ -295,6 +295,27 @@ <li class=no-num><a href="#acknowledgments">Acknowledgments</a> + <li><a href="#conformance"><span class=secno>9. </span> Conformance</a> + <ul class=toc> + <li><a href="#conventions"><span class=secno>9.1. </span> Document + conventions</a> + + <li><a href="#conformance-classes"><span class=secno>9.2. </span> + Conformance classes</a> + + <li><a href="#partial"><span class=secno>9.3. </span> Partial + implementations</a> + + <li><a href="#experimental"><span class=secno>9.4. </span> Experimental + implementations</a> + + <li><a href="#testing"><span class=secno>9.5. </span> Non-experimental + implementations</a> + + <li><a href="#cr-exit-criteria"><span class=secno>9.6. </span> CR exit + criteria</a> + </ul> + <li class=no-num><a href="#references">References</a> <ul class=toc> <li class=no-num><a href="#normative-references">Normative @@ -605,10 +626,6 @@ class=css>EXAMPLE</code>’ are two different, unrelated user-defined identifiers). - <p class=issue>What should be the minimum required size for identifiers? - (This depends on the encoding, which means a character may take up to 6 - bytes in utf-8.) - <h3 id=strings><span class=secno>3.3. </span> Quoted Strings: the ‘<a href="#string-value"><code class=css><string></code></a>’ type</h3> @@ -650,10 +667,6 @@ character in Unicode (U+000A), but represents the generic notion of "newline" in CSS.) - <p class=issue>What should be the minimum required size for strings? (This - depends on the encoding, which means a character may take up to 6 bytes in - utf-8.) - <h3 id=urls><span class=secno>3.4. </span> Resource Locators: the ‘<a href="#url-value"><code class=css><url></code></a>’ type</h3> @@ -726,10 +739,6 @@ document containing the <code><body></code>. </div> - <p class=issue>What should be the minimum required size for urls? (This - depends on the encoding, which means a character may take up to 6 bytes in - utf-8.) - <h2 id=numeric-types><span class=secno>4. </span> Numeric Data Types</h2> <h3 id=integers><span class=secno>4.1. </span> Integers: the ‘<a @@ -819,9 +828,6 @@ <a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> Like keywords, unit identifiers are case-insensitive within the ASCII range. - <p class=issue>We need a minimum required range/precision for dimensions as - well. What should it be? - <p>Properties may restrict the length value to some range. If the value is outside the allowed range, the declaration is invalid and must be <a href="http://www.w3.org/TR/CSS21/conform.html#ignore">ignored</a>. @@ -1802,6 +1808,177 @@ Boris Zbarsky, Björn Höhrmann and Michael Day improved this module. + <h2 id=conformance><span class=secno>9. </span> Conformance</h2> + + <h3 id=conventions><span class=secno>9.1. </span> Document conventions</h3> + + <p>Conformance requirements are expressed with a combination of descriptive + assertions and RFC 2119 terminology. The key words “MUST”, “MUST + NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, + “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in the + normative parts of this document are to be interpreted as described in RFC + 2119. However, for readability, these words do not appear in all uppercase + letters in this specification. + + <p>All of the text of this specification is normative except sections + explicitly marked as non-normative, examples, and notes. <a + href="#RFC2119" rel=biblioentry>[RFC2119]<!--{{!RFC2119}}--></a> + + <p>Examples in this specification are introduced with the words “for + example” or are set apart from the normative text with + <code>class="example"</code>, like this: + + <div class=example> + <p>This is an example of an informative example.</p> + </div> + + <p>Informative notes begin with the word “Note” and are set apart from + the normative text with <code>class="note"</code>, like this: + + <p class=note>Note, this is an informative note. + + <h3 id=conformance-classes><span class=secno>9.2. </span> Conformance + classes</h3> + + <p>Conformance to CSS Values and Units Level 3 is defined for three + conformance classes: + + <dl> + <dt><dfn id=style-sheet title="style sheet!!as conformance class">style + sheet</dfn> + + <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#style-sheet">CSS + style sheet</a>. + + <dt><dfn id=renderer>renderer</dfn> + + <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#user-agent">UA</a> + that interprets the semantics of a style sheet and renders documents that + use them. + + <dt><dfn id=authoring-tool>authoring tool</dfn> + + <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#user-agent">UA</a> + that writes a style sheet. + </dl> + + <p>A style sheet is conformant to CSS Values and Units Level 3 if all of + its statements that use syntax defined in this module are valid according + to the generic CSS grammar and the individual grammars of each feature + defined in this module. + + <p>A renderer is conformant to CSS Values and Units Level 3 if, in addition + to interpreting the style sheet as defined by the appropriate + specifications, it supports all the features defined CSS Values and Units + Level 3 by parsing them correctly and rendering the document accordingly. + However, the inability of a UA to correctly render a document due to + limitations of the device does not make the UA non-conformant. (For + example, a UA is not required to render color on a monochrome monitor.) + + <p>An authoring tool is conformant to CSS Values and Units Level 3 if it + writes style sheets that are syntactically correct according to the + generic CSS grammar and the individual grammars of each feature in this + module, and meet all other conformance requirements of style sheets as + described in this module. + + <h3 id=partial><span class=secno>9.3. </span> Partial implementations</h3> + + <p>So that authors can exploit the forward-compatible parsing rules to + assign fallback values, CSS renderers <strong>must</strong> treat as + invalid (and <a + href="http://www.w3.org/TR/CSS21/conform.html#ignore">ignore as + appropriate</a>) any at-rules, properties, property values, keywords, and + other syntactic constructs for which they have no usable level of support. + In particular, user agents <strong>must not</strong> selectively ignore + unsupported component values and honor supported values in a single + multi-value property declaration: if any value is considered invalid (as + unsupported values must be), CSS requires that the entire declaration be + ignored. + + <h3 id=experimental><span class=secno>9.4. </span> Experimental + implementations</h3> + + <p>To avoid clashes with future CSS features, the CSS2.1 specification + reserves a <a + href="http://www.w3.org/TR/CSS21/syndata.html#vendor-keywords">prefixed + syntax</a> for proprietary and experimental extensions to CSS. + + <p>Prior to a specification reaching the Candidate Recommendation stage in + the W3C process, all implementations of a CSS feature are considered + experimental. The CSS Working Group recommends that implementations use a + vendor-prefixed syntax for such features, including those in W3C Working + Drafts. This avoids incompatibilities with future changes in the draft. + + <h3 id=testing><span class=secno>9.5. </span> Non-experimental + implementations</h3> + + <p>Once a specification reaches the Candidate Recommendation stage, + non-experimental implementations are possible, and implementors should + release an unprefixed implementation of any CR-level feature they can + demonstrate to be correctly implemented according to spec. + + <p>To establish and maintain the interoperability of CSS across + implementations, the CSS Working Group requests that non-experimental CSS + renderers submit an implementation report (and, if necessary, the + testcases used for that implementation report) to the W3C before releasing + an unprefixed implementation of any CSS features. Testcases submitted to + W3C are subject to review and correction by the CSS Working Group. + + <p>Further information on submitting testcases and implementation reports + can be found from on the CSS Working Group's website at <a + href="http://www.w3.org/Style/CSS/Test/">http://www.w3.org/Style/CSS/Test/</a>. + Questions should be directed to the <a + href="http://lists.w3.org/Archives/Public/public-css-testsuite">public-css-testsuite@w3.org</a> + mailing list. + + <h3 id=cr-exit-criteria><span class=secno>9.6. </span> CR exit criteria</h3> + + <p> For this specification to be advanced to Proposed Recommendation, there + must be at least two independent, interoperable implementations of each + feature. Each feature may be implemented by a different set of products, + there is no requirement that all features be implemented by a single + product. For the purposes of this criterion, we define the following + terms: + + <dl> + <dt>independent + + <dd>each implementation must be developed by a different party and cannot + share, reuse, or derive from code used by another qualifying + implementation. Sections of code that have no bearing on the + implementation of this specification are exempt from this requirement. + + <dt>interoperable + + <dd>passing the respective test case(s) in the official CSS test suite, + or, if the implementation is not a Web browser, an equivalent test. Every + relevant test in the test suite should have an equivalent test created if + such a user agent (UA) is to be used to claim interoperability. In + addition if such a UA is to be used to claim interoperability, then there + must one or more additional UAs which can also pass those equivalent + tests in the same way for the purpose of interoperability. The equivalent + tests must be made publicly available for the purposes of peer review. + + <dt>implementation + + <dd>a user agent which: + <ol class=inline> + <li>implements the specification. + + <li>is available to the general public. The implementation may be a + shipping product or other publicly available version (i.e., beta + version, preview release, or “nightly build”). Non-shipping product + releases must have implemented the feature(s) for a period of at least + one month in order to demonstrate stability. + + <li>is not experimental (i.e., a version specifically designed to pass + the test suite and is not intended for normal usage going forward). + </ol> + </dl> + + <p>The specification will remain Candidate Recommendation for at least six + months. + <h2 class=no-num id=references>References</h2> <h3 class=no-num id=normative-references>Normative references</h3> @@ -1860,6 +2037,15 @@ href="http://www.w3.org/TR/2011/REC-css3-namespace-20110929/">http://www.w3.org/TR/2011/REC-css3-namespace-20110929/</a> </dd> <!----> + + <dt id=RFC2119>[RFC2119] + + <dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key + words for use in RFCs to Indicate Requirement Levels.</cite></a> Internet + RFC 2119. URL: <a + href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a> + </dd> + <!----> </dl> <!--end-normative--> @@ -1916,6 +2102,9 @@ <li>attr(), <a href="#attr-value" title="attr()"><strong>8.3.</strong></a> + <li>authoring tool, <a href="#authoring-tool" + title="authoring tool"><strong>9.2.</strong></a> + <li>calc(), <a href="#calc0" title="calc()"><strong>8.1.</strong></a> <li>ch, <a href="#ch-unit" title=ch><strong>5.1.1.</strong></a> @@ -2005,6 +2194,9 @@ <li>rem, <a href="#rem-unit" title=rem><strong>5.1.1.</strong></a> + <li>renderer, <a href="#renderer" title=renderer><strong>9.2.</strong></a> + + <li><resolution>, <a href="#resolution-value" title="<resolution>"><strong>6.4.</strong></a> @@ -2016,6 +2208,12 @@ <li><a href="#string-value"><code><string></code></a>, <a href="#string-value" title="<string>"><strong>3.3.</strong></a> + <li>style sheet + <ul> + <li>as conformance class, <a href="#style-sheet" + title="style sheet, as conformance class"><strong>9.2.</strong></a> + </ul> + <li><time>, <a href="#time-value" title="<time>"><strong>6.2.</strong></a> Index: Overview.src.html =================================================================== RCS file: /sources/public/csswg/css3-values/Overview.src.html,v retrieving revision 1.166 retrieving revision 1.167 diff -u -d -r1.166 -r1.167 --- Overview.src.html 5 Mar 2012 22:43:08 -0000 1.166 +++ Overview.src.html 5 Mar 2012 22:48:17 -0000 1.167 @@ -318,8 +318,6 @@ (e.g. ''example'' and ''EXAMPLE'' are two different, unrelated user-defined identifiers). - <p class='issue'>What should be the minimum required size for identifiers? (This depends on the encoding, which means a character may take up to 6 bytes in utf-8.)</p> - <h3 id="strings"> Quoted Strings: the ''<string>'' type</h3> @@ -358,8 +356,6 @@ feed character in Unicode (U+000A), but represents the generic notion of "newline" in CSS.)</p> - <p class='issue'>What should be the minimum required size for strings? (This depends on the encoding, which means a character may take up to 6 bytes in utf-8.)</p> - <h3 id="urls"> Resource Locators: the ''<url>'' type</h3> @@ -417,8 +413,6 @@ document containing the <code><body></code>. </div> - <p class='issue'>What should be the minimum required size for urls? (This depends on the encoding, which means a character may take up to 6 bytes in utf-8.)</p> - <h2 id="numeric-types"> Numeric Data Types</h2> @@ -495,8 +489,6 @@ [[!CSS21]] Like keywords, unit identifiers are case-insensitive within the ASCII range. - <p class='issue'>We need a minimum required range/precision for dimensions as well. What should it be?</p> - <p>Properties may restrict the length value to some range. If the value is outside the allowed range, the declaration is invalid and must be <a href="http://www.w3.org/TR/CSS21/conform.html#ignore">ignored</a>. @@ -1256,6 +1248,175 @@ <p>Comments and suggestions from Giovanni Campagna, Christoph Päper, Keith Rarick, Alex Mogilevsky, Ian Hickson, David Baron, Edward Welbourne, Boris Zbarsky, Björn Höhrmann and Michael Day improved this module. +<h2 id="conformance"> +Conformance</h2> + +<h3 id="conventions"> +Document conventions</h3> + + <p>Conformance requirements are expressed with a combination of + descriptive assertions and RFC 2119 terminology. The key words “MUST”, + “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, + “RECOMMENDED”, “MAY”, and “OPTIONAL” in the normative parts of this + document are to be interpreted as described in RFC 2119. + However, for readability, these words do not appear in all uppercase + letters in this specification. + + <p>All of the text of this specification is normative except sections + explicitly marked as non-normative, examples, and notes. [[!RFC2119]]</p> + + <p>Examples in this specification are introduced with the words “for example” + or are set apart from the normative text with <code>class="example"</code>, + like this: + + <div class="example"> + <p>This is an example of an informative example.</p> + </div> + + <p>Informative notes begin with the word “Note” and are set apart from the + normative text with <code>class="note"</code>, like this: + + <p class="note">Note, this is an informative note.</p> + +<h3 id="conformance-classes"> +Conformance classes</h3> + + <p>Conformance to CSS Values and Units Level 3 + is defined for three conformance classes: + <dl> + <dt><dfn title="style sheet!!as conformance class">style sheet</dfn> + <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#style-sheet">CSS + style sheet</a>. + <dt><dfn>renderer</dfn></dt> + <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#user-agent">UA</a> + that interprets the semantics of a style sheet and renders + documents that use them. + <dt><dfn id="authoring-tool">authoring tool</dfn></dt> + <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#user-agent">UA</a> + that writes a style sheet. + </dl> + + <p>A style sheet is conformant to CSS Values and Units Level 3 + if all of its statements that use syntax defined in this module are valid + according to the generic CSS grammar and the individual grammars of each + feature defined in this module. + + <p>A renderer is conformant to CSS Values and Units Level 3 + if, in addition to interpreting the style sheet as defined by the + appropriate specifications, it supports all the features defined + CSS Values and Units Level 3 by parsing them correctly + and rendering the document accordingly. However, the inability of a + UA to correctly render a document due to limitations of the device + does not make the UA non-conformant. (For example, a UA is not + required to render color on a monochrome monitor.) + + <p>An authoring tool is conformant to CSS Values and Units Level 3 + if it writes style sheets that are syntactically correct according to the + generic CSS grammar and the individual grammars of each feature in + this module, and meet all other conformance requirements of style sheets + as described in this module. + +<h3 id="partial"> +Partial implementations</h3> + + <p>So that authors can exploit the forward-compatible parsing rules to + assign fallback values, CSS renderers <strong>must</strong> + treat as invalid (and <a href="http://www.w3.org/TR/CSS21/conform.html#ignore">ignore + as appropriate</a>) any at-rules, properties, property values, keywords, + and other syntactic constructs for which they have no usable level of + support. In particular, user agents <strong>must not</strong> selectively + ignore unsupported component values and honor supported values in a single + multi-value property declaration: if any value is considered invalid + (as unsupported values must be), CSS requires that the entire declaration + be ignored.</p> + +<h3 id="experimental"> +Experimental implementations</h3> + + <p>To avoid clashes with future CSS features, the CSS2.1 specification + reserves a <a href="http://www.w3.org/TR/CSS21/syndata.html#vendor-keywords">prefixed + syntax</a> for proprietary and experimental extensions to CSS. + + <p>Prior to a specification reaching the Candidate Recommendation stage + in the W3C process, all implementations of a CSS feature are considered + experimental. The CSS Working Group recommends that implementations + use a vendor-prefixed syntax for such features, including those in + W3C Working Drafts. This avoids incompatibilities with future changes + in the draft. + </p> + +<h3 id="testing"> +Non-experimental implementations</h3> + + <p>Once a specification reaches the Candidate Recommendation stage, + non-experimental implementations are possible, and implementors should + release an unprefixed implementation of any CR-level feature they + can demonstrate to be correctly implemented according to spec. + + <p>To establish and maintain the interoperability of CSS across + implementations, the CSS Working Group requests that non-experimental + CSS renderers submit an implementation report (and, if necessary, the + testcases used for that implementation report) to the W3C before + releasing an unprefixed implementation of any CSS features. Testcases + submitted to W3C are subject to review and correction by the CSS + Working Group. + + <p>Further information on submitting testcases and implementation reports + can be found from on the CSS Working Group's website at + <a href="http://www.w3.org/Style/CSS/Test/">http://www.w3.org/Style/CSS/Test/</a>. + Questions should be directed to the + <a href="http://lists.w3.org/Archives/Public/public-css-testsuite">public-css-testsuite@w3.org</a> + mailing list. + +<h3 id="cr-exit-criteria"> +CR exit criteria</h3> + + <p> + For this specification to be advanced to Proposed Recommendation, + there must be at least two independent, interoperable implementations + of each feature. Each feature may be implemented by a different set of + products, there is no requirement that all features be implemented by + a single product. For the purposes of this criterion, we define the + following terms: + + <dl> + <dt>independent <dd>each implementation must be developed by a + different party and cannot share, reuse, or derive from code + used by another qualifying implementation. Sections of code that + have no bearing on the implementation of this specification are + exempt from this requirement. + + <dt>interoperable <dd>passing the respective test case(s) in the + official CSS test suite, or, if the implementation is not a Web + browser, an equivalent test. Every relevant test in the test + suite should have an equivalent test created if such a user + agent (UA) is to be used to claim interoperability. In addition + if such a UA is to be used to claim interoperability, then there + must one or more additional UAs which can also pass those + equivalent tests in the same way for the purpose of + interoperability. The equivalent tests must be made publicly + available for the purposes of peer review. + + <dt>implementation <dd>a user agent which: + + <ol class=inline> + <li>implements the specification. + + <li>is available to the general public. The implementation may + be a shipping product or other publicly available version + (i.e., beta version, preview release, or “nightly build”). + Non-shipping product releases must have implemented the + feature(s) for a period of at least one month in order to + demonstrate stability. + + <li>is not experimental (i.e., a version specifically designed + to pass the test suite and is not intended for normal usage + going forward). + </ol> + </dl> + + <p>The specification will remain Candidate Recommendation for at least + six months. <h2 class="no-num" id="references">References</h2>
Received on Monday, 5 March 2012 22:48:22 UTC