19 March 2019
A tool to write technical documents:
A publication tool:
A "stream" regroups a set of documents:
5 Categories: (STD, EXP, BCP, Info, Historic)
Standard Tracks
Experimental
Best Current Practices (BCP)
Informational (Info)
Historic
Pre-publication documents: Drafts
Pair-reviews: Consensus
In document versioning and ChangeLog
Using an SCM (git)
The "xml2rfc" Version 3 Vocabulary [RFC7991]
There will be examples ... and more
The "rfc" tag
<rfc
category="std"
consensus="true"
docName="en-smm-apc-doc-guidelines-01"
submissionType="en-smm-apc" ...>Documents split in 3 parts:
The "section" tag
<section>
<name>Historic</name>
<t>This is some text</t>
</section>
Yes, sounds awesome,
But ... I have an XML allergy ... and my doctor won't let me use it ...
A more user friendly syntax : PUG templating engine
section
name Historic
t This is some text<section>
<name>Historic</name>
<t>This is some text</t>
</section>
Quick PUG tour:
// This is a tag with an attribute
section(anchor='MY_ANCHOR')
// This is a tag with text content, inside our section
name Content examples
// This is another tag with text content inside our section
t This section will show a couple of RFC examples.
// This tag has several line of text
t
| Full syntax documentation can be found here:
| #[xref(target='RFC7991' format='default') RFC7991]
// The #[] is a short-hand for small tags (refs, quotes ...)There's more, but this really all what you need to know !
One last example for the skeptical :
section
name Content examples
t This section will show a couple of RFC examples.
t
| Full syntax documentation can be found here:
| #[xref(target='RFC7991' format='default') RFC7991]<section>
<name>Content examples</name>
<t>This section will show a couple of RFC examples.</t>
<t>Full syntax documentation can be found here:
<xref target="RFC7991" format="default">RFC7991</xref>
</t>
</section>Honestly, the logo is the best argument ever, look at that dog !
And what about diagrams, pictures, drawings
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version| Prio. | Flow Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++------+ +-----------+ +--------------+
| | UP | | OPENED | | SUCCESS/NONE
| Dead |------->| Establish |---------->| Authenticate |--+
| | | | | | |
+------+ +-----------+ +--------------+ |
^ | | |
| FAIL | FAIL | |
+<--------------+ +----------+ |
| | |
| +-----------+ | +---------+ |
| DOWN | | | CLOSING | | |
+------------| Terminate |<---+<----------| Network |<-+
| | | |
+-----------+ +---------+
figure
name Figure title
artwork(align="center" type="ascii-art")
| <![CDATA[
| +-------+ +---------------+
| | | | |
| | Jave5 <------> asciiflow.com |
| | | | |
| +-------+ +---------------+
| ]]>
figure
name External figure title
artwork(align="center" type="svg" src="template-long/pug.svg")Xml2RFC CERN version
# Generate pdf/html/txt files
xml2rfc "example.pug"
# Watch for a file and generate documents on modification
xml2rfc-watch "example.pug"Documents from the EN-SMM-APC stream:
Indexed and pre-published on apc-dev website :