8000 duplicate @namespace declarations are nonconforming http://lists.w3.o… · w3c/csswg-drafts@c32c9ae · GitHub
Skip to content

Commit c32c9ae

Browse files
committed
1 parent 8ed1520 commit c32c9ae

2 files changed

Lines changed: 104 additions & 73 deletions

File tree

css3-namespace/Overview.html

Lines changed: 95 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,25 @@
55

66
<title>CSS Namespaces Module</title>
77
<link href="../default.css" rel=stylesheet type="text/css">
8-
<link href="http://www.w3.org/StyleSheets/TR/W3C-ED" rel=stylesheet
8+
<link href="http://www.w3.org/StyleSheets/TR/W3C-CR" rel=stylesheet
99
type="text/css">
1010

1111
<body>
1212
<div class=head> <!--begin-logo-->
1313
<p><a href="http://www.w3.org/"><img alt=W3C height=48
14-
src="http://www.w3.org/Icons/w3c_home" width=72></a> <!--end-logo--></p>
14+
src="http://www.w3.org/Icons/w3c_home" width=72></a> <!--end-logo-->
1515

16-
<h1 id=css-namespaces>CSS Namespaces Module</h1>
16+
<h1>CSS Namespaces Module</h1>
1717

18-
<h2 class="no-num no-toc" id=longstatus>Editor's Draft 24 May 2008</h2>
18+
<h2 class="no-num no-toc" id=longstatus-date>W3C Candidate Recommendation
19+
14 April 2009</h2>
1920

2021
<dl>
21-
<dt>This version:</dt>
22-
<!-- <dd><a href="http://www.w3.org/TR/2008/CR-css3-namespace-20080524/">http://www.w3.org/TR/2008/CR-css3-namespace-20080524/</a></dd> -->
22+
<dt>This version:
2323

2424
<dd><a
25-
href="http://dev.w3.org/csswg/css3-namespace/">http://dev.w3.org/csswg/css3-namespace/</a>
26-
25+
href="http://www.w3.org/TR/2009/CR-css3-namespace-20090414/">http://www.w3.org/TR/2009/CR-css3-namespace-20090414/</a></dd>
26+
<!-- <dd><a href="http://dev.w3.org/csswg/css3-namespace/">http://dev.w3.org/csswg/css3-namespace/</a> -->
2727

2828
<dt>Latest version:
2929

@@ -51,7 +51,7 @@ <h2 class="no-num no-toc" id=longstatus>Editor's Draft 24 May 2008</h2>
5151
<!--begin-copyright-->
5252
<p class=copyright><a
5353
href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright"
54-
rel=license>Copyright</a> &copy; 2008 <a
54+
rel=license>Copyright</a> &copy; 2009 <a
5555
href="http://www.w3.org/"><acronym title="World Wide Web
5656
Consortium">W3C</acronym></a><sup>&reg;</sup> (<a
5757
href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute
@@ -80,30 +80,38 @@ <h2 class="no-num no-toc" id=abstract>Abstract</h2>
8080
<h2 class="no-num no-toc" id=status>Status of this document</h2>
8181
<!--begin-status-->
8282

83-
<p>This is a public copy of the editors' draft. It is provided for
84-
discussion only and may change at any moment. Its publication here does
85-
not imply endorsement of its contents by W3C. Don't cite this document
86-
other than as work in progress.
83+
<p><em>This section describes the status of this document at the time of
84+
its publication. Other documents may supersede this document. A list of
85+
current W3C publications and the latest revision of this technical report
86+
can be found in the <a href="http://www.w3.org/TR/">W3C technical reports
87+
index at http://www.w3.org/TR/.</a></em>
8788

