[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Co-operating with Architectural Forms
"Steven R. Newcomb" wrote: > > ... (It would have been wasteful if XML had been > designed in such a way that every element had to begin > with the characters: > > <GI= But why would that have been the case. If the GI attribute is in no way special then why would elements need to have a GI attribute at all? One vocabulary could call the type-specifying attribute "eltype" and another could call it "type" and another could call it "mytype". And yet another could do without it at all. <>Hello world <>Isn't this</> nice</> After all, attributes are optional! Nobody forces a vocabulary to use attributes. And schemas wouldn't work from GIs. They would work purely from name/value pairs. Ditto for stylesheets and transformations. Instead of XPaths like /foo/bar we'd have /etype=foo/type=bar. Instead of declaring attributes and content models being attached to GIs, they would be attached to other name/value attribute pairs: <!ATTLIST #ALL etype> <!ELEMENT etype=p (etype=bar, etype=baz*)> <!ATTLIST etype=p someattr ...> The model I'm describing is radically different than XML or SGML, but it is the logical end-point of this idea that the GI is just another attribute. It would totally destroy the relationship between XML and "typed tree" systems like BNFs, CFGs and regular tree/hedge/forest automata. RELAX would probably not exist and XML Schema would be even more complicated than it is. The whole XML world is organized around the idea that the GI is the *type name*. It is not surprising that architectural forms bend people's minds -- they completely invert the standard model like quantum physics and relativity. Plus, the bending actively works against the idea that you are setting up a kind of "type inheritance" or subtyping where one type inherits from another. On the one hand we say that we are setting up relationships between types and then on the other saying that really the first thing was just an attribute, not really a type, so look over here at that attribute: it's really the type. Paul Prescod
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|