22.08.2013 Views

Begreppsverktyg för M&S-portalen - Institutionen för datavetenskap ...

Begreppsverktyg för M&S-portalen - Institutionen för datavetenskap ...

Begreppsverktyg för M&S-portalen - Institutionen för datavetenskap ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Begreppsverktyg</strong>et <strong>för</strong><br />

M&S-<strong>portalen</strong><br />

Jon Larsson<br />

11 juni 2007<br />

Examensarbete i <strong>datavetenskap</strong>, 20 poäng<br />

Handledare på CS-UmU: Jan-Erik Moström<br />

Examinator: Per Lindström<br />

Umeå Universitet<br />

<strong>Institutionen</strong> <strong>för</strong> <strong>datavetenskap</strong><br />

SE-901 87 UMEÅ<br />

SWEDEN


Sammanfattning<br />

För att lösa kommunikationsproblem på grund av att termer tolkas olika har en webbapplikation<br />

skapats. Applikationen, kallad <strong>Begreppsverktyg</strong>et, kan hantera terminologier där<br />

termer inom ett fackområde kopplas till definitioner av begrepp. Inom en terminologi kan<br />

flera termer kopplas till ny definition av ett begrepp, eller en existerande. Termer kan ges<br />

prioritetsordning <strong>för</strong> användning med en skala från rekommenderad till <strong>för</strong>bjuden. Webbapplikationen<br />

kartlägger när en term med en viss användning börjar användas, och när<br />

denna användning slutar att gälla. Begrepp kan definieras genom textuella beskrivningar<br />

och genom relationer till andra begrepp. Definitioner av begrepp kan hittas genom att<br />

söka efter termer och egenskaperna <strong>för</strong> hur termer används i terminologier. Syftet med<br />

denna funktionalitet är att tillåta folk att använda termer som de är vana vid, och ge<br />

andra möjligheten att <strong>för</strong>stå vad man menar med dem. Resource Description Framework<br />

(RDF) och en speciell vokabulär används <strong>för</strong> lagring av data.<br />

Abstract<br />

In an effort to solve problems with natural language communication due to different<br />

interpretations of terms, a prototype of a web based application was developed. The<br />

application called <strong>Begreppsverktyg</strong>et is capable of handling terminologies where usage<br />

of terms in a special area of interest is mapped against definitions of concepts. In a<br />

terminology several terms can be mapped to a new definition of a concept, or an existing<br />

one. Terms can be prioritized in a range representing recommended for use to forbidden<br />

for use. The application keeps track of when a certain term with a certain priority<br />

starts being used in a terminology, and when this usage becomes deprecated. Concepts<br />

can be described using textual descriptions and relations to other concepts. Definitions<br />

of concepts can then be found by searching for terms and properties of their usage in<br />

terminologies. The purpose of this functionality is to allow people to use terms as they<br />

are used to, and giving others the possibility to understand their intended meaning.<br />

Triplets in Resource Description Framework (RDF) are used for storage of the data<br />

organized by a custom vocabulary.


Innehåll<br />

1 Introduktion 1<br />

1.1 Försvarets materielverk . . . . . . . . . . . . . . . . . . . . . . . . . . . 1<br />

1.2 SMART-lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1<br />

1.3 Begrepp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2<br />

1.4 Homonymer och synonymer . . . . . . . . . . . . . . . . . . . . . . . . . 3<br />

1.5 Terminologi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3<br />

2 Problembeskrivning 5<br />

2.1 Syfte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br />

2.2 Målsättning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br />

2.3 Relaterat arbete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br />

3 Den semantiska webben och begrepp 7<br />

3.1 Inledning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

3.2 Språk <strong>för</strong> den semantiska webben . . . . . . . . . . . . . . . . . . . . . . 9<br />

3.3 Diskussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16<br />

4 Genom<strong>för</strong>ande 17<br />

4.1 Behovsanalys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />

4.2 Informationsmodell <strong>för</strong> begrepp . . . . . . . . . . . . . . . . . . . . . . . 19<br />

4.3 Datamodellen <strong>för</strong> begreppsverktyget . . . . . . . . . . . . . . . . . . . . 20<br />

4.4 Webbapplikationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br />

5 Resultat 29<br />

5.1 Sökning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29<br />

5.2 Terminologier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29<br />

5.3 Nyheter och kommentarer . . . . . . . . . . . . . . . . . . . . . . . . . . 32<br />

5.4 Visa begrepp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35<br />

6 Slutsatser 37<br />

6.1 Begränsningar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37<br />

6.2 Fortsatt arbete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37<br />

iii


iv INNEHÅLL<br />

7 Erkännanden 39<br />

Referenser 41<br />

A Frågor <strong>för</strong> användarundersökning 43


Figurer<br />

1.1 Ogdens och Richards triangel . . . . . . . . . . . . . . . . . . . . . . . . 2<br />

1.2 Begreppstetraeder, Ogdens och Richards triangel utökad med en begreppsbeskrivning<br />

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2<br />

3.1 Exempel på ett semantiskt nät . . . . . . . . . . . . . . . . . . . . . . . 9<br />

3.2 Exempel på en RDF-graf . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />

3.3 Exempel på användning av blanka noder . . . . . . . . . . . . . . . . . 10<br />

3.4 Klasser och instanser i RDF Schema . . . . . . . . . . . . . . . . . . . . 12<br />

3.5 Klasser och instanser i OWL . . . . . . . . . . . . . . . . . . . . . . . . 14<br />

3.6 Exempel på möjligheter med vokabulären SKOS . . . . . . . . . . . . . 15<br />

4.1 Informationsmodell <strong>för</strong> begrepp på FMV . . . . . . . . . . . . . . . . . 19<br />

4.2 Vokabulär <strong>för</strong> informationsmodellen i RDF . . . . . . . . . . . . . . . . 22<br />

4.3 Uppdelning av programmet i lager . . . . . . . . . . . . . . . . . . . . . 24<br />

4.4 Abstrakt struktur <strong>för</strong> användning av begreppsverktyget . . . . . . . . . 25<br />

4.5 Klassdiagram <strong>för</strong> lagret logik <strong>för</strong> gränssnitt . . . . . . . . . . . . . . . . 26<br />

5.1 Enkel sökning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30<br />

5.2 Utökad sökning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30<br />

5.3 Listning av terminologier . . . . . . . . . . . . . . . . . . . . . . . . . . 31<br />

5.4 Skapa ny terminologi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31<br />

5.5 Termanvändning <strong>för</strong> terminologi . . . . . . . . . . . . . . . . . . . . . . 32<br />

5.6 Termanvändning <strong>för</strong> terminologi . . . . . . . . . . . . . . . . . . . . . . 33<br />

5.7 Redigera termanvändning . . . . . . . . . . . . . . . . . . . . . . . . . . 33<br />

5.8 Nyheter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34<br />

5.9 Kommentarssystemet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34<br />

5.10 Information om ett begrepp . . . . . . . . . . . . . . . . . . . . . . . . . 35<br />

v


vi FIGURER


Kapitel 1<br />

Introduktion<br />

Detta examensarbete har syftet att skapa en prototyp <strong>för</strong> en webbapplikation <strong>för</strong> begreppshantering,<br />

ett begreppsverktyg. Tanken med webbapplikationen är att utöka funktionaliteten<br />

hos en normal ordlista.<br />

Detta kapitel, introduktion, presenterar kort <strong>för</strong>svarets materielverk och SMART-lab.<br />

Därefter presenteras grundläggande kommunikationsteori relevant <strong>för</strong> examensarbetet,<br />

samt några problem som termanvändning i naturligt språk ger upphov till.<br />

I kapitel 2, problembeskrivning, beskrivs de grundläggande problemen som finns<br />

med begreppshantering och målet <strong>för</strong> examensarbetet. I detta kapitel ges även syfte och<br />

målsättning <strong>för</strong> webbapplikationen en ut<strong>för</strong>ligare beskrivning.<br />

Kapitel 3, den semantiska webben och begrepp, är en <strong>för</strong>djupning i hur teknik <strong>för</strong><br />

den semantiska webben kan användas <strong>för</strong> att modellera och hantera begrepp.<br />

I kapitel 4, genom<strong>för</strong>ande, demonstreras hur jag har gått till väga <strong>för</strong> att nå målen<br />

med webbapplikationen. Följande kapitel, resultat, visar upp begreppsverktyget och<br />

vilken funktionalitet det har.<br />

I kapitel 6, slutsatser, diskuteras lösningens <strong>för</strong>tjänster, begränsningar och omedelbara<br />

<strong>för</strong>bättringar som bör, eller kan göras.<br />

1.1 Försvarets materielverk<br />

Försvarets materielverk är en central <strong>för</strong>valtningsmyndighet med uppgift att anskaffa,<br />

vidmakthålla och avveckla materiel och <strong>för</strong>nödenheter på uppdrag av Försvarsmakten,<br />

samt att inom detta område stödja Försvarsmaktens verksamhet. Myndigheten biträder<br />

Försvarsmakten i fråga om långsiktig materiel<strong>för</strong>sörjningsplanering samt materielsystemkunskap.[2]<br />

Försvarets materielverk och är en civil myndighet och <strong>för</strong>kortas ofta<br />

FMV.<br />

1.2 SMART-lab<br />

SMART-lab[8] är en avdelning på FMV:s huvudkontor i Stockholm som primärt erbjuder<br />

tjänster inom verksamhetsanalys. På SMART-lab finns även lokaler <strong>för</strong> ledningsövningar<br />

och tekniska demonstrationer. Ett av SMART-lab:s uppdrag är att skapa en webbaserad<br />

portal[7] <strong>för</strong> samverkan inom området modellering och simulering (M&S) inom Försvarsmakten.<br />

Portalen ska ge ett dagligt stöd <strong>för</strong> dess användare och inte bara agera som en<br />

1


2 Kapitel 1. Introduktion<br />

samling med information.<br />

