Re: [svg-developers] canonical expressions -- part 2: A challenge: accessbility and symbols of the public domain (wikipedia)
- Interesting topic, as usual. I can only comment about one area.
On Sun, 7 Nov 2010 23:31:43 -0500
"ddailey" <ddailey@...> wrote:
> Challenge: come up with "better" symbols for signifying "public[snip]
> domain" or "copyright free."
> Look inside the two figures and you'll see several questions thatI find all of these questions are variations of one theme that I spend
> pose themselves: is it better to use <use>?
> does striking all the sodipodi stuff erase some of the artist's
> brushstrokes?*** are two paths with one rotating the other better
> than one that has twice as coordinates listed? doesn't it make more
> sense to let color be inherited from the group rather than
> individually defined for each path? what about the optical illusion
> of the letters pd for public domain? Should that be made semantic in
> our markup?
a fair amount of time thinking about, in SVG and in programming.
How do we convey "intent" in the code?
In many cases, the answer to all of the above questions is "it
depends". One of the big differences for me between SVG and the raster
graphics I've worked with before is the fact that objects in SVG can
retain some identity.
In raster graphics, you can argue that all that matters is the final
look of the image. Everything is reduced to a grid of pixels in the end.
With SVG, on the other hand, we have both the visible result of the
image and the objects from which it was constructed. Which method was
used in that construction can reveal some of what the artist was
thinking when constructing the image. For example, all of the following
represent the same shape (assuming that #tablerect references the right
kind of element). But, to me they say different things.
<rect x="10" y="10" width="100" height="50" />
<polygon points="10,10 110,10 110,60 10,60" />
<path d="M10,10l110,10 110,60 10,60z" />
<use xlink:href="#tablerect" x="10" y="10" />
The <rect> is a specific shape. If it had an id or class attributes, it
might tell me more about the intent of this rectangle.
The <polygon> is a more general construct. I have to pay more attention
to be sure that it is actually a rectangle. The "rectangle-ness" of the
object appears less important to the artist.
The <path> is a really generic element. This kind of implies that the
artist was less concerned about the "shape" of the object and more
concerned about the look of the output.
The <use> element suggests that we are using an instance of a more
generic object. The id of the referenced element gives us a clue to the
To circle back around to some of David's questions, I would ask a
meta-question. What is the intent of the image: the look or the semantic
content? If the intent is to generate a particular look, then any
mechanism that results in the correct look is acceptable.
If semantics matter, then the questions take on a new meaning.
The <use> element is appropriate if the references are in some sense
"identical objects" that we are using in multiple places.
Using a path and a rotated reference to that path, suggests that they
are semantically similar or the same. Duplicating the points suggests
that they are only coincidentally the same (maybe they will change at
Inheriting color from a group suggests that all of the child elements
involved are part of a set. The color is a representation of this
In the above text, I say that particular constructions "suggest" rather
than "declare" particular semantics. I do this because there are
exceptions to every one of the examples. But, these suggestions are
part of the (semantic) richness that draws me to SVG as a format.
Apologies for the long-winded response. I really thought it was going
to be shorter when I began.<shrug/>
Machines take me by surprise with great frequency. -- Alan Turing