88-
<p>The (<a
89+
<p>This document was produced by the <a href="/Style/CSS/members">CSS
90+
Working Group</a> as a <a href="/TR/#CR">Candidate Recommendation.</a>
91+
92+
<p>A Candidate Recommendation is a document that has been widely reviewed
93+
and ready for implementation. W3C encourages everybody to implement this
94+
specification and return comments to the (<a
8995
href="http://lists.w3.org/Archives/Public/www-style/">archived</a>) public
9096
mailing list <a href="mailto:www-style@w3.org">www-style@w3.org</a> (see
91-
<a href="http://www.w3.org/Mail/Request">instructions</a>) is preferred
92-
for discussion of this specification. When sending e-mail, please put the
93-
text &#8220;css3-namespace&#8221; in the subject, preferably like this:
94-
&#8220;[<!---->css3-namespace<!---->] <em>&hellip;summary of
95-
comment&hellip;</em>&#8221;
97+
<a href="http://www.w3.org/Mail/Request">instructions</a>). When sending
98+
e-mail, please put the text &#8220;css3-namespace&#8221; in the subject,
99+
preferably like this: &#8220;[<!---->css3-namespace<!---->]
100+
<em>&hellip;summary of comment&hellip;</em>&#8221;
96101

97-
<p>This document was produced by the <a href="/Style/CSS/members">CSS
98-
Working Group</a> (part of the <a href="/Style/">Style Activity</a>).
102+
<p>Publication as a Candidate Recommendation does not imply endorsement by
103+
the W3C Membership. This is a draft document and may be updated, replaced
104+
or obsoleted by other documents at any time. It is inappropriate to cite
105+
this document as other than work in progress.
99106

100107
<p>This document was produced by a group operating under the <a
101-
href="/Consortium/Patent-Policy-20040205/">5 February 2004 W3C Patent
102-
Policy</a>. W3C maintains a <a href="/2004/01/pp-impl/32061/status"
103-
rel=disclosure>public list of any patent disclosures</a> made in
104-
connection wit 7DDE h the deliverables of the group; that page also includes
105-
instructions for disclosing a patent. An individual who has actual
106-
knowledge of a patent which the individual believes contains <a
108+
href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February
109+
2004 W3C Patent Policy</a>. W3C maintains a <a
110+
href="/2004/01/pp-impl/32061/status" rel=disclosure>public list of any
111+
patent disclosures</a> made in connection with the deliverables of the
112+
group; that page also includes instructions for disclosing a patent. An
113+
individual who has actual knowledge of a patent which the individual
114+
believes contains <a
107115
href="/Consortium/Patent-Policy-20040205/#def-essential">Essential
108116
Claim(s)</a> must disclose the information in accordance with <a
109117
href="/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of the
@@ -131,7 +139,7 @@ <h2 class="no-num no-toc" id=status>Status of this document</h2>
131139
there must one or more additional UAs which can also pass those
132140
equivalent tests in the same way for the purpose of interoperability.
133141
The equivalent tests must be made publicly available for the purposes
134-
of peer review.</p>
142+
of peer review.
135143

136144
<dt>implementation
137145

@@ -156,10 +164,10 @@ <h2 class="no-num no-toc" id=status>Status of this document</h2>
156164
<p>A minimum of another three months of the CR period must elapse. That
157165
is, this specification will not exit CR before 23 August 2008. When the
158166
specification exits CR, an implementation report will be published. At
159-
this point, no such report exists.</p>
167+
this point, no such report exists.
160168

161169
<li>
162-
<p>The specified technology must not be harmful for accessibility.</p>
170+
<p>The specified technology must not be harmful for accessibility.
163171
</ol>
164172

165173
<p>A CSS Namespace <a href="http://www.w3.org/Style/CSS/Test/">Test
@@ -175,14 +183,14 @@ <h2 class="no-num no-toc" id=contents>Table of contents</h2>
175183
<!--begin-toc-->
176184

177185
<ul class=toc>
178-
<li><a href="#intro"><span class=secno>1. </span>Introduction</a>
186+
<li><a href="#intro"><span class=secno>1 </span>Introduction</a>
179187

180-
<li><a href="#conformance"><span class=secno>2. </span>Conformance</a>
188+
<li><a href="#conformance"><span class=secno>2 </span>Conformance</a>
181189
<ul class=toc>
182190
<li><a href="#terminology"><span class=secno>2.1 </span>Terminology</a>
183191
</ul>
184192

185-
<li><a href="#declaration"><span class=secno>3. </span>Declaring
193+
<li><a href="#declaration"><span class=secno>3 </span>Declaring
186194
namespaces: the <code>@namespace</code> rule</a>
187195
<ul class=toc>
188196
<li><a href="#syntax"><span class=secno>3.1 </span>Syntax</a>
@@ -193,7 +201,7 @@ <h2 class="no-num no-toc" id=contents>Table of contents</h2>
193201
Prefixes</a>
194202
</ul>
195203

