W3C home > Mailing lists > Public > public-esw-thes@w3.org > September 2011

SKOS pattern for 'extending' a vocabulary

From: <Simon.Cox@csiro.au>
Date: Thu, 1 Sep 2011 15:39:01 +0800
To: <public-esw-thes@w3.org>
Message-ID: <5D27281509882544A841804E4EBA914C310614B148@EXWA-MBX01.nexus.csiro.au>
I’m building RDF/SKOS representations of some well-known ‘codelists’ used in metadata records conforming to the ISO 19115 standard, and profiles derived from that.

Here’s the XML source for the ISO lists: http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
and here’s my SKOS version: https://www.seegrid.csiro.au/subversion/xmml/ontologies/TBCME/BOM%20Vocabularies/19115-codelists/19115-codelists.ttl
I’ve made each separate list a skos:ConceptScheme.
For example


<http://www.isotc211.org/def/19115/2003/CI_DateTypeCode>

      rdf:type skos:ConceptScheme ;

      rdfs:comment "transformed from the original XML by Simon J D Cox, CSIRO" , "A member of the set of Codelists for description of metadata datasets compliant with ISO/TC 211 19115:2003 and 19139" ;

      rdfs:seeAlso <http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml> ;

      dc:contributor "Simon J D Cox" ;

      dc:creator "ISO/TC 211" ;

      dc:description "identification of when a given event occurred" ;

      dc:source <urn:iso:std:iso:19115> ;

      dct:created "2005-03-18" ;

      dct:modified "2011-08-24" ;

      skos:definition "identification of when a given event occurred" ;

      skos:prefLabel "CI_DateTypeCode" .



<http://www.isotc211.org/def/19115/2003/CI_DateTypeCode#creation>

      rdf:type skos:Concept ;

      dc:description "date identifies when the resource was brought into existence" ;

      skos:definition "date identifies when the resource was brought into existence" ;

      skos:inScheme meta:CI_DateTypeCode ;

      skos:prefLabel "creation" .

etc.

The WMO (World Meteorological Organization) re-uses these lists, but in some cases adds some additional entries.
I’ve modelled the extended lists as new ConceptSchemes: see https://www.seegrid.csiro.au/subversion/xmml/ontologies/TBCME/BOM%20Vocabularies/WMO-codelists/WMO-codes.ttl
How to import the entries from the ISO lists into the WMO lists?
So far I’ve simply asserted that the new list skos:hasTopConcept  every Concept from the original list.
From this it can be inferred that the imported Concept is also skos:inScheme the extended scheme.
For example

<http://wmo.int/wis/2010/metadata/def/CI_DateTypeCode>
      rdf:type skos:ConceptScheme ;
      rdfs:comment "Extension of ISO codelist"@en ;
      rdfs:label "CI_DateTypeCode"@en ;
      rdfs:seeAlso <http://www.isotc211.org/def/19115/2003/CI_DateTypeCode> ;
      dc:title "CI_DateTypeCode"@en ;
      skos:hasTopConcept <http://www.isotc211.org/def/19115/2003/CI_DateTypeCode#revision> , <http://www.isotc211.org/def/19115/2003/CI_DateTypeCode#creation> , <http://wmo.int/wis/2010/metadata/def/CI_DateTypeCode#reference> , <http://www.isotc211.org/def/19115/2003/CI_DateTypeCode#publication> ;
      skos:prefLabel "CI_DateTypeCode"@en .

and then adds one new element


<http://wmo.int/wis/2010/metadata/def/CI_DateTypeCode#reference>

      rdf:type skos:Concept ;

      rdfs:label "reference"@en ;

      skos:definition "date identifies when the resource was referenced or accessed"@en ;

      skos:inScheme wmo:CI_DateTypeCode ;

      skos:notation "004"^^xsd:string ;

      skos:prefLabel "reference"@en .

This works, but doesn’t feel quite right because it is tedious and probably not scalable to add the original member concepts one by one.
Furthermore, the only hint that the imported concepts all belong to a single external scheme is in the URI.
Is there a better pattern?

Simon Cox
Received on Thursday, 1 September 2011 07:41:07 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:46:12 UTC