Transforming RFC2629-formatted XML through XSLT
1. Introduction
This document describes a set of XSLT transformations that can be used to transform RFC2629-compliant XML (see [RFC2629]) to various output formats, such as HTML and PDF. The main topics are
- compliance to the xml2rfc XML element set (Section 2),
- support for xml2rfc processing instructions (Section 3),
- the names of anchor elements generated in HTML and PDF output (Section 4),
- various XSLT engines that can be used (Section 5),
- outputting HTML (Section 6) and XHTML (Section 7),
- outputting CHM (Compiled Microsoft Help, Section 8),
- outputting PDF through XSL-FO (Section 9) and
- various utilities (Section 10).
rfc2629.xslt supports both all RFC2629 grammar elements and the extensions implemented in xml2rfc 1.21.
2.1 Extension elements
In addition, rfc2629.xslt supports a set of extension elements, using elements and attributes in the namespace "http://greenbytes.de/2002/rfcedit". They are used for
- simple issue tracking and change tracking and
- adding additional metadata to the generated documents (such as HTML LINK elements to related documents, see Section 6.2).
Note that these extensions are experimental. Please email the author in case you're interested in using these extensions.
All PIs can be set as XSLT parameter as well, overriding any value that is found in the source file to be transformed.
Using processing instructions:
<?rfc toc="yes"?>
<?rfc-ext support-rfc2731="no"?>
Using XSLT parameters:
saxon foo.xml rfc2629.xslt xml2rfc-toc=yes \
xml2rfc-ext-support-rfc2731=no > result.hzml
3.1 Supported xml2rfc-compatible PIs
PI target | PI pseudo-attribute | XSLT parameter name | default | comment |
---|
rfc | background | xml2rfc-background | (not set) | |
rfc | compact | xml2rfc-compact | "no" | only applies to HTML output method when printing |
rfc | comments | xml2rfc-comments | (not set) | |
rfc | editing | xml2rfc-editing | "no" | |
rfc | footer | xml2rfc-footer | (not set) | |
rfc | header | xml2rfc-header | (not set) | |
rfc | inline | xml2rfc-inline | (not set) | |
rfc | iprnotified | xml2rfc-iprnotified | "no" | |
rfc | linkmailto | xml2rfc-linkmailto | "yes" | |
rfc | private | xml2rfc-private | (not set) | |
rfc | sortrefs | xml2rfc-sortrefs | "no" | |
rfc | symrefs | xml2rfc-symrefs | "no" | |
rfc | toc | xml2rfc-toc | "no" | |
rfc | tocdepth | xml2rfc-tocdepth | 99 | |
rfc | topblock | xml2rfc-topblock | "yes" | |
3.2 Unsupported xml2rfc-compatible PIs
PI target | PI pseudo-attribute | comment |
---|
rfc | include | incompatible with XML/XSLT processing model |
rfc | needLines | |
rfc | slides | |
rfc | strict | |
rfc | subcompact | |
rfc | tocindent | (defaults to "yes") |
rfc | tocompact | |
3.3 Extension PIs
PI target | PI pseudo-attribute | XSLT parameter name | default | description |
---|
rfc-ext | allow-markup-in-artwork | xml2rfc-allow-markup-in-artwork | "no" | Enables support for specific elements inside abstract elements (using this extension makes the document incompatible to the RFC2629bis DTD; see description of conversion XSLT in Section 10.3). |
rfc-ext | authors-section | xml2rfc-ext-authors-section | | When "end", place the authors section at the end (just before the copyright statements). This seems to be the preferred order in the newest RFCs. |
rfc-ext | parse-xml-in-artwork | xml2rfc-parse-xml-in-artwork | "no" | May be used to enable parsing of XML content in figures (MSXML only). |
rfc-ext | support-rfc2731 | xml2rfc-ext-support-rfc2731 | "yes" | Decides whether the HTML transformation should generate META tags according Section 6.4. |
rfc-ext | sec-no-trailing-dots | xml2rfc-ext-sec-no-trailing-dots | | When set to "yes", add trailing dots to section numbers. This seems to be the preferred format in the newest RFCs. |
The transformation automatically generates anchors that are supposed to be stable and predictable and that can be used to identify specific parts of the document. Anchors are generated both in HTML and XSL-FO content (but the latter will only be used for PDF output when the XSL-FO engine supports producing PDF anchors).
The following anchors get auto-generated:
Anchor name | Description |
---|
rfc.abstract | Abstract |
rfc.authors | Authors section |
rfc.copyright | Copyright section |
rfc.copyrightnotice | Copyright notice |
rfc.figure.n | Figures (titled) |
rfc.figure.u.n | Figures (untitled) |
rfc.index | Index |
rfc.ipr | Intellectual Property |
rfc.iref.n | Internal references |
rfc.note.n | Notes (from front section) |
rfc.references | References |
rfc.references.n | Additional references |
rfc.section.n | Section n |
rfc.section.n.p.m | Section n, paragraph m |
rfc.status | Status of memo |
rfc.table.n | Tables (titled) |
rfc.table.u.n | Tables (untitled) |
rfc.toc | Table of contents |
The transformation requires a non-standard extension function (see exsl:node-set) which is however widely available. XSLT processors that do not support this extension (or a functional equivalent) currently are not supported.
5.1 Standalone Engines
The following XSLT engines are believed to work well:
5.2 In-Browser Engines
The following browsers seem to work fine:
- Internet Explorer 5.5 (Windows version, if MSXML3 is installed)
- Internet Explorer 6 (Windows version)
The following browsers are known not to work properly:
Transformation to HTML can be done inside the browser if it supports XSLT. To enable this, add the following processing instruction to the start of the source file:
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
(and ensure that rfc2629.xslt is present).
6.1 HTML compliance
The transformation result is supposed to conform to the HTML 4.01 strict DTD [HTML]. This can be checked using the W3C's online validator at <http://validator.w3.org>.
LINK elements exist since HTML 2.0. They can be used to embed content-independant links inside the document. Unfortunately, only few user agents fully support this element, namely Mozilla where it's called "Site Navigation Bar" (by default disabled!).
The following LINK elements are produced:
LINK type | description |
---|
alternate | for RFCs, a link to the authorative ASCII version on the IETF web site |
appendic | pointer to all top-level appendics |
author | pointer to "authors" section |
chapter | pointer to all top-level sections |
contents | pointer to table of contents |
copyright | pointer to copyright statement |
index | pointer to index |
The figure below shows how Mozilla Firefox displays the Site Navigation Bar for rfc2396.xml.
6.3 Standard HTML metadata
The following standard HTML META elements are produced:
META name | description |
---|
generator | from XSLT engine version and stylesheet version |
keywords | from keyword elements in front section |
Unless turned off using the "rfc-ext support-rfc2731" processing instruction, the transformation will generate metadata according to [RFC2731].
The following DCMI properties are produced:
META name | description |
---|
DC.Creator | from author information in front section |
DC.Date.Issued | from date information in front section |
DC.Description.Abstract | from abstract |
DC.Identifier | document URN [RFC2648] from "docName" attribute |
DC.Relation.Replaces | from "obsoletes" attribute |
The generated author information is formatted in hCard format.
Transforming to XHTML requires slightly different XSLT output options and is implemented by the derived transformation script rfc2629toXHTML.xslt.
Note: Microsoft Internet Explorer does not support XHTML. Therefore it usually makes more sense to generate plain old HTML.
To generate a CHM file using Microsoft's HTML Help Compiler (hhc), three files are required in addition to the HTML file.
- hhc - table of contents file (HTML)
- hhk - index file (HTML)
- hhp - project file (plain text)
The three files are generated with three specific transformations, each requiring the additional XSLT parameter "basename" to specify the filename prefix.
Example:
saxon rfc2616.xml rfc2629toHhp.xslt basename=rfc2616 > rfc2616.hhp
saxon rfc2616.xml rfc2629toHhc.xslt basename=rfc2616 > rfc2616.hhc
saxon rfc2616.xml rfc2629toHhk.xslt basename=rfc2616 > rfc2616.hhk
hhc rfc2616.hhp
Transformation to XSL-FO [XSL-FO] format is available through rfc2629toFO.xslt (which includes rfc2629.xslt, so keep both in the same folder).
Compared to HTML user agents, XSL-FO engines unfortunately either come as open source (for instance, Apache FOP) or feature-complete (for instance, AntennaHouse XSL Formatter), but not both at the same time.
As Apache FOP needs special workarounds (page breaking, table layout), and some popular extensions aren't standardized yet, the translation produces a generic output (hopefully) conforming to [XSL-FO-11-WD]. Specific backends (xsl11toFop.xslt, xsl11toXep.xslt, xsl11toAn.xslt) the provide post-processing for the individual processors.
9.1 Extension feature matrix
| PDF anchors | PDF bookmarks | PDF document information | Index cleanup |
---|
XSL 1.1 WD | no, but can be auto-generated from "id" attributes | yes | no, but uses XEP output extensions | yes |
Antenna House XSL formatter | no | yes (from XSL 1.1 bookmarks) | yes (from XEP document info) | yes (just page duplicate elimination, from XSL 1.1 page index) |
Apache FOP | yes | yes (from XSL 1.1 bookmarks) | no | no |
RenderX XEP | no | yes (from XSL 1.1 bookmarks) | yes | yes (from XSL 1.1 page index) |
9.2 Example: producing output for Apache FOP
Example:
saxon rfc2616.xml rfc2629toFo.xslt > tmp.fo
saxon tmp.fo xsl11toFop > rfc2629.fo
10.1 Checking References
check-ietf-references.xslt can be used to check all references to RFC-series IETF publications and to W3C publications (note this script requires local copies of <ftp://ftp.isi.edu/in-notes/rfc-index.xml> and <http://www.w3.org/2002/01/tr-automation/tr.rdf>). For instance:
> saxon rfc2518.xml check-ietf-references.xslt
Normative References:
RFC1766: [PROPOSED STANDARD] obsoleted by RFC3066 RFC3282
RFC2277: [BEST CURRENT PRACTICE] (-> BCP0018) ok
RFC2119: [BEST CURRENT PRACTICE] (-> BCP0014) ok
RFC2396: [DRAFT STANDARD] obsoleted by RFC3986
RFC2069: [PROPOSED STANDARD] obsoleted by RFC2617
RFC2068: [PROPOSED STANDARD] obsoleted by RFC2616
RFC2141: [PROPOSED STANDARD] ok
RFC2279: [DRAFT STANDARD] obsoleted by RFC3629
REC-xml-19980210: [FirstEdition] obsoleted by REC-xml-20040204
REC-xml-names-19990114: [REC] ok
Informational References:
RFC2026: [BEST CURRENT PRACTICE] (-> BCP0009) ok
RFC1807: [INFORMATIONAL] ok
RFC2291: [INFORMATIONAL] ok
RFC2413: [INFORMATIONAL] ok
RFC2376: [INFORMATIONAL] obsoleted by RFC3023
REC-PICS-labels-961031: [REC] ok
10.2 Producing reference entries for books
amazon-asin.xslt uses the Amazon web services to generate a <reference> element for a given ASIN (ISBN).
For instance:
<?xml version="1.0" encoding="utf-8"?>
<references>
<reference target="urn:isbn:0134516591">
<front>
<title>Simple Book, The: An Introduction to Internet Management,
Revised Second Edition</title>
<author surname="Rose"
fullname="Marshall T. Rose" initials="M. T. ">
<organization/>
</author>
<author surname="Marshall"
fullname="Rose T. Marshall" initials="R. T.">
<organization/>
</author>
<date year="1996" month="March"/>
</front>
<seriesInfo name="Prentice Hall" value=""/>
</reference>
</references>
Note that the resulting XML usually requires checking, in this case Amazon's database is playing tricks with Marshall's name...
clean-for-DTD.xslt can be used to down-convert some extensions to a format that is supported by the base xml2rfc distribution. Note that these extensions are experimental (feedback appreciated).
The following mappings are done:
- <iref> elements inside <artwork> elements are moved in front of the enclosing <figure> element.
- <xref> elements inside <artwork> are expanded just like in regular text (that is, the marlup is stripped, but the element is replaced by the applicable replacement text).
With extract-artwork.xslt, artwork elements named through the "name" attribute can be extracted. This can be used to automatically check it's syntax (for instance, when ABNFs appear within a figure element).
For instance:
saxon rfc3986.xml extract-artwork.xslt name=uri.abnf
11. Informative References
[RFC2629] | Rose, M.T., “Writing I-Ds and RFCs using XML”, RFC 2629, June 1999. |
[RFC2648] | Moats, R., “A URN Namespace for IETF Documents”, RFC 2648, August 1999. |
[RFC2731] | Kunze, J.A., “Encoding Dublin Core Metadata in HTML”, RFC 2731, December 1999. |
[HTML] | Raggett, D., Hors, A., and I. Jacobs, “HTML 4.01 Specification”, W3C REC-html401-19991224, December 1999. |
[XSL-FO] | Adler, S., Berglund, A., Caruso, J., Deach, S., Graham, T., Grosso, P., Gutentag, E., Milowski, R., Parnell, S., Richman, J., and S. Zilles, “Extensible Stylesheet Language (XSL) Version 1.0”, W3C REC-xsl-20011015, October 2001. |
[XSL-FO-11-WD] | Berglund, A., “Extensible Stylesheet Language (XSL) Version 1.1”, W3C WD-xsl11-20050728, July 2005. |
Author's Address
Julian F. ReschkeReschkeJulian F.greenbytes GmbHHafenweg 16Muenster, NW 48155GermanyPhone: +49 251 2807760Fax: +49 251 2807761EMail: julian.reschke@greenbytes.deURI: http://greenbytes.de/tech/webdav/
A. License
Copyright (c) 2006, Julian Reschke (julian.reschke@greenbytes.de)
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- Neither the name of Julian Reschke nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
B. Change Logs
B.1 Package
- 2006-01-01
- Switch to BSD License.
B.2 amazon-asin.xslt
- 2003-11-16
- Initial release.
- 2005-04-02
- Fix two DTD issues.
B.3 check-ietf-references.xslt
- 2003-11-16
- Initial release.
- 2003-11-16
- Initial release.
- 2004-05-11
- Add document status; print references type.
- 2005-01-01
- Add experimental check for ID status.
- 2005-04-01
- Add fixes from Bill Fenner.
- 2005-12-03
- Add checks against local copy of <http://www.w3.org/2002/01/tr-automation/tr.rdf>.
B.4 rfc2629.xslt
- 2001-03-28
- Code rearranged, generate numbered section anchors for paragraphs (t) as well. Fixes in index handling.
- 2001-04-12
- Moved HTML output into XHTML namespace.
- 2001-10-02
- Fixed default location for RFCs and numbering of section references. Support ?rfc editing processing instruction.
- 2001-10-07
- Made telephone number links active.
- 2001-10-08
- Support for vspace element.
- 2001-10-09
- Experimental support for rfc-issue PI.
- 2001-11-11
- Support rfc private PI. Removed bogus code reporting the WG in the header.
- 2001-11-11
- Support rfc private PI. Removed bogus code reporting the WG in the header.
- 2001-12-17
- Support title attribute on references element
- 2002-01-05
- Support for list/@style="@format"
- 2002-01-09
- Display "closed" RFC issues as deleted
- 2002-01-14
- Experimentally and optionally parse XML encountered in artwork elements (requires MSXSL).
- 2002-01-27
- Some cleanup. Moved RFC issues from PIs into namespaced elements.
- 2002-01-29
- Added support for sortrefs PI. Added support for figure names.
- 2002-02-07
- Highlight parts of artwork which are too wide (72 characters).
- 2002-02-12
- Code rearrangement for static texts. Fixes for section numbering. TOC generation rewritten.
- 2002-02-15
- Support for irefs in sections; support iref @primary=true
- 2002-03-03
- Moved anchor prefix into a constant. Added sanity checks on user anchor names.
- 2002-03-23
- Bugfix in detection of matching org names when creating the header. Fixed sorting in subitems.
- 2002-04-02
- Fix TOC link HTML generation when no TOC is generated (created broken HTML table code).
- 2002-04-03
- Made rendering of references more tolerant re: missing parts.
- 2002-04-08
- Fixed reference numbering when references are split into separate sections.
- 2002-04-16
- Fix default namespace (shouldn't be set for HTML output method).
- 2002-04-19
- Lowercase internal CSS selectors for Mozilla compliance. Do not put TOC into ul element.
- 2002-04-21
- Make numbered list inside numbered lists use alphanumeric numbering.
- 2002-05-05
- Updated issue/editing support.
- 2002-05-15
- Bugfix for section numbering after introduction of ed:replace
- 2002-06-21
- When producing private documents, do not include document status, copyright etc.
- 2002-07-08
- Fix xrefs to Appendices.
- 2002-07-19
- Make artwork lightyellow for easier reading. (fielding)
- 2002-10-09
- Translate references title to anchor name to avoid non-uri characters. (fielding)
- 2002-10-13
- Support for tocdepth PI.
- 2002-11-03
- Added temporariry workaround for Mozilla/Transformiix result tree fragment problem. (search for 'http://bugzilla.mozilla.org/show_bug.cgi?id=143668')
- 2002-12-25
- xref code: attempt to uppercase "section" and "appendix" when at the start of a sentence.
- 2003-02-02
- fixed code for vspace blankLines="0", enhanced display for list with "format" style, got rid of HTML blockquote elements, added support for "hangIndent"
- 2003-04-10
- experimental support for appendix and spanx elements
- 2003-04-19
- fixed counting of list numbers in "format %" styles (one counter per unique format string). Added more spanx styles.
- 2003-05-02
- experimental texttable support
- 2003-05-02
- Make mailto links optional (default = none) (jre: default and PI name changed) (fielding)
- 2003-05-04
- experimental support for HTML link elements; fix default for table header alignment default
- 2003-05-06
- support for "background" PI.
- 2003-05-11
- change %c format to lowercase alphabetic. add support for keyword elements (generate META tag). fix various HTML conformance problems. added experimental support for role attribute. do not number paragraphs in unnumbered sections. update boilerplate texts. support for "iprnotified" PI. bugfix list numbering. strip whitespace when building tel: URIs.
- 2003-05-12
- more conformance fixes (layout moved into CSS, move lists and figures out of para content, do not use tables for list formatting)
- 2003-05-13
- add DC.Creator meta tag, refactoring
- 2003-05-16
- put nbsps between "section" and section number (xref).
- 2003-05-18
- author summary: add missing comma.
- 2003-06-06
- fix index generation bug (transposed characters in key generation). Enhance sentence start detection (xref starting a section was using lowercase "section").
- 2003-06-22
- exp. support for xref/@format. Add missing support for eref w/o content. exp. support for annotations in reference elements. Code cleanup reference table formatting.
- 2003-07-09
- Another fix for DC.Creator meta tag creation based on RFC2731
- 2003-07-24
- Fix namespace name for DC.Creator.
- 2003-08-06
- Cleanup node-set support (only use exslt (saxon, xalan, libxslt) extension functions; remove Transformix workarounds that stopped to work in Moz 1.4)
- 2003-08-09
- Generate HTML lang tag.
- 2003-08-10
- Map spanx/verb to HTML "samp" element. Fix author name display in references (reverse surname/initials for last author), add "Ed.". Fix internal bookmark generation.
- 2003-08-17
- Add DCMI dates, identifiers and abstract. Add PI to suppress DCMI generation. Do not add TOC entry to Copyright Statement when there is none. Align RFC2629 PI names and parameter names. Change style for inline URIs generated by eref. Add header and footer support. Enhance CSS paging properties. Support topblock PI. Added hooks for proper XHTML generation through separate XSLT. Enhance warning and error messages. Add support for artwork image display. Table formatting fixes (borders, thead continuation).
- 2003-08-18
- Add workaround for MSXML4 node-set and Mozilla node-set issues (fallback just displays are warning).
- 2003-10-06
- Add workaround for broken pre/ins handling in Mozilla (see <http://bugzilla.mozilla.org/show_bug.cgi?id=204401>). Make use of cite attribute on ed:replace. CSS cleanup.
- 2003-10-08
- Fix minor issue detecting the same org for the header (caused by IE's non-standard whitespace handling). Fix default handling for /rfc/@category.
- 2003-11-09
- Inherit ed:entered-by from ancestor elements. Change CSS color for inserted text to green. Generate issues-list anchor. Do not complain about missing targets when the xref element is below ed:del. Remove code that attempted to distinguish section/Section when producing links - always use uppercase. Fix date rendering for issue resolutions.
- 2003-11-29
- Fix color values for table backgrounds for issue rendering. Change rendering of issue links to use inline-styles. Add colored issue markers to issues.
- 2003-12-13
- Fix inheritance of ed:entered-by attribute. Display note elements inside change tracking as well.
- 2004-01-18
- When PI compact = 'yes', make most CSS print page breaks conditional.
- 2004-02-20
- Support for RFC3667 IPR changes (xml2rfc 1.22); see <http://lists.xml.resource.org/pipermail/xml2rfc/2004-February/001088.html>.
- 2004-03-11
- Add "(if approved)" to "updates" and "obsoletes" unless the document has an RFC number.
- 2004-04-01
- Fix RFC3667 output, see <http://lists.xml.resource.org/pipermail/xml2rfc/2004-April/001208.html>.
- 2004-04-04
- Add support for section/top attribute. Move references into plain section container.
- 2004-04-06
- Do not emit identical para anchors for deleted content.
- 2004-04-14
- Fix references TOC generation when there are no references.
- 2004-04-24
- Fix RFC3667 output, see <http://xml.resource.org/pipermail/xml2rfc/2004-April/001246.html>.
- 2004-05-09
- Add custom support for generating compound index documents. Add anchors for each Index letter. Add experimental cref support. Fix conditional page breaks before References section.
- 2004-05-16
- Refactor external index generation.
- 2004-05-20
- Rewrite anchor generation for comments.
- 2004-05-22
- Enhance issues rendering (add links to changes).
- 2004-05-30
- Allow single quote as delimiter in processing instructions as well. Move block-level issue pointers to floats. Disable issue pointers for print media. Add "purple numbers". Add hrefs to section headings. Add non-printing index key letter list to start of index.
- 2004-06-01
- Use ¶ instead of # for PNs.
- 2004-07-18
- Add support for list style=letters (thanks Roy F.). Make PNs optional; add new PI.
- 2004-09-05
- Fix index links into unnumbered sections. Bring IPR boilerplate in-line with xml2rfc 1.25. Add experimental CSS3 paged media support. Various HTML fixes.
- 2004-09-21
- Enhance checking of artwork width.
- 2004-09-26
- Add check for unused references. Uppercase letters in list style letters when nested into another list.
- 2004-10-10
- Fix internal change track pointers.
- 2004-11-01
- Allow change tracking on references (as a whole). Rewrite artwork handling so that it allows change tracking inside artwork. Also allow a subset of text markup inside artwork, such as xrefs (note this requires post-processing the source to make it compliant to RFC2629bis).
- 2004-11-03
- Enhanced placement of iref anchors.
- 2004-11-06
- Index: display irefs that appeared (with primary=true) inside artwork elements in a monospaced font.
- 2004-11-14
- Add special code so that changes in section titles can be change-tracked.
- 2005-01-14
- Bugfixes for HtmlToXhtml converter.
- 2005-01-22
- Enhance generation of HTML h* elements (for Mozilla Outliner).
- 2005-01-31
- Put vertical space around top-level TOC entries in TOC. Switch to pt-based CSS. Re-arrange top section. Make hr elements reflect new-page settings in TXT output (compact-PI). Fix page number in footer (CSS print) and add some more experimental support for paged media (tested with Prince 4.1 alpha). Rewrite TOC and Index generation to generate HTML lists. Cleanup id generation for paragraphs. Reduce whitespace in output. Fix vspace implementation. Use right/left dqoutes and copyright sign where appropriate.
- 2005-02-04
- Add <link> element to references section. Fix newly introduced bug in references processing.
- 2005-02-05
- Integrate various fixes/enhancements by Roy Fielding: spelling of "Authors' Addresses", comma setting in references, position of "Authors" section, optionally place authors addresses at end (PI), trailing dots in section numbers, switch to verdana default font in CSS. Add experimental support for centered artwork.
- 2005-02-09
- Fixes in spacing and links of references section titles. Enhance sorting in references when change tracking is in place. Re-add figure centering support. Add missing 2nd part of "Author's Adresses" fix.
- 2005-02-25
- Align section number format with xml2rfc1.29.
- 2005-03-28
- Get rid of table elements in Author's section. Add experimental hCard (<http://developers.technorati.com/wiki/hCard>) support.
- 2005-04-03
- Add RFC3978-style IPR statement support. (fenner@research.att.com)
- 2005-04-11
- Cleanup author display. hCard related fixes.
- 2005-05-07
- Minor fixes to allow change tracking in doc title. Add experimental support for table border styles. CSS cleanup.
- 2005-06-18
- Implement missing support for references to texttables.
- 2005-09-25
- Use (-moz-)column-count when printing the index.
- 2005-10-04
- Report missing element templates with xsl:message.
- 2005-10-15
- Process t/@anchor.
- 2005-10-23
- More workarounds for Mozilla's broken del/ins handling (this time for figures).
- 2005-10-27
- lowercase hCard class names
- 2005-11-22
- Enhance diagnostics for XML-in-artwork extension
- 2005-11-26
- Fix formatting of section numbers for sections inserted into <back>.
- 2005-12-12
- Fix some validity problems when change tracking occured inside lists.
- 2005-12-18
- Add change tracking inside the index.
- 2006-02-04
- Add prev/next links to highlighted changes (change tracking extension).
- 2006-02-10
- Catch errors instantiating MSXML component.
- 2006-02-11
- References: add "work in progress" for Internet Drafts.
B.5 rfc2629toFO.xslt
- 2003-11-16
- Initial release.
- 2003-11-29
- Enhance handling of unknown list styles.
- 2004-04-04
- Update reference section handling.
- 2004-04-17
- Use XSL-WD-1.1-style fo:bookmark and index handling and add postprocessors for existing implementations. Unify PDF info generation by using XEP (postprocessors) will convert.
- 2004-04-20
- Add experimental cref support.
- 2004-06-14
- Set correct index-item defaults.
- 2004-07-18
- Add list style=letters.
- 2004-09-03
- Make URLs in text break where they are allowed to break by inserting zero-width spaces.
- 2004-09-26
- Fix letter-style inside nested lists.
- 2004-10-31
- Update handling of artwork.
- 2004-11-13
- Fix handling of references inside ed:* markup. Fix whitespace handling in artwork.
- 2004-11-27
- Irefs in artwork generate monospaced entries in index.
- 2005-01-31
- Fix TOC generation that was broken after changes in main XSLT.
- 2005-02-05
- Bring in sync with cosmetic changes in rfc2629.xslt.
- 2005-05-07
- Minor fix for change tracking in document title. Support for table styles.
- 2005-06-18
- Fix references to tables.
- 2005-10-15
- Process t/@anchor.
- 2006-02-11
- References: add "work in progress" for Internet Drafts.
B.6 xsl11toAn.xslt
- 2004-05-17
- Initial release.
B.7 xsl11toFop.xslt
- 2004-05-17
- Initial release.
B.8 xsl11toXep.xslt
- 2004-05-17
- Initial release.
- 2004-09-04
- Fix xep:index-item attributes.
A B C D E F G H I K L M N O P R S T X