1.3 Begrepp<br />

Ett begrepp kan ses som den mentala bild som en person har skapat genom tolkning<br />

av en <strong>för</strong>eteelse. För att kommunicera ett begrepp används benämningar, t.ex. ord,<br />

där mottagaren <strong>för</strong>hoppningsvis uppfattar de begrepp som avsändaren avsåg. Eftersom<br />

vi inte klarar av tankeöver<strong>för</strong>ing kan vi dock aldrig sägas kommunicera exakt samma<br />

begrepp, vi får acceptera skillnader upp till en viss nivå.<br />

Inom semiotiken finns en modell (figur 1.1) presenterad av Ogden och Richards<br />

(1923) som stämmer in på denna syn på begrepp. Modellen kan visualiseras som en<br />

triangel där begrepp motsvaras av referens, <strong>för</strong>eteelse av referent och benämning av<br />

symbol. Triangelns kanter symboliserar två kausala relationer mellan referens och symbol<br />

respektive referens och referent samt en tillskriven relation mellan symbol och referent.<br />

Figur 1.1: Ogdens och Richards triangel<br />

För att länka en benämning till rätt begrepp kan en begreppsbeskrivning användas.<br />

Om Ogden och Richards triangel utökas med begreppsbeskrivning får den formen av<br />

en tetraeder (figur 1.2). Beskrivningen, benämningen och <strong>för</strong>eteelsen får kausala (mer<br />

direkta) relationer till begrepp, och får tillskrivna (indirekta) relationer inbördes.<br />

Figur 1.2: Begreppstetraeder, Ogdens och Richards triangel utökad med en begreppsbeskrivning<br />

Begrepp, benämning och <strong>för</strong>eteelse i figur 1.2 har några ofta använda synonymer i<br />

sammanhanget, dessa redovisas nedan. Fram<strong>för</strong> allt används ofta term i denna rapport<br />

i stället <strong>för</strong> benämning.


1.4. Homonymer och synonymer 3<br />

benämning symbol, term<br />

begrepp referens<br />

<strong>för</strong>eteelse referent<br />

1.4 Homonymer och synonymer<br />

Benämningar som kan betyda flera saker, det vill säga att de länkar till mer än ett<br />

begrepp, kallas homonymer. Exempelvis kan träd benämna både växten träd som man<br />

sågar plankor från, och de träd som används inom matematiken och består av mängder<br />

av noder och kanter. Sådana tvetydigheter kan ofta redas ut med hjälp av sammanhanget<br />

i vilket benämningen används, men det finns mindre självklara fall än det givna exemplet.<br />

Om flera benämningar länkar till samma begrepp är de synonymer.<br />

1.5 Terminologi<br />

I denna rapport används ordet terminologi <strong>för</strong> en samling termer (benämningar) och<br />

information om deras användning inom ett fackområde.


4 Kapitel 1. Introduktion


Kapitel 2<br />

Problembeskrivning<br />

Kostnaden <strong>för</strong> dåligt definierade termer kan inte enkelt skattas, men en fingervisning<br />

ges av Björn Nilsson som har över två decenniers erfarenhet inom området. Han ställde<br />

en fråga under en lunch med ett antal andra personer som också hade god inblick i<br />

problemen med dåligt definierade termer:<br />

Den fråga jag ställde kring bordet var kostnaden <strong>för</strong> <strong>för</strong>svarsmakten att nyttja två<br />

termer, där de underliggande begreppen inte var väl definierade. Tidsperioden avsåg de<br />

senaste fem åren <strong>för</strong> <strong>för</strong>måga och tio år <strong>för</strong> funktion. De svar jag fick hade viss varians,<br />

men vi enades omkring 200 MSEK i kostnad <strong>för</strong> ett icke väldefinierat <strong>för</strong>mågebegrepp.<br />

Det stämmer rätt väl med min egen skattning sedan tidigare. Kostnaden <strong>för</strong> att ha c:a<br />

tretton olika definitioner eller begrepp <strong>för</strong> termen funktion, skattades till över det dubbla,<br />

dvs. minst 400MSEK.<br />

De skattade kostnaderna inbegriper <strong>för</strong>lorad arbetstid i olika analyser och utvecklingskostnader,<br />

men inte indirekta kostnader.<br />

Försvarsmakten är FMV:s överlägset största kund, vilket gör att sådana problem<br />

även får genomslag på FMV. Exemplet ger också ett mått på värdet i att använda väl<br />

definierade termer.<br />

En annan sida av kommunikationsproblemet vid användning av termer är <strong>för</strong>ekomsten<br />

av synonymer och homonymer. Även om en term har fått en beskrivning som klart<br />

definierar ett begrepp, kan samma term användas <strong>för</strong> andra begrepp — homonym —<br />

eller så kan andra personer <strong>för</strong>edra att använda andra termer <strong>för</strong> begreppet - synonymer.<br />

Ofta blir problematiken med synonymer och homonymer tydlig när personer från<br />

olika organisationer eller delar av organisationer ska kommunicera. Inom FMV finns<br />

en uppdelning i olika verksamhetsområden och projekt. Sådana uppdelningar kan vara<br />

orsak till att skilda kulturer <strong>för</strong> användning av termer växer fram internt. FMV måste<br />

också kunna kommunicera med bland annat <strong>för</strong>svarsmakten och <strong>för</strong>svarsindustri vilket<br />

ger ännu fler källor till homonymer och synonymer.<br />

2.1 Syfte<br />

Behovet av ett system <strong>för</strong> hantering av begrepp inom FMV är tydligt, och ett sådant<br />

system kan främjas av ett IT-stöd som <strong>för</strong>enklar hanteringen.<br />

För SMART-lab:s del är behovet av ett IT-stöd <strong>för</strong> begreppshantering mer specifikt;<br />

i M&S-<strong>portalen</strong> ska finnas ett stöd, ett begreppsverktyg, <strong>för</strong> <strong>för</strong>ståelse och korrekt<br />

användning av benämningar.<br />

5


6 Kapitel 2. Problembeskrivning<br />

Detta examensarbete har syftet att ta fram en prototyp <strong>för</strong> ett begreppsverktyg <strong>för</strong><br />

M&S-<strong>portalen</strong>. Prototypen ska också kunna användas <strong>för</strong> utvärdering i FMV:s uppdrag<br />

<strong>för</strong> begreppshantering.<br />

I examensarbetet ingår också att delta i arbetet med att undersöka vilka krav på och<br />

behov av det finns <strong>för</strong> ett IT-stöd <strong>för</strong> begreppshantering.<br />

2.2 Målsättning<br />

<strong>Begreppsverktyg</strong>et ska kunna presentera definierade begrepp, samt vilka termer som<br />

används <strong>för</strong> dessa. För att lösa delproblemet med homonymer och synonymer är information<br />

om termanvändning <strong>för</strong> begrepp centralt. <strong>Begreppsverktyg</strong>et ska kunna svara på<br />

frågor som t.ex.:<br />

Anfallsvinkel används i ett dokument skapat inom projektet nytt flygplan 2007-03-15,<br />

vad menade man när man skrev det?<br />

<strong>Begreppsverktyg</strong>et ska alltså vara en kartläggning av hur termer används <strong>för</strong> att<br />

benämna begrepp över fackområden och tid.<br />

Datamängden <strong>för</strong> begreppsverktyget ska inte vara statisk eller centralt administrerad,<br />

normala användare ska kunna lägga in nya begrepp och termanvändningar. På grund av<br />

detta är inte ett fullskaligt begreppsmodelleringsverktyg en målsättning.<br />

Det ska vara möjligt att ta del av datamängden från andra program än genom<br />

begreppsverktyget, t.ex. <strong>för</strong> integrering i Microsoft Office och övriga delar på M&S<strong>portalen</strong>.<br />

2.3 Relaterat arbete<br />

Uppdraget begreppshantering är ett projekt som ut<strong>för</strong>s på FMV. Det har målet att<br />

undersöka hur begreppshantering ska ske inom FMV. Uppdraget arbetar bland annat<br />

med <strong>för</strong>slag på organisation, processer och informationsmodell <strong>för</strong> begreppshantering.<br />

Resultat från detta arbete är värdefullt som utgångspunkt vid utformningen av begreppsverktyget.


Kapitel 3<br />

Den semantiska webben och<br />

begrepp<br />

3.1 Inledning<br />

Det är svårt att finna en kort och bra definition på begreppet den semantiska webben.<br />

Den nuvarande webben är i mångt och mycket ett nät av dokument som spänns upp<br />

av länkar dokumenten i mellan. Uttrycket den semantiska webben användes av Tim<br />

Berner-Lee, direktör <strong>för</strong> W3C[14], <strong>för</strong> en vision där den nuvarande webben av dokument<br />

utökas till att vara ett nät av data uppspänt av relationer mellan data, en webb av data.<br />

I denna del av rapporten presenteras visionen den semantiska webben och några språk<br />

som har syftet att realisera den. Här beskrivs också viss teori <strong>för</strong> kunskapsrepresentation,<br />

och metoder <strong>för</strong> begreppsmodellering. Syftet är att undersöka vilka möjligheter den<br />

semantiska webben ger <strong>för</strong> begreppsmodellering och begreppshantering.<br />

3.1.1 Den semantiska webben<br />

En typisk hyperlänk på dagens webb ligger i ett HTML-dokument och pekar på ett<br />

annat. Ett HTML-dokument har syftet att definiera en <strong>för</strong> människor läsbar webbsida,<br />

medan det <strong>för</strong> ett program inte är mycket mer än mängd godtycklig text med viss struktur.<br />

Strukturen innebär att programmet får information om hur texten ska presenteras,<br />

t.ex. vad som är en rubrik, vad som är ett textstycke och vad som är en hyperlänk och<br />

vad den ska peka på.<br />

Vad som inte är uppenbart <strong>för</strong> ett program är vilken typ av information texten innehåller<br />

