- From: Alistair Miles <a.j.miles@rl.ac.uk>
- Date: Wed, 08 Feb 2006 16:15:15 +0000
- To: Semantic Web Best Practices <public-swbp-wg@w3.org>
Hi all,
Just a clarification note on the configurations given in the cookbook
[1] ...
From the web architecture volume 1 [2]:
"... representation providers must not use content negotiation to serve
representation formats that have inconsistent fragment identifier semantics"
Note that recipes 3, 4, 5 (and 6, although this is still TODO), do not
actually configure the server to provide multiple representations from
the same URI. They employ conditional redirects, to redirect the client
from the URI of an ontology, class or property to *another location*
where the client can obtain a representation in the desired format. Each
of the resources involved only ever makes available a single representation.
Therefore, it is impossible to arrive at a 'server management error' of
the type described by the quote from [2] given above.
I.e. if you use any of the recipes given at [1] you are playing it safe.
See also my message at [3].
Also note that, if you use recipe 3, 4, 5 or 6, you obtain distinct URIs
for resources playing different roles wrt the vocabulary. I.e. you end
up with distinct URIs for the vocabulary, the HTML documentation of the
vocabulary, and the RDF description of the vocabulary. This is not
inconsistent with RDDL [4], which aims to represent the relationships
between a 'namespace' and other related resources.
The two alternatives to using conditional redirects are the 'MultiViews'
option, and a 'type map' ('.var') file. Note that using MultiViews
requires that all variant files must have the same name and reside in
the same directory on the server. Note that using a type map requires
that all variant files must reside on the same server. The use of
conditional redirects is most easily adapted to the situation where RDF
and HTML content are published in different locations (as is the case
for both SKOS and DC). Note also that, when using either MultiViews or a
type map, multiple representations will be served from the same URI,
allowing for the possibility of a 'server management error' as described
above.
The downside to using conditional redirects is that it is not possible
to configure the server to account for the quality preferences specified
by the client: conditional rewrite rules match in the order in which
they are specified. Therefore, a hypothetical client that can accept
both HTML and RDF content, but that specifies a quality preference for
RDF content, will receive HTML content if the conditional rule matching
HTML content comes before the rule matching RDF content in the server
configuration. This may become a problem in the future, but at a
previous vmtf telecon we agreed that it shouldn't prevent publication of
the current recipes as is. There may be a way to combine type maps with
rewrite rules to achieve all the desired features, but this is likely to
significantly complicate the configurations.
Cheers,
Al.
[1] http://www.w3.org/2001/sw/BestPractices/VM/http-examples/2006-01-18/
[2] http://www.w3.org/TR/webarch/#media-type-fragid
[3] http://lists.w3.org/Archives/Public/public-swbp-wg/2005Dec/0016.html
[4] http://rddl.org/
--
Alistair Miles
Research Associate
CCLRC - Rutherford Appleton Laboratory
Building R1 Room 1.60
Fermi Avenue
Chilton
Didcot
Oxfordshire OX11 0QX
United Kingdom
Email: a.j.miles@rl.ac.uk
Tel: +44 (0)1235 445440
Received on Wednesday, 8 February 2006 16:15:37 UTC