idnits 2.17.1 draft-brownlee-svg-rfc-08.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack a Security Considerations section. ** There is 1 instance of too long lines in the document, the longest one being 3 characters in excess of 72. == There are 1 instance of lines with non-RFC2606-compliant FQDNs in the document. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 155 has weird spacing: '...he list below...' == Line 156 has weird spacing: '...eft,and their...' == Line 159 has weird spacing: '...bset of the S...' -- The document date (September 29, 2014) is 3491 days in the past. Is this intentional? -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Informational ---------------------------------------------------------------------------- == Missing Reference: 'SVG' is mentioned on line 79, but not defined Summary: 2 errors (**), 0 flaws (~~), 6 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group N. Brownlee 3 Internet-Draft The University of Auckland 4 Intended status: Informational IAB 5 Expires: April 2, 2015 6 September 29, 2014 8 SVG Drawings for RFCs: SVG 1.2 RFC 9 draft-brownlee-svg-rfc-08 11 Abstract 13 This document specifies SVG 1.2 RFC - an SVG profile for use in 14 diagrams that may appear in RFCs - and considers some of the issues 15 concerning the creation and use of such diagrams. 17 Status of This Memo 19 This Internet-Draft is submitted in full conformance with the 20 provisions of BCP 78 and BCP 79. 22 Internet-Drafts are working documents of the Internet Engineering 23 Task Force (IETF). Note that other groups may also distribute 24 working documents as Internet-Drafts. The list of current Internet- 25 Drafts is at http://datatracker.ietf.org/drafts/current/. 27 Internet-Drafts are draft documents valid for a maximum of six months 28 and may be updated, replaced, or obsoleted by other documents at any 29 time. It is inappropriate to use Internet-Drafts as reference 30 material or to cite them other than as "work in progress." 32 This Internet-Draft will expire on April 2, 2015. 34 Copyright Notice 36 Copyright (c) 2014 IETF Trust and the persons identified as the 37 document authors. All rights reserved. 39 This document is subject to BCP 78 and the IETF Trust's Legal 40 Provisions Relating to IETF Documents 41 (http://trustee.ietf.org/license-info) in effect on the date of 42 publication of this document. Please review these documents 43 carefully, as they describe your rights and restrictions with respect 44 to this document. Code Components extracted from this document must 45 include Simplified BSD License text as described in Section 4.e of 46 the Trust Legal Provisions and are provided without warranty as 47 described in the Simplified BSD License. 49 Table of Contents 51 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 52 2. SVG 1.2 RFC: An SVG profile for RFCs . . . . . . . . . . . . 3 53 2.1. Elements, properties and attributes allowed in SVG 1.2 54 RFC . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 55 3. How to create SVG drawings . . . . . . . . . . . . . . . . . 6 56 4. Accessibility Considerations . . . . . . . . . . . . . . . . 6 57 5. Meta-language for diagrams common in RFCs . . . . . . . . . . 7 58 5.1. Packet Layout Diagrams . . . . . . . . . . . . . . . . . 7 59 5.2. Sequence Diagrams (1) . . . . . . . . . . . . . . . . . . 8 60 5.3. Sequence Diagrams (2) . . . . . . . . . . . . . . . . . . 10 61 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 62 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 12 63 8. Revision History [RFC Editor please delete] . . . . . . . . . 13 64 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 14 65 9.1. Normative References . . . . . . . . . . . . . . . . . . 14 66 9.2. Informative References . . . . . . . . . . . . . . . . . 14 67 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 69 1. Introduction 71 Over the last two years the RFC Editor has worked with the Internet 72 community to develop specifications for changes in the format of 73 RFCs. An outline of the resulting specifications was published as 74 [RFC6949] in May 2013. Since then a Design Team has been working 75 with the RFC Editor to flesh out those specifications. One aspect of 76 the changes is to allow line drawings in RFCs; [RFC6949] says 78 "Graphics may include ASCII art and a more complex form to be 79 defined, such as SVG line art [SVG]. Color and grayscale will not 80 be accepted. RFCs must correctly display in monochromatic black- 81 and-white to allow for monochrome displays, black-and- white 82 printing, and support for visual disabilities." 84 SVG (Scalable Vector Graphics) has been developed by W3C, the World 85 Wide Web Consortium; its current standard is SVG 1.1 Full 86 [W3C.REC-SVG11-20110816]. This document defines SVG 1.2 RFC, an SVG 87 profile (i.e. a subset of SVG) that is suitable for RFC line 88 drawings. 90 Note that in RFCs, the text provides normative descriptions of 91 protocols, systems, etc. Diagrams may be used to help explain 92 concepts more clearly, but they provide supporting detail, and should 93 not be considered to be complete specifications in themselves. 95 2. SVG 1.2 RFC: An SVG profile for RFCs 97 As a starting point for SVG 1.2 RFC, the Design Team decided to use 98 SVG 1.2 Tiny [W3C.REC-SVGTiny12-20081222]. SVG 1.2 Tiny is an SVG 99 subset intended to be implemented on small, mobile devices such as 100 cellphones and smartphones. That should allow RFCs to be rendered 101 well on such devices, especially those that have small screens. 102 However, RFCs are self-contained documents that do not change once 103 they are published. The use of SVG drawings in RFCs is intended to 104 allow authors to create drawings that are simple to produce, and 105 easier to understand than our traditional 'ASCII Art' ones. In 106 short, we are also trying to improve access to the content in RFCs, 107 so SVG drawings need to be kept as simple as possible. 109 SVG can provide a complete User Interface, but within RFCs, all we 110 need are simple diagrams that do not change once the RFC is 111 published. Therefore, SVG RFC does not allow anything from the 112 following sections in SVG Tiny 1.2 [W3C.REC-SVGTiny12-20081222]: 114 12 Multimedia 115 13 Interactivity 116 15 Scripting 117 16 Animation 118 18 Metadata 119 19 Extensibility 121 Note that SVG Tiny 1.2 elements may have many properties or 122 attributes that are needed to support aspects of the above sections. 123 Those are not allowed in SVG 1.2 RFC. 125 Considering the other sections in SVG Tiny 1.2 126 [W3C.REC-SVGTiny12-20081222]: 128 9 Basic Shapes 129 10 Text 130 Everything in these sections is allowed in SVG 1.2 RFC. 132 11 Painting: Filling, Stroking, Colors and Paint Servers 133 Anything relating to 'color' is not allowed in SVG 1.2 RFC, 134 everything else is allowed. This is a requirement documented in 135 [RFC6949]. 137 14 Linking 138 SVG Tiny 1.2 allows internationalized IRIs in references. In 139 SVG 1.2 RFC such links must be ASCII only. That should not 140 cause problems, since one can just use the URI form of any IRI. 141 Authors should try to use links only to URIs that are long-term 142 stable. 144 17 Fonts 145 SVG 1.2 RFC only allows 'serif', 'sans-serif' and 'monospace' 146 generic font families from the WebFonts facility, described in 147 CSS 2.1, [W3C.REC-CSS2-20110607], section 15, Fonts. In 148 particular, the SVG 'font' element is not allowed. 150 2.1. Elements, properties and attributes allowed in SVG 1.2 RFC 152 Elements, properties and attributes selected for SVG 1.2 RFC from 153 [W3C.REC-SVGTiny12-20081222]. 155 In the list below, elements and properties are listed on the 156 left,and their allowed values are given in parentheses on the 157 right. 158 , the list of allowed colours, is a black-and-white 159 subset of the SVG colour names. 161 Elements: 163 svg (version, baseProfile=tiny, width, viewBox, 164 preserveAspectRatio, snapshotTime, height, 165 id, role) 166 g (id, role, transform, label,class) 167 defs (id, role) 168 title (id, role) 169 desc (id, role) 170 use (x, y, href, xlink:href, id, role, transform) 172 rect (x, y, width, height, rx, ry 173 id, role, transform, stroke-miterlimit) 174 circle (cx, cy, r, id, role, transform) 175 ellipse (cx, cy, rx, ry, id, role, transform) 176 line (x1, y1, x2, y2, id, role, transform) 177 polyline (points, id, role, transform) 178 polygon (points, id, role, transform) 180 text (x, y, rotate, id, role, transform) 181 tspan (id, role) 182 textArea (x, y, width, height, auto, id, role, transform) 183 tbreak (id, role) 185 solidColor (id, role) 186 linearGradient (gradientUnits, x1, y1, x2, y2, id, role) 187 radialGradient (gradientUnits, cx, cy, r, id, role) 188 stop (offset, id, role) 189 path (d, pathLength, id, role, transform, stroke-miterlimit) 191 Properties: (most allow inherit as a value) 192 stroke 193 stroke-width 194 stroke-linecap (butt, round, square) 195 stroke-linejoin (miter, round, bevel) 196 stroke-mitrelimit 197 stroke-dasharray 198 stroke-dashoffset 199 stroke-opacity 200 vector-effect (non-scaling-stroke, none) 201 viewport-fill (none, currentColor) 202 viewport-fill-opacity 204 display (inline, block, list-item, run-in, compact, 205 marker, table, inline-table, table-row-group, 206 table-header-group, table-footer-group, 207 table-row, table-column-group, 208 table-column, table-cell, table-caption, 209 none) 210 visibility (visible, hidden, collapse) 211 color-rendering (auto, optimizeSpeed, optimizeQuality) 212 shape-rendering (auto, optimizeSpeed, crispEdges, 213 geometricPrecision) 214 text-rendering (auto, optimizeSpeed, optimizeLegibility, 215 geometricPrecision) 216 buffered-rendering (auto, dynamic, static) 218 (black, grey, darkgrey, dimgrey, lightgrey, 219 gray, darkgray, dimgray, lightgray, white) 220 opacity 221 solid-opacity 222 solid-color (currentColor, ) 223 color (currentColor, ) 225 stop-color (currentColor, ) 226 stop-opacity 228 line-increment (auto) 229 text-align (start,end, center) 230 display-align (auto, before, center, after) 232 font-size 233 font-family (serif, sans-serif, monospace) 234 font-weight (normal, bold, bolder, lighter) 235 font-style (normal, italic, oblique) 236 font-variant (normal, small-caps) 237 direction (ltr, rtl) 238 unicode-bidi (normal, embed, bidi-override) 239 text-anchor (start, middle, end) 240 fill (none, black or grey) 241 fill-rule (nonzero, evenodd) 242 fill-opacity 244 3. How to create SVG drawings 246 Many drawing packages can be used to create SVG drawings, for example 247 Open Source packages Inkscape and Dia. Be aware that such packages 248 may use SVG elements or attributes that are not allowed in SVG 1.2 249 RFC. 251 -For example, the 'marker' attribute is often used to place symbols 252 such as arrowheads on lines, but 'marker' is not allowed in SVG 1.2 253 Tiny or SVG 1.2 RFC. In such cases one has to draw the arrowhead in 254 another, simpler way. 256 -SVG clip paths are used to define a shape; objects outside that 257 shape become invisible. The 'clipPath' element is not allowed in 258 SVG 1.2 Tiny or SVG 1.2 RFC. 260 Diagrams produced with these packages may contain elements, their 261 attributes or properties, or values of attributes or properties that 262 are not allowed in SVG 1.2 RFC. We will need to provide a tool to 263 strip out anything that is not allowed in SVG 1.2 RFC, or to replace 264 disallowed values, e.g. 'sans-serif' for 'Sans' as values for 'font- 265 family'. Experience with a simple test version a tool for this has 266 shown that such deletion and replacement can be effective for making 267 SVG files from drawing packages conform to SVG 1.2 RFC, without 268 visibly changing the diagrams they produce. 270 The tool described above can also be used by Authors simply to check 271 that their diagrams conform to SVG 1.2 RFC. To help with this, if 272 visible changes do occur, the tool should produce a list of non- 273 allowed keywords and the context in which they were found. 275 Another way to create SVG drawings is to write programs to draw them. 276 For example, using python and its svgwrite module is a pleasant 277 environment (for those who like writing code). 279 To include a diagram into an RFC, the xml2rfc (v3) tool will need to 280 provide a way to include SVG drawings in Internet Drafts. 282 4. Accessibility Considerations 284 One of the long-term goals for RFCs is to make them more accessible, 285 e.g. to sight-impaired readers. For diagrams, it would be useful for 286 authors to provide alternative forms of the diagram, so that voice- 287 reading software could be used to 'talk through' the diagram. Simply 288 reading the SVG code for a complex diagram seems unlikely to work. 290 SVG 1.2 RFC allows SVG's 'title' and 'desc' elements. 'title' 291 provides a brief text caption for an SVG object (much like a figure 292 caption), and 'desc' provides a longer text description of what the 293 object actually represents. As well, the SVG 'role' attribute can be 294 used to indicate to a browser how an SVG object is to be interpreted. 295 Good suggestions on how to use these elements are given in 296 [SVG-ACCESS-TIPS]. 298 ARIA is a W3C Recommendation for using SVG to create 'Accessible Rich 299 Internet Applications.' A helpful introduction to ARIA is provided 300 by [SVG-ARIA-PRIMER], while [SVG-USING-ARIA] gives examples of how to 301 use ARIA to enhance SVG accessibility. 303 5. Meta-language for diagrams common in RFCs 305 This section presents a few examples of possible meta-languages which 306 could be used to create the kinds of diagrams that are most common in 307 RFCs. Note that they are merely examples, they do not imply that 308 these particular experimental languages might be more widely 309 implemented or used. Instead, they seem to show that designing meta- 310 languages simple enough to serve as audible representations of 311 complex diagrams is difficult indeed! 313 The SVG diagrams produced from the following examples can be seen at 314 https://www.cs.auckland.ac.nz/~nevil/SVG_RFC_1.2 315 along with an html version of this draft that includes the SVG 316 diagrams. 318 5.1. Packet Layout Diagrams 320 Example: Figure 3 from RFC 793. 322 In these examples the first line specifies the generated SVG 323 filename. The scale factor determines the size of the SVG drawing; 324 it needs to be set so that the drawing fits nicely into the final 325 document. 327 'packet;' starts the packet description; it's followed by a 328 description of the fields in each row. 330 info; 331 output "tcp-header.svg", scale 0.65; 333 packet; 334 row 0; 335 field "Source Port", 0 to 15; 336 field "Destination Port", 16 to 31; 337 row 1; 338 field "Sequence Number", 0 to 31; 339 row 2; 340 field "Acknowledgement Number", 0 to 31; 341 row 3; 342 field "Data Offset", 0 to 3; 343 field "Reserved", 4 to 9; 344 field "Urg", 10 to 10, fsize 14; # 14 px font so the flags fit 345 field "Ack", 11 to 11, fsize 14; 346 field "Psh", 12 to 12, fsize 14; 347 field "Rst", 13 to 13, fsize 14; 348 field "Syn", 14 to 14, fsize 14; 349 field "Fin", 15 to 15, fsize 14; 350 field "Window", 16 to 31; 351 row 4; 352 field "Checksum", 0 to 15; 353 field "Urgent Pointer", 16 to 31; 354 row 5; 355 field "Options", 0 to 23; 356 field "Padding", 24 to 31; 357 row 6; 358 field "Data", 0 to 31; 360 5.2. Sequence Diagrams (1) 362 Example: Figure 6 from draft-loreto-httpbis-trusted-proxy20-00. 364 In this example, columns are vertical lines with a text header above 365 them. There are three columns, and columns 1 and 2 are spaced 250 366 pixels apart. 368 The rest of the file describes objects to be drawn; most of them are 369 plines (polylines) from one column to another, but object 3 only 370 extends across to 0.3 of the distance between columns 1 and 2. 372 info; 373 output "httpbis-proxy20-fig6.svg", scale 0.9; 375 #Thu, 30 Jan 14 (NZDT) 377 #Figure 6 of draft-loreto-httpbis-trusted-proxy20-00.txt 378 column 1 width 250; # columns have vertical line to bottom 379 text above "user-agent"; 381 column 2 width 250; 382 text "Proxy"; 384 column 3; # Last col 385 text "Server"; 387 object 1; # Only need polylines 388 pline 1 to 2, arrowhead at end; 389 text above "(1) TLS ClientHello"; 390 text below "(ALPN ProtocolName: http)"; 392 object 2; 393 pline 1 to 2, arrowhead at start; 394 text above "(2) TLS Error"; 395 text below "(Proxy Cert)"; 397 object 3; 398 pline 1 to 1.3, down, back to 1, arrowhead at end; 399 text seg 2 centre "(inform user of the SecureProxy)"; 401 object 4; 402 pline 1 to 2, arrowhead at end; 403 text above "(3) TLS ClientHello"; 405 object 5; 406 pline 1 to 2, arrowhead at start; 407 text above "(4) ServerHello"; 409 object 6; 410 blank 1 to 2; 412 object 7; 413 block 1 to 2, objects 8 to 15, colour "grey"; 414 text above "HTTP2.0"; 416 object 8; 417 pline 1 to 2, arrowhead at end; 418 text seg 1 centre "(5) stream(X) GET"; 420 object 9; 421 pline 2 to 3, arrowhead at end; 422 text seg 1 above "(6) TLS ClientHello"; 424 object 10; 425 pline 2 to 3, arrowhead at start; 426 text seg 1 above "TLS ServerHello"; 428 object 11; 429 blank 2 to 3; 431 object 12; 432 block 2 to 3, objects 13 to 15, colour "grey"; 433 text seg 1 above "HTTP2.0"; 435 object 13; 436 pline 2 to 3, arrowhead at end; 437 text seg 1 centre "(7) stream(Z) GET"; 439 object 14; 440 pline 2 to 3, arrowhead at start; 441 text seg 1 centre "(8) stream(Z) 200 OK"; 443 object 15; 444 pline 1 to 2, arrowhead at start; 445 text seg 1 centre "(9) stream(X) 200 OK"; 447 5.3. Sequence Diagrams (2) 449 Example: Figure 3 from RFC 4321 451 This example uses (x,y) coordinates to specify points in in plines. 452 For these, the x units are columns and the y units are lines 453 (positive means 'down the diagram'). 455 both x and y may be absolute, e.g. 4.3, or relative, e.g. +1.5). 456 For the first point of a pline, relative means 'relative to the 457 starting point of the previous pline,' for other points in a pline it 458 means 'relative to the last point.' 460 Note that column 1 is drawn in white, i.e. nothing is drawn for it. 461 It's simply used to make a blank area where objects 8 and 9 can place 462 text. For both those objects a pline is used to specify the text's 463 position. 465 Last, the metalanguage allows simple macros, introduced by 'define 466 foo = '. These make it easier to re-use definitions, for example of 467 line types. 469 info; 470 output "rfc4321-fig3.svg", scale 0.9; 472 # Sat, 5 Apr 14 (NZDT) 473 #Figure 3 of RFC 4321 475 define hw = width 110; # Hop width 477 column 1 width 130, colour "white"; # No heading or vertical line 479 column 2 hw; text above "UAC"; 481 column 3 hw; text "P1"; 483 column 4 hw; text "P2"; 485 column 5 hw; text "P3"; 487 column 6 hw; text "UAS"; 489 define tgrey = colour "lightgrey" width 5; # Thick grey 490 define ahe = arrowhead at end; 492 object 1; 493 pline 1.8 494 to 2.3 tgrey, to (2.4,+0), to (2.6,+1.5), to (2.7,+0) ahe, 495 to 3.3 tgrey, to (3.4,+0), to (3.6,+1.5), to (3.7,+0) ahe, 496 to 4.3 tgrey, to (4.4,+0), to (4.6,+1.5), to (4.7,+0) ahe, 497 to 5.3 tgrey, to (5.4,+0), to (5.6,+1.5), to (5.7,+0) ahe, 498 to 6.3 tgrey; 500 object 2; 501 pline (1.8,+10) to 2.3 tgrey; 503 object 3; 504 pline (3.3,+2) 505 to 2.85 tgrey, to (2.7,+0) tgrey, 506 to (2.5,+0), to (2.25,+1.5), to (2.0,+0) ahe; 507 text seg 2 centre "408"; 509 object 4; 510 pline (4.3,+1.5) 511 to 3.9 tgrey, to (3.7,+0) tgrey, 512 to (3.5,+0), to (3.3,+1.5), to (3.1,+0) ahe, 513 to 2.9 tgrey, to (2.7,+0) tgrey, 514 to (2.5,+0), to (2.25,+1.5), to (2.0,+0) ahe; 515 text seg 2 centre "408"; 516 text seg 7 centre "408"; 518 object 5; 519 pline (5.3,+1.5) 520 to 4.9 tgrey, to (4.7,+0) tgrey, 521 to (4.5,+0), to (4.3,+1.5), to (4.1,+0) ahe, 522 to 3.9 tgrey, to (3.7,+0) tgrey, 523 to (3.5,+0), to (3.3,+1.5), to (3.1,+0) ahe, 524 to 2.9 tgrey, to (2.7,+0) tgrey, 525 to (2.5,+0), to (2.25,+1.5), to (2.0,+0) ahe; 526 text seg 2 centre "408"; 527 text seg 7 centre "408"; 528 text seg 12 centre "408"; 530 object 6; 531 pline (6.3,+1.5) 532 to 5.9 tgrey, to (5.7,+0) tgrey, 533 to (5.5,+0), to (5.3,+1.5), to (5.1,+0) ahe; 534 to 4.9 tgrey, to (4.7,+0) tgrey, 535 to (4.5,+0), to (4.3,+1.5), to (4.1,+0) ahe; 536 to 3.9 tgrey, to (3.7,+0) tgrey, 537 to (3.5,+0), to (3.3,+1.5), to (3.1,+0) ahe; 538 to 2.9 tgrey, to (2.7,+0) tgrey, 539 to (2.5,+0), to (2.25,+1.5), to (2.0,+0) ahe; 540 text seg 2 centre "408"; 541 text seg 7 centre "408"; 542 text seg 12 centre "408"; 543 text seg 17 centre "408"; 545 object 7: 546 pline (1.63,4.1) to (1.73,+0); 548 object 8; 549 pline (1.68,4.1) to (+0,14) arrowhead at end; 550 text centre "64*T1"; 552 object 9; 553 pline (1.2,13.1) to (1.5,+0) colour "white"; 554 text centre "(timeout)"; 556 6. IANA Considerations 558 This document does not create a new registry nor does it register any 559 values in existing registries; no IANA action is required. 561 7. Acknowledgements 563 Thanks to the RSE and the Design Team members for their helpful 564 comments and suggestions for SVG 1.2 RFC. 566 8. Revision History [RFC Editor please delete] 568 version -08, 29 Seo 14: 569 Section 1: Changed comment about diagrams 'not being normative' to 570 'not complete specifications in themselves. 571 Section 2.1: Added SVG 1.2 Tiny 'id' attribute because most 572 drawing packages use it in constructing drawings. 573 Section 2.1: Added SVG 1.2 Tiny 'role' attribute so that ARIA can 574 use it. 575 Section 3: added comment about changes to xml2rfc required to 576 include SVG diagrams. 577 Section 4: Added reference to svg-aria-primer. 579 version -07, 3 Jul 14: 580 Expanded text about Accessibility in 'how to create SVG drawings' 581 section into 'Accessibility Considerations section. Added two SVG 582 Accessibility references to support that. 584 version -06, 26 Jun 14: 585 Remove trailing / from URL in section 4; the html version on 586 tools.ietf.org/html assumed the next word was part of that URL. 588 version -05, 25 Jun 14: 589 Improved section on 'how to create SVG drawings' By adding some 590 text about which elements aren't allowed in SVG 1.2 RFC. 591 Added more text describing the tool for checking, stripping out or 592 replacing incompatible elements and attributes from an SVG file. 594 version -04, 30 Apr 14: 595 Fixed typos, used full references for two of the w3c refs - each 596 had an author name using UTF8 characters. 597 Moved the Elements and Attributes appendix up earlier to make it 598 sub-section 2.1. 599 Disclaimer added to the Meta-languages section. 601 version -03, 14 Apr 14: 602 Added two more example diagrams; a simple packet layout, and a 603 diagram that uses lots of diagonal lines. 605 version -02, 12 Feb 14: 606 Added metalanguage example to make time-sequence drawings. 608 version -01, 11 Feb 14: 609 Allow links to 'long-term stable URIs' 610 Link URIs must be ASCII only 611 Need for tools to check SVG 1.2 RFC compatibility and to strip 612 'unnecessary' attributes explicitly stated. 614 Statement that drawings can't be normative removed; Postscript- 615 only RFCs already exist. 616 Added most attributes and elements to the Appendix. 618 version -00, 29 Jan 14: 619 Initial version, using content from Nevil's 620 emails to the Design Team. 622 9. References 624 9.1. Normative References 626 [RFC6949] Flanagan, H. and N. Brownlee, "RFC Series Format 627 Requirements and Future Development", RFC 6949, May 2013. 629 [W3C.REC-SVGTiny12-20081222] 630 Andersson, O., Berjon, R., Dahlstrom, E., Emmons, A., 631 Ferraiolo, J., Grasso, A., Hardy, V., Hayman, S., Jackson, 632 D., Lilley, C., McCormack, C., Neumann, A., Northway, C., 633 Quint, A., Ramani, N., Schepers, D., and A. Shellshear, 634 "Scalable Vector Graphics (SVG) Tiny 1.2 Specification", 635 World Wide Web Consortium Recommendation REC- 636 SVGTiny12-20081222, December 2008, 637 . 639 [W3C.REC-CSS2-20110607] 640 Bos, B., Celik, T., Hickson, I., and H. Lie, "Cascading 641 Style Sheets Level 2 Revision 1 (CSS 2.1) Specification", 642 World Wide Web Consortium Recommendation REC- 643 CSS2-20110607, June 2011, 644 . 646 9.2. Informative References 648 [W3C.REC-SVG11-20110816] 649 Dahlstrom, E., Dengler, P., Grasso, A., Lilley, C., 650 McCormack, C., Schepers, D., Watt, J., Ferraiolo, J., 651 Fujisawa, J., and D. Jackson, "Scalable Vector Graphics 652 (SVG) 1.1 (Second Edition)", World Wide Web Consortium 653 Recommendation REC-SVG11-20110816, August 2011, 654 . 656 [SVG-ACCESS-TIPS] 657 Watson, L., "Tips for Creating Accessible SVG", SitePoint 658 tips-accessible-svg, May 2014, 659 . 661 [SVG-ARIA-PRIMER] 662 Pappas, L., Schwerdtfeger, R., and M. Cooper, "WAI-ARIA 663 1.0 Primer", World Wide Web Consortium WD WD-wai-aria- 664 primer-20100916, September 2010, 665 . 667 [SVG-USING-ARIA] 668 Watson, L., "Using ARIA to enhance SVG accessibility", The 669 Paciello Group 2013/12/using-aria-enhance-svg- 670 accessibility, December 2013, 671 . 674 Authors' Addresses 676 Nevil Brownlee 677 The University of Auckland 679 Email: n.brownlee@auckland.ac.nz 681 Internet Architecture Board 683 Email: iab@iab.org