xml2rfc


A handy little tool, xml2rfc, will allow you to take your XML source (using the format defined in RFC 2629 and its unofficial successor) and see how the results look like in the original ASCII look-and-feel or the new modern HTML rendition of that look-and-feel.

Mar '08 release

After seven months, version 1.33 is now available. (This version is equivalent to pre-release 8 of 1.33 with a few last minute changes.) Here's the README file.

Living on the edge?

Try this.

Conversion

  1. Download xml2rfc as a zip or tgz file, or
  2. Try your results in this handy converter form:
Convert Your XML Source
 Input file
 Output mode Text HTML nroff unpaginated XML
 Output result Window File

Citation Libraries

citation
library
retrieve entire directory
as a file
retrieve entire directory using
wget -r -l 1 -A .xml -nd -nc ...
rss
feed

rsync
RFC zip or tgz http://xml.resource.org/public/rfc/bibxml/ rss 1.0 yes
Internet-Draft zip or tgz http://xml.resource.org/public/rfc/bibxml3/ rss 1.0 yes
W3C zip or tgz http://xml.resource.org/public/rfc/bibxml4/ rss 1.0 yes
JSF zip or tgz http://www.xmpp.org/extensions/refs/ rss 0.92 no
3GPP zip or tgz http://xml.resource.org/public/rfc/bibxml5/ rss 1.0 yes
Miscellaneous zip or tgz http://xml.resource.org/public/rfc/bibxml2/ no yes

rsync access is available at xml.resource.org::xml2rfc.bibxml 

Helpful Hints

Normative References

If you need to have multiple references sections, try something like this:

    <back>
<references title='Normative References'>
...
</references>
<references title='Informative References'>
...
</references>
</back>

That's right: the <references/> element may occur more than once in the back section, and has an optional 'title' attribute.

Including files

Use the XML external entity mechanism, e.g.,

    <?xml version='1.0'?>
<!DOCTYPE rfc SYSTEM 'rfc2629.dtd' [

<!ENTITY rfc2629 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2629.xml'>

]>

...

<t>This document was constructed using the <xref target="RFC2629" /> DTD.</t>

...

<references>
...
&rfc2629;
...
</references>

Note that this syntax is rather pedantic, i.e., you declare the entity toward the top of your file and then you invoke it exactly once (using an "&") in the <references/> element to include it.

Take a look at this file, provided by Dan Kohn. In addition to showing a complete example, it also works with the XSL transformation written by Julian Reschke and the DTD. (Depending on the capabilities of your browser, instead of clicking on these links directly, you may want to download these three files using "Save Target As...")

To try out this sample, you'll need to put all three files in the same directory. Also, note that some XSLT processors disable the use of external entities, you may need to check "Preferences" to see if there's an option to enable their use.

Notes for RFC Authors

Tempates for Authors

The RFC editor maintains a library of templates you can use for different kinds of RFCs.

When approved for publication

When your document is approved for publication, be sure to submit both the text and XML versions to the RFC editor.

When published

Upon publication, be sure to update your XML source to reflect the changes made by the RFC editor. Then, to improve the quality of the citation library, send a copy of the updated XML file here. Thanks!

Questions? Try the mailing list.