next
Norman Gray
norman at astro.gla.ac.uk
Mon Jan 28 11:26:07 PST 2008
Bernard, hello.
On 2008 Jan 28, at 17:43, Bernard Vatant wrote:
>>> - suggest keeping version info in the name of the vocabulary
>>> (rather than in the pathname, which might change without the
>>> vocabulary actually changing) - eg. "http://myvocab.org/myvocab-v1.1#mytoken
>>> " rather than "http://myvocab.org/v1.1/myvocab/#mytoken".
>>
> I wonder if it's a good idea to have version number at all in the
> token URI (identifying a concept, right?). Generally, the vocabulary
> itself has a version numner, but the concepts are better off defined
> by a stable URI, e.g., http://myvocab.org/myvocab#mytoken. Since the
> definition can change and the authoritative one is in the current
> version, you can use something like :
>
> http://myvocab.org/myvocab#mytoken rdfs:isDefinedBy http://myvocab.org/myvocab/
> where the later URI serves the most recent version of the vocabulary.
>
> See a good exemple of this good practice in the publication of
> Dublin Core elements in RDF. The vocabulary is permanently at http://purl.org/dc/terms/
> which currently serves the latest version of the vocabulary http://dublincore.org/2008/01/14/dcterms.rdf
> in which elements have version-independent URIs, such as http://purl.org/dc/terms/creator
I had seen, but never fully apprehended this feature of the DC
namespace.
Is this necessarily a good thing? There seems to be a potential
problem here, since if I describe something as http://blah#X in 2008/
v1.0, and later describe something as http://blah#X in 2018/v2.0, I'm
relying on the concept meaning the same thing at both times.
Wouldn't it be better for me to say that the thing is a http://blah/2008#X
once and for all? At least then I'm committing myself to what this
concept means in 2008, and not whatever shades of meaning it might
acquire in the future.
I might subsequently declare that http://blah/2008#X and http://blah/2018#X
are the same thing; but I may not, because our understanding of what
Xs are might have changed. Also, what happens if a maintainance
process decides that the term http://blah#X wasn't a useful one, and
deletes it: in that case when I try to find out more about some
resource labelled as being about http://blah#X, the redirection to the
fully-versioned namespace fails. What was a valid term has suddenly
ceased to be so.
If I recall correctly, the DC set handles this by having various
deprecated terms. Does that really work? Is it perhaps the case that
DC works in this case because it's almost entirely structureless?
Perhaps I'm being over-fussy here, and this level of precision is
appropriate only to a fully formal ontology.
As Rick says:
> If your app downloads a vocabulary one day and finds that it's
> useless the next, what do you or the app do? Simply give up and try
> again? Many of our vocabularies are liable to be fairly volatile.
[I think I would qualify the last remark by saying that the
vocabularies will be volatile in the short term, as they standardise
and as the community gains experience, and volatile in the long term,
as the underlying domain knowledge changes; but at least they'll be
stable in the medium term]
But yes, +1.
> See what I've done at http://lingvoj.org
This is very nice, in multiple ways.
> There is a heap of RDF good parsers, but they are not equal vs the
> XML world. If you want to interface RDF storage/processing with a
> "normal" (non-RDF) XML environment, this is to be looked at closely.
Yes: I would think that generating `normal' XML vocabularies would not
be a massive intellectual challenge, but it would require some thought
and some standardisation effort, and be a logically separate step, and
a distinct vocabularly deliverable.
> Just a reminder that SKOS mapping had never been so far a
> "standard", but a side-order of first versions of SKOS vocabulary as
> a product of SWAD-Europe project, when it was not even on the W3C
> track. In a nutshell, was has been decided is that the few elements
> of SKOS mapping were not worth a separate namespace and
> specification, but were to be revisited and included in the "core"
> specification. And effectively with less expressivity (or more
> simplicity).
Thanks for this clarification -- much more concise than my version.
So does this imply that the union/intersection/complement support has
been deferred or dropped?
Best wishes,
Norman
--
Norman Gray : http://nxg.me.uk
eurovotech.org : University of Leicester
More information about the semantics
mailing list