ASPN ActiveState Programmer Network
ActiveState
/ Home / Perl / PHP / Python / Tcl / XSLT /
/ Safari / My ASPN /
Cookbooks | Documentation | Mailing Lists | Modules | News Feeds | Products | User Groups


Recent Messages
List Archives
About the List
List Leaders
Subscription Options

View Subscriptions
Help

View by Topic
ActiveState
.NET Framework
Open Source
Perl
PHP
Python
Tcl
Web Services
XML & XSLT

View by Category
Database
General
SOAP
System Administration
Tools
User Interfaces
Web Programming
XML Programming


MyASPN >> Mail Archive >> xml-dev
xml-dev
Re: [xml-dev] Looking for an example of a name colliision
by Arjun Ray other posts by this author
Jun 2 2003 7:44PM messages near this date
Re: [xml-dev] Looking for an example of a name colliision | Re: [xml-dev] Looking for an example of a name colliision
"Bob Foster" <bob@[...].com>  wrote:

| A document designer wants to allow foreign attributes and elements to 
| be freely intermixed with those of the document type, as, for example, 
| foreign elements and attributes are allowed in XML Schema and RELAX NG.

Combination at the schema or vocabulary definition level is not the same
issue as circumstantial combination in a document instance.  One could use
the same mechanism (control attributes) to "mark" provenance, but other
techniques (such as in-schema differentiation through analogues of the
"role" attribute in the <title>  example) become available too.

There is also ambiguity in what it means to "allow foreign material".  It
could mean allowing material of effectively unknown provenance.  (From a
validation perspective, merely the incidence of the foreign element is
noted; its internal validation is delegated to some other schema.)  This
is the "bridge element" concept, where from this schema's point of view,
the element is a semantically empty container, with the moral equivalent
of a (#DONTCARE) content model.  This allows the in-schema role to be
disengaged from whatever constraints are imposed on the element within its
own native schema. 

Another case is where the "semantics" of the foreign element are imported
into the schema.  Here, the foreign provenance is an annotative matter
only - the element type itself is now part of the schema and its native
vocabulary.  I would expect the element type to be given an in-schema name
of some kind (just like naming any other component), and at worst, a
differentiating attribute used if "name collisions" are retained.  Here I
don't see why the provenance (as opposed to the in-schema role) has to be
exposed in instance markup.  Why should a schema not own its names?  (And
if it can't, then why is there *any* schema claiming to own names?)

A third case is where a schema has no in-schema role for foreign material
that might be intermingled with its own constructs in a document instance.
It would follow, then, that the schema doesn't apply to the whole of the
document.  And, from the perspective of a document per se, there is no
reason that the schema should be comprehensive.  This is the "vocabulary
view" approach I've been talking about - it's a parsing issue only, and
completely solved by control attributes.  The schema doesn't have to say
anything, because the issue of validating the entire document with respect
to this schema simply doesn't arise.  (One would validate the "view" only;
semantically, it's up to a derivative schema, if one exists for the entire
document, to say in its documentation what it "means" to combine the
'view" with "views" of other prior schemas.)  

| [...] Some convention needs to be established that will allow foreign 
| items to be distinguished from any current or future "domestic" items, 
| and to prevent name collisions among foreign annotations from different 
| domains. 

I think any convention that enforces the ability of any schema to own the
naming of its in-schema constructs and roles is enough.  The annotation
could be an in-schema role-specifying attribute (which would typically
have to appear in instance markup) or a #FIXED control attribute (which
would not.)

| Both XML Schema and RELAX NG currently use namespaces as this convention. 
| Can you suggest a better one?

Well, you and I may not agree on what constitutes "better"; let's just say
that, to me, few things could be worse than colonification of names;-)

I don't think the possibilities of attributes for annotation have been
exahusted.

-----------------------------------------------------------------
The xml-dev list is sponsored by XML.org <http://www.xml.org> , an
initiative of OASIS <http://www.oasis-open.org> 

The list archives are at http://lists.xml.org/archives/xml-dev/

To subscribe or unsubscribe from this list use the subscription
manager: <http://lists.xml.org/ob/adm.pl> 
Thread:
Arjun Ray
Rick Jelliffe
james anderson
james anderson
K. Ari Krupnikov
Bob Foster
Arjun Ray
Thomas B. Passin
Thomas B. Passin
Bob Foster
Arjun Ray
K. Ari Krupnikov
Arjun Ray
K. Ari Krupnikov
Thomas B. Passin
Simon St.Laurent
Jonathan Borden
Thomas B. Passin
K. Ari Krupnikov
Arjun Ray
Simon St.Laurent
Chiusano Joseph
Arjun Ray
Chiusano Joseph
Chiusano Joseph
Arjun Ray
Thomas B. Passin
K. Ari Krupnikov
Arjun Ray
John Cowan
Arjun Ray
Bob Foster
W. E. Perry
Arjun Ray
Chiusano Joseph
Chiusano Joseph
Chiusano Joseph
W. E. Perry
Chiusano Joseph
Thomas B. Passin
Arjun Ray
John Cowan
Arjun Ray
John Cowan
Arjun Ray
K. Ari Krupnikov
james anderson
Arjun Ray
james anderson
Arjun Ray
Rick Jelliffe
james anderson
Arjun Ray
Jonathan Borden
=?ISO-8859-1?Q?Bill_de_h=D3ra?=
Arjun Ray
W. E. Perry
Arjun Ray
Rick Jelliffe
james anderson
Arjun Ray
Rick Jelliffe
Arjun Ray
Rick Jelliffe
Arjun Ray
james anderson
Simon St.Laurent
james anderson
Rich Salz
Jaywanth
Seairth Jacobs
Joe Gregorio
Arjun Ray
Arjun Ray
John Cowan
Simon St.Laurent
Arjun Ray
Paul Prescod
Arjun Ray
Paul Prescod
Arjun Ray
Tim Bray
MURATA Makoto
Arjun Ray
J.Pietschmann
Arjun Ray
Jason Diamond
Tim Bray
Tim Bray
Simon St.Laurent
Joe Gregorio
Paul Prescod
W. E. Perry
james anderson
james anderson
james anderson
Jonathan Borden
Miles Sabin
Simon St.Laurent
Jonathan Borden
Simon St.Laurent
W. E. Perry
Jonathan Borden
Simon St.Laurent
Thomas B. Passin
Jonathan Borden
Miles Sabin
Simon St.Laurent
Simon St.Laurent
Simon St.Laurent
Simon St.Laurent
Simon St.Laurent
Jonathan Borden
=?ISO-8859-1?Q?Bill_de_h=D3ra?=
Jonathan Borden
Miles Sabin
=?ISO-8859-1?Q?Bill_de_h=D3ra?=
james anderson
=?ISO-8859-1?Q?Bill_de_h=D3ra?=
Tim Bray
james anderson
John Cowan
=?ISO-8859-1?Q?Bill_de_h=D3ra?=
Arjun Ray
W. E. Perry
james anderson
=?ISO-8859-1?Q?Bill_de_h=D3ra?=
Joe Gregorio
Joe English
Paul Prescod
Joe English
Arjun Ray
=?ISO-8859-1?Q?Bill_de_h=D3ra?=
Simon St.Laurent
Arjun Ray
Joe English
Simon St.Laurent
Simon St.Laurent
Arjun Ray

Privacy Policy | Email Opt-out | Feedback | Syndication
© ActiveState Software Inc. All rights reserved