eller var<strong>för</strong> dokumentet innehåller en viss hyperlänk. Som exempel kan man<br />

tänka sig recensioner av restauranger. En sådan recension kan tänkas bestå av en recensionstext,<br />

ett betyg på skalan 1 till 5, och en referens till restaurangens hemsida. Denna<br />

information kan lätt publiceras på webben i ett HTML-dokument, och en läsare kan ta<br />

del av recensionstexten och betyget samt följa en hyperlänk från detta dokument till<br />

restaurangens hemsida.<br />

Ett program kan inte direkt se vad som är ett betyg, vad som är en recensionstext<br />

och vad som är en referens till en restaurang. I visionen <strong>för</strong> den semantiska webben är<br />

sådan data direkt tillgänglig <strong>för</strong> ett program och dess betydelse är specificerad.<br />

När data och dess betydelse är tillgängligt <strong>för</strong> datorprogram och inte bara människor<br />

finns möjlighet att ut<strong>för</strong>a uppgifter mer automatiserat. I det tidigare exemplet med<br />

7


8 Kapitel 3. Den semantiska webben och begrepp<br />

recensioner blir det möjligt att kombinera recensioner på restauranger med adresser <strong>för</strong><br />

restauranger, <strong>för</strong> att t.ex. hitta restauranger i en viss stad som har fått ett snittbetyg<br />

över 4.<br />

För att det ska gå att kombinera information på detta sätt måste ett program veta att<br />

både en adress och en recension faktiskt gäller <strong>för</strong> samma restaurang. Detta görs genom<br />

att använda en URI som en globalt unik identifierare. URL-adressen <strong>för</strong> en restaurangs<br />

hemsida kan vara ett lämpligt val.<br />

På detta sätt blir den semantiska webben som en enda kollektiv relationsdatabas<br />

med URI-identifierare som nycklar.<br />

3.1.2 Kunskapsrepresentation<br />

Att ordna objekt i kategorier är en vital del av kunskapsrepresentation [6]. En kategori är<br />

en samling objekt eller medlemmar, som har vissa egenskaper gemensamt. Kategorier kan<br />

ordnas hierarkiskt i en taxonomi, där underkategorier ärver de <strong>för</strong> objekten utmärkande<br />

egenskaperna från respektive överkategori. Detta är ett kraftfullt sätt att <strong>för</strong>enkla och<br />

organisera en kunskapsbas.<br />

Förutom arv kan man vilja beskriva andra <strong>för</strong>hållanden kategorier emellan. Sådana<br />

<strong>för</strong>hållanden kan vara att två kategorier inte delar några medlemmar (disjunkta) eller<br />

att alla medlemmar <strong>för</strong> en kategori också finns i unionen av ett antal underkategorier<br />

(uttömmande komposition). Om underkategorierna i en uttömmande komposition också<br />

är disjunkta kallas det <strong>för</strong> en partition.<br />

När det gäller egenskaper <strong>för</strong> objekt kan man t.ex. prata om mått av olika slag som<br />

längd och vikt. En annan egenskap kan vara fysisk sammansättning, att ett objekt är<br />

en del av ett annat.<br />

Inom kunskapsrepresentation används ofta termen ontologi. Det finns olika definitioner<br />

<strong>för</strong> ontologi men i denna rapport används termen med följande definition:<br />

En ontologi definierar de vanliga ord och begrepp som används <strong>för</strong> att beskriva och<br />

representera ett kunskapsområde[1]<br />

Ett semantiskt nät kan representera kategorier, objekt och relationer mellan dessa.<br />

En typisk grafisk representation visar objekt och kategorier som ovaler eller rutor och<br />

relationer som märkta pilar[6].<br />

Figur 3.1 visar ett exempel på ett semantiskt nät. Detta semantiska nät innehåller<br />

kategorierna Hund, Katt och Fyrfotadjur, samt objekten Misse och Fido. Relationerna<br />

är delmängd av som anger att en kategori är en delmängd av en annan, medlem i som<br />

visar att ett objekt tillhör en kategori, samt ben som anger hur många ben som något<br />

har.<br />

Med tesaur menas i denna rapport en typ av ordlista där termer ges en definition<br />

och relaterade termer samt termer med bredare och smalare betydelse anges. Termer<br />

kan alltså ges en svagare typ av semantiska kopplingar mellan varandra. I en tesaur kan<br />

även synonyma termer listas, där en term är den som rekommenderas <strong>för</strong> användning.<br />

3.1.3 Begreppsmodellering<br />

Rapporten Metoder och principer i terminologiarbetet[4] beskriver ett sätt att strukturera<br />

upp arbetet vid begreppsmodellering. Arbetet baseras på att identifiera kännetecken<br />

<strong>för</strong> <strong>för</strong>eteelser som kan användas <strong>för</strong> att beskriva ett begrepp. Mycket av den tidigare<br />

beskrivna teorin <strong>för</strong> kunskapsrepresentation kan kännas igen i de beskrivna metoderna.<br />

Ett begrepp kan svara mot både en enstaka <strong>för</strong>eteelse och en kategori av <strong>för</strong>eteelser.


3.2. Språk <strong>för</strong> den semantiska webben 9<br />

Figur 3.1: Exempel på ett semantiskt nät<br />

Ett kännetecken <strong>för</strong> ett begrepp är oundvikligen ett annat begrepp — vi skulle omöjligen<br />

kunna uppfatta det annars — alltså kan vi beskriva ett begrepp genom hur det<br />

relaterar till andra begrepp.<br />

Rapporten Metoder och principer i terminologiarbetet[4] tar upp tre relationer mellan<br />

begrepp: associativ, generisk och partitiv. En generisk relation motsvarar arv mellan<br />

kategorier, t.ex. en hund är ett djur. En partitiv relation motsvarar fysisk sammansättning,<br />

t.ex. en bil består av 4 hjul och en motor.<br />

Begrepp som är associativt relaterade till varandra hör samman av ett eller annat<br />

semantiskt skäl. Dessa samband kan t.ex. vara orsak — verkan, ex. temperaturstegring<br />

— utvidgning eller verktyg — funktion, ex. hammare — spika.<br />

Att modellera samtliga kännetecken enligt modellen med begreppsrelationer är inte<br />

rimligt, eftersom man i sådana fall måste modellera hela världen. Antalet kännetecken<br />

måste begränsas och vid någon gräns måste man falla tillbaks till att ange kännetecken<br />

med benämningar <strong>för</strong> begrepp.<br />

3.2 Språk <strong>för</strong> den semantiska webben<br />

W3C, World Wide Web Consortium, som utvecklar standarder <strong>för</strong> webben, upprätthåller<br />

ett antal standarder som är intressanta <strong>för</strong> den semantiska webben. En färdig standard<br />

kallas <strong>för</strong> en W3C-rekommendation, ett arbetsutkast är grunden <strong>för</strong> en eventuell framtida<br />

rekommendation. I denna del <strong>för</strong>klaras överskådligt några rekommendationer och<br />

arbetsutkast som är intressanta med avseende på begreppshantering från W3C.<br />

3.2.1 RDF - Resource Description Framework<br />

RDF[12] är en W3C-rekommendation.<br />

I sin enklaste form är RDF ett sätt att beskriva egenskaper <strong>för</strong> någon resurs, t.ex.<br />

vem som var fotograf <strong>för</strong> en bild, alltså en form av metadata.<br />

Ett sätt att visualisera RDF-data är genom en riktad graf, med märkta noder och<br />

kanter (exempel, se figur 3.2).<br />

Formellt är en RDF-graf en samling satser med tre komponenter: subjekt, predikat<br />

och objekt.


10 Kapitel 3. Den semantiska webben och begrepp<br />

Figur 3.2: Exempel på en RDF-graf<br />

Ett subjekt är en URI-referens elller en blank nod. I exemplet är http://www.<br />

exempel.se/enBild.jpg en URI-referens som används som subjekt. En blank nod är<br />

användbar när man vill beskriva en egenskap med flera olika värden, i figur 3.3 beskrivs<br />

storleken <strong>för</strong> en bild med en blanknod som i sin tur har egenskaperna bredd och höjd.<br />

Ett predikat är en URI-referens. I exemplet används predikaten http://purl.org/<br />

dc/elements/1.1/type och http://purl.org/dc/elements/1.1/creator. Dessa kommer<br />

från en vanligt <strong>för</strong>ekommande vokabulär <strong>för</strong> att beskriva metadata, Dublin Core,<br />

och refereras med prefixnotation som ger mer läsbara URI-referenser. Notationen innebär<br />

att http://purl.org/dc/elements/1.1/creator kan <strong>för</strong>kortas till dc:creator<br />

eftersom prefixet dc är definierat som http://purl.org/dc/elements/1.1/.<br />

Ett objekt kan vara en URI-referens, en blank nod eller ett värde kallat literal. Ett<br />

sådant värde består av en sträng som kan vara märkt med språkinformation eller en URIreferens<br />

till en datatyp. I exemplet är URI-referensen http://www.exempel.se/pelle<br />

och textsträngen porträtt objekt.<br />

Reification - satser om satser<br />

Figur 3.3: Exempel på användning av blanka noder<br />

RDF definierar ett sätt att använda en hel sats som subjekt eller objekt. Detta kan<br />

vara användbart t.ex. <strong>för</strong> att kommentera givna fakta. Att skapa en sådan sats kallas<br />

reification.<br />

Exempel<br />

Det finns ett antal serialiseringsformat <strong>för</strong> RDF, nedan beskrivs grafen i figur 3.2 i N3<br />

och XML som är två vanliga notationer <strong>för</strong> att lagra en RDF-graf i en textfil.<br />

N3-notation:


3.2. Språk <strong>för</strong> den semantiska webben 11<br />

@prefix dc: .<br />

@prefix ex: .<br />

ex:enBild.jpg dc:type "porträtt" .<br />

ex:enBild dc:creator ex:pelle .<br />

XML-notation:<br />

<br />

<br />

porträtt<br />

