1 |
|
2 |
|
3 |
|
4 |
Network Working Group F. Yergeau |
5 |
Internet Draft G. Nicol |
6 |
<draft-ietf-html-i18n-03.txt> G. Adams |
7 |
Expires 18 August 1996 M. Duerst |
8 |
13 February 1996 |
9 |
|
10 |
|
11 |
Internationalization of the Hypertext Markup Language |
12 |
|
13 |
|
14 |
Status of this Memo |
15 |
|
16 |
This document is an Internet-Draft. Internet-Drafts are working doc- |
17 |
uments of the Internet Engineering Task Force (IETF), its areas, and |
18 |
its working groups. Note that other groups may also distribute work- |
19 |
ing documents as Internet-Drafts. |
20 |
|
21 |
Internet-Drafts are draft documents valid for a maximum of six |
22 |
months. Internet-Drafts may be updated, replaced, or obsoleted by |
23 |
other documents at any time. It is not appropriate to use Internet- |
24 |
Drafts as reference material or to cite them other than as a "working |
25 |
draft" or "work in progress". |
26 |
|
27 |
To learn the current status of any Internet-Draft, please check the |
28 |
1id-abstracts.txt listing contained in the Internet-Drafts Shadow |
29 |
Directories on ds.internic.net (US East Coast), nic.nordu.net |
30 |
(Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific |
31 |
Rim). |
32 |
|
33 |
Distribution of this document is unlimited. Please send comments to |
34 |
the HTML working group (HTML-WG) of the Internet Engineering Task |
35 |
Force (IETF) at <html-wg@w3.org>. Subscription address is <html-wg- |
36 |
request@w3.org>. Discussions of the group are archived at URL: |
37 |
http://www.acl.lanl.gov/HTML_WG/archives.html. |
38 |
|
39 |
|
40 |
Abstract |
41 |
|
42 |
The Hypertext Markup Language (HTML) is a simple markup language used |
43 |
to create hypertext documents that are platform independent. Ini- |
44 |
tially, the application of HTML on the World Wide Web was seriously |
45 |
restricted by its reliance on the ISO-8859-1 coded character set, |
46 |
which is appropriate only for Western European languages. Despite |
47 |
this restriction, HTML has been widely used with other languages, |
48 |
using other coded character sets or character encodings, at the |
49 |
expense of interoperability. |
50 |
|
51 |
This document is meant to address the issue of the |
52 |
|
53 |
|
54 |
|
55 |
Expires 18 August 1996 [Page 1] |
56 |
|
57 |
Internet Draft HTML internationalization 13 February 1996 |
58 |
|
59 |
|
60 |
internationalization of HTML by extending the specification of HTML |
61 |
and giving additional recommendations for proper internationalisation |
62 |
support. A foremost consideration is to make sure that HTML remains |
63 |
a valid application of SGML, while enabling its use in all languages |
64 |
of the world. |
65 |
|
66 |
|
67 |
Table of contents |
68 |
|
69 |
1. Introduction .................................................. 2 |
70 |
1.1. Scope ...................................................... 3 |
71 |
1.2. Conformance ................................................ 3 |
72 |
2. The document character set ..................................... 4 |
73 |
2.1. Reference processing model ................................. 4 |
74 |
2.2. The document character set ................................. 6 |
75 |
2.3. Undisplayable characters ................................... 7 |
76 |
3. The LANG attribute.............................................. 7 |
77 |
4. Additional entities, attributes and elements ................... 9 |
78 |
4.1. Full Latin-1 entity set .................................... 9 |
79 |
4.2. Markup for language-dependent presentation ................. 9 |
80 |
5. Forms ..........................................................11 |
81 |
5.1. DTD additions ..............................................11 |
82 |
5.2. Form submission ............................................12 |
83 |
6. Miscellaneous ..................................................13 |
84 |
7. HTML public text ...............................................15 |
85 |
7.1. HTML DTD ...................................................15 |
86 |
7.2. SGML declaration for HTML ..................................30 |
87 |
7.3. ISO Latin 1 character entity set ...........................31 |
88 |
Bibliography ......................................................34 |
89 |
Authors' Addresses ................................................36 |
90 |
|
91 |
|
92 |
1. Introduction |
93 |
|
94 |
The Hypertext Markup Language (HTML) is a simple markup language used |
95 |
to create hypertext documents that are platform independent. Ini- |
96 |
tially, the application of HTML on the World Wide Web was seriously |
97 |
restricted by its reliance on the ISO-8859-1 coded character set, |
98 |
which is appropriate only for Western European languages. Despite |
99 |
this restriction, HTML has been widely used with other languages, |
100 |
using other coded character sets or character encodings, through var- |
101 |
ious ad hoc extensions to the language [TAKADA]. |
102 |
|
103 |
This document is meant to address the issue of the internationaliza- |
104 |
tion of HTML by extending the specification of HTML and giving addi- |
105 |
tional recommendations for proper internationalisation support. It |
106 |
is in good part based on a paper by one of the authors on multilin- |
107 |
gualism on the WWW [NICOL]. A foremost consideration is to make sure |
108 |
|
109 |
|
110 |
|
111 |
Expires 18 August 1996 [Page 2] |
112 |
|
113 |
Internet Draft HTML internationalization 13 February 1996 |
114 |
|
115 |
|
116 |
that HTML remains a valid application of SGML, while enabling its use |
117 |
in all languages of the world. |
118 |
|
119 |
The specific issues addressed are the SGML document character set to |
120 |
be used for HTML, the proper treatment of the charset parameter asso- |
121 |
ciated with the "text/html" content type and the specification of |
122 |
language tags and additional entities. |
123 |
|
124 |
|
125 |
1.1 Scope |
126 |
|
127 |
HTML has been in use by the World-Wide Web (WWW) global information |
128 |
initiative since 1990. This specification extends the capabilities |
129 |
of HTML (RFC 1866), primarily by removing the restriction to the |
130 |
ISO-8859-1 coded character set [ISO-8859-1]. |
131 |
|
132 |
HTML is an application of ISO Standard 8879:1986, Information Pro- |
133 |
cessing Text and Office Systems -- Standard Generalized Markup Lan- |
134 |
guage (SGML) [ISO-8879]. The HTML Document Type Definition (DTD) is a |
135 |
formal definition of the HTML syntax in terms of SGML. This specifi- |
136 |
cation amends the DTD of HTML in order to make it applicable to docu- |
137 |
ments encompassing a character repertoire much larger than that of |
138 |
ISO-8859-1, while still remaining SGML conformant. |
139 |
|
140 |
|
141 |
1.2 Conformance |
142 |
|
143 |
This specification changes slightly the conformance requirements of |
144 |
HTML documents and HTML user agents. |
145 |
|
146 |
1.2.1 Documents |
147 |
|
148 |
All HTML 2.0 conforming documents remain conforming with this speci- |
149 |
fication. However, the extensions introduced here make valid cer- |
150 |
tains documents that would not be HTML 2.0 conforming, in particular |
151 |
those containing characters or character references outside of the |
152 |
repertoire of ISO 8859-1, and those containing markup introduced |
153 |
herein. |
154 |
|
155 |
1.2.2. User agents |
156 |
|
157 |
In addition to the requirements of RFC 1866, the following require- |
158 |
ments are placed on HTML user agents. |
159 |
|
160 |
To ensure interoperability and proper support for at least |
161 |
ISO-8859-1 in an environment where character encoding schemes |
162 |
other than ISO-8859-1 are present, user agents must correctly |
163 |
interpret the charset parameter accompanying an HTML document |
164 |
|
165 |
|
166 |
|
167 |
Expires 18 August 1996 [Page 3] |
168 |
|
169 |
Internet Draft HTML internationalization 13 February 1996 |
170 |
|
171 |
|
172 |
received from the network. |
173 |
|
174 |
Furthermore, conforming user-agents are required to at least parse |
175 |
correctly all numeric character references within the range of the |
176 |
Basic Multilingual Plane (BMP) of ISO 10646-1 [ISO-10646]. |
177 |
|
178 |
2. The document character set |
179 |
|
180 |
2.1. Reference processing model |
181 |
|
182 |
This overview explains a reference processing model used for HTML, |
183 |
and in particular the SGML concept of a document character set. An |
184 |
actual implementation may widely differ in its internal workings from |
185 |
the model given below, but should behave as described to an outside |
186 |
observer. |
187 |
|
188 |
Because there are various widely differing encodings of text, SGML |
189 |
does not directly address the question of how characters are encoded |
190 |
e.g. in a file. SGML views the characters as a single set (called a |
191 |
"character repertoire"), and a "code set" that assigns an integer |
192 |
number (known as "character number") to each character in the reper- |
193 |
toire. The document character set declaration defines what each of |
194 |
the character numbers represents [GOLD90, p. 451]. In most cases, an |
195 |
SGML DTD and all documents that refer to it have a single document |
196 |
character set, and all markup and data characters are part of this |
197 |
set. |
198 |
|
199 |
HTML, as an application of SGML, does not directly address the ques- |
200 |
tion of how characters are encoded as octets in external representa- |
201 |
tions such as files. This is deferred to mechanisms external to HTML, |
202 |
such as MIME as used by the HTTP protocol or by electronic mail. |
203 |
|
204 |
For the HTTP protocol [HTTP-1.0], the way characters are encoded is |
205 |
defined by the "charset" parameter [1] of the "Content-Type" field of |
206 |
the header of an HTTP response. For example, to indicate that the |
207 |
transmitted document is encoded in the "JIS" encoding of Japanese |
208 |
[RFC1468], the header will contain the following line: |
209 |
|
210 |
Content-Type: text/html; charset=ISO-2022-JP |
211 |
|
212 |
_________________________ |
213 |
[1] The term "charset" in MIME is used to designate a |
214 |
character encoding, rather than a coded character set |
215 |
as the term may suggest. A character encoding is a |
216 |
mapping (possibly many-to-one) of a sequence of octets |
217 |
to a sequence of characters taken from one or more |
218 |
character repertoires. |
219 |
|
220 |
|
221 |
|
222 |
|
223 |
Expires 18 August 1996 [Page 4] |
224 |
|
225 |
Internet Draft HTML internationalization 13 February 1996 |
226 |
|
227 |
|
228 |
The default charset parameter in the case of the HTTP protocol is |
229 |
ISO-8859-1 (the so-called "Latin-1" for Western European characters). |
230 |
The HTTP protocol also defines a mechanism for the client to specify |
231 |
the character encodings it can accept. Clients and servers are |
232 |
strongly requested to use these mechanisms to assure correct trans- |
233 |
mission and interpretation of any document. Provisions that can be |
234 |
taken to help correct interpretation, even in cases where a server or |
235 |
client do not yet use these mechanisms, are described in section 6. |
236 |
|
237 |
Similarly, if HTML documents are transferred by electronic mail, the |
238 |
character encoding is defined by the "charset" parameter of the "Con- |
239 |
tent-Type" MIME header line [RFC1521]. |
240 |
|
241 |
In the case any other way of transferring and storing HTML documents |
242 |
are defined or become popular, it is advised that similar provisions |
243 |
should be made to clearly identify the character encoding used and/or |
244 |
to use a single/default encoding capable of representing the widest |
245 |
range of characters used in an international context. |
246 |
|
247 |
Whatever the external character encoding actually be, the reference |
248 |
processing model translates it to a representation of the document |
249 |
character set specified in Section 2.2 before processing specific to |
250 |
SGML/HTML. The reference processing model can be depicted as fol- |
251 |
lows: |
252 |
|
253 |
[resource]->[decoder]->[entity ]->[ SGML ]->[application]->[display] |
254 |
[manager] [parser] |
255 |
^ | |
256 |
| | |
257 |
+----------+ |
258 |
|
259 |
The decoder is responsible for decoding the external representation |
260 |
of the resource to a representation using the document character set. |
261 |
The entity manager, the parser, and the application deal only with |
262 |
characters of the document character set. A display-oriented part of |
263 |
the application or the display machinery itself may again convert |
264 |
characters represented in the document character set to some other |
265 |
representation more suitable for their purpose. In any case, the |
266 |
entity manager, the parser, and the application, as far as character |
267 |
semantics are concerned, are using the HTML document character set |
268 |
only. |
269 |
|
270 |
An actual implementation may choose, or not, to translate the docu- |
271 |
ment into some encoding of the document character set as described |
272 |
above; the behaviour described by this reference processing model can |
273 |
be achieved otherwise. This subject is well out of the scope of this |
274 |
specification, however, and the reader is invited to consult the SGML |
275 |
standard [ISO-8879] or a SGML handbook [BRYAN88] [GOLD90] [VANH90] |
276 |
|
277 |
|
278 |
|
279 |
Expires 18 August 1996 [Page 5] |
280 |
|
281 |
Internet Draft HTML internationalization 13 February 1996 |
282 |
|
283 |
|
284 |
[SQ91] for further information. |
285 |
|
286 |
The most important consequence of this reference processing model is |
287 |
that numeric character references are always resolved with respect to |
288 |
the fixed document character set, and thus to the same characters, |
289 |
whatever the external encoding actually used. For an example, see |
290 |
Section 2.2. |
291 |
|
292 |
2.2. The document character set |
293 |
|
294 |
The document character set, in the SGML sense, is the Basic Multilin- |
295 |
gual Plane of ISO 10646:1993 [ISO-10646], also known as UCS-2. This |
296 |
is code-by-code identical with the Unicode standard [UNICODE]. The |
297 |
adoption of this document character set implies a change in the SGML |
298 |
declaration specified in the HTML 2.0 specification (section 9.5 of |
299 |
[RFC1866]). The change amounts to removing the two BASESET specifi- |
300 |
cations and their accompanying DESCSET declarations, replacing them |
301 |
with the following declaration: |
302 |
|
303 |
BASESET "ISO Registration Number 176//CHARSET |
304 |
ISO/IEC 10646-1:1993 UCS-2 with implementation level 3 |
305 |
//ESC 2/5 2/15 4/5" |
306 |
DESCSET 0 9 UNUSED |
307 |
9 2 9 |
308 |
11 2 UNUSED |
309 |
13 1 13 |
310 |
14 18 UNUSED |
311 |
32 95 32 |
312 |
127 1 UNUSED |
313 |
128 32 UNUSED |
314 |
160 65374 160 |
315 |
|
316 |
Making UCS-2 the document character set does not create non- |
317 |
conformance of any expression, construct or document that is conform- |
318 |
ing to HTML 2.0. It does make conforming certain constructs that are |
319 |
not admissible in HTML 2.0. One consequence is that data characters |
320 |
outside the repertoire of ISO-8859-1, but within that of UCS-2 become |
321 |
valid SGML characters. Another is that the upper limit of the range |
322 |
of numeric character references is extended from 255 to 65533 [2] ; |
323 |
thus, И is a valid reference to a "CYRILLIC CAPITAL LETTER I". |
324 |
[ERCS] is a good source of information on Unicode and SGML, although |
325 |
_________________________ |
326 |
[2] 65533 (FFFD hexadecimal) is the last valid char- |
327 |
acter in UCS-2. 65534 (FFFE hexadecimal) is unassigned |
328 |
and reserved as the byte-swapped version of ZERO WIDTH |
329 |
NON-BREAKING SPACE for byte-sex detection purposes. |
330 |
65535 (FFFF hexadecimal) is unassigned. |
331 |
|
332 |
|
333 |
|
334 |
|
335 |
Expires 18 August 1996 [Page 6] |
336 |
|
337 |
Internet Draft HTML internationalization 13 February 1996 |
338 |
|
339 |
|
340 |
its scope and technical content differ greatly from this specifica- |
341 |
tion. |
342 |
|
343 |
ISO 10646-1:1993 is the most encompassing character set currently |
344 |
existing, and there is no other character set that could take its |
345 |
place as the document character set for HTML. Also, it is expected |
346 |
that with future extensions of ISO 10646, this specification may also |
347 |
be extended. If nevertheless for a specific application there is a |
348 |
need to use characters outside this standard, this should be done by |
349 |
avoiding any conflicts with present or future versions of ISO 10646, |
350 |
i.e. by assigning these characters to a private zone. Also, it should |
351 |
be borne in mind that such a use will be highly unportable; in many |
352 |
cases, it may be better to use inline bitmaps. |
353 |
|
354 |
2.3. Undisplayable characters |
355 |
|
356 |
With the document character set being the full ISO 10646 BMP, the |
357 |
possibility that a character cannot be displayed due to lack of |
358 |
appropriate resources (fonts) cannot be avoided. Because there are |
359 |
many different things that can be done in such a case, this document |
360 |
does not prescribe any specific behaviour. Depending on the implemen- |
361 |
tation, this may also be handled by the underlaying display system |
362 |
and not the application itself. The following considerations, how- |
363 |
ever, may be of help: |
364 |
|
365 |
- A clearly visible, but unobtrusive behaviour should be preferred. |
366 |
Some documents may contain many characters that cannot be renden- |
367 |
dered, and so showing an alert for each of them is not the right |
368 |
thing to do. |
369 |
|
370 |
- In case a numeric representation of the missing character is |
371 |
given, its hexadecimal (not decimal) form is to be preferred, |
372 |
because this form is used in character set standards [ERCS]. |
373 |
|
374 |
3. The LANG attribute |
375 |
|
376 |
Language tags can be used to control rendering of a marked up docu- |
377 |
ment in various ways: character disambiguation, in cases where the |
378 |
character encoding is not sufficient to resolve to a specific glyph; |
379 |
quotation marks; hyphenation; ligatures; spacing; voice synthesis; |
380 |
etc. Independently of rendering issues, language markup is useful as |
381 |
content markup for purposes such as classification and searching. |
382 |
|
383 |
Since any text can logically be assigned a language, almost all HTML |
384 |
elements admit the LANG attribute. The DTD reflects this. It is |
385 |
also intended that any new element introduced in later versions of |
386 |
HTML will admit the LANG attribute, unless there is a good reason not |
387 |
to do so. |
388 |
|
389 |
|
390 |
|
391 |
Expires 18 August 1996 [Page 7] |
392 |
|
393 |
Internet Draft HTML internationalization 13 February 1996 |
394 |
|
395 |
|
396 |
The language attribute, LANG, takes as its value a language tag that |
397 |
identifies a natural language spoken, written, or otherwise conveyed |
398 |
by human beings for communication of information to other human |
399 |
beings. Computer languages are explicitly excluded. |
400 |
|
401 |
The syntax and registry of HTML language tags is the same as that |
402 |
defined by RFC 1766 [RFC1766]. In summary, a language tag is composed |
403 |
of one or more parts: A primary language tag and a possibly empty |
404 |
series of subtags: |
405 |
|
406 |
language-tag = primary-tag *( "-" subtag ) |
407 |
primary-tag = 1*8ALPHA |
408 |
subtag = 1*8ALPHA |
409 |
|
410 |
Whitespace is not allowed within the tag and all tags are case- |
411 |
insensitive. The namespace of language tags is administered by the |
412 |
IANA. Example tags include: |
413 |
|
414 |
en, en-US, en-cockney, i-cherokee, x-pig-latin |
415 |
|
416 |
Two-letter primary-tags are reserved for ISO 639 language abbrevia- |
417 |
tions [ISO-639], and three-letter primary-tags for the language |
418 |
abbreviations of the "Ethnologue" [ETHNO] (the latter is in addition |
419 |
to the requirements of RFC 1766). Any two-letter initial subtag is an |
420 |
ISO 3166 country code [ISO-3166]. |
421 |
|
422 |
In the context of HTML, a language tag is not to be interpreted as a |
423 |
single token, as per RFC 1766, but as a hierarchy. For example, a |
424 |
user agent that adjusts rendering according to language should con- |
425 |
sider that it has a match when a language tag in a style sheet entry |
426 |
matches the initial portion of the language tag of an element. An |
427 |
exact match should be preferred. This interpretation allows an ele- |
428 |
ment marked up as, for instance, "en-US" to trigger styles corre- |
429 |
sponding to, in order of preference, US-English ("en-US") or 'plain' |
430 |
or 'international' English ("en"). |
431 |
|
432 |
NOTE -- using the language tag as a hierarchy does not |
433 |
imply that all languages with a common prefix will be |
434 |
understood by those fluent in one or more of those lan- |
435 |
guages; it simply allows the user to request this commonal- |
436 |
ity when it is true for that user. |
437 |
|
438 |
The rendering of elements may be affected by the LANG attribute. For |
439 |
any element, the value of the LANG attribute overrides the value |
440 |
specified by the LANG attribute of any enclosing element and the |
441 |
value (if any) of the HTTP Content-Language header. If none of these |
442 |
are set, a suitable default, perhaps controlled by user preferences, |
443 |
by automatic context analysis or by the user's locale, should be used |
444 |
|
445 |
|
446 |
|
447 |
Expires 18 August 1996 [Page 8] |
448 |
|
449 |
Internet Draft HTML internationalization 13 February 1996 |
450 |
|
451 |
|
452 |
to control rendering. |
453 |
|
454 |
4. Additional entities, attributes and elements |
455 |
|
456 |
4.1. Full Latin-1 entity set |
457 |
|
458 |
According to the suggestion of section 14 of [RFC1866], the set of |
459 |
Latin-1 entities is extended to cover the whole right part of |
460 |
ISO-8859-1 (all code positions with the high-order bit set). The |
461 |
names of the entities are taken from the appendices of [SGML]. A |
462 |
list is provided in section 7.3 of this specification. |
463 |
|
464 |
4.2. Markup for language-dependent presentation |
465 |
|
466 |
For the correct presentation of text from certain languages (irre- |
467 |
spective of formatting issues), some support in the form of addi- |
468 |
tional entities and elements is needed. Markup is needed in some |
469 |
cases to force or block joining behavior in contexts in which joining |
470 |
would occur but should not or would not occur but should. |
471 |
|
472 |
Many languages are written in horizontal lines from left to right, |
473 |
while others are written from right to left. When both writing |
474 |
directions are present, one talks of bidirectional text (BIDI for |
475 |
short). BIDI text requires markup in special circumstances where |
476 |
ambiguities as to the directionality of some characters have to be |
477 |
resolved. This markup affects the ability to render BIDI text in a |
478 |
semantically legible fashion. That is, without this special BIDI |
479 |
markup, cases arise which would prevent *any* rendering whatsoever |
480 |
that reflected the basic meaning of the text. Plain text may contain |
481 |
this markup (joining or BIDI) in the form of special-purpose charac- |
482 |
ters; in HTML, these are replaced by SGML markup as follows: |
483 |
|
484 |
First, a generic container is needed to carry the LANG and DIR (see |
485 |
below) attributes in cases where no other element is appropriate; the |
486 |
SPAN element is introduced for that purpose. |
487 |
|
488 |
A set of named character entities is added that allows partial sup- |
489 |
port of the Unicode bidirectional algorithm [UNICODE], plus some help |
490 |
with languages requiring contextual analysis for rendering: |
491 |
|
492 |
<!ENTITY zwnj CDATA "‌"--=zero width non-joiner--> |
493 |
<!ENTITY zwj CDATA "‍"--=zero width joiner--> |
494 |
<!ENTITY lrm CDATA "‎"--=left-to-right mark--> |
495 |
<!ENTITY rlm CDATA "‏"--=right-to-left mark--> |
496 |
|
497 |
Next, an attribute called DIR is introduced, restricted to the values |
498 |
LTR (left-to-right) and RTL (right-to-left) and admitted by most ele- |
499 |
ments. On block-type elements, the DIR attribute indicates the base |
500 |
|
501 |
|
502 |
|
503 |
Expires 18 August 1996 [Page 9] |
504 |
|
505 |
Internet Draft HTML internationalization 13 February 1996 |
506 |
|
507 |
|
508 |
directionality of the text in the block; if omitted it is inherited |
509 |
from the parent element. On inline elements, it makes the element |
510 |
start a new embedding level (to be explained below); if omitted the |
511 |
inline element does not start a new embedding level. |
512 |
|
513 |
Lastly, a new element called BDO (BIDI override) is introduced, which |
514 |
requires the DIR attribute to specify whether the override is left- |
515 |
to-right or right-to-left. Its effect is to force the directionality |
516 |
of all characters within it to the value of DIR, irrespective of |
517 |
their intrinsic directional properties. |
518 |
|
519 |
The zero-width joiner and non-joiner (‍ and ‌) are used to |
520 |
control joining behaviour. For example, ARABIC LETTER HEH is used in |
521 |
isolation to abbreviate "Hijri" (the Islamic calendrical system); |
522 |
however, the initial form of the letter is desired, because the iso- |
523 |
lated form of HEH looks like the digit five as employed in Arabic |
524 |
script. This is obtained by following the HEH with a zero-width |
525 |
joiner whose only effect is to provide context. In Persian texts, |
526 |
there are cases where a letter that normally would join a subsequent |
527 |
letter in a cursive connection does not. Here a zero-width non- |
528 |
joiner is used. |
529 |
|
530 |
The left-to-right and right-to-left marks (‎ and ‏) are used |
531 |
to disambiguate directionality of neutral characters, e.g., if you |
532 |
have a double quote sitting between an Arabic and a Latin letter, |
533 |
then which direction does the quote resolve to? These characters are |
534 |
like zero width spaces which have a directional property (but no |
535 |
word/line break property). |
536 |
|
537 |
Nested embeddings of contra-directional text runs is also a case |
538 |
where the implicit directionality of characters is not sufficient, |
539 |
requiring markup. A common need for the embedding controls is to han- |
540 |
dle text that has been pasted from one bidi context to another, and |
541 |
the possibility of multiply embedded pastings. Following is an exam- |
542 |
ple of a case where embedding is needed, showing its effect: |
543 |
|
544 |
Given the following latin (upper case) and arabic (lower |
545 |
case) letters in backing store with the specified embed- |
546 |
dings: |
547 |
|
548 |
<SPAN DIR=LTR> AB <SPAN DIR=RTL> xy <SPAN DIR=LTR> CD |
549 |
</SPAN> zw </SPAN> EF </SPAN> |
550 |
|
551 |
One gets the following rendering (with [] showing the |
552 |
directional transitions): |
553 |
|
554 |
[ AB [ wz [ CD ] yx ] EF ] |
555 |
|
556 |
|
557 |
|
558 |
|
559 |
Expires 18 August 1996 [Page 10] |
560 |
|
561 |
Internet Draft HTML internationalization 13 February 1996 |
562 |
|
563 |
|
564 |
On the other hand, without this markup and with a base |
565 |
direction of LTR one gets the following rendering: |
566 |
|
567 |
[ AB [ yx ] CD [ wz ] EF ] |
568 |
|
569 |
Notice that yx is on the left and wz on the right unlike |
570 |
the above case where the embedding levels are used. With- |
571 |
out the embedding markup one has at most two levels: a base |
572 |
directional level and a single counterflow directional |
573 |
level. |
574 |
|
575 |
The directional override feature (<BDO>)is needed to deal with |
576 |
unusual pieces of text in which directionality cannot be resolved |
577 |
from context in an unambiguous fashion. For example, it can be used |
578 |
to force left-to-right (or right-to-left) display of part numbers |
579 |
composed of Latin letters, digits and Hebrew letters. |
580 |
|
581 |
A few other additional elements are important to have for proper lan- |
582 |
guage-dependent rendering. |
583 |
|
584 |
Short quotations, and in particular the quotation marks surrounding |
585 |
them, are typically rendered differently in different languages and |
586 |
on platforms with different graphic capabilities: "a quotation in |
587 |
English", `another, slightly better one', ,,a quotation in German'', |
588 |
<< a quotation in French >>. The <Q> element is introduced for that |
589 |
purpose. |
590 |
|
591 |
Many languages require superscripts for proper rendering: as an exam- |
592 |
ple, the French "Mlle Dupont" should have "lle" in superscript. The |
593 |
<SUP> element, and its sibling <SUB>, are introduced to allow proper |
594 |
markup of such text. <SUP> and <SUB> contents are restricted to |
595 |
PCDATA to avoid nesting problems. |
596 |
|
597 |
Finally, in many languages text justification is much more important |
598 |
than it is in Western languages, and justifies markup. The ALIGN |
599 |
attribute, admitting values of LEFT, RIGHT, CENTER and JUSTIFY, is |
600 |
added to a selection of elements where it makes sense (block-like). |
601 |
|
602 |
5. Forms |
603 |
|
604 |
|
605 |
5.1. DTD additions |
606 |
|
607 |
It is natural to expect input in any language in forms, as they pro- |
608 |
vide one of the only ways of obtaining user input. While this is pri- |
609 |
marily a UI issue, there are some things that should be specified at |
610 |
the HTML level to guide behavior and promote interoperability. |
611 |
|
612 |
|
613 |
|
614 |
|
615 |
Expires 18 August 1996 [Page 11] |
616 |
|
617 |
Internet Draft HTML internationalization 13 February 1996 |
618 |
|
619 |
|
620 |
To ensure full interoperability, it is necessary for the user agent |
621 |
(and the user) to have an indication of the character encoding(s) |
622 |
that the server providing a form will be able to handle upon submis- |
623 |
sion of the filled-in form. Such an indication is provided by the |
624 |
ACCEPT-CHARSET attribute of the INPUT and TEXTAREA elements, modeled |
625 |
on the HTTP Accept-Charset header (see [HTTP-1.1]), which contains a |
626 |
space and/or comma delimited list of character sets acceptable to the |
627 |
server. A user agent may want to somehow advise the user of the con- |
628 |
tents of this attribute, or to restrict his possibility to enter |
629 |
characters outside the repertoires of the listed character sets. |
630 |
|
631 |
NOTE -- The list of character sets is to be interpreted as |
632 |
an EXCLUSIVE-OR list; the server announces that it is ready |
633 |
to accept any ONE of these character encoding schemes for |
634 |
each part of a multipart entity. The client may perform |
635 |
character encoding translation to satisfy the server if |
636 |
necessary. |
637 |
|
638 |
NOTE -- The default value for the ACCEPT-CHARSET attribute |
639 |
of an INPUT or TEXTAREA element is the reserved value |
640 |
"UNKNOWN". A user agent may interpret that value as the |
641 |
character encoding scheme that was used to transmit the |
642 |
document containing that element. |
643 |
|
644 |
|
645 |
5.2. Form submission |
646 |
|
647 |
The HTML 2.0 form submission mechanism, based on the "application/x- |
648 |
www-form-urlencoded" media type, is ill-equipped with regard to |
649 |
internationalization. In fact, since URLs are restricted to ASCII |
650 |
characters, the mechanism is akward even for ISO-8859-1 text. Sec- |
651 |
tion 2.2 of [RFC1738] specifies that octets may be encoded using the |
652 |
"%HH" notation, but text submitted from a form is composed of charac- |
653 |
ters, not octets. Lacking a specification of a character encoding |
654 |
scheme, the "%HH" notation has no well-defined meaning. |
655 |
|
656 |
A partial solution to this sorry state of affairs is to specify a |
657 |
default character encoding scheme to be assumed when the GET method |
658 |
of form submission is used. Specifying UCS-2 would break all exist- |
659 |
ing forms, so the only sensible way is to designate ISO-8859-1. That |
660 |
is, the encoded URL sent to submit a form by the GET method is to be |
661 |
interpreted as a sequence of single-octet characters encoded accord- |
662 |
ing to ISO-8859-1, and further encoded according to the scheme of |
663 |
[RFC1738] (the "%HH" notation). This is clearly insufficient, so |
664 |
designers of forms are advised to use the POST method of form submis- |
665 |
sion whenever possible. |
666 |
|
667 |
A better solution is to add a MIME charset parameter to the |
668 |
|
669 |
|
670 |
|
671 |
Expires 18 August 1996 [Page 12] |
672 |
|
673 |
Internet Draft HTML internationalization 13 February 1996 |
674 |
|
675 |
|
676 |
"application/x-www-form-urlencoded" media type specifier sent along |
677 |
with a POST method form submission, with the understanding that the |
678 |
URL encoding of [RFC1738] is applied on top of the specified charac- |
679 |
ter encoding, as a kind of implicit Content-Transfer-Encoding. The |
680 |
default ISO-8859-1 is implied in the absence of a charset parameter. |
681 |
|
682 |
The best solution is to use the "multipart/form-data" media type |
683 |
described in [RFC1867] with the POST method of form submission. This |
684 |
mechanism encapsulates the value part of each name-value pair in a |
685 |
body-part of a multipart MIME body that is sent as the HTTP entity; |
686 |
each body part can be labeled with an appropriate Content-Type, |
687 |
including if necessary a charset parameter that specifies the charac- |
688 |
ter encoding scheme. The changes to the DTD necessary to support |
689 |
this method of form submission have been incorporated in the DTD |
690 |
included in this specification. |
691 |
|
692 |
How the user agent determines the encoding of the text entered by the |
693 |
user is outside the scope of this specification. |
694 |
|
695 |
NOTE -- Designers of forms and their handling scripts |
696 |
should be aware of an important caveat: when the default |
697 |
value of a field (the VALUE attribute) is returned upon |
698 |
form submission (i.e. the user did not modify this value), |
699 |
it cannot be guaranteed to be transmitted as a sequence of |
700 |
octets identical to that in the source document -- only as |
701 |
a possibly different but valid encoding of the same |
702 |
sequence of characters. |
703 |
|
704 |
This may be true even if the encoding of the document con- |
705 |
taining the form and that used for submission are the same, |
706 |
because only the sequence of characters of the default |
707 |
value, not the actual sequence of octets, may be counted on |
708 |
to be preserved. |
709 |
|
710 |
6. Miscellaneous |
711 |
|
712 |
Proper interpretation of a text document requires that the character |
713 |
encoding scheme be known. Current HTTP servers, however, do not gen- |
714 |
erally include an appropriate charset parameter with the Content-Type |
715 |
header, even when the encoding scheme is different from the default |
716 |
ISO-8859-1. This is bad behaviour [3] , and as such strongly |
717 |
_________________________ |
718 |
[3] This bad behaviour is even encouraged by the con- |
719 |
tinued existence of browsers that declare an unrecog- |
720 |
nized media type when they receive a charset parameter. |
721 |
User agent implementators are strongly encouraged to |
722 |
make their software tolerant of this parameter, even if |
723 |
they cannot take advantage of it. |
724 |
|
725 |
|
726 |
|
727 |
Expires 18 August 1996 [Page 13] |
728 |
|
729 |
Internet Draft HTML internationalization 13 February 1996 |
730 |
|
731 |
|
732 |
discouraged, but some preventive measures can be taken to minimize |
733 |
the detrimental effects. |
734 |
|
735 |
In the case where a document is accessed from a hyperlink in an ori- |
736 |
gin HTML document, a CHARSET attribute is added to the attribute list |
737 |
of elements with link semantics (A and LINK), specifically by adding |
738 |
it to the linkExtraAttributes entity. The value of that attribute is |
739 |
to be considered a hint to the User Agent as to the character encod- |
740 |
ing scheme used by the ressource pointed to by the hyperlink; it |
741 |
should be the appropriate value of the MIME charset parameter for |
742 |
that ressource. |
743 |
|
744 |
In any document, it is possible to include an indication of the |
745 |
encoding scheme like the following, as early as possible within the |
746 |
HEAD of the document: |
747 |
|
748 |
<META HTTP-EQUIV="Content-Type" |
749 |
CONTENT="text/html; charset=ISO-2022-JP"> |
750 |
|
751 |
This is not foolproof, but will work if the encoding scheme is such |
752 |
that ASCII characters stand for themselves at least until the META |
753 |
element is parsed. Note that there are better ways for a server to |
754 |
obtain character encoding information, instead of the unreliable |
755 |
<META> above; see [NICOL2] for some details and a proposal. |
756 |
|
757 |
For definiteness, the "charset" parameter received from the source of |
758 |
the document should be considered the most authoritative, followed in |
759 |
order of preference by the contents of a META element such as the |
760 |
above, and finally the CHARSET parameter of the anchor that was fol- |
761 |
lowed (if any). |
762 |
|
763 |
When HTML text is transmitted directly in UCS-2 |
764 |
(charset=UNICODE-1-1), the question of byte order arises: does the |
765 |
high-order byte of each two-byte character come first or second? For |
766 |
definiteness, this specification recommends that UCS-2 be transmitted |
767 |
in big-endian byte order (high order byte first), which corresponds |
768 |
to the established network byte order for two-byte quantities, to the |
769 |
Unicode recommendation for serialized text data and to RFC 1641. |
770 |
Furthermore, to maximize chances of proper interpretation, it is rec- |
771 |
ommended that documents transmitted as UCS-2 always begin with a |
772 |
ZERO-WIDTH NON-BREAKING SPACE character (hexadecimal FEFF) which, |
773 |
when byte-reversed becomes number FFFE, a character guaranteed to be |
774 |
never assigned. Thus, a user-agent receiving an FFFE as the first |
775 |
octets of a text would know that bytes have to be reversed for the |
776 |
remainder of the text. |
777 |
|
778 |
There exist so-called UCS Transformation Formats than can be used to |
779 |
transmit UCS data, in addition to UCS-2. UTF-7 [RFC1642] and UTF-8 |
780 |
|
781 |
|
782 |
|
783 |
Expires 18 August 1996 [Page 14] |
784 |
|
785 |
Internet Draft HTML internationalization 13 February 1996 |
786 |
|
787 |
|
788 |
[UTF-8] have interesting properties (no byte-ordering problem, dif- |
789 |
ferent flavours of ASCII compatibility) that make them worthy of con- |
790 |
sideration, especially for transmission of multilingual text. The |
791 |
UTF-1 transformation format of ISO 10646 (registered by IANA as |
792 |
ISO-10646-UTF-1), has been removed from ISO 10646, and should not be |
793 |
used. |
794 |
|
795 |
7. HTML Public Text |
796 |
|
797 |
7.1. HTML DTD |
798 |
|
799 |
This section contains a DTD for HTML based on the HTML 2.0 DTD of RFC |
800 |
1866, incorporating the changes for file upload as specified in RFC |
801 |
1867, and the changes deriving from this document. |
802 |
|
803 |
<!-- html.dtd |
804 |
|
805 |
Document Type Definition for the HyperText Markup Language, |
806 |
extended for internationalisation (HTML DTD) |
807 |
|
808 |
Last revised: 96/01/23 |
809 |
|
810 |
Authors: Daniel W. Connolly <connolly@w3.org> |
811 |
Francois Yergeau <yergeau@alis.com> |
812 |
See Also: html.decl, html-1.dtd |
813 |
http://www.w3.org/hypertext/WWW/MarkUp/MarkUp.html |
814 |
--> |
815 |
|
816 |
<!ENTITY % HTML.Version |
817 |
"-//IETF//DTD HTML//EN" |
818 |
|
819 |
-- Typical usage: |
820 |
|
821 |
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
822 |
<html> |
823 |
... |
824 |
</html> |
825 |
-- |
826 |
> |
827 |
|
828 |
|
829 |
<!--============ Feature Test Entities ========================--> |
830 |
|
831 |
<!ENTITY % HTML.Recommended "IGNORE" |
832 |
-- Certain features of the language are necessary for |
833 |
compatibility with widespread usage, but they may |
834 |
compromise the structural integrity of a document. |
835 |
This feature test entity enables a more prescriptive |
836 |
|
837 |
|
838 |
|
839 |
Expires 18 August 1996 [Page 15] |
840 |
|
841 |
Internet Draft HTML internationalization 13 February 1996 |
842 |
|
843 |
|
844 |
document type definition that eliminates |
845 |
those features. |
846 |
--> |
847 |
|
848 |
<![ %HTML.Recommended [ |
849 |
<!ENTITY % HTML.Deprecated "IGNORE"> |
850 |
]]> |
851 |
|
852 |
<!ENTITY % HTML.Deprecated "INCLUDE" |
853 |
-- Certain features of the language are necessary for |
854 |
compatibility with earlier versions of the specification, |
855 |
but they tend to be used and implemented inconsistently, |
856 |
and their use is deprecated. This feature test entity |
857 |
enables a document type definition that eliminates |
858 |
these features. |
859 |
--> |
860 |
|
861 |
<!ENTITY % HTML.Highlighting "INCLUDE" |
862 |
-- Use this feature test entity to validate that a |
863 |
document uses no highlighting tags, which may be |
864 |
ignored on minimal implementations. |
865 |
--> |
866 |
|
867 |
<!ENTITY % HTML.Forms "INCLUDE" |
868 |
-- Use this feature test entity to validate that a document |
869 |
contains no forms, which may not be supported in minimal |
870 |
implementations |
871 |
--> |
872 |
|
873 |
<!--============== Imported Names ==============================--> |
874 |
|
875 |
<!ENTITY % Content-Type "CDATA" |
876 |
-- meaning an internet media type |
877 |
(aka MIME content type, as per RFC1521) |
878 |
--> |
879 |
|
880 |
<!ENTITY % HTTP-Method "GET | POST" |
881 |
-- as per HTTP specification, in progress |
882 |
--> |
883 |
|
884 |
<!--========= DTD "Macros" =====================--> |
885 |
|
886 |
<!ENTITY % heading "H1|H2|H3|H4|H5|H6"> |
887 |
|
888 |
<!ENTITY % list " UL | OL | DIR | MENU " > |
889 |
|
890 |
<!ENTITY % attrs -- common attributes for elements -- |
891 |
"LANG NAME #IMPLIED -- RFC 1766 language tag -- |
892 |
|
893 |
|
894 |
|
895 |
Expires 18 August 1996 [Page 16] |
896 |
|
897 |
Internet Draft HTML internationalization 13 February 1996 |
898 |
|
899 |
|
900 |
DIR (ltr|rtl) #IMPLIED -- text directionnality -- |
901 |
id ID #IMPLIED -- element identifier -- |
902 |
class NAMES #IMPLIED -- for subclassing elements --"> |
903 |
|
904 |
<!ENTITY % just -- an attribute for text justification -- |
905 |
"ALIGN (left|right|center|justify) #IMPLIED"> |
906 |
|
907 |
<!--======= Character mnemonic entities =================--> |
908 |
|
909 |
<!ENTITY % ISOlat1 PUBLIC |
910 |
"ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML"> |
911 |
%ISOlat1; |
912 |
|
913 |
<!ENTITY amp CDATA "&" -- ampersand --> |
914 |
<!ENTITY gt CDATA ">" -- greater than --> |
915 |
<!ENTITY lt CDATA "<" -- less than --> |
916 |
<!ENTITY quot CDATA """ -- double quote --> |
917 |
|
918 |
<!--Entities for language-dependent presentation (BIDI and contextual analysis) --> |
919 |
<!ENTITY zwnj CDATA "‌"-- zero width non-joiner--> |
920 |
<!ENTITY zwj CDATA "‍"-- zero width joiner--> |
921 |
<!ENTITY lrm CDATA "‎"-- left-to-right mark--> |
922 |
<!ENTITY rlm CDATA "‏"-- right-to-left mark--> |
923 |
|
924 |
|
925 |
<!--========= SGML Document Access (SDA) Parameter Entities =====--> |
926 |
|
927 |
<!-- HTML 2.0 contains SGML Document Access (SDA) fixed attributes |
928 |
in support of easy transformation to the International Committee |
929 |
for Accessible Document Design (ICADD) DTD |
930 |
"-//EC-USA-CDA/ICADD//DTD ICADD22//EN". |
931 |
ICADD applications are designed to support usable access to |
932 |
structured information by print-impaired individuals through |
933 |
Braille, large print and voice synthesis. For more information on |
934 |
SDA & ICADD: |
935 |
- ISO 12083:1993, Annex A.8, Facilities for Braille, |
936 |
large print and computer voice |
937 |
- ICADD ListServ |
938 |
<ICADD%ASUACAD.BITNET@ARIZVM1.ccit.arizona.edu> |
939 |
- Usenet news group bit.listserv.easi |
940 |
- Recording for the Blind, +1 800 221 4792 |
941 |
--> |
942 |
|
943 |
<!ENTITY % SDAFORM "SDAFORM CDATA #FIXED" |
944 |
-- one to one mapping --> |
945 |
<!ENTITY % SDARULE "SDARULE CDATA #FIXED" |
946 |
-- context-sensitive mapping --> |
947 |
<!ENTITY % SDAPREF "SDAPREF CDATA #FIXED" |
948 |
|
949 |
|
950 |
|
951 |
Expires 18 August 1996 [Page 17] |
952 |
|
953 |
Internet Draft HTML internationalization 13 February 1996 |
954 |
|
955 |
|
956 |
-- generated text prefix --> |
957 |
<!ENTITY % SDASUFF "SDASUFF CDATA #FIXED" |
958 |
-- generated text suffix --> |
959 |
<!ENTITY % SDASUSP "SDASUSP NAME #FIXED" |
960 |
-- suspend transform process --> |
961 |
|
962 |
|
963 |
<!--========== Text Markup =====================--> |
964 |
|
965 |
<![ %HTML.Highlighting [ |
966 |
|
967 |
<!ENTITY % font " TT | B | I "> |
968 |
|
969 |
<!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | VAR | CITE "> |
970 |
|
971 |
<!ENTITY % text "#PCDATA|A|IMG|BR|%phrase|%font|SPAN|Q|BDO|SUP|SUB"> |
972 |
|
973 |
<!ELEMENT (%font;|%phrase) - - (%text)*> |
974 |
<!ATTLIST ( TT | CODE | SAMP | KBD | VAR ) |
975 |
%attrs; |
976 |
%SDAFORM; "Lit" |
977 |
> |
978 |
<!ATTLIST ( B | STRONG ) |
979 |
%attrs; |
980 |
%SDAFORM; "B" |
981 |
> |
982 |
<!ATTLIST ( I | EM | CITE ) |
983 |
%attrs; |
984 |
%SDAFORM; "It" |
985 |
> |
986 |
|
987 |
<!-- <TT> Typewriter text --> |
988 |
<!-- <B> Bold text --> |
989 |
<!-- <I> Italic text --> |
990 |
|
991 |
<!-- <EM> Emphasized phrase --> |
992 |
<!-- <STRONG> Strong emphasis --> |
993 |
<!-- <CODE> Source code phrase --> |
994 |
<!-- <SAMP> Sample text or characters --> |
995 |
<!-- <KBD> Keyboard phrase, e.g. user input --> |
996 |
<!-- <VAR> Variable phrase or substitutable --> |
997 |
<!-- <CITE> Name or title of cited work --> |
998 |
|
999 |
<!ENTITY % pre.content "#PCDATA|A|HR|BR|%font|%phrase|SPAN|BDO"> |
1000 |
|
1001 |
]]> |
1002 |
|
1003 |
<!ENTITY % text "#PCDATA|A|IMG|BR|SPAN|Q|BDO|SUP|SUB"> |
1004 |
|
1005 |
|
1006 |
|
1007 |
Expires 18 August 1996 [Page 18] |
1008 |
|
1009 |
Internet Draft HTML internationalization 13 February 1996 |
1010 |
|
1011 |
|
1012 |
<!ELEMENT BR - O EMPTY> |
1013 |
<!ATTLIST BR |
1014 |
%SDAPREF; "&#RE;" |
1015 |
> |
1016 |
|
1017 |
<!-- <BR> Line break --> |
1018 |
|
1019 |
<!ELEMENT SPAN - - (%text)*> |
1020 |
<!ATTLIST SPAN |
1021 |
%attrs; |
1022 |
%SDAFORM; "other #Attlist" |
1023 |
> |
1024 |
|
1025 |
<!-- <SPAN> Generic container --> |
1026 |
|
1027 |
<!ELEMENT Q - - (%text)*> |
1028 |
<!ATTLIST Q |
1029 |
%attrs; |
1030 |
%SDAPREF; '"' |
1031 |
%SDASUFF; '"' |
1032 |
> |
1033 |
|
1034 |
<!-- <Q> Short quotation --> |
1035 |
|
1036 |
<!ELEMENT BDO - - (%text)+> |
1037 |
<!ATTLIST BDO |
1038 |
LANG NAME #IMPLIED |
1039 |
DIR (ltr|rtl) #REQUIRED |
1040 |
%SDAPREF "Bidi Override #Attval(DIR): " |
1041 |
%SDASUFF "End Bidi" |
1042 |
> |
1043 |
|
1044 |
<!-- <BDO> Control bidirectionnal text --> |
1045 |
|
1046 |
<!ELEMENT (SUP|SUB) - - (#PCDATA)> |
1047 |
<!ATTLIST (SUP) |
1048 |
%attrs; |
1049 |
%SDAPREF "Superscript(#content)" |
1050 |
> |
1051 |
<!ATTLIST (SUB) |
1052 |
%attrs; |
1053 |
%SDAPREF "Subscript(#content)" |
1054 |
> |
1055 |
|
1056 |
<!-- <SUP> Superscript --> |
1057 |
<!-- <SUB> Subscript --> |
1058 |
|
1059 |
<!--========= Link Markup ======================--> |
1060 |
|
1061 |
|
1062 |
|
1063 |
Expires 18 August 1996 [Page 19] |
1064 |
|
1065 |
Internet Draft HTML internationalization 13 February 1996 |
1066 |
|
1067 |
|
1068 |
<!ENTITY % linkType "NAMES"> |
1069 |
|
1070 |
<!ENTITY % linkExtraAttributes |
1071 |
"REL %linkType #IMPLIED |
1072 |
REV %linkType #IMPLIED |
1073 |
URN CDATA #IMPLIED |
1074 |
TITLE CDATA #IMPLIED |
1075 |
METHODS NAMES #IMPLIED |
1076 |
CHARSET NAME #IMPLIED |
1077 |
"> |
1078 |
|
1079 |
<![ %HTML.Recommended [ |
1080 |
<!ENTITY % A.content "(%text)*" |
1081 |
-- <H1><a name="xxx">Heading</a></H1> |
1082 |
is preferred to |
1083 |
<a name="xxx"><H1>Heading</H1></a> |
1084 |
--> |
1085 |
]]> |
1086 |
|
1087 |
<!ENTITY % A.content "(%heading|%text)*"> |
1088 |
|
1089 |
<!ELEMENT A - - %A.content -(A)> |
1090 |
<!ATTLIST A |
1091 |
%attrs; |
1092 |
HREF CDATA #IMPLIED |
1093 |
NAME CDATA #IMPLIED |
1094 |
%linkExtraAttributes; |
1095 |
%SDAPREF; "<Anchor: #AttList>" |
1096 |
> |
1097 |
<!-- <A> Anchor; source/destination of link --> |
1098 |
<!-- <A NAME="..."> Name of this anchor --> |
1099 |
<!-- <A HREF="..."> Address of link destination --> |
1100 |
<!-- <A URN="..."> Permanent address of destination --> |
1101 |
<!-- <A REL=...> Relationship to destination --> |
1102 |
<!-- <A REV=...> Relationship of destination to this --> |
1103 |
<!-- <A TITLE="..."> Title of destination (advisory) --> |
1104 |
<!-- <A METHODS="..."> Operations on destination (advisory) --> |
1105 |
<!-- <A CHARSET="..."> Charset of destination (advisory) --> |
1106 |
|
1107 |
|
1108 |
<!--========== Images ==========================--> |
1109 |
|
1110 |
<!ELEMENT IMG - O EMPTY> |
1111 |
<!ATTLIST IMG |
1112 |
%attrs; |
1113 |
SRC CDATA #REQUIRED |
1114 |
ALT CDATA #IMPLIED |
1115 |
ALIGN (top|middle|bottom) #IMPLIED |
1116 |
|
1117 |
|
1118 |
|
1119 |
Expires 18 August 1996 [Page 20] |
1120 |
|
1121 |
Internet Draft HTML internationalization 13 February 1996 |
1122 |
|
1123 |
|
1124 |
ISMAP (ISMAP) #IMPLIED |
1125 |
%SDAPREF; "<Fig><?SDATrans Img: #AttList>#AttVal(Alt)</Fig>" |
1126 |
> |
1127 |
|
1128 |
<!-- <IMG> Image; icon, glyph or illustration --> |
1129 |
<!-- <IMG SRC="..."> Address of image object --> |
1130 |
<!-- <IMG ALT="..."> Textual alternative --> |
1131 |
<!-- <IMG ALIGN=...> Position relative to text --> |
1132 |
<!-- <IMG ISMAP> Each pixel can be a link --> |
1133 |
|
1134 |
<!--========== Paragraphs=======================--> |
1135 |
|
1136 |
<!ELEMENT P - O (%text)*> |
1137 |
<!ATTLIST P |
1138 |
%attrs; |
1139 |
%just; |
1140 |
%SDAFORM; "Para" |
1141 |
> |
1142 |
|
1143 |
<!-- <P> Paragraph --> |
1144 |
|
1145 |
|
1146 |
<!--========== Headings, Titles, Sections ===============--> |
1147 |
|
1148 |
<!ELEMENT HR - O EMPTY> |
1149 |
<!ATTLIST HR |
1150 |
DIR (ltr|rtl) #IMPLIED |
1151 |
%just; |
1152 |
%SDAPREF; "&#RE;&#RE;" |
1153 |
> |
1154 |
|
1155 |
<!-- <HR> Horizontal rule --> |
1156 |
|
1157 |
<!ELEMENT ( %heading ) - - (%text;)*> |
1158 |
<!ATTLIST H1 |
1159 |
%attrs; |
1160 |
%just; |
1161 |
%SDAFORM; "H1" |
1162 |
> |
1163 |
<!ATTLIST H2 |
1164 |
%attrs; |
1165 |
%just; |
1166 |
%SDAFORM; "H2" |
1167 |
> |
1168 |
<!ATTLIST H3 |
1169 |
%attrs; |
1170 |
%just; |
1171 |
%SDAFORM; "H3" |
1172 |
|
1173 |
|
1174 |
|
1175 |
Expires 18 August 1996 [Page 21] |
1176 |
|
1177 |
Internet Draft HTML internationalization 13 February 1996 |
1178 |
|
1179 |
|
1180 |
> |
1181 |
<!ATTLIST H4 |
1182 |
%attrs; |
1183 |
%just; |
1184 |
%SDAFORM; "H4" |
1185 |
> |
1186 |
<!ATTLIST H5 |
1187 |
%attrs; |
1188 |
%just; |
1189 |
%SDAFORM; "H5" |
1190 |
> |
1191 |
<!ATTLIST H6 |
1192 |
%attrs; |
1193 |
%just; |
1194 |
%SDAFORM; "H6" |
1195 |
> |
1196 |
|
1197 |
<!-- <H1> Heading, level 1 --> |
1198 |
<!-- <H2> Heading, level 2 --> |
1199 |
<!-- <H3> Heading, level 3 --> |
1200 |
<!-- <H4> Heading, level 4 --> |
1201 |
<!-- <H5> Heading, level 5 --> |
1202 |
<!-- <H6> Heading, level 6 --> |
1203 |
|
1204 |
|
1205 |
<!--========== Text Flows ======================--> |
1206 |
|
1207 |
<![ %HTML.Forms [ |
1208 |
<!ENTITY % block.forms "BLOCKQUOTE | FORM | ISINDEX"> |
1209 |
]]> |
1210 |
|
1211 |
<!ENTITY % block.forms "BLOCKQUOTE"> |
1212 |
|
1213 |
<![ %HTML.Deprecated [ |
1214 |
<!ENTITY % preformatted "PRE | XMP | LISTING"> |
1215 |
]]> |
1216 |
|
1217 |
<!ENTITY % preformatted "PRE"> |
1218 |
|
1219 |
<!ENTITY % block "P | %list | DL |
1220 |
| %preformatted |
1221 |
| %block.forms"> |
1222 |
|
1223 |
<!ENTITY % flow "(%text|%block)*"> |
1224 |
|
1225 |
<!ENTITY % pre.content "#PCDATA | A | HR | BR | SPAN | BDO"> |
1226 |
<!ELEMENT PRE - - (%pre.content)*> |
1227 |
<!ATTLIST PRE |
1228 |
|
1229 |
|
1230 |
|
1231 |
Expires 18 August 1996 [Page 22] |
1232 |
|
1233 |
Internet Draft HTML internationalization 13 February 1996 |
1234 |
|
1235 |
|
1236 |
%attrs; |
1237 |
WIDTH NUMBER #implied |
1238 |
%SDAFORM; "Lit" |
1239 |
> |
1240 |
|
1241 |
<!-- <PRE> Preformatted text --> |
1242 |
<!-- <PRE WIDTH=...> Maximum characters per line --> |
1243 |
|
1244 |
<![ %HTML.Deprecated [ |
1245 |
|
1246 |
<!ENTITY % literal "CDATA" |
1247 |
-- historical, non-conforming parsing mode where |
1248 |
the only markup signal is the end tag |
1249 |
in full |
1250 |
--> |
1251 |
|
1252 |
<!ELEMENT (XMP|LISTING) - - %literal> |
1253 |
<!ATTLIST XMP |
1254 |
%attrs; |
1255 |
%SDAFORM; "Lit" |
1256 |
%SDAPREF; "Example:&#RE;" |
1257 |
> |
1258 |
<!ATTLIST LISTING |
1259 |
%attrs; |
1260 |
%SDAFORM; "Lit" |
1261 |
%SDAPREF; "Listing:&#RE;" |
1262 |
> |
1263 |
|
1264 |
<!-- <XMP> Example section --> |
1265 |
<!-- <LISTING> Computer listing --> |
1266 |
|
1267 |
<!ELEMENT PLAINTEXT - O %literal> |
1268 |
<!-- <PLAINTEXT> Plain text passage --> |
1269 |
|
1270 |
<!ATTLIST PLAINTEXT |
1271 |
%attrs; |
1272 |
%SDAFORM; "Lit" |
1273 |
> |
1274 |
]]> |
1275 |
|
1276 |
|
1277 |
<!--========== Lists ==================--> |
1278 |
|
1279 |
<!ELEMENT DL - - (DT | DD)+> |
1280 |
<!ATTLIST DL |
1281 |
%attrs; |
1282 |
COMPACT (COMPACT) #IMPLIED |
1283 |
%SDAFORM; "List" |
1284 |
|
1285 |
|
1286 |
|
1287 |
Expires 18 August 1996 [Page 23] |
1288 |
|
1289 |
Internet Draft HTML internationalization 13 February 1996 |
1290 |
|
1291 |
|
1292 |
%SDAPREF; "Definition List:" |
1293 |
> |
1294 |
|
1295 |
<!ELEMENT DT - O (%text)*> |
1296 |
<!ATTLIST DT |
1297 |
%attrs; |
1298 |
%SDAFORM; "Term" |
1299 |
> |
1300 |
|
1301 |
<!ELEMENT DD - O %flow> |
1302 |
<!ATTLIST DD |
1303 |
%attrs; |
1304 |
%SDAFORM; "LItem" |
1305 |
> |
1306 |
|
1307 |
<!-- <DL> Definition list, or glossary --> |
1308 |
<!-- <DL COMPACT> Compact style list --> |
1309 |
<!-- <DT> Term in definition list --> |
1310 |
<!-- <DD> Definition of term --> |
1311 |
|
1312 |
<!ELEMENT (OL|UL) - - (LI)+> |
1313 |
<!ATTLIST OL |
1314 |
%attrs; |
1315 |
%just; |
1316 |
COMPACT (COMPACT) #IMPLIED |
1317 |
%SDAFORM; "List" |
1318 |
> |
1319 |
<!ATTLIST UL |
1320 |
%attrs; |
1321 |
%just; |
1322 |
COMPACT (COMPACT) #IMPLIED |
1323 |
%SDAFORM; "List" |
1324 |
> |
1325 |
<!-- <UL> Unordered list --> |
1326 |
<!-- <UL COMPACT> Compact list style --> |
1327 |
<!-- <OL> Ordered, or numbered list --> |
1328 |
<!-- <OL COMPACT> Compact list style --> |
1329 |
|
1330 |
|
1331 |
<!ELEMENT (DIR|MENU) - - (LI)+ -(%block)> |
1332 |
<!ATTLIST DIR |
1333 |
%attrs; |
1334 |
%just; |
1335 |
COMPACT (COMPACT) #IMPLIED |
1336 |
%SDAFORM; "List" |
1337 |
%SDAPREF; "<LHead>Directory</LHead>" |
1338 |
> |
1339 |
<!ATTLIST MENU |
1340 |
|
1341 |
|
1342 |
|
1343 |
Expires 18 August 1996 [Page 24] |
1344 |
|
1345 |
Internet Draft HTML internationalization 13 February 1996 |
1346 |
|
1347 |
|
1348 |
%attrs; |
1349 |
%just; |
1350 |
COMPACT (COMPACT) #IMPLIED |
1351 |
%SDAFORM; "List" |
1352 |
%SDAPREF; "<LHead>Menu</LHead>" |
1353 |
> |
1354 |
|
1355 |
<!-- <DIR> Directory list --> |
1356 |
<!-- <DIR COMPACT> Compact list style --> |
1357 |
<!-- <MENU> Menu list --> |
1358 |
<!-- <MENU COMPACT> Compact list style --> |
1359 |
|
1360 |
<!ELEMENT LI - O %flow> |
1361 |
<!ATTLIST LI |
1362 |
%attrs; |
1363 |
%just; |
1364 |
%SDAFORM; "LItem" |
1365 |
> |
1366 |
|
1367 |
<!-- <LI> List item --> |
1368 |
|
1369 |
<!--========== Document Body ===================--> |
1370 |
|
1371 |
<![ %HTML.Recommended [ |
1372 |
<!ENTITY % body.content "(%heading|%block|HR|ADDRESS|IMG)*" |
1373 |
-- <h1>Heading</h1> |
1374 |
<p>Text ... |
1375 |
is preferred to |
1376 |
<h1>Heading</h1> |
1377 |
Text ... |
1378 |
--> |
1379 |
]]> |
1380 |
|
1381 |
<!ENTITY % body.content "(%heading | %text | %block | |
1382 |
HR | ADDRESS)*"> |
1383 |
|
1384 |
<!ELEMENT BODY O O %body.content> |
1385 |
<!ATTLIST BODY |
1386 |
%attrs; |
1387 |
> |
1388 |
|
1389 |
<!-- <BODY> Document body --> |
1390 |
|
1391 |
<!ELEMENT BLOCKQUOTE - - %body.content> |
1392 |
<!ATTLIST BLOCKQUOTE |
1393 |
%attrs; |
1394 |
%just; |
1395 |
%SDAFORM; "BQ" |
1396 |
|
1397 |
|
1398 |
|
1399 |
Expires 18 August 1996 [Page 25] |
1400 |
|
1401 |
Internet Draft HTML internationalization 13 February 1996 |
1402 |
|
1403 |
|
1404 |
> |
1405 |
|
1406 |
<!-- <BLOCKQUOTE> Quoted passage --> |
1407 |
|
1408 |
<!ELEMENT ADDRESS - - (%text|P)*> |
1409 |
<!ATTLIST ADDRESS |
1410 |
%attrs; |
1411 |
%just; |
1412 |
%SDAFORM; "Lit" |
1413 |
%SDAPREF; "Address:&#RE;" |
1414 |
> |
1415 |
|
1416 |
<!-- <ADDRESS> Address, signature, or byline --> |
1417 |
|
1418 |
|
1419 |
<!--======= Forms ====================--> |
1420 |
|
1421 |
<![ %HTML.Forms [ |
1422 |
|
1423 |
<!ELEMENT FORM - - %body.content -(FORM) +(INPUT|SELECT|TEXTAREA)> |
1424 |
<!ATTLIST FORM |
1425 |
%attrs; |
1426 |
ACTION CDATA #IMPLIED |
1427 |
METHOD (%HTTP-Method) GET |
1428 |
ENCTYPE %Content-Type; "application/x-www-form-urlencoded" |
1429 |
%SDAPREF; "<Para>Form:</Para>" |
1430 |
%SDASUFF; "<Para>Form End.</Para>" |
1431 |
> |
1432 |
|
1433 |
<!-- <FORM> Fill-out or data-entry form --> |
1434 |
<!-- <FORM ACTION="..."> Address for completed form --> |
1435 |
<!-- <FORM METHOD=...> Method of submitting form --> |
1436 |
<!-- <FORM ENCTYPE="..."> Representation of form data --> |
1437 |
|
1438 |
<!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX | |
1439 |
RADIO | SUBMIT | RESET | |
1440 |
IMAGE | HIDDEN | FILE )"> |
1441 |
<!ELEMENT INPUT - O EMPTY> |
1442 |
<!ATTLIST INPUT |
1443 |
%attrs; |
1444 |
TYPE %InputType TEXT |
1445 |
NAME CDATA #IMPLIED |
1446 |
VALUE CDATA #IMPLIED |
1447 |
SRC CDATA #IMPLIED |
1448 |
CHECKED (CHECKED) #IMPLIED |
1449 |
SIZE CDATA #IMPLIED |
1450 |
MAXLENGTH NUMBER #IMPLIED |
1451 |
ALIGN (top|middle|bottom) #IMPLIED |
1452 |
|
1453 |
|
1454 |
|
1455 |
Expires 18 August 1996 [Page 26] |
1456 |
|
1457 |
Internet Draft HTML internationalization 13 February 1996 |
1458 |
|
1459 |
|
1460 |
ACCEPT CDATA #IMPLIED --list of content types -- |
1461 |
ACCEPT-CHARSET CDATA #IMPLIED --list of charsets -- |
1462 |
%SDAPREF; "Input: " |
1463 |
> |
1464 |
|
1465 |
<!-- <INPUT> Form input datum --> |
1466 |
<!-- <INPUT TYPE=...> Type of input interaction --> |
1467 |
<!-- <INPUT NAME=...> Name of form datum --> |
1468 |
<!-- <INPUT VALUE="..."> Default/initial/selected value --> |
1469 |
<!-- <INPUT SRC="..."> Address of image --> |
1470 |
<!-- <INPUT CHECKED> Initial state is "on" --> |
1471 |
<!-- <INPUT SIZE=...> Field size hint --> |
1472 |
<!-- <INPUT MAXLENGTH=...> Data length maximum --> |
1473 |
<!-- <INPUT ALIGN=...> Image alignment --> |
1474 |
|
1475 |
<!ELEMENT SELECT - - (OPTION+) -(INPUT|SELECT|TEXTAREA)> |
1476 |
<!ATTLIST SELECT |
1477 |
%attrs; |
1478 |
NAME CDATA #REQUIRED |
1479 |
SIZE NUMBER #IMPLIED |
1480 |
MULTIPLE (MULTIPLE) #IMPLIED |
1481 |
%SDAFORM; "List" |
1482 |
%SDAPREF; |
1483 |
"<LHead>Select #AttVal(Multiple)</LHead>" |
1484 |
> |
1485 |
|
1486 |
<!-- <SELECT> Selection of option(s) --> |
1487 |
<!-- <SELECT NAME=...> Name of form datum --> |
1488 |
<!-- <SELECT SIZE=...> Options displayed at a time --> |
1489 |
<!-- <SELECT MULTIPLE> Multiple selections allowed --> |
1490 |
|
1491 |
<!ELEMENT OPTION - O (#PCDATA)*> |
1492 |
<!ATTLIST OPTION |
1493 |
%attrs; |
1494 |
SELECTED (SELECTED) #IMPLIED |
1495 |
VALUE CDATA #IMPLIED |
1496 |
%SDAFORM; "LItem" |
1497 |
%SDAPREF; |
1498 |
"Option: #AttVal(Value) #AttVal(Selected)" |
1499 |
> |
1500 |
|
1501 |
<!-- <OPTION> A selection option --> |
1502 |
<!-- <OPTION SELECTED> Initial state --> |
1503 |
<!-- <OPTION VALUE="..."> Form datum value for this option--> |
1504 |
|
1505 |
<!ELEMENT TEXTAREA - - (#PCDATA)* -(INPUT|SELECT|TEXTAREA)> |
1506 |
<!ATTLIST TEXTAREA |
1507 |
%attrs; |
1508 |
|
1509 |
|
1510 |
|
1511 |
Expires 18 August 1996 [Page 27] |
1512 |
|
1513 |
Internet Draft HTML internationalization 13 February 1996 |
1514 |
|
1515 |
|
1516 |
NAME CDATA #REQUIRED |
1517 |
ROWS NUMBER #REQUIRED |
1518 |
COLS NUMBER #REQUIRED |
1519 |
ACCEPT-CHARSET CDATA #IMPLIED -- list of charsets -- |
1520 |
%SDAFORM; "Para" |
1521 |
%SDAPREF; "Input Text -- #AttVal(Name): " |
1522 |
> |
1523 |
|
1524 |
<!-- <TEXTAREA> An area for text input --> |
1525 |
<!-- <TEXTAREA NAME=...> Name of form datum --> |
1526 |
<!-- <TEXTAREA ROWS=...> Height of area --> |
1527 |
<!-- <TEXTAREA COLS=...> Width of area --> |
1528 |
|
1529 |
]]> |
1530 |
|
1531 |
|
1532 |
<!--======= Document Head ======================--> |
1533 |
|
1534 |
<![ %HTML.Recommended [ |
1535 |
<!ENTITY % head.extra ""> |
1536 |
]]> |
1537 |
<!ENTITY % head.extra "& NEXTID?"> |
1538 |
|
1539 |
<!ENTITY % head.content "TITLE & ISINDEX? & BASE? %head.extra"> |
1540 |
|
1541 |
<!ELEMENT HEAD O O (%head.content) +(META|LINK)> |
1542 |
<!ATTLIST HEAD |
1543 |
%attrs; > |
1544 |
|
1545 |
<!-- <HEAD> Document head --> |
1546 |
|
1547 |
<!ELEMENT TITLE - - (#PCDATA)* -(META|LINK)> |
1548 |
<!ATTLIST TITLE |
1549 |
%attrs; |
1550 |
%SDAFORM; "Ti" > |
1551 |
|
1552 |
<!-- <TITLE> Title of document --> |
1553 |
|
1554 |
<!ELEMENT LINK - O EMPTY> |
1555 |
<!ATTLIST LINK |
1556 |
%attrs; |
1557 |
HREF CDATA #REQUIRED |
1558 |
%linkExtraAttributes; |
1559 |
%SDAPREF; "Linked to : #AttVal (TITLE) (URN) (HREF)>" > |
1560 |
|
1561 |
<!-- <LINK> Link from this document --> |
1562 |
<!-- <LINK HREF="..."> Address of link destination --> |
1563 |
<!-- <LINK URN="..."> Lasting name of destination --> |
1564 |
|
1565 |
|
1566 |
|
1567 |
Expires 18 August 1996 [Page 28] |
1568 |
|
1569 |
Internet Draft HTML internationalization 13 February 1996 |
1570 |
|
1571 |
|
1572 |
<!-- <LINK REL=...> Relationship to destination --> |
1573 |
<!-- <LINK REV=...> Relationship of destination to this --> |
1574 |
<!-- <LINK TITLE="..."> Title of destination (advisory) --> |
1575 |
<!-- <LINK CHARSET="..."> Charset of destination (advisory) --> |
1576 |
<!-- <LINK METHODS="..."> Operations allowed (advisory) --> |
1577 |
|
1578 |
<!ELEMENT ISINDEX - O EMPTY> |
1579 |
<!ATTLIST ISINDEX |
1580 |
%attrs; |
1581 |
%SDAPREF; |
1582 |
"<Para>[Document is indexed/searchable.]</Para>"> |
1583 |
|
1584 |
<!-- <ISINDEX> Document is a searchable index --> |
1585 |
|
1586 |
<!ELEMENT BASE - O EMPTY> |
1587 |
<!ATTLIST BASE |
1588 |
HREF CDATA #REQUIRED > |
1589 |
|
1590 |
<!-- <BASE> Base context document --> |
1591 |
<!-- <BASE HREF="..."> Address for this document --> |
1592 |
|
1593 |
<!ELEMENT NEXTID - O EMPTY> |
1594 |
<!ATTLIST NEXTID |
1595 |
N CDATA #REQUIRED > |
1596 |
|
1597 |
<!-- <NEXTID> Next ID to use for link name --> |
1598 |
<!-- <NEXTID N=...> Next ID to use for link name --> |
1599 |
|
1600 |
<!ELEMENT META - O EMPTY> |
1601 |
<!ATTLIST META |
1602 |
HTTP-EQUIV NAME #IMPLIED |
1603 |
NAME NAME #IMPLIED |
1604 |
CONTENT CDATA #REQUIRED > |
1605 |
|
1606 |
<!-- <META> Generic Meta-information --> |
1607 |
<!-- <META HTTP-EQUIV=...> HTTP response header name --> |
1608 |
<!-- <META NAME=...> Meta-information name --> |
1609 |
<!-- <META CONTENT="..."> Associated information --> |
1610 |
|
1611 |
<!--======= Document Structure =================--> |
1612 |
|
1613 |
<![ %HTML.Deprecated [ |
1614 |
<!ENTITY % html.content "HEAD, BODY, PLAINTEXT?"> |
1615 |
]]> |
1616 |
<!ENTITY % html.content "HEAD, BODY"> |
1617 |
|
1618 |
<!ELEMENT HTML O O (%html.content)> |
1619 |
<!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'"> |
1620 |
|
1621 |
|
1622 |
|
1623 |
Expires 18 August 1996 [Page 29] |
1624 |
|
1625 |
Internet Draft HTML internationalization 13 February 1996 |
1626 |
|
1627 |
|
1628 |
<!ATTLIST HTML |
1629 |
%attrs; |
1630 |
%version.attr; |
1631 |
%SDAFORM; "Book" |
1632 |
> |
1633 |
|
1634 |
<!-- <HTML> HTML Document --> |
1635 |
|
1636 |
|
1637 |
7.2. SGML Declaration for HTML |
1638 |
|
1639 |
<!SGML "ISO 8879:1986" |
1640 |
-- |
1641 |
SGML Declaration for HyperText Markup Language version 2.x |
1642 |
(HTML 2.x = HTML 2.0 + i18n). |
1643 |
|
1644 |
-- |
1645 |
|
1646 |
CHARSET |
1647 |
BASESET "ISO Registration Number 176//CHARSET |
1648 |
ISO/IEC 10646-1:1993 UCS-2 with |
1649 |
implementation level 3//ESC 2/5 2/15 4/5" |
1650 |
DESCSET 0 9 UNUSED |
1651 |
9 2 9 |
1652 |
11 2 UNUSED |
1653 |
13 1 13 |
1654 |
14 18 UNUSED |
1655 |
32 95 32 |
1656 |
127 1 UNUSED |
1657 |
128 32 UNUSED |
1658 |
160 65376 160 |
1659 |
|
1660 |
|
1661 |
CAPACITY SGMLREF |
1662 |
TOTALCAP 150000 |
1663 |
GRPCAP 150000 |
1664 |
ENTCAP 150000 |
1665 |
|
1666 |
SCOPE DOCUMENT |
1667 |
SYNTAX |
1668 |
SHUNCHAR CONTROLS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
1669 |
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 127 |
1670 |
BASESET "ISO 646:1983//CHARSET |
1671 |
International Reference Version |
1672 |
(IRV)//ESC 2/5 4/0" |
1673 |
DESCSET 0 128 0 |
1674 |
|
1675 |
FUNCTION |
1676 |
|
1677 |
|
1678 |
|
1679 |
Expires 18 August 1996 [Page 30] |
1680 |
|
1681 |
Internet Draft HTML internationalization 13 February 1996 |
1682 |
|
1683 |
|
1684 |
RE 13 |
1685 |
RS 10 |
1686 |
SPACE 32 |
1687 |
TAB SEPCHAR 9 |
1688 |
|
1689 |
NAMING LCNMSTRT "" |
1690 |
UCNMSTRT "" |
1691 |
LCNMCHAR ".-" |
1692 |
UCNMCHAR ".-" |
1693 |
NAMECASE GENERAL YES |
1694 |
ENTITY NO |
1695 |
DELIM GENERAL SGMLREF |
1696 |
SHORTREF SGMLREF |
1697 |
NAMES SGMLREF |
1698 |
QUANTITY SGMLREF |
1699 |
ATTSPLEN 2100 |
1700 |
LITLEN 1024 |
1701 |
NAMELEN 72 -- somewhat arbitrary; taken from |
1702 |
internet line length conventions -- |
1703 |
PILEN 1024 |
1704 |
TAGLVL 100 |
1705 |
TAGLEN 2100 |
1706 |
GRPGTCNT 150 |
1707 |
GRPCNT 64 |
1708 |
|
1709 |
FEATURES |
1710 |
MINIMIZE |
1711 |
DATATAG NO |
1712 |
OMITTAG YES |
1713 |
RANK NO |
1714 |
SHORTTAG YES |
1715 |
LINK |
1716 |
SIMPLE NO |
1717 |
IMPLICIT NO |
1718 |
EXPLICIT NO |
1719 |
OTHER |
1720 |
CONCUR NO |
1721 |
SUBDOC NO |
1722 |
FORMAL YES |
1723 |
APPINFO "SDA" -- conforming SGML Document Access application |
1724 |
-- |
1725 |
> |
1726 |
|
1727 |
|
1728 |
7.3. ISO Latin 1 entity set |
1729 |
|
1730 |
The following public text lists each of the characters specified in |
1731 |
the Added Latin 1 entity set, along with its name, syntax for use, |
1732 |
|
1733 |
|
1734 |
|
1735 |
Expires 18 August 1996 [Page 31] |
1736 |
|
1737 |
Internet Draft HTML internationalization 13 February 1996 |
1738 |
|
1739 |
|
1740 |
and description. This list is derived from ISO Standard |
1741 |
8879:1986//ENTITIES Added Latin 1//EN. HTML includes the entire |
1742 |
entity set, and adds entities for all missing characters in the right |
1743 |
part of ISO-8859-1. |
1744 |
|
1745 |
<!-- (C) International Organization for Standardization 1986 |
1746 |
Permission to copy in any form is granted for use with |
1747 |
conforming SGML systems and applications as defined in |
1748 |
ISO 8879, provided this notice is included in all copies. |
1749 |
--> |
1750 |
<!-- Character entity set. Typical invocation: |
1751 |
<!ENTITY % ISOlat1 PUBLIC |
1752 |
"ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML"> |
1753 |
%ISOlat1; |
1754 |
--> |
1755 |
<!ENTITY nbsp CDATA " " -- no-break space --> |
1756 |
<!ENTITY iexcl CDATA "¡" -- inverted exclamation mark --> |
1757 |
<!ENTITY cent CDATA "¢" -- cent sign --> |
1758 |
<!ENTITY pound CDATA "£" -- pound sterling sign --> |
1759 |
<!ENTITY curren CDATA "¤" -- general currency sign --> |
1760 |
<!ENTITY yen CDATA "¥" -- yen sign --> |
1761 |
<!ENTITY brvbar CDATA "¦" -- broken (vertical) bar --> |
1762 |
<!ENTITY sect CDATA "§" -- section sign --> |
1763 |
<!ENTITY uml CDATA "¨" -- umlaut (dieresis) --> |
1764 |
<!ENTITY copy CDATA "©" -- copyright sign --> |
1765 |
<!ENTITY ordf CDATA "ª" -- ordinal indicator, feminine --> |
1766 |
<!ENTITY laquo CDATA "«" -- angle quotation mark, left --> |
1767 |
<!ENTITY not CDATA "¬" -- not sign --> |
1768 |
<!ENTITY shy CDATA "­" -- soft hyphen --> |
1769 |
<!ENTITY reg CDATA "®" -- registered sign --> |
1770 |
<!ENTITY macr CDATA "¯" -- macron --> |
1771 |
<!ENTITY deg CDATA "°" -- degree sign --> |
1772 |
<!ENTITY plusmn CDATA "±" -- plus-or-minus sign --> |
1773 |
<!ENTITY sup2 CDATA "²" -- superscript two --> |
1774 |
<!ENTITY sup3 CDATA "³" -- superscript three --> |
1775 |
<!ENTITY acute CDATA "´" -- acute accent --> |
1776 |
<!ENTITY micro CDATA "µ" -- micro sign --> |
1777 |
<!ENTITY para CDATA "¶" -- pilcrow (paragraph sign) --> |
1778 |
<!ENTITY middot CDATA "·" -- middle dot --> |
1779 |
<!ENTITY cedil CDATA "¸" -- cedilla --> |
1780 |
<!ENTITY sup1 CDATA "¹" -- superscript one --> |
1781 |
<!ENTITY ordm CDATA "º" -- ordinal indicator, masculine --> |
1782 |
<!ENTITY raquo CDATA "»" -- angle quotation mark, right --> |
1783 |
<!ENTITY frac14 CDATA "¼" -- fraction one-quarter --> |
1784 |
<!ENTITY frac12 CDATA "½" -- fraction one-half --> |
1785 |
<!ENTITY frac34 CDATA "¾" -- fraction three-quarters --> |
1786 |
<!ENTITY iquest CDATA "¿" -- inverted question mark --> |
1787 |
<!ENTITY Agrave CDATA "À" -- capital A, grave accent --> |
1788 |
|
1789 |
|
1790 |
|
1791 |
Expires 18 August 1996 [Page 32] |
1792 |
|
1793 |
Internet Draft HTML internationalization 13 February 1996 |
1794 |
|
1795 |
|
1796 |
<!ENTITY Aacute CDATA "Á" -- capital A, acute accent --> |
1797 |
<!ENTITY Acirc CDATA "Â" -- capital A, circumflex accent --> |
1798 |
<!ENTITY Atilde CDATA "Ã" -- capital A, tilde --> |
1799 |
<!ENTITY Auml CDATA "Ä" -- capital A, dieresis or umlaut mark --> |
1800 |
<!ENTITY Aring CDATA "Å" -- capital A, ring --> |
1801 |
<!ENTITY AElig CDATA "Æ" -- capital AE diphthong (ligature) --> |
1802 |
<!ENTITY Ccedil CDATA "Ç" -- capital C, cedilla --> |
1803 |
<!ENTITY Egrave CDATA "È" -- capital E, grave accent --> |
1804 |
<!ENTITY Eacute CDATA "É" -- capital E, acute accent --> |
1805 |
<!ENTITY Ecirc CDATA "Ê" -- capital E, circumflex accent --> |
1806 |
<!ENTITY Euml CDATA "Ë" -- capital E, dieresis or umlaut mark --> |
1807 |
<!ENTITY Igrave CDATA "Ì" -- capital I, grave accent --> |
1808 |
<!ENTITY Iacute CDATA "Í" -- capital I, acute accent --> |
1809 |
<!ENTITY Icirc CDATA "Î" -- capital I, circumflex accent --> |
1810 |
<!ENTITY Iuml CDATA "Ï" -- capital I, dieresis or umlaut mark --> |
1811 |
<!ENTITY ETH CDATA "Ð" -- capital Eth, Icelandic --> |
1812 |
<!ENTITY Ntilde CDATA "Ñ" -- capital N, tilde --> |
1813 |
<!ENTITY Ograve CDATA "Ò" -- capital O, grave accent --> |
1814 |
<!ENTITY Oacute CDATA "Ó" -- capital O, acute accent --> |
1815 |
<!ENTITY Ocirc CDATA "Ô" -- capital O, circumflex accent --> |
1816 |
<!ENTITY Otilde CDATA "Õ" -- capital O, tilde --> |
1817 |
<!ENTITY Ouml CDATA "Ö" -- capital O, dieresis or umlaut mark --> |
1818 |
<!ENTITY times CDATA "×" -- multiply sign --> |
1819 |
<!ENTITY Oslash CDATA "Ø" -- capital O, slash --> |
1820 |
<!ENTITY Ugrave CDATA "Ù" -- capital U, grave accent --> |
1821 |
<!ENTITY Uacute CDATA "Ú" -- capital U, acute accent --> |
1822 |
<!ENTITY Ucirc CDATA "Û" -- capital U, circumflex accent --> |
1823 |
<!ENTITY Uuml CDATA "Ü" -- capital U, dieresis or umlaut mark --> |
1824 |
<!ENTITY Yacute CDATA "Ý" -- capital Y, acute accent --> |
1825 |
<!ENTITY THORN CDATA "Þ" -- capital Thorn, Icelandic --> |
1826 |
<!ENTITY szlig CDATA "ß" -- small sharp s, German (sz ligature) --> |
1827 |
<!ENTITY agrave CDATA "à" -- small a, grave accent --> |
1828 |
<!ENTITY aacute CDATA "á" -- small a, acute accent --> |
1829 |
<!ENTITY acirc CDATA "â" -- small a, circumflex accent --> |
1830 |
<!ENTITY atilde CDATA "ã" -- small a, tilde --> |
1831 |
<!ENTITY auml CDATA "ä" -- small a, dieresis or umlaut mark --> |
1832 |
<!ENTITY aring CDATA "å" -- small a, ring --> |
1833 |
<!ENTITY aelig CDATA "æ" -- small ae diphthong (ligature) --> |
1834 |
<!ENTITY ccedil CDATA "ç" -- small c, cedilla --> |
1835 |
<!ENTITY egrave CDATA "è" -- small e, grave accent --> |
1836 |
<!ENTITY eacute CDATA "é" -- small e, acute accent --> |
1837 |
<!ENTITY ecirc CDATA "ê" -- small e, circumflex accent --> |
1838 |
<!ENTITY euml CDATA "ë" -- small e, dieresis or umlaut mark --> |
1839 |
<!ENTITY igrave CDATA "ì" -- small i, grave accent --> |
1840 |
<!ENTITY iacute CDATA "í" -- small i, acute accent --> |
1841 |
<!ENTITY icirc CDATA "î" -- small i, circumflex accent --> |
1842 |
<!ENTITY iuml CDATA "ï" -- small i, dieresis or umlaut mark --> |
1843 |
<!ENTITY eth CDATA "ð" -- small eth, Icelandic --> |
1844 |
|
1845 |
|
1846 |
|
1847 |
Expires 18 August 1996 [Page 33] |
1848 |
|
1849 |
Internet Draft HTML internationalization 13 February 1996 |
1850 |
|
1851 |
|
1852 |
<!ENTITY ntilde CDATA "ñ" -- small n, tilde --> |
1853 |
<!ENTITY ograve CDATA "ò" -- small o, grave accent --> |
1854 |
<!ENTITY oacute CDATA "ó" -- small o, acute accent --> |
1855 |
<!ENTITY ocirc CDATA "ô" -- small o, circumflex accent --> |
1856 |
<!ENTITY otilde CDATA "õ" -- small o, tilde --> |
1857 |
<!ENTITY ouml CDATA "ö" -- small o, dieresis or umlaut mark --> |
1858 |
<!ENTITY divide CDATA "÷" -- divide sign --> |
1859 |
<!ENTITY oslash CDATA "ø" -- small o, slash --> |
1860 |
<!ENTITY ugrave CDATA "ù" -- small u, grave accent --> |
1861 |
<!ENTITY uacute CDATA "ú" -- small u, acute accent --> |
1862 |
<!ENTITY ucirc CDATA "û" -- small u, circumflex accent --> |
1863 |
<!ENTITY uuml CDATA "ü" -- small u, dieresis or umlaut mark --> |
1864 |
<!ENTITY yacute CDATA "ý" -- small y, acute accent --> |
1865 |
<!ENTITY thorn CDATA "þ" -- small thorn, Icelandic --> |
1866 |
<!ENTITY yuml CDATA "ÿ" -- small y, dieresis or umlaut mark --> |
1867 |
|
1868 |
|
1869 |
Bibliography |
1870 |
|
1871 |
[BRYAN88] M. Bryan, "SGML -- An Author's Guide to the Standard |
1872 |
Generalized Markup Language", Addison-Wesley, Reading, |
1873 |
1988. |
1874 |
|
1875 |
[ERCS] Extended Reference Concrete Syntax for SGML. |
1876 |
<http://www.sgmlopen.org/sgml/docs/ercs/ercs- |
1877 |
home.html> |
1878 |
|
1879 |
[ETHNO] "Ethnologue, Languages of the World", 12th Edition, |
1880 |
Barbara F. Grimes, editor, Summer Institute of Lin- |
1881 |
guistics, Dallas, 1992. |
1882 |
|
1883 |
[GOLD90] C. F. Goldfarb, "The SGML Handbook", Y. Rubinsky, Ed., |
1884 |
Oxford University Press, 1990. |
1885 |
|
1886 |
[HTTP-1.0] T. Berners-Lee, R.T. Fielding, and H. Frystyk Nielsen, |
1887 |
"Hypertext Transfer Protocol -- HTTP/1.0", Work in |
1888 |
progress (draft-ietf-http-v10-spec-04.txt), MIT/LCS, |
1889 |
UC Irvine, October 1995. |
1890 |
|
1891 |
[HTTP-1.1] R.T. Fielding, H. Frystyk Nielsen, and T. Berners-Lee, |
1892 |
"Hypertext Transfer Protocol -- HTTP/1.1", Work in |
1893 |
progress (draft-ietf-http-v11-spec-01.txt), MIT/LCS, |
1894 |
January 1996. |
1895 |
|
1896 |
[ISO-639] ISO 639:1988. Codes pour la représentation des noms de |
1897 |
langue. Technical content in |
1898 |
<http://www.sil.org/sgml/iso639a.html> |
1899 |
|
1900 |
|
1901 |
|
1902 |
|
1903 |
Expires 18 August 1996 [Page 34] |
1904 |
|
1905 |
Internet Draft HTML internationalization 13 February 1996 |
1906 |
|
1907 |
|
1908 |
[ISO-3166] ISO 3166:1993. Codes pour la représentation des noms |
1909 |
de pays. |
1910 |
|
1911 |
[ISO-8601] ISO 8601:1988. Éléments de données et formats |
1912 |
d'échange -- Échange d'information -- Représentation |
1913 |
de la date et de l'heure. |
1914 |
|
1915 |
[ISO-8859-1] ISO 8859-1:1987. International Standard -- Informa- |
1916 |
tion Processing -- 8-bit Single-Byte Coded Graphic |
1917 |
Character Sets -- Part 1: Latin Alphabet No. 1. |
1918 |
|
1919 |
[ISO-8879] ISO 8879:1986. International Standard -- Information |
1920 |
Processing -- Text and Office Systems -- Standard Gen- |
1921 |
eralized Markup Language (SGML). |
1922 |
|
1923 |
[ISO-10646] ISO/IEC 10646-1:1993. International Standard -- Infor- |
1924 |
mation technology -- Universal Multiple-Octet Coded |
1925 |
Character Set (UCS) -- Part 1: Architecture and Basic |
1926 |
Multilingual Plane. |
1927 |
|
1928 |
[NICOL] G.T. Nicol, "The Multilingual World Wide Web", Elec- |
1929 |
tronic Book Technologies, 1995, |
1930 |
<http://www.ebt.com/docs/multling.html> |
1931 |
|
1932 |
[NICOL2] G.T. Nicol, "MIME Header Supplemented File Type", Work |
1933 |
in progress, <draft-nicol-mime-header-type-00.txt>, |
1934 |
EBT, October 1995. |
1935 |
|
1936 |
[RFC1468] J. Murai, M. Crispin and E. van der Poel, "Japanese |
1937 |
Character Encoding for Internet Messages", RFC 1468, |
1938 |
Keio University, Panda Programming, June 1993. |
1939 |
|
1940 |
[RFC1521] N. Borenstein and N. Freed, "MIME (Multipurpose Inter- |
1941 |
net Mail Extensions) Part One: Mechanisms for Specify- |
1942 |
ing and Describing the Format of Internet Message Bod- |
1943 |
ies", RFC 1521, Bellcore, Innosoft, September 1993. |
1944 |
|
1945 |
[RFC1590] J. Postel, "Media Type Registration Procedure", RFC |
1946 |
1590, USC/ISI, March 1994. |
1947 |
|
1948 |
[RFC1641] D. Goldsmith, M.Davis, "Using Unicode with MIME", RFC |
1949 |
1641, Taligent inc., July 1994. |
1950 |
|
1951 |
[RFC1642] D. Goldsmith, M. Davis, "UTF-7: A Mail-safe Transfor- |
1952 |
mation Format of Unicode", RFC 1642, Taligent inc., |
1953 |
July 1994. |
1954 |
|
1955 |
[RFC1738] T. Berners-Lee, L. Masinter, and M. McCahill, "Uniform |
1956 |
|
1957 |
|
1958 |
|
1959 |
Expires 18 August 1996 [Page 35] |
1960 |
|
1961 |
Internet Draft HTML internationalization 13 February 1996 |
1962 |
|
1963 |
|
1964 |
Resource Locators (URL)", RFC 1738, CERN, Xerox PARC, |
1965 |
University of Minnesota, October 1994. |
1966 |
|
1967 |
[RFC1766] H. Alverstrand, "Tags for the Identification of Lan- |
1968 |
guages", RFC 1766, UNINETT, March 1995. |
1969 |
|
1970 |
[RFC1866] T. Berners-Lee and D. Connolly, "Hypertext Markup Lan- |
1971 |
guage - 2.0", RFC 1866, MIT/W3C, November 1995. |
1972 |
|
1973 |
[RFC1867] E. Nebel and L. Masinter, "Form-based File Upload in |
1974 |
HTML", RFC 1867, Xerox Corporation, November 1995. |
1975 |
August 1995. |
1976 |
|
1977 |
[SQ91] SoftQuad, "The SGML Primer", 3rd ed., SoftQuad Inc., |
1978 |
1991. |
1979 |
|
1980 |
[TAKADA] Toshihiro Takada, "Multilingual Information Exchange |
1981 |
through the World-Wide Web", Computer Networks and |
1982 |
ISDN Systems, Vol. 27, No. 2, Nov. 1994 , p. 235-241. |
1983 |
|
1984 |
[TEI] TEI Guidelines for Electronic Text Encoding and Inter- |
1985 |
change. <http://etext.virgina.edu/TEI.html> |
1986 |
|
1987 |
[UNICODE] The Unicode Consortium, "The Unicode Standard -- |
1988 |
Worldwide Character Encoding -- Version 1.0", Addison- |
1989 |
Wesley, Volume 1, 1991, Volume 2, 1992. The BIDI |
1990 |
algorithm is in appendix A of volume 1, with correc- |
1991 |
tions in appendix D of volume 2. |
1992 |
|
1993 |
[UTF-8] X/Open Company Ltd., "File System Safe UCS Transforma- |
1994 |
tion Format (FSS_UTF)", X/Open Preleminary Specifica- |
1995 |
tion, Document Number P316. Also published in Unicode |
1996 |
Technical Report #4 and soon in an annex to ISO |
1997 |
10646-1. |
1998 |
|
1999 |
[VANH90] E. van Hervijnen, "Practical SGML", Kluwer Academicq |
2000 |
Publishers Group, Norwell and Dordrecht, 1990. |
2001 |
|
2002 |
Authors' Addresses |
2003 |
|
2004 |
François Yergeau |
2005 |
Alis Technologies |
2006 |
100, boul. Alexis-Nihon |
2007 |
Suite 600 |
2008 |
Montréal QC H4M 2P2 |
2009 |
Canada |
2010 |
|
2011 |
Tel: +1 (514) 747-2547 |
2012 |
|
2013 |
|
2014 |
|
2015 |
Expires 18 August 1996 [Page 36] |
2016 |
|
2017 |
Internet Draft HTML internationalization 13 February 1996 |
2018 |
|
2019 |
|
2020 |
Fax: +1 (514) 747-2561 |
2021 |
EMail: fyergeau@alis.com |
2022 |
|
2023 |
|
2024 |
Gavin Thomas Nicol |
2025 |
Electronic Book Technologies, Japan |
2026 |
1-29-9 Tsurumaki, |
2027 |
Setagaya-ku, |
2028 |
Tokyo |
2029 |
Japan |
2030 |
|
2031 |
Tel: +81-3-3230-8161 |
2032 |
Fax: +81-3-3230-8163 |
2033 |
EMail: gtn@ebt.com, gtn@twics.co.jp |
2034 |
|
2035 |
|
2036 |
Glenn Adams |
2037 |
Stonehand |
2038 |
118 Magazine Street |
2039 |
Cambridge, MA 02139 |
2040 |
U.S.A. |
2041 |
|
2042 |
Tel: +1 (617) 864-5524 |
2043 |
Fax: +1 (617) 864-4965 |
2044 |
EMail: glenn@stonehand.com |
2045 |
|
2046 |
|
2047 |
Martin J. Duerst |
2048 |
Multimedia-Laboratory |
2049 |
Departement of Computer Science |
2050 |
University of Zurich |
2051 |
Winterthurerstrasse 190 |
2052 |
CH-8057 Zurich |
2053 |
Switzerland |
2054 |
|
2055 |
Tel: +41 1 257 43 16 |
2056 |
Fax: +41 1 363 00 35 |
2057 |
E-mail: mduerst@ifi.unizh.ch |
2058 |
|
2059 |
|
2060 |
|
2061 |
|
2062 |
|
2063 |
|
2064 |
|
2065 |
|
2066 |
|
2067 |
|
2068 |
|
2069 |
|
2070 |
|
2071 |
Expires 18 August 1996 [Page 37] |
2072 |
|