[
Lists Home |
Date Index |
Thread Index
]
Michael,
----- Original Message -----
From: "Michael Brennan" <Michael_Brennan@Allegis.com>
To: "'Eric van der Vlist'" <vdv@dyomedea.com>; <xml-dev@lists.xml.org>
Sent: Tuesday, April 02, 2002 2:20 PM
Subject: RE: [xml-dev] RDDL: proposal to document the target namespace of a
RDDL document.
> On the other hand, if greater flexibility is desired such that the
document
> can associate resources with a namespace URI without having to be at the
end
> of the namespace URI, then adapting RDDL to support an extended link
format
> seems a more appropriate approach, and one that affords greater
flexibility
> than using a simple link that is supposed to support the notion of a
"target
> namespace". This approach could permit you to associate resources with
URIs
> other than namespace URIs, such as public ids (as one example), as well.
This is exactly the approach XPackage takes (
http://www.xpackage.org/specification/ ), although using RDF. (We at the
Open eBook Forum actually wrote an entire XPackage specification using XLink
extended links, and then changed to RDF because the XLink extended link
version had become syntactically a jumble of single-hierarchical-level
associations within a single XLink extended link element.) A general
XPackage <xpackage:resource> can represent any resource, as this RDDL
example from the XPackage specification shows:
<xpackage:resource
rdf:about="urn:public-id:-//Elliotte%20Rusty%20Harold//DTD%20Recipe%200.91//
EN">
<rdfs:label>DTD for validation</rdfs:label>
<xpackage:location
xlink:href="http://www.ibiblio.org/xml/dtds/recipe.dtd"/>
<xpackage:contentType>application/xml-dtd</xpackage:contentType>
</xpackage:resource>
Quite simply, the above resource, identified by a public ID, has a content
type of "application/xml-dtd" (as per RFC 3023) making it a DTD. It can be
found at http://www.ibiblio.org/xml/dtds/recipe.dtd .
The namespace itself is identified by a special <rddl:namespace> element,
and indicates its creator, its copyright, the DTD used to validate XML
within that namespace (the one defined above by the public ID), as well as a
stylesheet used with the namespace:
<rddl:namespace rdf:about="http://www.ibiblio.org/xml/ns/recipe">
<dc:title>Resource Document for Recipes using XPackage</dc:title>
<dc:creator>Elliotte Rusty Harold</dc:creator>
<dc:rights>Copyright 2001 Elliotte Rusty Harold</dc:rights>
<dc:creator>Garret Wilson</dc:creator>
<dc:rights>Copyright 2002 GlobalMentor, Inc.</dc:rights>
<dc:date>2002-03-06</dc:date>
<rddl:dtd
rdf:resource="urn:public-id:-//Elliotte%20Rusty%20Harold//DTD%20Recipe%200.9
1//EN"/>
<xpackage:style
rdf:resource="http://www.ibiblio.org/xml/styles/recipe.css"/>
</rddl:namespace>
That stylesheet is similarly described:
<xpackage:resource rdf:about="http://www.ibiblio.org/xml/styles/recipe.css">
<rdfs:label>CSS Style Sheet for Recipes</rdfs:label>
<xpackage:location
xlink:href="http://www.ibiblio.org/xml/styles/recipe.css"/>
<xpackage:contentType>text/css</xpackage:contentType>
</xpackage:resource>
That's all standard RDF, and if you throw the full example into the W3C RDF
validator at http://www.w3.org/RDF/Validator/ you get a nice graph of how
all these resources relate (and the W3C RDF validator doesn't know anything
about XPackage). XPackage restricts the syntax of RDF so that an XPackage
processor doesn't *have* to be a full RDF processor (although it can be if
it wants).
Garret Wilson
GlobalMentor, Inc.
|