<br />

<br />

<br />

3.2.2 RDF’s vocabulary description language: RDF Schema<br />

RDF Schema[11], ofta <strong>för</strong>kortat RDFS, är ett språk <strong>för</strong> att beskriva vokabulärer <strong>för</strong><br />

användning i RDF. Ofta används benämningen RDF Schema tvetydigt, dels <strong>för</strong> själva<br />

språket och dels <strong>för</strong> de vokabulärbeskrivningar det används <strong>för</strong>. I denna rapport benämner<br />

RDF Schema själva språket. En vokabulär i RDF Schema definieras i sig med RDF.<br />

RDF Schema är en W3C-Rekommendation.<br />

I RDF Schema talar man om klasser och instanser. En klass är en mängd med<br />

instanser, detta <strong>för</strong>hållande liknar det mellan kategorier och objekt som är vanligt inom<br />

teori <strong>för</strong> kunskapsrepresentation.<br />

RDF används <strong>för</strong> att ange egenskaper <strong>för</strong> instanser, emellertid är själva egenskaperna<br />

godtyckliga — från en dators perspektiv betyder de ingenting. RDF Schema är ett<br />

verktyg <strong>för</strong> att kunna beskriva egenskaper och de klasser av instanser som egenskaperna<br />

beskriver.<br />

Klasser och instanser<br />

I RDF Schema finns en generös syn på klasser och instanser, en klass kan vara en instans<br />

av sig själv. RDF Schema ger möjlighet att definiera att en klass är en underklass till<br />

en annan. Då gäller att om C är en underklass till C’ så är alla instanser av C också<br />

instanser av C’. Figur 3.4 visar klasserna Hund och Katt som underklasser till Fyrbenta<br />

djur som i sin tur är underklass till Djur.<br />

Egenskaper<br />

Egenskaper kan tilldelas klasser som definitionsmängd och värdemängd. Definitionsmängden<br />

anger de instanser kan ha egenskapen och värdemängden anger de instanser<br />

som kan utgöra värdet på egenskapen. I praktiken innebär detta att en RDF-sats<br />

som anger en egenskap har ett subjekt från definitionsmängden och ett objekt från<br />

värdemängden. Predikatet anger vilken egenskap det är.<br />

Egenskaper kan även vara underegenskaper, om P är en underegenskap till P’ så är<br />

alla resurser som är relaterade av P också relaterade av P’.


12 Kapitel 3. Den semantiska webben och begrepp<br />

Figur 3.4: Klasser och instanser i RDF Schema


3.2. Språk <strong>för</strong> den semantiska webben 13<br />

3.2.3 OWL - Web Ontology Language<br />

OWL [10] är ett språk <strong>för</strong> att skapa ontologier baserat på forskningsområdet description<br />

logic. Det är indelat i tre varianter, OWL Lite, OWL DL och OWL Full. Skillnaden<br />

den emellan är i stort att OWL Lite har färre konstruktioner än OWL DL och OWL<br />

Full, samt att OWL Full tillåter konstruktioner som inte ger garanterat beräkningsbara<br />

slutledningar.<br />

Klasser och instanser<br />

Det går att definiera en klass genom att begränsa dess instanser utifrån instansernas<br />

egenskaper. Det går att begränsa utifrån antal egenskaper av en viss typ, värdet på en<br />

egenskap och att alla eller minst en egenskap ska ha ett värde av en viss typ.<br />

Figur 3.5 visar hur en begränsning kan användas <strong>för</strong> att ange att något är ett fyrbent<br />

djur. Djur är en klass med samtliga djur. Begränsning är en klass med två alternativa<br />

begränsningar <strong>för</strong> egenskaper. Det ena alternativet <strong>för</strong>utsätter att det finns en egenskap<br />

harBen som anger att något har ett visst ben. Begränsningen kan därmed sättas genom<br />

att säga att alla instanser måste ha fyra värden <strong>för</strong> harBen. Det andra alternativet<br />

<strong>för</strong>utsätter att det finns en egenskap antalBen som anger hur många ben något har.<br />

Begränsningen blir då att alla instanser måste ha värdet 4 <strong>för</strong> egenskapen antalBen, och<br />

kan <strong>för</strong>utom olika djur tänkas innehålla sådant som bord och stolar.<br />

På detta vis kan man t.ex. ange att en hund är ett djur och har fyra ben, genom<br />

att låta klassen Hund vara en underklass till denna begränsning, samt en underklass till<br />

klassen Djur.<br />

Klasser kan också definieras med mängdoperationerna snitt, union och komplement.<br />

För att ytterligare beskriva en klass kan man ange att en klass är disjunkt med en annan<br />

d.v.s. att inga instanser ingår i båda klasserna (se Katt och Hund i figur 3.5).<br />

Egenskaper<br />

Egenskaper kan utöver värdemängd och definitionsmängd, som går att bestämma i RDF<br />

Schema, ges egenskaper som ger större möjlighet till slutledningar. Egenskaper kan vara<br />

transitiva, symmetriska, funktioner, inverser av andra egenskaper och inverterade funktioner.<br />

3.2.4 SKOS - Simple Knowledge Organisation Systems<br />

SKOS är en vokabulär <strong>för</strong> att skapa något som närmast kan sägas vara tesaurer. På en<br />

ganska enkel nivå tillåter SKOS begreppsmodellering och hantering av termer.<br />

Den viktigaste klassen i SKOS är Concept, begrepp modellerade i SKOS är alla<br />

instanser av denna klass. SKOS ger möjlighet att modellera begrepp genom att sätta<br />

relationerna bredare, smalare och relaterad. Dessa relationer är ganska lösa, t.ex.<br />

bredare-relationen kan — men behöver inte — betyda att något är en generalisering av<br />

något annat. SKOS är ett W3C arbetsutkast.<br />

Vidare kan man märka upp ett begrepp med en rekommenderad term, och alternativa<br />

termer. Man kan också ge begreppet en formell definition i samma stil som i en vanlig<br />

ordlista.<br />

Figur 3.6 visualiserar en stor del av de möjligheter som SKOS ger. Figuren innehåller<br />

begreppen hund, katt samt fyrfotadjur. Relationerna är märkta enligt prefixnotation <strong>för</strong><br />

RDF, och är <strong>för</strong>klarade i figuren.


14 Kapitel 3. Den semantiska webben och begrepp<br />

Figur 3.5: Klasser och instanser i OWL<br />

SKOS definierar något som kallas ett Concept-scheme, vilket är en samling av begrepp.<br />

För att sätta ett begrepp i en sådan samling ger man begreppet egenskapen<br />

skos:inScheme med samlingen som värde. I en hierarki av begrepp med bredare/smalare<br />

relationer kan man i begreppssamlingen länka in toppnoden <strong>för</strong> att ge datorprogram ett<br />

effektivt sätt att hitta dessa.<br />

I SKOS finns möjligheter att länka mellan dokument och begrepp, t.ex. att ett dokument<br />

har ett begrepp som huvudämne. Vokabulären ger också möjlighet att länka till<br />

ett dokument som ger en beskrivning av själva begreppet.<br />

3.2.5 Slutledning i RDF<br />

Givet en RDF-graf, som använder vokabulärer definierade i OWL eller RDFS, med ett<br />

antal givna satser, kan det finnas satser som är sanna men som inte är direkt uttryckta.<br />

Till exempel om klassen Hund är definierad som en underklass till Djur, och en resurs är<br />

en instans av Hund. Satsen som anger att resursen också är en instans av Djur behöver<br />

inte vara direkt uttryckt utan kan slutledas utifrån den ontologi som definierar de båda<br />

klasserna.<br />

En ontologi beskriven i OWL kan ge fler möjligheter till slutledningar.<br />

3.2.6 Sökning i RDF-grafer — SPARQL och RDQL<br />

W3C har skapat två språk <strong>för</strong> att söka i rdf-grafer, SPARQL[13] och dess <strong>för</strong>egångare<br />

RDQL[9]. Båda dessa språk ger möjlighet att matcha mönster i rdf-grafer, men SPARQL<br />

ger ytterligare möjligheter <strong>för</strong> denna matchning och möjligheter att jäm<strong>för</strong>a diverse


3.2. Språk <strong>för</strong> den semantiska webben 15<br />

Figur 3.6: Exempel på möjligheter med vokabulären SKOS


16 Kapitel 3. Den semantiska webben och begrepp<br />

datatyper. En implementation av SPARQL behöver inte ansvara <strong>för</strong> slutledningar utifrån<br />

ontologier, utan kan <strong>för</strong>lita sig på att det system som tillhandahåller satserna också ut<strong>för</strong><br />

slutledningar i de fall det är önskvärt.<br />

3.3 Diskussion<br />

Eftersom RDFS och OWL ger konstruktioner som verkar passa <strong>för</strong> begreppsmodellering<br />

kan det vara rimligt att använda dessa språk direkt som vokabulär. Alternativet är att<br />

utveckla en ny vokabulär <strong>för</strong> viktiga relationer mellan begrepp.<br />

3.3.1 RDFS och OWL som vokabulär <strong>för</strong> begreppsmodellering<br />

För modellering av vår kategorisering av <strong>för</strong>eteelser kan man se ett användningsområde<br />

<strong>för</strong> klasser och instanser som används i RDFS och OWL. Den generiska begreppsrelationen<br />

skulle kunna beskrivas i RDFS och OWL som en underklassrelation mellan två<br />

klasser.<br />

Om man vill beskriva begrepp som klasser går det inte genom konstruktioner i RDFS<br />

att uttrycka en partitiv begreppsrelation. Om man skapar någon egenskap bestårAv som<br />

anger att något är en del av något annat kan man i OWL använda begränsningar <strong>för</strong><br />

egenskaper <strong>för</strong> att uttrycka en partitiv begreppsrelation.<br />

Assoiciativa begreppsrelationer som gäller <strong>för</strong> klasser bör gå att modellera enligt<br />

samma mönster.<br />