196-
<li><a href="#css-qnames"><span class=secno>4. </span>CSS Qualified
204+
<li><a href="#css-qnames"><span class=secno>4 </span>CSS Qualified
197205
Names</a>
198206

199207
<li class=no-num><a href="#acknowledgments">Acknowledgments</a>
@@ -210,7 +218,7 @@ <h2 class="no-num no-toc" id=contents>Table of contents</h2>
210218
<!--end-toc-->
211219

212220
<div>
213-
<h2 id=intro><span class=secno>1. </span>Introduction</h2>
221+
<h2 id=intro><span class=secno>1 </span>Introduction</h2>
214222

215223
<p><em>This section is non-normative.</em></p>
216224

@@ -222,7 +230,7 @@ <h2 id=intro><span class=secno>1. </span>Introduction</h2>
222230
or what they mean: that depends on their context and is defined by a host
223231
language, such as Selectors (<a href="#SELECT"
224232
rel=biblioentry>[SELECT]<!--{{SELECT}}--></a>), that references the
225-
syntax defined in the CSS Namespaces module.</p>
233+
syntax defined in the CSS Namespaces module.
226234

227235
<p>Note that a CSS client that does not support this module will (if it
228236
properly conforms to <a
@@ -235,17 +243,17 @@ <h2 id=intro><span class=secno>1. </span>Introduction</h2>
235243
</div>
236244

237245
<div>
238-
<h2 id=conformance><span class=secno>2. </span>Conformance</h2>
246+
<h2 id=conformance><span class=secno>2 </span>Conformance</h2>
239247

240248
<p>A document or implementation cannot conform to CSS Namespaces alone,
241249
but can claim conformance to CSS Namespaces if it satisfies the
242250
conformance requirements in this specification when implementing CSS or
243251
another host language that normatively references this specification.</p>
244252

245-
<p>Conformance to CSS Namespaces is defined for two classes:</p>
253+
<p>Conformance to CSS Namespaces is defined for two classes:
246254

247255
<dl>
248-
<dt><dfn id=style>style sheet</dfn>
256+
<dt><dfn id=style-sheet>style sheet</dfn>
249257

250258
<dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#style-sheet">CSS
251259
style sheet</a> (or a complete unit of another host language that
@@ -270,14 +278,14 @@ <h2 id=conformance><span class=secno>2. </span>Conformance</h2>
270278

271279
<p>Examples in this specification are introduced with the words "for
272280
example" or are set apart from the normative text with
273-
<code>class="example"</code>, like this:</p>
281+
<code>class="example"</code>, like this:
274282

275283
<div class=example>
276284
<p>This is an example of an informative example.</p>
277285
</div>
278286

279287
<p>Informative notes begin with the word "Note" and are set apart from the
280-
normative text with <code>class="note"</code>, like this:</p>
288+
normative text with <code>class="note"</code>, like this:
281289

282290
<p class=note>Note, this is an informative note.</p>
283291

@@ -306,7 +314,7 @@ <h3 id=terminology><span class=secno>2.1 </span>Terminology</h3>
306314
</div>
307315

308316
<div>
309-
<h2 id=declaration><span class=secno>3. </span>Declaring namespaces: the
317+
<h2 id=declaration><span class=secno>3 </span>Declaring namespaces: the
310318
<code>@namespace</code> rule</h2>
311319

312320
<p>The <code>@namespace</code> <a
@@ -407,16 +415,20 @@ <h3 id=scope><span class=secno>3.2 </span>Scope</h3>
407415

408416
<h3 id=prefixes><span class=secno>3.3 </span>Declaring Prefixes</h3>
409417

410-
<p>A <dfn id=namespace>namespace prefix</dfn>, once declared, represents
411-
the namespace for which it was declared and can be used to indicate the
412-
namespace of a namespace-qualified name. Namespace prefixes are, <a
413-
href="http://www.w3.org/TR/CSS21/syndata.html#counter">like CSS counter
414-
names</a>, case-sensitive.</p>
415-
418+
<p>A <dfn id=namespace-prefix>namespace prefix</dfn>, once declared,
419+
represents the namespace for which it was declared and can be used to
420+
indicate the namespace of a namespace-qualified name. Namespace prefixes
421+
are, <a href="http://www.w3.org/TR/CSS21/syndata.html#counter">like CSS
422+
counter names</a>, case-sensitive.</p>
423+
<!-- They do not, however, distinguish between equivalent
424+
canonical Unicode representations. Essentially, an <code>@namespace</code>
425+
declaration declares all prefixes that map to the same NFC representation as
426+
the given prefix to the same namespace name. (See <a href="#UNICODE" rel="biblioentry">[UNICODE]<!--{{!UNICODE}}-->
427+
for the definition of NFC normalization.) -->
416428
<p>If in the namespace declaration the namespace prefix is omitted, then
417429
the namespace so declared is the default namespace. The <dfn
418-
id=default>default namespace</dfn> may apply to names that have no
419-
explicit namespace prefix: modules that employ namespace prefixes must
430+
id=default-namespace>default namespace</dfn> may apply to names that have
431+
no explicit namespace prefix: modules that employ namespace prefixes must
420432
define in which contexts the default namespace applies. For example,
421433
following <a href="#XML-NAMES"
422434
rel=biblioentry>[XML-NAMES]<!--{{!XML-NAMES}}--></a>, in Selectors <a
@@ -435,24 +447,25 @@ <h3 id=prefixes><span class=secno>3.3 </span>Declaring Prefixes</h3>
435447
rel=biblioentry>[SELECT]<!--{{SELECT}}--></a> for details.</p>
436448

437449
<p>If a namespace prefix or default namespace is declared more than once
438-
only the last declaration shall be used.</p>
450+
only the last declaration shall be used. Declaring a namespace prefix or
451+
default namespace more than once is nonconforming.</p>
439452
</div>
440453

441454
<div>
442-
<h2 id=css-qnames><span class=secno>4. </span>CSS Qualified Names</h2>
443-
444-
<p>A <dfn id=css-qualified>CSS qualified name</dfn> is a name explicitly
445-
located within (associated with) a namespace. To form a qualified name in
446-
CSS syntax, a namespace prefix that has been declared within scope is
447-
prepended to a local name (such as an element or attribute name),
448-
separated by a "vertical bar" (<code>|</code>, U+007C). The prefix,
449-
representing the namespace for which it has been declared, indicates the
450-
namespace of the local name. The prefix of a qualified name may be
451-
omitted to indicate that the name belongs to no namespace, i.e. that the
452-
namespace name part of the expanded name has no value. Some contexts (as
453-
defined by the host language) may allow the use of an asterisk
454-
(<code>*</code>, U+002A) as a wildcard prefix to indicate a name in any
455-
namespace, including no namespace.</p>
455+
<h2 id=css-qnames><span class=secno>4 </span>CSS Qualified Names</h2>
456+
457+
<p>A <dfn id=css-qualified-name>CSS qualified name</dfn> is a name
458+
explicitly located within (associated with) a namespace. To form a
459+
qualified name in CSS syntax, a namespace prefix that has been declared
460+
within scope is prepended to a local name (such as an element or
461+
attribute name), separated by a "vertical bar" (<code>|</code>, U+007C).
462+
The prefix, representing the namespace for which it has been declared,
463+
indicates the namespace of the local name. The prefix of a qualified name
464+
may be omitted to indicate that the name belongs to no namespace, i.e.
465+
that the namespace name part of the expanded name has no value. Some
466+
contexts (as defined by the host language) may allow the use of an
467+
asterisk (<code>*</code>, U+002A) as a wildcard prefix to indicate a name
468+
in any namespace, including no namespace.</p>
456469

457470
<div class=example>
458471
<p>Given the namespace declarations:</p>
@@ -559,9 +572,20 @@ <h3 class=no-num id=normative-references>Normative references</h3>
559572
</dd>
560573
<!---->
561574

575+
<dt id=UNICODE>[UNICODE]
576+
577+
<dd>The Unicode Consortium. <a
578+
href="http://www.unicode.org/unicode/standard/versions/enumeratedversions.html"><cite>The
579+
Unicode Standard.</cite></a> 2003. Defined by: The Unicode Standard,
580+
Version 4.0 (Boston, MA, Addison-Wesley, ISBN 0-321-18578-1), as updated
581+
from time to time by the publication of new versions URL: <a
582+
href="http://www.unicode.org/unicode/standard/versions/enumeratedversions.html">http://www.unicode.org/unicode/standard/versions/enumeratedversions.html</a>
583+
</dd>
584+
<!---->
585+
562586
<dt id=XML-NAMES>[XML-NAMES]
563587

564-
<dd>Tim Bray; et al. <a
588+
<dd>Richard Tobin; et al. <a
565589
href="http://www.w3.org/TR/2006/REC-xml-names-20060816"><cite>Namespaces
566590
in XML 1.0 (Second Edition).</cite></a> 16 August 2006. W3C
567591
Recommendation. URL: <a
@@ -581,10 +605,11 @@ <h3 class=no-num id=informative-references>Informative references</h3>
581605

582606
<dt id=SELECT>[SELECT]
583607

584-
<dd>Daniel Glazman; Tantek &#199;elik; Ian Hickson. <a
585-
href="http://www.w3.org/TR/2005/WD-css3-selectors-20051215"><cite>Selectors.</cite></a>
586-
15 December 2005. W3C Working Draft. (Work in progress.) URL: <a
587-
href="http://www.w3.org/TR/2005/WD-css3-selectors-20051215">http://www.w3.org/TR/2005/WD-css3-selectors-20051215</a>
608+
<dd>Daniel Glazman; et al. <a
609+
href="http://www.w3.org/TR/2009/WD-css3-selectors-20090310"><cite>Selectors
610+
Level 3.</cite></a> 10 March 2009. W3C Working Draft. (Work in progress.)
611+
URL: <a
612+
href="http://www.w3.org/TR/2009/WD-css3-selectors-20090310">http://www.w3.org/TR/2009/WD-css3-selectors-20090310</a>
588613
</dd>
589614
<!---->
590615
</dl>

css3-namespace/Overview.src.html

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ <h1>CSS Namespaces Module</h1>
1717
<h2 class="no-num no-toc">[LONGSTATUS] [DATE]</h2>
1818
<dl>
1919
<dt>This version:</dt>
20-
<!-- <dd><a href="http://www.w3.org/TR/[YEAR]/CR-css3-namespace-[CDATE]/">http://www.w3.org/TR/[YEAR]/CR-css3-namespace-[CDATE]/</a></dd> -->
21-
<dd><a href="http://dev.w3.org/csswg/css3-namespace/">http://dev.w3.org/csswg/css3-namespace/</a>
20+
<dd><a href="http://www.w3.org/TR/[YEAR]/CR-css3-namespace-[CDATE]/">http://www.w3.org/TR/[YEAR]/CR-css3-namespace-[CDATE]/</a></dd>
21+
<!-- <dd><a href="http://dev.w3.org/csswg/css3-namespace/">http://dev.w3.org/csswg/css3-namespace/</a> -->
2222
<dt>Latest version:</dt>
2323
<dd><a href="http://www.w3.org/TR/css3-namespace/">http://www.w3.org/TR/css3-namespace/</a></dd>
2424
<dt>Previous version:</dt>
@@ -292,6 +292,11 @@ <h3 id="prefixes">Declaring Prefixes</h3>
292292
namespace-qualified name. Namespace prefixes are,
293293
<a href="http://www.w3.org/TR/CSS21/syndata.html#counter">like CSS counter
294294
names</a>, case-sensitive.</p>
295+
<!-- They do not, however, distinguish between equivalent
296+
canonical Unicode representations. Essentially, an <code>@namespace</code>
297+
declaration declares all prefixes that map to the same NFC representation as
298+
the given prefix to the same namespace name. (See [[!UNICODE]] for the definition
299+
of NFC normalization.) -->
295300

296301
<p>If in the namespace declaration the namespace prefix is omitted, then the
297302
namespace so declared is the default namespace. The <dfn>default
@@ -311,7 +316,8 @@ <h3 id="prefixes">Declaring Prefixes</h3>
311316
down-level clients</a> in the Selectors module [[SELECT]] for details.</p>
312317

313318
<p>If a namespace prefix or default namespace is declared more than once only
314-
the last declaration shall be used.</p>
319+
the last declaration shall be used. Declaring a namespace prefix or default
320+
namespace more than once is nonconforming.</p>
315321
</div>
316322

317323
<div>

0 commit comments

Comments
 (0)
<