W3C home > Mailing lists > Public > public-esw-thes@w3.org > May 2006

Re: question concerning collections

From: Bernard Vatant <bernard.vatant@mondeca.com>
Date: Mon, 29 May 2006 15:54:50 +0200
Message-ID: <447AFD2A.6060603@mondeca.com>
To: Mark van Assem <mark@few.vu.nl>
CC: Paul Hermans <paul.hermans@amplexor.com>, public-esw-thes@w3.org

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 Monday, 29 May 2006 13:55:19 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:38:54 GMT