Kännetecken som inte kan anges med begreppsrelationer kan annoteras enligt något<br />

passande mönster i klartext.<br />

Om begrepp modelleras i så stor omfattning som möjligt i OWL ges möjligheter till<br />

maskinell slutledning. Jag tror att den störsa vinsten med detta är att man får ett stöd<br />

under begreppsmodelleringen. Slutledda fakta måste vara rimliga, annars har man gjort<br />

något fel i modelleringen. Användbarheten <strong>för</strong> detta är något som skulle vara intressant<br />

att undersöka.<br />

3.3.2 Speciell vokabulär <strong>för</strong> begreppsmodellering<br />

Ett alternativ som inte ger samma möjligheter till slutledningar är att skapa en vokabulär<br />

där man ser begrepp som instanser i RDF och relationer som egenskaper mellan<br />

dessa instanser. Detta tillvägagångssätt används i SKOS, och det går att ha mindre<br />

fokus på maskinell <strong>för</strong>ståelse och mer på läsbarhet <strong>för</strong> människor.


Kapitel 4<br />

Genom<strong>för</strong>ande<br />

4.1 Behovsanalys<br />

I denna del av rapporten redovisas några viktiga faktorer som inverkat på uformningen av<br />

begreppsverktyget. En sådan faktor är en liten användarundersökning som genom<strong>för</strong>des.<br />

Uppdraget bereppshantering på FMV har också haft stor betydelse tillsammans med<br />

M&S-<strong>portalen</strong> där begreppsverktyget ska finnas.<br />

4.1.1 Användarundersökning<br />

Syftet med användarundersökningen var att skaffa värden att utgå från <strong>för</strong> vad de tänkta<br />

användarna kunde ha <strong>för</strong> problem relaterade till begreppshantering, och hur de ansåg<br />

att detta kunde lösas.<br />

Metod<br />

Användarundersökningen ut<strong>för</strong>des som löst strukturerade intervjuer med <strong>för</strong>beredda<br />

frågor, <strong>för</strong> att få ingående svar angående vad ett begreppsverktyg ska användas till.<br />

Enligt Preece et al[5] är intervjuer ett bra sätt att få deltagare att utveckla sina svar.<br />

Utformningen av frågorna var inte självklar och svår att göra utan att frågorna skulle<br />

bli ledande. Frågorna finns som bilaga till rapporten.<br />

Resultat<br />

Sex personer deltog i intervjuer, vilket får sägas vara i underkant <strong>för</strong> att dra klara<br />

slutsatser. Några grundläggande utgångspunkter kunde ändå identifieras. De som deltog<br />

i intervjuerna var från FMV (anställda eller konsulter), total<strong>för</strong>svarets forskningsinstitut<br />

och <strong>för</strong>svarsmakten.<br />

– Deltagarna använde alla någon sorts intranät eller webbsidor på Internet och epost.<br />

– Man upplevde att skilda uppfattningar av ords betydelse var ett verkligt och betydande<br />

problem.<br />

– Det finns några olika ordlistor och motsvarande <strong>för</strong> en del fackområden, men deltagarna<br />

var missnöjda med kvalitén och tillgängligheten på dessa.<br />

17


18 Kapitel 4. Genom<strong>för</strong>ande<br />

– För att hitta begrepp med <strong>för</strong>klaring ville man <strong>för</strong>st och främst söka genom fritext.<br />

Man ville även kunna hitta relaterade begrepp.<br />

– För ett IT-system <strong>för</strong> hantering av begrepp fanns önskemål om wiki-funktionalitet<br />

— att alla ska kunna delta i och komma med <strong>för</strong>slag i terminologiarbetet. Man<br />

vill även ha hjälp med synonymer och homonymer, samt stöd <strong>för</strong> olika språk —<br />

främst engelska. För att få en överblick över begreppets betydelse <strong>för</strong>eslogs en<br />

grafisk presentation över dess relationer till andra begrepp.<br />

– Ett projekt bör kunna skapa en egen katalog över de begrepp man vill använda. I<br />

denna katalog ska man kunna definiera egna begrepp.<br />

– Man vill ha möjligheten att kommentera begreppsdefinitioner, men ändringar av<br />

dessa bör genom<strong>för</strong>as med någon sorts kvalitetskontroll.<br />

– Begrepssamlingen måste vara aktuell och levande <strong>för</strong> att man ska använda den och<br />

engagera sig i arbetet med att <strong>för</strong>bättra den.<br />

– Man är positivt inställd till att ha en integration av begreppshantering i Officeprogram<br />

och liknande. Denna integration får inte vara påträngande utan måste<br />

vara valbar.<br />

4.1.2 Uppdraget begreppshantering<br />

Uppdraget <strong>för</strong>eslår en uppdelning av FMV i en hierarki av fackområden, där varje fackområde<br />

har och ansvarar <strong>för</strong> en terminologi. För begreppsverktygets del innebär detta<br />

att det ska klara av att hantera flera terminologier, och hierarkisk ordning av terminologier.<br />

En informationsmodell <strong>för</strong> begrepp var under arbetet med begreppsverktyget hela<br />

tiden under utveckling, men dess grundläggande principer har varit utgångspunkten vid<br />

utformningen av informationsmodellen <strong>för</strong> begreppsverktyget.<br />

4.1.3 M&S-<strong>portalen</strong><br />

<strong>Begreppsverktyg</strong>et ska tillhöra och vara integrerat med M&S-<strong>portalen</strong>, och därmed passa<br />

till det syfte <strong>portalen</strong> är gjord <strong>för</strong>. Portalen ska vara en samlingsplats <strong>för</strong> information<br />

och resurser inom området modellering och simulering. <strong>Begreppsverktyg</strong>et ska vara ett<br />

stöd <strong>för</strong> projekt att bygga upp en egen terminologi.<br />

4.1.4 Slutsatser<br />

Utifrån behovsanalysen identifierades några önskvärda funktioner <strong>för</strong> begreppsverktyget:<br />

– Sökning efter begreppsbeskrivningar. Det absolut viktigaste är att det är möjligt<br />

söka efter begreppsbeskrivningar kopplade till en viss term.<br />

– Hantering av terminologier. Det är vettigt att säga att varje projekt kan ha en<br />

egen terminologi. För att ett projekt självständigt ska kunna bygga upp sin egen<br />

terminologi i begreppsverktyget blir hantering av terminologier centralt.<br />

– Nyhteter. Det bör gå att se vilka nya terminologier och begrepp som senast skapats<br />

och de <strong>för</strong>ändringar av terminologier som senast skett.


4.2. Informationsmodell <strong>för</strong> begrepp 19<br />

Figur 4.1: Informationsmodell <strong>för</strong> begrepp på FMV<br />

– Kommentarer. Det ska vara möjligt att kommentera olika detaljer i begreppsdatamängden.<br />

– Möjlighet att länka till begrepp och terminologier. För att begreppsverktyget ska<br />

kunna integreras med M&S-<strong>portalen</strong> måste det gå att skapa URL-länkar som direkt<br />

visar upp ett visst begrepp eller en viss terminologi i begreppsverktyget.<br />

4.2 Informationsmodell <strong>för</strong> begrepp<br />

Informationsmodellen som uppdraget <strong>för</strong> begreppshantering tagit fram baseras på en<br />

separation mellan å ena sidan begrepp och beskrivningar av begrepp, och å andra sidan<br />

termer, och var och när de används.<br />

4.2.1 Klasser<br />

I informationsmodellen finns ett antal klasser (se också figur 4.1), de viktigaste är<br />

beskrivna nedan.<br />

– Terminologi En terminologi definierar en samling termer och deras användning<br />

inom ett visst fackområde. En terminologi kan vara inordnad i en hierarkisk struktur.<br />

– Terminologipost En terminologipost är kopplad till ett beslut om att använda noll<br />

eller fler termer <strong>för</strong> en viss beskrivning av ett begrepp inom en terminologi.


20 Kapitel 4. Genom<strong>för</strong>ande<br />

– Term En term har ett strängvärde och en språkkod och en eventuell <strong>för</strong>kortning.<br />

– Begreppsversion En begreppsversion har ett antal definitionstexter och kommentarstexter<br />

som ger en ordlistelik beskrivning av ett begrepp.<br />

– Begrepp Ett begrepp eller referens enligt Ogdens triangel. Begreppet måste ha en<br />

unik identifierare.<br />

– Begreppsrelation En begreppsrelation anger något <strong>för</strong>hållande mellan två eller fler<br />

begrepp. Underklasser till denna ger information om hur begreppen är relaterade.<br />

Instanser av klassen Terminologipost är enhter som ger information om termanvändning<br />

med avseende på både fackområde och tidpunkt, då dessa är kopplade till en<br />

terminologi som annoterar fackområde och de har giltighetsdatum. Detta är en central<br />

klass <strong>för</strong> hanteringen av problemet med synonymer och homonymer, eftersom den ger<br />

en spårbarhet — om en term kan kopplas till ett datum och ett fackområde kan antalet<br />

möjliga terminologiposter och därigenom möjliga betydelser begränsas.<br />

Samtliga termer som är kopplade till en terminologipost kommer att vara synonymer<br />

eftersom de följaktligen är kopplade till samma begrepp. Klassen Termanvändning är<br />

ett medel <strong>för</strong> att särskilja eller rangordna sådana synonymer. Denna rangordning ska<br />

också kunna användas <strong>för</strong> homonymer inom en terminologi — det är <strong>för</strong>modligen en bra<br />

regel att undvika att skapa sådana, åtminstone homonymer som inte kan rangordnas<br />

efter prioritet.<br />

Begrepp kan beskrivas med texter och relationer. En begreppsbeskrivning har målet<br />

att få läsaren att <strong>för</strong>stå vilket begrepp som faktiskt menas. Rent textuella beskrivningar<br />

av ett begrepp är viktiga och något som vi är vana att läsa i ordlistor och liknande. Relationer<br />

