Ontologier
Et hyttefelt skal få en kunnskapsbase. Den skal kunne svare på om hytte 7 er ledig i uke 28, om peisen hører til stua, og hva en helg koster. Før den første setningen skrives i førsteordens logikk, må vi bestemme hvilke begreper som finnes, og hvordan de henger sammen. Det valget er en ontologi (ontology): en formell beskrivelse av kategoriene, objektene og relasjonene i et domene. Arbeidet med å lage den kalles ontologisk ingeniørarbeid (ontological engineering).
En domene-ontologi dekker ett område, som hyttefeltet eller en musikkforretning. Over den ligger en øvre ontologi (upper ontology): det generelle rammeverket med fysiske objekter, hendelser, tid og abstrakte objekter som tall og mål. Domenebegrepene henges på under. Figuren viser en forenklet øvre ontologi vi har laget for kapitlet. Ekte øvre ontologier er langt større.
Hvorfor bry seg om toppen? To kunnskapsbaser som bygger på samme øvre ontologi, kan kobles sammen. Er både en booking og en konsert hendelser, gjelder reglene om hendelser og tid for begge, og de skrives bare én gang. Et generelt rammeverk skal derfor dekke mange domener, og det skal kunne utvides med spesialtilfeller uten at toppen må skrives om. Det er vanskeligere enn det høres ut: nesten hver generalisering har unntak, og en ontologi som skal brukes av mange, må tåle at domenene ser verden litt ulikt.
Ingen ontologi er fullstendig, og store ontologier blir til på ulike måter. Noen skrives av fageksperter aksiom for aksiom, andre hentes automatisk ut av oppslagsverk og databaser, og noen bygges av mange frivillige som legger inn ett faktum om gangen. Den første veien gir høy kvalitet og liten dekning, de andre stor dekning og mer støy.
RegneeksempelPlasser tre begreper fra hyttefeltet i den øvre ontologien.Vis løsningSkjul løsning
Steg 1. Hytte 7 tar plass og kan tas på. Den er et fysisk objekt, og hører hjemme under Hytter.
Steg 2. Bookingen fra 3. til 7. juli har en start og en slutt. Den er en hendelse, og den varer et tidsintervall.
Steg 3. Prisen per natt er et tall knyttet til en enhet, kroner. Den er et mål, altså et abstrakt objekt.
Hva er hovedoppgaven til en øvre ontologi?