- From: Nigel McFarlane <nrm@kingtide.com.au>
- Date: Mon, 18 Oct 2004 11:21:28 +1000
- CC: www-svg@w3.org
> My problem with this is that elements don't have a nature, XML doesn't have > a spirit - XML elements have a concrete definition defined however (it > depends on the XML vocabulary of course) That definition is concrete, a > rendering _cannot_ change it, so I don't see why the spec is attempting to > make that forbidden, when it's simply a fact. Alas, it's all shades of grey once you start augmenting the implementation of a tag, since many properties (in the generic sense) of the bound tag, including content, can be changed by the binding. Here's examples that shows how easy it is to mitigate a definition. It's hard to resist the conclusion that this is all utter stupidity, but these are the kinds of semantic defects that are easy to fall into with XBL, and that are often arractive from a practical implementation perspective. Suppose a <shoe> tag exists and is formally defined. It's locked in stone as a tag suitable for SVG. We insist that only XML Schema enabled, validating UAs handle the tag, just to be sure. The words accompanying the formal definition state that a shoe element is an item of apparel worn on the pedal extremities. Further suppose some bindings exist that modify the shoe content and how it can be acted on by event handlers. Starting with plausable, we work towards implausible. Binding A "runner" displays a Nike shoe and provides handlers for paying exhorbitant amounts for one using a Web Service, or for navigating to the Nike web site. Is that in the spirit of the definition? Binding B "glass slipper" displays Cinderella's shoe and includes handlers suitable for scrolling through a set of upwardly mobile young ladies to see if the shoe fits. They appear in a z-layer behind the shoe, tastefully arranged. Is that in the spirit of the definition? Binding C "converse star" displays an old fashioned runner with new-fashioned retro appeal. All its handlers provide methods that display electric guitar bar chords, since that's an aspiration of such shoe wearers. They have nothing to do with shoes. Is that in the spirit of the spec? Binding D "monopoly-shoe" displays the Monopoly(r) games's shoe player token. All the handlers do is navigate the bound tag to the right place on the board, entirely free of shoe semantics. Other tags, like <candelabra> and <thimble> also exist, with exactly the same semantics, but since it's an AI system designed to federate well-known concepts like shoe and thimble into a deductive monopoly system, they each are drawn from other namespaces, as shoe is. Is that in the spirit of the definition? Binding E "horseshoe" displays a horse shoe. Is that in the spirit of the definition? Binding F, by a person who wishes to culture jam the concept of shoe for marketing purposes, defines a shoe differently and provides a binding that displays a piece of equipment for holding playing cards. This is done by reaching up through the DOM and hacking to bits any explicit content in the bound tag. Binding G "shoe-item" is used inside a paper doll in a computer game. A shoe is displayed, but it has extended semantics due to its handlers that only let it work inside the paper doll. It can't exist by itself as a first class concept, only in the context of other paper doll tags. Is that in the spirit of the definition? The point is not that these examples are silly (they might be to you, but not to the genius using them), but just that neither the spec nor you nor I can be the final arbitrar of "appropriate use" in all imaginable situations. Thus a bit of handwaving for the purposes of general healing. - Nigel. -- --------------------------------------------------------------------- Nigel McFarlane nrm@kingtide.com.au Services: Analysis, Programming, Writing, Education Expertise: Software, Telecommunications, Internet, Physics "Rapid Application Development with Mozilla" / www.nigelmcfarlane.com
Received on Monday, 18 October 2004 01:18:28 UTC