är på en grundläggande nivå inte heller speciellt svåra att <strong>för</strong>stå i den meningen<br />

att ett begrepp är relaterat till ett annat på något sätt.<br />

Tidigare i denna rapport under Begreppsmodellering tas olika typer av begreppsrelationer<br />

upp: associativ, generisk och partitiv. Dessa relationer finns med i informationsmodellen<br />

som specialiseringar av klassen Begreppsrelation.<br />

4.3 Datamodellen <strong>för</strong> begreppsverktyget<br />

Informationsmodellen från uppdraget begreppshantering har stått som grund till datamodellen<br />

<strong>för</strong> begreppsverktyget.<br />

Jag valde att endast hantera en delmängd av den information som informationsmodellen<br />

<strong>för</strong> begrepp (figur 4.1) anger <strong>för</strong> att snabba upp utvecklingen av applikationen,<br />

samt <strong>för</strong> att inte göra den <strong>för</strong> komplex.<br />

Fördelen med att följa informationsmodellen i så stor utsträckning som möjligt är att<br />

begreppsverktyget ska kunna använda en tänkt framtida begreppsdatabas med ut<strong>för</strong>ligt<br />

och noggrant modellerade begrepp, och väl utformade terminologier som skapas i en <strong>för</strong><br />

FMV bestämd process.


4.3. Datamodellen <strong>för</strong> begreppsverktyget 21<br />

4.3.1 Informationsmodell <strong>för</strong> begreppsverktyget<br />

Instans av klass Egenskap <strong>för</strong> instans Värde på egenskapen<br />

Terminologi benämning sträng<br />

ansvarig sträng<br />

beskrivning sträng<br />

överordnad Terminologi<br />

terminologipost Terminologipost<br />

Terminologipost startdatum datum<br />

slutdatum datum<br />

termanvändning Termanvändning<br />

begreppsversion Begreppsversion<br />

<strong>för</strong>egående version Terminologipost<br />

nästa version Terminologipost<br />

Termanvändning prioritet sträng<br />

term Term<br />

Term etikett sträng<br />

språkkod sträng<br />

<strong>för</strong>kortning sträng<br />

Begreppsversion kommentarstext Text<br />

definitionstext Text<br />

Text text sträng<br />

språkkod sträng<br />

<strong>för</strong>fattare sträng<br />

Begrepp begreppsversion Begreppsversion<br />

Begreppsrelation subjekt Begrepp<br />

objekt Begrepp<br />

kommentar sträng<br />

sträng är en serie tecken och datum är en representation av ett datum. Jäm<strong>för</strong>t med<br />

uppdragets <strong>för</strong> begreppshantering informationsmodell är fram<strong>för</strong> allt de specialiserade<br />

begreppsrelationerna borttagna, samt paketet <strong>för</strong> källhantering.<br />

4.3.2 Lagring av begreppsdata<br />

<strong>Begreppsverktyg</strong>et ska vara tillgängligt som en webbapplikation. Detta innebär att flera<br />

användare samtidigt behöver tillgång till datamängden och den ska vara tillgänglig över<br />

tid, så det är nödvändigt att lagra denna i en databas.<br />

Detta examensarbete skulle inte handla om att designa databasen, och även om<br />

det finns flera att välja bland, t.ex. MySQL och PostgreSQL som båda går att använda<br />

gratis, lade jag inte ner mycket tid på att fundera. Det blev i slutändan MySQL eftersom<br />

det var enkelt att installera på utvecklingsmaskinerna.<br />

4.3.3 Implementation av informationsmodellen<br />

En viktig del av M&S-<strong>portalen</strong>, en katalog över resurser och information, ska vara tillgänglig<br />

som RDF och gå att koppla mot informationen i begreppsverktyget. Det var<br />

där<strong>för</strong> naturligt att använda RDF <strong>för</strong> att lagra begreppsdata. Att använda RDF gjorde<br />

också att det gick att undvika att lägga tid på design av en relationsdatabas.


22 Kapitel 4. Genom<strong>för</strong>ande<br />

4.3.4 RDF vokabulär<br />

Figur 4.2: Vokabulär <strong>för</strong> informationsmodellen i RDF<br />

Jag skapade en vokabulär <strong>för</strong> att lagra begreppsdata i RDF. Vokabulären är skriven i<br />

OWL men den använder få konstruktioner som inte finns tillgängliga i RDF Schema.<br />

Utöver denna vokabulär används egenskaper från vokabulärerna <strong>för</strong> RDF, RDF Schema,<br />

SKOS och Dublin Core. Se figur 4.2.<br />

Vokabulären är mer eller mindre än översättning från svenska till engelska av de<br />

klasser och egenskaper som togs med i informationsmodellen <strong>för</strong> begreppsverktyget. Det<br />

främsta skälet till detta var att undvika URL-strängar med å, ä och ö.<br />

4.3.5 Kommentarer och nyheter<br />

Den inledande användaranalysen antydde att användare kommer att vilja kommentera<br />

olika detaljer i begreppssamlingen. Reification är kanske det mest kraftfulla sättet att<br />

kommentera en RDF-graf, men i detta fall var inte en sådan uttrycksfullhet nödvändig.


4.4. Webbapplikationen 23<br />

Jag valde att skapa en klass Comment, och använda denna tillsammans med några<br />

egenskaper från Dublin Core-vokabulären <strong>för</strong> att länka en kommentarstext till en valbar<br />

resurs med en unik URL. Denna kommentarstext är inte samma som egenskapen <strong>för</strong><br />

ConceptVersion.<br />

Resonemanget var detsamma när det gällde att hantera händelser i datamängden,<br />

en klass Event används tillsammans med ett datum <strong>för</strong> att notera att något hänt i<br />

datamängden.<br />

4.4 Webbapplikationen<br />

4.4.1 Teknisk plattform<br />

Webbapplikationen är skriven i Java och använder två externa bibliotek, Jena och Wicket.<br />

Den färdiga applikationen kan köras i en applikationsserver <strong>för</strong> Java servlets, t.ex.<br />

Apache Tomcat eller den lättviktiga Jetty.<br />

Jena<br />

Jena[3] är ett ramverk <strong>för</strong> hantering av RDF-data som baseras på öppen källkod. Jena,<br />

som baseras på Java, innehåller en mängd verktyg <strong>för</strong> att programmatiskt skapa<br />

och navigera i RDF-grafer. Ramverket ger möjlighet att jobba med RDF-grafer i ramminnet<br />

eller i en databas, samt att kunna skriva och läsa grafer till och från filer i ett<br />

antal serialiseringsformat. Jena innehåller också en moduler <strong>för</strong> slutledning och att göra<br />

SPARQL-sökningar.<br />

Wicket<br />

Wicket[15] är ett ramverk <strong>för</strong> utveckling av webbapplikationer i Java. Wicket använder<br />

vanliga HTML-dokument <strong>för</strong> att definiera gränssnittet, och normala Java-klasser <strong>för</strong><br />

logik. Det som krävs i HTML-dokumentet är en identifierare <strong>för</strong> de HTML-taggar med<br />

innehåll som ska styras av programlogiken. I praktiken består en webbsida som ska<br />

genereras av en Java-klass och en HTML-fil.<br />

Detta innebär att ändringar rent utseendemässigt på en HTML-sida kan göras helt<br />

fristående, så länge de identifierare som refereras av logiken finns kvar, och har samma<br />

inbördes hierarki.<br />

För mer dynamiska webbsidor finns ett inbyggt stöd <strong>för</strong> AJAX, det går att på ett<br />

enkelt sätt få AJAX-funktionalitet utan att själv behöva skriva JavaScript <strong>för</strong> klientsidan.<br />

4.4.2 Programstruktur<br />

Webbapplikationen kan i en abstrakt vy delas upp i några lager, se figur 4.3. Översta<br />

lagret, gränssnittet i webbläsaren, är enbart byggt i HTML och utseendet modifierat<br />

med CSS. Samtliga HTML-filer som används <strong>för</strong> gränssnittet har som filnamn [klassnamn].html<br />

där [klassnamn] är namnet på en Javaklass som innehåller logiken <strong>för</strong> presentationen<br />

och hantering av indata från användaren. Dessa klasser ligger i ett lager som<br />

hanterar logiken <strong>för</strong> gränssnittet.<br />

Lagret under logiklagret är ansvarigt <strong>för</strong> läsning och skrivning till begreppsdatamängden.<br />

Detta lager använder Jena via ett API <strong>för</strong> att manipulera den RDF-graf som rep-


24 Kapitel 4. Genom<strong>för</strong>ande<br />

Figur 4.3: Uppdelning av programmet i lager<br />

resenterar datamodellen <strong>för</strong> begreppsdatamängden. Jena lagrar i sin tur RDF-grafen i<br />

en SQL-databas.<br />

4.4.3 Gränssnitt i webbläsare<br />

Det gick till att börja med att identifiera fyra olika funktioner <strong>för</strong> begreppsverktyget,<br />

vilka fick varsin sektion och en länk i en meny som finns på alla sidor. Dessa sektioner<br />

döptes till Sök, Terminologier, Nyheter och Kommentarer.<br />

Sök-sektionen delades upp i två undersektioner: Enkel sökning och Utökad sökning.<br />

Enkel sökning är en sökning enbart utifrån en sträng som matchas mot de termer som<br />

används av terminologierna. Utökad sökning ger möjlighet att ange fler parametrar, det<br />

går att välja att endast söka bland vissa terminologier, ange ett datum <strong>för</strong> vilket termen<br />

ska ha en giltig användning samt ange med vilken prioritet som termen ska användas.<br />

I sektionen Terminologier finns alla funktioner som har med terminologihantering att<br />

göra. Här kan man se en lista över tillgängliga terminologier, och skapa en ny terminologi.<br />

I den listningen går det att välja att redigera en viss terminologi. Redigera terminologi<br />

är en undersektion till Terminologier och har i sin tur fyra undersektioner. Sektionerna<br />

