source: rfc2629xslt/rfc2629xslt.txt @ 754

Last change on this file since 754 was 754, checked in by julian.reschke@…, 10 years ago

Update to latest version of xml2rfc and rfc2629.xslt, bump document dates

  • Property svn:eol-style set to native
File size: 122.5 KB
Line 
1
2
3
4RFC2629 through XSLT                                          J. Reschke
5                                                              greenbytes
6                                                        January 29, 2010
7
8
9            Transforming RFC2629-formatted XML through XSLT
10
11
12
13Table of Contents
14
15   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  4
16   2.  Supported RFC2629 elements . . . . . . . . . . . . . . . . . .  5
17     2.1.   Extension elements  . . . . . . . . . . . . . . . . . . .  5
18   3.  Processing Instructions  . . . . . . . . . . . . . . . . . . .  6
19     3.1.   Supported xml2rfc-compatible PIs  . . . . . . . . . . . .  7
20     3.2.   Unsupported xml2rfc-compatible PIs  . . . . . . . . . . .  8
21     3.3.   Extension PIs . . . . . . . . . . . . . . . . . . . . . .  9
22   4.  Anchors  . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
23   5.  Supported XSLT engines . . . . . . . . . . . . . . . . . . . . 15
24     5.1.   Standalone Engines  . . . . . . . . . . . . . . . . . . . 15
25     5.2.   In-Browser Engines  . . . . . . . . . . . . . . . . . . . 15
26   6.  Transforming to HTML . . . . . . . . . . . . . . . . . . . . . 17
27     6.1.   HTML compliance . . . . . . . . . . . . . . . . . . . . . 17
28     6.2.   Standard HTML LINK elements . . . . . . . . . . . . . . . 17
29     6.3.   Standard HTML metadata  . . . . . . . . . . . . . . . . . 18
30     6.4.   Dublin Core (RFC2731) metadata  . . . . . . . . . . . . . 18
31     6.5.   Experimental hCard support  . . . . . . . . . . . . . . . 18
32   7.  Transforming to XHTML  . . . . . . . . . . . . . . . . . . . . 19
33   8.  Transforming to CHM (Microsoft Compiled Help)  . . . . . . . . 20
34   9.  Transforming to PDF  . . . . . . . . . . . . . . . . . . . . . 21
35     9.1.   Via XSL-FO  . . . . . . . . . . . . . . . . . . . . . . . 21
36       9.1.1.  Extension feature matrix . . . . . . . . . . . . . . . 21
37       9.1.2.  Example: producing output for Apache FOP . . . . . . . 22
38     9.2.   Via X(HTML) . . . . . . . . . . . . . . . . . . . . . . . 22
39   10. Generic Extensions . . . . . . . . . . . . . . . . . . . . . . 23
40     10.1.  <abnf-char-sequence> element  . . . . . . . . . . . . . . 23
41     10.2.  <anchor-alias> element  . . . . . . . . . . . . . . . . . 23
42     10.3.  <bcp14> element . . . . . . . . . . . . . . . . . . . . . 23
43     10.4.  <bb> element  . . . . . . . . . . . . . . . . . . . . . . 24
44     10.5.  <bc> element  . . . . . . . . . . . . . . . . . . . . . . 24
45     10.6.  <blockquote> element  . . . . . . . . . . . . . . . . . . 24
46     10.7.  <boilerplate> element . . . . . . . . . . . . . . . . . . 24
47     10.8.  <bt> element  . . . . . . . . . . . . . . . . . . . . . . 25
48     10.9.  <dfn> element . . . . . . . . . . . . . . . . . . . . . . 25
49     10.10. <h> element . . . . . . . . . . . . . . . . . . . . . . . 25
50     10.11. <highlight> element . . . . . . . . . . . . . . . . . . . 25
51     10.12. <length-of> element . . . . . . . . . . . . . . . . . . . 25
52
53
54
55Reschke                                                         [Page 1]
56
57Documentation             RFC2629 through XSLT              January 2010
58
59
60     10.13. <link> element  . . . . . . . . . . . . . . . . . . . . . 25
61     10.14. <lt> element  . . . . . . . . . . . . . . . . . . . . . . 26
62     10.15. <note> element  . . . . . . . . . . . . . . . . . . . . . 26
63     10.16. <parse-xml> element . . . . . . . . . . . . . . . . . . . 26
64     10.17. <q> element . . . . . . . . . . . . . . . . . . . . . . . 26
65     10.18. <ref> element . . . . . . . . . . . . . . . . . . . . . . 26
66     10.19. <source> element  . . . . . . . . . . . . . . . . . . . . 27
67     10.20. <sup> element . . . . . . . . . . . . . . . . . . . . . . 27
68     10.21. Extensions to Xml2rfc <artwork> element . . . . . . . . . 27
69     10.22. Extensions to Xml2rfc <iref> element  . . . . . . . . . . 27
70     10.23. Extensions to Xml2rfc <list> element  . . . . . . . . . . 28
71     10.24. Extensions to Xml2rfc <rfc> element . . . . . . . . . . . 28
72     10.25. Extensions to Xml2rfc <section> element . . . . . . . . . 28
73     10.26. Extensions to Xml2rfc <xref> element  . . . . . . . . . . 28
74   11. Utilities  . . . . . . . . . . . . . . . . . . . . . . . . . . 30
75     11.1.  Checking References . . . . . . . . . . . . . . . . . . . 30
76     11.2.  Generating Graphs from References . . . . . . . . . . . . 32
77     11.3.  Producing reference entries for books . . . . . . . . . . 32
78     11.4.  Down-converting to RFC2629bis DTD . . . . . . . . . . . . 33
79     11.5.  Extracting artwork  . . . . . . . . . . . . . . . . . . . 33
80     11.6.  GRRDL . . . . . . . . . . . . . . . . . . . . . . . . . . 34
81   12. Informative References . . . . . . . . . . . . . . . . . . . . 35
82   Appendix A.  RELAX NG Compact Schema . . . . . . . . . . . . . . . 37
83   Appendix B.  Implementation Notes  . . . . . . . . . . . . . . . . 47
84     B.1.   Recognized type attributes for <artwork> element  . . . . 47
85   Appendix C.  Examples  . . . . . . . . . . . . . . . . . . . . . . 48
86     C.1.   Using the 'Internal Subset' . . . . . . . . . . . . . . . 48
87     C.2.   Customization . . . . . . . . . . . . . . . . . . . . . . 48
88   Appendix D.  The /rfc/@ipr Attribute . . . . . . . . . . . . . . . 50
89     D.1.   Current Values: '*trust200902'  . . . . . . . . . . . . . 50
90       D.1.1.  trust200902  . . . . . . . . . . . . . . . . . . . . . 50
91       D.1.2.  noModificationTrust200902  . . . . . . . . . . . . . . 51
92       D.1.3.  noDerivativesTrust200902 . . . . . . . . . . . . . . . 51
93       D.1.4.  pre5378Trust200902 . . . . . . . . . . . . . . . . . . 51
94     D.2.   Historic Values . . . . . . . . . . . . . . . . . . . . . 51
95       D.2.1.  Historic Values: '*trust200811'  . . . . . . . . . . . 51
96       D.2.2.  Historic Values: '*3978' . . . . . . . . . . . . . . . 52
97       D.2.3.  Historic Values: '*3667' . . . . . . . . . . . . . . . 52
98       D.2.4.  Historic Values: '*2026' . . . . . . . . . . . . . . . 52
99   Appendix E.  License . . . . . . . . . . . . . . . . . . . . . . . 53
100   Appendix F.  Change Logs . . . . . . . . . . . . . . . . . . . . . 54
101     F.1.   Package . . . . . . . . . . . . . . . . . . . . . . . . . 54
102     F.2.   amazon-asin.xslt  . . . . . . . . . . . . . . . . . . . . 55
103     F.3.   check-references.xslt . . . . . . . . . . . . . . . . . . 55
104     F.4.   gen-reference-graph.xslt  . . . . . . . . . . . . . . . . 56
105     F.5.   rfc2629.xslt  . . . . . . . . . . . . . . . . . . . . . . 56
106     F.6.   rfc2629toFO.xslt  . . . . . . . . . . . . . . . . . . . . 67
107     F.7.   xsl11toAn.xslt  . . . . . . . . . . . . . . . . . . . . . 68
108
109
110
111Reschke                                                         [Page 2]
112
113Documentation             RFC2629 through XSLT              January 2010
114
115
116     F.8.   xsl11toFop.xslt . . . . . . . . . . . . . . . . . . . . . 68
117     F.9.   xsl11toFop-0.95.xslt  . . . . . . . . . . . . . . . . . . 69
118     F.10.  xsl11toXep.xslt . . . . . . . . . . . . . . . . . . . . . 69
119   Index  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
120   Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 78
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167Reschke                                                         [Page 3]
168
169Documentation             RFC2629 through XSLT              January 2010
170
171
1721.  Introduction
173
174   This document describes a set of XSLT transformations that can be
175   used to transform RFC2629-compliant XML (see [RFC2629]) to various
176   output formats, such as HTML and PDF.  The main topics are
177
178   o  compliance to the xml2rfc XML element set (Section 2),
179
180   o  support for xml2rfc processing instructions (Section 3),
181
182   o  the names of anchor elements generated in HTML and PDF output
183      (Section 4),
184
185   o  various XSLT engines that can be used (Section 5),
186
187   o  outputting HTML (Section 6) and XHTML (Section 7),
188
189   o  outputting CHM (Compiled Microsoft Help, Section 8),
190
191   o  outputting PDF (Section 9),
192
193   o  extensions to the xml2rfc vocabulary (Section 10).
194
195   o  various utilities (Section 11).
196
197   The full distribution is available at
198   <http://greenbytes.de/tech/webdav/rfc2629xslt.zip>.
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223Reschke                                                         [Page 4]
224
225Documentation             RFC2629 through XSLT              January 2010
226
227
2282.  Supported RFC2629 elements
229
230   "rfc2629.xslt" supports both all RFC2629 grammar elements and the
231   extensions implemented in xml2rfc 1.33.
232
2332.1.  Extension elements
234
235   "rfc2629.xslt" supports two kind of extension elements, using
236   different XML namespaces.
237
238   The first set contains (hopefully) generally useful extensions, see
239   Section 10.
240
241   The second set is used for change and issue tracking and currently is
242   not documented here.  Please email the author in case you're
243   interested in using these extensions.
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279Reschke                                                         [Page 5]
280
281Documentation             RFC2629 through XSLT              January 2010
282
283
2843.  Processing Instructions
285
286   All PIs can be set as XSLT parameter as well, overriding any value
287   that is found in the source file to be transformed.
288
289   Using processing instructions:
290
291   <?rfc toc="yes"?>
292   <?rfc-ext support-rfc2731="no"?>
293
294   Using XSLT parameters (Saxon):
295
296   java -cp saxon.jar com.icl.saxon.StyleSheet source.xml rfc2629.xslt \
297     xml2rfc-toc=yes xml2rfc-ext-support-rfc2731=no > result.html
298
299   Using XSLT parameters (xsltproc):
300
301   xsltproc --param xml2rfc-toc '"yes"' \
302      --param xml2rfc-ext-support-rfc2731 '"no"' \
303      rfc2629.xslt source.xml > result.html
304
305   (note the required quoting of string parameters)
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335Reschke                                                         [Page 6]
336
337Documentation             RFC2629 through XSLT              January 2010
338
339
3403.1.  Supported xml2rfc-compatible PIs
341
342   +------+--------------+------------------+------------+-------------+
343   | PI   | PI           | XSLT parameter   | default    | comment     |
344   | targ | pseudo-attri | name             |            |             |
345   | et   | bute         |                  |            |             |
346   +------+--------------+------------------+------------+-------------+
347   | rfc  | background   | xml2rfc-backgrou | (not set)  |             |
348   |      |              | nd               |            |             |
349   |      |              |                  |            |             |
350   | rfc  | compact      | xml2rfc-compact  | "no"       | only        |
351   |      |              |                  |            | applies to  |
352   |      |              |                  |            | HTML output |
353   |      |              |                  |            | method when |
354   |      |              |                  |            | printing    |
355   |      |              |                  |            |             |
356   | rfc  | comments     | xml2rfc-comments | (not set)  |             |
357   |      |              |                  |            |             |
358   | rfc  | editing      | xml2rfc-editing  | "no"       |             |
359   |      |              |                  |            |             |
360   | rfc  | footer       | xml2rfc-footer   | (not set)  |             |
361   |      |              |                  |            |             |
362   | rfc  | header       | xml2rfc-header   | (not set)  |             |
363   |      |              |                  |            |             |
364   | rfc  | inline       | xml2rfc-inline   | (not set)  |             |
365   |      |              |                  |            |             |
366   | rfc  | iprnotified  | xml2rfc-iprnotif | "no"       |             |
367   |      |              | ied              |            |             |
368   |      |              |                  |            |             |
369   | rfc  | linkmailto   | xml2rfc-linkmail | "yes"      |             |
370   |      |              | to               |            |             |
371   |      |              |                  |            |             |
372   | rfc  | private      | xml2rfc-private  | (not set)  |             |
373   |      |              |                  |            |             |
374   | rfc  | refparent    | xml2rfc-private  | "Reference | Title for   |
375   |      |              |                  | s"         | References  |
376   |      |              |                  |            | sections    |
377   |      |              |                  |            | when        |
378   |      |              |                  |            | automatical |
379   |      |              |                  |            | ly inserted |
380   |      |              |                  |            |             |
381   | rfc  | rfcedstyle   | xml2rfc-rfcedsty | (not set)  | (limited    |
382   |      |              | le               |            | support)    |
383   |      |              |                  |            |             |
384   | rfc  | sortrefs     | xml2rfc-sortrefs | "no"       |             |
385   |      |              |                  |            |             |
386
387
388
389
390
391Reschke                                                         [Page 7]
392
393Documentation             RFC2629 through XSLT              January 2010
394
395
396   | rfc  | symrefs      | xml2rfc-symrefs  | "yes"      | The default |
397   |      |              |                  |            | has changed |
398   |      |              |                  |            | from "no"   |
399   |      |              |                  |            | to "yes" as |
400   |      |              |                  |            | of June 6,  |
401   |      |              |                  |            | 2007 and    |
402   |      |              |                  |            | xml2rfc     |
403   |      |              |                  |            | 1.33pre4.   |
404   |      |              |                  |            |             |
405   | rfc  | toc          | xml2rfc-toc      | "no"       |             |
406   |      |              |                  |            |             |
407   | rfc  | tocdepth     | xml2rfc-tocdepth | 99         |             |
408   |      |              |                  |            |             |
409   | rfc  | topblock     | xml2rfc-topblock | "yes"      |             |
410   +------+--------------+------------------+------------+-------------+
411
4123.2.  Unsupported xml2rfc-compatible PIs
413
414   +--------+------------------+---------------------------------------+
415   | PI     | PI               | comment                               |
416   | target | pseudo-attribute |                                       |
417   +--------+------------------+---------------------------------------+
418   | rfc    | include          | incompatible with XML/XSLT processing |
419   |        |                  | model, please use external entities   |
420   |        |                  | instead                               |
421   |        |                  |                                       |
422   | rfc    | needLines        |                                       |
423   |        |                  |                                       |
424   | rfc    | slides           |                                       |
425   |        |                  |                                       |
426   | rfc    | strict           |                                       |
427   |        |                  |                                       |
428   | rfc    | subcompact       |                                       |
429   |        |                  |                                       |
430   | rfc    | tocindent        | (defaults to "yes")                   |
431   |        |                  |                                       |
432   | rfc    | tocompact        |                                       |
433   +--------+------------------+---------------------------------------+
434
435
436
437
438
439
440
441
442
443
444
445
446
447Reschke                                                         [Page 8]
448
449Documentation             RFC2629 through XSLT              January 2010
450
451
4523.3.  Extension PIs
453
454   +------+-----------------+-----------------------+------+-----------+
455   | PI   | PI              | XSLT parameter name   | defa | descripti |
456   | targ | pseudo-attribut |                       | ult  | on        |
457   | et   | e               |                       |      |           |
458   +------+-----------------+-----------------------+------+-----------+
459   | rfc- | allow-markup-in | xml2rfc-allow-markup- | "no" | Enables   |
460   | ext  | -artwork        | in-artwork            |      | support   |
461   |      |                 |                       |      | for       |
462   |      |                 |                       |      | specific  |
463   |      |                 |                       |      | elements  |
464   |      |                 |                       |      | inside    |
465   |      |                 |                       |      | abstract  |
466   |      |                 |                       |      | elements  |
467   |      |                 |                       |      | (using    |
468   |      |                 |                       |      | this      |
469   |      |                 |                       |      | extension |
470   |      |                 |                       |      | makes the |
471   |      |                 |                       |      | document  |
472   |      |                 |                       |      | incompati |
473   |      |                 |                       |      | ble to    |
474   |      |                 |                       |      | the       |
475   |      |                 |                       |      | RFC2629bi |
476   |      |                 |                       |      | s DTD;    |
477   |      |                 |                       |      | see       |
478   |      |                 |                       |      | descripti |
479   |      |                 |                       |      | on of     |
480   |      |                 |                       |      | conversio |
481   |      |                 |                       |      | n XSLT in |
482   |      |                 |                       |      | Section 1 |
483   |      |                 |                       |      | 1.4).     |
484   |      |                 |                       |      |           |
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503Reschke                                                         [Page 9]
504
505Documentation             RFC2629 through XSLT              January 2010
506
507
508   | rfc- | authors-section | xml2rfc-ext-authors-s |      | When      |
509   | ext  |                 | ection                |      | "end",    |
510   |      |                 |                       |      | place the |
511   |      |                 |                       |      | authors   |
512   |      |                 |                       |      | section   |
513   |      |                 |                       |      | at the    |
514   |      |                 |                       |      | end (just |
515   |      |                 |                       |      | before    |
516   |      |                 |                       |      | the       |
517   |      |                 |                       |      | copyright |
518   |      |                 |                       |      | statement |
519   |      |                 |                       |      | s). This  |
520   |      |                 |                       |      | seems to  |
521   |      |                 |                       |      | be the    |
522   |      |                 |                       |      | preferred |
523   |      |                 |                       |      | order in  |
524   |      |                 |                       |      | the       |
525   |      |                 |                       |      | newest    |
526   |      |                 |                       |      | RFCs.     |
527   |      |                 |                       |      |           |
528   | rfc- | duplex          | xml2rfc-ext-duplex    | no   | When set  |
529   | ext  |                 |                       |      | to "yes", |
530   |      |                 |                       |      | format    |
531   |      |                 |                       |      | the PDF   |
532   |      |                 |                       |      | output    |
533   |      |                 |                       |      | for       |
534   |      |                 |                       |      | doublesid |
535   |      |                 |                       |      | ed        |
536   |      |                 |                       |      | printing. |
537   |      |                 |                       |      |           |
538   | rfc- | include-referen | xml2rfc-ext-include-r |      | When set  |
539   | ext  | ces-in-index    | eferences-in-index    |      | to "yes", |
540   |      |                 |                       |      | index     |
541   |      |                 |                       |      | entries   |
542   |      |                 |                       |      | are       |
543   |      |                 |                       |      | generated |
544   |      |                 |                       |      | for all   |
545   |      |                 |                       |      | reference |
546   |      |                 |                       |      | s.        |
547   |      |                 |                       |      |           |
548
549
550
551
552
553
554
555
556
557
558
559Reschke                                                        [Page 10]
560
561Documentation             RFC2629 through XSLT              January 2010
562
563
564   | rfc- | justification   | xml2rfc-ext-justifica | "nev | "never":  |
565   | ext  |                 | tion                  | er"  | never     |
566   |      |                 |                       |      | emit      |
567   |      |                 |                       |      | justified |
568   |      |                 |                       |      | text,     |
569   |      |                 |                       |      | "always": |
570   |      |                 |                       |      | always    |
571   |      |                 |                       |      | emit      |
572   |      |                 |                       |      | justified |
573   |      |                 |                       |      | text,     |
574   |      |                 |                       |      | "print":  |
575   |      |                 |                       |      | only emit |
576   |      |                 |                       |      | justified |
577   |      |                 |                       |      | text for  |
578   |      |                 |                       |      | print     |
579   |      |                 |                       |      | media.    |
580   |      |                 |                       |      |           |
581   | rfc- | parse-xml-in-ar | xml2rfc-parse-xml-in- | "no" | May be    |
582   | ext  | twork           | artwork               |      | used to   |
583   |      |                 |                       |      | enable    |
584   |      |                 |                       |      | parsing   |
585   |      |                 |                       |      | of XML    |
586   |      |                 |                       |      | content   |
587   |      |                 |                       |      | in        |
588   |      |                 |                       |      | figures   |
589   |      |                 |                       |      | (MSXML    |
590   |      |                 |                       |      | only).    |
591   |      |                 |                       |      |           |
592   | rfc- | support-rfc2731 | xml2rfc-ext-support-r | "yes | Decides   |
593   | ext  |                 | fc2731                | "    | whether   |
594   |      |                 |                       |      | the HTML  |
595   |      |                 |                       |      | transform |
596   |      |                 |                       |      | ation     |
597   |      |                 |                       |      | should    |
598   |      |                 |                       |      | generate  |
599   |      |                 |                       |      | META tags |
600   |      |                 |                       |      | according |
601   |      |                 |                       |      | Section 6 |
602   |      |                 |                       |      | .4.       |
603   |      |                 |                       |      |           |
604
605
606
607
608
609
610
611
612
613
614
615Reschke                                                        [Page 11]
616
617Documentation             RFC2629 through XSLT              January 2010
618
619
620   | rfc- | sec-no-trailing | xml2rfc-ext-sec-no-tr |      | When set  |
621   | ext  | -dots           | ailing-dots           |      | to "yes", |
622   |      |                 |                       |      | add       |
623   |      |                 |                       |      | trailing  |
624   |      |                 |                       |      | dots to   |
625   |      |                 |                       |      | section   |
626   |      |                 |                       |      | numbers.  |
627   |      |                 |                       |      | This      |
628   |      |                 |                       |      | seems to  |
629   |      |                 |                       |      | be the    |
630   |      |                 |                       |      | preferred |
631   |      |                 |                       |      | format in |
632   |      |                 |                       |      | the       |
633   |      |                 |                       |      | newest    |
634   |      |                 |                       |      | RFCs.     |
635   +------+-----------------+-----------------------+------+-----------+
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671Reschke                                                        [Page 12]
672
673Documentation             RFC2629 through XSLT              January 2010
674
675
6764.  Anchors
677
678   The transformation automatically generates anchors that are supposed
679   to be stable and predictable and that can be used to identify
680   specific parts of the document.  Anchors are generated both in HTML
681   and XSL-FO content (but the latter will only be used for PDF output
682   when the XSL-FO engine supports producing PDF anchors).
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727Reschke                                                        [Page 13]
728
729Documentation             RFC2629 through XSLT              January 2010
730
731
732                 The following anchors get auto-generated:
733
734     +-----------------------+---------------------------------------+
735     | Anchor name           | Description                           |
736     +-----------------------+---------------------------------------+
737     | rfc.abstract          | Abstract                              |
738     |                       |                                       |
739     | rfc.authors           | Authors section                       |
740     |                       |                                       |
741     | rfc.copyright         | Copyright section                     |
742     |                       |                                       |
743     | rfc.copyrightnotice   | Copyright notice                      |
744     |                       |                                       |
745     | rfc.figure._n_        | Figures (titled)                      |
746     |                       |                                       |
747     | rfc.figure.u._n_      | Figures (untitled)                    |
748     |                       |                                       |
749     | rfc.index             | Index                                 |
750     |                       |                                       |
751     | rfc.ipr               | Intellectual Property                 |
752     |                       |                                       |
753     | rfc.iref._n_          | Internal references                   |
754     |                       |                                       |
755     | rfc.note._n_          | Notes (from front section)            |
756     |                       |                                       |
757     | rfc.references        | References                            |
758     |                       |                                       |
759     | rfc.references._n_    | Additional references                 |
760     |                       |                                       |
761     | rfc.section._n_       | Section _n_                           |
762     |                       |                                       |
763     | rfc.section._n_.p._m_ | Section _n_, paragraph _m_            |
764     |                       |                                       |
765     | rfc.status            | Status of memo                        |
766     |                       |                                       |
767     | rfc.table._n_         | Tables (titled)                       |
768     |                       |                                       |
769     | rfc.table.u._n_       | Tables (untitled)                     |
770     |                       |                                       |
771     | rfc.toc               | Table of contents                     |
772     |                       |                                       |
773     | rfc.xref._name_._n_   | References to reference _n_ to _name_ |
774     +-----------------------+---------------------------------------+
775
776
777
778
779
780
781
782
783Reschke                                                        [Page 14]
784
785Documentation             RFC2629 through XSLT              January 2010
786
787
7885.  Supported XSLT engines
789
790   The transformation requires a non-standard extension function (see
791   exsl:node-set [1]) which is however widely available.  XSLT
792   processors that do not support this extension (or a functional
793   equivalent) currently are not supported.
794
7955.1.  Standalone Engines
796
797   The following XSLT engines are believed to work well:
798
799   o  Windows: MSXML3 and MSXML4 (<http://msdn.microsoft.com/xml>;
800      command line processor "msxsl" is available from Microsoft
801      Download Center [2])
802
803   o  Java: Saxon (<http://saxon.sourceforge.net/>)
804
805   o  Java: Xalan (<http://xml.apache.org/xalan-j/>)
806
807   o  C/C++: xsltproc (libxslt) (<http://xmlsoft.org/XSLT/>, make sure
808      that you have a current version)
809
8105.2.  In-Browser Engines
811
812   The following browsers seem to work fine:
813
814   o  Internet Explorer 5.5 (Windows version, if MSXML3 is installed)
815
816   o  Internet Explorer 6 and newer
817
818   o  Firefox 3.0 and newer
819
820
821      *  Be aware that XSLT execution can be suppressed using
822         NoScript [3]
823
824      *  Firefox does not load external DTDs nor external entities, see
825         Mozilla Bug 22942 [4], thus entities like &nbsp; need to be
826         declared in the internal subset (Appendix C.1)
827
828   o  Safari 3 (starting with version 3.0.4)
829
830   o  Google Chrome (beta available)
831
832   o  Opera 10 (beta version available)
833
834   The following browsers are known not to work properly:
835
836
837
838
839Reschke                                                        [Page 15]
840
841Documentation             RFC2629 through XSLT              January 2010
842
843
844   o  Firefox 1.*/2.*: (missing extension function - see change request
845      at Mozilla BugZilla 193678 [5])
846
847   o  Opera 9.21: execution fails, potentially to a somewhat complex
848      XPath expression (reported to Opera as bug 245725).
849
850   o  Opera 9.5 and 9.6: transformation appears to work, but CSS isn't
851      getting applied (reported to Opera as bug 337388 on 2008-06-12).
852
853   o  Safari 2.* supports client-side XSLT as of MacOS X 10.4, but
854      misses required extension functions.  A problem with stylesheets
855      producing non-ASCII output (such as NBSP characters) has been
856      fixed as of OSX 10.4.4.  Both problems have been reported through
857      Apple's bug tracking system, see <http://drakken.dbc.mtview.ca.us/
858      pipermail/xml2rfc/2005-May/002073.html> and
859      <http://bugs.webkit.org/show_bug.cgi?id=4079>.
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895Reschke                                                        [Page 16]
896
897Documentation             RFC2629 through XSLT              January 2010
898
899
9006.  Transforming to HTML
901
902   Transformation to HTML can be done inside the browser if it supports
903   XSLT.  To enable this, add the following processing instruction to
904   the start of the source file:
905
906     <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
907
908   (and ensure that "rfc2629.xslt" is present).
909
9106.1.  HTML compliance
911
912   The transformation result is supposed to conform to the HTML 4.01
913   strict DTD [HTML].  This can be checked using the W3C's online
914   validator at <http://validator.w3.org>.
915
9166.2.  Standard HTML LINK elements
917
918   LINK elements exist since HTML 2.0.  They can be used to embed
919   content-independant links inside the document.  Unfortunately, only
920   few user agents support this element.  Firefox users may want to
921   check the Link Widgets [6] extension.
922
923                 The following LINK elements are produced:
924
925   +-----------+-------------------------------------------------------+
926   | LINK type | description                                           |
927   +-----------+-------------------------------------------------------+
928   | alternate | for RFCs, a link to the authorative ASCII version on  |
929   |           | the IETF web site                                     |
930   |           |                                                       |
931   | appendic  | pointer to all top-level appendics                    |
932   |           |                                                       |
933   | author    | pointer to "authors" section                          |
934   |           |                                                       |
935   | chapter   | pointer to all top-level sections                     |
936   |           |                                                       |
937   | contents  | pointer to table of contents                          |
938   |           |                                                       |
939   | copyright | pointer to copyright statement                        |
940   |           |                                                       |
941   | index     | pointer to index                                      |
942   +-----------+-------------------------------------------------------+
943
944   The figure below shows how Mozilla Firefox 1.0 displays the Site
945   Navigation Bar for rfc2396.xml.
946
947
948
949
950
951Reschke                                                        [Page 17]
952
953Documentation             RFC2629 through XSLT              January 2010
954
955
9566.3.  Standard HTML metadata
957
958          The following standard HTML META elements are produced:
959
960      +-----------+-------------------------------------------------+
961      | META name | description                                     |
962      +-----------+-------------------------------------------------+
963      | generator | from XSLT engine version and stylesheet version |
964      |           |                                                 |
965      | keywords  | from keyword elements in front section          |
966      +-----------+-------------------------------------------------+
967
9686.4.  Dublin Core (RFC2731) metadata
969
970   Unless turned off using the "rfc-ext support-rfc2731" processing
971   instruction, the transformation will generate metadata according to
972   [RFC2731] and [DC-HTML].
973
974                The following DCMI properties are produced:
975
976   +-------------------------+-----------------------------------------+
977   | META name               | description                             |
978   +-------------------------+-----------------------------------------+
979   | DC.Creator              | from author information in front        |
980   |                         | section                                 |
981   |                         |                                         |
982   | DC.Date.Issued          | from date information in front section  |
983   |                         |                                         |
984   | DC.Description.Abstract | from abstract                           |
985   |                         |                                         |
986   | DC.Identifier           | document URN [RFC2648] from "docName"   |
987   |                         | attribute                               |
988   |                         |                                         |
989   | DC.isPartOf             | RFC ISSN (for RFCs)                     |
990   |                         |                                         |
991   | DC.Relation.Replaces    | from "obsoletes" attribute              |
992   +-------------------------+-----------------------------------------+
993
9946.5.  Experimental hCard support
995
996   The generated author information is formatted in hCard [7] format.
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007Reschke                                                        [Page 18]
1008
1009Documentation             RFC2629 through XSLT              January 2010
1010
1011
10127.  Transforming to XHTML
1013
1014   Transforming to XHTML requires slightly different XSLT output options
1015   and is implemented by the derived transformation script
1016   "rfc2629toXHTML.xslt".
1017
1018      Note: Microsoft Internet Explorer does _not_ support XHTML.
1019      Therefore it usually makes more sense to generate plain old HTML.
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063Reschke                                                        [Page 19]
1064
1065Documentation             RFC2629 through XSLT              January 2010
1066
1067
10688.  Transforming to CHM (Microsoft Compiled Help)
1069
1070   To generate a CHM file using Microsoft's HTML Help Compiler (hhc),
1071   three files are required in addition to the HTML file.
1072
1073   1.  hhc - table of contents file (HTML)
1074
1075   2.  hhk - index file (HTML)
1076
1077   3.  hhp - project file (plain text)
1078
1079   The three files are generated with three specific transformations,
1080   each requiring the additional XSLT parameter "basename" to specify
1081   the filename prefix.
1082
1083   Example:
1084
1085   saxon rfc2616.xml rfc2629toHhp.xslt basename=rfc2616  > rfc2616.hhp
1086   saxon rfc2616.xml rfc2629toHhc.xslt basename=rfc2616  > rfc2616.hhc
1087   saxon rfc2616.xml rfc2629toHhk.xslt basename=rfc2616  > rfc2616.hhk
1088   hhc rfc2616.hhp
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119Reschke                                                        [Page 20]
1120
1121Documentation             RFC2629 through XSLT              January 2010
1122
1123
11249.  Transforming to PDF
1125
11269.1.  Via XSL-FO
1127
1128   Transformation to XSL-FO [XSL-FO] format is available through
1129   "rfc2629toFO.xslt" (which includes "rfc2629.xslt", so keep both in
1130   the same folder).
1131
1132   Compared to HTML user agents, XSL-FO engines unfortunately either
1133   come as open source (for instance, Apache FOP) or feature-complete
1134   (for instance, AntennaHouse XSL Formatter), but not both at the same
1135   time.
1136
1137   As Apache FOP needs special workarounds (page breaking, table
1138   layout), and some popular extensions aren't standardized yet, the
1139   translation produces a generic output (hopefully) conforming to
1140   [XSL-FO].  Specific backends ("xsl11toFop-0.95xslt",
1141   "xsl11toXep.xslt", "xsl11toAn.xslt") then provide post-processing for
1142   the individual processors.
1143
1144      Note: the output is currently targeted at Apache FOP 0.95.
1145
11469.1.1.  Extension feature matrix
1147
1148   +------------+-------------+------------+-------------+-------------+
1149   |            | PDF anchors |     PDF    |     PDF     |    Index    |
1150   |            |             |  bookmarks |   document  |   cleanup   |
1151   |            |             |            | information |             |
1152   +------------+-------------+------------+-------------+-------------+
1153   | XSL 1.1    | no, but can |     yes    |   no, but   |     yes     |
1154   | WD [8]     |      be     |            |   uses XEP  |             |
1155   |            | auto-genera |            |    output   |             |
1156   |            |   ted from  |            |  extensions |             |
1157   |            |     "id"    |            |             |             |
1158   |            |  attributes |            |             |             |
1159   |            |             |            |             |             |
1160   | Antenna    |      no     |  yes [10]  |   yes [10]  |   yes [10]  |
1161   | House XSL  |             |  (from XSL |  (from XEP  |  (just page |
1162   | formatter  |             |     1.1    |   document  |  duplicate  |
1163   | [9]        |             | bookmarks) |    info)    | elimination |
1164   |            |             |            |             |  , from XSL |
1165   |            |             |            |             |   1.1 page  |
1166   |            |             |            |             |    index)   |
1167   |            |             |            |             |             |
1168   | Apache     |     yes     |  yes (from |     yes     |      no     |
1169   | FOP [11]   |             |   XSL 1.1  |             |             |
1170   |            |             | bookmarks) |             |             |
1171   |            |             |            |             |             |
1172
1173
1174
1175Reschke                                                        [Page 21]
1176
1177Documentation             RFC2629 through XSLT              January 2010
1178
1179
1180   | RenderX    |      no     |  yes [13]  |   yes [13]  |   yes [13]  |
1181   | XEP [12]   |             |  (from XSL |             |  (from XSL  |
1182   |            |             |     1.1    |             |   1.1 page  |
1183   |            |             | bookmarks) |             |    index)   |
1184   +------------+-------------+------------+-------------+-------------+
1185
11869.1.2.  Example: producing output for Apache FOP
1187
1188   Example:
1189
1190   saxon rfc2616.xml rfc2629toFo.xslt > tmp.fo
1191   saxon tmp.fo xsl11toFop-0.95.xslt > rfc2629.fo
1192
11939.2.  Via X(HTML)
1194
1195   PDF output can also be produced directly from (X)HTML.  One simple
1196   approach is to rely on the browser's printing function, and to use a
1197   printer driver that produces PDF.  Depending on the brower's CSS
1198   capabilities, the output will behave properly with respect to table
1199   breaks etc.
1200
1201   An alternative is PrinceXML (see <http://www.princexml.com/>), which
1202   can produce PDF directly from (X)HTML input, based on the CSS
1203   printing information.
1204
1205   For instance, PDF output with text justification turned on can be
1206   produced with:
1207
1208   saxon input.xml rfc2629toXHTML.xslt xml2rfc-ext-justification=print \
1209     > output.xhtml
1210   prince output.xhtml output.pdf
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231Reschke                                                        [Page 22]
1232
1233Documentation             RFC2629 through XSLT              January 2010
1234
1235
123610.  Generic Extensions
1237
1238   This section documents extensions implemented in "rfc2629.xslt",
1239   using the extension namespace "http://purl.org/net/xml2rfc/ext".
1240
124110.1.  <abnf-char-sequence> element
1242
1243   Converts the contained quoted string into a hex-encoded character
1244   sequence, for use in case-sensitive ABNF productions.
1245
1246   For instance, "<x:abnf-char-sequence>"HTTP"</x:abnf-char-sequence>"
1247   gets converted to "%x48.54.54.50".
1248
124910.2.  <anchor-alias> element
1250
1251   Using its "value" attribute, this element allows the definition of an
1252   internal link target alias for the enclosing element.  This alias can
1253   then be used with the <ref> element for intra-document references.
1254
1255   Note that the anchor alias is not subject to the naming constraints
1256   that apply to anchor elements (which are XML names).
1257
125810.3.  <bcp14> element
1259
1260   This element marks the content as being one of the normative keywords
1261   defined in [RFC2119].
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287Reschke                                                        [Page 23]
1288
1289Documentation             RFC2629 through XSLT              January 2010
1290
1291
1292   The DOCTYPE definition below allows using these keywords using XML
1293   entity expansion: such as in "...server &MUST; accept...".
1294
1295   <!DOCTYPE rfc [
1296    <!ENTITY MAY "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1297      >MAY</bcp14>">
1298    <!ENTITY MUST "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1299      >MUST</bcp14>">
1300    <!ENTITY MUST-NOT "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1301      >MUST NOT</bcp14>">
1302    <!ENTITY OPTIONAL "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1303      >OPTIONAL</bcp14>">
1304    <!ENTITY RECOMMENDED "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1305      >RECOMMENDED</bcp14>">
1306    <!ENTITY REQUIRED "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1307      >REQUIRED</bcp14>">
1308    <!ENTITY SHALL "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1309      >SHALL</bcp14>">
1310    <!ENTITY SHALL-NOT "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1311      >SHALL NOT</bcp14>">
1312    <!ENTITY SHOULD "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1313      >SHOULD</bcp14>">
1314    <!ENTITY SHOULD-NOT "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1315      >SHOULD NOT</bcp14>">]>
1316
131710.4.  <bb> element
1318
1319   Marking up a string as <bb> indicates that it represents the bottom
1320   line of a box drawing, replacing the "+" and "-" characters
1321   accordingly.
1322
132310.5.  <bc> element
1324
1325   Marking up a string as <bc> indicates that it represents a center
1326   line of a box drawing, replacing the "|" character accordingly.
1327
132810.6.  <blockquote> element
1329
1330   This element is like the "blockquote" element in [HTML] (note this is
1331   a block-level element!).  It should contain one or more <t> child
1332   elements.
1333
133410.7.  <boilerplate> element
1335
1336   Can be used to include boilerplate (status, copyright, ...) into the
1337   front or back section. <section> elements within <x:boilerplate>
1338   appear as unnumbered sections in the output.
1339
1340
1341
1342
1343Reschke                                                        [Page 24]
1344
1345Documentation             RFC2629 through XSLT              January 2010
1346
1347
1348   _This element currently can not be "down-translated" for use in
1349   xml2rfc!_
1350
135110.8.  <bt> element
1352
1353   Marking up a string as <bt> indicates that it represents the top line
1354   of a box drawing, replacing the "+" and "-" characters accordingly.
1355
135610.9.  <dfn> element
1357
1358   This element is like the "dfn" element in [HTML].
1359
136010.10.  <h> element
1361
1362   This element is like the "h" element in [XHTML2].
1363
136410.11.  <highlight> element
1365
1366   Used to highlight text passages, currently only allowed in <artwork>.
1367
1368   Note: this is stripped when generating input for xml2rfc, so please
1369   use with care.
1370
137110.12.  <length-of> element
1372
1373   This element can be used to insert the length of another formatted
1374   section (in decimal).
1375
1376   Example: computing the Content-Length header value
1377
1378   <artwork>
1379   ...
1380   Content-Length: <x:length-of target="req"/>
1381
1382   <x:span anchor="req">123456789
1383   <x:span><artwork/>
1384
1385   The lenght computation counts line ends as two characters (CRLF).
1386
1387   Note that indentation characters in artwork _will_ be counted.  The
1388   "indented" attribute allows to specify the amount of indentation to
1389   be substracted from the computed length.
1390
139110.13.  <link> element
1392
1393   This element can be added as a top-level child element below <rfc> to
1394   indicate additional link information.  It's currently used only when
1395   generating HTML output, in which case an HTML <link> element with
1396
1397
1398
1399Reschke                                                        [Page 25]
1400
1401Documentation             RFC2629 through XSLT              January 2010
1402
1403
1404   identical attributes gets generated.
1405
1406   Example: generating HTML link element
1407
1408           <x:link xmlns="http://purl.org/net/xml2rfc/ext"
1409               rel="Bookmark"
1410               title="IETF WEBDAV Working Group"
1411               href="http://ftp.ics.uci.edu/pub/ietf/webdav/"/>
1412
141310.14.  <lt> element
1414
1415   Used for grouping multiple <t> elements into a single list item.
1416
141710.15.  <note> element
1418
1419   Can be used to add a note, usually indented by a few characters.  It
1420   should contain one or more <t> child elements.
1421
142210.16.  <parse-xml> element
1423
1424   This element instructs the processor to parse the contents as XML and
1425   to warn when there's a problem (requires either MSXML or Saxon8 or
1426   newer).
1427
142810.17.  <q> element
1429
1430   This element is like the "q" element in [HTML].
1431
143210.18.  <ref> element
1433
1434   This element is a simplified variant of the <xref> element, in that
1435   no "target" attribute needs to be specified, instead the text
1436   contents acts as identifier.  That in itself wouldn't be terribly
1437   useful, but together with the <anchor-alias>, it allows referring to
1438   other parts of the document with minimal additional markup.
1439
1440   For instance, given an alias definition such as
1441
1442         <section title="Test" anchor="test">
1443           <x:anchor-alias value="alias1"/>
1444           <x:anchor-alias value="alias 2"/>
1445           ...
1446         </section>
1447
1448   the following simple references
1449
1450         <x:ref>test</x:ref>
1451         <x:ref>alias1</x:ref>
1452
1453
1454
1455Reschke                                                        [Page 26]
1456
1457Documentation             RFC2629 through XSLT              January 2010
1458
1459
1460         <x:ref>alias 2</x:ref>
1461
1462   are equivalent to...:
1463
1464         <xref target="test">test</xref>
1465         <xref target="test">alias1</xref>
1466         <xref target="test">alias 2</xref>
1467
146810.19.  <source> element
1469
1470   Can be used to enhance a <reference> with information about the
1471   location for the XML source.  This can be used by the <xref>
1472   processing code to automatically extract the target section number.
1473
1474   For example:
1475
1476         ...
1477         <xref target="RFC2616" x:fmt="of" x:rel="#PUT" />
1478         ...
1479
1480         <reference target="RFC2616"/>
1481           ...
1482           <x:source href="rfc2616.xml"/>
1483           ...
1484
148510.20.  <sup> element
1486
1487   This element is like the "sup" element in [HTML].
1488
1489   Note: the down conversion to RFC2629 format replaces "x^y" by "x^y".
1490
149110.21.  Extensions to Xml2rfc <artwork> element
1492
1493   Sometimes, artwork occurs inside lists.  To get it indent properly in
1494   xml2rfc's text output, it needs to be indented in the source.  This
1495   is sub-optimal, as this whitespace will also appear in the HTML
1496   output, where it's already indented due to HTML's semantics.
1497
1498   As a workaround, a "x:indent-with" attribute can be specified,
1499   containing a string that will be prepended to each line when
1500   "clean-for-DTD.xslt" is run (see Section 11.4).
1501
150210.22.  Extensions to Xml2rfc <iref> element
1503
1504   The extension attribute below is allowed on the standard <iref>
1505   element:
1506
1507
1508
1509
1510
1511Reschke                                                        [Page 27]
1512
1513Documentation             RFC2629 through XSLT              January 2010
1514
1515
1516   o  x:for-anchor specifies that the <iref> will also be automatically
1517      inserted whenever the specified anchor is cross-referenced -- this
1518      may save entering lots of <iref> instances.  As a special case, a
1519      value of "" (empty string) refers to the anchor attribute of the
1520      closest ancestor.
1521
152210.23.  Extensions to Xml2rfc <list> element
1523
1524   The extension attribute below is allowed on the standard <list>
1525   element:
1526
1527   o  x:indent specifies the amount of indentation for list items in
1528      hanging lists.  This can be useful when the output format, such as
1529      XSL-FO, does not support automatical formatting.  The value takes
1530      an XSL-FO width, such as "5em".  The default is _length of longest
1531      label in characters_ times _0.8em_.
1532
1533   Also, the <list> element can take <x:lt> child elements instead of
1534   <t>, allowing to insert multiple paragraphs into a single list item.
1535
153610.24.  Extensions to Xml2rfc <rfc> element
1537
1538   The extension attributes below are allowed on the standard <rfc>
1539   element:
1540
1541   o  grddl:transformation can be used to reference a GRDDL transform.
1542
1543   o  x:maturiy-level can be used to specify the IETF Standards Track
1544      Maturity Level of "proposed", "draft" or "internet" (see Section
1545      4.1 of [RFC2026]).
1546
154710.25.  Extensions to Xml2rfc <section> element
1548
1549   The extension attribute below is allowed on the standard <list>
1550   element:
1551
1552   o  x:fixed-section-number can be used to specify a fixed section
1553      number.  This can be useful when formatting historic documents
1554      that used a different numbering style.
1555
155610.26.  Extensions to Xml2rfc <xref> element
1557
1558   Three extension attributes are allowed on the standard <xref>
1559   element:
1560
1561   1.  x:sec can be specified to point to a specific section of the
1562       referenced document,
1563
1564
1565
1566
1567Reschke                                                        [Page 28]
1568
1569Documentation             RFC2629 through XSLT              January 2010
1570
1571
1572   2.  x:rel may specify a relative reference to use when linking into
1573       the referenced document (if linking by section number is not
1574       available),
1575
1576   3.  x:fmt defines the text format to be used.
1577
1578   The following formats are defined for the x:fmt attribute:
1579
1580   , (Comma)  [_reference_], Section _sec_
1581
1582   () [_reference_] (Section _sec_)
1583
1584   anchor  Like the default format, but without brackets.
1585
1586   of Section _sec_ of [_reference_]
1587
1588   number  _sec_
1589
1590   none  No output (can be used to have xrefs to references without
1591      having them rendered as such)
1592
1593   sec  Section _sec_
1594
1595   These extensions are currently only supported for <xref> elements
1596   without child nodes.
1597
1598   If the processor knows how to reference the target section, it will
1599   generate a link directly to the target section, such as in [RFC2119],
1600   Section 5.
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623Reschke                                                        [Page 29]
1624
1625Documentation             RFC2629 through XSLT              January 2010
1626
1627
162811.  Utilities
1629
163011.1.  Checking References
1631
1632   "check-references.xslt" can be used to check all references to RFC-
1633   and ID-series IETF publications and to W3C publications (note this
1634   script requires local copies of
1635   <ftp://ftp.isi.edu/in-notes/rfc-index.xml> and
1636   <http://www.w3.org/2002/01/tr-automation/tr.rdf> and will use the XML
1637   status information provided at <http://tools.ietf.org/>).
1638
1639   If the document is supposed to be published on the IETF standards
1640   track, the desired level can be specified using the parameter
1641   "intended-level" as 'proposed', 'draft' or 'internet'.
1642   Alternatively, it can be specified inside the document using the
1643   attribute x:maturity-level on the <rfc> element.
1644
1645   Note: Downward references should be annotated using the <annotate>
1646   element, containing an <xref> to [BCP97].
1647
1648   When an XSLT 2.0 processor is used, links in the document can be
1649   checked as well using the "link-check" paramerer ('yes' or 'no').
1650   Note that this only works for http links to documents of type text/*.
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679Reschke                                                        [Page 30]
1680
1681Documentation             RFC2629 through XSLT              January 2010
1682
1683
1684   For instance, as of 2008-07-12, the script produces for
1685   <http://greenbytes.de/tech/webdav/rfc2518.xml>:
1686
1687   > saxon rfc2518.xml check-references.xslt intended-status=PROPOSED \
1688     link-check=yes
1689
1690   Normative References:
1691   ISO-11578: not checked
1692   ISO-639: not checked
1693   ISO-8601: not checked
1694   REC-xml-19980210: [FirstEdition] obsoleted by REC-xml-20001006
1695   REC-xml-names-19990114: [FirstEdition] obsoleted by
1696    REC-xml-names-20060816
1697   RFC1766: [PROPOSED STANDARD] obsoleted by RFC3066 RFC3282
1698   RFC2068: [PROPOSED STANDARD] obsoleted by RFC2616
1699   RFC2069: [PROPOSED STANDARD] obsoleted by RFC2617
1700   RFC2119: [BEST CURRENT PRACTICE] (-> BCP0014) ok
1701   RFC2141: [PROPOSED STANDARD] ok
1702   RFC2277: [BEST CURRENT PRACTICE] (-> BCP0018) ok
1703   RFC2396: [DRAFT STANDARD] obsoleted by RFC3986
1704   RFC2279: [DRAFT STANDARD] obsoleted by RFC3629
1705
1706   Informational References:
1707   REC-PICS-labels-961031: [REC] ok
1708   RFC1807: [INFORMATIONAL] ok
1709   RFC2026: [BEST CURRENT PRACTICE] (-> BCP0009) ok
1710   RFC2291: [INFORMATIONAL] ok
1711   RFC2376: [INFORMATIONAL] obsoleted by RFC3023
1712   RFC2413: [INFORMATIONAL] obsoleted by RFC5013
1713   USMARC: not checked
1714   WF: not checked
1715
1716   Link Targets
1717   <http://www.w3.org/TR/1998/REC-xml-19980210>: ok
1718   <http://www.w3.org/TR/1999/REC-xml-names-19990114>: ok
1719   <http://www.dlib.org/dlib/july96/lagoze/07lagoze.html>: ok
1720   <http://www.w3.org/pub/WWW/TR/REC-PICS-labels-961031.html>: ok
1721
1722   Recognized formats in the <seriesInfo> element are:
1723
1724   o  for RFCs, the name attribute must be "RFC", and the value
1725      attribute must be the number of the RFC,
1726
1727   o  for Internet Drafs, the name attribute must be "ID" or "Internet-
1728      Draft", and the value attribute must be the file name of the draft
1729      (including the two-digit running number, but excluding a file
1730      extension),
1731
1732
1733
1734
1735Reschke                                                        [Page 31]
1736
1737Documentation             RFC2629 through XSLT              January 2010
1738
1739
1740   o  for W3C documents, the name attribute must be "W3C", must start
1741      with "W3C ", or must start with "World Wide Web Consortium ", and
1742      the value attribute must be the "shorthand" name of the
1743      specification, such as "REC-xml-19980210".
1744
1745      Note: this stylesheet will need network access to check links and
1746      status of Internet Drafts.  When running a Java-based XSLT engine,
1747      you may have to supply Java system properties specifying the HTTP
1748      proxy to be used, such as "-Dhttp.proxyHost=hostname
1749      -Dhttp.proxyPort=80".
1750
175111.2.  Generating Graphs from References
1752
1753   "gen-reference-graph.xslt" generates a graph of RFC dependencies,
1754   using the same base data as in "check-references.xslt" (see
1755   Section 11.1).  Its output is a "dot" file, to be processed by
1756   GraphViz (see <http://www.graphviz.org/>).
1757
1758   The picture below shows the RFC dependencies in RFC2629.
1759
1760
176111.3.  Producing reference entries for books
1762
1763   "amazon-asin.xslt" uses the Amazon web services to generate a
1764   <reference> element for a given ASIN (ISBN).
1765
1766   For instance:
1767
1768   <?xml version="1.0" encoding="utf-8"?>
1769   <references>
1770    <reference target="urn:isbn:0134516591">
1771      <front>
1772        <title>Simple Book, The: An Introduction to Internet Management,
1773                  Revised Second Edition</title>
1774        <author surname="Rose"
1775                   fullname="Marshall T. Rose" initials="M. T. ">
1776          <organization/>
1777        </author>
1778        <author surname="Marshall"
1779                   fullname="Rose T. Marshall" initials="R. T.">
1780          <organization/>
1781        </author>
1782        <date year="1996" month="March"/>
1783      </front>
1784      <seriesInfo name="Prentice Hall" value=""/>
1785    </reference>
1786   </references>
1787
1788
1789
1790
1791Reschke                                                        [Page 32]
1792
1793Documentation             RFC2629 through XSLT              January 2010
1794
1795
1796   Note that the resulting XML usually requires checking, in this case
1797   Amazon's database is playing tricks with Marshall's name...
1798
179911.4.  Down-converting to RFC2629bis DTD
1800
1801   "clean-for-DTD.xslt" can be used to down-convert some extensions to a
1802   format that is supported by the base xml2rfc distribution.  Note that
1803   these extensions are experimental (feedback appreciated).
1804
1805   The following mappings are done:
1806
1807   o  <iref> elements inside <artwork> elements are moved in front of
1808      the enclosing <figure> element.
1809
1810   o  <xref> elements inside <artwork> are expanded just like in regular
1811      text (that is, the markup is stripped, but the element is replaced
1812      by the applicable replacement text).
1813
1814   o  <x:anchor-alias> elements get stripped.
1815
1816   o  <x:bcp14> elements get stripped.
1817
1818   o  <x:bb>, <x:bc> and <x:bt> elements get stripped.
1819
1820   o  <x:blockquote> elements get converted to indented text (through a
1821      <list> element).
1822
1823   o  <x:dfn> elements get stripped.
1824
1825   o  <x:h> elements get stripped.
1826
1827   o  <x:link> elements get stripped.
1828
1829   o  <x:note> elements get converted to indented text (through a <list>
1830      element).
1831
1832   o  <x:q> elements get stripped, with apostrophes added around the
1833      text.
1834
1835   o  <x:ref> elements get replaced by <xref> elements, targetting
1836      either the anchor or another anchor with matching <x:anchor-alias>
1837      child element.
1838
183911.5.  Extracting artwork
1840
1841   With "extract-artwork.xslt", artwork elements named through the
1842   "name" attribute can be extracted.  This can be used to automatically
1843   check their syntax (for instance, when ABNFs appear within a figure
1844
1845
1846
1847Reschke                                                        [Page 33]
1848
1849Documentation             RFC2629 through XSLT              January 2010
1850
1851
1852   element).
1853
1854   For instance:
1855   saxon rfc3986.xml extract-artwork.xslt name=uri.abnf
1856
1857   In addition, artwork of a specific type can be extracted, such as
1858   with:
1859   saxon rfc3986.xml extract-artwork.xslt type=abnf
1860
1861   When extracting by type, artwork elements with a specified name can
1862   be excluded; this can be handy when the document uses some kind of
1863   schema language, and an appendix contains the collected schema,
1864   repeating definitions from earlier on.  Example:
1865   saxon rfc3986.xml extract-artwork.xslt type=abnf except-name=clschm
1866
186711.6.  GRRDL
1868
1869   "rfc2629grddl.xslt" extracts RDF information.  This is experimental
1870   work-in-progress.  See <http://www.w3.org/TR/grddl/> for more
1871   information.
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903Reschke                                                        [Page 34]
1904
1905Documentation             RFC2629 through XSLT              January 2010
1906
1907
190812.  Informative References
1909
1910   [BCP97]    Klensin, J. and S. Hartman, "Handling Normative References
1911              to Standards-Track Documents", BCP 97, RFC 4897,
1912              June 2007.
1913
1914   [DC-HTML]  Johnston, P. and A. Powell, "Expressing Dublin Core
1915              metadata using HTML/XHTML meta and link elements", Dublin
1916              Core Metadata Initiative , August 2008,
1917              <http://dublincore.org/documents/2008/08/04/dc-html/>.
1918
1919   [HTML]     Raggett, D., Hors, A., and I. Jacobs, "HTML 4.01
1920              Specification", W3C REC-html401-19991224, December 1999,
1921              <http://www.w3.org/TR/html401/>.
1922
1923   [RFC2026]  Bradner, S., "The Internet Standards Process -- Revision
1924              3", BCP 9, RFC 2026, October 1996.
1925
1926   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
1927              Requirement Levels", BCP 14, RFC 2119, March 1997.
1928
1929   [RFC2616]  Fielding, R., Gettys, J., Mogul, J., Nielsen, H.,
1930              Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
1931              Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.
1932
1933   [RFC2629]  Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629,
1934              June 1999.
1935
1936   [RFC2648]  Moats, R., "A URN Namespace for IETF Documents", RFC 2648,
1937              August 1999.
1938
1939   [RFC2731]  Kunze, J., "Encoding Dublin Core Metadata in HTML",
1940              RFC 2731, December 1999.
1941
1942   [RFC5234]  Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
1943              Specifications: ABNF", STD 68, RFC 5234, January 2008.
1944
1945   [RNC]      Clark, J., "RELAX NG Compact Syntax", OASIS , Nov 2002, <h
1946              ttp://www.oasis-open.org/committees/relax-ng/
1947              compact-20021121.html>.
1948
1949   [XHTML2]   Axelsson, J., Birbeck, M., Dubinko, M., Epperson, B.,
1950              Ishikawa, M., McCarron, S., Navarro, A., and S. Pemberton,
1951              "XHTML[TM] 2.0", W3C WD-xhtml2-20060726, July 2006,
1952              <http://www.w3.org/TR/xhtml2>.
1953
1954   [XML]      Bray, T., Paoli, J., Sperberg-McQueen, C., Maler, E., and
1955              F. Yergeau, "Extensible Markup Language (XML) 1.0 (Fifth
1956
1957
1958
1959Reschke                                                        [Page 35]
1960
1961Documentation             RFC2629 through XSLT              January 2010
1962
1963
1964              Edition)", W3C REC-xml-20081126, November 2008,
1965              <http://www.w3.org/TR/2008/REC-xml-20081126/>.
1966
1967   [XSL-FO]   Berglund, A., "Extensible Stylesheet Language (XSL)
1968              Version 1.1", W3C REC-xsl11-20061205, Dec 2006,
1969              <http://www.w3.org/TR/2006/REC-xsl11-20061205/>.
1970
1971   [1]   <http://www.exslt.org/exsl/functions/node-set/
1972         exsl.node-set.html>
1973
1974   [2]   <http://www.microsoft.com/downloads/
1975         details.aspx?FamilyID=2FB55371-C94E-4373-B0E9-DB4816552E41>
1976
1977   [3]   <https://addons.mozilla.org/de/firefox/addon/722>
1978
1979   [4]   <https://bugzilla.mozilla.org/show_bug.cgi?id=22942>
1980
1981   [5]   <http://bugzilla.mozilla.org/show_bug.cgi?id=193678>
1982
1983   [6]   <https://addons.mozilla.org/firefox/2933/>
1984
1985   [7]   <http://microformats.org/wiki/hcard>
1986
1987   [8]   <http://www.w3.org/TR/2003/WD-xsl11-20031217/>
1988
1989   [9]   <http://www.antennahouse.com/>
1990
1991   [10]  <http://www.antennahouse.com/XSL20/axf-extension.htm>
1992
1993   [11]  <http://xml.apache.org/fop/>
1994
1995   [12]  <http://xep.xattic.com/>
1996
1997   [13]  <http://xep.xattic.com/xep/spec.html>
1998
1999   [14]  <http://www.thaiopensource.com/relaxng/jing.html>
2000
2001   [15]  <http://dpcarlisle.blogspot.com/2007/05/
2002         exslt-node-set-function.html>
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015Reschke                                                        [Page 36]
2016
2017Documentation             RFC2629 through XSLT              January 2010
2018
2019
2020Appendix A.  RELAX NG Compact Schema
2021
2022   The RelaxNG schema ([RNC]) below can be used to validate input
2023   documents (for instance, with Jing [14]).
2024
2025   _Note that this is work in progress, and doesn't yet cover all
2026   extensions completely._
2027
2028  # WORK IN PROGRESS! PLEASE REPORT PROBLEMS TO THE AUTHOR.
2029
2030  # Define our extension namespace
2031  namespace x = "http://purl.org/net/xml2rfc/ext"
2032
2033  # Define GRDDL namespace
2034  namespace grddl = "http://www.w3.org/2003/g/data-view#"
2035
2036  # Define RDF namespace
2037  namespace rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
2038
2039  # Include rfc2629bis RNC grammar
2040  include "rfc2629.rnc" {
2041
2042    # Redefine <artwork> to allow markup
2043    artwork =
2044      element artwork {
2045        attlist.artwork,
2046        (TEXT
2047          | eref
2048          | iref
2049          | spanx
2050          | xref
2051          | x_abnf-char-sequence
2052          | x_bb
2053          | x_bc
2054          | x_bt
2055          | x_highlight
2056          | x_length-of
2057          | x_parse-xml
2058          | x_ref
2059          | x_span
2060          | x_x)*
2061      }
2062
2063    # Redefine <back> to allow boilerplate
2064    back =
2065      element back {
2066        attlist.back,
2067        references*,
2068
2069
2070
2071Reschke                                                        [Page 37]
2072
2073Documentation             RFC2629 through XSLT              January 2010
2074
2075
2076        section*,
2077        x_boilerplate?
2078      }
2079
2080    # Redefine <c> to allow our extension elements
2081    c =
2082      element c {
2083        attlist.c,
2084        (TEXT
2085          | xref
2086          | eref
2087          | iref
2088          | cref
2089          | spanx
2090          | x_ref)*
2091      }
2092
2093    # Redefine <cref> to allow more child elements
2094    cref =
2095      element cref {
2096        attlist.cref,
2097        (TEXT
2098          | eref
2099          | xref)*
2100      }
2101
2102    # Redefine <front> to allow boilerplate
2103    front =
2104      element front {
2105        attlist.front,
2106        title,
2107        author+,
2108        date,
2109        area*,
2110        workgroup*,
2111        keyword*,
2112        x_boilerplate?,
2113        abstract?,
2114        note*
2115      }
2116
2117    # Redefine <list> element to allow <x:lt> child elements
2118    \list =
2119      element list {
2120        attlist.list,
2121        (t+ | x_lt+)
2122      }
2123
2124
2125
2126
2127Reschke                                                        [Page 38]
2128
2129Documentation             RFC2629 through XSLT              January 2010
2130
2131
2132    # Redefine <preamble> to allow our extension elements
2133    preamble =
2134      element preamble {
2135        attlist.preamble,
2136        (TEXT
2137          | xref
2138          | eref
2139          | iref
2140          | cref
2141          | spanx
2142          | x_anchor-alias)*
2143      }
2144
2145    # Redefine <postamble> to allow our extension elements
2146    postamble =
2147      element postamble {
2148        attlist.postamble,
2149        (TEXT
2150          | xref
2151          | eref
2152          | iref
2153          | cref
2154          | spanx
2155          | x_bcp14)*
2156      }
2157
2158    # Redefine <reference> to allow our extension elements
2159    reference =
2160      element reference {
2161        attlist.reference,
2162        front,
2163        seriesInfo*,
2164        format*,
2165        annotation*,
2166        x_source?
2167      }
2168
2169    # Redefine <rfc> to allow our extension elements
2170    rfc =
2171      element rfc {
2172        attlist.rfc,
2173        x_link*,
2174        x_assign-section-number*,
2175        front,
2176        middle,
2177        back?
2178      }
2179
2180
2181
2182
2183Reschke                                                        [Page 39]
2184
2185Documentation             RFC2629 through XSLT              January 2010
2186
2187
2188    # Redefine <section> to allow our extension elements
2189    section =
2190      element section {
2191        attlist.section,
2192        (t
2193         | figure
2194         | texttable
2195         | iref
2196         | section
2197         | x_anchor-alias
2198         | x_blockquote
2199         | x_include-author
2200         | x_note
2201         | rdf_Description)*
2202      }
2203
2204    # Redefine <spanx> to allow some markup
2205    spanx =
2206      element spanx {
2207        attlist.spanx,
2208        (TEXT
2209          | iref
2210          | xref
2211          | x_ref)*
2212      }
2213
2214    # Redefine <t> to allow our extension elements
2215    t =
2216      element t {
2217        attlist.t,
2218        (TEXT
2219         | \list
2220         | figure
2221         | xref
2222         | eref
2223         | iref
2224         | cref
2225         | spanx
2226         | vspace
2227         | x_abnf-char-sequence
2228         | x_anchor-alias
2229         | x_bcp14
2230         | x_dfn
2231         | x_h
2232         | x_q
2233         | x_ref
2234         | x_sup)*
2235      }
2236
2237
2238
2239Reschke                                                        [Page 40]
2240
2241Documentation             RFC2629 through XSLT              January 2010
2242
2243
2244  }
2245
2246  # Allow x:indent-with attribute on <artwork>
2247  attlist.artwork &=
2248    attribute x:indent-with { ATEXT }?
2249
2250  # Allow anchor attribute on <author>
2251  attlist.author &=
2252    attribute anchor { xsd:ID }?
2253
2254    # Extend attribute set for <iref> (see Section 10.22)
2255  attlist.iref &=
2256    attribute x:for-anchor { ATEXT }?
2257
2258  # Extend attribute set for <list> (see Section 10.23)
2259  attlist.list &=
2260    attribute x:indent { ATEXT }?
2261
2262  # Extend attribute set for <preamble>
2263  attlist.preamble &=
2264    attribute anchor { xsd:ID }?
2265
2266  # Extend attribute set for <rfc>
2267  attlist.rfc &=
2268    attribute grddl:transformation { ATEXT }?,
2269    attribute x:maturity-level { "proposed" | "draft" | "internet" }?
2270
2271  # Extend attribute set for <section> (see Section 10.25)
2272  attlist.section &=
2273    attribute x:fixed-section-number { ATEXT }?
2274
2275  # Allow anchor attribute on <spanx>
2276  attlist.spanx &=
2277    attribute anchor { xsd:ID }?
2278
2279  # Extend attribute set for <xref> (see Section 10.26)
2280  attlist.xref &=
2281    attribute x:fmt  { "()" | "," | "anchor" | "of" | "number" | "sec" |
2282                       "none" }?,
2283    attribute x:rel  { ATEXT }?,
2284    attribute x:sec  { ATEXT }?
2285
2286  # Conversion to ABNF char sequence (see Section 10.1)
2287  x_abnf-char-sequence =
2288    element x:abnf-char-sequence {
2289      TEXT
2290    }
2291
2292
2293
2294
2295Reschke                                                        [Page 41]
2296
2297Documentation             RFC2629 through XSLT              January 2010
2298
2299
2300  # Aliasing of anchors (see Section 10.2)
2301  x_anchor-alias =
2302    element x:anchor-alias {
2303      attribute value { TEXT },
2304      empty
2305    }
2306
2307  # Including Author information
2308  # (experimental)
2309  x_include-author =
2310    element x:include-author {
2311      attribute target { xsd:IDREF }
2312    }
2313
2314  # Setting section numbers for internally generated sections
2315  # (experimental)
2316  x_assign-section-number =
2317    element x:assign-section-number {
2318      attribute builtin-target { "authors" },
2319      attribute number { TEXT },
2320      empty
2321    }
2322
2323  # Bottom line of box drawing (see Section 10.4)
2324  x_bb =
2325    element x:bb {
2326      (TEXT
2327        | iref
2328        | xref
2329        | x_bb
2330        | x_bc
2331        | x_bt
2332        | x_ref)*
2333    }
2334
2335  # Center line of box drawing (see Section 10.5)
2336  x_bc =
2337    element x:bc {
2338      (TEXT
2339        | iref
2340        | xref
2341        | x_bb
2342        | x_bc
2343        | x_bt
2344        | x_ref)*
2345    }
2346
2347  # BCP14/RFC2119 keywords (see Section 10.3)
2348
2349
2350
2351Reschke                                                        [Page 42]
2352
2353Documentation             RFC2629 through XSLT              January 2010
2354
2355
2356  x_bcp14 =
2357    element x:bcp14 {
2358      "MAY"
2359      | "MUST"
2360      | "MUST NOT"
2361      | "NOT RECOMMENDED"
2362      | "OPTIONAL"
2363      | "RECOMMENDED"
2364      | "REQUIRED"
2365      | "SHALL"
2366      | "SHALL NOT"
2367      | "SHOULD"
2368      | "SHOULD NOT"
2369    }
2370
2371  # Blockquote (see Section 10.6)
2372  x_blockquote =
2373    element x:blockquote {
2374      attribute cite { URI }?,
2375      t+
2376    }
2377
2378  # Boilerplate (see Section 10.6)
2379  x_boilerplate =
2380    element x:boilerplate {
2381      section+
2382    }
2383
2384  # Top line of box drawing (see Section 10.8)
2385  x_bt =
2386    element x:bt {
2387      (TEXT
2388        | iref
2389        | xref
2390        | x_bb
2391        | x_bc
2392        | x_bt
2393        | x_ref)*
2394    }
2395
2396  # Definition (see Section 10.9)
2397  x_dfn =
2398    element x:dfn {
2399      attribute anchor { xsd:ID }?,
2400      (TEXT
2401        | iref)*
2402    }
2403
2404
2405
2406
2407Reschke                                                        [Page 43]
2408
2409Documentation             RFC2629 through XSLT              January 2010
2410
2411
2412  # Heading (see Section 10.10)
2413  x_h =
2414    element x:h {
2415      TEXT
2416    }
2417
2418  # Heading (see Section 10.11)
2419  x_highlight =
2420    element x:highlight {
2421      TEXT
2422    }
2423
2424  # Length Measurement (see Section 10.12)
2425  x_length-of =
2426    element x:length-of {
2427      attribute indented { NUMBER }?,
2428      attribute target { xsd:IDREF },
2429      empty
2430    }
2431
2432  # Link (see Section 10.13)
2433  x_link =
2434    element x:link {
2435      attribute href { URI },
2436      attribute title { TEXT }?,
2437      attribute rel { TEXT },
2438      empty
2439    }
2440
2441  # Extended list item (see Section 10.14)
2442  x_lt =
2443    element x:lt {
2444      attribute anchor { xsd:ID }?,
2445      attribute hangText { TEXT }?,
2446      t+
2447    }
2448
2449  # Note (see Section 10.15)
2450  x_note =
2451    element x:note {
2452      t+
2453    }
2454
2455  # Signal XML content (see Section 10.16)
2456  x_parse-xml =
2457    element x:parse-xml {
2458      TEXT
2459    }
2460
2461
2462
2463Reschke                                                        [Page 44]
2464
2465Documentation             RFC2629 through XSLT              January 2010
2466
2467
2468  # Inline quote (see Section 10.17)
2469  x_q =
2470    element x:q {
2471      TEXT
2472    }
2473
2474  # Anchor reference (see Section 10.18)
2475  x_ref =
2476    element x:ref {
2477      attribute anchor { xsd:ID }?,
2478      TEXT
2479    }
2480
2481  # source information (see Section 10.19)
2482  x_source =
2483    element x:source {
2484      attribute basename { ATEXT }?,
2485      attribute href { URI },
2486      empty
2487    }
2488
2489  # superscript (see Section 10.20)
2490  x_sup =
2491    element x:sup {
2492      TEXT
2493    }
2494
2495  # Inline Span
2496  x_span =
2497    element x:span {
2498      attribute anchor { xsd:ID }?,
2499      (TEXT
2500        | x_parse-xml)*
2501    }
2502
2503  # Nop (for alignment in source)
2504  x_x =
2505    element x:x {
2506      empty
2507    }
2508
2509  # Embed RDF statements
2510  rdf_Description =
2511    element rdf:Description {
2512      rdf_content
2513    }
2514
2515  rdf_content =
2516
2517
2518
2519Reschke                                                        [Page 45]
2520
2521Documentation             RFC2629 through XSLT              January 2010
2522
2523
2524    ( TEXT | element * { rdf_content })*
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575Reschke                                                        [Page 46]
2576
2577Documentation             RFC2629 through XSLT              January 2010
2578
2579
2580Appendix B.  Implementation Notes
2581
2582B.1.  Recognized type attributes for <artwork> element
2583
2584   Specific values in the <artwork> element's "type" attribute are
2585   recognized and cause a different visual style to be used:
2586
2587   +-------------------------------------+-----------------------------+
2588   | Media Type                          | Comment                     |
2589   +-------------------------------------+-----------------------------+
2590   | abnf                                | ABNF as per [RFC5234]       |
2591   |                                     |                             |
2592   | abnf2616                            | ABNF as per [RFC2616],      |
2593   |                                     | Section 2.1                 |
2594   |                                     |                             |
2595   | application/relax-ng-compact-syntax | Relax NG Compact Syntax as  |
2596   |                                     | per [RNC]                   |
2597   |                                     |                             |
2598   | application/xml-dtd                 | XML DTD                     |
2599   |                                     |                             |
2600   | message/http; msgtype="request"     | HTTP message, as per        |
2601   |                                     | [RFC2616], Section 19.1     |
2602   |                                     |                             |
2603   | message/http; msgtype="response"    | HTTP message, as per        |
2604   |                                     | [RFC2616], Section 19.1     |
2605   +-------------------------------------+-----------------------------+
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631Reschke                                                        [Page 47]
2632
2633Documentation             RFC2629 through XSLT              January 2010
2634
2635
2636Appendix C.  Examples
2637
2638C.1.  Using the 'Internal Subset'
2639
2640   The prolog of the XML document can both be used to refer to an
2641   external DTD, and also to define internal entities (Section 2.8 of
2642   [XML]):
2643
2644   <?xml version="1.0"?>
2645   <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
2646
2647   <!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
2648
2649     <!-- use "&MAY;" for a BCP 14 "MAY", see Section 10.3 -->
2650     <!ENTITY MAY
2651     "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>MAY</bcp14>">
2652
2653     <!-- re-declare "&nbsp;" as code point 160 (non-breaking space) -->
2654     <!-- you may need this for UAs that do not read external DTDs -->
2655     <!ENTITY nbsp
2656     "&#160;">
2657
2658     <!-- allow later RFC2616 reference using "&rfc2616;" -->
2659     "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2616.xml">
2660
2661   ]>
2662
2663   Note: including entities from a remote site will not work in Firefox,
2664   see <https://bugzilla.mozilla.org/show_bug.cgi?id=22942>.
2665
2666C.2.  Customization
2667
2668   The XSLT code can be customized by creating a custom XSLT file that
2669   uses <xsl:import> to include the original code, and just overrides
2670   particular rules.
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687Reschke                                                        [Page 48]
2688
2689Documentation             RFC2629 through XSLT              January 2010
2690
2691
2692   For instance, the code below overrides several attributes in
2693   "rfc2629toFO.xslt", changing the color, spacing and font family for
2694   headers.
2695
2696   <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
2697                  version="1.0">
2698
2699     <xsl:import href="rfc2629toFO.xslt"/>
2700
2701     <xsl:attribute-set name="h1">
2702       <xsl:attribute name="color">darkblue</xsl:attribute>
2703       <xsl:attribute name="font-family">sans-serif</xsl:attribute>
2704       <xsl:attribute name="space-before">24pt</xsl:attribute>
2705     </xsl:attribute-set>
2706
2707     <xsl:attribute-set name="h2">
2708       <xsl:attribute name="color">darkblue</xsl:attribute>
2709       <xsl:attribute name="font-family">sans-serif</xsl:attribute>
2710       <xsl:attribute name="space-before">18pt</xsl:attribute>
2711       <xsl:attribute name="space-after">3pt</xsl:attribute>
2712     </xsl:attribute-set>
2713
2714     <xsl:attribute-set name="h3">
2715       <xsl:attribute name="color">darkblue</xsl:attribute>
2716       <xsl:attribute name="font-family">sans-serif</xsl:attribute>
2717       <xsl:attribute name="space-before">16pt</xsl:attribute>
2718       <xsl:attribute name="space-after">2pt</xsl:attribute>
2719     </xsl:attribute-set>
2720
2721   </xsl:transform>
2722
2723      Note: the name for the attribute sets may change in the future as
2724      more working is done with respect to customizability.  In any
2725      case, overriding the settings in a separate file will be easier to
2726      maintain.  Please contact the author if you find yourself trying
2727      to override style definitions that currently do not use attribute
2728      sets.
2729
2730      Note: the CSS style information used in "rfc2629.xslt" can be
2731      overriden in a similar (but less granular) way: just overwrite the
2732      template called "insertCss".  As for XSL-FO, the class names may
2733      change in future.
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743Reschke                                                        [Page 49]
2744
2745Documentation             RFC2629 through XSLT              January 2010
2746
2747
2748Appendix D.  The /rfc/@ipr Attribute
2749
2750   The "ipr" specifies what kind of text is generated for the "Status Of
2751   This Memo" and "Copyright Notice" sections on the front page.  When
2752   submitting an Internet Draft, the "boilerplate" is checked for
2753   compliance with the current Intellectual Property rules, and thus
2754   it's important to set the correct value.
2755
2756   As of December 2009, the attribute value can take a long list of
2757   values.  As frequently, this is not the result of a grand plan, but
2758   simply for historic reasons.  Of these values, only a few are
2759   currently in use; all others are supported by the various tools for
2760   backwards compatibility with old source files.
2761
2762      Note: some variations of the boilerplate are selected based on the
2763      document's date; therefore it is important to specify the "year",
2764      "month" and "date" attributes when archiving the XML source of an
2765      Internet Draft on the day of submission.
2766
2767   _Disclaimer: THIS ONLY PROVIDES IMPLEMENTATION INFORMATION.  IF YOU
2768   NEED LEGAL ADVICE, PLEASE CONTACT A LAWYER._ For further information,
2769   refer to <http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf>.
2770
2771D.1.  Current Values: '*trust200902'
2772
2773   The name for these values refers to the "TLP" ("IETF TRUST Legal
2774   Provisions Relating to IETF Documents"), on effect February 15, 2009
2775   (see <http://trustee.ietf.org/license-info/archive/
2776   IETF-Trust-License-Policy-02-16-09.pdf>).  An update to this document
2777   was published on September 12, 2009 (<http://trustee.ietf.org/
2778   license-info/archive/IETF-Trust-License-Policy-20090912.pdf>),
2779   modifying the license for code components.  The actual text is
2780   located in Section 6 ("Text To Be Included in IETF Documents") of
2781   these documents.
2782
2783   The tools will automatically produce the "right" text depending on
2784   the document's date information (see above).
2785
2786      Note: for consistency with Internet Draft generation using
2787      xml2rfc.tcl, the TLP text effective since December 28, 2009 is
2788      currently only supported when producing RFCs.
2789
2790D.1.1.  trust200902
2791
2792   This should be the default, unless one of the more specific
2793   '*trust200902' values is a better fit.  It produces the text in
2794   Sections 6.a and 6.b of the TLP.
2795
2796
2797
2798
2799Reschke                                                        [Page 50]
2800
2801Documentation             RFC2629 through XSLT              January 2010
2802
2803
2804D.1.2.  noModificationTrust200902
2805
2806   This produces the additional text from Section 6.c.i of the TLP.
2807
2808      This document may not be modified, and derivative works of it may
2809      not be created, except to format it for publication as an RFC or
2810      to translate it into languages other than English.
2811
2812D.1.3.  noDerivativesTrust200902
2813
2814   This produces the additional text from Section 6.c.ii of the TLP.
2815
2816      This document may not be modified, and derivative works of it may
2817      not be created, and it may not be published except as an Internet-
2818      Draft.
2819
2820D.1.4.  pre5378Trust200902
2821
2822   This produces the additional text from Section 6.c.iii of the TLP,
2823   frequently called the "pre-5378 escape clause":
2824
2825      This document may contain material from IETF Documents or IETF
2826      Contributions published or made publicly available before November
2827      10, 2008.  The person(s) controlling the copyright in some of this
2828      material may not have granted the IETF Trust the right to allow
2829      modifications of such material outside the IETF Standards Process.
2830      Without obtaining an adequate license from the person(s)
2831      controlling the copyright in such materials, this document may not
2832      be modified outside the IETF Standards Process, and derivative
2833      works of it may not be created outside the IETF Standards Process,
2834      except to format it for publication as an RFC or to translate it
2835      into languages other than English.
2836
2837   See Section 4 of
2838   <http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf> for further
2839   information about when to use this value.
2840
2841      Note: this text appears under "Copyright Notice", unless the
2842      document was published before November 2009, in which case it
2843      appears under "Status Of This Memo".
2844
2845D.2.  Historic Values
2846
2847D.2.1.  Historic Values: '*trust200811'
2848
2849   The attribute values "trust200811", "noModificationTrust200811" and
2850   "noDerivativesTrust200811" are similar to their "trust200902"
2851   counterparts, except that they use text specified in <http://
2852
2853
2854
2855Reschke                                                        [Page 51]
2856
2857Documentation             RFC2629 through XSLT              January 2010
2858
2859
2860   trustee.ietf.org/license-info/archive/
2861   IETF-Trust-License-Policy_11-10-08.pdf>.
2862
2863D.2.2.  Historic Values: '*3978'
2864
2865   The attribute values "full3978", "noModification3978" and
2866   "noDerivatives3978" are similar to their counterparts above, except
2867   that they use text specified in RFC 3978 (March 2005).
2868
2869D.2.3.  Historic Values: '*3667'
2870
2871   The attribute values "full3667", "noModification3667" and
2872   "noDerivatives3667" are similar to their counterparts above, except
2873   that they use text specified in RFC 3667 (February 2004).
2874
2875D.2.4.  Historic Values: '*2026'
2876
2877   The attribute values "full2026" and "noDerivativeWorks2026" are
2878   similar to their counterparts above, except that they use text
2879   specified in RFC 2026 (October 1996).
2880
2881   The special value "none" was also used back then, and denied the IETF
2882   any rights beyond publication as Internet Draft.
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911Reschke                                                        [Page 52]
2912
2913Documentation             RFC2629 through XSLT              January 2010
2914
2915
2916Appendix E.  License
2917
2918   Copyright (c) 2006-2010, Julian Reschke
2919   (julian.reschke@greenbytes.de)
2920
2921   All rights reserved.
2922
2923   Redistribution and use in source and binary forms, with or without
2924   modification, are permitted provided that the following conditions
2925   are met:
2926
2927   o  Redistributions of source code must retain the above copyright
2928      notice, this list of conditions and the following disclaimer.
2929
2930   o  Redistributions in binary form must reproduce the above copyright
2931      notice, this list of conditions and the following disclaimer in
2932      the documentation and/or other materials provided with the
2933      distribution.
2934
2935   o  Neither the name of Julian Reschke nor the names of its
2936      contributors may be used to endorse or promote products derived
2937      from this software without specific prior written permission.
2938
2939   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
2940   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
2941   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
2942   A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT
2943   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
2944   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
2945   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
2946   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2947   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2948   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
2949   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967Reschke                                                        [Page 53]
2968
2969Documentation             RFC2629 through XSLT              January 2010
2970
2971
2972Appendix F.  Change Logs
2973
2974F.1.  Package
2975
2976   2006-01-01  Switch to BSD License.
2977
2978   2007-01-12  Update to xml2rfc v1.33pre2.
2979
2980   2007-03-31  Update to xml2rfc v1.33pre3.
2981
2982   2007-05-01  Add XSLT test cases.
2983
2984   2008-07-18  Experimental support for inlined rdf:Description elements
2985      (ignored by the formatter, extracted by rfc2629grddl).
2986
2987   2008-12-04  Update to xml2rfc v1.34pre2.
2988
2989   2009-02-24  Experimental support for February 2009 boilerplate
2990      changes, and for the x:boilerplate element.
2991
2992   2009-07-08  Support new boilerplate ordering in RFCs published since
2993      July 2009.  Fix problems with one-column text tables.
2994
2995   2009-07-19  When possible, calculate the actual Expiry date for
2996      Internet Drafts (full date must be available).
2997
2998   2009-08-01  For '$xml2rfc-ext-authors-section='end'", move the index
2999      in front of the authors section.
3000
3001   2009-08-04  Consider /rfc/@ipr="pre5378Trust200902" when producing
3002      RFCs, not IDs.
3003
3004   2009-08-29  Support alignment for artwork containing images (as
3005      opposed to, well, artwork).
3006
3007   2009-09-01  Allow xref in cref (as extension).
3008
3009   2009-09-14  Refactor handling of processing instructions.
3010
3011   2009-09-24  Fix typo in Status Of This Memo, present since November
3012      2008.  Fix formatting of iprExtract attribute.  Starting with
3013      Internet Draft publication dates after 2009-11-30: use new Trust
3014      Legal Provisions text; for Internet Drafts: move Abstract up, and
3015      move "pre5378" escape clause to the Copyright Notice.  Add support
3016      for refparent PI.  For RFCs: use new TLP text as of September
3017      2009.  Incorporate xml2rfc v1.34pre4.
3018
3019
3020
3021
3022
3023Reschke                                                        [Page 54]
3024
3025Documentation             RFC2629 through XSLT              January 2010
3026
3027
3028   2009-10-06  Starting with Internet Draft publication dates after
3029      2009-10-31: use new Trust Legal Provisions text; for Internet
3030      Drafts: move Abstract up, and move "pre5378" escape clause to the
3031      Copyright Notice.  Incorporate xml2rfc v1.34pre5.
3032
3033   2009-10-27  Upgrade to xml2rfc v1.34.
3034
3035   2010-01-08  For RFC generation (not IDs), experimentally support RFC
3036      5741 headers and boilerplate and Trust Legal Provisions 4.0.
3037
3038F.2.  amazon-asin.xslt
3039
3040   2003-11-16  Initial release.
3041
3042   2005-04-02  Fix two DTD issues.
3043
3044F.3.  check-references.xslt
3045
3046   2003-11-16  Initial release.
3047
3048   2004-05-11  Add document status; print references type.
3049
3050   2005-01-01  Add experimental check for ID status.
3051
3052   2005-04-01  Add fixes from Bill Fenner.
3053
3054   2005-12-03  Add checks against local copy of
3055      <http://www.w3.org/2002/01/tr-automation/tr.rdf>.
3056
3057   2006-07-22  Add checks for standards levels.
3058
3059   2006-08-06  "check-ietf-references.xslt" replaced by "check-
3060      references.xslt".
3061
3062   2007-01-04  Use information online at <http://tools.ietf.org/> to
3063      retrieve Internet-Draft status information.
3064
3065   2007-06-16  Fix bug looking up ref type when inside change markup.
3066
3067   2008-06-14  Enhance output when draft was updated, and then published
3068      as RFC.
3069
3070   2008-07-12  Add XSLT2-based link target checking.
3071
3072   2008-08-10  Change keywords for "intended-level" to proposed/draft/
3073      internet, optionally extract intended level from /rfc/@
3074      x:maturity-level attribute.
3075
3076
3077
3078
3079Reschke                                                        [Page 55]
3080
3081Documentation             RFC2629 through XSLT              January 2010
3082
3083
3084F.4.  gen-reference-graph.xslt
3085
3086   2006-09-03  New.
3087
3088   2007-06-07  Use Carlisle method [15] to define exslt:node-set in
3089      msxsml (which means that the stylesheet can now be used with MSXML
3090      as well).
3091
3092   2007-10-15  Use W3C data from tr.rdf as well (experimental).
3093
3094F.5.  rfc2629.xslt
3095
3096   2001-03-28  Code rearranged, generate numbered section anchors for
3097      paragraphs (t) as well.  Fixes in index handling.
3098
3099   2001-04-12  Moved HTML output into XHTML namespace.
3100
3101   2001-10-02  Fixed default location for RFCs and numbering of section
3102      references.  Support ?rfc editing processing instruction.
3103
3104   2001-10-07  Made telephone number links active.
3105
3106   2001-10-08  Support for vspace element.
3107
3108   2001-10-09  Experimental support for rfc-issue PI.
3109
3110   2001-11-11  Support rfc private PI.  Removed bogus code reporting the
3111      WG in the header.
3112
3113   2001-11-11  Support rfc private PI.  Removed bogus code reporting the
3114      WG in the header.
3115
3116   2001-12-17  Support title attribute on references element
3117
3118   2002-01-05  Support for list/@style="@format"
3119
3120   2002-01-09  Display "closed" RFC issues as deleted
3121
3122   2002-01-14  Experimentally and optionally parse XML encountered in
3123      artwork elements (requires MSXSL).
3124
3125   2002-01-27  Some cleanup.  Moved RFC issues from PIs into namespaced
3126      elements.
3127
3128   2002-01-29  Added support for sortrefs PI.  Added support for figure
3129      names.
3130
3131
3132
3133
3134
3135Reschke                                                        [Page 56]
3136
3137Documentation             RFC2629 through XSLT              January 2010
3138
3139
3140   2002-02-07  Highlight parts of artwork which are too wide (72
3141      characters).
3142
3143   2002-02-12  Code rearrangement for static texts.  Fixes for section
3144      numbering.  TOC generation rewritten.
3145
3146   2002-02-15  Support for irefs in sections; support iref @primary=true
3147
3148   2002-03-03  Moved anchor prefix into a constant.  Added sanity checks
3149      on user anchor names.
3150
3151   2002-03-23  Bugfix in detection of matching org names when creating
3152      the header.  Fixed sorting in subitems.
3153
3154   2002-04-02  Fix TOC link HTML generation when no TOC is generated
3155      (created broken HTML table code).
3156
3157   2002-04-03  Made rendering of references more tolerant re: missing
3158      parts.
3159
3160   2002-04-08  Fixed reference numbering when references are split into
3161      separate sections.
3162
3163   2002-04-16  Fix default namespace (shouldn't be set for HTML output
3164      method).
3165
3166   2002-04-19  Lowercase internal CSS selectors for Mozilla compliance.
3167      Do not put TOC into ul element.
3168
3169   2002-04-21  Make numbered list inside numbered lists use alphanumeric
3170      numbering.
3171
3172   2002-05-05  Updated issue/editing support.
3173
3174   2002-05-15  Bugfix for section numbering after introduction of ed:
3175      replace
3176
3177   2002-06-21  When producing private documents, do not include document
3178      status, copyright etc.
3179
3180   2002-07-08  Fix xrefs to Appendices.
3181
3182   2002-07-19  Make artwork lightyellow for easier reading. (fielding)
3183
3184   2002-10-09  Translate references title to anchor name to avoid non-
3185      uri characters. (fielding)
3186
3187
3188
3189
3190
3191Reschke                                                        [Page 57]
3192
3193Documentation             RFC2629 through XSLT              January 2010
3194
3195
3196   2002-10-13  Support for tocdepth PI.
3197
3198   2002-11-03  Added temporariry workaround for Mozilla/Transformiix
3199      result tree fragment problem. (search for
3200      'http://bugzilla.mozilla.org/show_bug.cgi?id=143668')
3201
3202   2002-12-25  xref code: attempt to uppercase "section" and "appendix"
3203      when at the start of a sentence.
3204
3205   2003-02-02  fixed code for vspace blankLines="0", enhanced display
3206      for list with "format" style, got rid of HTML blockquote elements,
3207      added support for "hangIndent"
3208
3209   2003-04-10  experimental support for appendix and spanx elements
3210
3211   2003-04-19  fixed counting of list numbers in "format %" styles (one
3212      counter per unique format string).  Added more spanx styles.
3213
3214   2003-05-02  experimental texttable support
3215
3216   2003-05-02  Make mailto links optional (default = none) (jre: default
3217      and PI name changed) (fielding)
3218
3219   2003-05-04  experimental support for HTML link elements; fix default
3220      for table header alignment default
3221
3222   2003-05-06  support for "background" PI.
3223
3224   2003-05-11  change %c format to lowercase alphabetic. add support for
3225      keyword elements (generate META tag). fix various HTML conformance
3226      problems. added experimental support for role attribute. do not
3227      number paragraphs in unnumbered sections. update boilerplate
3228      texts. support for "iprnotified" PI. bugfix list numbering. strip
3229      whitespace when building tel: URIs.
3230
3231   2003-05-12  more conformance fixes (layout moved into CSS, move lists
3232      and figures out of para content, do not use tables for list
3233      formatting)
3234
3235   2003-05-13  add DC.Creator meta tag, refactoring
3236
3237   2003-05-16  put nbsps between "section" and section number (xref).
3238
3239   2003-05-18  author summary: add missing comma.
3240
3241
3242
3243
3244
3245
3246
3247Reschke                                                        [Page 58]
3248
3249Documentation             RFC2629 through XSLT              January 2010
3250
3251
3252   2003-06-06  fix index generation bug (transposed characters in key
3253      generation).  Enhance sentence start detection (xref starting a
3254      section was using lowercase "section").
3255
3256   2003-06-22  exp. support for xref/@format.  Add missing support for
3257      eref w/o content. exp. support for annotations in reference
3258      elements.  Code cleanup reference table formatting.
3259
3260   2003-07-09  Another fix for DC.Creator meta tag creation based on
3261      RFC2731
3262
3263   2003-07-24  Fix namespace name for DC.Creator.
3264
3265   2003-08-06  Cleanup node-set support (only use exslt (saxon, xalan,
3266      libxslt) extension functions; remove Transformix workarounds that
3267      stopped to work in Moz 1.4)
3268
3269   2003-08-09  Generate HTML lang tag.
3270
3271   2003-08-10  Map spanx/verb to HTML "samp" element.  Fix author name
3272      display in references (reverse surname/initials for last author),
3273      add "Ed.".  Fix internal bookmark generation.
3274
3275   2003-08-17  Add DCMI dates, identifiers and abstract.  Add PI to
3276      suppress DCMI generation.  Do not add TOC entry to Copyright
3277      Statement when there is none.  Align RFC2629 PI names and
3278      parameter names.  Change style for inline URIs generated by eref.
3279      Add header and footer support.  Enhance CSS paging properties.
3280      Support topblock PI.  Added hooks for proper XHTML generation
3281      through separate XSLT.  Enhance warning and error messages.  Add
3282      support for artwork image display.  Table formatting fixes
3283      (borders, thead continuation).
3284
3285   2003-08-18  Add workaround for MSXML4 node-set and Mozilla node-set
3286      issues (fallback just displays are warning).
3287
3288   2003-10-06  Add workaround for broken pre/ins handling in Mozilla
3289      (see <http://bugzilla.mozilla.org/show_bug.cgi?id=204401>).  Make
3290      use of cite attribute on ed:replace.  CSS cleanup.
3291
3292   2003-10-08  Fix minor issue detecting the same org for the header
3293      (caused by IE's non-standard whitespace handling).  Fix default
3294      handling for /rfc/@category.
3295
3296   2003-11-09  Inherit ed:entered-by from ancestor elements.  Change CSS
3297      color for inserted text to green.  Generate issues-list anchor.
3298      Do not complain about missing targets when the xref element is
3299      below ed:del.  Remove code that attempted to distinguish section/
3300
3301
3302
3303Reschke                                                        [Page 59]
3304
3305Documentation             RFC2629 through XSLT              January 2010
3306
3307
3308      Section when producing links - always use uppercase.  Fix date
3309      rendering for issue resolutions.
3310
3311   2003-11-29  Fix color values for table backgrounds for issue
3312      rendering.  Change rendering of issue links to use inline-styles.
3313      Add colored issue markers to issues.
3314
3315   2003-12-13  Fix inheritance of ed:entered-by attribute.  Display note
3316      elements inside change tracking as well.
3317
3318   2004-01-18  When PI compact = 'yes', make most CSS print page breaks
3319      conditional.
3320
3321   2004-02-20  Support for RFC3667 IPR changes (xml2rfc 1.22); see <http
3322      ://lists.xml.resource.org/pipermail/xml2rfc/2004-February/
3323      001088.html>.
3324
3325   2004-03-11  Add "(if approved)" to "updates" and "obsoletes" unless
3326      the document has an RFC number.
3327
3328   2004-04-01  Fix RFC3667 output, see <http://lists.xml.resource.org/
3329      pipermail/xml2rfc/2004-April/001208.html>.
3330
3331   2004-04-04  Add support for section/top attribute.  Move references
3332      into plain section container.
3333
3334   2004-04-06  Do not emit identical para anchors for deleted content.
3335
3336   2004-04-14  Fix references TOC generation when there are no
3337      references.
3338
3339   2004-04-24  Fix RFC3667 output, see
3340      <http://xml.resource.org/pipermail/xml2rfc/2004-April/
3341      001246.html>.
3342
3343   2004-05-09  Add custom support for generating compound index
3344      documents.  Add anchors for each Index letter.  Add experimental
3345      cref support.  Fix conditional page breaks before References
3346      section.
3347
3348   2004-05-16  Refactor external index generation.
3349
3350   2004-05-20  Rewrite anchor generation for comments.
3351
3352   2004-05-22  Enhance issues rendering (add links to changes).
3353
3354
3355
3356
3357
3358
3359Reschke                                                        [Page 60]
3360
3361Documentation             RFC2629 through XSLT              January 2010
3362
3363
3364   2004-05-30  Allow single quote as delimiter in processing
3365      instructions as well.  Move block-level issue pointers to floats.
3366      Disable issue pointers for print media.  Add "purple numbers".
3367      Add hrefs to section headings.  Add non-printing index key letter
3368      list to start of index.
3369
3370   2004-06-01  Use &#xb6; instead of # for PNs.
3371
3372   2004-07-18  Add support for list style=letters (thanks Roy F.).  Make
3373      PNs optional; add new PI.
3374
3375   2004-09-05  Fix index links into unnumbered sections.  Bring IPR
3376      boilerplate in-line with xml2rfc 1.25.  Add experimental CSS3
3377      paged media support.  Various HTML fixes.
3378
3379   2004-09-21  Enhance checking of artwork width.
3380
3381   2004-09-26  Add check for unused references.  Uppercase letters in
3382      list style letters when nested into another list.
3383
3384   2004-10-10  Fix internal change track pointers.
3385
3386   2004-11-01  Allow change tracking on references (as a whole).
3387      Rewrite artwork handling so that it allows change tracking inside
3388      artwork.  Also allow a subset of text markup inside artwork, such
3389      as xrefs (note this requires post-processing the source to make it
3390      compliant to RFC2629bis).
3391
3392   2004-11-03  Enhanced placement of iref anchors.
3393
3394   2004-11-06  Index: display irefs that appeared (with primary=true)
3395      inside artwork elements in a monospaced font.
3396
3397   2004-11-14  Add special code so that changes in section titles can be
3398      change-tracked.
3399
3400   2005-01-14  Bugfixes for HtmlToXhtml converter.
3401
3402   2005-01-22  Enhance generation of HTML h* elements (for Mozilla
3403      Outliner).
3404
3405   2005-01-31  Put vertical space around top-level TOC entries in TOC.
3406      Switch to pt-based CSS.  Re-arrange top section.  Make hr elements
3407      reflect new-page settings in TXT output (compact-PI).  Fix page
3408      number in footer (CSS print) and add some more experimental
3409      support for paged media (tested with Prince 4.1 alpha).  Rewrite
3410      TOC and Index generation to generate HTML lists.  Cleanup id
3411      generation for paragraphs.  Reduce whitespace in output.  Fix
3412
3413
3414
3415Reschke                                                        [Page 61]
3416
3417Documentation             RFC2629 through XSLT              January 2010
3418
3419
3420      vspace implementation.  Use right/left dqoutes and copyright sign
3421      where appropriate.
3422
3423   2005-02-04  Add <link> element to references section.  Fix newly
3424      introduced bug in references processing.
3425
3426   2005-02-05  Integrate various fixes/enhancements by Roy Fielding:
3427      spelling of "Authors' Addresses", comma setting in references,
3428      position of "Authors" section, optionally place authors addresses
3429      at end (PI), trailing dots in section numbers, switch to verdana
3430      default font in CSS.  Add experimental support for centered
3431      artwork.
3432
3433   2005-02-09  Fixes in spacing and links of references section titles.
3434      Enhance sorting in references when change tracking is in place.
3435      Re-add figure centering support.  Add missing 2nd part of
3436      "Author's Adresses" fix.
3437
3438   2005-02-25  Align section number format with xml2rfc1.29.
3439
3440   2005-03-28  Get rid of table elements in Author's section.  Add
3441      experimental hCard (<http://developers.technorati.com/wiki/hCard>)
3442      support.
3443
3444   2005-04-03  Add RFC3978-style IPR statement support.
3445      (fenner@research.att.com)
3446
3447   2005-04-11  Cleanup author display. hCard related fixes.
3448
3449   2005-05-07  Minor fixes to allow change tracking in doc title.  Add
3450      experimental support for table border styles.  CSS cleanup.
3451
3452   2005-06-18  Implement missing support for references to texttables.
3453
3454   2005-09-25  Use (-moz-)column-count when printing the index.
3455
3456   2005-10-04  Report missing element templates with xsl:message.
3457
3458   2005-10-15  Process t/@anchor.
3459
3460   2005-10-23  More workarounds for Mozilla's broken del/ins handling
3461      (this time for figures).
3462
3463   2005-10-27  lowercase hCard class names
3464
3465
3466
3467
3468
3469
3470
3471Reschke                                                        [Page 62]
3472
3473Documentation             RFC2629 through XSLT              January 2010
3474
3475
3476   2005-11-22  Enhance diagnostics for XML-in-artwork extension
3477
3478   2005-11-26  Fix formatting of section numbers for sections inserted
3479      into <back>.
3480
3481   2005-12-12  Fix some validity problems when change tracking occured
3482      inside lists.
3483
3484   2005-12-18  Add change tracking inside the index.
3485
3486   2006-02-04  Add prev/next links to highlighted changes (change
3487      tracking extension).
3488
3489   2006-02-10  Catch errors instantiating MSXML component.
3490
3491   2006-02-11  References: add "work in progress" for Internet Drafts.
3492
3493   2006-02-27  Fix front matter (lowercase Internet-Draft, say "Intended
3494      status" for non-RFC documents).  Start work on experimental
3495      extension for simplified internal links.
3496
3497   2006-03-19  Tweaks to IESG Copyright stuff; support submissionType
3498      attribute.  Fix duplicate reference anchors in HTML output.
3499      Reduce HTML Tidy warnings.  Fix reference to normative ASCII
3500      version (now requires trailing ".txt").  Tweaks to hCard
3501      generation.  Started to move non-issue-tracking extensions into
3502      namespace "http://purl.org/net/xml2rfc/ext".
3503
3504   2006-03-27  Moved "simple reference" extension into namespace
3505      "http://purl.org/net/xml2rfc/ext" and add documentation.  HTML
3506      conformance enhancements.
3507
3508   2006-04-02  Cleanup special code for automated XHTML XSLT generation.
3509
3510   2006-04-21  Generate <CITE> elements where appropiate.  Introduce
3511      x:blockquote, x:dfn, x:h and x:q elements.
3512
3513   2006-05-06  Introduce x:bcp14 element.
3514
3515   2006-05-14  Fix content model for x:blockquote.
3516
3517   2006-06-18  Add box drawing support (x:bt, x:bc, x:bb).
3518
3519   2006-06-20  HTML validity fixes (legal chars in anchors in index).
3520
3521
3522
3523
3524
3525
3526
3527Reschke                                                        [Page 63]
3528
3529Documentation             RFC2629 through XSLT              January 2010
3530
3531
3532   2006-06-24  Reduce leading empty lines in artwork.  Move <dt> style
3533      info into CSS.
3534
3535   2006-07-14  Fix rendering of multiple street address entries (missing
3536      line break).
3537
3538   2006-07-24  Add extension for deep linking into RFCs, do not generate
3539      empty list items in TOC output, avoid empty <dt> elements for list
3540      items without hangText attribute.
3541
3542   2006-08-01  Allow @anchor on more elements; start work on Relax NG
3543      grammar for extensions.  Reduce generated style elements (use CSS
3544      classes instead).  Consistently use "id" instead of "name".
3545      Change default target for RFC links to
3546      "http://tools.ietf.org/html/rfcNNNN".
3547
3548   2006-08-06  Include appendices defined in <appendix> elements in TOC
3549      (please consider them deprecated anyhow!).  Generate links to
3550      "http://tools.ietf.org/html/draft-*" for Internet Drafts.  Replace
3551      x:frag by x:rel, allowing any kind of relative reference instead
3552      of just fragments.
3553
3554   2006-08-30  Reduce textual differences between HTML output and what
3555      xml2rfc produces in TXT output mode (section refs/reference
3556      targets).  Add small workaround for Opera 9.0.1's problem with
3557      node-set().
3558
3559   2006-10-29  Fix problem generating internal links to change markup
3560      within references section.  Enhancements when generating numbered
3561      references for deleted references.  Allow inclusion of references
3562      into the index (through include-references-in-index extension).
3563      Fix a bug that caused the newer version of the IETF boilerplate to
3564      be produced rather than the pre-RFC3667 one.  Update to RFC4287
3565      boilerplate.
3566
3567   2006-11-11  Add extension attribute x:for-anchor to <iref> handling.
3568
3569   2006-11-26  Experimental (and limited) support for <x:lt>.
3570
3571   2006-12-04  Fix bugs in processing documents that have both the ipr
3572      and the number attribute set on the rfc root element.  Add support
3573      for x:fmt='none' on xrefs.  Add different pre style based on
3574      artwork type attributes (experimental).
3575
3576   2006-12-13  Add x:fmt='anchor' for xref elements.
3577
3578
3579
3580
3581
3582
3583Reschke                                                        [Page 64]
3584
3585Documentation             RFC2629 through XSLT              January 2010
3586
3587
3588   2007-01-07  Fix root template for compatibility for the exslt:node-
3589      set implementation in Firefox3.
3590
3591   2007-01-29  Avoid empty table entry in front matter when organization
3592      is not specified for an author.
3593
3594   2007-02-10  Allow change tracking in table rows.
3595
3596   2007-03-09  Add hcard profile URI (<http://www.w3.org/2006/03/hcard>)
3597      to head element.  Add warning for misplaced <t> elements (after
3598      section).
3599
3600   2007-03-21  Fix internal linking from reference entries in index for
3601      some xref types.  Minor CSS tweaks contributed by MTR.  Allow
3602      turning on text justification through a PI.  Improve iref anchor
3603      generation to generate less instable anchors.
3604
3605   2007-03-28  Fixes for numbering of ed:inserted references sections.
3606
3607   2007-05-04  Do not generate anchors for edits in deleted sections.
3608      Enhance HTML conformance.
3609
3610   2007-05-19  Enhance diagnostics when using Saxon (needs Saxon's "-l"
3611      command line parameter to keep line number information).  Add
3612      warning when symref PI is missing (default will change in the
3613      future).  Add support for overriding computed section numbers
3614      (when formatting historic documents).
3615
3616   2007-06-07  Change default for symrefs PI to "yes" (see change in
3617      xml2rfc 1.33pre4).  Warn about docName attributes that appear to
3618      contain a file extension.
3619
3620   2007-06-26  Workaround author/@initials values without trailing dot,
3621      as in xml2rfc.tcl.
3622
3623   2007-07-14  Enhance index generation for references that use @x:sec
3624      attribute.
3625
3626   2007-09-09  Fix: sortrefs is a nop when symrefs=no.
3627
3628   2007-10-17  Work in progress: add support for referencing sections in
3629      sibling documents by anchor name.
3630
3631   2007-10-17  Work in progress (continued): support for referencing
3632      sections in sibling documents by anchor name.
3633
3634
3635
3636
3637
3638
3639Reschke                                                        [Page 65]
3640
3641Documentation             RFC2629 through XSLT              January 2010
3642
3643
3644   2007-12-31  Emit warning when updating/obsoleting stuff that's not
3645      referenced.
3646
3647   2008-02-03  Support xml2rfc-1.33pre5's suppress-title attribute on
3648      texttable and figure.
3649
3650   2008-02-06  Extension: allow <eref> below <cref>.
3651
3652   2008-02-17  Extensions: add x:span and x:length-of.
3653
3654   2008-02-20  Add new RFC boilerplate (as changed in 2007-08).
3655
3656   2008-02-27  Improve diagnostics for artwork width problems; add
3657      defaulting of publication dates (requires XSLT processor
3658      supporting exslt:date, or msxml).
3659
3660   2008-02-29  Enhance CSS for link elements in the front header, update
3661      rules for generating "Acknowledgment" statement.
3662
3663   2008-03-01  Use line numbers in diagnostics in Saxon8/9 as well.
3664
3665   2008-03-02  Fix a bug in the logic choosing the boilerplate,
3666      resulting in obsolete text being inserted into IDs.
3667
3668   2008-04-01  Add support for superscript element.
3669
3670   2008-06-28  Add sanity checks for email addresses, allow multiple
3671      email elements.
3672
3673   2008-07-06  Add x:abnf-char-sequence.
3674
3675   2008-08-21  Add x:note.
3676
3677   2008-09-06  Add experimental support for SVG images.
3678
3679   2008-09-17  Add experimental support for x:author.  Fix xref/@
3680      format=none.
3681
3682   2008-10-10  Fix a huge bug, causing text content after an XML comment
3683      to be ignored.
3684
3685   2009-02-24  Use table/caption when needed.
3686
3687   2009-03-07  Fix bug that caused text to disappear in the output in
3688      presence of processing instructions.
3689
3690
3691
3692
3693
3694
3695Reschke                                                        [Page 66]
3696
3697Documentation             RFC2629 through XSLT              January 2010
3698
3699
3700   2009-03-12  Make inlined comments bookmarkable.
3701
3702   2009-04-09  Upgrade to DC-HTML from RFC 2731 (affects head/@profile).
3703
3704   2009-07-08  Remove table/@summary in output; the value getting
3705      inserted was just repeating stuff that appeared in the preamble.
3706
3707   2009-08-01  Implement table alignment (HTML output only for now).
3708
3709   2009-08-18  Replicate Dublin Core "abstract" metadata into meta/@
3710      name=description (search engines do use it).
3711
3712   2009-09-02  Fix default/left alignment of table columns, remove silly
3713      table summmary attributes.
3714
3715   2009-09-24  Support double-sided layout using CSS page:left/right
3716      selectors.
3717
3718   2009-11-27  Generate unordered lists instead of broken definition
3719      lists for list style empty.
3720
3721F.6.  rfc2629toFO.xslt
3722
3723   2003-11-16  Initial release.
3724
3725   2003-11-29  Enhance handling of unknown list styles.
3726
3727   2004-04-04  Update reference section handling.
3728
3729   2004-04-17  Use XSL-WD-1.1-style fo:bookmark and index handling and
3730      add postprocessors for existing implementations.  Unify PDF info
3731      generation by using XEP (postprocessors) will convert.
3732
3733   2004-04-20  Add experimental cref support.
3734
3735   2004-06-14  Set correct index-item defaults.
3736
3737   2004-07-18  Add list style=letters.
3738
3739   2004-09-03  Make URLs in text break where they are allowed to break
3740      by inserting zero-width spaces.
3741
3742   2004-09-26  Fix letter-style inside nested lists.
3743
3744   2004-10-31  Update handling of artwork.
3745
3746
3747
3748
3749
3750
3751Reschke                                                        [Page 67]
3752
3753Documentation             RFC2629 through XSLT              January 2010
3754
3755
3756   2004-11-13  Fix handling of references inside ed:* markup.  Fix
3757      whitespace handling in artwork.
3758
3759   2004-11-27  Irefs in artwork generate monospaced entries in index.
3760
3761   2005-01-31  Fix TOC generation that was broken after changes in main
3762      XSLT.
3763
3764   2005-02-05  Bring in sync with cosmetic changes in rfc2629.xslt.
3765
3766   2005-05-07  Minor fix for change tracking in document title.  Support
3767      for table styles.
3768
3769   2005-06-18  Fix references to tables.
3770
3771   2005-10-15  Process t/@anchor.
3772
3773   2006-02-11  References: add "work in progress" for Internet Drafts.
3774
3775   2006-06-02  Use XSL 1.1 WD Feb 2006.
3776
3777   2007-03-21  Support optional text justification.
3778
3779   2007-05-19  Various improvements in spacing; also allow overriding
3780      the automatic list indentation via list/x:indent.
3781
3782   2009-04-08  Fix spacing in headers; add support for formatting for
3783      double-sided printing.
3784
3785   2009-08-01  Remove surplus empty pages when not generating double-
3786      sided output.
3787
3788F.7.  xsl11toAn.xslt
3789
3790   2004-05-17  Initial release.
3791
3792   2006-06-02  Use XSL 1.1 WD Feb 2006.
3793
3794F.8.  xsl11toFop.xslt
3795
3796   2004-05-17  Initial release.
3797
3798   2006-06-02  Use XSL 1.1 WD Feb 2006.
3799
3800
3801
3802
3803
3804
3805
3806
3807Reschke                                                        [Page 68]
3808
3809Documentation             RFC2629 through XSLT              January 2010
3810
3811
3812F.9.  xsl11toFop-0.95.xslt
3813
3814   2009-09-12  Support for FOP 0.20.5 and FOP 0.93 removed.  Please use
3815      FOP 0.95.
3816
3817   2008-03-15  Add a workaround to the fo:inline workaround (sigh).
3818
3819F.10.  xsl11toXep.xslt
3820
3821   2004-05-17  Initial release.
3822
3823   2004-09-04  Fix xep:index-item attributes.
3824
3825   2006-06-02  Use XSL 1.1 WD Feb 2006.
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863Reschke                                                        [Page 69]
3864
3865Documentation             RFC2629 through XSLT              January 2010
3866
3867
3868Index
3869
3870   A
3871      abnf-char-sequence Extension Element  23, 37
3872      allow-markup-in-artwork PI pseudo-attribute  9
3873      alternate HTML LINK element  17
3874      anchor-alias Extension Element  23, 37
3875      Anchors
3876         rfc.abstract  14
3877         rfc.authors  14
3878         rfc.copyright  14
3879         rfc.copyrightnotice  14
3880         rfc.figure.n  14
3881         rfc.figure.u.n  14
3882         rfc.index  14
3883         rfc.ipr  14
3884         rfc.iref.n  14
3885         rfc.note.n  14
3886         rfc.references  14
3887         rfc.section.n  14
3888         rfc.section.n.p.m  14
3889         rfc.status  14
3890         rfc.toc  14
3891         rfc.xref.name.n  14
3892      AntennaHouse XSL Formatter  21
3893      Apache FOP  21
3894      appendix HTML LINK element  17
3895      assign-section-number Extension Element  37
3896      author HTML LINK element  17
3897      authors-section PI pseudo-attribute  9
3898
3899   B
3900      background PI pseudo-attribute  7
3901      bb Extension Element  24, 37
3902      bc Extension Element  24, 37
3903      bcp14 Extension Element  23, 37
3904      blockquote Extension Element  24, 37
3905      boilerplate Extension Element  24, 37
3906      bt Extension Element  25, 37
3907
3908   C
3909      chapter HTML LINK element  17
3910      CHM format  20
3911      comments PI pseudo-attribute  7
3912      compact PI pseudo-attribute  7
3913      contents HTML LINK element  17
3914      copyright HTML LINK element  17
3915      Creator DCMI property  18
3916
3917
3918
3919Reschke                                                        [Page 70]
3920
3921Documentation             RFC2629 through XSLT              January 2010
3922
3923
3924   D
3925      Date.Issued DCMI property  18
3926      DCMI properties
3927         Creator  18
3928         Date.Issued  18
3929         Description.Abstract  18
3930         Identifier  18
3931         isPartOf  18
3932         Relation.Replaces  18
3933      Description.Abstract DCMI property  18
3934      dfn Extension Element  25, 37
3935      duplex PI pseudo-attribute  9
3936
3937   E
3938      editing PI pseudo-attribute  7
3939      Extension Elements
3940         abnf-char-sequence  23, 37
3941         anchor-alias  23, 37
3942         assign-section-number  37
3943         bb  24, 37
3944         bc  24, 37
3945         bcp14  23, 37
3946         blockquote  24, 37
3947         boilerplate  24, 37
3948         bt  25, 37
3949         dfn  25, 37
3950         h  25, 37
3951         highlight  25, 37
3952         include-author  37
3953         length-of  25, 37
3954         link  25, 37
3955         lt  26, 37
3956         note  26, 37
3957         parse-xml  26, 37
3958         q  26, 37
3959         rdf:Description  37
3960         ref  26, 37
3961         source  27, 37
3962         span  37
3963         sup  27, 37
3964         x  37
3965
3966   F
3967      Firefox
3968         1.*/2.*  16
3969         3.*  15
3970      footer PI pseudo-attribute  7
3971
3972
3973
3974
3975Reschke                                                        [Page 71]
3976
3977Documentation             RFC2629 through XSLT              January 2010
3978
3979
3980   G
3981      generator HTML META element  18
3982      Google Chrome  15
3983      Grammar  37
3984
3985   H
3986      h Extension Element  25, 37
3987      header PI pseudo-attribute  7
3988      highlight Extension Element  25, 37
3989      HTML compliance  17
3990      HTML LINK elements
3991         alternate  17
3992         appendix  17
3993         author  17
3994         chapter  17
3995         contents  17
3996         copyright  17
3997         index  17
3998      HTML META elements
3999         generator  18
4000         keywords  18
4001
4002   I
4003      Identifier DCMI property  18
4004      include PI pseudo-attribute  8
4005      include-author Extension Element  37
4006      include-references-in-index PI pseudo-attribute  9
4007      index HTML LINK element  17
4008      inline PI pseudo-attribute  7
4009      Internet Explorer 5.5  15
4010      Internet Explorer 6  15
4011      Internet Explorer 7  15
4012      Internet Explorer 8  15
4013      iprnotified PI pseudo-attribute  7
4014      isPartOf DCMI property  18
4015
4016   J
4017      justification PI pseudo-attribute  9
4018
4019   K
4020      keywords HTML META element  18
4021
4022   L
4023      length-of Extension Element  25, 37
4024      link Extension Element  25, 37
4025      linkmailto PI pseudo-attribute  7
4026      lt Extension Element  26, 37
4027
4028
4029
4030
4031Reschke                                                        [Page 72]
4032
4033Documentation             RFC2629 through XSLT              January 2010
4034
4035
4036   M
4037      Microsoft Help  20
4038      Mozilla  15-16
4039      MSXML3  15
4040      MSXML4  15
4041
4042   N
4043      needLines PI pseudo-attribute  8
4044      NoScript  15
4045      note Extension Element  26, 37
4046
4047   O
4048      Opera  15-16
4049
4050   P
4051      Parameters
4052         xml2rfc-background  7
4053         xml2rfc-comments  7
4054         xml2rfc-compact  7
4055         xml2rfc-editing  7
4056         xml2rfc-ext-allow-markup-in-artwork  9
4057         xml2rfc-ext-authors-section  9
4058         xml2rfc-ext-duplex  9
4059         xml2rfc-ext-include-references-in-index  9
4060         xml2rfc-ext-justification  9
4061         xml2rfc-ext-parse-xml-in-artwork  9
4062         xml2rfc-ext-sec-no-trailing-dots  9
4063         xml2rfc-ext-support-rfc2731  9
4064         xml2rfc-footer  7
4065         xml2rfc-header  7
4066         xml2rfc-inline  7
4067         xml2rfc-iprnotified  7
4068         xml2rfc-linkmailto  7
4069         xml2rfc-private  7
4070         xml2rfc-refparent  7
4071         xml2rfc-rfcedstyle  7
4072         xml2rfc-sortrefs  7
4073         xml2rfc-symrefs  7
4074         xml2rfc-toc  7
4075         xml2rfc-tocdepth  7
4076         xml2rfc-topblock  7
4077      parse-xml Extension Element  26, 37
4078      parse-xml-in-artwork PI pseudo-attribute  9
4079      private PI pseudo-attribute  7
4080      Processing Instruction pseudo attributes
4081         allow-markup-in-artwork  9
4082         authors-section  9
4083         background  7
4084
4085
4086
4087Reschke                                                        [Page 73]
4088
4089Documentation             RFC2629 through XSLT              January 2010
4090
4091
4092         comments  7
4093         compact  7
4094         duplex  9
4095         editing  7
4096         footer  7
4097         header  7
4098         ijustification  9
4099         include  8
4100         include-references-in-index  9
4101         inline  7
4102         iprnotified  7
4103         linkmailto  7
4104         needLines  8
4105         parse-xml-in-artwork  9
4106         private  7
4107         refparent  7
4108         rfcedstyle  7
4109         sec-no-trailing-dots  9
4110         slides  8
4111         sortrefs  7
4112         strict  8
4113         subcompact  8
4114         support-rfc2731  9
4115         symrefs  7
4116         toc  7
4117         tocdepth  7
4118         tocindent  8
4119         tocompact  8
4120         topblock  7
4121
4122   Q
4123      q Extension Element  26, 37
4124
4125   R
4126      rdf:Description Extension Element  37
4127      ref Extension Element  26, 37
4128      refparent PI pseudo-attribute  7
4129      Relation.Replaces DCMI property  18
4130      RELAX NG Compact Schema  37
4131      rfc.abstract anchor  14
4132      rfc.authors anchor  14
4133      rfc.copyright anchor  14
4134      rfc.copyrightnotice anchor  14
4135      rfc.figure.n anchor  14
4136      rfc.figure.u.n anchor  14
4137      rfc.index anchor  14
4138      rfc.ipr anchor  14
4139      rfc.iref.n anchor  14
4140
4141
4142
4143Reschke                                                        [Page 74]
4144
4145Documentation             RFC2629 through XSLT              January 2010
4146
4147
4148      rfc.note.n anchor  14
4149      rfc.references anchor  14
4150      rfc.references.n anchor  14
4151      rfc.section.n anchor  14
4152      rfc.section.n.p.m anchor  14
4153      rfc.status anchor  14
4154      rfc.toc anchor  14
4155      rfc.xref.name.n anchor  14
4156      rfcedstyle PI pseudo-attribute  7
4157
4158   S
4159      Safari  15-16
4160         3.*  15
4161      Saxon  15
4162      Schema  37
4163      sec-no-trailing-dots PI pseudo-attribute  9
4164      slides PI pseudo-attribute  8
4165      sortrefs PI pseudo-attribute  7
4166      source Extension Element  27, 37
4167      span Extension Element  37
4168      strict PI pseudo-attribute  8
4169      subcompact PI pseudo-attribute  8
4170      sup Extension Element  27, 37
4171      support-rfc2731 PI pseudo-attribute  9
4172      symrefs PI pseudo-attribute  7
4173
4174   T
4175      toc PI pseudo-attribute  7
4176      tocdepth PI pseudo-attribute  7
4177      tocindent PI pseudo-attribute  8
4178      tocompact PI pseudo-attribute  8
4179      topblock PI pseudo-attribute  7
4180
4181   X
4182      x Extension Element  37
4183      Xalan  15
4184      xml-stylesheet PI  17
4185      xml2rfc-background parameter  7
4186      xml2rfc-comments parameter  7
4187      xml2rfc-editing parameter  7
4188      xml2rfc-ext-allow-markup-in-artwork parameter  9
4189      xml2rfc-ext-authors-section parameter  9
4190      xml2rfc-ext-duplex  9
4191      xml2rfc-ext-include-references-in-index parameter  9
4192      xml2rfc-ext-justification parameter  9
4193      xml2rfc-ext-parse-xml-in-artwork parameter  9
4194      xml2rfc-ext-sec-no-trailing-dots parameter  9
4195      xml2rfc-ext-support-rfc2731 parameter  9
4196
4197
4198
4199Reschke                                                        [Page 75]
4200
4201Documentation             RFC2629 through XSLT              January 2010
4202
4203
4204      xml2rfc-footer parameter  7
4205      xml2rfc-header parameter  7
4206      xml2rfc-inline parameter  7
4207      xml2rfc-iprnotified parameter  7
4208      xml2rfc-linkmailto parameter  7
4209      xml2rfc-private parameter  7
4210      xml2rfc-refparent parameter  7
4211      xml2rfc-rfcedstyle parameter  7
4212      xml2rfc-sortrefs parameter  7
4213      xml2rfc-symrefs parameter  7
4214      xml2rfc-toc parameter  7
4215      xml2rfc-tocdepth parameter  7
4216      xml2rfc-topblock parameter  7
4217      xsltproc  15
4218         passing parameters  6
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255Reschke                                                        [Page 76]
4256
4257Documentation             RFC2629 through XSLT              January 2010
4258
4259
4260Author's Address
4261
4262   Julian F. Reschke
4263   greenbytes GmbH
4264   Hafenweg 16
4265   Muenster, NW  48155
4266   Germany
4267
4268   Phone: +49 251 2807760
4269   Email: julian.reschke@greenbytes.de
4270   URI:   http://greenbytes.de/tech/webdav/
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311Reschke                                                        [Page 77]
4312
Note: See TracBrowser for help on using the repository browser.