Expressing XLink concepts in XML Schema

Didier PH Martin martind at
Sun Aug 1 00:50:04 BST 1999

Hi Dan,

On Sat, 31 Jul 1999, Didier PH Martin wrote:
> This is because some are stretching too much the utility of RDF. At its
> origin, RDF has been designed as a metadata encoding tool.

Dan said:
And XML was designed for structured document interchange, but that's not
stopped people having all sorts of unanticipated fun with it...
(and can anyone remember what the Internet itself was originally for? ;-)

It may well be that RDF is in some quarters being stretched beyond
current capabilities. It certainly hasn't suffered the dangerous hype
currently afflicting XML, and I personally hope it never does. Appeals
to origins don't help much here: is better to argue on technical
capabilities. There are certainly many things now missing from RDF which
hinder our use of it for Web database-oriented applications.
Data aggregation for example turns out to be difficult (even though
URI-based graphs provide a solid foundation...) given the modest
constraint mechanisms in the proposed Schema 1.0 system. Because we have
no notion of cardinality/occurance in 1.0, aggregating overlapping data
is hard without having hard-coded additional knowledge of the
vocabualries/applicatiosn concerned. This has nothing to do with the
origins of RDF, of XML, or of the Internet. It's just an interesting
fact about what's currently feasible given the specs on the table.

Didier says:
Thanks to call for order ;-)
a) When you say data aggregation, so that no confusion about what you mean
is inserted in the message, what do you mean exactly? There is several ways
to aggregate so I want to be sure I understand which one you are talking
b) In rdf, because its intent is not for data base data exchange, there is a
lack of relation notation between entities. In fact, there is no entity
relationship in rdf except arcs to relate tuples (subject, property, value).
So, it is more a property/value kind of stuff. A set of properties could be
aggregated into classes. From these classes we can obtain instances. There
is no actual capabilities to relate classes.

Didier said:
> a) rdf for metadata - to add information to existing resources
> b) xlink for resource linkage - to link resources
> This said, we'll have more and more similarities because:
> a) all these languages are XML based,
> b) we start to see now some common sub languages used across different

Dan said:
No - the similarity it because RDF describes resources in terms of their
relationships with other resources (conceptual and concrete) as well as
ascribing simpler flat attributes to those resources.

Didier says:
It is because you have the capability to create a "record" or "group of
properties". The problem then is to use the <rdf:description about="">
construct which semantically does not make too much sense in this context
(db data exchange). So, what we need, is a schema language allowing us to
define classes and properties (rdf schema language made some marks here),
relations between classes (nothing yet). The rdf schema language has some
interesting constructs to allow us to define classes and properties but
nothing to define relation between classes.

So, really what is interesting here for data exchange is not the
relationship (i.e. the tuple) per se but the capability to create classes
and then have instances of these classes and also to more formally describe
properties contained in these classes. Now, what's missing is class
relationship. To translate the object notation "class" into the relational
DB world, we can translate "class" by table, property by "column" and
finally instance by "row".

By the way, it is possible to use the rdf schema language without using the
rdf constructs like <rdf:description>. The schema language could be used to
define any domain specific language or more simply a DB exchange language.
With such a schema, a good interpreter can do the job to understand the data
encoded in the document.

Dan said:
 Xlink allows for
links to be expressed between document-like resources, and for those
knowledge of those relationships to be stored outside the resources
concerned. These are clearly overlapping pieces of the same larger
puzzle. For my money the XArc proposal goes some way towards addressing
potential overlaps here.

Didier says:
xlink is about linkage, period. Yes with some imagination I can use it for
an other usage like, I would be using a pencil to write, as a pendulum, as a
piece of wood, as a fire starter, etc... But its best usage is to be used to
write :-)

Didier said:
> like for instance XPath and XPointer (re-united) and the string based
> pointer language used in other XML based languages.
> James said:
> Also between XML Schemas and RDF Schemas.
> Didier says:
> Yes and this is good news because having a single schema language is more
> intelligent than having to still live in the Babel tower.

Dan said:
I'd rather have a single data model and a family of schema languages
built to a common approach...

Didier says:
What do you mean here? That having a lot of schema language is better than
having one? This is actually the case anyway and this has been like that
before xml. I don't see your point, we are talking here of the xml world. I
would, for myself prefer to have a set of coherent specs. And for instance,
a strong xml based schema language. To reduce complexity, probably a
language divided into several modules so that we can use the module we need.
This would be a more useful architecture and also, easier to learn for

Didier PH Martin
mailto:martind at

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at

More information about the Xml-dev mailing list