[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Can we treat XML elements and attributes as sets


expositional writing
[This post is purely about expositional writing about XML, no substantive 
discussion here.]

On Mon, 22 Aug 2005, Elliotte Harold wrote:

>> <a>pi</a>
>> 
>> <a>
>>   <b>3.14156</b>
>> </a>
>
> The tricky bit here that I've struggled with while writing this is what does 
> it mean for two elements to be the same. In this context, that we're talking 
> about the element "kind" rather than the element instance. Otherwise the 
> first element <a>1</a> is not the same as the second element <a>1</a>. At the 
> same time, I want to avoid the word "type" which has just way too many 
> connotations. However, I don't really want to say that the names are the same 
> either, since that doesn't really reflect how namespaces are used in 
> practice.

But is there actually any need to define the one and only notion of 
"sameness" for elements? (Or "elements being of the same kind")  I'd 
suggest that there are multiple ones, and any can be argued to be natural 
for an appropriate task at hand.  E.g.:

1. Elements are of the same kind when they have the same name. E.g., 
<a>3</a> and <a>4</a> are the same, and both different from <b>3</b>.

2. Elements are of the same kind when their content _values_ are equal. 
E.g, <a>3</a> and <b>3</b> are the same, but <a>3></a> and <a>4</a> are 
different.

3. Elements are of the same kind when their _content models_ (e.g. types 
after validation w.r.t. an agreed-upon schema formalism) are equal. E.g., 
<a>3</a> and <b>4</b> are equal (when their contents are considered 
integers), and different from <a><c/></d></a>, which has element content.

4. Elements are of the same kind when they have the same name _and_ the 
same content model.

1 and 4 are probably more commonly needed, but 2 and 3 have their uses, 
too.  Particularly, when we talk just about namespaces (without bringing 
into the picture schema languages that might use namespaces), #1 is the 
appropriate notion of sameness -- since namespaces are just about tag 
names, not about elements whatsoever.

> I'm still not perfectly happy with my language here. Improvements are 
> solicited and appreciated. The difficulty we have explaining this stuff 
> clearly and correctly I think reflects some underlying problems in the whole 
> namespace model.
>
> Maybe this isn't even a namespace problem. Ignoring namespaces and going back 
> to XML 1.0, can we say that two FOO elements share some part of their nature? 
> Maybe not, Clearly an HTML table is not a furniture table, but isn't this 
> exactly the problem namespaces were supposed to solve? i.e. a 
> {http://www.w3.org/199/xhtml}table is always one kind of thing, never some 
> other kind of thing?

I probably misunderstand this passage, but I am afraid it talks about XML 
Namespaces Recommendation as a solution to the problem of assigning 
semantics (HTML table vs furniture table) to names of element tags. 
Namespaces are just about (1) broadening the pool of names available for 
creating documents so that we avoid stepping on each other's toes, and (2) 
keeping the syntax of documents manageable while doing so.  The problem 
(1) could have been solved by using element names like 
<www-w3c-org-1999-xhtml_table> vs <usa-cabinet-makers-association_table> 
--- as long as W3C would not start tags in its specifications the same way 
the cabinet makers did, everybody would be happy. But the syntax overhead 
would be unbearable, hence (2).

For semantic assignments, we do not (cannot?) have anything better than 
what Michael calls social conventions.  The cabinet makers would still be 
in perfect compliance with XML, Namespaces, and Schema if they published a 
schema / spec explaining the structure of documents that use element 
<table xmlns="http://www.w3c.org/1999/xhtml"> to describe furniture tables 
(pardon the URI's (in)correctness).  We would just boycott them, that's 
it.

Vladimir


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.