You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
315 lines
12 KiB
315 lines
12 KiB
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta name="generator" content="HTML Tidy, see www.w3.org" />
|
|
<title>RDF Research notebook: On edge-labelled graphs in XML</title>
|
|
</head>
|
|
<body bgcolor="#ffffff">
|
|
|
|
<h1>Research notebook: On edge-labelled graphs in XML</h1>
|
|
|
|
<p>This document serves as an informal survey of XML applications
|
|
that adopt an edge-labelled graph data model similar to that used
|
|
in W3C's Resource Description Framework (<a href="/RDF/">RDF</a>).
|
|
It also points to discussion and proposals regarding improvements
|
|
to the RDF XML syntax.
|
|
Hopefully these pointers will prove useful even while the document is
|
|
incomplete.
|
|
</p>
|
|
|
|
|
|
<p>Status: very very sketchy, disorganised collection of URLs, excerpts
|
|
and commentary. This is a pile of stuff for some (possibly
|
|
non-existent) future version to flesh out. Suggestions for other related
|
|
materials welcomed (W3 folk, feel free to edit directly).
|
|
</p>
|
|
|
|
<p>Author: <a href="mailto:danbri@w3.org">dan brickley</a></p>
|
|
|
|
<h2>Overview</h2>
|
|
|
|
<p>There seems to be some consensus around the claim that RDF has a
|
|
useful data model but a problematic XML syntax. This document is an
|
|
attempt to gather together the various discussion documents and proposals
|
|
that relate this topic to the broader context of XML-based graph
|
|
serialization systems.
|
|
</p>
|
|
|
|
<p></p>
|
|
|
|
<h2>XML Graph resources</h2>
|
|
|
|
<p>@@in-progress. This is a dump of some resources / references to
|
|
collect and summarise.</p>
|
|
|
|
<p>RDF Syntax proposals are tracked in the <a
|
|
href="/RDF/Interest/#docs">discussion documents</a> section of
|
|
the RDF Interest Group home page.
|
|
</p>
|
|
|
|
|
|
<h3>Layman et al</h3>
|
|
|
|
<p><a href="http://www.w3.org/TR/1998/NOTE-XML-data-0105/">XML-Data</a>
|
|
<a href="http://www.w3.org/Submission/1998/01/">submission</a>. Subsequent publications
|
|
in same tradition: QL'98 position paper from Layman, "<a href="
|
|
http://www.w3.org/TandS/QL/QL98/pp/microsoft-serializing.html">XML Syntax
|
|
Recommendation for Serializing Graphs of Data</a> (Dec 2nd 1998).
|
|
</p>
|
|
|
|
<p><a href="http://www.biztalk.org/Resources/canonical.asp">BizTalk white
|
|
papers: Serializing Graphs of Data in XML, Adam Bosworth, Andrew Layman,
|
|
Michael Rys</a>:
|
|
</p>
|
|
<blockquote>XML is evolving as the standard format of exchanging data
|
|
among
|
|
heterogeneous, distributed computer systems and as such is used to
|
|
represent
|
|
data of various origins in a common format. Often, this data possesses
|
|
rich structure and represents relationship among various entities. These
|
|
relationships form graphs, where the relations are directed from one
|
|
entity
|
|
to another (and may have inverses) and where there may be multiple paths
|
|
to an entity. Thus, an important goal of the encoding of this data is to
|
|
preserve the exact graph structure in the serialization to XML. The aim
|
|
of this paper is to describe a specific way to use XML to serialize graphs
|
|
of data (such as database tables and relations or nodes and edges from
|
|
directed labeled graphs) in such a way that the graph structure is
|
|
preserved
|
|
and can be reconstructed.
|
|
<address>
|
|
<a href="http://www.biztalk.org/Resources/canonical.asp">Biztalk.org
|
|
Resources:
|
|
Canonical Reference</a> Thu, 01 Jan 1970 00:00:00 GMT</address>
|
|
</blockquote>
|
|
|
|
|
|
<blockquote>The elements and attributes in an XML document often are a
|
|
representation of objects from a specific data model such as
|
|
Directed-Labelled-Graph
|
|
or Database Relations. We can annotate a schema so that a reader can
|
|
determine
|
|
the mapping from an XML document instance to an instance of the other data
|
|
model. Mapping information for a specific data model is expressed using
|
|
attributes from a namespace specific to the mapping. Each mapping system
|
|
will have its own rules. For example, mapping from XML instances to
|
|
Directed-Labelled-Graph
|
|
instances has the rule that all attributes and all elements whose names
|
|
differ from their type represent edges. However, elements without a name
|
|
distinct from the type may represent either nodes or edges, and we must
|
|
indicate which by using a role attribute in the type declaration in the
|
|
schema.
|
|
<address>
|
|
<a
|
|
href="http://www.lindamann.com/xml/XML%20Schemas%20NG%20Guide%20HTML.htm">XML
|
|
Schemas NG Guide</a> Mon, 14 Jun 1999 05:54:24 GMT</address>
|
|
</blockquote>
|
|
|
|
|
|
<h3>XML-DEV discussion</h3>
|
|
|
|
<p>xml-dev threads: <a
|
|
href="http://www.lists.ic.ac.uk/hypermail/xml-dev/xml-dev-Dec-1999/0128.html">object-oriented
|
|
serialization</a>, dec 1999.
|
|
</p>
|
|
|
|
<blockquote>I honestly feel that XML provides all the tools to do what
|
|
RDF is trying to do, without an additional syntactic layer. What is
|
|
missing
|
|
from the picture is a mechanism for modelling object structures according
|
|
to object-oriented principles, and this is why an OO schema language is
|
|
necessary. The only other thing the RDF brings to the game is that it
|
|
turns
|
|
relationships into first-class objects that can be referenced as well
|
|
<address>
|
|
<a
|
|
href="http://www.lists.ic.ac.uk/hypermail/xml-dev/xml-dev-Dec-1999/0128.html">xml-dev-Dec-1999:
|
|
Object-oriented serialization (Was Re: Some q</a> Sat, 11 Dec 1999
|
|
00:14:28
|
|
GMT</address>
|
|
</blockquote>
|
|
|
|
<blockquote>If you're interested in a collection of objects in the first
|
|
place, why should you have to see or know about XML elements and
|
|
attributes
|
|
at all? Or to put it a different way, why should people constantly have
|
|
to redo the work of extracting objects from XML, when they're all trying
|
|
to do the same thing? I think that reasonable people can argue that RDF
|
|
is not the best solution to the problem of object exchange in XML, but
|
|
I am somewhat surprised to hear people deny that the problem even exists:
|
|
there is an enormous demand for exchanging objects in XML (businesses
|
|
exchange
|
|
a lot of structured data), and it's hard work to have to figure out over
|
|
and over how to construct objects from a SAX stream or a DOM tree
|
|
especially
|
|
when programmers with XML knowledge are scarce and expensive. I have no
|
|
doubt that we need an abstract object layer on top of XML. Right now, RDF
|
|
is the best solution currently available (XMI also has its advocates),
|
|
but I'm ready to listen about anything better.
|
|
<address>
|
|
<a
|
|
href="http://www.lists.ic.ac.uk/hypermail/xml-dev/xml-dev-Dec-1999/0130.html">xml-dev-Dec-1999:
|
|
Re: Object-oriented serialization (Was Re: So</a> Fri, 03 Dec 1999
|
|
14:25:07
|
|
GMT</address>
|
|
</blockquote>
|
|
|
|
|
|
<blockquote>As a recap: There are, broadly, two approaches to serializing
|
|
a graph in XML. One is to invent a meta-grammar, a set of canonicalization
|
|
rules. That is what RDF syntax did, and what the attribute-centric and
|
|
element-centric canonical format papers do, what SOAP section eight does.
|
|
I think of this as "tunnelling the graph through XML." The other is to
|
|
allow XML documents to follow any pattern described in a schema, and
|
|
augmenting
|
|
the schema with a set of mapping rules. There appears to be significant
|
|
value to each approach. (In particular, however, I disagree with the
|
|
sometimes-asserted
|
|
claim that graphs capture the semantics of a communication while grammars
|
|
do not. Graphs are just another grammar. This makes me reluctant to
|
|
deprecate
|
|
grammars.)
|
|
<address>
|
|
<a
|
|
href="http://www.lists.ic.ac.uk/hypermail/xml-dev/xml-dev-Dec-1999/0363.html">xml-dev-Dec-1999:
|
|
RE: Object-oriented serialization (Was Re: So</a> Fri, 10 Dec 1999
|
|
23:07:19
|
|
GMT</address>
|
|
</blockquote>
|
|
|
|
<blockquote>In this vein, schematron-rdf at
|
|
http://www.ascc.net/xml/resource/schematron/schematron.html
|
|
generates RDF documents (currently with bogus XLinks, but you can
|
|
customize
|
|
it easily) based on Schematron schemas. In this case, the schema is not
|
|
converted to RDF, rather the RDF shows which assertions in the schema
|
|
apply
|
|
to each element in the instance. This is a rather different use for
|
|
schemas:
|
|
as programs for automated annotation. The thing that became immediately
|
|
clear from working on it was that RDF is good for arcs (relationships)
|
|
but grammar-based schemas largely hide these relationships (between
|
|
elements,
|
|
attributes, data) behind a few generic but superficial types: containment,
|
|
sequence, repetition. Schematron assertions now allow a "role" attribute,
|
|
for labelling classes of arcs. I think developers of other schema
|
|
languages
|
|
might also consider this kind of thing too: that the connectors between
|
|
particles of patterns (e.g., compositors in the content models in a
|
|
grammar-based
|
|
schema language) should have some role attribute (and documentation?) for
|
|
labelling their significance. For example, if element A must be follwed
|
|
by element B, to say why. The nodes that conventional schemas define (e.g.
|
|
elements and attributes) are interesting, but the arcs between them can
|
|
also be very interesting for automatic annotation using RDF.
|
|
<address>
|
|
<a
|
|
href="http://www.lists.ic.ac.uk/hypermail/xml-dev/xml-dev-Dec-1999/0296.html">xml-dev-Dec-1999:
|
|
Re: Object-oriented serialization (Was Re: So</a> Sun, 05 Dec 1999
|
|
17:58:02
|
|
GMT</address>
|
|
</blockquote>
|
|
|
|
|
|
<p>
|
|
Presentations by Michael Rys WWW8 (@@URL?)
|
|
</p>
|
|
|
|
<p>Topic-maps syntax effort -- @@TODO: egroups URL, charter, example RDF
|
|
mappingetc., emiller's msg...</p>
|
|
|
|
<p> Henrik Neilsen, WWW9 presentation on on
|
|
RDF/SOAP. SOAP as an RDF serialization syntax:</p>
|
|
|
|
<blockquote>At the WWW9 Conference, I was exited to give a presentation
|
|
on dev day as part of the <a
|
|
href="http://www9.org/w9-devsemantic.html">Semantic
|
|
Web track</a> on SOAP serialization.
|
|
Dan has been so kind to <a
|
|
href="http://www.ilrt.bristol.ac.uk/discovery/2000/08/www9-slides/henrik/">make
|
|
the slides available</a>. <br /> <br />
|
|
The purpose
|
|
of the presentation was to explain the model behind the <a
|
|
href="http://www.w3.org/TR/SOAP/">SOAP</a> serialization
|
|
as well as how it might be used to serialize RDF graphs. Similarly,
|
|
SOAP may be used to serialize object graphs etc. For more information on
|
|
the SOAP specification, see the W3C Note which was submitted May 8
|
|
by 11 W3C Member organizations.
|
|
<br /> <br />
|
|
|
|
There are also a set of <a
|
|
href="http://www.ilrt.bristol.ac.uk/discovery/2000/08/www9-slides/henrik/soaprdf.html">more
|
|
specific examples</a>.
|
|
<br /> <br />
|
|
As is stated in the slides, take this as input rather than
|
|
anything else.<br /><br />
|
|
Henrik Frystyk Nielsen mailto:frystyk@microsoft.com
|
|
<address>
|
|
<a
|
|
href="http://lists.w3.org/Archives/Public/www-rdf-interest/2000Aug/0082.html">www-rdf-interest@w3.org
|
|
from August 2000: Slides from WWW9 pres</a> Tue, 22 Aug 2000 07:32:46
|
|
GMT</address>
|
|
</blockquote>
|
|
|
|
|
|
|
|
<p>Papers from Lore(l) group at stanford. Also Pensylvania work and
|
|
some of the XML query proposals. Point to discussion point in XMLQ
|
|
data model work.</p>
|
|
|
|
<p>Other XML specs: XML Schema 'edge-labelled graph' mention. XML
|
|
Infoset RDF appendix (current status?). XML-Linking RDF model (Ron
|
|
Daniel's Note draft). Context: XArc proposal, (X)HTML typed links.
|
|
Web architecture stuff.</p>
|
|
|
|
<p>RDF Syntax proposals: Sergey's strawman (and Java parser).
|
|
TimBL's strawman. EricP's syntax (and Perl parser).</p>
|
|
|
|
<p>RDF dump syntax proposal(s) on www-rdf-interest. Issues (raise
|
|
one in <a href="http://www.w3.org/2000/03/rdf-tracking/">rdf issue
|
|
list</a> on the dependencies between model + syntax.</p>
|
|
|
|
|
|
<p>Dan Connolly notes on Jigsaw's Java serialization system:
|
|
</p>
|
|
<blockquote>ntuition: RDF, SOAP, WebDAV, and Java Beans share a data model,
|
|
and should be able to share many implementation details
|
|
<address>
|
|
<a href="http://www.w3.org/2000/08/jr456">A review of Jigsaw</a> Tue, 29
|
|
Aug 2000 07:44:36 GMT</address>
|
|
</blockquote>
|
|
|
|
<p>XSLT-based screenscraping approach. Cambridge communique, online
|
|
demos, DanC stuff.</p>
|
|
|
|
<p>Annotated DTDs / schemata. Do we have any implementation
|
|
experience of this? Henry Thompson had a good presentation on this
|
|
topic (@@url??). Point into extensibility mechanism in XML Schema.
|
|
Also issue (who owns this problem?) that XML Schema constructs need
|
|
URIs.</p>
|
|
<h3>Recent Changes (CVS Log)</h3>
|
|
|
|
<pre>
|
|
$Log: Overview.html,v $
|
|
Revision 1.5 2000/09/06 19:38:22 danbri
|
|
minor tidyup, added H3s, XHTML valid.
|
|
linked from /RDF/Interest/
|
|
|
|
Revision 1.4 2000/09/06 14:14:15 danbri
|
|
added danc notes on jigsaw / rdf serialisation
|
|
|
|
Revision 1.3 2000/09/06 11:18:19 danbri
|
|
Added a bunch of excerpts from XML-DEV thread and related discussion, papers etc.
|
|
|
|
Revision 1.2 2000/09/05 18:53:45 danbri
|
|
added few links
|
|
|
|
</pre>
|
|
|
|
|
|
<address>maintained: <a href="mailto:danbri@w3.org">dan
|
|
brickley</a></address>
|
|
</body>
|
|
</html>
|
|
|