som ligger under Redigera Terminologi är<br />

– Lista termanvändningar. Här finns en överblick över termanvändningar i terminologin.<br />

Härifrån går dett att ändra användningen av ett visst begrepp.<br />

– Använd nytt begrepp. Denna sida ger möjlighet att skapa ett nytt begrepp och<br />

ange dess termanvändning <strong>för</strong> gällande terminologi.


4.4. Webbapplikationen 25<br />

Figur 4.4: Abstrakt struktur <strong>för</strong> användning av begreppsverktyget<br />

– Använd befintligt begrepp. Här finns möjlighet att välja ut befintliga begrepp <strong>för</strong><br />

användning i terminologin.<br />

– Redigera teminologiinfo. Här går det att ändra information om terminologin.<br />

Sektionerna Nyheter och kommentarer är listningar över nyhteter och kommentarer,<br />

där den senare också ger möjlighet att lägga till nya kommentarer. Se figur 4.4 <strong>för</strong> en<br />

översikt över uppdelningen i sektioner.<br />

Grafisk utformning<br />

Jag använde enkla skisser på papper <strong>för</strong> att komma fram till en grafisk utformning på<br />

gränssnittet. På grund av tidsbrist är inte denna utformning fullständigt genom<strong>för</strong>d.<br />

Utformningen baseras på en kolumn och horisontella menyer. Designen använder<br />

samma grafiska stomme som M&S-<strong>portalen</strong> i övrigt, och typsättning av text och liknande<br />

är taget från denna.<br />

Jag <strong>för</strong>sökte att använda HTML <strong>för</strong> struktur och CSS <strong>för</strong> utseende i så stor utsträckning<br />

som möjligt.<br />

4.4.4 Logik <strong>för</strong> gränssnitt<br />

Javaklasserna <strong>för</strong> detta lager ligger i paketet se.smartlab.concept.webtool.<br />

Logiken <strong>för</strong> gränssnittet använder ramverket Wicket. En webbsida skapas i Wicket<br />

genom att utöka klassen WebPage, och skapa en HTML-fil som fungerar som mall <strong>för</strong> hur<br />

webbsidan ska renderas. Dessa klasser kan i sin tur utökas, och därigenom återanvända<br />

återkommande HTML-kod och logik. Denna metod används i begreppsverktyget genom<br />

att klasser <strong>för</strong> undersektioner utökar de sektioner de tillhör.<br />

Wicket har också klassen Panel som kan utökas. Klasser som utökar Panel måste<br />

också ha en tillhörande HTML-fil, och instanser av dessa blir paneler som kan placeras<br />

i en webbsida. Denna metod används också av begreppsverktyget <strong>för</strong> några delar av<br />

webbsidor som används av flera webbsidor.<br />

Figur 4.5 demonstrerar hur arv och paneler används i begreppsverktyget.


26 Kapitel 4. Genom<strong>för</strong>ande<br />

Figur 4.5: Klassdiagram <strong>för</strong> lagret logik <strong>för</strong> gränssnitt<br />

4.4.5 Läsning och skrivning mot datamodell<br />

Javaklasserna <strong>för</strong> detta lager ligger i paketet se.smartlab.concept.io.<br />

Den viktigaste klassen <strong>för</strong> detta lager är ConceptDB. När denna klass instansieras<br />

öppnas en modell av begreppsdatamängden i databasen via Jenas API. ConceptDB ger<br />

ett antal metoder <strong>för</strong> att:<br />

– Skapa nya RDF-resurser utifrån de klasser som är specifierade i vokabulären.<br />

– Hämta resurser utifrån deras URI.<br />

– Lista resurser baserat på olika kriterier, t.ex. söka terminologiposter som använder<br />

en viss term.<br />

För att abstrahera bort RDF-hanteringen från logiken <strong>för</strong> gränssnittet finns ett antal<br />

klasser som representerar datamodellen samt de operationer som måste kunna göras.<br />

Denna abstraktion använder ett mönster med klasser som kapslar in de RDF-klasser<br />

som används i informationsmodellen. Till många av dessa inkaslingsklasser finns en<br />

prototypklass som används <strong>för</strong> att utbyta den information egenskaperna <strong>för</strong> varje RDFklass<br />

ger. Ett exempel på detta mönster är inkapplingsklassen TerminologyNode och<br />

TerminologyPrototype. TerminologyNode har en metod getPrototype som returnerar ett<br />

objekt av typen TerminologyPrototype och en metod set som tar ett objekt av typen<br />

TerminologyPrototype. TerminologyPrototype har fyra strängvärden, description, owner,<br />

label och parent, med get- och set-metoder enligt Javas standardmönster.<br />

Metoden getPrototype hämtar från den RDF-grafen de egenskaper som hör till den<br />

terminologi som kapslas in av TerminologyNode och lägger dem i den TerminologyPrototype<br />

som ska returneras. Metoden set sätter egenskaperna <strong>för</strong> inkapslad terminologi.<br />

Konventionen är att egenskaper som inte existerar vid getPrototype och de egenskaper<br />

som inte ska sättas av set representeras i ett prototypobjekt som null. Egenskaper som<br />

innebär en referens till en annan resurs i RDF-grafen representeras i en del fall som en<br />

sträng med resursens URI. I andra fall ges <strong>för</strong> bekvämlighetens skull en prototyp av den<br />

andra resursen.


4.4. Webbapplikationen 27<br />

4.4.6 Åtkomst till begreppsdatamängden från andra program<br />

Eftersom datamängden är i RDF, går det på ett enkelt sätt att skapa en webbtjänst<br />

som ut<strong>för</strong> och returnerar resultatet från SPARQL-sökningar. Detta ger frihet <strong>för</strong> t.ex.<br />

att skapa ett program <strong>för</strong> referensinformation i Microsoft Office där man kan söka i<br />

begreppsdatamängden från alla möjliga perspektiv.


28 Kapitel 4. Genom<strong>för</strong>ande


Kapitel 5<br />

Resultat<br />

<strong>Begreppsverktyg</strong>et är designat <strong>för</strong> att integreras i M&S-<strong>portalen</strong>, och har där<strong>för</strong> utvecklats<br />

med en bassida som Curalia, webbyrån som utvecklar <strong>portalen</strong>, tillhandahöll.<br />

5.1 Sökning<br />

Sökning efter begrepp görs fram<strong>för</strong> allt genom att matcha termer och deras användningar<br />

utifrån olika kriterier. Sökningen ut<strong>för</strong>s enligt konventionen att när en sökparameter inte<br />

angetts så utgör den ingen begränsning <strong>för</strong> resultatet.<br />

5.1.1 Enkel sökning<br />

Under avdelningen enkel sökning (se figur 5.1) går det bara att söka efter termer<br />

som matchar den söksträng man skriver in. De begreppsversioner som är kopplade till<br />

matchande termer letas fram och representeras med en definitionstext. Samtliga termer<br />

som är kopplade till begreppsversionen listas till vänster. Länken Välj går till en sida<br />

som visar mer ut<strong>för</strong>lig information om begreppsversionen.<br />

Om ingen sökstränganges kommer samtliga begreppsversioner att listas.<br />

5.1.2 Utökad sökning<br />

Avdelningen utökad sökning (se figur 5.2) ger möjlighet till att ange fler parametrar.<br />

Det går att välja inom vilka terminologier som termen ska användas, och ett datum <strong>för</strong><br />

när termen ska ha en giltig användning. Utöver detta går det att ange vilken prioritet<br />

termen ska användas med.<br />

5.2 Terminologier<br />

Figur 5.3 visar hur terminologier listas. I denna vy kan man välja att redigera eller<br />

kommentera en terminologi. Det går också att skapa en ny terminologi.<br />

5.2.1 Ny terminologi<br />

En ny terminologi skapas genom att man ger den ett namn, en ägare och en beskrivning.<br />

Det går även att ange att en terminologi är en underterminologi till en annan genom<br />

29


30 Kapitel 5. Resultat<br />

Figur 5.1: Enkel sökning<br />

Figur 5.2: Utökad sökning


5.2. Terminologier 31<br />

Figur 5.3: Listning av terminologier<br />

Figur 5.4: Skapa ny terminologi


32 Kapitel 5. Resultat<br />

att välja Ange <strong>för</strong>älder, se figur 5.4.<br />

5.2.2 Redigera terminologi<br />

Figur 5.5: Termanvändning <strong>för</strong> terminologi<br />

Figur 5.5 visar den vy som kommer upp när man väljer att redigera en terminologi. Här<br />

listas de termanvändningar som utgör terminologin. Terminologins namn och beskrivning<br />

visas i alla vyer som används <strong>för</strong> att redigera en viss terminologi.<br />

Vyn <strong>för</strong> att skapa ett nytt begrepp <strong>för</strong> användning i en terminologi (figur 5.6) kräver<br />

vissa omstruktureringar i användargränssnittet <strong>för</strong> att vara lättanvänd. Här kan man<br />

skriva in en definitionstext och kommentarstext och man kan lägga till relaterade begrepp<br />

och termer som ska benämna begreppet.<br />

För att använda ett befintligt begrepp finns en vy som är likadan som utökad sökning.<br />

Här kan man välja ett begrepp, och komma till en vy (figur 5.7) där man bestämmer<br />

vilka termer som ska användas <strong>för</strong> detta. Denna vy används också <strong>för</strong> att ändra termanvändningar<br />

som redan lagts till i en terminologi.<br />

Redigera terminologiinformation görs i ett gränssnitt som liknar det <strong>för</strong> att lägga till<br />

en ny terminologi.<br />

5.3 Nyheter och kommentarer<br />

Nyheter är en listning på viktiga händelser i begreppsdatamängden, i figur 5.8 kan man<br />

se att en ny terminologi samt en ny begreppsversion skapats.<br />

Figur 5.9 visar upp kommentarssystemet. Detta är av en enkel typ, antagligen är<br />

