source: rfc2629xslt/rfc2629xslt.txt @ 285

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

Upgrade to latest version of rfc2629.xslt

  • Property svn:eol-style set to native
File size: 101.5 KB
Line 
1
2
3
4RFC2629 through XSLT                                          J. Reschke
5                                                              greenbytes
6                                                           July 18, 2008
7
8
9            Transforming RFC2629-formatted XML through XSLT
10
11
12Table of Contents
13
14   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
15   2.  Supported RFC2629 elements . . . . . . . . . . . . . . . . . .  4
16     2.1.   Extension elements  . . . . . . . . . . . . . . . . . . .  4
17   3.  Processing Instructions  . . . . . . . . . . . . . . . . . . .  5
18     3.1.   Supported xml2rfc-compatible PIs  . . . . . . . . . . . .  6
19     3.2.   Unsupported xml2rfc-compatible PIs  . . . . . . . . . . .  7
20     3.3.   Extension PIs . . . . . . . . . . . . . . . . . . . . . .  8
21   4.  Anchors  . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
22   5.  Supported XSLT engines . . . . . . . . . . . . . . . . . . . . 13
23     5.1.   Standalone Engines  . . . . . . . . . . . . . . . . . . . 13
24     5.2.   In-Browser Engines  . . . . . . . . . . . . . . . . . . . 13
25   6.  Transforming to HTML . . . . . . . . . . . . . . . . . . . . . 15
26     6.1.   HTML compliance . . . . . . . . . . . . . . . . . . . . . 15
27     6.2.   Standard HTML LINK elements . . . . . . . . . . . . . . . 15
28     6.3.   Standard HTML metadata  . . . . . . . . . . . . . . . . . 16
29     6.4.   Dublin Core (RFC2731) metadata  . . . . . . . . . . . . . 16
30     6.5.   Experimental hCard support  . . . . . . . . . . . . . . . 16
31   7.  Transforming to XHTML  . . . . . . . . . . . . . . . . . . . . 17
32   8.  Transforming to CHM (Microsoft Compiled Help)  . . . . . . . . 18
33   9.  Transforming to PDF via XSL-FO . . . . . . . . . . . . . . . . 19
34     9.1.   Via XSL-FO  . . . . . . . . . . . . . . . . . . . . . . . 19
35       9.1.1.  Extension feature matrix . . . . . . . . . . . . . . . 19
36       9.1.2.  Example: producing output for Apache FOP . . . . . . . 20
37     9.2.   Via X(HTML) . . . . . . . . . . . . . . . . . . . . . . . 20
38   10. Generic Extensions . . . . . . . . . . . . . . . . . . . . . . 21
39     10.1.  <abnf-char-sequence> element  . . . . . . . . . . . . . . 21
40     10.2.  <anchor-alias> element  . . . . . . . . . . . . . . . . . 21
41     10.3.  <bcp14> element . . . . . . . . . . . . . . . . . . . . . 21
42     10.4.  <bb> element  . . . . . . . . . . . . . . . . . . . . . . 22
43     10.5.  <bc> element  . . . . . . . . . . . . . . . . . . . . . . 22
44     10.6.  <blockquote> element  . . . . . . . . . . . . . . . . . . 22
45     10.7.  <bt> element  . . . . . . . . . . . . . . . . . . . . . . 22
46     10.8.  <dfn> element . . . . . . . . . . . . . . . . . . . . . . 23
47     10.9.  <h> element . . . . . . . . . . . . . . . . . . . . . . . 23
48     10.10. <length-of> element . . . . . . . . . . . . . . . . . . . 23
49     10.11. <link> element  . . . . . . . . . . . . . . . . . . . . . 23
50     10.12. <lt> element  . . . . . . . . . . . . . . . . . . . . . . 23
51     10.13. <parse-xml> element . . . . . . . . . . . . . . . . . . . 24
52
53
54
55Reschke                                                         [Page 1]
56
57Documentation             RFC2629 through XSLT                 July 2008
58
59
60     10.14. <q> element . . . . . . . . . . . . . . . . . . . . . . . 24
61     10.15. <ref> element . . . . . . . . . . . . . . . . . . . . . . 24
62     10.16. <source> element  . . . . . . . . . . . . . . . . . . . . 24
63     10.17. <sup> element . . . . . . . . . . . . . . . . . . . . . . 25
64     10.18. Extensions to Xml2rfc <iref> element  . . . . . . . . . . 25
65     10.19. Extensions to Xml2rfc <list> element  . . . . . . . . . . 25
66     10.20. Extensions to Xml2rfc <section> element . . . . . . . . . 25
67     10.21. Extensions to Xml2rfc <xref> element  . . . . . . . . . . 26
68   11. Utilities  . . . . . . . . . . . . . . . . . . . . . . . . . . 27
69     11.1.  Checking References . . . . . . . . . . . . . . . . . . . 27
70     11.2.  Generating Graphs from References . . . . . . . . . . . . 29
71     11.3.  Producing reference entries for books . . . . . . . . . . 29
72     11.4.  Down-converting to RFC2629bis DTD . . . . . . . . . . . . 30
73     11.5.  Extracting artwork  . . . . . . . . . . . . . . . . . . . 30
74     11.6.  GRRDL . . . . . . . . . . . . . . . . . . . . . . . . . . 31
75   12. Informative References . . . . . . . . . . . . . . . . . . . . 32
76   Appendix A.  RELAX NG Compact Schema . . . . . . . . . . . . . . . 34
77   Appendix B.  Implementation Notes  . . . . . . . . . . . . . . . . 42
78     B.1.   Recognized type attributes for <artwork> element  . . . . 42
79   Appendix C.  License . . . . . . . . . . . . . . . . . . . . . . . 43
80   Appendix D.  Change Logs . . . . . . . . . . . . . . . . . . . . . 44
81     D.1.   Package . . . . . . . . . . . . . . . . . . . . . . . . . 44
82     D.2.   amazon-asin.xslt  . . . . . . . . . . . . . . . . . . . . 44
83     D.3.   check-references.xslt . . . . . . . . . . . . . . . . . . 44
84     D.4.   gen-reference-graph.xslt  . . . . . . . . . . . . . . . . 45
85     D.5.   rfc2629.xslt  . . . . . . . . . . . . . . . . . . . . . . 45
86     D.6.   rfc2629toFO.xslt  . . . . . . . . . . . . . . . . . . . . 55
87     D.7.   xsl11toAn.xslt  . . . . . . . . . . . . . . . . . . . . . 57
88     D.8.   xsl11toFop.xslt . . . . . . . . . . . . . . . . . . . . . 57
89     D.9.   xsl11toFop-0.93.xslt  . . . . . . . . . . . . . . . . . . 57
90     D.10.  xsl11toXep.xslt . . . . . . . . . . . . . . . . . . . . . 57
91   Index  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
92   Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 65
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111Reschke                                                         [Page 2]
112
113Documentation             RFC2629 through XSLT                 July 2008
114
115
1161.  Introduction
117
118   This document describes a set of XSLT transformations that can be
119   used to transform RFC2629-compliant XML (see [RFC2629]) to various
120   output formats, such as HTML and PDF.  The main topics are
121
122   o  compliance to the xml2rfc XML element set (Section 2),
123
124   o  support for xml2rfc processing instructions (Section 3),
125
126   o  the names of anchor elements generated in HTML and PDF output
127      (Section 4),
128
129   o  various XSLT engines that can be used (Section 5),
130
131   o  outputting HTML (Section 6) and XHTML (Section 7),
132
133   o  outputting CHM (Compiled Microsoft Help, Section 8),
134
135   o  outputting PDF through XSL-FO (Section 9) and
136
137   o  various utilities (Section 11).
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                 July 2008
170
171
1722.  Supported RFC2629 elements
173
174   "rfc2629.xslt" supports both all RFC2629 grammar elements and the
175   extensions implemented in xml2rfc 1.21.
176
1772.1.  Extension elements
178
179   In addition, "rfc2629.xslt" supports a set of extension elements,
180   using elements and attributes in the namespace
181   "http://greenbytes.de/2002/rfcedit".  They are used for
182
183   o  simple issue tracking and change tracking and
184
185   o  adding additional metadata to the generated documents (such as
186      HTML LINK elements to related documents, see Section 6.2).
187
188   Note that these extensions are experimental.  Please email the author
189   in case you're interested in using these extensions.
190
191
192
193
194
195
196
197
198
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                 July 2008
226
227
2283.  Processing Instructions
229
230   All PIs can be set as XSLT parameter as well, overriding any value
231   that is found in the source file to be transformed.
232
233   Using processing instructions:
234
235   <?rfc toc="yes"?>
236   <?rfc-ext support-rfc2731="no"?>
237
238   Using XSLT parameters (Saxon):
239
240   java -cp saxon.jar com.icl.saxon.StyleSheet source.xml rfc2629.xslt \
241     xml2rfc-toc=yes xml2rfc-ext-support-rfc2731=no > result.html
242
243   Using XSLT parameters (xsltproc):
244
245   xsltproc --param xml2rfc-toc '"yes"' \
246      --param xml2rfc-ext-support-rfc2731 '"no"' \
247      rfc2629.xslt source.xml > result.html
248
249   (note the required quoting of string parameters)
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                 July 2008
282
283
2843.1.  Supported xml2rfc-compatible PIs
285
286   +-------+----------------+--------------------+---------+-----------+
287   | PI    | PI             | XSLT parameter     | default | comment   |
288   | targe | pseudo-attribu | name               |         |           |
289   | t     | te             |                    |         |           |
290   +-------+----------------+--------------------+---------+-----------+
291   | rfc   | background     | xml2rfc-background | (not    |           |
292   |       |                |                    | set)    |           |
293   |       |                |                    |         |           |
294   | rfc   | compact        | xml2rfc-compact    | "no"    | only      |
295   |       |                |                    |         | applies   |
296   |       |                |                    |         | to HTML   |
297   |       |                |                    |         | output    |
298   |       |                |                    |         | method    |
299   |       |                |                    |         | when      |
300   |       |                |                    |         | printing  |
301   |       |                |                    |         |           |
302   | rfc   | comments       | xml2rfc-comments   | (not    |           |
303   |       |                |                    | set)    |           |
304   |       |                |                    |         |           |
305   | rfc   | editing        | xml2rfc-editing    | "no"    |           |
306   |       |                |                    |         |           |
307   | rfc   | footer         | xml2rfc-footer     | (not    |           |
308   |       |                |                    | set)    |           |
309   |       |                |                    |         |           |
310   | rfc   | header         | xml2rfc-header     | (not    |           |
311   |       |                |                    | set)    |           |
312   |       |                |                    |         |           |
313   | rfc   | inline         | xml2rfc-inline     | (not    |           |
314   |       |                |                    | set)    |           |
315   |       |                |                    |         |           |
316   | rfc   | iprnotified    | xml2rfc-iprnotifie | "no"    |           |
317   |       |                | d                  |         |           |
318   |       |                |                    |         |           |
319   | rfc   | linkmailto     | xml2rfc-linkmailto | "yes"   |           |
320   |       |                |                    |         |           |
321   | rfc   | private        | xml2rfc-private    | (not    |           |
322   |       |                |                    | set)    |           |
323   |       |                |                    |         |           |
324   | rfc   | sortrefs       | xml2rfc-sortrefs   | "no"    |           |
325   |       |                |                    |         |           |
326
327
328
329
330
331
332
333
334
335Reschke                                                         [Page 6]
336
337Documentation             RFC2629 through XSLT                 July 2008
338
339
340   | rfc   | symrefs        | xml2rfc-symrefs    | "yes"   | The       |
341   |       |                |                    |         | default   |
342   |       |                |                    |         | has       |
343   |       |                |                    |         | changed   |
344   |       |                |                    |         | from "no" |
345   |       |                |                    |         | to "yes"  |
346   |       |                |                    |         | as of     |
347   |       |                |                    |         | June 6,   |
348   |       |                |                    |         | 2007 and  |
349   |       |                |                    |         | xml2rfc   |
350   |       |                |                    |         | 1.33pre4. |
351   |       |                |                    |         |           |
352   | rfc   | toc            | xml2rfc-toc        | "no"    |           |
353   |       |                |                    |         |           |
354   | rfc   | tocdepth       | xml2rfc-tocdepth   | 99      |           |
355   |       |                |                    |         |           |
356   | rfc   | topblock       | xml2rfc-topblock   | "yes"   |           |
357   +-------+----------------+--------------------+---------+-----------+
358
3593.2.  Unsupported xml2rfc-compatible PIs
360
361   +----------+------------------+-------------------------------------+
362   | PI       | PI               | comment                             |
363   | target   | pseudo-attribute |                                     |
364   +----------+------------------+-------------------------------------+
365   | rfc      | include          | incompatible with XML/XSLT          |
366   |          |                  | processing model                    |
367   |          |                  |                                     |
368   | rfc      | needLines        |                                     |
369   |          |                  |                                     |
370   | rfc      | slides           |                                     |
371   |          |                  |                                     |
372   | rfc      | strict           |                                     |
373   |          |                  |                                     |
374   | rfc      | subcompact       |                                     |
375   |          |                  |                                     |
376   | rfc      | tocindent        | (defaults to "yes")                 |
377   |          |                  |                                     |
378   | rfc      | tocompact        |                                     |
379   +----------+------------------+-------------------------------------+
380
381
382
383
384
385
386
387
388
389
390
391Reschke                                                         [Page 7]
392
393Documentation             RFC2629 through XSLT                 July 2008
394
395
3963.3.  Extension PIs
397
398   +------+-----------------+-----------------------+------+-----------+
399   | PI   | PI              | XSLT parameter name   | defa | descripti |
400   | targ | pseudo-attribut |                       | ult  | on        |
401   | et   | e               |                       |      |           |
402   +------+-----------------+-----------------------+------+-----------+
403   | rfc- | allow-markup-in | xml2rfc-allow-markup- | "no" | Enables   |
404   | ext  | -artwork        | in-artwork            |      | support   |
405   |      |                 |                       |      | for       |
406   |      |                 |                       |      | specific  |
407   |      |                 |                       |      | elements  |
408   |      |                 |                       |      | inside    |
409   |      |                 |                       |      | abstract  |
410   |      |                 |                       |      | elements  |
411   |      |                 |                       |      | (using    |
412   |      |                 |                       |      | this      |
413   |      |                 |                       |      | extension |
414   |      |                 |                       |      | makes the |
415   |      |                 |                       |      | document  |
416   |      |                 |                       |      | incompati |
417   |      |                 |                       |      | ble to    |
418   |      |                 |                       |      | the       |
419   |      |                 |                       |      | RFC2629bi |
420   |      |                 |                       |      | s DTD;    |
421   |      |                 |                       |      | see       |
422   |      |                 |                       |      | descripti |
423   |      |                 |                       |      | on of     |
424   |      |                 |                       |      | conversio |
425   |      |                 |                       |      | n XSLT in |
426   |      |                 |                       |      | Section 1 |
427   |      |                 |                       |      | 1.4).     |
428   |      |                 |                       |      |           |
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447Reschke                                                         [Page 8]
448
449Documentation             RFC2629 through XSLT                 July 2008
450
451
452   | rfc- | authors-section | xml2rfc-ext-authors-s |      | When      |
453   | ext  |                 | ection                |      | "end",    |
454   |      |                 |                       |      | place the |
455   |      |                 |                       |      | authors   |
456   |      |                 |                       |      | section   |
457   |      |                 |                       |      | at the    |
458   |      |                 |                       |      | end (just |
459   |      |                 |                       |      | before    |
460   |      |                 |                       |      | the       |
461   |      |                 |                       |      | copyright |
462   |      |                 |                       |      | statement |
463   |      |                 |                       |      | s). This  |
464   |      |                 |                       |      | seems to  |
465   |      |                 |                       |      | be the    |
466   |      |                 |                       |      | preferred |
467   |      |                 |                       |      | order in  |
468   |      |                 |                       |      | the       |
469   |      |                 |                       |      | newest    |
470   |      |                 |                       |      | RFCs.     |
471   |      |                 |                       |      |           |
472   | rfc- | include-referen | xml2rfc-ext-include-r |      | When set  |
473   | ext  | ces-in-index    | eferences-in-index    |      | to "yes", |
474   |      |                 |                       |      | index     |
475   |      |                 |                       |      | entries   |
476   |      |                 |                       |      | are       |
477   |      |                 |                       |      | generated |
478   |      |                 |                       |      | for all   |
479   |      |                 |                       |      | reference |
480   |      |                 |                       |      | s.        |
481   |      |                 |                       |      |           |
482   | rfc- | justification   | xml2rfc-ext-justifica | "nev | "never":  |
483   | ext  |                 | tion                  | er"  | never     |
484   |      |                 |                       |      | emit      |
485   |      |                 |                       |      | justified |
486   |      |                 |                       |      | text,     |
487   |      |                 |                       |      | "always": |
488   |      |                 |                       |      | always    |
489   |      |                 |                       |      | emit      |
490   |      |                 |                       |      | justified |
491   |      |                 |                       |      | text,     |
492   |      |                 |                       |      | "print":  |
493   |      |                 |                       |      | only emit |
494   |      |                 |                       |      | justified |
495   |      |                 |                       |      | text for  |
496   |      |                 |                       |      | print     |
497   |      |                 |                       |      | media.    |
498   |      |                 |                       |      |           |
499
500
501
502
503Reschke                                                         [Page 9]
504
505Documentation             RFC2629 through XSLT                 July 2008
506
507
508   | rfc- | parse-xml-in-ar | xml2rfc-parse-xml-in- | "no" | May be    |
509   | ext  | twork           | artwork               |      | used to   |
510   |      |                 |                       |      | enable    |
511   |      |                 |                       |      | parsing   |
512   |      |                 |                       |      | of XML    |
513   |      |                 |                       |      | content   |
514   |      |                 |                       |      | in        |
515   |      |                 |                       |      | figures   |
516   |      |                 |                       |      | (MSXML    |
517   |      |                 |                       |      | only).    |
518   |      |                 |                       |      |           |
519   | rfc- | support-rfc2731 | xml2rfc-ext-support-r | "yes | Decides   |
520   | ext  |                 | fc2731                | "    | whether   |
521   |      |                 |                       |      | the HTML  |
522   |      |                 |                       |      | transform |
523   |      |                 |                       |      | ation     |
524   |      |                 |                       |      | should    |
525   |      |                 |                       |      | generate  |
526   |      |                 |                       |      | META tags |
527   |      |                 |                       |      | according |
528   |      |                 |                       |      | Section 6 |
529   |      |                 |                       |      | .4.       |
530   |      |                 |                       |      |           |
531   | rfc- | sec-no-trailing | xml2rfc-ext-sec-no-tr |      | When set  |
532   | ext  | -dots           | ailing-dots           |      | to "yes", |
533   |      |                 |                       |      | add       |
534   |      |                 |                       |      | trailing  |
535   |      |                 |                       |      | dots to   |
536   |      |                 |                       |      | section   |
537   |      |                 |                       |      | numbers.  |
538   |      |                 |                       |      | This      |
539   |      |                 |                       |      | seems to  |
540   |      |                 |                       |      | be the    |
541   |      |                 |                       |      | preferred |
542   |      |                 |                       |      | format in |
543   |      |                 |                       |      | the       |
544   |      |                 |                       |      | newest    |
545   |      |                 |                       |      | RFCs.     |
546   +------+-----------------+-----------------------+------+-----------+
547
548
549
550
551
552
553
554
555
556
557
558
559Reschke                                                        [Page 10]
560
561Documentation             RFC2629 through XSLT                 July 2008
562
563
5644.  Anchors
565
566   The transformation automatically generates anchors that are supposed
567   to be stable and predictable and that can be used to identify
568   specific parts of the document.  Anchors are generated both in HTML
569   and XSL-FO content (but the latter will only be used for PDF output
570   when the XSL-FO engine supports producing PDF anchors).
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615Reschke                                                        [Page 11]
616
617Documentation             RFC2629 through XSLT                 July 2008
618
619
620                 The following anchors get auto-generated:
621
622     +-----------------------+---------------------------------------+
623     | Anchor name           | Description                           |
624     +-----------------------+---------------------------------------+
625     | rfc.abstract          | Abstract                              |
626     |                       |                                       |
627     | rfc.authors           | Authors section                       |
628     |                       |                                       |
629     | rfc.copyright         | Copyright section                     |
630     |                       |                                       |
631     | rfc.copyrightnotice   | Copyright notice                      |
632     |                       |                                       |
633     | rfc.figure._n_        | Figures (titled)                      |
634     |                       |                                       |
635     | rfc.figure.u._n_      | Figures (untitled)                    |
636     |                       |                                       |
637     | rfc.index             | Index                                 |
638     |                       |                                       |
639     | rfc.ipr               | Intellectual Property                 |
640     |                       |                                       |
641     | rfc.iref._n_          | Internal references                   |
642     |                       |                                       |
643     | rfc.note._n_          | Notes (from front section)            |
644     |                       |                                       |
645     | rfc.references        | References                            |
646     |                       |                                       |
647     | rfc.references._n_    | Additional references                 |
648     |                       |                                       |
649     | rfc.section._n_       | Section _n_                           |
650     |                       |                                       |
651     | rfc.section._n_.p._m_ | Section _n_, paragraph _m_            |
652     |                       |                                       |
653     | rfc.status            | Status of memo                        |
654     |                       |                                       |
655     | rfc.table._n_         | Tables (titled)                       |
656     |                       |                                       |
657     | rfc.table.u._n_       | Tables (untitled)                     |
658     |                       |                                       |
659     | rfc.toc               | Table of contents                     |
660     |                       |                                       |
661     | rfc.xref._name_._n_   | References to reference _n_ to _name_ |
662     +-----------------------+---------------------------------------+
663
664
665
666
667
668
669
670
671Reschke                                                        [Page 12]
672
673Documentation             RFC2629 through XSLT                 July 2008
674
675
6765.  Supported XSLT engines
677
678   The transformation requires a non-standard extension function (see
679   exsl:node-set [1]) which is however widely available.  XSLT
680   processors that do not support this extension (or a functional
681   equivalent) currently are not supported.
682
6835.1.  Standalone Engines
684
685   The following XSLT engines are believed to work well:
686
687   o  MSXML3 and MSXML4 (<http://msdn.microsoft.com/xml>; these
688      processors do not support exsl:node-set(), but have a similar
689      proprietary extension)
690
691   o  Saxon (<http://saxon.sourceforge.net/>)
692
693   o  Xalan (<http://xml.apache.org/xalan-j/>)
694
695   o  xsltproc (libxslt) (<http://xmlsoft.org/XSLT/>, make sure that you
696      have a current version)
697
6985.2.  In-Browser Engines
699
700   The following browsers seem to work fine:
701
702   o  Internet Explorer 5.5 (Windows version, if MSXML3 is installed)
703
704   o  Internet Explorer 6
705
706   o  Internet Explorer 7
707
708   o  Firefox 3.* (release candidate available)
709
710   o  Safari 3 (starting with version 3.0.4)
711
712   The following browsers are known not to work properly:
713
714   o  Firefox 1.*/2.* (missing extension function - see change request
715      at Mozilla BugZilla 193678 [2])
716
717   o  Opera 9.21: execution fails, potentially to a somewhat complex
718      XPath expression (reported to Opera as bug 245725).  Opera 9.5:
719      transformation appears to work, but CSS isn't getting applied
720      (repored to Opera as bug 337388 on 2008-06-12).
721
722   o  Safari 2.* supports client-side XSLT as of MacOS X 10.4, but
723      misses required extension functions.  A problem with stylesheets
724
725
726
727Reschke                                                        [Page 13]
728
729Documentation             RFC2629 through XSLT                 July 2008
730
731
732      producing non-ASCII output (such as NBSP characters) has been
733      fixed as of OSX 10.4.4.  Both problems have been reported through
734      Apple's bug tracking system, see <http://drakken.dbc.mtview.ca.us/
735      pipermail/xml2rfc/2005-May/002073.html> and
736      <http://bugs.webkit.org/show_bug.cgi?id=4079>.
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783Reschke                                                        [Page 14]
784
785Documentation             RFC2629 through XSLT                 July 2008
786
787
7886.  Transforming to HTML
789
790   Transformation to HTML can be done inside the browser if it supports
791   XSLT.  To enable this, add the following processing instruction to
792   the start of the source file:
793
794     <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
795
796   (and ensure that "rfc2629.xslt" is present).
797
7986.1.  HTML compliance
799
800   The transformation result is supposed to conform to the HTML 4.01
801   strict DTD [HTML].  This can be checked using the W3C's online
802   validator at <http://validator.w3.org>.
803
8046.2.  Standard HTML LINK elements
805
806   LINK elements exist since HTML 2.0.  They can be used to embed
807   content-independant links inside the document.  Unfortunately, only
808   few user agents support this element.  Firefox users may want to
809   check the Link Widgets [3] extension.
810
811                 The following LINK elements are produced:
812
813   +-----------+-------------------------------------------------------+
814   | LINK type | description                                           |
815   +-----------+-------------------------------------------------------+
816   | alternate | for RFCs, a link to the authorative ASCII version on  |
817   |           | the IETF web site                                     |
818   |           |                                                       |
819   | appendic  | pointer to all top-level appendics                    |
820   |           |                                                       |
821   | author    | pointer to "authors" section                          |
822   |           |                                                       |
823   | chapter   | pointer to all top-level sections                     |
824   |           |                                                       |
825   | contents  | pointer to table of contents                          |
826   |           |                                                       |
827   | copyright | pointer to copyright statement                        |
828   |           |                                                       |
829   | index     | pointer to index                                      |
830   +-----------+-------------------------------------------------------+
831
832   The figure below shows how Mozilla Firefox 1.0 displays the Site
833   Navigation Bar for rfc2396.xml.
834
835
836
837
838
839Reschke                                                        [Page 15]
840
841Documentation             RFC2629 through XSLT                 July 2008
842
843
8446.3.  Standard HTML metadata
845
846          The following standard HTML META elements are produced:
847
848      +-----------+-------------------------------------------------+
849      | META name | description                                     |
850      +-----------+-------------------------------------------------+
851      | generator | from XSLT engine version and stylesheet version |
852      |           |                                                 |
853      | keywords  | from keyword elements in front section          |
854      +-----------+-------------------------------------------------+
855
8566.4.  Dublin Core (RFC2731) metadata
857
858   Unless turned off using the "rfc-ext support-rfc2731" processing
859   instruction, the transformation will generate metadata according to
860   [RFC2731].
861
862                The following DCMI properties are produced:
863
864   +-------------------------+-----------------------------------------+
865   | META name               | description                             |
866   +-------------------------+-----------------------------------------+
867   | DC.Creator              | from author information in front        |
868   |                         | section                                 |
869   |                         |                                         |
870   | DC.Date.Issued          | from date information in front section  |
871   |                         |                                         |
872   | DC.Description.Abstract | from abstract                           |
873   |                         |                                         |
874   | DC.Identifier           | document URN [RFC2648] from "docName"   |
875   |                         | attribute                               |
876   |                         |                                         |
877   | DC.Relation.Replaces    | from "obsoletes" attribute              |
878   +-------------------------+-----------------------------------------+
879
8806.5.  Experimental hCard support
881
882   The generated author information is formatted in hCard [4] format.
883
884
885
886
887
888
889
890
891
892
893
894
895Reschke                                                        [Page 16]
896
897Documentation             RFC2629 through XSLT                 July 2008
898
899
9007.  Transforming to XHTML
901
902   Transforming to XHTML requires slightly different XSLT output options
903   and is implemented by the derived transformation script
904   "rfc2629toXHTML.xslt".
905
906      Note: Microsoft Internet Explorer does _not_ support XHTML.
907      Therefore it usually makes more sense to generate plain old HTML.
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951Reschke                                                        [Page 17]
952
953Documentation             RFC2629 through XSLT                 July 2008
954
955
9568.  Transforming to CHM (Microsoft Compiled Help)
957
958   To generate a CHM file using Microsoft's HTML Help Compiler (hhc),
959   three files are required in addition to the HTML file.
960
961   1.  hhc - table of contents file (HTML)
962
963   2.  hhk - index file (HTML)
964
965   3.  hhp - project file (plain text)
966
967   The three files are generated with three specific transformations,
968   each requiring the additional XSLT parameter "basename" to specify
969   the filename prefix.
970
971   Example:
972
973   saxon rfc2616.xml rfc2629toHhp.xslt basename=rfc2616  > rfc2616.hhp
974   saxon rfc2616.xml rfc2629toHhc.xslt basename=rfc2616  > rfc2616.hhc
975   saxon rfc2616.xml rfc2629toHhk.xslt basename=rfc2616  > rfc2616.hhk
976   hhc rfc2616.hhp
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007Reschke                                                        [Page 18]
1008
1009Documentation             RFC2629 through XSLT                 July 2008
1010
1011
10129.  Transforming to PDF via XSL-FO
1013
10149.1.  Via XSL-FO
1015
1016   Transformation to XSL-FO [XSL-FO] format is available through
1017   "rfc2629toFO.xslt" (which includes "rfc2629.xslt", so keep both in
1018   the same folder).
1019
1020   Compared to HTML user agents, XSL-FO engines unfortunately either
1021   come as open source (for instance, Apache FOP) or feature-complete
1022   (for instance, AntennaHouse XSL Formatter), but not both at the same
1023   time.
1024
1025   As Apache FOP needs special workarounds (page breaking, table
1026   layout), and some popular extensions aren't standardized yet, the
1027   translation produces a generic output (hopefully) conforming to
1028   [XSL-FO].  Specific backends ("xsl11toFop.xslt", "xsl11toXep.xslt",
1029   "xsl11toAn.xslt") then provide post-processing for the individual
1030   processors.
1031
1032      Note: the output is currently targeted at Apache FOP 0.20.5
1033      (<http://xmlgraphics.apache.org/fop/0.20.5/>), not the newer
1034      versions.
1035
10369.1.1.  Extension feature matrix
1037
1038   +------------+-------------+------------+-------------+-------------+
1039   |            | PDF anchors |     PDF    |     PDF     |    Index    |
1040   |            |             |  bookmarks |   document  |   cleanup   |
1041   |            |             |            | information |             |
1042   +------------+-------------+------------+-------------+-------------+
1043   | XSL 1.1    | no, but can |     yes    |   no, but   |     yes     |
1044   | WD [5]     |      be     |            |   uses XEP  |             |
1045   |            | auto-genera |            |    output   |             |
1046   |            |   ted from  |            |  extensions |             |
1047   |            |     "id"    |            |             |             |
1048   |            |  attributes |            |             |             |
1049   |            |             |            |             |             |
1050   | Antenna    |      no     |   yes [7]  |   yes [7]   |   yes [7]   |
1051   | House XSL  |             |  (from XSL |  (from XEP  |  (just page |
1052   | formatter  |             |     1.1    |   document  |  duplicate  |
1053   | [6]        |             | bookmarks) |    info)    | elimination |
1054   |            |             |            |             |  , from XSL |
1055   |            |             |            |             |   1.1 page  |
1056   |            |             |            |             |    index)   |
1057   |            |             |            |             |             |
1058
1059
1060
1061
1062
1063Reschke                                                        [Page 19]
1064
1065Documentation             RFC2629 through XSLT                 July 2008
1066
1067
1068   | Apache     |     yes     |  yes (from |      no     |      no     |
1069   | FOP [8]    |             |   XSL 1.1  |             |             |
1070   |            |             | bookmarks) |             |             |
1071   |            |             |            |             |             |
1072   | RenderX    |      no     |  yes [10]  |   yes [10]  |   yes [10]  |
1073   | XEP [9]    |             |  (from XSL |             |  (from XSL  |
1074   |            |             |     1.1    |             |   1.1 page  |
1075   |            |             | bookmarks) |             |    index)   |
1076   +------------+-------------+------------+-------------+-------------+
1077
10789.1.2.  Example: producing output for Apache FOP
1079
1080   Example:
1081
1082   saxon rfc2616.xml rfc2629toFo.xslt > tmp.fo
1083   saxon tmp.fo xsl11toFop.xslt > rfc2629.fo
1084
10859.2.  Via X(HTML)
1086
1087   PDF output can also be produced directly from (X)HTML.  One simple
1088   approach is to rely on the browser's printing function, and to use a
1089   printer driver that produces PDF.  Depending on the brower's CSS
1090   capabilities, the output will behave properly with respect to table
1091   breaks etc.
1092
1093   An alternative is PrinceXML (see <http://www.princexml.com/>), which
1094   can produce PDF directly from (X)HTML input, based on the CSS
1095   printing information.
1096
1097   For instance, PDF output with text justification turned on can be
1098   produced with:
1099
1100   saxon input.xml rfc2629toXHTML.xslt xml2rfc-ext-justification=print \
1101     > output.xhtml
1102   prince output.xhtml output.pdf
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119Reschke                                                        [Page 20]
1120
1121Documentation             RFC2629 through XSLT                 July 2008
1122
1123
112410.  Generic Extensions
1125
1126   This section documents extensions implemented in "rfc2629.xslt",
1127   using the extension namespace "http://purl.org/net/xml2rfc/ext".
1128
112910.1.  <abnf-char-sequence> element
1130
1131   Converts the contained quoted string into a hex-encoded character
1132   sequence, for use in case-sensitive ABNF productions.
1133
1134   For instance, "<x:abnf-char-sequence>"HTTP"</x:abnf-char-sequence>"
1135   gets converted to "%x48.54.54.50".
1136
113710.2.  <anchor-alias> element
1138
1139   Using its "value" attribute, this element allows the definition of an
1140   internal link target alias for the enclosing element.  This alias can
1141   then be used with the <ref> element for intra-document references.
1142
1143   Note that the anchor alias is not subject to the naming constraints
1144   that apply to anchor elements (which are XML names).
1145
114610.3.  <bcp14> element
1147
1148   This element marks the content as being one of the normative keywords
1149   defined in [RFC2119].
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175Reschke                                                        [Page 21]
1176
1177Documentation             RFC2629 through XSLT                 July 2008
1178
1179
1180   The DOCTYPE definition below allows using these keywords using XML
1181   entity expansion: such as in "...server &MUST; accept...".
1182
1183   <!DOCTYPE rfc [
1184    <!ENTITY MAY "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1185      >MAY</bcp14>">
1186    <!ENTITY MUST "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1187      >MUST</bcp14>">
1188    <!ENTITY MUST-NOT "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1189      >MUST NOT</bcp14>">
1190    <!ENTITY OPTIONAL "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1191      >OPTIONAL</bcp14>">
1192    <!ENTITY RECOMMENDED "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1193      >RECOMMENDED</bcp14>">
1194    <!ENTITY REQUIRED "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1195      >REQUIRED</bcp14>">
1196    <!ENTITY SHALL "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1197      >SHALL</bcp14>">
1198    <!ENTITY SHALL-NOT "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1199      >SHALL NOT</bcp14>">
1200    <!ENTITY SHOULD "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1201      >SHOULD</bcp14>">
1202    <!ENTITY SHOULD-NOT "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'
1203      >SHOULD NOT</bcp14>">]>
1204
120510.4.  <bb> element
1206
1207   Marking up a string as <bb> indicates that it represents the bottom
1208   line of a box drawing, replacing the "+" and "-" characters
1209   accordingly.
1210
121110.5.  <bc> element
1212
1213   Marking up a string as <bc> indicates that it represents a center
1214   line of a box drawing, replacing the "|" character accordingly.
1215
121610.6.  <blockquote> element
1217
1218   This element is like the "blockquote" element in [HTML] (note this is
1219   a block-level element!).  It should contain one or more <t> child
1220   elements.
1221
122210.7.  <bt> element
1223
1224   Marking up a string as <bt> indicates that it represents the top line
1225   of a box drawing, replacing the "+" and "-" characters accordingly.
1226
1227
1228
1229
1230
1231Reschke                                                        [Page 22]
1232
1233Documentation             RFC2629 through XSLT                 July 2008
1234
1235
123610.8.  <dfn> element
1237
1238   This element is like the "dfn" element in [HTML].
1239
124010.9.  <h> element
1241
1242   This element is like the "h" element in [XHTML2].
1243
124410.10.  <length-of> element
1245
1246   This element can be used to insert the length of another formatted
1247   section (in decimal).
1248
1249   Example: computing the Content-Length header value
1250
1251   <artwork>
1252   ...
1253   Content-Length: <x:length-of target="req"/>
1254
1255   <x:span anchor="req">123456789
1256   <x:span><artwork/>
1257
1258   The lenght computation counts line ends as two characters (CRLF).
1259
1260   Note that indentation characters in artwork _will_ be counted.  The
1261   "indented" attribute allows to specify the amount of indentation to
1262   be substracted from the computed length.
1263
126410.11.  <link> element
1265
1266   This element can be added as a top-level child element below <rfc> to
1267   indicate additional link information.  It's currently used only when
1268   generating HTML output, in which case an HTML <link> element with
1269   identical attributes gets generated.
1270
1271   Example: generating HTML link element
1272
1273           <x:link xmlns="http://purl.org/net/xml2rfc/ext"
1274               rel="Bookmark"
1275               title="IETF WEBDAV Working Group"
1276               href="http://ftp.ics.uci.edu/pub/ietf/webdav/"/>
1277
127810.12.  <lt> element
1279
1280   Used for grouping multiple <t> elements into a single list item.
1281
1282
1283
1284
1285
1286
1287Reschke                                                        [Page 23]
1288
1289Documentation             RFC2629 through XSLT                 July 2008
1290
1291
129210.13.  <parse-xml> element
1293
1294   This element instructs the processor to parse the contents as XML and
1295   to warn when there's a problem (requires either MSXML or Saxon8 or
1296   newer).
1297
129810.14.  <q> element
1299
1300   This element is like the "q" element in [HTML].
1301
130210.15.  <ref> element
1303
1304   This element is a simplified variant of the <xref> element, in that
1305   no "target" attribute needs to be specified, instead the text
1306   contents acts as identifier.  That in itself wouldn't be terribly
1307   useful, but together with the <anchor-alias>, it allows referring to
1308   other parts of the document with minimal additional markup.
1309
1310   For instance, given an alias definition such as
1311
1312         <section title="Test" anchor="test">
1313           <x:anchor-alias value="alias1"/>
1314           <x:anchor-alias value="alias 2"/>
1315           ...
1316         </section>
1317
1318   the following simple references
1319
1320         <x:ref>test</x:ref>
1321         <x:ref>alias1</x:ref>
1322         <x:ref>alias 2</x:ref>
1323
1324   are equivalent to...:
1325
1326         <xref target="test">test</xref>
1327         <xref target="test">alias1</xref>
1328         <xref target="test">alias 2</xref>
1329
133010.16.  <source> element
1331
1332   Can be used to enhance a <reference> with information about the
1333   location for the XML source.  This can be used by the <xref>
1334   processing code to automatically extract the target section number.
1335
1336
1337
1338
1339
1340
1341
1342
1343Reschke                                                        [Page 24]
1344
1345Documentation             RFC2629 through XSLT                 July 2008
1346
1347
1348   For example:
1349
1350         ...
1351         <xref target="RFC2616" x:fmt="of" x:rel="#PUT" />
1352         ...
1353
1354         <reference target="RFC2616"/>
1355           ...
1356           <x:source href="rfc2616.xml"/>
1357           ...
1358
135910.17.  <sup> element
1360
1361   This element is like the "sup" element in [HTML].
1362
1363   Note: the down conversion to RFC2629 format replaces "x^y" by "x^y".
1364
136510.18.  Extensions to Xml2rfc <iref> element
1366
1367   The extension attribute below is allowed on the standard <iref>
1368   element:
1369
1370   o  x:for-anchor specifies that the <iref> will also be automatically
1371      inserted whenever the specified anchor is cross-referenced -- this
1372      may save entering lots of <iref> instances.  As a special case, a
1373      value of "" (empty string) refers to the anchor attribute of the
1374      closest ancestor.
1375
137610.19.  Extensions to Xml2rfc <list> element
1377
1378   The extension attribute below is allowed on the standard <list>
1379   element:
1380
1381   o  x:indent specifies the amount of indentation for list items in
1382      hanging lists.  This can be useful when the output format, such as
1383      XSL-FO, does not support automatical formatting.  The value takes
1384      an XSL-FO width, such as "5em".  The default is _length of longest
1385      label in characters_ times _0.8em_.
1386
1387   Also, the <list> element can take <x:lt> child elements instead of
1388   <t>, allowing to insert multiple paragraphs into a single list item.
1389
139010.20.  Extensions to Xml2rfc <section> element
1391
1392   The extension attribute below is allowed on the standard <list>
1393   element:
1394
1395
1396
1397
1398
1399Reschke                                                        [Page 25]
1400
1401Documentation             RFC2629 through XSLT                 July 2008
1402
1403
1404   o  x:fixed-section-number can be used to specify a fixed section
1405      number.  This can be useful when formatting historic documents
1406      that used a different numbering style.
1407
140810.21.  Extensions to Xml2rfc <xref> element
1409
1410   Three extension attributes are allowed on the standard <xref>
1411   element:
1412
1413   1.  x:sec can be specified to point to a specific section of the
1414       referenced document,
1415
1416   2.  x:rel may specify a relative reference to use when linking into
1417       the referenced document (if linking by section number is not
1418       available),
1419
1420   3.  x:fmt defines the text format to be used.
1421
1422   The following formats are defined for the x:fmt attribute:
1423
1424   , (Comma)  [_reference_], Section _sec_
1425
1426   () [_reference_] (Section _sec_)
1427
1428   anchor  Like the default format, but without brackets.
1429
1430   of Section _sec_ of [_reference_]
1431
1432   number  _sec_
1433
1434   none  No output (can be used to have xrefs to references without
1435      having them rendered as such)
1436
1437   sec  Section _sec_
1438
1439   These extensions are currently only supported for <xref> elements
1440   without child nodes.
1441
1442   If the processor knows how to reference the target section, it will
1443   generate a link directly to the target section, such as in [RFC2119],
1444   Section 5.
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455Reschke                                                        [Page 26]
1456
1457Documentation             RFC2629 through XSLT                 July 2008
1458
1459
146011.  Utilities
1461
146211.1.  Checking References
1463
1464   "check-references.xslt" can be used to check all references to RFC-
1465   and ID-series IETF publications and to W3C publications (note this
1466   script requires local copies of
1467   <ftp://ftp.isi.edu/in-notes/rfc-index.xml> and
1468   <http://www.w3.org/2002/01/tr-automation/tr.rdf> and will use the XML
1469   status information provided at <http://tools.ietf.org/>).
1470
1471   If the document is supposed to be published on the IETF standards
1472   track, the desired level can be specified using the parameter
1473   "intended-level" as 'PROPOSED', 'DRAFT' or 'STANDARD'.
1474
1475   Note: Downward references should be annotated using the <annotate>
1476   element, containing an <xref> to [BCP97].
1477
1478   When an XSLT 2.0 processor is used, links in the document can be
1479   checked as well using the "link-check" paramerer ('yes' or 'no').
1480   Note that this only works for http links to documents of tytpe
1481   text/*.
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511Reschke                                                        [Page 27]
1512
1513Documentation             RFC2629 through XSLT                 July 2008
1514
1515
1516   For instance, as of 2008-07-12, the script produces for
1517   <http://greenbytes.de/tech/webdav/rfc2518.xml>:
1518
1519   > saxon rfc2518.xml check-references.xslt intended-status=PROPOSED \
1520     link-check=yes
1521
1522   Normative References:
1523   ISO-11578: not checked
1524   ISO-639: not checked
1525   ISO-8601: not checked
1526   REC-xml-19980210: [FirstEdition] obsoleted by REC-xml-20001006
1527   REC-xml-names-19990114: [FirstEdition] obsoleted by
1528    REC-xml-names-20060816
1529   RFC1766: [PROPOSED STANDARD] obsoleted by RFC3066 RFC3282
1530   RFC2068: [PROPOSED STANDARD] obsoleted by RFC2616
1531   RFC2069: [PROPOSED STANDARD] obsoleted by RFC2617
1532   RFC2119: [BEST CURRENT PRACTICE] (-> BCP0014) ok
1533   RFC2141: [PROPOSED STANDARD] ok
1534   RFC2277: [BEST CURRENT PRACTICE] (-> BCP0018) ok
1535   RFC2396: [DRAFT STANDARD] obsoleted by RFC3986
1536   RFC2279: [DRAFT STANDARD] obsoleted by RFC3629
1537
1538   Informational References:
1539   REC-PICS-labels-961031: [REC] ok
1540   RFC1807: [INFORMATIONAL] ok
1541   RFC2026: [BEST CURRENT PRACTICE] (-> BCP0009) ok
1542   RFC2291: [INFORMATIONAL] ok
1543   RFC2376: [INFORMATIONAL] obsoleted by RFC3023
1544   RFC2413: [INFORMATIONAL] obsoleted by RFC5013
1545   USMARC: not checked
1546   WF: not checked
1547
1548   Link Targets
1549   <http://www.w3.org/TR/1998/REC-xml-19980210>: ok
1550   <http://www.w3.org/TR/1999/REC-xml-names-19990114>: ok
1551   <http://www.dlib.org/dlib/july96/lagoze/07lagoze.html>: ok
1552   <http://www.w3.org/pub/WWW/TR/REC-PICS-labels-961031.html>: ok
1553
1554   Recognized formats in the <seriesInfo> element are:
1555
1556   o  for RFCs, the name attribute must be "RFC", and the value
1557      attribute must be the number of the RFC,
1558
1559   o  for Internet Drafs, the name attribute must be "ID" or "Internet-
1560      Draft", and the value attribute must be the file name of the draft
1561      (including the two-digit running number, but excluding a file
1562      extension),
1563
1564
1565
1566
1567Reschke                                                        [Page 28]
1568
1569Documentation             RFC2629 through XSLT                 July 2008
1570
1571
1572   o  for W3C documents, the name attribute must be "W3C", must start
1573      with "W3C ", or must start with "World Wide Web Consortium ", and
1574      the value attribute must be the "shorthand" name of the
1575      specification, such as "REC-xml-19980210".
1576
157711.2.  Generating Graphs from References
1578
1579   "gen-reference-graph.xslt" generates a graph of RFC dependencies,
1580   using the same base data as in "check-references.xslt" (see
1581   Section 11.1).  Its output is a "dot" file, to be processed by
1582   GraphViz (see <http://www.graphviz.org/>).
1583
1584   The picture below shows the RFC dependencies in RFC2629.
1585
1586
158711.3.  Producing reference entries for books
1588
1589   "amazon-asin.xslt" uses the Amazon web services to generate a
1590   <reference> element for a given ASIN (ISBN).
1591
1592   For instance:
1593
1594   <?xml version="1.0" encoding="utf-8"?>
1595   <references>
1596    <reference target="urn:isbn:0134516591">
1597      <front>
1598        <title>Simple Book, The: An Introduction to Internet Management,
1599                  Revised Second Edition</title>
1600        <author surname="Rose"
1601                   fullname="Marshall T. Rose" initials="M. T. ">
1602          <organization/>
1603        </author>
1604        <author surname="Marshall"
1605                   fullname="Rose T. Marshall" initials="R. T.">
1606          <organization/>
1607        </author>
1608        <date year="1996" month="March"/>
1609      </front>
1610      <seriesInfo name="Prentice Hall" value=""/>
1611    </reference>
1612   </references>
1613
1614   Note that the resulting XML usually requires checking, in this case
1615   Amazon's database is playing tricks with Marshall's name...
1616
1617
1618
1619
1620
1621
1622
1623Reschke                                                        [Page 29]
1624
1625Documentation             RFC2629 through XSLT                 July 2008
1626
1627
162811.4.  Down-converting to RFC2629bis DTD
1629
1630   "clean-for-DTD.xslt" can be used to down-convert some extensions to a
1631   format that is supported by the base xml2rfc distribution.  Note that
1632   these extensions are experimental (feedback appreciated).
1633
1634   The following mappings are done:
1635
1636   o  <iref> elements inside <artwork> elements are moved in front of
1637      the enclosing <figure> element.
1638
1639   o  <xref> elements inside <artwork> are expanded just like in regular
1640      text (that is, the markup is stripped, but the element is replaced
1641      by the applicable replacement text).
1642
1643   o  <x:anchor-alias> elements get stripped.
1644
1645   o  <x:bcp14> elements get stripped.
1646
1647   o  <x:bb>, <x:bc> and <x:bt> elements get stripped.
1648
1649   o  <x:blockquote> elements get converted to indented text (through a
1650      <list> element).
1651
1652   o  <x:dfn> elements get stripped.
1653
1654   o  <x:h> elements get stripped.
1655
1656   o  <x:link> elements get stripped.
1657
1658   o  <x:q> elements get stripped, with apostrophes added around the
1659      text.
1660
1661   o  <x:ref> elements get replaced by <xref> elements, targetting
1662      either the anchor or another anchor with matching <x:anchor-alias>
1663      child element.
1664
166511.5.  Extracting artwork
1666
1667   With "extract-artwork.xslt", artwork elements named through the
1668   "name" attribute can be extracted.  This can be used to automatically
1669   check their syntax (for instance, when ABNFs appear within a figure
1670   element).
1671
1672   For instance:
1673   saxon rfc3986.xml extract-artwork.xslt name=uri.abnf
1674
1675   In addition, artwork of a specific type can be extracted, such as
1676
1677
1678
1679Reschke                                                        [Page 30]
1680
1681Documentation             RFC2629 through XSLT                 July 2008
1682
1683
1684   with:
1685   saxon rfc3986.xml extract-artwork.xslt type=abnf
1686
168711.6.  GRRDL
1688
1689   "rfc2629grddl.xslt" extracts RDF information.  This is experimental
1690   work-in-progress.  See <http://www.w3.org/TR/grddl/> for more
1691   information.
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735Reschke                                                        [Page 31]
1736
1737Documentation             RFC2629 through XSLT                 July 2008
1738
1739
174012.  Informative References
1741
1742   [BCP97]    Klensin, J. and S. Hartman, "Handling Normative References
1743              to Standards-Track Documents", BCP 97, RFC 4897,
1744              June 2007.
1745
1746   [HTML]     Raggett, D., Hors, A., and I. Jacobs, "HTML 4.01
1747              Specification", W3C REC-html401-19991224, December 1999,
1748              <http://www.w3.org/TR/html401/>.
1749
1750   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
1751              Requirement Levels", BCP 14, RFC 2119, March 1997.
1752
1753   [RFC2616]  Fielding, R., Gettys, J., Mogul, J., Nielsen, H.,
1754              Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
1755              Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.
1756
1757   [RFC2629]  Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629,
1758              June 1999.
1759
1760   [RFC2648]  Moats, R., "A URN Namespace for IETF Documents", RFC 2648,
1761              August 1999.
1762
1763   [RFC2731]  Kunze, J., "Encoding Dublin Core Metadata in HTML",
1764              RFC 2731, December 1999.
1765
1766   [RFC5234]  Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
1767              Specifications: ABNF", STD 68, RFC 5234, January 2008.
1768
1769   [RNC]      Clark, J., "RELAX NG Compact Syntax", OASIS , Nov 2002, <h
1770              ttp://www.oasis-open.org/committees/relax-ng/
1771              compact-20021121.html>.
1772
1773   [XHTML2]   Axelsson, J., Birbeck, M., Dubinko, M., Epperson, B.,
1774              Ishikawa, M., McCarron, S., Navarro, A., and S. Pemberton,
1775              "XHTML[TM] 2.0", W3C WD-xhtml2-20060726, July 2006,
1776              <http://www.w3.org/TR/xhtml2>.
1777
1778   [XSL-FO]   Berglund, A., "Extensible Stylesheet Language (XSL)
1779              Version 1.1", W3C REC-xsl11-20061205, Dec 2006,
1780              <http://www.w3.org/TR/2006/REC-xsl11-20061205/>.
1781
1782   [1]   <http://www.exslt.org/exsl/functions/node-set/
1783         exsl.node-set.html>
1784
1785   [2]   <http://bugzilla.mozilla.org/show_bug.cgi?id=193678>
1786
1787   [3]   <https://addons.mozilla.org/firefox/2933/>
1788
1789
1790
1791Reschke                                                        [Page 32]
1792
1793Documentation             RFC2629 through XSLT                 July 2008
1794
1795
1796   [4]   <http://microformats.org/wiki/hcard>
1797
1798   [5]   <http://www.w3.org/TR/2003/WD-xsl11-20031217/>
1799
1800   [6]   <http://www.antennahouse.com/>
1801
1802   [7]   <http://www.antennahouse.com/XSL20/axf-extension.htm>
1803
1804   [8]   <http://xml.apache.org/fop/>
1805
1806   [9]   <http://xep.xattic.com/>
1807
1808   [10]  <http://xep.xattic.com/xep/spec.html>
1809
1810   [11]  <http://www.thaiopensource.com/relaxng/jing.html>
1811
1812   [12]  <http://dpcarlisle.blogspot.com/2007/05/
1813         exslt-node-set-function.html>
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847Reschke                                                        [Page 33]
1848
1849Documentation             RFC2629 through XSLT                 July 2008
1850
1851
1852Appendix A.  RELAX NG Compact Schema
1853
1854   The RelaxNG schema ([RNC]) below can be used to validate input
1855   documents (for instance, with Jing [11]).
1856
1857   _Note that this is work in progress, and doesn't yet cover all
1858   extensions completely._
1859
1860  # WORK IN PROGRESS! PLEASE REPORT PROBLEMS TO THE AUTHOR.
1861
1862  # Define our extension namespace
1863  namespace x = "http://purl.org/net/xml2rfc/ext"
1864
1865  # Define GRDDL namespace
1866  namespace grddl = "http://www.w3.org/2003/g/data-view#"
1867
1868  # Define RDF namespace
1869  namespace rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
1870
1871  # Include rfc2629bis RNC grammar
1872  include "rfc2629.rnc" {
1873
1874    # Redefine <artwork> to allow markup
1875    artwork =
1876      element artwork {
1877        attlist.artwork,
1878        (TEXT
1879          | eref
1880          | iref
1881          | spanx
1882          | xref
1883          | x_abnf-char-sequence
1884          | x_bb
1885          | x_bc
1886          | x_bt
1887          | x_length-of
1888          | x_parse-xml
1889          | x_ref
1890          | x_span
1891          | x_x)*
1892      }
1893
1894    # Redefine <c> to allow our extension elements
1895    c =
1896      element c {
1897        attlist.c,
1898        (TEXT
1899          | xref
1900
1901
1902
1903Reschke                                                        [Page 34]
1904
1905Documentation             RFC2629 through XSLT                 July 2008
1906
1907
1908          | eref
1909          | iref
1910          | cref
1911          | spanx
1912          | x_ref)*
1913      }
1914
1915    # Redefine <cref> to allow more child elements
1916    cref =
1917      element cref {
1918        attlist.cref,
1919        (TEXT
1920          | eref)*
1921      }
1922
1923    # Redefine <list> element to allow <x:lt> child elements
1924    \list =
1925      element list {
1926        attlist.list,
1927        (t+ | x_lt+)
1928      }
1929
1930    # Redefine <preamble> to allow our extension elements
1931    preamble =
1932      element preamble {
1933        attlist.preamble,
1934        (TEXT
1935          | xref
1936          | eref
1937          | iref
1938          | cref
1939          | spanx
1940          | x_anchor-alias)*
1941      }
1942
1943    # Redefine <postamble> to allow our extension elements
1944    postamble =
1945      element postamble {
1946        attlist.postamble,
1947        (TEXT
1948          | xref
1949          | eref
1950          | iref
1951          | cref
1952          | spanx
1953          | x_bcp14)*
1954      }
1955
1956
1957
1958
1959Reschke                                                        [Page 35]
1960
1961Documentation             RFC2629 through XSLT                 July 2008
1962
1963
1964    # Redefine <reference> to allow our extension elements
1965    reference =
1966      element reference {
1967        attlist.reference,
1968        front,
1969        seriesInfo*,
1970        format*,
1971        annotation*,
1972        x_source?
1973      }
1974
1975    # Redefine <rfc> to allow our extension elements
1976    rfc =
1977      element rfc {
1978        attlist.rfc,
1979        x_link*,
1980        x_assign-section-number*,
1981        front,
1982        middle,
1983        back?
1984      }
1985
1986    # Redefine <section> to allow our extension elements
1987    section =
1988      element section {
1989        attlist.section,
1990        (t
1991         | figure
1992         | texttable
1993         | iref
1994         | section
1995         | x_anchor-alias
1996         | x_blockquote
1997         | rdf_Description)*
1998      }
1999
2000    # Redefine <spanx> to allow some markup
2001    spanx =
2002      element spanx {
2003        attlist.spanx,
2004        (TEXT
2005          | iref
2006          | xref
2007          | x_ref)*
2008      }
2009
2010    # Redefine <t> to allow our extension elements
2011    t =
2012
2013
2014
2015Reschke                                                        [Page 36]
2016
2017Documentation             RFC2629 through XSLT                 July 2008
2018
2019
2020      element t {
2021        attlist.t,
2022        (TEXT
2023         | \list
2024         | figure
2025         | xref
2026         | eref
2027         | iref
2028         | cref
2029         | spanx
2030         | vspace
2031         | x_abnf-char-sequence
2032         | x_anchor-alias
2033         | x_bcp14
2034         | x_dfn
2035         | x_h
2036         | x_q
2037         | x_ref
2038         | x_sup)*
2039      }
2040  }
2041
2042  # Extend attribute set for <iref> (see Section 10.18)
2043  attlist.iref &=
2044    attribute x:for-anchor { ATEXT }?
2045
2046  # Extend attribute set for <list> (see Section 10.19)
2047  attlist.list &=
2048    attribute x:indent { ATEXT }?
2049
2050  # Extend attribute set for <preamble>
2051  attlist.preamble &=
2052    attribute anchor { xsd:ID }?
2053
2054  # Extend attribute set for <rfc>
2055  attlist.rfc &=
2056    attribute grddl:transformation { ATEXT }?
2057
2058  # Extend attribute set for <section> (see Section 10.20)
2059  attlist.section &=
2060    attribute x:fixed-section-number { ATEXT }?
2061
2062  # Allow anchor attribute on <spanx>
2063  attlist.spanx &=
2064    attribute anchor { xsd:ID }?
2065
2066  # Extend attribute set for <xref> (see Section 10.21)
2067  attlist.xref &=
2068
2069
2070
2071Reschke                                                        [Page 37]
2072
2073Documentation             RFC2629 through XSLT                 July 2008
2074
2075
2076    attribute x:fmt  { "()" | "," | "anchor" | "of" | "number" | "sec" |
2077                       "none" }?,
2078    attribute x:rel  { ATEXT }?,
2079    attribute x:sec  { ATEXT }?
2080
2081  # Conversion to ABNF char sequence (see Section 10.1)
2082  x_abnf-char-sequence =
2083    element x:abnf-char-sequence {
2084      TEXT
2085    }
2086
2087  # Aliasing of anchors (see Section 10.2)
2088  x_anchor-alias =
2089    element x:anchor-alias {
2090      attribute value { TEXT },
2091      empty
2092    }
2093
2094  # Setting section numbers for internally generated sections
2095  # (experimental)
2096  x_assign-section-number =
2097    element x:assign-section-number {
2098      attribute builtin-target { "authors" },
2099      attribute number { TEXT },
2100      empty
2101    }
2102
2103  # Bottom line of box drawing (see Section 10.4)
2104  x_bb =
2105    element x:bb {
2106      (TEXT
2107        | iref
2108        | xref
2109        | x_bb
2110        | x_bc
2111        | x_bt
2112        | x_ref)*
2113    }
2114
2115  # Center line of box drawing (see Section 10.5)
2116  x_bc =
2117    element x:bc {
2118      (TEXT
2119        | iref
2120        | xref
2121        | x_bb
2122        | x_bc
2123        | x_bt
2124
2125
2126
2127Reschke                                                        [Page 38]
2128
2129Documentation             RFC2629 through XSLT                 July 2008
2130
2131
2132        | x_ref)*
2133    }
2134
2135  # BCP14/RFC2119 keywords (see Section 10.3)
2136  x_bcp14 =
2137    element x:bcp14 {
2138      "MAY"
2139      | "MUST"
2140      | "MUST NOT"
2141      | "NOT RECOMMENDED"
2142      | "OPTIONAL"
2143      | "RECOMMENDED"
2144      | "REQUIRED"
2145      | "SHALL"
2146      | "SHALL NOT"
2147      | "SHOULD"
2148      | "SHOULD NOT"
2149    }
2150
2151  # Blockquote (see Section 10.6)
2152  x_blockquote =
2153    element x:blockquote {
2154      attribute cite { URI }?,
2155      t+
2156    }
2157
2158  # Top line of box drawing (see Section 10.7)
2159  x_bt =
2160    element x:bt {
2161      (TEXT
2162        | iref
2163        | xref
2164        | x_bb
2165        | x_bc
2166        | x_bt
2167        | x_ref)*
2168    }
2169
2170  # Definition (see Section 10.8)
2171  x_dfn =
2172    element x:dfn {
2173      attribute anchor { xsd:ID }?,
2174      (TEXT
2175        | iref)*
2176    }
2177
2178  # Heading (see Section 10.9)
2179  x_h =
2180
2181
2182
2183Reschke                                                        [Page 39]
2184
2185Documentation             RFC2629 through XSLT                 July 2008
2186
2187
2188    element x:h {
2189      TEXT
2190    }
2191
2192  # Length Measurement (see Section 10.10)
2193  x_length-of =
2194    element x:length-of {
2195      attribute indented { NUMBER }?,
2196      attribute target { xsd:IDREF },
2197      empty
2198    }
2199
2200  # Link (see Section 10.11)
2201  x_link =
2202    element x:link {
2203      attribute href { URI },
2204      attribute title { TEXT }?,
2205      attribute rel { TEXT },
2206      empty
2207    }
2208
2209  # Extended list item (see Section 10.12)
2210  x_lt =
2211    element x:lt {
2212      attribute anchor { xsd:ID }?,
2213      attribute hangText { TEXT }?,
2214      t+
2215    }
2216
2217  # Signal XML content (see Section 10.13)
2218  x_parse-xml =
2219    element x:parse-xml {
2220      TEXT
2221    }
2222
2223  # Inline quote (see Section 10.14)
2224  x_q =
2225    element x:q {
2226      TEXT
2227    }
2228
2229  # Anchor reference (see Section 10.15)
2230  x_ref =
2231    element x:ref {
2232      TEXT
2233    }
2234
2235  # source information (see Section 10.16)
2236
2237
2238
2239Reschke                                                        [Page 40]
2240
2241Documentation             RFC2629 through XSLT                 July 2008
2242
2243
2244  x_source =
2245    element x:source {
2246      attribute basename { ATEXT }?,
2247      attribute href { URI },
2248      empty
2249    }
2250
2251  # superscript (see Section 10.17)
2252  x_sup =
2253    element x:sup {
2254      TEXT
2255    }
2256
2257  # Inline Span
2258  x_span =
2259    element x:span {
2260      attribute anchor { xsd:ID }?,
2261      (TEXT
2262        | x_parse-xml)*
2263    }
2264
2265  # Nop (for alignment in source)
2266  x_x =
2267    element x:x {
2268      empty
2269    }
2270
2271  # Nop (for alignment in source)
2272  rdf_Description =
2273    element rdf:Description {
2274      rdf_content
2275    }
2276
2277  rdf_content =
2278    ( TEXT | element * { rdf_content })*
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295Reschke                                                        [Page 41]
2296
2297Documentation             RFC2629 through XSLT                 July 2008
2298
2299
2300Appendix B.  Implementation Notes
2301
2302B.1.  Recognized type attributes for <artwork> element
2303
2304   Specific values in the <artwork> element's "type" attribute are
2305   recognized and cause a different visual style to be used:
2306
2307   +-------------------------------------+-----------------------------+
2308   | Media Type                          | Comment                     |
2309   +-------------------------------------+-----------------------------+
2310   | abnf                                | ABNF as per [RFC5234]       |
2311   |                                     |                             |
2312   | abnf2616                            | ABNF as per [RFC2616],      |
2313   |                                     | Section 2.1                 |
2314   |                                     |                             |
2315   | application/relax-ng-compact-syntax | Relax NG Compact Syntax as  |
2316   |                                     | per [RNC]                   |
2317   |                                     |                             |
2318   | application/xml-dtd                 | XML DTD                     |
2319   |                                     |                             |
2320   | message/http; msgtype="request"     | HTTP message, as per        |
2321   |                                     | [RFC2616], Section 19.1     |
2322   |                                     |                             |
2323   | message/http; msgtype="response"    | HTTP message, as per        |
2324   |                                     | [RFC2616], Section 19.1     |
2325   +-------------------------------------+-----------------------------+
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351Reschke                                                        [Page 42]
2352
2353Documentation             RFC2629 through XSLT                 July 2008
2354
2355
2356Appendix C.  License
2357
2358   Copyright (c) 2006-2008, Julian Reschke
2359   (julian.reschke@greenbytes.de)
2360
2361   All rights reserved.
2362
2363   Redistribution and use in source and binary forms, with or without
2364   modification, are permitted provided that the following conditions
2365   are met:
2366
2367   o  Redistributions of source code must retain the above copyright
2368      notice, this list of conditions and the following disclaimer.
2369
2370   o  Redistributions in binary form must reproduce the above copyright
2371      notice, this list of conditions and the following disclaimer in
2372      the documentation and/or other materials provided with the
2373      distribution.
2374
2375   o  Neither the name of Julian Reschke nor the names of its
2376      contributors may be used to endorse or promote products derived
2377      from this software without specific prior written permission.
2378
2379   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
2380   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
2381   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
2382   A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT
2383   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
2384   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
2385   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
2386   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2387   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2388   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
2389   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407Reschke                                                        [Page 43]
2408
2409Documentation             RFC2629 through XSLT                 July 2008
2410
2411
2412Appendix D.  Change Logs
2413
2414D.1.  Package
2415
2416   2006-01-01  Switch to BSD License.
2417
2418   2007-01-12  Update to xml2rfc v1.33pre2.
2419
2420   2007-03-31  Update to xml2rfc v1.33pre3.
2421
2422   2007-05-01  Add XSLT test cases.
2423
2424   2008-07-18  Experimental support for inlined rdf:Description elements
2425      (ignored by the formatter, extracted by rfc2629grddl).
2426
2427D.2.  amazon-asin.xslt
2428
2429   2003-11-16  Initial release.
2430
2431   2005-04-02  Fix two DTD issues.
2432
2433D.3.  check-references.xslt
2434
2435   2003-11-16  Initial release.
2436
2437   2003-11-16  Initial release.
2438
2439   2004-05-11  Add document status; print references type.
2440
2441   2005-01-01  Add experimental check for ID status.
2442
2443   2005-04-01  Add fixes from Bill Fenner.
2444
2445   2005-12-03  Add checks against local copy of
2446      <http://www.w3.org/2002/01/tr-automation/tr.rdf>.
2447
2448   2006-07-22  Add checks for standards levels.
2449
2450   2006-08-06  "check-ietf-references.xslt" replaced by "check-
2451      references.xslt".
2452
2453   2007-01-04  Use information online at <http://tools.ietf.org/> to
2454      retrieve Internet-Draft status information.
2455
2456   2007-06-16  Fix bug looking up ref type when inside change markup.
2457
2458
2459
2460
2461
2462
2463Reschke                                                        [Page 44]
2464
2465Documentation             RFC2629 through XSLT                 July 2008
2466
2467
2468   2008-06-14  Enhance output when draft was updated, and then published
2469      as RFC.
2470
2471   2008-07-12  Add XSLT2-based link target checking.
2472
2473D.4.  gen-reference-graph.xslt
2474
2475   2006-09-03  New.
2476
2477   2007-06-07  Use Carlisle method [12] to define exslt:node-set in
2478      msxsml (which means that the stylesheet can now be used with MSXML
2479      as well).
2480
2481   2007-10-15  Use W3C data from tr.rdf as well (experimental).
2482
2483D.5.  rfc2629.xslt
2484
2485   2001-03-28  Code rearranged, generate numbered section anchors for
2486      paragraphs (t) as well.  Fixes in index handling.
2487
2488   2001-04-12  Moved HTML output into XHTML namespace.
2489
2490   2001-10-02  Fixed default location for RFCs and numbering of section
2491      references.  Support ?rfc editing processing instruction.
2492
2493   2001-10-07  Made telephone number links active.
2494
2495   2001-10-08  Support for vspace element.
2496
2497   2001-10-09  Experimental support for rfc-issue PI.
2498
2499   2001-11-11  Support rfc private PI.  Removed bogus code reporting the
2500      WG in the header.
2501
2502   2001-11-11  Support rfc private PI.  Removed bogus code reporting the
2503      WG in the header.
2504
2505   2001-12-17  Support title attribute on references element
2506
2507   2002-01-05  Support for list/@style="@format"
2508
2509   2002-01-09  Display "closed" RFC issues as deleted
2510
2511   2002-01-14  Experimentally and optionally parse XML encountered in
2512      artwork elements (requires MSXSL).
2513
2514
2515
2516
2517
2518
2519Reschke                                                        [Page 45]
2520
2521Documentation             RFC2629 through XSLT                 July 2008
2522
2523
2524   2002-01-27  Some cleanup.  Moved RFC issues from PIs into namespaced
2525      elements.
2526
2527   2002-01-29  Added support for sortrefs PI.  Added support for figure
2528      names.
2529
2530   2002-02-07  Highlight parts of artwork which are too wide (72
2531      characters).
2532
2533   2002-02-12  Code rearrangement for static texts.  Fixes for section
2534      numbering.  TOC generation rewritten.
2535
2536   2002-02-15  Support for irefs in sections; support iref @primary=true
2537
2538   2002-03-03  Moved anchor prefix into a constant.  Added sanity checks
2539      on user anchor names.
2540
2541   2002-03-23  Bugfix in detection of matching org names when creating
2542      the header.  Fixed sorting in subitems.
2543
2544   2002-04-02  Fix TOC link HTML generation when no TOC is generated
2545      (created broken HTML table code).
2546
2547   2002-04-03  Made rendering of references more tolerant re: missing
2548      parts.
2549
2550   2002-04-08  Fixed reference numbering when references are split into
2551      separate sections.
2552
2553   2002-04-16  Fix default namespace (shouldn't be set for HTML output
2554      method).
2555
2556   2002-04-19  Lowercase internal CSS selectors for Mozilla compliance.
2557      Do not put TOC into ul element.
2558
2559   2002-04-21  Make numbered list inside numbered lists use alphanumeric
2560      numbering.
2561
2562   2002-05-05  Updated issue/editing support.
2563
2564   2002-05-15  Bugfix for section numbering after introduction of ed:
2565      replace
2566
2567   2002-06-21  When producing private documents, do not include document
2568      status, copyright etc.
2569
2570
2571
2572
2573
2574
2575Reschke                                                        [Page 46]
2576
2577Documentation             RFC2629 through XSLT                 July 2008
2578
2579
2580   2002-07-08  Fix xrefs to Appendices.
2581
2582   2002-07-19  Make artwork lightyellow for easier reading. (fielding)
2583
2584   2002-10-09  Translate references title to anchor name to avoid non-
2585      uri characters. (fielding)
2586
2587   2002-10-13  Support for tocdepth PI.
2588
2589   2002-11-03  Added temporariry workaround for Mozilla/Transformiix
2590      result tree fragment problem. (search for
2591      'http://bugzilla.mozilla.org/show_bug.cgi?id=143668')
2592
2593   2002-12-25  xref code: attempt to uppercase "section" and "appendix"
2594      when at the start of a sentence.
2595
2596   2003-02-02  fixed code for vspace blankLines="0", enhanced display
2597      for list with "format" style, got rid of HTML blockquote elements,
2598      added support for "hangIndent"
2599
2600   2003-04-10  experimental support for appendix and spanx elements
2601
2602   2003-04-19  fixed counting of list numbers in "format %" styles (one
2603      counter per unique format string).  Added more spanx styles.
2604
2605   2003-05-02  experimental texttable support
2606
2607   2003-05-02  Make mailto links optional (default = none) (jre: default
2608      and PI name changed) (fielding)
2609
2610   2003-05-04  experimental support for HTML link elements; fix default
2611      for table header alignment default
2612
2613   2003-05-06  support for "background" PI.
2614
2615   2003-05-11  change %c format to lowercase alphabetic. add support for
2616      keyword elements (generate META tag). fix various HTML conformance
2617      problems. added experimental support for role attribute. do not
2618      number paragraphs in unnumbered sections. update boilerplate
2619      texts. support for "iprnotified" PI. bugfix list numbering. strip
2620      whitespace when building tel: URIs.
2621
2622   2003-05-12  more conformance fixes (layout moved into CSS, move lists
2623      and figures out of para content, do not use tables for list
2624      formatting)
2625
2626
2627
2628
2629
2630
2631Reschke                                                        [Page 47]
2632
2633Documentation             RFC2629 through XSLT                 July 2008
2634
2635
2636   2003-05-13  add DC.Creator meta tag, refactoring
2637
2638   2003-05-16  put nbsps between "section" and section number (xref).
2639
2640   2003-05-18  author summary: add missing comma.
2641
2642   2003-06-06  fix index generation bug (transposed characters in key
2643      generation).  Enhance sentence start detection (xref starting a
2644      section was using lowercase "section").
2645
2646   2003-06-22  exp. support for xref/@format.  Add missing support for
2647      eref w/o content. exp. support for annotations in reference
2648      elements.  Code cleanup reference table formatting.
2649
2650   2003-07-09  Another fix for DC.Creator meta tag creation based on
2651      RFC2731
2652
2653   2003-07-24  Fix namespace name for DC.Creator.
2654
2655   2003-08-06  Cleanup node-set support (only use exslt (saxon, xalan,
2656      libxslt) extension functions; remove Transformix workarounds that
2657      stopped to work in Moz 1.4)
2658
2659   2003-08-09  Generate HTML lang tag.
2660
2661   2003-08-10  Map spanx/verb to HTML "samp" element.  Fix author name
2662      display in references (reverse surname/initials for last author),
2663      add "Ed.".  Fix internal bookmark generation.
2664
2665   2003-08-17  Add DCMI dates, identifiers and abstract.  Add PI to
2666      suppress DCMI generation.  Do not add TOC entry to Copyright
2667      Statement when there is none.  Align RFC2629 PI names and
2668      parameter names.  Change style for inline URIs generated by eref.
2669      Add header and footer support.  Enhance CSS paging properties.
2670      Support topblock PI.  Added hooks for proper XHTML generation
2671      through separate XSLT.  Enhance warning and error messages.  Add
2672      support for artwork image display.  Table formatting fixes
2673      (borders, thead continuation).
2674
2675   2003-08-18  Add workaround for MSXML4 node-set and Mozilla node-set
2676      issues (fallback just displays are warning).
2677
2678   2003-10-06  Add workaround for broken pre/ins handling in Mozilla
2679      (see <http://bugzilla.mozilla.org/show_bug.cgi?id=204401>).  Make
2680      use of cite attribute on ed:replace.  CSS cleanup.
2681
2682
2683
2684
2685
2686
2687Reschke                                                        [Page 48]
2688
2689Documentation             RFC2629 through XSLT                 July 2008
2690
2691
2692   2003-10-08  Fix minor issue detecting the same org for the header
2693      (caused by IE's non-standard whitespace handling).  Fix default
2694      handling for /rfc/@category.
2695
2696   2003-11-09  Inherit ed:entered-by from ancestor elements.  Change CSS
2697      color for inserted text to green.  Generate issues-list anchor.
2698      Do not complain about missing targets when the xref element is
2699      below ed:del.  Remove code that attempted to distinguish section/
2700      Section when producing links - always use uppercase.  Fix date
2701      rendering for issue resolutions.
2702
2703   2003-11-29  Fix color values for table backgrounds for issue
2704      rendering.  Change rendering of issue links to use inline-styles.
2705      Add colored issue markers to issues.
2706
2707   2003-12-13  Fix inheritance of ed:entered-by attribute.  Display note
2708      elements inside change tracking as well.
2709
2710   2004-01-18  When PI compact = 'yes', make most CSS print page breaks
2711      conditional.
2712
2713   2004-02-20  Support for RFC3667 IPR changes (xml2rfc 1.22); see <http
2714      ://lists.xml.resource.org/pipermail/xml2rfc/2004-February/
2715      001088.html>.
2716
2717   2004-03-11  Add "(if approved)" to "updates" and "obsoletes" unless
2718      the document has an RFC number.
2719
2720   2004-04-01  Fix RFC3667 output, see <http://lists.xml.resource.org/
2721      pipermail/xml2rfc/2004-April/001208.html>.
2722
2723   2004-04-04  Add support for section/top attribute.  Move references
2724      into plain section container.
2725
2726   2004-04-06  Do not emit identical para anchors for deleted content.
2727
2728   2004-04-14  Fix references TOC generation when there are no
2729      references.
2730
2731   2004-04-24  Fix RFC3667 output, see
2732      <http://xml.resource.org/pipermail/xml2rfc/2004-April/
2733      001246.html>.
2734
2735   2004-05-09  Add custom support for generating compound index
2736      documents.  Add anchors for each Index letter.  Add experimental
2737      cref support.  Fix conditional page breaks before References
2738      section.
2739
2740
2741
2742
2743Reschke                                                        [Page 49]
2744
2745Documentation             RFC2629 through XSLT                 July 2008
2746
2747
2748   2004-05-16  Refactor external index generation.
2749
2750   2004-05-20  Rewrite anchor generation for comments.
2751
2752   2004-05-22  Enhance issues rendering (add links to changes).
2753
2754   2004-05-30  Allow single quote as delimiter in processing
2755      instructions as well.  Move block-level issue pointers to floats.
2756      Disable issue pointers for print media.  Add "purple numbers".
2757      Add hrefs to section headings.  Add non-printing index key letter
2758      list to start of index.
2759
2760   2004-06-01  Use &#xb6; instead of # for PNs.
2761
2762   2004-07-18  Add support for list style=letters (thanks Roy F.).  Make
2763      PNs optional; add new PI.
2764
2765   2004-09-05  Fix index links into unnumbered sections.  Bring IPR
2766      boilerplate in-line with xml2rfc 1.25.  Add experimental CSS3
2767      paged media support.  Various HTML fixes.
2768
2769   2004-09-21  Enhance checking of artwork width.
2770
2771   2004-09-26  Add check for unused references.  Uppercase letters in
2772      list style letters when nested into another list.
2773
2774   2004-10-10  Fix internal change track pointers.
2775
2776   2004-11-01  Allow change tracking on references (as a whole).
2777      Rewrite artwork handling so that it allows change tracking inside
2778      artwork.  Also allow a subset of text markup inside artwork, such
2779      as xrefs (note this requires post-processing the source to make it
2780      compliant to RFC2629bis).
2781
2782   2004-11-03  Enhanced placement of iref anchors.
2783
2784   2004-11-06  Index: display irefs that appeared (with primary=true)
2785      inside artwork elements in a monospaced font.
2786
2787   2004-11-14  Add special code so that changes in section titles can be
2788      change-tracked.
2789
2790   2005-01-14  Bugfixes for HtmlToXhtml converter.
2791
2792   2005-01-22  Enhance generation of HTML h* elements (for Mozilla
2793      Outliner).
2794
2795
2796
2797
2798
2799Reschke                                                        [Page 50]
2800
2801Documentation             RFC2629 through XSLT                 July 2008
2802
2803
2804   2005-01-31  Put vertical space around top-level TOC entries in TOC.
2805      Switch to pt-based CSS.  Re-arrange top section.  Make hr elements
2806      reflect new-page settings in TXT output (compact-PI).  Fix page
2807      number in footer (CSS print) and add some more experimental
2808      support for paged media (tested with Prince 4.1 alpha).  Rewrite
2809      TOC and Index generation to generate HTML lists.  Cleanup id
2810      generation for paragraphs.  Reduce whitespace in output.  Fix
2811      vspace implementation.  Use right/left dqoutes and copyright sign
2812      where appropriate.
2813
2814   2005-02-04  Add <link> element to references section.  Fix newly
2815      introduced bug in references processing.
2816
2817   2005-02-05  Integrate various fixes/enhancements by Roy Fielding:
2818      spelling of "Authors' Addresses", comma setting in references,
2819      position of "Authors" section, optionally place authors addresses
2820      at end (PI), trailing dots in section numbers, switch to verdana
2821      default font in CSS.  Add experimental support for centered
2822      artwork.
2823
2824   2005-02-09  Fixes in spacing and links of references section titles.
2825      Enhance sorting in references when change tracking is in place.
2826      Re-add figure centering support.  Add missing 2nd part of
2827      "Author's Adresses" fix.
2828
2829   2005-02-25  Align section number format with xml2rfc1.29.
2830
2831   2005-03-28  Get rid of table elements in Author's section.  Add
2832      experimental hCard (<http://developers.technorati.com/wiki/hCard>)
2833      support.
2834
2835   2005-04-03  Add RFC3978-style IPR statement support.
2836      (fenner@research.att.com)
2837
2838   2005-04-11  Cleanup author display. hCard related fixes.
2839
2840   2005-05-07  Minor fixes to allow change tracking in doc title.  Add
2841      experimental support for table border styles.  CSS cleanup.
2842
2843   2005-06-18  Implement missing support for references to texttables.
2844
2845   2005-09-25  Use (-moz-)column-count when printing the index.
2846
2847   2005-10-04  Report missing element templates with xsl:message.
2848
2849
2850
2851
2852
2853
2854
2855Reschke                                                        [Page 51]
2856
2857Documentation             RFC2629 through XSLT                 July 2008
2858
2859
2860   2005-10-15  Process t/@anchor.
2861
2862   2005-10-23  More workarounds for Mozilla's broken del/ins handling
2863      (this time for figures).
2864
2865   2005-10-27  lowercase hCard class names
2866
2867   2005-11-22  Enhance diagnostics for XML-in-artwork extension
2868
2869   2005-11-26  Fix formatting of section numbers for sections inserted
2870      into <back>.
2871
2872   2005-12-12  Fix some validity problems when change tracking occured
2873      inside lists.
2874
2875   2005-12-18  Add change tracking inside the index.
2876
2877   2006-02-04  Add prev/next links to highlighted changes (change
2878      tracking extension).
2879
2880   2006-02-10  Catch errors instantiating MSXML component.
2881
2882   2006-02-11  References: add "work in progress" for Internet Drafts.
2883
2884   2006-02-27  Fix front matter (lowercase Internet-Draft, say "Intended
2885      status" for non-RFC documents).  Start work on experimental
2886      extension for simplified internal links.
2887
2888   2006-03-19  Tweaks to IESG Copyright stuff; support submissionType
2889      attribute.  Fix duplicate reference anchors in HTML output.
2890      Reduce HTML Tidy warnings.  Fix reference to normative ASCII
2891      version (now requires trailing ".txt").  Tweaks to hCard
2892      generation.  Started to move non-issue-tracking extensions into
2893      namespace "http://purl.org/net/xml2rfc/ext".
2894
2895   2006-03-27  Moved "simple reference" extension into namespace
2896      "http://purl.org/net/xml2rfc/ext" and add documentation.  HTML
2897      conformance enhancements.
2898
2899   2006-04-02  Cleanup special code for automated XHTML XSLT generation.
2900
2901   2006-04-21  Generate <CITE> elements where appropiate.  Introduce
2902      x:blockquote, x:dfn, x:h and x:q elements.
2903
2904   2006-05-06  Introduce x:bcp14 element.
2905
2906
2907
2908
2909
2910
2911Reschke                                                        [Page 52]
2912
2913Documentation             RFC2629 through XSLT                 July 2008
2914
2915
2916   2006-05-14  Fix content model for x:blockquote.
2917
2918   2006-06-18  Add box drawing support (x:bt, x:bc, x:bb).
2919
2920   2006-06-20  HTML validity fixes (legal chars in anchors in index).
2921
2922   2006-06-24  Reduce leading empty lines in artwork.  Move <dt> style
2923      info into CSS.
2924
2925   2006-07-14  Fix rendering of multiple street address entries (missing
2926      line break).
2927
2928   2006-07-24  Add extension for deep linking into RFCs, do not generate
2929      empty list items in TOC output, avoid empty <dt> elements for list
2930      items without hangText attribute.
2931
2932   2006-08-01  Allow @anchor on more elements; start work on Relax NG
2933      grammar for extensions.  Reduce generated style elements (use CSS
2934      classes instead).  Consistently use "id" instead of "name".
2935      Change default target for RFC links to
2936      "http://tools.ietf.org/html/rfcNNNN".
2937
2938   2006-08-06  Include appendices defined in <appendix> elements in TOC
2939      (please consider them deprecated anyhow!).  Generate links to
2940      "http://tools.ietf.org/html/draft-*" for Internet Drafts.  Replace
2941      x:frag by x:rel, allowing any kind of relative reference instead
2942      of just fragments.
2943
2944   2006-08-30  Reduce textual differences between HTML output and what
2945      xml2rfc produces in TXT output mode (section refs/reference
2946      targets).  Add small workaround for Opera 9.0.1's problem with
2947      node-set().
2948
2949   2006-10-29  Fix problem generating internal links to change markup
2950      within references section.  Enhancements when generating numbered
2951      references for deleted references.  Allow inclusion of references
2952      into the index (through include-references-in-index extension).
2953      Fix a bug that caused the newer version of the IETF boilerplate to
2954      be produced rather than the pre-RFC3667 one.  Update to RFC4287
2955      boilerplate.
2956
2957   2006-11-11  Add extension attribute x:for-anchor to <iref> handling.
2958
2959   2006-11-26  Experimental (and limited) support for <x:lt>.
2960
2961
2962
2963
2964
2965
2966
2967Reschke                                                        [Page 53]
2968
2969Documentation             RFC2629 through XSLT                 July 2008
2970
2971
2972   2006-12-04  Fix bugs in processing documents that have both the ipr
2973      and the number attribute set on the rfc root element.  Add support
2974      for x:fmt='none' on xrefs.  Add different pre style based on
2975      artwork type attributes (experimental).
2976
2977   2006-12-13  Add x:fmt='anchor' for xref elements.
2978
2979   2007-01-07  Fix root template for compatibility for the exslt:node-
2980      set implementation in Firefox3.
2981
2982   2007-01-29  Avoid empty table entry in front matter when organization
2983      is not specified for an author.
2984
2985   2007-02-10  Allow change tracking in table rows.
2986
2987   2007-03-09  Add hcard profile URI (<http://www.w3.org/2006/03/hcard>)
2988      to head element.  Add warning for misplaced <t> elements (after
2989      section).
2990
2991   2007-03-21  Fix internal linking from reference entries in index for
2992      some xref types.  Minor CSS tweaks contributed by MTR.  Allow
2993      turning on text justification through a PI.  Improve iref anchor
2994      generation to generate less instable anchors.
2995
2996   2007-03-28  Fixes for numbering of ed:inserted references sections.
2997
2998   2007-05-04  Do not generate anchors for edits in deleted sections.
2999      Enhance HTML conformance.
3000
3001   2007-05-19  Enhance diagnostics when using Saxon (needs Saxon's "-l"
3002      command line parameter to keep line number information).  Add
3003      warning when symref PI is missing (default will change in the
3004      future).  Add support for overriding computed section numbers
3005      (when formatting historic documents).
3006
3007   2007-06-07  Change default for symrefs PI to "yes" (see change in
3008      xml2rfc 1.33pre4).  Warn about docName attributes that appear to
3009      contain a file extension.
3010
3011   2007-06-26  Workaround author/@initials values without trailing dot,
3012      as in xml2rfc.tcl.
3013
3014   2007-07-14  Enhance index generation for references that use @x:sec
3015      attribute.
3016
3017
3018
3019
3020
3021
3022
3023Reschke                                                        [Page 54]
3024
3025Documentation             RFC2629 through XSLT                 July 2008
3026
3027
3028   2007-09-09  Fix: sortrefs is a nop when symrefs=no.
3029
3030   2007-10-17  Work in progress: add support for referencing sections in
3031      sibling documents by anchor name.
3032
3033   2007-10-17  Work in progress (continued): support for referencing
3034      sections in sibling documents by anchor name.
3035
3036   2007-12-31  Emit warning when updating/obsoleting stuff that's not
3037      referenced.
3038
3039   2008-02-03  Support xml2rfc-1.33pre5's suppress-title attribute on
3040      texttable and figure.
3041
3042   2008-02-06  Extension: allow <eref> below <cref>.
3043
3044   2008-02-17  Extensions: add x:span and x:length-of.
3045
3046   2008-02-20  Add new RFC boilerplate (as changed in 2007-08).
3047
3048   2008-02-27  Improve diagnostics for artwork width problems; add
3049      defaulting of publication dates (requires XSLT processor
3050      supporting exslt:date, or msxml).
3051
3052   2008-02-29  Enhance CSS for link elements in the front header, update
3053      rules for generating "Acknowledgment" statement.
3054
3055   2008-03-01  Use line numbers in diagnostics in Saxon8/9 as well.
3056
3057   2008-03-02  Fix a bug in the logic choosing the boilerplate,
3058      resulting in obsolete text being inserted into IDs.
3059
3060   2008-04-01  Add support for superscript element.
3061
3062   2008-06-28  Add sanity checks for email addresses, allow multiple
3063      email elements.
3064
3065   2008-07-06  Add x:abnf-char-sequence.
3066
3067D.6.  rfc2629toFO.xslt
3068
3069   2003-11-16  Initial release.
3070
3071   2003-11-29  Enhance handling of unknown list styles.
3072
3073
3074
3075
3076
3077
3078
3079Reschke                                                        [Page 55]
3080
3081Documentation             RFC2629 through XSLT                 July 2008
3082
3083
3084   2004-04-04  Update reference section handling.
3085
3086   2004-04-17  Use XSL-WD-1.1-style fo:bookmark and index handling and
3087      add postprocessors for existing implementations.  Unify PDF info
3088      generation by using XEP (postprocessors) will convert.
3089
3090   2004-04-20  Add experimental cref support.
3091
3092   2004-06-14  Set correct index-item defaults.
3093
3094   2004-07-18  Add list style=letters.
3095
3096   2004-09-03  Make URLs in text break where they are allowed to break
3097      by inserting zero-width spaces.
3098
3099   2004-09-26  Fix letter-style inside nested lists.
3100
3101   2004-10-31  Update handling of artwork.
3102
3103   2004-11-13  Fix handling of references inside ed:* markup.  Fix
3104      whitespace handling in artwork.
3105
3106   2004-11-27  Irefs in artwork generate monospaced entries in index.
3107
3108   2005-01-31  Fix TOC generation that was broken after changes in main
3109      XSLT.
3110
3111   2005-02-05  Bring in sync with cosmetic changes in rfc2629.xslt.
3112
3113   2005-05-07  Minor fix for change tracking in document title.  Support
3114      for table styles.
3115
3116   2005-06-18  Fix references to tables.
3117
3118   2005-10-15  Process t/@anchor.
3119
3120   2006-02-11  References: add "work in progress" for Internet Drafts.
3121
3122   2006-06-02  Use XSL 1.1 WD Feb 2006.
3123
3124   2007-03-21  Support optional text justification.
3125
3126   2007-05-19  Various improvements in spacing; also allow overriding
3127      the automatic list indentation via list/x:indent.
3128
3129
3130
3131
3132
3133
3134
3135Reschke                                                        [Page 56]
3136
3137Documentation             RFC2629 through XSLT                 July 2008
3138
3139
3140D.7.  xsl11toAn.xslt
3141
3142   2004-05-17  Initial release.
3143
3144   2006-06-02  Use XSL 1.1 WD Feb 2006.
3145
3146D.8.  xsl11toFop.xslt
3147
3148   2004-05-17  Initial release.
3149
3150   2006-06-02  Use XSL 1.1 WD Feb 2006.
3151
3152D.9.  xsl11toFop-0.93.xslt
3153
3154   2008-03-15  Add a workaround to the fo:inline workaround (sigh).
3155
3156D.10.  xsl11toXep.xslt
3157
3158   2004-05-17  Initial release.
3159
3160   2004-09-04  Fix xep:index-item attributes.
3161
3162   2006-06-02  Use XSL 1.1 WD Feb 2006.
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191Reschke                                                        [Page 57]
3192
3193Documentation             RFC2629 through XSLT                 July 2008
3194
3195
3196Index
3197
3198   A
3199      abnf-char-sequence Extension Element  21, 34
3200      allow-markup-in-artwork PI pseudo-attribute  8
3201      alternate HTML LINK element  15
3202      anchor-alias Extension Element  21, 34
3203      Anchors
3204         rfc.abstract  12
3205         rfc.authors  12
3206         rfc.copyright  12
3207         rfc.copyrightnotice  12
3208         rfc.figure.n  12
3209         rfc.figure.u.n  12
3210         rfc.index  12
3211         rfc.ipr  12
3212         rfc.iref.n  12
3213         rfc.note.n  12
3214         rfc.references  12
3215         rfc.section.n  12
3216         rfc.section.n.p.m  12
3217         rfc.status  12
3218         rfc.toc  12
3219         rfc.xref.name.n  12
3220      AntennaHouse XSL Formatter  19
3221      Apache FOP  19
3222      appendix HTML LINK element  15
3223      assign-section-number Extension Element  34
3224      author HTML LINK element  15
3225      authors-section PI pseudo-attribute  8
3226
3227   B
3228      background PI pseudo-attribute  6
3229      bb Extension Element  22, 34
3230      bc Extension Element  22, 34
3231      bcp14 Extension Element  21, 34
3232      blockquote Extension Element  22, 34
3233      bt Extension Element  22, 34
3234
3235   C
3236      chapter HTML LINK element  15
3237      CHM format  18
3238      comments PI pseudo-attribute  6
3239      compact PI pseudo-attribute  6
3240      contents HTML LINK element  15
3241      copyright HTML LINK element  15
3242      Creator DCMI property  16
3243
3244
3245
3246
3247Reschke                                                        [Page 58]
3248
3249Documentation             RFC2629 through XSLT                 July 2008
3250
3251
3252   D
3253      Date.Issued DCMI property  16
3254      DCMI properties
3255         Creator  16
3256         Date.Issued  16
3257         Description.Abstract  16
3258         Identifier  16
3259         Relation.Replaces  16
3260      Description.Abstract DCMI property  16
3261      dfn Extension Element  23, 34
3262
3263   E
3264      editing PI pseudo-attribute  6
3265      Extension Elements
3266         abnf-char-sequence  21, 34
3267         anchor-alias  21, 34
3268         assign-section-number  34
3269         bb  22, 34
3270         bc  22, 34
3271         bcp14  21, 34
3272         blockquote  22, 34
3273         bt  22, 34
3274         dfn  23, 34
3275         h  23, 34
3276         length-of  23, 34
3277         link  23, 34
3278         lt  23, 34
3279         parse-xml  24, 34
3280         q  24, 34
3281         rdf:Description  34
3282         ref  24, 34
3283         source  24, 34
3284         span  34
3285         sup  25, 34
3286         x  34
3287
3288   F
3289      Firefox
3290         1.*/2.*  13
3291         3.*  13
3292      footer PI pseudo-attribute  6
3293
3294   G
3295      generator HTML META element  16
3296      Grammar  34
3297
3298   H
3299      h Extension Element  23, 34
3300
3301
3302
3303Reschke                                                        [Page 59]
3304
3305Documentation             RFC2629 through XSLT                 July 2008
3306
3307
3308      header PI pseudo-attribute  6
3309      HTML compliance  15
3310      HTML LINK elements
3311         alternate  15
3312         appendix  15
3313         author  15
3314         chapter  15
3315         contents  15
3316         copyright  15
3317         index  15
3318      HTML META elements
3319         generator  16
3320         keywords  16
3321
3322   I
3323      Identifier DCMI property  16
3324      include PI pseudo-attribute  7
3325      include-references-in-index PI pseudo-attribute  8
3326      index HTML LINK element  15
3327      inline PI pseudo-attribute  6
3328      Internet Explorer 5.5  13
3329      Internet Explorer 6  13
3330      Internet Explorer 7  13
3331      iprnotified PI pseudo-attribute  6
3332
3333   J
3334      justification PI pseudo-attribute  8
3335
3336   K
3337      keywords HTML META element  16
3338
3339   L
3340      length-of Extension Element  23, 34
3341      link Extension Element  23, 34
3342      linkmailto PI pseudo-attribute  6
3343      lt Extension Element  23, 34
3344
3345   M
3346      Microsoft Help  18
3347      Mozilla  13
3348      MSXML3  13
3349      MSXML4  13
3350
3351   N
3352      needLines PI pseudo-attribute  7
3353
3354   O
3355      Opera  13
3356
3357
3358
3359Reschke                                                        [Page 60]
3360
3361Documentation             RFC2629 through XSLT                 July 2008
3362
3363
3364   P
3365      Parameters
3366         xml2rfc-background  6
3367         xml2rfc-comments  6
3368         xml2rfc-compact  6
3369         xml2rfc-editing  6
3370         xml2rfc-ext-allow-markup-in-artwork  8
3371         xml2rfc-ext-authors-section  8
3372         xml2rfc-ext-include-references-in-index  8
3373         xml2rfc-ext-justification  8
3374         xml2rfc-ext-parse-xml-in-artwork  8
3375         xml2rfc-ext-sec-no-trailing-dots  8
3376         xml2rfc-ext-support-rfc2731  8
3377         xml2rfc-footer  6
3378         xml2rfc-header  6
3379         xml2rfc-inline  6
3380         xml2rfc-iprnotified  6
3381         xml2rfc-linkmailto  6
3382         xml2rfc-private  6
3383         xml2rfc-sortrefs  6
3384         xml2rfc-symrefs  6
3385         xml2rfc-toc  6
3386         xml2rfc-tocdepth  6
3387         xml2rfc-topblock  6
3388      parse-xml Extension Element  24, 34
3389      parse-xml-in-artwork PI pseudo-attribute  8
3390      private PI pseudo-attribute  6
3391      Processing Instruction pseudo attributes
3392         allow-markup-in-artwork  8
3393         authors-section  8
3394         background  6
3395         comments  6
3396         compact  6
3397         editing  6
3398         footer  6
3399         header  6
3400         ijustification  8
3401         include  7
3402         include-references-in-index  8
3403         inline  6
3404         iprnotified  6
3405         linkmailto  6
3406         needLines  7
3407         parse-xml-in-artwork  8
3408         private  6
3409         sec-no-trailing-dots  8
3410         slides  7
3411         sortrefs  6
3412
3413
3414
3415Reschke                                                        [Page 61]
3416
3417Documentation             RFC2629 through XSLT                 July 2008
3418
3419
3420         strict  7
3421         subcompact  7
3422         support-rfc2731  8
3423         symrefs  6
3424         toc  6
3425         tocdepth  6
3426         tocindent  7
3427         tocompact  7
3428         topblock  6
3429
3430   Q
3431      q Extension Element  24, 34
3432
3433   R
3434      rdf:Description Extension Element  34
3435      ref Extension Element  24, 34
3436      Relation.Replaces DCMI property  16
3437      RELAX NG Compact Schema  34
3438      rfc.abstract anchor  12
3439      rfc.authors anchor  12
3440      rfc.copyright anchor  12
3441      rfc.copyrightnotice anchor  12
3442      rfc.figure.n anchor  12
3443      rfc.figure.u.n anchor  12
3444      rfc.index anchor  12
3445      rfc.ipr anchor  12
3446      rfc.iref.n anchor  12
3447      rfc.note.n anchor  12
3448      rfc.references anchor  12
3449      rfc.references.n anchor  12
3450      rfc.section.n anchor  12
3451      rfc.section.n.p.m anchor  12
3452      rfc.status anchor  12
3453      rfc.toc anchor  12
3454      rfc.xref.name.n anchor  12
3455
3456   S
3457      Safari  13
3458         3.*  13
3459      Saxon  13
3460      Schema  34
3461      sec-no-trailing-dots PI pseudo-attribute  8
3462      slides PI pseudo-attribute  7
3463      sortrefs PI pseudo-attribute  6
3464      source Extension Element  24, 34
3465      span Extension Element  34
3466      strict PI pseudo-attribute  7
3467      subcompact PI pseudo-attribute  7
3468
3469
3470
3471Reschke                                                        [Page 62]
3472
3473Documentation             RFC2629 through XSLT                 July 2008
3474
3475
3476      sup Extension Element  25, 34
3477      support-rfc2731 PI pseudo-attribute  8
3478      symrefs PI pseudo-attribute  6
3479
3480   T
3481      toc PI pseudo-attribute  6
3482      tocdepth PI pseudo-attribute  6
3483      tocindent PI pseudo-attribute  7
3484      tocompact PI pseudo-attribute  7
3485      topblock PI pseudo-attribute  6
3486
3487   X
3488      x Extension Element  34
3489      Xalan  13
3490      xml-stylesheet PI  15
3491      xml2rfc-background parameter  6
3492      xml2rfc-comments parameter  6
3493      xml2rfc-editing parameter  6
3494      xml2rfc-ext-allow-markup-in-artwork parameter  8
3495      xml2rfc-ext-authors-section parameter  8
3496      xml2rfc-ext-include-references-in-index parameter  8
3497      xml2rfc-ext-justification parameter  8
3498      xml2rfc-ext-parse-xml-in-artwork parameter  8
3499      xml2rfc-ext-sec-no-trailing-dots parameter  8
3500      xml2rfc-ext-support-rfc2731 parameter  8
3501      xml2rfc-footer parameter  6
3502      xml2rfc-header parameter  6
3503      xml2rfc-inline parameter  6
3504      xml2rfc-iprnotified parameter  6
3505      xml2rfc-linkmailto parameter  6
3506      xml2rfc-private parameter  6
3507      xml2rfc-sortrefs parameter  6
3508      xml2rfc-symrefs parameter  6
3509      xml2rfc-toc parameter  6
3510      xml2rfc-tocdepth parameter  6
3511      xml2rfc-topblock parameter  6
3512      xsltproc  13
3513         passing parameters  5
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527Reschke                                                        [Page 63]
3528
3529Documentation             RFC2629 through XSLT                 July 2008
3530
3531
3532Author's Address
3533
3534   Julian F. Reschke
3535   greenbytes GmbH
3536   Hafenweg 16
3537   Muenster, NW  48155
3538   Germany
3539
3540   Phone: +49 251 2807760
3541   Email: julian.reschke@greenbytes.de
3542   URI:   http://greenbytes.de/tech/webdav/
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583Reschke                                                        [Page 64]
3584
Note: See TracBrowser for help on using the repository browser.