- From: Bernard Vatant <bernard.vatant@mondeca.com>
- Date: Tue, 30 May 2006 09:45:59 +0200
- To: Mark van Assem <mark@few.vu.nl>
- CC: Paul Hermans <paul.hermans@amplexor.com>, public-esw-thes@w3.org
Mark
Thanks for the links ... "déjà vu", indeed! Honest, I had missed the
threads, and I did not copy Dan's post [1], although it really looks
like it.
So let me sum up the pragmatic position we can take so far.
* Keep collections distinct from concepts in *declarations*, e.g.
even when allocating a URI to a collection (which I agree with you
is not really a good idea), don't use this same URI for a concept.
* Even if a reasoner could infer that some skos:Collection is a
skos:Concept, applications should not me aware of such a
conclusion :-) , so keep them distinct in processing, display,
forbid indexing on collections etc.
Side question maybe Leonard will have clues : should collections / label
nodes be used in full text search, IOW if I pass the SKOS structure to a
full text engine, should I include the label nodes? In the example given
by Paul, seems it would not make much sense, but I know he has other
examples in the back of his mind, namely AAT he mentioned before. We
have there nested collections such as :
> French Medieval styles
>> French Medieval architecture styles
Angevin Gothic
Rayonnant
Flamboyant
Seems to me those are borderline cases ...
[1] http://lists.w3.org/Archives/Public/public-esw-thes/2005Oct/0059.html
*
Bernard Vatant*
Knowledge Engineering
*Mondeca **
*3, cité Nollez 75018 Paris France
Tel. +33 (0) 871 488 459
Mail: bernard.vatant@mondeca.com <mailto:bernard.vatant@mondeca.com>
Web: www.mondeca.com <http://www.mondeca.com>
Blog : universimmedia.blogspot.com <http://universimmedia.blogspot.com>
Mark van Assem a écrit :
> Hi Bernard,
>
> Hmmmm I had a strong sense of deja vu on this one... and indeed, this
> problem was flagged before, see [1]. Alistair wrote up solutions in
> [2] but we seem not to have come to a conclusion.
>
> So yes, the current spec results in wrong triples, but there is no
> solution as yet.
>
> The practical way for people to go forward now is either (a) use one
> of the solutions in [2] as if it already existed, or (b) ignore the
> problem and just use narrower on skos:Collections.
>
> I personally would choose solution b _and_ not give those collections
> a URI. The most important thing is to prevent them being used in
> annotations. As they are collections anyway that fact can be used in
> displays independent if it was inferred to be a concept also. Of
> course more care is required in code that processes any skos:Concept;
> it should ignore the skos:Collections.
>
> Later then the correct solution from [2] can be implemented by
> changing the existing RDF.
>
> Cheers,
> Mark.
>
>
> [1]http://www.w3.org/2004/02/skos/core/proposals#collections-5
> [2]http://isegserv.itd.rl.ac.uk/cvs-public/~checkout~/skos/drafts/collections-5.html?rev=1.2
>
>
> Bernard Vatant wrote:
>>
>> Mark
>>
>> This exchange drives me a little confused about the status of
>> skos:Collection vs skos:Concept
>>
>> What you write, and with which I basically tend to agree, seems to
>> assume that a skos:Collection is not a skos:Concept. Although this is
>> nowhere written explicitly in SKOS specification (correct me if I am
>> wrong), it seems indeed correct to assume that those two classes
>> should be in practice disjoint.
>>
>> But if you allow, like in the example quoted by Paul, a collection,
>> even as a blank node, to be the value of a narrower property, like in
>> example quoted by Paul
>>
>> (1) ex:milk skos:narrower _:b0
>> (2) _:b0 rdf:type
>> skos:Collection
>>
>> ... put that along with the declaration of skos:narrower range in the
>> specification
>>
>> (3) skos:narrower
>> rdfs:subPropertyOf skos:semanticRelation
>> (4) skos:semanticRelation
>> rdfs:range skos:Concept
>>
>> It's quite easy to entail
>>
>> (5) _:b0 rdf:type
>> skos:Concept And this is independent of the fact that the
>> collection has a URI or not. Replacing _:b0 above by
>> ex:milkbyanimal does not change anything to this entailment.
>> A side effect in that case is that if the distinction between
>> skos:Collection and skos:Concept is blurred, so is the distinction
>> between skos:member and skos:narrower.
>>
>> My hunch is that there is something wrong with the above reasoning,
>> since I'm not happy with the conclusion.
>>
>> Thoughts?
>>
>> Bottom line : maybecurrent specification is a bit unclear about
>> collections, the core issue being not to know if they should be blank
>> nodes or not, but to make clear if and why skos:Collection and
>> skos:Concept are disjoint classes, if they indeed should be (of which
>> I remain to be fully convinced), and what the notion of "collectable
>> property" actually means.
>>
>> Bernard
>>
>>
>> *Bernard Vatant*
>>
>> Knowledge Engineering
>>
>> *Mondeca **
>> *3, cité Nollez 75018 Paris France
>>
>> Tel. +33 (0) 871 488 459
>> Mail: bernard.vatant@mondeca.com <mailto:bernard.vatant@mondeca.com>
>>
>> Web: www.mondeca.com <http://www.mondeca.com>
>>
>> Blog : universimmedia.blogspot.com <http://universimmedia.blogspot.com>
>>
>>
>>
>> Mark van Assem wrote
>>>
>>> Hi Paul,
>>>
>>> The SKOS Core Guide [1] says:
>>>
>>> "Note that in the example above the collection was defined as a
>>> blank node, i.e. no URI was allocated. URIs may be allocated to
>>> collections, but usually this is not necessary."
>>>
>>> So the first answer to your question is 'yes, it is possible and it
>>> is allowed'.
>>>
>>> However, I think the wording above should be stronger, stating that
>>> it is recommended NOT to give a URI for a collection. Collections
>>> are used to represent node labels, and node labels should not be
>>> used for indexing. Therefore annotators should not be tempted to use
>>> them anyway, simply because a URI is available for them.
>>>
>>> Again quoting [1]:
>>>
>>> 'There is consensus that a 'node label' does not represent a label
>>> for a concept in its own right, and therefore correctly modelling
>>> this kind of structure in RDF requires careful consideration.'
>>>
>>> Cheers,
>>> Mark.
>>>
>>> [1]http://www.w3.org/TR/swbp-skos-core-guide/#seccollections
>>>
>>> <http://universimmedia.blogspot.com>
>>
>>
>>> Paul Hermans wrote:
>>>> In the SKOS core guide I do find following example :
>>>>
>>>> <rdf:RDF
>>>> xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>>>> xmlns:skos="http://www.w3.org/2004/02/skos/core#"
>>>> xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
>>>> <skos:Concept rdf:about="http://www.example.com/concepts#milk">
>>>> <skos:prefLabel>milk</skos:prefLabel>
>>>> <skos:narrower>
>>>> <skos:Collection>
>>>> <rdfs:label>milk by source animal</rdfs:label>
>>>> <skos:member
>>>> rdf:resource="http://www.example.com/concepts#buffalomilk"/>
>>>> <skos:member
>>>> rdf:resource="http://www.example.com/concepts#cowmilk"/>
>>>> <skos:member
>>>> rdf:resource="http://www.example.com/concepts#goatmilk"/>
>>>> <skos:member
>>>> rdf:resource="http://www.example.com/concepts#sheepmilk"/>
>>>> </skos:Collection>
>>>> </skos:narrower>
>>>> </skos:Concept>
>>>> </rdf:RDF>
>>>>
>>>> Where in this case Collection is within the narrower element as a
>>>> blank node.
>>>>
>>>> I suppose I can do the same using a node with a URI as follows.
>>>>
>>>> <rdf:RDF
>>>> xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>>>> xmlns:skos="http://www.w3.org/2004/02/skos/core#"
>>>> xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
>>>> <skos:Concept rdf:about="http://www.example.com/concepts#milk">
>>>> <skos:prefLabel>milk</skos:prefLabel>
>>>> <skos:narrower
>>>> rdf:resource="http://www.example.com/collections#milkbyanimal"/>
>>>> </skos:Concept>
>>>> <skos:Collection
>>>> rdf:about="http://www.example.com/collections#milkbyanimal">
>>>> <rdfs:label>milk by source animal</rdfs:label>
>>>> <skos:member
>>>> rdf:resource="http://www.example.com/concepts#buffalomilk"/>
>>>> <skos:member
>>>> rdf:resource="http://www.example.com/concepts#cowmilk"/>
>>>> <skos:member
>>>> rdf:resource="http://www.example.com/concepts#goatmilk"/>
>>>> <skos:member
>>>> rdf:resource="http://www.example.com/concepts#sheepmilk"/>
>>>> </skos:Collection>
>>>>
>>>> </rdf:RDF>
>>>>
>>>>
>>>> I just want to check since someone told me this can and may not be
>>>> done according to the SKOS spec.
>>>>
>>>> Regards,
>>>>
>>>>
>>>> Paul
>>>>
>>>
>>
>>
>
Received on Tuesday, 30 May 2006 07:46:23 UTC