2.2.4 [SVG11] Section 8.3.9, The grammar for path data

V0027:

The specification states:

 The following is the BNF for SVG paths.
  
 svg-path:
     wsp* moveto-drawto-command-groups? wsp*
 moveto-drawto-command-groups:
     moveto-drawto-command-group
     | moveto-drawto-command-group wsp* moveto-drawto-command-groups
 moveto-drawto-command-group:
     moveto wsp* drawto-commands?
 drawto-commands:
     drawto-command
     | drawto-command wsp* drawto-commands
 drawto-command:
     closepath
     | lineto
     | horizontal-lineto
     | vertical-lineto
     | curveto
     | smooth-curveto
     | quadratic-bezier-curveto
     | smooth-quadratic-bezier-curveto
     | elliptical-arc
 moveto:
     ( "M" | "m" ) wsp* moveto-argument-sequence
 moveto-argument-sequence:
     coordinate-pair
     | coordinate-pair comma-wsp? lineto-argument-sequence
 closepath:
     ("Z" | "z")
 lineto:
     ( "L" | "l" ) wsp* lineto-argument-sequence
 lineto-argument-sequence:
     coordinate-pair
     | coordinate-pair comma-wsp? lineto-argument-sequence
 horizontal-lineto:
     ( "H" | "h" ) wsp* horizontal-lineto-argument-sequence
 horizontal-lineto-argument-sequence:
     coordinate
     | coordinate comma-wsp? horizontal-lineto-argument-sequence
 vertical-lineto:
     ( "V" | "v" ) wsp* vertical-lineto-argument-sequence
 vertical-lineto-argument-sequence:
     coordinate
     | coordinate comma-wsp? vertical-lineto-argument-sequence
  

IE9 Mode, IE10 Mode, IE11 Mode, and EdgeHTML Mode (All Versions)

White spaces and commas in the Backus-Naur Form (BNF) grammar are interchangeable. White spaces and commas can both delimit command groups.

Show: