Dansk oversættelse af SKOS Simple Knowledge Organization System Primer (18 August 2009).

Der tages forbehold for eventuelle fejl i oversættelsen. Kun den originale version på engelsk er normativ: http://www.w3.org/TR/2009/NOTE-skos-primer-20090818/
URI:
https://data.gov.dk/document/w3c/skos-primer-danish/
Oversættelsesansvarlig organisation:
Digitaliseringsstyrelsen
Oversættelsesdato:
december 2017
Seneste ændringsdato for oversættelsen:
september 2021
W3C

Introduktion til SKOS - Simple Knowledge Organization System

W3C-arbejdsgruppenotat 18. august 2009

Denne version:
http://www.w3.org/TR/2009/NOTE-skos-primer-20090818/
Seneste version:
http://www.w3.org/TR/skos-primer
Tidligere version:
http://www.w3.org/TR/2009/WD-skos-primer-20090615/
Redaktører:
Antoine Isaac, Vrije Universiteit Amsterdam
Ed Summers, Library Of Congress

Tjek trykfejlslisten for dette dokument, der måske indeholder rettelser.

Se også oversættelser.


abstract

SKOS – Simple Knowledge Organization System – er en model, der kan udtrykke den grundlæggende struktur af og indholdet i begrebssystemer, f.eks.tesaurusser, klassifikationssystemer, overskriftslister, taksonomier, folksonomier og andre lignende typer af kontrollerede vokabularier. SKOS tillader, ved at være en anvendelse af Resource Description Framework (RDF), at begreber bliver udarbejdet og publiceret online, kædet sammen med data på internettet og integreret i andre begrebssystemer.

Følgende dokument er en vejledning til dem, der ønsker at fremstille deres begrebssystemer ved hjælp af SKOS.

Grundlæggende identificeres begrebsbaserede ressourcer (begreber) i SKOS af URI’er kategoriseret af strenge på et eller flere naturlige sprog. De er dokumenteret af forskellige typer notater, semantisk forbundet med hinanden i uformelle hierarkier og associationsnetværk samt sammensat i begrebssystemer.

Ved mere avanceret brug af SKOS kan begrebsmæssige ressourcer mappes på tværs af begrebssystemer og grupperes i kategoriserede eller ordnede samlinger. Der kan angives sammenhænge mellem begrebsbetegnelserne. Endelig kan selve SKOS-vokabulariet udbygges, så det passer til særlige praksisfællesskaber eller kombineres med andre datamodelleringsvokabularier.

Dokumentet her er et tillæg til dokumentet Håndbog i SKOS (Simple Knowledge Organization System), der indeholder SKOS’ normative reference.


Aktuel dokumentstatus

Dette afsnit beskriver den aktuelle dokumentstatus på tidspunktet for publiceringen. Andre dokumenter vil muligvis gøre dette dokument overflødigt. En liste over aktuelle W3C-publikationer, samt den seneste revision af denne tekniske rapport, kan findes i W3C technical reports index på http://www.w3.org/TR/.

Dokumentet her er et arbejdsgruppenotat publiceret af Semantic Web Deployment Working Group, en del af W3C Semantic Web Activity. Denne version er en opdatering af det tidligere udkast fra arbejdsgruppen fra 15. juni 2009. Denne version indeholder adskillige mindre redaktionelle ændringer. Der er desuden blevet fjernet et eksempel, der foreslog, hvordan man kunne henvise til et notationssystem (f.eks. en symbolsk notation) i en betegnelse, hvor notationssystemet ikke korresponderer med et naturligt sprog. Det vurderedes, at forslaget ikke stemte overens med IETF-dokumentet Best Current Practice 47 om brug af mærker til at identificere sprog. Brugere bør overveje at læse tillægget SKOS Extension vocabulary som hjælp til supplerende notationssystemer.

Dokumentet her supplerer dokumentet Håndbog i SKOS (Simple Knowledge Organization System) fra 18. august 2009.

Bemærkninger til dette dokument kan sendes til public-swd-wg@w3.org. Skriv venligst ”SKOS comment” i emnelinjen. Alle beskeder til denne adresse kan ses i det offentlige arkiv.

Dokumentet her blev fremstillet af en gruppe, der arbejder under  5 February 2004 W3C Patent Policy. W3C fører en offentlig liste over enhver patentanmeldelse, der er foretaget i forbindelse med gruppens publikationer. Siden omfatter også vejledning i at anmelde et patent. Enkeltpersoner med konkret viden om et patent, som vedkommende mener indeholder væsentlige fordringer, skal fremlægge oplysningerne i henhold til afsnit 6 i W3C Patent Policy.

Publikation af et arbejdsgruppenotat betyder ikke, at det er godkendt af W3C-medlemskabet. Dette er et udkast og kan til hver en tid blive opdateret, erstattet eller gjort uaktuelt af andre dokumenter. Dette dokument bør ikke citeres som andet end et igangværende projekt.


Indholdsfortegnelse


1. Indledning

SKOS (Simple Knowledge Organization System) er et RDF-vokabularium, der kan bruges til at repræsentere semiformelle vidensorganiserende systemer (KOS’er), f.eks. tesaurusser, taksonomier, klassifikationssystemer og emneordslister. SKOS bygger på RDF (Resource Description Framework) [Introduktion til RDF], og derfor er disse repræsentationer maskinlæsbare og kan udveksles mellem softwareprogrammer og publiceres på internettet.

SKOS er udviklet som en omkostningseffektiv metode til at migrere eksisterende vidensorganiserende systemer til det semantiske web. SKOS indeholder også et enkelt og intuitivt begrebsbaseret modelleringssprog til at udvikle og dele nye KOS’er. Det kan bruges i sig selv eller i forbindelse med mere formelle sprog, f.eks. OWL’er (Web Ontology Language) [OWL]. SKOS kan også ses som en brobygningsteknologi, der udgør den manglende forbindelse mellem ontologisprogenes stive, logiske formalisme og den kaotiske, uformelle og svagt strukturerede verden, der udgøres af internetbaserede værktøjer, f.eks. programmer til social tagging.

Det er ikke hensigten, at SKOS skal erstatte originale begrebsbaserede vokabularier i deres oprindelige  anvendelsesramme, men tillade, at de kan migreres til et delt rum baseret på en forenklet model, så de i højere grad kan genbruges og opnå bedre interoperabilitet.

1.1 Om denne introduktion

Hensigten med dette dokument er at hjælpe brugere, der har en grundlæggende forståelse for RDF, med at repræsentere og publicere deres begrebssystemer som SKOS-data.  Introduktionen tilstræber at give eksempler og vejledning i brugen af SKOS-vokabulariet.

Læseren bør rådføre sig med det normative dokument Håndbog i SKOS [SKOS-REFERENCE], hvor der findes en systematisk beskrivelse af alle elementer i SKOS-vokabulariet, herunder deres referencesemantik. Dette kan ske på klasse- og egenskabsniveau ved at klikke på deres forekomst i teksten (f.eks. skos:Concept). En oversigt over eksempler på brug af SKOS og de påpegede krav, der styrer deres design, findes i dokumentet SKOS Use Cases and Requirements [SKOS-UCR].

Denne introduktion erstatter, sammen med Håndbog i SKOS [SKOS-REFERENCE], den tidligere SKOS Core Guide [SWBP-SKOS-CORE-GUIDE] og SKOS Core Vocabulary Specification [SWBP-SKOS-CORE-SPEC], som nu er forældede.

De grundlæggende funktioner i SKOS-modellen forklares i afsnit 2. Der præsenteres de elementsæt i vokabulariet, der oftest benyttes til at repræsentere KOS’er. I afsnit 3 vises det, hvordan man føjer værdi til disse repræsentationer ved enten at kæde dem sammen eller forbinde dem med andre typer ressourcer på det semantiske web. Det forventes, at mange SKOS-programmer vil benytte nogle af de funktioner, der præsenteres i afsnit 3. Afsnit 4 fokuserer på mere avancerede repræsentationsbehov, som sandsynligvis er påkrævet i et begrænset antal SKOS-programmer. Afsnit 5 diskuterer brugen af SKOS i forbindelse med andre modelleringsmetoder, især OWL.

Om eksempler i denne introduktion

Hovedparten af eksemplerne i denne vejledning gives som en serialisering af RDF-grafer ved hjælp af Turtle-syntaks til RDF [TURTLE]. Eksemplerne i Turtle vises som kodelinjer, f.eks.:

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix ex: <http://www.example.com/>.

ex:aResource ex:aProperty ex:anotherResource;
  ex:anotherProperty "An RDF Literal"@en.

Det ovenstående svarer til følgende udtryk RDF/XML’s referencesyntaks [RDF/XML-SYNTAX]:

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
         xmlns:ex="http://www.example.com/">
<rdf:Description rdf:about="http://www.example.com/aResource">
  <ex:aProperty rdf:resource="http://www.example.com/anotherResource"/>
  <ex:anotherProperty xml:lang="en">An RDF Literal</ex:anotherProperty>
</rdf:Description>
</rdf:RDF>

Af praktiske årsager er et antal deklarationer af navneområder udeladt af eksemplerne. Dette gælder standardnavneområder (SKOS, RDF/RDFS [INTRODUKTION TIL RDF], OWL [OWL] og Dublin Core [DC]), men også de, der er lavet til eksemplerne. Generelt kan disse navneområder erklæres som i følgende kode:

@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix ex: <http://www.example.com/> .
@prefix ex1: <http://www.example.com/1/> .
@prefix ex2: <http://www.example.com/2/> .


2. Grundlæggende SKOS

Dette afsnit introducerer kernen i SKOS-modellen, nemlig de nødvendige funktioner for at repræsentere de fleste KOS’er, som det kan ses i hovedparten af brugereksemplerne [SKOS-UCR].

I grundlæggende SKOS, kan begrebsbaserede ressourcer (begreber) identificeres med URI’er, navngives med leksikale strenge i ét eller flere naturlige sprog, dokumenteres af forskellige type noter, semantisk relateres til hinanden i uformelle hierarkier og associative netværk samt samles i begrebssystemer.


2.1 Begreber

Det fundamentale element i SKOS-vokabulariet er begrebet. Begreber er de tankeenheder [WillpowerGlossary] – idéer, meningsindhold eller (kategorier af) objekter og begivenheder – der ligger til grund for mange vidensorganiserende systemer [SKOS-UCR]. Således eksisterer begreber i hjernen som abstrakte enheder, der er uafhængige af de ord, som bruges til at navngive dem med.

SKOS introducerer klassen skos:Concept, som giver brugere mulighed for at erklære, at en given ressource er et begreb. Dette gøres i to trin:

  1. ved at oprette (eller genbruge) en URI (Uniform Resource Identifier [URI]), der entydigt identificerer begrebet.
  2. at erklære i RDF, ved hjælp af egenskaben rdf:type, at den ressource, som URI’en identificerer, er af typen skos:Concept.

F.eks.:

<http://www.example.com/animals> rdf:type skos:Concept.

Dette kan også repræsenteres mere kompakt i Turtle med navneområdepræfikset ex, som er defineret ovenover:

ex:animals rdf:type skos:Concept.

Ved at bruge SKOS til at publicere begrebssystemer er det nemt at henvise til begreberne i ressourcebeskrivelser på det semantiske web. Det anbefales at bruge HTTP URI’er til at fremstille begrebs-URI’er, eftersom de kan omdannes til repræsentationer, der kan åbnes med standardiserede internetteknologier. Yderligere oplysninger om URI’er på det semantiske web findes i dokumenterne Cool URIs for the Semantic Web [COOLURIS] og Best Practice Recipes for Publishing RDF Vocabularies [RECIPES].


2.2 Betegnelser

Den første karakterisering af begreber er de udtryk, der bruges til at henvise til dem på naturligt sprog: deres betegnelser. SKOS indeholder tre egenskaber, der kan bruges til at sætte betegnelser på begrebsbaserede ressourcer: skos:prefLabel, skos:altLabel og skos:hiddenLabel. Hver af disse egenskaber antyder en bestemt status af den betegnelse, den introducerer, der spænder fra en stærk og entydigt angivet relation til en streng, der kan hjælpe med søgning. Disse egenskaber er formelt defineret som værende parvist disjunkte. Det betyder, at det f.eks. er en fejl, hvis et begreb har samme literal både som den foretrukne betegnelse og som en alternativ betegnelse.

Som angivet i afsnit 5 i Håndbog i SKOS, udgør skos:prefLabel, skos:altLabel og skos:hiddenLabel simple betegnelser. De er alle underegenskaber af rdfs:label og bruges til at sammenkæde et skos:Concept med en almindelig RDF-literal, som er en tekststreng (f.eks. "love") i kombination med et valgfrit sprogmærke (f.eks. "en-US") [RDF-CONCEPTS].

2.2.1 Foretrukne leksikale betegnelser

Egenskaben skos:prefLabel gør det muligt at tildele en ressource en foretrukken betegnelse. Udtryk, der bruges som beskrivende ord i emneordssystemer [WillpowerGlossary], bliver f.eks. repræsenteret ved hjælp af denne egenskab, som i følgende eksempel:

ex:animals rdf:type skos:Concept;
  skos:prefLabel "animals".

Almindelige RDF-literaler defineres formelt som tekststrenge med valgfrie sprogmærker. På denne måde giver SKOS en simpel mulighed for at bruge betegnelser på flere sprog. Dette gøres ved at bruge en leksikal betegnelses sprogmærke til at begrænse dens funktionsområde til et bestemt sprog. Følgende eksempel viser, hvordan et begreb får tildelt en foretrukken betegnelse på engelsk og en anden på fransk:

ex:animals rdf:type skos:Concept;
  skos:prefLabel "animals"@en;
  skos:prefLabel "animaux"@fr.

Bemærk, at betegnelsen foretrukken betegnelse betyder, at en ressource kun kan have én af den slags betegnelser per sprogmærke, som det forklares i afsnit 5 i Håndbog i SKOS [SKOS-REFERENCE].

Det er almindelig praksis i design af KOS’er, at et begrebs foretrukne betegnelse også kan bruges til entydigt at repræsentere dette begreb i en KOS og i dens programmer. Så selv om SKOS-datamodellen ikke formelt                       påtvinger det, så anbefales det, at man ikke tildeler den samme foretrukne betegnelse til to begreber i den samme KOS for et givet sprogmærke.

2.2.2 Alternative leksikale betegnelser

Egenskaben skos:altLabel gør det muligt at tildele en alternativ leksikal betegnelse til et begreb. Dette er især nyttigt, når der tildeles betegnelser ud over den, der er foretrukket til begrebet, f.eks. når der er brug for at repræsentere synonymer:

ex:animals rdf:type skos:Concept;
  skos:prefLabel "animals"@en;
  skos:altLabel "creatures"@en;
  skos:prefLabel "animaux"@fr;
  skos:altLabel "créatures"@fr.

Bemærk at repræsentation af synonymer til foretrukne betegnelser ikke er den eneste mulige brug af skos:altLabelsNærsynonymer, forkortelser og akronymer kan repræsenteres på samme måde:

ex:fao rdf:type skos:Concept;
  skos:prefLabel "Food and Agriculture Organization"@en;
  skos:altLabel "FAO"@en.

Notat om opadgående opslag: Det er også muligt at bruge skos:altLabel til at repræsentere tilfælde af opadgående opslag [ISO-2788]. Det vil sige, når et begreb sammenstykker mere specialiserede begreber, der ikke er eksplicit introduceret som begreber i den KOS, der er under betragtning:

ex:rocks rdf:type skos:Concept;
  skos:prefLabel "rocks"@en;
  skos:altLabel "basalt"@en;
  skos:altLabel "granite"@en;
  skos:altLabel "slate"@en.

Men selv om det ikke er meningen, at SKOS skal erstatte eksisterende vejledninger i KOS-design [ISO-2788, BS8723-2], bør man være opmærksom på, at det ikke anbefales at bruge opadgående opslag. En mere passende KOS til dette domæne vil introducere en skos:Concept for hver af stenarterne (basalt, granit og skifer) og erklære den som et smallere begreb af ex:rock.

2.2.3 Skjulte leksikale betegnelser

En skjult leksikal betegnelse, repræsenteret ved hjælp af egenskaben skos:hiddenLabel, er en leksikal betegnelse for en ressource, hvor en KOS-designer ønsker, at tekststrengen er tilgængelig for programmer, der udfører tekstbaseret indeksering og søgninger, men ikke ønsker, at den derudover skal være synlig. Skjulte betegnelser kan f.eks. bruges til at inddrage varianter af andre leksikale betegnelser, der er stavet forkert. F.eks.:

ex:animals rdf:type skos:Concept;
  skos:prefLabel "animaux"@fr;
  skos:altLabel "bêtes"@fr;
  skos:hiddenLabel "betes"@fr.

2.3 Semantiske relationer

Semantiske relationer spiller en meget vigtig rolle ved definitionen af begreber i KOS’er. Meningen med et begreb bliver ikke kun defineret af betegnelsernes ord i naturligt sprog, men også af dets forbindelser til andre begreber i vokabulariet. SKOS spejler de grundlæggende relationskategorier, der bruges i vokabularier som tesaurusser [ISO2788], og har tre standardegenskaber:

2.3.1 Bredere/snævrere relationer

Man bruger egenskaben skos:broader til at erklære, at et begreb har en bredere betydning (dvs. er mere generel) end et andet. Egenskaben skos:narrower bruges til at erklære det modsatte, nemlig at et begreb har en snævrere betydning(dvs. mere specifik) end et andet. F.eks.:

ex:animals rdf:type skos:Concept;
  skos:prefLabel "animals"@en;
  skos:narrower ex:mammals.
ex:mammals rdf:type skos:Concept;
  skos:prefLabel "mammals"@en;
  skos:broader ex:animals.

Som det ofte er tilfældet i KOS, kan et SKOS-begreb tilknyttes flere bredere begreber på samme tid. Et begreb ex:dog kan f.eks. have både ex:mammals og ex:domesticatedAnimals som bredere begreber.

Notat om retningen i skos:broader: Af historiske årsager giver navnet på egenskaben skos:broader (ordet ”bredere” i oversættelse) ikke en eksplicit angivelse af dens retning. Det bør her opfattes som ”har bredere begreb”. I et udtryk med skos:broader er subjektet det mere specifikke begreb i erklæringen, og dets objekt er det mere almene.

Notat om implicitte udsagn af typen skos:broader/skos:narrower: Egenskaberne skos:broader og skos:narrower er hinandens modstykker. Ifølge SKOS-datamodellen[SKOS-REFERENCE] er Y et snævrere begreb af begreb X, når X er bredere end begreb Y. Dette kan hjælpe med at gøre SKOS-repræsentationer mere effektive ved at begrænse den information, de indeholder. I overstående eksempel kan man f.eks. udlade udsagnet ex:mammals skos:broader ex:animals, før man bruger begrebssystemets data. Et OWL-ræssoneringsprogram bruges til at udlede det fra udsagnet ex:animals skos:narrower ex:mammals.

I mange tilfælde kan hierarkiske relationer i et begrebssystem opfattes som transitive [OWL]. Hvis ex:dyr er bredere end ex:pattedyr, som selv er bredere end ex:katte, giver det mening at erklære, at ex:dyr er bredere end ex:katte. Men der findes dog især i KOS’er ”urene” hierarkier, der adskiller sig fra standardiserede, veldesignede tesaurusser, hvor sådan en funktion ikke vil vurderes at være passende. Det kan f.eks. være en situation, hvor ex2:køretøjer siges at være bredere end ex2:biler, som selv er erklæret bredere end ex2:hjul. Det kan være problematisk, hvis det automatisk udledes, at ”hjul” er et snævrere begreb i forhold til ”køretøjer”. SKOS forudser den slags problemer ved ikke at definere skos:broader og skos:narrower som generelt transitive egenskaber. Yderligere oplysninger om ”transitive hierarkier” kan findes i afsnit 4.5, der beskriver en måde at gøre dette, mens man fastholder kompatibiliteten med semantikken i skos:broader, som defineres i dette afsnit.

Notat om ikke-transitiv versus intransitiv: SKOS-modellen angiver ikke, at skos:broader og skos:narrower er transitive, men det betyder ikke, at disse egenskaber er intransitive. I begrebet katte, som er snævrere end begrebet pattedyr, der selv er snævrere end dyr, kan man udlede, at katte også er snævrere end dyr, og stadig forblive kompatibel med SKOS-modellen. Når skos:broader ikke angives som transitiv, betyder det, at der ikke kan udledes nye skos:broader-udsagn mellem katte og dyr ved hjælp af SKOS-aksiomer. Dette forhindrer ikke udgiveren af et SKOS-begrebssystem i at erklære hierarkiske udsagn, der afspejler en lokal transitiv adfærd.

På samme måde antager SKOS ikke, at hierarkiske relationer som standard er irrefleksive. I mange retningslinjer for tesaurusser er det forbudt at have et begreb, der er bredere end sig selv. Men i særlige tilfælde, hinsides klassiske tesaurusser, kan der optræde visse refleksive skos:broader-udsagn.  Ved f.eks. konverteringen af en eksisterende RDFS/OWL-ontologi til et SKOS-begrebssystem er det lovligt, at hvert rdfs:subClassOf-udsagn bliver genfortolket som et skos:broader-udsagn. Men rdfs:subClassOf er en refleksiv egenskab, hvilket betyder, at udsagnet C rdfs:subClassOf C er sandt [OWL] for hver c-klasse. I dette tilfælde vil hvert begreb derfor have sig selv blandt dets bredere begreber.

Sondringen mellem typer af hierarkiske relationer er ikke en del af grundlæggende SKOS – f.eks. relationer som forekomst-klasse og del-helhed. Yderligere oplysninger findes i afsnit 4.7, der beskriver, hvordan man opretter specialiseringer af semantiske relationer til at tage sig af det problem.

2.3.2 Associative relationer

Man kan bruge skos:related til at erklære en associativ relation mellem to begreber:

ex:birds rdf:type skos:Concept;
  skos:prefLabel "birds"@en;
  skos:related ex:ornithology.
ex:ornithology rdf:type skos:Concept;
  skos:prefLabel "ornithology"@en.

Som beskrevet i Håndbog i SKOS [SKOS-REFERENCE] er skos:related en symmetrisk egenskab[OWL]. Ud fra ovenstående RDF-graf følger f.eks., at ex:ornithology er subjekt i et skos:related-udsagn, der har ex:birds som objekt.  

Notat om (ikke-)transitivitet af skos:related: Man skal være opmærksom på, at skos:related ikke er defineret som en transitiv egenskab i SKOS-datamodellen. En transitiv skos:related kunne få uønskede konsekvenser, som i nedenstående eksempel:

ex:renaissance skos:related ex:humanism.
ex:humanism skos:related ex:philosophicalAnthropology.
ex:philosophicalAnthropology skos:related ex:philosophyOfMind.
ex:philosophyOfMind skos:related ex:cognitiveScience.

Hvis skos:related var transitiv, ville ex:renaissance da være direkte relateret til ex:cognitiveScience. Mens hvert individuelle udsagn giver mening, så passer det udledte udsagn måske ikke med det, som KOS’ens designer oprindelig havde til hensigt.

Notat om at blande hierarki med association: Den transitive afslutning skos:broader er adskilt fra skos:related. Hvis ressourcerne A og B er relaterede via skos:related, må der ikke være en kæde af skos:broader-relationer fra A til B. Det samme gælder skos:narrower.


2.4 Dokumentariske noter

Semantiske relationer er afgørende for definitionen af begreber, som det fremhæves af mange retningslinjer for KOS’er. Men udover disse strukturerede karakteriseringer må begreber indimellem defineres yderligere ved hjælp af ”uformel”dokumentation, der kan læses af mennesker, f.eks. scope-noter eller definitioner.

SKOS benytter egenskaben skos:note til almindelig dokumentation. Denne egenskab er inspireret af eksisterende KOS-retningslinjer, f.eks. [ISO2788] eller [BS8723-2] og er yderligere specialiseret i skos:scopeNote, skos:definition, skos:example og skos:historyNote , så den passer til mere specifikke typer dokumentation.

skos:scopeNote giver en vis, måske delvis information om begrebets tilsigtede mening, især som en indikation af, hvordan brugen af begrebet er begrænset i indekseringsmetode. Følgende eksempel er hentet fra [ISO2788]:

ex:microwaveFrequencies skos:scopeNote 
    "Used for frequencies between 1GHz to 300Ghz"@en.

skos:definition leverer en komplet forklaring på begrebets tilsigtede mening. Følgende eksempel er hentet fra [ISO2788]:

ex:documentation skos:definition 
    "the process of storing and retrieving information 
    in all fields of knowledge"@en.

skos:example giver et eksempel på brugen af et begreb:

ex:organizationsOfScienceAndCulture skos:example 
    "academies of science, general museums, world fairs"@en.

skos:historyNote beskriver betydelige ændringer i begrebets mening eller form:

ex:childAbuse skos:historyNote 
    "estab. 1975; heading was: Cruelty to children [1952-1975]"@en.

I tillæg til disse noter, der er beregnet på brugere af et begrebssystem, omfatter SKOS to specialiseringer af skos:note, der er nyttige for KOS-managere eller -redaktører: skos:editorialNote og skos:changeNote.

skos:editorialNote leverer information, der er en hjælp til intern administration, f.eks. påmindelser om redaktionelt arbejde, der stadig skal udføres, eller advarsler, hvis der skulle blive fortaget ændringer i fremtiden:

ex:doubleclick skos:editorialNote "Review this term after company merger 
                                  complete"@en.
ex:folksonomy skos:editorialNote "Check spelling with Thomas Vander Wal"@en.

skos:changeNote dokumenterer finkornede ændringer i et begreb med henblik på administration og vedligeholdelse:

ex:tomato skos:changeNote 
  "Moved from under 'fruits' to under 'vegetables' by Horace Gray"@en.

Det er vigtigt at bemærke, at den hierarkiske forbindelse mellem egenskaben skos:note og forskellige specialiseringer tillader, at den dokumentation, der er forbundet med et begreb, kan hentes frem på en ligefrem måde. Hver skos:definition er en skos:note, hver skos:scopeNote er en skos:note og så fremdeles.

Som illustreret ovenfor kan egenskabsdokumentation i SKOS simpelthen bruges sammen med almindelige literaler i RDF. Afsnit 4.2 vil vise, at der er andre mulige mønstre, eftersom udstrækningen af disse egenskaber ikke er begrænset til literaler. En vigtig funktion af enkle literaler er dog muligheden for at bruge sprogmærker, som det gøres ved navngivning af egenskaber. Dokumentation kan derfor gives i flere sprog:

ex:pineapples rdf:type skos:Concept;
  skos:prefLabel "pineapples"@en;
  skos:prefLabel "ananas"@fr;
  skos:definition "The fruit of plants of the family Bromeliaceae"@en;
  skos:definition
        "Le fruit d'une plante herbacée de la famille des broméliacées"@fr.

Før dette afsnit afsluttes, er det vigtig at bemærke, at andre egenskaber, der ikke er defineret i SKOS, kan bruges til at dokumentere begreber. Egenskaben dct:creator fra Dublin Core [DC] kan f.eks. bruges til at pege på den person, der oprettede begrebet:

ex:madagascarFishEagle dct:creator [ foaf:name "John Smith" ].

2.5 Begrebssystemer

Begreber kan oprettes og bruges som selvstændige enheder. Men begreber findes som regel i omhyggeligt sammensatte vokabularier og særligt i forbindelse med indeksering, som f.eks. i tesaurusser eller klassifikationssystemer. Med SKOS kan man repræsentere den slags KOS’er ved hjælp af klassen skos:ConceptScheme.

Det følgende eksempel viser, hvordan man definerer en begrebssystemsressource (der repræsenterer en tesaurus) og beskriver den ressource ved hjælp af egenskaberne dct:title og dct:creator fra Dublin Core [DC]:

ex:animalThesaurus rdf:type skos:ConceptScheme;
  dct:title "Simple animal thesaurus";
  dct:creator ex:antoineIsaac.

Når begrebssystemets ressource er blevet oprettet, kan man bruge egenskaben skos:inScheme til at sammenkæde den med de begreber, den indeholder:

ex:mammals rdf:type skos:Concept;
  skos:inScheme ex:animalThesaurus.
ex:cows rdf:type skos:Concept;
  skos:broader ex:mammals;
  skos:inScheme ex:animalThesaurus.
ex:fish rdf:type skos:Concept;
  skos:inScheme ex:animalThesaurus.

SKOS definerer egenskaben skos:hasTopConcept for at give effektiv adgang til adgangsstederne i bredere/snævrere begrebshierarkier. Med denne egenskab kan man sammenkæde et begrebssystem til de (sikkert mange) mest generelle begreber, som det indeholder, som i det (fortsatte) eksempel med opslagsværket om dyr:

ex:animalThesaurus rdf:type skos:ConceptScheme;
  skos:hasTopConcept ex:mammals;
  skos:hasTopConcept ex:fish.

Begrebssystemer er designet til at repræsentere traditionelle vokabularier, og udviklere opfordres til at følge retningslinjer fra eksisterende KOS’er (f.eks. [ISO2788] eller [BS8723-2]), når man sammensætter et begrebssystem i SKOS. Det anbefales f.eks., som det beskrives i afsnit 2.2, at to begreber ikke har den samme foretrukne leksikale betegnelse på et givent sprog, når de hører til samme begrebssystem.

Man skal dog være opmærksom på, at der er visse små forskelle mellem begrebssystemer i SKOS og ”traditionelle” KOS’er, hvilket mest skyldes det semantiske webs sammenhæng med SKOS. Afsnit 4.6 i Håndbog i SKOS [SKOS-REFERENCE] beskriver disse forskelle. Det er en vigtig funktion i SKOS, at det er muligt at sammenkæde det samme begreb med flere begrebssystemer ved hjælp af egenskaben skos:inScheme. Dette omtales i næste afsnit.

Endelig er det vigtigt at bemærke, at SKOS-vokabulariet kun i begrænset omfang understøtter inddæmning af KOS-information i et begrebssystem. Egenskaberne skos:inScheme og skos:hasTopConcept sammenkæder begrebssystemer og begreber. Men der er dog ingen mekanisme i SKOS, der kan registrere, at et bestemt udsagn vedrørende disse begreber, f.eks. en skos:broader-erklæring, hører til et bestemt begrebssystem. Man antager sædvanligvis, at en KOS består af begge dens begreber og de links, der definerer dem. Yderligere oplysninger om dette emne kan findes i  afsnit 5.3.


3. Arbejde med vidensorganiserende systemer på det semantiske web

At repræsentere en KOS med SKOS tjener ikke kun som en publiceringsmekanisme, men giver den også mulighed for at deltage i et netværk af begrebssystemer. Det sande datapotentiale slippes fri, når den bliver kædet sammen med det semantiske web. Når begreber fra forskellige begrebssystemer forbindes med hinanden, begynder de at danne et distribueret, heterogent globalt begrebssystem. Et netværk af begrebssystemer kan tjene som grundlag for nye programmer, der giver mulighed for meningsfuld navigation mellem KOS’er. Dette afsnit introducerer de funktioner i SKOS, der gør det muligt at sammenkæde begrebssystemer, og forklarer, hvordan man forbinder begrebsressourcer med andre ressourcer på det semantiske web.


3.1 Mapping af begrebssystemer

Hvert begreb i SKOS tildeles en URI [COOLURIS], som gør det muligt entydigt at henvise til et begreb i ethvert SKOS-program. Dette er især nyttigt til at etablere semantiske relationer mellem allerede eksisterende begreber. Sådan en mapping er altafgørende for programmer som informationssøgningsværktøjer, der bruger flere KOS’er på samme tid, og hvor disse KOS’er har overlappende rammer, der skal forenes semantisk. Eksempler findes i dokumentet SKOS Use cases and Requirements [SKOS-UCR].

Et afgørende træk ved mapping er muligheden for at angive, at to begreber fra forskellige systemer har sammenligneligt meningsindhold, og angive, hvordan dette meningsindhold kan sammenlignes, selv om det kommer fra forskellige sammenhænge og sikkert følger forskellige modelleringsprincipper [BS8723-4]. Mapping af begreber forventes at blive en stor hjælp til at gøre KOS’er tilgængelige på det semantiske web med SKOS.

SKOS har flere egenskaber, der mapper begreber mellem forskellige begrebssystemer. Dette kan gøres ved hjælp af egenskaberne skos:exactMatch og skos:closeMatch, der erklærer, at to begreber har et lignende betydningsindhold. To begreber fra forskellige begrebssystemer kan også mappes med egenskaber, der svarer til de semantiske relationer, der blev præsenteret i afsnit 2.3: skos:broadMatch, skos:narrowMatch og skos:relatedMatch.

I følgende eksempel repræsenterer to begrebssystemer et forskelligt syn på dyr:

ex1:referenceAnimalScheme rdf:type skos:ConceptScheme;
   dct:title "Extensive list of animals"@en. 
ex1:animal rdf:type skos:Concept;
   skos:prefLabel "animal"@en;
   skos:inScheme ex1:referenceAnimalScheme.
ex1:platypus rdf:type skos:Concept;
   skos:prefLabel "platypus"@en;
   skos:inScheme ex1:referenceAnimalScheme.
 
ex2:eggSellerScheme rdf:type skos:ConceptScheme;
   dct:title "Obsessed egg-seller's vocabulary"@en. 
ex2:eggLayingAnimals rdf:type skos:Concept;
   skos:prefLabel "animals that lay eggs"@en;
   skos:inScheme ex2:eggSellerScheme.
ex2:animals rdf:type skos:Concept;
   skos:prefLabel "animals"@en;
   skos:inScheme ex2:eggSellerScheme.
ex2:eggs rdf:type skos:Concept;
   skos:prefLabel "eggs"@en;
   skos:inScheme ex2:eggSellerScheme.

Det er muligt at mappe begreberne i ex1:referenceAnimalScheme til begreber i ex2:eggSellerScheme ved at bruge nedenstående mappingerklæringer:

 ex1:platypus skos:broadMatch ex2:eggLayingAnimals.
 ex1:platypus skos:relatedMatch ex2:eggs.
 ex1:animal skos:exactMatch ex2:animals.

En erklæring som skos:closeMatch viser, at to begreber er så tilstrækkeligt ens, at de vekslende kan bruges i forbindelse med de to begrebssystemer, de hører til. Men egenskaben skos:closeMatch er ikke defineret som transitiv, hvilket forhindrer, at sådanne lighedsvurderinger kan sprede sig ud over de to systemer. Hvis et begreb ex1:A er et tæt match til et andet begreb ex2:B, som i sig selv er et tæt match til ex3:C, betyder det ikke, at ex1:A er et tæt match til ex3:C i SKOS-datamodellen.

skos:exactMatch angiver også semantisk lighed – det er en underegenskab af skos:closeMatch. Det viser dog en endnu højere grad af nærhed: De to begreber har tilsvarende meningsindhold, og forbindelsen kan udnyttes i en lang række programmer og systemer. Egenskaben skos:exactMatch er bestemt transitiv. Hvis et begreb ex1:A er et præcist match til et andet begreb ex2:B, som i sig selv er et præcist match til ex3:C, så betyder det i SKOS-datamodellen, at ex1:A er et præcist match til ex3:C.

Notat om skos:exactMatch vs. owl:sameAs: SKOS har egenskaben skos:exactMatch til at mappe begreber med tilsvarende meningsindhold og bruger bevidst ikke egenskaben owl:sameAs fra ontologisproget OWL [OWL]. Når to ressourcer kædes sammen med owl:sameAs, antages det, at de er samme ressource, og at tripler i forbindelse med disse ressourcer er flettet sammen. Dette passer ikke til det, som er nødvendigt i de fleste SKOS-programmer. I ovenstående eksempel fremgår det, at ex1:animal svarer til ex2:animals. Hvis denne lighedsrelation blev repræsenteret ved hjælp af owl:sameAs ville følgende udsagn gælde for ex:animal:

ex1:animal rdf:type skos:Concept;
   skos:prefLabel "animal"@en;
   skos:inScheme ex1:referenceAnimalScheme.
   skos:prefLabel "animals"@en;
   skos:inScheme ex2:eggSellerScheme.

Dette vil gøre ex:animal selvmodsigende, eftersom et begreb ikke kan have to forskellige foretrukne betegnelser på samme sprog. Var begrebet blevet tildelt andre informationer, f.eks. semantiske relationer til andre begreber eller notater, så ville de også blive flettet sammen med det resultat, at disse begreber fik nye betydninger.

Mappingegenskaber bruges sædvanligvis til at repræsentere links, der har samme tilsigtede betydning som semantiske ”standardegenskaber”, men med en anderledes funktion. Man kan sige, at mapping af relationer er mindre uløseligt forbundet med meningen af de begreber, de involverer. Set fra designeren af den kortlagte KOS’ synspunkt kan de måske indimellem være forkerte.

Mappingegenskaber forventes at være nyttig i specifikke programmer, der bruger flere begrebsoverlappende KOS’er. Man forventer almindeligvis, at mapping af relationer bliver erklæret mellem begreber, der tilhører forskellige begrebssystemer.

Man skal være opmærksom på – i henhold til SKOS-datamodellen – at de mappingegenskaber, der ”afspejler” en given semantisk relationsegenskab, også er underegenskaber af den i en RDFS-mæssig forstand. Egenskaben skos:broadMatch er f.eks. underegenskab af skos:broader. Enhver erklæring af skos:broadMatch mellem to begreber leder derfor logisk til en erklæring af en skos:broader mellem disse begreber.


3.2 Genbrug og ekstension af begrebssystemer

At sammenkæde begreber ved hjælp af mapping er ikke den eneste måde at knytte begrebssystemer sammen. Brugen af URI’er på det semantiske web giver mulighed for, at ressourcer kan deles og genbruges på en distribueret måde. Derfor er det muligt for et SKOS-begreb at tage del i flere begrebssystemer på samme tid. En udgiver af en SKOS kan f.eks. vælge at udbygge et eksisterende begrebssystem lokalt ved at erklære et hvilket som helst nyt, måske nødvendigt begreb og ganske enkelt sammenkæde det med begreber, der allerede er defineret i det eksisterende system.

Ekstension af en KOS kan især være nyttig, når dens designere (eller en tredjepartsudgiver af KOS’en) gerne vil opnå en bedre dækning af et domæne eller underdomæne, mens de følger de principper, der styrede designet af den eksisterende KOS – dvs. genbruge nogle af dens begreber. Ekstension og genbrug af KOS kan også eksplicit bruges som en moduleringsmekanisme, når en familie af velformulerede KOS’er (f.eks. mikrotesaurusser, der tilhører et overordnet vokabularium) er designet til at dække flere domæner, og designerne vil give lov til, at specifikke programmer virker på et givent undersæt af begreber.

Et nyt begrebssystem kan genbruge eksisterende begreber ved hjælp af egenskaben skos:inScheme. I nedenstående eksempel definerer et første begrebssystem for dyr et begreb for ”katte”:

ex1:referenceAnimalScheme rdf:type skos:ConceptScheme;
   dct:title "Reference list of animals"@en. 
ex1:cats rdf:type skos:Concept;
   skos:prefLabel "cats"@en;
   skos:inScheme ex1:referenceAnimalScheme.

Udviklere af et andet begrebssystem, helliget beskrivelser af katte, kan frit inkludere begrebsreferencen ex1:cats og derpå henvise til den på følgende måde:

ex2:catScheme rdf:type skos:ConceptScheme;
   dct:title "The Complete Cat Thesaurus"@en. 
 
ex1:cats skos:inScheme ex2:catScheme.
 
ex2:abyssinian rdf:type skos:Concept;
   skos:prefLabel "Abyssinian Cats"@en;
   skos:broader ex1:cats;
   skos:inScheme ex2:catScheme.
 
ex2:siamese rdf:type skos:Concept;
   skos:prefLabel "Siamese Cats"@en;
   skos:broader ex1:cats;
   skos:inScheme ex2:catScheme.

