Internet DRAFT - draft-fossati-svg-test

draft-fossati-svg-test







None                                                          T. Fossati
Internet-Draft                                             13 March 2020
Intended status: Informational                                          
Expires: 14 September 2020


                     SVG Fun with kramdown-rfc2629
                       draft-fossati-svg-test-03

Abstract

   This memo is for experimenting with SVG in the context of RFC
   production.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on 14 September 2020.

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (https://trustee.ietf.org/
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components
   extracted from this document must include Simplified BSD License text
   as described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Simplified BSD License.







Fossati                 Expires 14 September 2020               [Page 1]

Internet-Draft                  SVG Tests                     March 2020


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Conventions used in this document . . . . . . . . . . . .   2
     1.2.  Tools . . . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Draw  . . . . . . . . . . . . . . . . . . . . . . . . . . . .   2
   3.  Build . . . . . . . . . . . . . . . . . . . . . . . . . . . .   3
   4.  Examples  . . . . . . . . . . . . . . . . . . . . . . . . . .   3
     4.1.  Hello World . . . . . . . . . . . . . . . . . . . . . . .   3
     4.2.  An Inlined Sequence Diagram . . . . . . . . . . . . . . .   3
     4.3.  A Sourced "Box and Arrows" Diagram  . . . . . . . . . . .   5
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   5
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   7.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .   5
   8.  Normative References  . . . . . . . . . . . . . . . . . . . .   5
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .   6

1.  Introduction

   This memo is for experimenting with SVG in the context of RFC
   production.

   This document assumes a kramdown-rfc2629 based editing flow.

1.1.  Conventions used in this document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in
   BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

1.2.  Tools

   Install goat and svgcheck (Go and Python are obvious prerequisites):

   $ go get github.com/blampe/goat
   $ pip install svgcheck

   Install kramdown-rfc2629 (at least 1.3.2):

   $ gem install kramdown-rfc2629 -v '>= 1.3.2'

2.  Draw

   Two options:

   *  Either inline your ASCII / UTF-8 art:



Fossati                 Expires 14 September 2020               [Page 2]

Internet-Draft                  SVG Tests                     March 2020


       ~~~ goat
        .-.
       |o o|
      C| | |D
       | - |
       '___'
       ~~~

   *  Or source it from an external file:

       ~~~ goat
       {::include my-diagram.txt}
       ~~~
       {: #dia-1 title="My Diagram"}

3.  Build

   To go from markdown to XML, HTML and TXT:

   $ kdrfc -3h draft-fossati-svg-test.md

   Before submitting to the datatracker the XML file needs to be
   "prepped":

   $ xml2rfc --preptool --v3 draft-fossati-svg-test.xml

   The "prepped" file, draft-fossati-svg-test.prepped.xml in this case,
   is what needs to be uploaded to the datatracker.

4.  Examples

4.1.  Hello World

                      / /
                    (\/_//`)
      .---.         /   '/
     |     |       0  0   \
     | Yo! |      /        \
     |     |     /    __/   \
      '----.    /,  _/ \     \
            \_. `-./ )  |     \
                    (   |      \

4.2.  An Inlined Sequence Diagram







Fossati                 Expires 14 September 2020               [Page 3]

Internet-Draft                  SVG Tests                     March 2020


    .------.            .---------------.            .------.
   |  NDC   |          |       IdO       |          |   CA   |
   +--------+          +--------+--------+          +--------+
   | Client |          | Server | Client |          | Server |
   '---+----'          '----+---+---+----'          '----+---'
       |                    |       |                    |
       |   Order            |       |                    |
       |   Signature        |       |                    |
       o------------------->|       |                    |
       |                    |       |                    |
       |   [ No identity ]  |       |                    |
       |   [ validation  ]  |       |                    |
       |                    |       |                    |
       |   CSR              |       |                    |
       |   Signature        |       |                    |
       o------------------->|       |                    |
       |   Acknowledgement  |       |   Order'           |
       |<-------------------o       |   Signature        |
       |                    |       o------------------->|
       |                    |       |         Required   |
       |                    |       |   Authorizations   |
       |                    |       |<-------------------o
       |                    |       |   Responses        |
       |                    |       |   Signature        |
       |                    |       o------------------->|
       |                    |       |                    |
       |                    |       |<~~~~Validation~~~~>|
       |                    |       |                    |
       |                    |       |   CSR              |
       |                    |       |   Signature        |
       |                    |       o------------------->|
       |                    |       |   Acknowledgement  |
       |                    |       |<-------------------o
       |                    |       |                    |
       |<~~Await issuance~->|       |<~~Await issuance~~>|
       |                                                 |
       |     (unauthenticated) GET STAR certificate      |
       o------------------------------------------------>|
       |                 Certificate #1                  |
       |<------------------------------------------------o
       |     (unauthenticated) GET STAR certificate      |
       o------------------------------------------------>|
       |                 Certificate #2                  |
       |<------------------------------------------------o
       |                     [...]                       |
       |     (unauthenticated) GET STAR certificate      |
       o------------------------------------------------>|
       |                 Certificate #n                  |



Fossati                 Expires 14 September 2020               [Page 4]

Internet-Draft                  SVG Tests                     March 2020


       |<------------------------------------------------o

4.3.  A Sourced "Box and Arrows" Diagram

         .-------------------.
        |     .------.------. |
        |     | STAR | STAR |<--------------.
    .-->| SP1 | dele | dele | |              |
   |    |     | srv  | cli  +-----.          |
   |    |     '----+-'------' |    |         4
   |     '------^--|---------'     3         |
   |            |  |               |    .----|-----.
   |            |  5               |   | .---+--.   |
   |            |  |                '--->| ACME |   |
   |            |  |                   | | STAR | C |
   1            |  |                   | +------| A |
   |            |  |                .--->| HTTP |   |
   |            2  |               |   | '---+--'   |
   |            |  |               |    '----|-----'
   |     .------|--v---------.     6         |
   |    |     .-+----.------. |    |         7
   |    |     | STAR |      +-----'          |
    '-->| SP2 | dele | HTTP | |              |
        |     | cli  |      |<--------------'
        |     '----+-'-+----' |
         '-------------------'

                       Figure 1: STIR Delegation Flow

5.  IANA Considerations

   No requests are made to IANA.

6.  Security Considerations

   There are none.

7.  Acknowledgments

   Yaron for pointing out the current limitations in the tooling and
   providing the workaround.  Carsten for working the kramdown magic.

8.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.



Fossati                 Expires 14 September 2020               [Page 5]

Internet-Draft                  SVG Tests                     March 2020


   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

Author's Address

   Thomas Fossati

   Email: thomas.fossati@arm.com










































Fossati                 Expires 14 September 2020               [Page 6]