![](https://secure.gravatar.com/avatar/eb3fe37da4a199eb4e3b479d8a57f808.jpg?s=120&d=mm&r=g)
Since I still can't get to the Wiki to document this, after talking to the SVG WG chair and studying the LPE proposal in more detail, here's what I think the live path effect stuff should look like:
svg:defs <!-- input paths stored here; collect=always means they are auto-deleted by inkscape when no longer hreffed --> <path d="..." id="foo" inkscape:collect="always" /> </svg:defs> ...
<!-- sodipodi:type lets us bind a custom SPObject type --> <svg:switch sodipodi:type="livePathEffect">
<!-- we use the Inkscape namespace since it's not standard yet --> inkscape:vectorEffect requiredExtensions="http://www.inkscape.org/SVG/vectorEffect" inkscape:vePath <inkscape:vePathRef xlink:href="#foo" /> </inkscape:vePath>
<!-- the effects go here --> <inkscape:extensionEffect name="org.inkscape.ext.jumble"> <inkscape:param name="spacing" value="10" /> <inkscape:param name="increment" value="0.5" /> </inkscape:extensionEffect>
<!-- gets us standard SVG painting of result path --> <inkscape:veFill /> <inkscape:veStroke /> <inkscape:veMarker /> </inkscape:vectorEffect>
<!-- result path for backwards-compatible rendering, and reference by text-on-path, etc. --> <svg:path d="..." /> </svg:switch>
Bear in mind that it's not necessary to implement ALL features of vector effects upfront, merely the small subset used here.
Vector effects are documented here:
http://www.w3.org/TR/2004/WD-SVG12-20041027/vectoreffects.html
-mental