Bemærk, at informationskilden, der definerer det nye begrebssystem, ikke kopierer information om begrebet ex1:cats, f.eks. den foretrukne betegnelse. Under antagelse af, at ex1:cats er blevet publiceret kan et semantisk web-program hente informationerne til dette begreb ved blot at bruge begrebets URI (http://www.example.com/1/cats).

Notat om owl:imports og genbrug af KOS’er: Egenskaben owl:imports er en mekanisme til at importere erklæringerne fra én OWL-ontologi til en anden. Egenskaben owl:imports kan bruges sammen med SKOS-vokabularier til at oprette et specielt tilfælde af genbrug/ekstension, hvor et begrebssystem ”importerer” et andet begrebssystem i sit hele. I eksemplet ovenfor kan dette opnås ved at inkludere følgende udsagn i den kilde, der definerer ex2:catScheme:

ex2:catScheme owl:imports ex1:referenceAnimalScheme.

Der er visse begrænsninger ved at bruge owl:imports på denne måde. Domænet og rækkevidden af owl:imports er for det første owl:Ontology, mens skos:ConceptScheme er defineret som en owl:Class. Hvis man erklærer, at et begrebssystem importerer et andet ved hjælp af owl:imports, får det den konsekvens, at forekomsten af skos:conceptScheme, der er involveret i importen, også fortolkes som en forekomst af owl:Ontology. Dette vil så resultere i et OWL Full ontology (på grund af den dobbelte brug af en URI som klasse og ontologi. Yderligere oplysninger findes i afsnit 4.2 i dokumentet OWL Semantics [OWL-SEMANTICS]).

Ifølge OWL Full-semantikken (yderligere oplysninger i afsnit 5.3 i dokumentet OWL Semantics [OWL-SEMANTICS]) er den tilsigtede fortolkning af owl:imports for det andet, at den RDF-graf, der hentes fra den importerede URI, føjes til den importerende graf. Brugere skal være opmærksomme på dette og undgå enhver alternativ fortolkning. Der er især ingen logisk afhængighed mellem skos:inScheme og owl:imports. Brug af owl:imports vil ikke resultere i forekomsten af nogen andre skos:inScheme-udsagn end dem, der allerede er erklæret i den importerede graf. I ovenstående eksempel er owl:imports blevet brugt til at fastslå, at ét begrebssystem logisk importerer et andet. Men selv om ex1:referenceAnimalScheme indeholder triplen

ex1:Elephant skos:inScheme ex1:referenceAnimalsScheme.

kan man ikke udlede, at triplen

ex1:Elephant skos:inScheme ex2:catScheme.

er til stede i den graf der definerer    ex2:catScheme.

Hvis et program er beskæftiget med praktisk proveniens eller ejerskabsoplysninger, kan det kræve flere trin for at opretholde proveniensen eller erklære importerede triplers autoritet, som det er nævnt i afsnit 5.3.


3.3 Emneindeksering og SKOS

Selv om forbindelsen mellem et begreb og ressourcen, der handler om dette begreb, ikke formelt tilhører de funktioner, der definerer en KOS, så er den fundamental for mange KOS-programmer, f.eks. til indeksering og hentning af dokumenter. Dette bliver endnu mere vigtigt i sammenhæng med det semantiske web, hvor der er et afgørende behov for at kommentere dokumenter med begrebsmæssige enheder, der definerer deres subjekt.

Mens SKOS-vokabulariet selv ikke indeholder en mekanisme, der kan forbinde en arbitrær ressource med klassen skos:Concept, kan udviklere benytte sig af andre vokabularier. Dublin Core indeholder f.eks- egenskaben dct:subject [DC]:

ex1:platypus rdf:type skos:Concept;
   skos:prefLabel "platypus"@en.
 
<http://en.wikipedia.org/wiki/Platypus> rdf:type foaf:Document;
   dct:subject ex1:platypus.

Bemærk, at en enkelt ressource kan have flere subjekter og derfor være involveret i flere udsagn af typen dct:subject. Disse subjekter kan tydeligvis komme fra forskellige begrebssystemer, der f.eks. kan være et resultat af en distribueret kommenteringsproces.


4. Avanceret SKOS: når KOS’er ikke længere er enkle

Udover de ovennævnte funktioner fremlægger SKOS et antal vokabularieelementer eller retningslinjer til mere avancerede repræsentationsbehov, så SKOS bliver kompatibel med en lang række metoder til at modellerere KOS’er. De er især designet til at imødekomme krav, som blev fremlagt i dokumentet SKOS Use Cases and Requirements [SKOS-UCR], men som kun var til stede i et mindre antal brugseksempler:

Dette afsnit slutter med et generelt notat om ekstension af SKOS-modellen for at gøre plads til endnu mere specialiseret raffinering af det vokabularium, der bliver præsenteret i denne introduktion.


4.1 Samlinger af begreber

Med SKOS er det muligt at definere meningsfulde grupperinger eller ”samlinger” af begreber. Sådanne grupperinger fremlægges normalt i tesaurusser som i følgende eksempel:

mælk
  <mælk fra kildedyr> 
    komælk
    gedemælk
    bøffelmælk

Disse samlinger kan bruges til at repræsentere ”sæt” i tesaurusterminologi, i hvilken termen ”mælk fra kildedyr” er en ”knudebetegnelse” [WillpowerGlossary]. Der er enighed om, at en knudebetegnelse ikke selv repræsenter en betegnelse for et begreb. Der skal derfor introduceres specifikke entiteter til at repræsentere dem.

Samlinger med betegnelser

SKOS introducerer klassen skos:Collection til at modellere sådanne strukturer af begrebssamlinger korrekt. Forekomster af denne klasse grupperer specifikke begreber ved hjælp af egenskaben skos:member, som i følgende eksempel:

ex:milk rdf:type skos:Concept;
  skos:prefLabel "milk"@en.
ex:cowMilk rdf:type skos:Concept; 
  skos:prefLabel "cow milk"@en;
  skos:broader ex:milk.
ex:goatMilk rdf:type skos:Concept; 
  skos:prefLabel "goat milk"@en;
  skos:broader ex:milk.
ex:buffaloMilk rdf:type skos:Concept; 
  skos:prefLabel "buffalo milk"@en;
  skos:broader ex:milk.
 
_:b0 rdf:type skos:Collection;
   skos:prefLabel "milk by source animal"@en;
   skos:member ex:cowMilk;
   skos:member ex:goatMilk;
   skos:member ex:buffaloMilk.

Bemærk, at samlingen blev defineret som en tom knude i ovenstående eksempel, dvs. at den ikke er tildelt nogen defineret URI. URI’er kan tildeles samlinger, men det er normalt ikke nødvendigt. Egenskaben skos:prefLabel er også blevet brugt til at give samlingen en leksikal betegnelse, eftersom denne egenskab (ligesom andre egenskaber til tildeling af betegnelser i SKOS) kan bruges sammen med ikke-begrebsmæssige ressourcer.

Ordnede samlinger

Indimellem er det vigtigt at registrere rækkefølgen af begreber i en samling, f.eks. når begreber er opført i alfabetisk eller kronologisk orden. Man bruger klassen skos:OrderedCollection samt tillige egenskaben skos:memberList til at definere en ordnet samling af begreber. Denne egenskab forbinder en forekomst af skos:OrderedCollection til en (muligvis tom) knude af typen rdf:List ved at følge det mønster, der gør det muligt at definere RDF-samlinger [Introduktion til RDF]. F.eks.:

ex:infants rdf:type skos:Concept; 
  skos:prefLabel "infants"@en.
ex:children rdf:type skos:Concept; 
  skos:prefLabel "children"@en.
ex:adults rdf:type skos:Concept; 
  skos:prefLabel "adults"@en.
 
_:b0 rdf:type skos:OrderedCollection;
   skos:prefLabel "people by age"@en;
   skos:memberList _:b1.
_:b1 rdf:first ex:infants;
   rdf:rest _:b2.
_:b2 rdf:first ex:children;
   rdf:rest _:b3.
_:b3 rdf:first ex:adults;
   rdf:rest rdf:nil.

SKOS-samlinger, semantiske relationer og systematiske visninger

Bemærk, at samlinger – ifølge SKOS-datamodellen – adskiller sig fra begreber. Det er derfor umuligt at bruge semantiske relationer i SKOS (se afsnit 2.3) for at få en samling til at passe direkte ind i et semantisk netværk i SKOS. At gruppere begreber i samlinger erstatter med andre ord ikke erklæringer om begrebets placering i et begrebssystem. I ovenstående ”mælkeeksempel” skal alle kildedefinerede mælketyper f.eks. eksplicit knyttes til den mere almene ex:milk ved hjælp af egenskaben skos:broader:

ex:cowMilk skos:broader ex:milk.
ex:goatMilk skos:broader ex:milk.
ex:buffaloMilk skos:broader ex:milk.

Så kan man danne en systematisk (hierarkisk) visning, der omfatter begrebsgrupperingen ”mælk fra kildedyr”, som det er vist i eksemplet i begyndelsen af dette underafsnit. Hierarkiet skos:broader og information om samlingens medlemmer kan bruges til dette, men processen kræver stadig en dedikeret algoritme, hvis implementering er overladt til specifikke programmer.

Man kan spekulere over, om det er ønskeligt at bruge samlinger, eftersom de føjer kompleksitet til de repræsentationer, som programmer skal bearbejde. I visse tilfælde, f.eks. når KOS’er hovedsageligt er ment som navigationshierarkier, virker det faktisk mere intuitivt at repræsentere ”knudebetegnelser” eller ”retningslinjer” som forekomster af skos:Concept og bruge normale semantiske relationer til at kæde dem sammen med andre begreber. Betragt følgende ”mælkeeksempel”:

ex3:milkBySourceAnimal rdf:type skos:Concept;
   skos:prefLabel "milk by source animal"@en;
   skos:broader ex3:milk;
   skos:narrower ex3:cowMilk;
   skos:narrower ex3:goatMilk;
   skos:narrower ex3:buffaloMilk.

Valget mellem de to repræsentationsmuligheder forbliver åbent og afhænger af det givne program. Man bør dog være opmærksom på, at det kan resultere i skadeligt tab af semantisk præcision, hvis man ikke bruger samlinger – også selv om det er mere intuitivt. For mange beskrivende programmer er ”knudebetegnelser” f.eks. forekomster af en virkelig specifik natur, og de må ikke bruges som objektsindekser sammen med ”normale” begreber. Det er derfor tydeligvis ikke den bedste skik at repræsentere dem som blot begreber.


4.2 Avancerede dokumentationsfunktion

Som vist i afsnit 2.4 tillader SKOS, at begreber bliver kommenteret ved at hæfte forskellige noter på dem. Det er værd at bemærke, at Håndbog i SKOS ikke begrænser rækkevidden af ressourcer, som erklæringer kan bruge i objektpositionen. Dette fører til forskellige brugsmønstre, hvoraf tre er forklaret – og anbefalet – i dette dokument.

Dokumentation som en RDF-literal

Her har dokumentationserklæringer simple RDF-literaler som objekter, som det er vist i alle eksemplerne i afsnit 2.4. Dette er den enkleste måde til at dokumentere begreber, og det forventes, at den passer til de fleste almindelige programmer.

Dokumentation som en relateret ressourcebeskrivelse

I dette andet mønster består objektet i et dokumentationsudsagn af en generel ikke-literal RDF-knude – dvs. en ressourceknude (sikkert tom), der kan være subjekt i andre RDF-udsagn [Introduktion til RDF]. Dette er især nyttigt til at repræsentere mere information om selve dokumentet i RDF, f.eks. hvem der har oprettet det og hvornår. Det gøres typisk med RDF-egenskaben rdf:value, som i det følgende eksempel, der bruger en tom knude:

ex:tomato skos:changeNote [
  rdf:value "Moved from under 'fruits' to under 'vegetables'"@en;
  dct:creator ex:HoraceGray; 
  dct:date "1999-01-23" 
].
ex:HoraceGray rdf:type foaf:Person; foaf:name "Horace Gray".

Dokumentation som en dokumentreference

En tredje mulighed består i at introducere et dokuments URI, f.eks. en webside, som objektet i et dokumentationsudsagn. Bemærk, at dette mønster, der er tæt beslægtet med det forrige, også giver mulighed for definition af yderligere metadata for dette dokument ved hjælp af RDF:

ex:zoology skos:definition ex:zoology.txt.
ex:zoology.txt dct:creator ex:JohnSmith.

4.3 Relationer mellem betegnelser

Visse programmer kræver oprettelsen af eksplicitte links mellem de betegnelser, der er tilknyttet begreber. Et eksempel er relationen mellem en foretrukken betegnelse for begrebet ”Corporation” og dets forkortelse ”Corp.”, der er dannet som en alternativ betegnelse eller et oversættelseslink mellem to betegnelser på forskellige sprog: "Cow"@en og "Vache"@fr. Brug af leksikale betegnelsesegenskaber i SKOS, f.eks. skos:prefLabel, er begrænset til RDF-literaler. Derfor kan disse betegnelser ikke være subjekt i et RDF-udsagn, og der kan ikke erklæres en direkte relation mellem dem.

For at løse dette problem i repræsentationen er SKOS-vokabulariet blevet udvidet med en valgfri betegnelsesekstension, SKOS-XL [SKOS-REFERENCE]. Denne ekstension introducerer klassen skosxl:Label, der muliggør, at betegnelser kan behandles som RDF-ressourcer af første orden. Hver forekomst af denne klasse skal først knyttes til en enkelt RDF-literal via egenskaben skosxl:literalForm. I følgende eksempel er begrebet ”Food and Agriculture Organization” betegnet med både det officielle navn og institutionens akronym. De to betegnelser kan repræsenteres på følgende måde:

ex:FAOlabel1 rdf:type skosxl:Label;
  skosxl:literalForm "Food and Agriculture Organization"@en.
ex:FAOlabel2 rdf:type skosxl:Label;
  skosxl:literalForm "FAO"@en.

Forekomster af skosxl:Label kan så relateres til begreber med egenskaberne (skosxl:prefLabel, skosxl:altLabel, skosxl:hiddenLabel), der afspejler de standardiserede literalbaserede betegnelsesegenskaber. Endelig kan disse forekomster knyttes sammen af udsagn af typen skosxl:labelRelation:

ex:FAO rdf:type skos:Concept;
  skosxl:prefLabel ex:FAOlabel1; 
  skosxl:altLabel ex:FAOlabel2.
ex:FAOlabel2 skosxl:labelRelation ex:FAOlabel1.

Sådan en løsning er dog ikke komplet. Et ”akronymfølsomt” program ville gå glip af den egentlige information om, at de to betegnelser sandelig har et akronymforhold til hinanden. Sådan et program ville også gå glip af linkets retning. Brugere af SKOS-XL opfordres derfor til at specialisere skosxl:labelRelation, så den passer til de programspecifikke krav som i nedenstående eksempel:

ex:isAcronymOf rdfs:subPropertyOf skosxl:labelRelation.
ex:FAOlabel2 ex:isAcronymOf ex:FAOlabel1.

Bemærk, at datamodellen i SKOS-XL sikrer, at sådan et mønster forbliver kompatibelt med den standardiserede betegnelsespraksis i SKOS. Hvis en forekomst af skosxl:Label er knyttet til et begreb, f.eks. med udsagnet skosxl:altLabel, så følger det af SKOS-XL-datamodellen, at den literale form af forekomsten skosxl:Label er relateret til dette begreb med standardudsagnet skos:altLabel. I ovenstående eksempel har ex:FAO derfor ”FAO"@en” som alternativ (literal) betegnelse.


4.4 Koordinering af begreber

Indekseringsmetoder, der inddrager tesaurusser og andre KOS’er, omfatter ofte koordinering. Koordinering er en aktivitet, hvor man kombinerer begreber fra en KOS. Der er grundlæggende to slags koordinering: for-koordinering og efter-koordinering [WillpowerGlossary]. Den væsentligste forskel mellem de to afhænger af, hvornår den aktuelle koordination sker i forbindelse med informationshentningen.

For-koordinering foregår, før informationen bliver hentet frem – enten af en, som vedligeholder KOS’en, eller under indeksering af en KOS. Man tager måske to eksisterende begreber fra et begrebssystem, f.eks. ”Cykler” og ”Reparation” og kombinerer dem eksplicit med en given syntaks, f.eks. ”Cykler—Reparation” for at indeksere et bestemt dokument.

Efter-koordinering udføres derimod som en del af informationshentningen. Det kan være et givent dokument, der f.eks. er indekseret med to individuelle begreber ”Cykler” og ”Reparation”, og en bruger så beslutter at udføre en søgning efter alle dokumenter, der er indekseret med ”Cykler” og ”Reparation”.

Efter-koordinering, som en aktivitet til hentning af information, egner sig til indirekte repræsentation som en SPARQL-forespørgsel til at hente RDF-data [SPARQL]. Med følgende to individuelle begreber:

ex:bicycles skos:prefLabel "Bicycles"@en.
ex:repairing skos:prefLabel "Repairing"@en.

kan man f.eks. konstruere en SPARQL-forespørgsel, som kun finder dokumenter, der er indekseret med begge begreber:

SELECT ?document
WHERE {
  ?document dct:subject ex:bicycles.
  ?document dct:subject ex:repairing.
}

Men selve SKOS-vokabulariet indeholder ingen mekanismer til at udtrykke, at et givent begreb består af en før-koordinering af andre begreber. Det er naturligvis muligt at udbygge SKOS til at etablere et mønster, der kan repræsentere koordinerede begreber. Det er foreslået, at en ny egenskab, f.eks. ex:coordinationOf kan etableres:

ex:coordinationOf a rdf:Property;
  rdfs:domain skos:Concept;
  rdfs:range rdf:List.

der så kan bruges i erklæringer som:

ex:bicyclesRepairing a skos:Concept;
  ex:coordinationOf (ex:bicycles ex:repairing);
  skos:prefLabel "Bicycles--Repairing"@en.

Det er også foreslået, at OWL selv kan bruges til at koordinere begreber:

ex:bicyclesRepairing a skos:Concept;
  owl:intersectionOf (ex:bicycles ex:repairing);
  skos:prefLabel "Bicycles--Repairing"@en.

Men etableringen af mønstre for for-koordination af denne slags er endnu ikke dukket op blandt brugere af SKOS. ex:coordinationOf (eller en tilsvarende ekstension), og rammerne for brug af SKOS med OWL er ikke er blevet udnyttet i tilstrækkelig grad til at berettige inklusion i SKOS-vokabulariet. Frem for at forpligtige sig til et designmønster, der ikke bevisligt er nyttigt, har Semantic Web Deployment Group besluttet at udskyde problemet med koordination, så ekstensionsmønstre kan spire organisk frem i takt med, at brugen af SKOS breder sig. Når vellykkede mønstre er etableret, er det håbet, at de kan publiceres på internettet som et ekstensionsvokabularium til SKOS og dokumenteres med et W3C-notat eller tilsvarende.


4.5 Transitive hierarkier

Som beskrevet i afsnit 2.3.1 er egenskaberne skos:broader og skos:narrower, der bruges til at repræsentere KOS-hierarkier, ikke defineret som transitive. Som vist i fig. 4.5.1 (i) og (ii), betyder det, at deres semantik ikke understøtter følgeslutninger af typen: hvis ”dyr”er bredere end ”pattedyr” og ”pattedyr” er bredere end ”katte”, så er ”dyr” bredere end ”katte”.

Fig. 4.5.1: skos:broader er ikke transitiv

skos:broader is not transitive

Stiplede pile repræsenterer udsagn, der er udledt af SKOS-datamodellen.
Ubrudte pile repræsenterer erklærede udsagn.

SKOS indeholder to specifikke egenskaber, skos:broaderTransitive og skos:narrowerTransitive til programmer, der kræver den slags semantik – f.eks. for at udføre en ekstenderet søgeformulering. Disse er defineret som transitive overegenskaber af skos:broader og skos:narrower [Håndbog i SKOS]. Ved at bruge et værktøj til at drage følgeslutninger på det semantiske web giver dette mønster adgang til et hierarkis ”transitive afslutning”, som er udtrykt med skos:broader og skos:narrower.

Tag eksemplet i fig. 4.5.1 (i):

ex:animals skos:prefLabel "animals"@en.
ex:mammals skos:prefLabel "mammals"@en;
  skos:broader ex:animals.
ex:cats skos:prefLabel "cats"@en;
  skos:broader ex:mammals.

Når et ræsonneringsprogram læser de ovenstående tripler, bruges definitionen af skos:broaderTransitive som en ovenegenskab af skos:broader til at udlede følgende udsagn:

ex:cats skos:broaderTransitive ex:mammals.
ex:mammals skos:broaderTransitive ex:animals.

Transitiviteten i skos:broaderTransitive forårsager så, at det ønskede udsagn bliver udledt:

ex:cats skos:broaderTransitive ex:animals.

Disse to trin er vist i følgende illustration:

Fig. 4.5.2: udledning af et transitivt hierarki fra erklærede skos:broader-udsagn

Inferring a transitive hierarchy from asserted skos:broader statements

Stiplede pile repræsenterer udsagn, der er udledt af SKOS-datamodellen.
Ubrudte pile repræsenterer erklærede udsagn.

Brugen af overegenskaben skos:broaderTransitive giver praksisfællesskaber mulighed for at udnytte deres egne transitive fortolkninger af hierarkiske netværk uden at gribe ind i semantikken for skos:broader, som ikke underbygger den slags transitivitet. Man kan intuitivt fortolke skos:broader-udsagn som eksplicit erklærede direkte ophav, mens skos:broaderTransitive bruges til at afspejle mere generelle (og muligvis indirekte) forhold til stamfædre.

Notat om formodet ”transitiv arv”: Overegenskaben, der forbinder skos:broader og skos:broaderTransitive, virker mindre intuitiv ved første øjekast. En ikke-transitiv egenskab er her defineret som et barn af en transitiv egenskab, som ikke arver dens transitivitet. Det er dog helt i overensstemmelse med RDFS/OWL-semantik for rdfs:subPropertyOf [OWL]: en egenskab P er en underegenskab af Q, hvis og kun hvis, at P – når Q er logisk gældende mellem to ressourcer – hver gang også er logisk gældende mellem dem. Dette påtvinger ikke nogen transitiv arv. Sættet af alle ressourcepar med relation til P (dens graf), som et undersæt af Q’s, vil derimod sandsynligvis mangle nogle af de par, der gør Q transitiv.


4.6 Notationer

Nogle KOS’er, f.eks. klassifikationssystemer som Universal Decimal Classification [UDC], bruger notationer (eller captions) som den primære metode til at få adgang til de begreber, de indeholder. Notationer er symboler, som normalt ikke genkendes som ord eller rækker af ord på noget naturligt sprog, og som derfor er uafhængigt anvendelige i sammenhænge med naturlige sprog. De består typisk af tal suppleret af punktummer og andre tegn som i følgende eksempel i UDC:

512 Algebra
512.6 Særlige grene af algebra

SKOS tillader, at man repræsenterer notationer på to måder, afhængig af de prioriteter, som udgiveren af begrebssystemet har. Den første, foretrukne teknik består i at bruge egenskaben skos:notation. Med denne egenskab kan et begreb tilknyttes en literal skrevet i RDF – en literal med en eksplicit datatype [Introduktion til RDF]. Literalens datatype angiver et syntakskodesystem, som passer til brugen af notationer i den aktuelle KOS. Literalens værdi er selve notationen (i dette tilfælde selve klassifikationskoden):

ex:udc512 skos:prefLabel "Algebra"@en ;
  skos:notation "512"^^ex:UDCNotation .

Yderligere oplysninger om, hvordan man håndterer datatyper, findes i afsnit 6.5.1 i Håndbog i SKOS [Håndbog i KOS.] Denne tilgang kan især være nyttig, hvis en udgiver af en KOS ønsker at forsyne brugere med et regelsæt, der er specifikt til KOS’ens notationssystem. Mange klassifikationssystemer har f.eks. specifikke syntaksregler, der gør det muligt at opløse komplekse notationer, hvilket medfører sammenkædning af de korresponderende begreber med andre, enklere begreber. Dette mønster kan også hjælpe udviklere af SKOS-værktøj og udgivere af KOS’er, som ønsker, at notationer vises på en dedikeret måde.

Håndteringen af sådanne datatyper kan dog være besværlig. Desuden er det forudgående mønster ikke rigtig nødvendigt, når udgivere selv opfatter notationerne som enkle, sproguafhængige betegnelser. I sådanne tilfælde er det muligt at bruge en af SKOS’ betegnelsesegenskaber, f.eks. skos:prefLabel, uden noget sprogmærke, som i:

ex:udc512 skos:prefLabel "Algebra"@en ;
  skos:notation "512"^^ex:UDCNotation ;
  skos:prefLabel "512" .

Bemærk, at det er usandsynligt, at notationer, der repræsenteres på en sådan måde, vil have gavn af notationsspecifikke mekanismer (f.eks. visningsprocedurer) i SKOS-værktøjer. Som standard bør brugere forvente, at disse notationer ganske enkelt behandles som betegnelser i overensstemmelse med SKOS-modellen.


4.7 Om at specialisere SKOS-modellen

Det er hensigten, at SKOS skal fungere som en fællesnævner mellem forskellige tilgange til modellering. Som sådan vil den aktuelle vokabulariumdefinition tillade, at mange eksisterende KOS’er bliver migreret til det semantiske web. Men de mange forskellige KOS-modeller gør det dog umuligt at registrere hver eneste detalje i disse modeller, mens man stadig bibeholder det første ”S” (”simple”) i navnet SKOS.

Programmer, der kræver en mere finkornet kvalitet, vil have stor gavn af, at SKOS er et vokabularium på det semantiske web. SKOS kan sandelig ekstenderes problemfrit, så det passer til et bestemt KOS-fællesskabs særlige behov, mens man bibeholder kompatibiliteten med programmer, der er baseret på kernefunktionerne i SKOS.

Dette kan for det meste gøres ved at specialisere eksisterende SKOS-begreber og gøre dem mere specifikke. Brugere kan oprette deres egne egenskaber og klasser og knytte dem til standardiserede vokabularieelementer i SKOS ved hjælp af egenskaben rdfs:subPropertyOf og rdfs:subClassOf fra RDF Schema-vokabulariet[Introduktion til RDF].

Eksemplet i afsnit 4.3 illustrerer, hvordan skosxl:labelRelation kan specialiseres og gøres til en mere semantisk velfunderet egenskab, der er helliget repræsentation af forbindelser mellem akronymer. Anden anvendelse er mulig. Man kan f.eks. oprette forskellige ”nuancer” af egenskaberne skos:broader og skos:narrower. Tesaurusstandarder identificerer faktisk et mindre antal hierarkiske relationer, f.eks. generisk, del-hele eller forekomstklasser [ISO2788]. Med SKOS kan en programdesigner oprette nye egenskaber, der kan registrere denne sondring og erklære dem som underegenskaber af skos:broader:

ex:broaderGeneric rdfs:subPropertyOf skos:broader.
ex:broaderPartitive rdfs:subPropertyOf skos:broader.
ex:broaderInstantive rdfs:subPropertyOf skos:broader.

Ethvert ex:broaderPartitive-udsagn mellem to begreber kan f.eks. formelt fortolkes som en egentlig ræsonneringsmaskine på det semantiske web. Denne fortolkning vil indskyde følgeslutningen af et skos:broader-udsagn mellem disse begreber – en stump information, som måske kan benyttes af grundlæggende SKOS-værktøjer.

Notat om at pille ved selve SKOS-vokabulariet: Det er i almindelighed bedst at undgå at erklære tripler, hvor en URI fra SKOS-vokabulariet står på subjektets plads. Ved at gøre dette kan man ændre SKOS-datamodellen og fremkalde uønskede bivirkninger. Dette kan så kompromittere vokabulariers samspil. Hvis man ønsker at tilpasse, hvordan det ”indbyggede” vokabularium opfører sig i specifikke tilfælde, bør man først overveje at introducere ens egne begreber som underklasser eller underegenskaber.

Udviklere af ekstensioner til SKOS opfordres naturligvis til at publicere dem, dvs. benytte SKOS’ offentlige mailingliste (public-esw-thes@w3.org). Sådanne ekstensioner adresserer måske almene problemstillinger og kan derfor genbruges på tværs af forskellige programmer. Til gengæld er det sandsynligt, at genbrug fører til feedback fra andre, hvilket hjælper med at forøge kvaliteten af de publicerede ekstensioner.


5. Kombinere SKOS med andre modelleringsmetoder

Som vist ovenfor er SKOS et RDF/OWL-vokabularium, der gnidningsfrit kan udvides og tilpasses specifikke krav. På samme måde kan funktionerne i SKOS også bruges på det semantiske web som et supplement til andre modelleringsvokabularier. Dette afsnit giver eksempler på genbrug af betegnelsesegenskaber, der i SKOS bruges til at beskrive ressourcer, som ikke nødvendigvis er SKOS-begreber. Derpå omtales det særlige problem med at forbinde SKOS-begreber med klasser, som det er defineret i ontologisproget OWL.

Bemærk: Dette afsnit beskæftiger sig med problemer, der opstår, når et program kræver, at der skal bruges SKOS-funktioner sammen med andre modelleringsmetoder. Brugere, der ikke har sådanne behov, kan springe afsnittet over.

5.1 Brug af betegnelser uden for SKOS

Der er muligt at bruge betegnelsesegenskaberne i SKOS til at navngive ressourcer, der ikke er af typen skos:Concept. Følgende tripler beskriver Tim Berners-Lee:

<http://www.w3.org/People/Berners-Lee/card#i> rdf:type foaf:Person;
  foaf:name "Timothy Berners-Lee";
  rdfs:label "TBL";
  skos:prefLabel "Tim Berners-Lee"@en.

Et program, der vil vise en betegnelse for denne ressource, kan identificere ”Tim Berners-Lee” som den foretrukne betegnelse i stedet for at vælge mellem de lige så kompatible betegnelser rdfs:label ”TBL” eller foaf:name ”Timothy Berners-Lee”. Disse betegnelser er kompatible, fordi foaf:name er en underegenskab af rdfs:label.

Et andet eksempel er betegnelser på klasser, egenskaber og individer i OWL-ontologier, der kan læses af mennesker og normalt blot udtrykkes med rdfs:label. Følgende tripler beskriver mennesket:

ex:Human rdf:type owl:Class;
  rdfs:label "human"@en;
  rdfs:label "man"@en.

Et program ville have svært ved at bestemme, hvilken betegnelse der er den korrekte at vise brugeren, eftersom begge betegnelser vejer lige tungt. Semantikken i skos:prefLabel giver mulighed for eksplicit at definere den foretrukne betegnelse til en given ressource. Det er generelt evnen til efter behov at genbruge vokabularieelementer fra SKOS eller andre RDF-vokabularier, der giver RDF meget af dens styrke.


5.2 SKOS-begreber og OWL-klasser

Håndbog i SKOS definerer skos:Concept som en OWL-klasse [Håndbog i SKOS]:

skos:Concept rdf:type owl:Class.

Derfor er forekomster af skos:Concept (f.eks. ex:Painting i et vokabularium om kunst) sprogindivider i OWL.

ex:Painting rdf:type skos:Concept.

Man kan spørge, om en forekomst af et SKOS-begreb, f.eks. ex:Painting, selv kan opfattes som en klasse. Brugere kan f.eks. definere egenskaber af ex:painting som ex:support:

ex:support rdf:type owl:DatatypeProperty.
ex:support rdfs:domain ex:Painting.

Man kan spørge, hvorfor nogen ville ønske at gøre dette? Begrebsmæssigt kan en klasse som skos:Concept opfattes som en metaklasse; dens forekomster er de begreber, der optræder i et vokabularium. Det er derfor tænkeligt, at SKOS-brugere vil specificere karakteristikker af SKOS-begreber på klasseniveau, f.eks. at malerier har stativer, eller at ost har et oprindelsesland.

Det bør påpeges, at SKOS ikke tager parti, når det kommer til, hvilken type OWL – OWL Full eller OWL-DL [OWL-REFERENCE] – der skal bruges sammen med SKOS. Brugere af OWL Full vil kunne håndtere ovenstående situation ved eksplicit at behandle forekomster af SKOS-begreber som klasser, f.eks. ved at tilføje udtryk af typen:

ex:Painting rdf:type owl:Class.

Dette er muligt, fordi OWL Full ikke kræver, at klasse- og individsættene er adskilte. Hvis man ønsker at bruge DL-typen af OWL, kan man ikke bruge denne metamodelleringsmekanisme, eftersom den usammenhængende betingelse mellem klasser og individer må gælde for enhver OWL-DL-ontologi. Brugere af OWL-DL, som er interesserede i at kæde OWL-klasser sammen med SKOS-begreber, bliver nødt til at holde disse formelt adskilte. De kan ikke desto mindre bygge bro mellem dem ved at bruge dedikerede kommentaregenskaber i OWL annotation properties. Det forudsætter, at de kan oprette og bruge deres egne ekstensioner til SKOS, f.eks.:

ex:PaintingClass rdf:type owl:Class.
ex:PaintingConcept rdf:type skos:Concept.
ex:PaintingClass ex:correspondingConcept ex:PaintingConcept.

Bemærk, at den nyligt nedsatte OWL Working Group [OWL-WG] på nuværende tidspunkt har planlagt at håndtere (nogle typer) metamodellering inden for en beskrivelseslogisk ramme. Dette giver måske brugere af OWL-DL mulighed for at vælge mønstre, der er nemmere at udnytte.

Forholdet mellem SKOS-begreber og OWL-klasser/-individer kan sammenfattes på følgende måde:


5.3 SKOS, RDF-datasæt og containment af informationer

I sammenhæng med KOS’er i netværk kan visse programmer kræve, at man sporer herkomst eller ejerskab af SKOS-udtryk, f.eks. af sikkerhedsårsager. Det er et specifikt problem, hvordan man etablerer eksplicitte forbindelser mellem et begrebssystem og hver eneste stump information, der er anført i den oprindelige KOS, som det repræsenterer – f.eks. semantiske forbindelser mellem begreber.

Sådan en funktionalitet, skønt identificeret som et kandidatkrav [SKOS-UCR], er aktuel uden for rammerne af SKOS. I RDF er udsagn kontekstfrie tripler, som gør det svært at repræsentere containment og herkomst.

Der er dog foreslået løsninger på sådanne problemer, f.eks. navngivne grafer [NAMED-GRAPHS], og brugen af RDF-datasæt i SPARQL [SPARQL]. Et begrebssystem i SKOS kan relateres til et RDF-datasæt eller endda blive erklæret som et datasæt, hvilket muliggør dannelsen af SPARQL-forespørgsler med en form for herkomst eller containment. I forlængelse af eksemplet i afsnit 3.2, og under antagelse af at ex1:referenceAnimalScheme og ex2:catScheme er blevet håndteret som behørige RDF-datasæt (her navngivne grafer), kan forespørgslen

SELECT  ?x ?y
WHERE   {
  GRAPH ex2:catScheme { ?x skos:broader ?y }
}

resultere i (ex2:abyssinian, ex1:cat), mens denne tupel ikke vil være at finde i resultatet af

SELECT  ?x ?
WHERE   {
   GRAPH ex1:referenceAnimalScheme { ?x skos:broader ?y }
}

Man skal ikke desto mindre være opmærksom på, at disse mekanismer ikke har været brugt i stor udstrækning på nuværende tidspunkt, og at andre standardprocedurer kan dukke op i fremtiden.


Litteraturhenvisninger

[BS8723-2]
BS 8723-2:2005 Structured vocabularies for information retrieval. Guide. Thesauri, British Standards Institution, London, 2005.
[BS8723-4]
BS 8723-4:2007 Structured vocabularies for information retrieval. Guide. Interoperability between vocabularies, British Standards Institution, London, 2007.
[COOLURIS]
Cool URIs for the Semantic Web, Leo Sauermann, Richard Cyganiak, Editors, W3C-interessegruppenotat, 3. december 2008. Seneste version Findes på http://www.w3.org/TR/cooluris/ .
[DC]
DCMI Metadata Terms, 14. januar 2008. Seneste version Findes på http://dublincore.org/documents/dcmi-terms/ .
[ISO2788]
ISO 2788:1986 Documentation - Guidelines for the establishment and development of monolingual thesauri. Anden udgave. ISO TC 46/SC 9, 1986.
[ISO5964]
ISO 5964:1985 Documentation - Guidelines for the establishment and development of multilingual thesauri. Første udgave. ISO TC 46/SC 9, 1985.
[NAMED-GRAPHS]
Named graphs, provenance and trust, Jeremy Carroll, Christian Bizer, Patrick Hayes, Patrick Stickler, WWW 2005.
[RDF/XML-SYNTAX]
RDF/XML Syntax Specification (Revised), Dave Beckett, Editor. W3C-anbefaling, 10. februar 2004. Seneste version Findes på http://www.w3.org/TR/rdf-syntax-grammar/ .
[RECIPES]
Best Practice Recipes for Publishing RDF Vocabularies. Diego Berrueta, Jon Phipps. W3C-arbejdsudkast, 23. januar 2008. Seneste version Findes på http://www.w3.org/TR/swbp-vocab-pub/ .
[OWL-WG]
OWL Working Group, http://www.w3.org/2007/OWL/.
[OWL]
OWL Web Ontology Language Reference, Mike Dean, Guus Schreiber, Editors, W3C-anbefaling, 10. februar 2004. Seneste version Findes på http://www.w3.org/TR/owl-ref/ .
[OWL-SEMANTICS]
OWL Web Ontology Language Semantics and Abstract Syntax, Peter F. Patel-Schneider, Patrick Hayes, Ian Horrocks, Editors, W3C-anbefaling, 10. februar 2004. Seneste version Findes på http://www.w3.org/TR/owl-semantics/ .
[RDF-PRIMER]
RDF Primer, Frank Manola, Eric Miller, Editors, W3C-anbefaling, 10. februar 2004. Seneste version Findes på http://www.w3.org/TR/rdf-primer/ .
[RDF-CONCEPTS]
Resource Description Framework (RDF): Concepts and Abstract Syntax , Graham Klyne, Jeremy Carroll, Editors, W3C-anbefaling, 10. februar 2004. Seneste version Findes på http://www.w3.org/TR/rdf-concepts/ .
[RFC4646]
Tags for Identifying Languages, A. Phillips , M. Davis, Editors, september 2006. Findes på http://www.ietf.org/rfc/rfc4646.txt .
[SWBP-SKOS-CORE-GUIDE]
SKOS Core Guide, Alistair Miles, Dan Brickley, Editors, W3C Working Draft, 2. november 2005. Seneste version Findes på http://www.w3.org/TR/2005/WD-swbp-skos-core-guide-20051102/ .
[SKOS-REFERENCE]
SKOS Reference, Alistair Miles, Sean Bechhofer, Editors, W3C-anbefaling, 18. august 2009. Seneste version Findes på http://www.w3.org/TR/skos-reference .
[SKOS-UCR]
SKOS Use Cases and Requirements, Antoine Isaac, Jon Phipps, Daniel Rubin, Editors, W3C-arbejdsgruppenotat, 18. august 2009. Seneste version Findes på http://www.w3.org/TR/skos-ucr .
[SPARQL]
SPARQL Query Language for RDF, Eric Prud'hommeaux, Andy Seaborne, Editors, W3C-arbejdsudkast, 15. januar 2008. Seneste version Findes på http://www.w3.org/TR/rdf-sparql-query/ .
[SWBP-SKOS-CORE-SPEC]
SKOS Core Vocabulary Specification, Alistair Miles, Dan Brickley, Editors, W3C-arbejdsudkast, 2. november 2005. Findes på http://www.w3.org/TR/2005/WD-swbp-skos-core-spec-20051102/ .
[SWD]
The Semantic Web Deployment Working Group, http://www.w3.org/2006/07/SWD/ .
[TURTLE]
Turtle - Terse RDF Triple Language , David Beckett, Tim Berners-Lee. W3C-holdindlæg, 14. januar 2008. Seneste version Findes på http://www.w3.org/TeamSubmission/turtle/ .
[UDC]
UDC - Universal Decimal Classification, UDC Consortium, http://www.udcc.org/ .
[URI]
RFC 3986 - Uniform Resource Identifiers (URI): Generic Syntax, Tim Berners-Lee, Roy Fielding, Larry Masinter, IETF, januar 2005. Findes på http://tools.ietf.org/html/rfc3986 .
[WillpowerGlossary]
Glossary of terms relating to thesauri and other forms of structured vocabulary for information retrieval, Stella Dextre Clarke, Alan Gilchrist, Ron Davies and Leonard Will,Willpower Information. Findes på http://www.willpowerinfo.co.uk/glossary.htm .

Tak

Forfatterne vil gerne takke Alistair Miles og Dan Brickley, som redigerede SKOS Core Guide (som denne introduktion i store træk bygger på); samt tillige Tom Baker, Guus Schreiber og Sean Bechhofer, der bidrog med betydelige dele af denne tekst. Medlemmer af Semantic Web Deployment Group, Tom Baker, Margherita Sini og Quentin Reul, leverede også omfattende kritik under udgivelsesprocessen.

Dokumentet her er resultatet af omfattende diskussioner i hele Semantic Web Deployment Group. Medlemmerne af arbejdsgruppen, som ikke allerede er blevet nævnt, omfatter (i alfabetisk rækkefølge): Ben Adida, Diego Berrueta, Jeremy Carroll, Michael Hausenblas, Elisa Kendall, Vit Novacek, Jon Phipps, Clay Redding, Daniel Rubin, Manu Sporny og Ralph Swick.

Uvurderlige offentlige kommentarer i form af rådgivning, forslag og rettelser (især via mailinglisten: public-esw-thes@w3.org) kom fra følgende personer: Mark van Assem, Stephen Bounds, Dan Brickley, Johan De Smedt, Stella Dextre-Clarke, Alasdair Gray, Andrew Houghton, Simon Jupp, Carl Mattocks, Emma McCulloch, Mikael Nilsson, Alan Ruttenberg, Aida Slavic, Simon Spero, Doug Tudhope, Bernard Vatant, Jakob Voss, Leonard Will og Sue Ellen Wright.


Tillæg. Korrespondance mellem ISO-2788/5964 og SKOS-begrebet

SKOS står i stor gæld til årtiers arbejdspræstationer fra KOS-fællesskabet i form af programmer, retningslinjer og standardformater. Kompatibiliteten mellem SKOS-modellen og to af den slags præstationer, ISO 2788-specifikationer for enkeltsprogstesaurusser [ISO-2788] og ISO 5964-specifikationer for flersprogede tesaurusser [ISO-5964], blev især fremhævet som et kandidatkrav i SKOS Use Case and Requirements [SKOS-UCR].

SKOS angiver ikke selv regler for, hvordan man opretter begrebssystemer, men SKOS’ datamodel afspejler visse konstruktionsprincipper i KOS. Designet af vokabulariet er også betydeligt påvirket af standardretningslinjer for tesaurusser, eftersom disse er blandt de mest udviklede forslag på KOS-området. Der er især mange lighedspunkter mellem SKOS og ISO 2788/5964. Følgende tabel opsummerer disse paralleller og fremhæver steder, hvor designet af SKOS afviger fra ISO-anbefalinger. Dette vil forhåbentlig hjælpe fremtidige forsøg på at migrere tesaurusser, der følger ISO-retningsliner, til SKOS.

Man skal være opmærksom på, at denne sammenligning ikke på nogen måde må fortolkes som en begrænsning af SKOS i forhold til standardtesaurusser. SKOS kan, som det allerede er nævnt i dokumentet, bruges – sikkert med passende ekstensioner – til andre KOS-typer eller tesaurusser, der ikke følger ISO-retningslinjerne.

KOS-designaspekt ISO 2788/5964 SKOS

begreber versus termer

I ISO-standarder er tesaurusser indekseringssprog, som består af termer.

ISO 2788 diskuterer omfattende, hvordan termer udformes, og fokuserer f.eks. på deres form. Eksplicitte kvalifikatorer bruges f.eks. til at adskille homografer, f.eks. Crane (fugl) versus Crane (løftemaskineri).

Begreber er det centrale modelgrundlag i SKOS. Termer i ISO-standarder svarer til betegnelser i SKOS-begreber.

Som et enkelt publiceringsmiddel fastsætter SKOS ikke regler for design af betegnelser. Eftersom SKOS bruger enkle literaler til at repræsentere betegnelser, er det ydermere ikke muligt at udtrykke termdannende mekanismer som formel og eksplicit kvalifikation. I dette og i andre tilfælde, hvor man vil knytte information til betegnelser og ikke til det begreb, de udtrykker, skal man bruge SKOS-XL-ekstensionen (se afsnit 4.3).

semantiske relationer inden for KOS  –ækvivalens

Termer kan være semantisk ækvivalente. I det tilfælde skelner man mellem foretrukne og ikke foretrukne ved hjælp af relationerne USE og UF (used for).

Det formodes, at en ikke foretrukken term kun kan pege på én ækvivalent foretrukken term, hvor den sidste er hovedindgangspunktet for det begreb, som de begge udtrykker.

Ækvivalente termer repræsenteres som betegnelser, der er knyttet til et enkelt begreb. Som udgangspunkt er der ingen direkte relation mellem disse betegnelser. Som i ISO 2788 skelner man mellem foretrukne betegnelser og ikke foretrukne (alternative). I SKOS findes tillige skjulte betegnelser.

Et begreb kan kun have én foretrukken betegnelse (per sprog). Inden for samme begrebssystem kan forskellige begreber dog dele en foretrukken betegnelse, selv om det ikke anbefales at gøre det.

semantiske relationer inden for KOS  – andre forbindelser

Udover ækvivalensrelationerne USE og UF bruges der tre typer forbindelser til at relatere termer semantisk til hinanden. BT (broader term) og NT (narrower term) udtrykker, at betydningen af en term er mere generel end andres. RT (related term) bruges, når en (ikke hierarkisk) associativ forbindelse gælder mellem betydninger, som kan være nyttige for de programmer, der udnytter tesaurussen.

ISO 2788 skelner mellem tre slags BT/NT ved hjælp af logiske tests: almene (klassearter), hel-del og klasseforekomster. Man kan om nødvendigt repræsentere dem med forkortelserne BTG, BTP and BTI.

Gyldigheden af logiske tests i godt konstruerede tesaurusser fører til transitive fortolkninger af hierarkiet, hvortil en term med rimelighed kan erkende alle dens aner som superordinater.

skos:broader, skos:narrower og skos:related afspejler BT, NT og RT på begrebsniveau.

SKOS har dog bredere rækkevidde i forhold til KOS-typer og giver i modsætning til ISO 2788 ingen helt præcise anbefalinger af, hvad der er et gyldigt hierarki. Det er hovedsageligt op til KOS’ens udgivere at sikre, at forbindelserne i deres systemer ikke kommer i konflikt med det, der anses som almindelig praksis i KOS – som tesaurusser kun er en del af. SKOS fokuserer i stedet på at adskille eksplicit erklærede forbindelser af typen ”forældre-barn”(skos:broader) fra mere generelle forbindelser af typen ”aner-efterkommere”, som automatisk kan udledes af dem (skos:broaderTransitive)

SKOS tillader også specialisering af semantiske relationer (se afsnit 4.7). SKOS foreslår dog ikke et standardsæt af sådanne specialiseringer. Det forventes i stedet, at disse kommer fra andre standarder og retningslinjer, f.eks. ISO 2788.

termers syntaktiske sammensætning

ISO 2788 indeholder ækvivalensrelationer, der knytter termer til kombinationer af andre termer (USE +, UF +), som coal mining USE coal + mining.

SKOS har som standard ingen funktion til at danne forbindelser af typen én til mange, begreb til begreb eller begreb til betegnelse. Ekstensioner, der kan rette op på denne mangel vil måske blive udtænkt, f.eks. ved at specialisere skos:Concept eller skosxl:Label.

knudebetegnelser

Rækker i tesaurusser spiller en vigtig rolle med hensyn til at gengive termhierarki i en systematisk visning. De er f.eks. det væsentligste udtryksmiddel for komplekst organiserede tesaurusser.

SKOS tillader repræsentation af begrebsgrupperinger. Men fokus er på begrebsniveau, og der gives ingen konstruktion, der peger mod specifik visningsstrategi. Samlinger i SKOS er derfor ikke eksplicit relaterede til ét overordnet begreb. Denne forbindelse skal (gen-)oprettes via en specifik visningsalgoritme eller ved at bruge en ad hoc-ekstension.

dokumentariske noter

ISO 2788 foreslår, at man knytter målbeskrivelser og definitioner til termer ved hjælp af forkortelsen SN.

SKOS har flere type noter til begreber: målbeskrivelser, definition, historiknoter osv. Disse egenskaber kan udbygges yderligere, så de passer til specifikke krav.

notationer

ISO-retningslinjerne sigter mod standardtesaurusser. Derfor forholder de sig ikke til spørgsmålet om notationer, som bruges i andre typer KOS’er.

Der findes to måder at tilknytte notationer – enten via egenskaben skos:notation eller ved at bruge enkle betegnelsesegenskaber (se afsnit 4.6).

begrebssystemer

I ISO 2788 er der ingen eksplicit metode til at gengive selve tesaurusserne, eftersom der kun tages hensyn til termer i forbindelse med ét indekseringsvokabularium.

SKOS er influeret af muligheden for at have flere KOS’er side om side. Selv om SKOS i sig selv ikke har særlige funktioner til at repræsentere dem eksplicit og knytte beskrivende metadata til dem, foreslås det at bruge klassen ConceptScheme til dette formål. Forbindelsen mellem en KOS og dens begreb er eksplicit, og det samme begreb kan tilhøre flere KOS’er.

topbegreber

Ved visningen af en tesaurus kan forkortelsen TT bruges til at henvise til et hierarkis øverste term, som de viste termer tilhører.

skos:hasTopConcept bruges til at relatere et begrebssystem til de begreber, der udgør søgeindgange til dets hierarki.

håndtering af sprog

I ISO 2788 bør termer være på samme sprog.

ISO 5964 foreslår, at flere sprog kan eksistere side om side i den samme tesaurus. Termerne fra hvert sprog danner dog uafhængige dele af tesaurussen og er kun relateret til hinanden af oversættelseslinks.

Fra et modelperspektiv er begreber uafhængige af sprog. Et begreb kan have betegnelser på forskellige sprog. Betegnelser kan erklæres som sprogspecifikke ved hjælp af RDF’s literale sprogmærker. Flere sprog kan derfor integreres i samme begrebssystem.

parringsrelationer mellem KOS’er

Semantiske parringsrelationer omtales kun i ISO 5964 i forbindelse med flersprogede tesaurusser som en yderligere karakteristik af oversættelsen. De omtalte typer er:

  • Præcis ækvivalens.
  • Upræcis ækvivalens – termer udtrykker den samme generelle idé, men deres mening er ikke fuldstændig identisk.
  • Delvis ækvivalens – meningen med én term er bredere end en anden.
  • Enkel-til-mange – et begreb, udtrykt af én term i kildesproget, er udtrykt af en kombination af termer i målsproget.

Bemærk, at ISO 5964 forholder sig til mange emner, der ligger uden for SKOS’ område, f.eks. overførsel af hierarkiske og associative relationer fra et sprog til et andet eller udtænkning af nye termer på et sprog, når der ikke kan findes en semantisk ækvivalent for termer på et andet sprog.

Parringsrelationer i SKOS er en relativt god afspejling af ISO 5964-typerne. skos:exactMatch og skos:closeMatch adskiller f.eks. tilfælde, hvor ækvivalens er helt gyldig fra et semantisk perspektiv, fra andre tilfælde, hvor semantisk ækvivalens ikke er eksakt, men kan accepteres af et givet program.

Til individuelle flersprogede KOS’er, kan ækvivalente forbindelser i ISO 5964 dog repræsenteres i SKOS ved at vedhæfte ækvivalente termer som betegnelser for det samme begreb. Dette passer på fremgangsmåden i ISO 5964, hvor det kun er nødvendigt at sammenkæde foretrukne termer. Sådanne forbindelser kan overføres på det begrebsniveau, som disse termer udtrykker. Men ISO 5964 tillader også at relatere ikke-foretrukne termer (f.eks., "DNA"@en og "ADN"@fr). I SKOS kan sådanne forbindelser kun repræsenteres ved hjælp af SKOS-XL-ekstensionen.

Oversættelser af enkel-til-mange kan ikke repræsenteres i SKOS. Ved syntaktisk kombination af termer i en tesaurus kræves der ekstensioner af standardmodellen.

Bemærk, at ISO 5964 grundigt omtaler visningen af flersprogede tesaurusser. Det forholder man sig ikke til i SKOS. Men hvad angår simple tesaurusser kan visninger i ISO 5964 implementeres oven på SKOS-data – med undtagelse af tilfælde med mapping af enkel-til-mange, som er nævnt ovenfor.