det bättre att integrera kommentarerna i det forum som kommer att finnas på M&S<strong>portalen</strong>.


5.3. Nyheter och kommentarer 33<br />

Figur 5.6: Termanvändning <strong>för</strong> terminologi<br />

Figur 5.7: Redigera termanvändning


34 Kapitel 5. Resultat<br />

Figur 5.8: Nyheter<br />

Figur 5.9: Kommentarssystemet


5.4. Visa begrepp 35<br />

5.4 Visa begrepp<br />

Figur 5.10: Information om ett begrepp<br />

För en ut<strong>för</strong>ligare <strong>för</strong>klaring av ett begrepp finns en vy som visar den mesta information<br />

som rör ett begrepp. Se figur 5.10. Denna visning går också att lägga till som bokmärke,<br />

eller skapa direkta länkar till.


36 Kapitel 5. Resultat


Kapitel 6<br />

Slutsatser<br />

Det främsta värdet med den prototyp som utvecklats är <strong>för</strong>modligen möjligheten att<br />

testa modellen med separation mellan begrepp och information om var när och hur<br />

termer används <strong>för</strong> att benämna begrepp. Prototypen ger också möjlighet att se om det<br />

kan vara användbart <strong>för</strong> ett projekt att ha en samarbetsyta <strong>för</strong> hantering av begrepp.<br />

Arbetet med OWL-vokabulären är också ett exempel på hur informationsmodellen<br />

<strong>för</strong> FMV:s begreppshantering skulle kunna realiseras i RDF.<br />

6.1 Begränsningar<br />

Funktionen på begreppsverktyget är inte testat <strong>för</strong> stora datamängder eller många användare.<br />

Målsättningen har dock inte varit ett system som ska kunna användas i produktion.<br />

6.1.1 Samtidig användning<br />

Den mesta datamängden är o<strong>för</strong>änderlig, <strong>för</strong> det mesta handlar det om att lägga till<br />

nya RDF-satser. I några fall kan det hända att en RDF-sats tas bort och ersätts med<br />

en ny. Detta är till exempel fallet när information <strong>för</strong> en terminologi så som namn och<br />

beskrivning ändras. Om flera användare samtidigt ändrar denna information är utfallet<br />

ovisst. Det är upp till Jena och databasen som Jena använder vad som kommer att<br />

hända.<br />

6.1.2 Läs- och skrivrättigheter<br />

Det finns ingen funktionalitet i begreppsverktyget <strong>för</strong> att begränsa läs- och skrivrättigheter.<br />

Fram<strong>för</strong> allt är begränsade skrivrättigheter viktigt, vem som helst ska inte<br />

kunna gå in och ändra t.ex. termanvändning i en terminologi. Hantering av rättigheter<br />

bör integreras med resten av <strong>portalen</strong>, och detta var inte möjligt att rymma innan<strong>för</strong><br />

ramen <strong>för</strong> examensarbetet.<br />

6.2 Fortsatt arbete<br />

Gränssnittet tillåter inte att ange vilket språk som gäller <strong>för</strong> en viss term eller definitionstext.<br />

Funktionaliteten finns i implementationen av informationsmodellen, men språket<br />

37


38 Kapitel 6. Slutsatser<br />

anges alltid till svenska genom hårdkodning i logiklagret <strong>för</strong> gränssnittet. Jag bedömer<br />

att det vore relativt enkelt att lägga till en sådan funktionalitet.<br />

Det går inte i de sökfunktioner som är implementerade <strong>för</strong> informationsmodellen att<br />

ange språk som sökparameter, detta bör kanske vara möjligt. För att göra detta krävs<br />

en viss <strong>för</strong>ändring i lagret läsning och skrivning mot datamodell (figur 4.3).<br />

Det finns många utseendemässiga detaljer som skulle behöva en putsning, och mycket<br />

av sådant arbete kan ut<strong>för</strong>as i CSS och HTML. Utseendet måste även testas i de<br />

vanligaste webbläsarna.<br />

Kontroll av indata görs till viss del, men det bästa vore att gå igenom alla möjliga<br />

punkter där användare kan mata in information och specificera exakt vad som är tillåtet.<br />

Ur ett användbarhetsperspektiv är det också viktigt att lägga till funktionalitet <strong>för</strong> att<br />

ge feedback om inmatad information inte är tillåten.


Kapitel 7<br />

Erkännanden<br />

För detta examensarbetes slut<strong>för</strong>ande har jag ett antal personer att tacka. Anna Fundin,<br />

min externa handledare på FMV <strong>för</strong> hjälp med stort och smått under hela arbetet. Jan-<br />

Erik Moström, min interna handledare på institutionen <strong>för</strong> <strong>datavetenskap</strong>. Tyko Brising<br />

och Mats Nilsson <strong>för</strong> bland annat informationsmodellen och diskussioner kring denna.<br />

Martin Björkman på Curalia <strong>för</strong> tips på tekniska lösningar och ett startprojekt <strong>för</strong><br />

Wicket med grunddesignen på M&S-<strong>portalen</strong>.<br />

Tack!<br />

39


40 Kapitel 7. Erkännanden


Referenser<br />

[1] Michael C. Daconta, Leo J. Obrst, and Kevin T. Smith. The Semantic Web: A<br />

Guide to the Future of XML, Web Services, and Knowledge Management. Wiley<br />

Publishing, 2003.<br />

[2] Försvarsdepartementet. Förordning (1996:103) med instruktion <strong>för</strong> <strong>för</strong>svarets materielverk,<br />

1996.<br />

[3] Jena. Jena - a semantic web framework for java, 2007. http://jena.sourceforge.<br />

net/, besökt 2007-04-30.<br />

[4] Hälso och sjukvårdens forskningsinstitut. Metoder och principer i terminologiarbetet.<br />

Technical report, 1999.<br />

[5] Jennifer Preece, Yvonne Rogers, and Helen Sharp. Interaction Design. John Wiley<br />

Sons, 2002.<br />

[6] Stuart Russel and Peter Norvig. Artificial Intelligence a Modern Approach. Pearson<br />

Education, 2003.<br />

[7] SMART-lab. Portalen <strong>för</strong> modellering och simulering, 2007. http://<strong>portalen</strong>.<br />

smart-lab.se, besökt 2007-05-04.<br />

[8] SMART-lab. Smart-lab webb, 2007. http://www.smart-lab.se, besökt 2007-02-<br />

05.<br />

[9] W3C. Rdql - a query language for rdf, 2004. http://www.w3.org/Submission/<br />

RDQL/, besökt 2007-04-30.<br />

[10] W3C. Web ontology language (owl), 2004. http://www.w3.org/2004/OWL/, besökt<br />

2007-04-30.<br />

[11] W3C. Rdf vocabulary description language 1.0: Rdf schema, 2007. http://www.<br />

w3.org/TR/rdf-schema/, besökt 2007-02-13.<br />

[12] W3C. Resource description framework (rdf), 2007. http://www.w3.org/RDF/,<br />

besökt 2007-02-13.<br />

[13] W3C. Sparql query language for rdf, 2007. http://www.w3.org/TR/<br />

rdf-sparql-query/, besökt 2007-04-30.<br />

[14] W3C. World wide web consortium (rdf), 2007. http://www.w3.org, besökt 2007-<br />

05-20.<br />

[15] Wicket. Wicket, 2007. http://wicket.sourceforge.net/, besökt 2007-05-04.<br />

41


42 REFERENSER


Bilaga A<br />

Frågor <strong>för</strong> användarundersökning<br />

1. Kort beskrivning av dina arbetsuppgifter?<br />

2. Hur ofta använder du Intranät eller webbsidor i ditt arbete?<br />

3. Hur ofta använder du e-post i ditt arbete?<br />

4. Hur ofta använder du andra Internettjänster så som Messenger, forum och liknande?<br />

5. Har du någon gång märkt att andra haft skiljda uppfattningar om vissa ords<br />

betydelse?<br />

6. Har du någon gång fått problem på grund av miss<strong>för</strong>stådda ord?<br />

7. Orsak?<br />

8. Hur ofta konsulterar du en områdesspecifik ordlista eller liknande?<br />

9. Anser du att du gör det i tillräckligt hög grad?<br />

10. Brukar du hitta de begrepp som du är ute efter?<br />

11. Hur skulle du vilja söka efter en begreppsbeskrivning?<br />

12. Söka genom ontologi, t.ex. gå från Plan"eller "Underhålltill "Underhållsplan"?<br />

13. Vad skulle du vilja att ett IT-stöd <strong>för</strong> att hantera begrepp hjälper till med?<br />

14. Hur skulle du vilja samla ihop begreppsdefinitioner <strong>för</strong> att använda i ett särskilt<br />

projekt eller verksamhetsområde?<br />

15. Skulle du vilja ha möjlighet att begränsa läsrättigheter <strong>för</strong> en sådan samling så<br />

att alla inte kan läsa denna?<br />

16. Skulle du vilja ha möjligheten att lägga till egna begreppsdefinitioner eller <strong>för</strong>eslå<br />

<strong>för</strong>ändringar de existerande?<br />

17. Vilket stöd skulle du vilja ha av ett IT-system <strong>för</strong> begreppshantering vid <strong>för</strong>fattande<br />

av text?<br />

43


44 Kapitel A. Frågor <strong>för</strong> användarundersökning<br />

(a) Exempel 1: ord där begreppsdefinitioner finns markeras, och på något vis går<br />

det att länka en begreppsdefinition till dessa. Om det finns flera definitioner<br />

går det att välja vilken man menar.<br />

(b) Exempel 2: ord byts ut automatiskt om de har synonymer som hör till det<br />

område som mottagaren verkar i (<strong>för</strong> att öka sannolikheten att mottagaren<br />

uttolkar det begrepp som åsyftas).<br />

18. Vad skulle få dig att ta tid <strong>för</strong> att lägga in nya begrepp, med begrepps<strong>för</strong>klaringar<br />

och benämningar?

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!