W3C home > Mailing lists > Public > public-esw-thes@w3.org > July 2008

RE: multilingual labels in SKOS

From: Alistair Miles <alistair.miles@zoo.ox.ac.uk>
Date: Fri, 25 Jul 2008 10:25:37 +0100
To: "'Johan De Smedt'" <johan.de-smedt@tenforce.com>, <public-esw-thes@w3.org>
Message-ID: <003601c8ee38$6634ba50$329e2ef0$@miles@zoo.ox.ac.uk>

Hi Johan,

The SKOS data model has the constraint that a resource has no more than one
preferred label per language. 

As you point out, there is no way to express this constraint using RDFS or

However, there are other ways to check an RDF graph for data which is not
consistent with this constraint.

For example, the SPARQL query below should find data not consistent with the

PREFIX skos: http://www.w3.org/2008/05/skos#
SELECT ?resource ?label1 ?label2
  ?resource skos:prefLabel ?label1 , ?label2
  FILTER ( ?label1 != ?label2 && lang(?label1) = lang(?label2) )

There are a number of other SPARQL-based tests for SKOS linked from
ml> ... this is a bit out of date with the latest specs, but should give you
some clues at least.

More generally, in our recent work on genomic data we have found SPARQL a
very useful & practical tool for "testing" data.  For example, the page at
<http://rodos.zoo.ox.ac.uk/flyweb/endpoints/test-flyted> runs a test case
consisting of a set of SPARQL queries, to verify that a particular data set
matches our requirements. The source code for the test case is at
<http://rodos.zoo.ox.ac.uk/flyweb/endpoints/test-flyted.js> and
<http://rodos.zoo.ox.ac.uk/flyweb/endpoints/common.js>. We did this in
javascript, but you could just as easily do it in another language like java
or python using a unit testing framework like junit or pyunit.

Hope that helps, apologies for very late reply.


Alistair Miles
Senior Computing Officer
Image Bioinformatics Research Group
Department of Zoology
The Tinbergen Building
University of Oxford
South Parks Road
United Kingdom
Web: http://purl.org/net/aliman
Email: alistair.miles@zoo.ox.ac.uk
Tel: +44 (0)1865 281993

> -----Original Message-----
> From: Johan De Smedt [mailto:johan.de-smedt@tenforce.com]
> Sent: 31 May 2008 22:55
> To: public-esw-thes@w3.org
> Cc: 'Alistair Miles'
> Subject: multilingual labels in SKOS
> Dear,
> Neither of RDF-Schema or OWL seem to handle functional properties for
> multilingual values very well.
> Typically these could be used for skos:prefLabel.
> (A prefLabel is desired to have cardinality 1,
>  but extensions to SKOS to realize this do not work out in a
> multilingual
> KOS)
> - Is this use case handled by SKOS ?
> - is there an advised solution pattern ?
>   e.g. making language specific sub-properties of skos:prefLabel that
> do
> have cardinality 1
>        (I do not like this because nothing prevents me making an
> xx:prefLabel-en getting the value "dit is niet in de juiste
> taal"@nl^^xsd:string)
> - do we need to turn to inference rules to solve this ?
> thanks for advice on handling this use-case.
> Kind Regards,
>    Johan De Smedt
> =================
> johan.de-smedt@tenforce.com
> mobile: +32 477 475 934
> =================
Received on Friday, 25 July 2008 09:26:14 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:45:49 UTC