OWL eller UML för informations-/begreppsmodeller?

42 views
Skip to first unread message

Peter Krantz

unread,
Jun 3, 2010, 3:42:31 AM6/3/10
to ss...@googlegroups.com
Hej!

I ett annat sammanhang är jag involverad i en diskussion om hur
offentlig sektor skall publicera sina informationsmodeller för att vi
över tid skall uppnå semantisk interoperabilitet utan stora
centralsstyrda begreppsmodellprojekt. Det är m a o i större skala
dessa rekommendationer skall användas.

Det förslag man kommit fram till är att alla bör använda UML för att
beskriva sin information. Jag hävdar att UML inte är lämpat för att
beskriva begreppsmodeller utan snarare är att betrakta som ett
visuellt alternativ till XML-schema, dvs regelverk för struktur av
information i ett givet serialiseringsformat (XML).

OWL har en tightare koppling till semantik och ger fördelen av att
entydigt elektroniskt kunna identifiera ett begrepp i en modell. Det
ger enklare möjlighet till återanvändning av begrepp vilket bidrar
till en harmonisering över tid.

Det som talar emot är att inte så många är vana vid att skapa modeller
i OWL och upplever OWL som raketteknik. Vilka alternativ till OWL
skulle kunna vara aktuella? Vad är dina erfarenheter av att försöka
använda UML för begreppsmodeller?

Mvh,

Peter Krantz

Roland Hedberg

unread,
Jun 3, 2010, 4:23:37 AM6/3/10
to ss...@googlegroups.com
On 6/3/10 9:42, Peter Krantz wrote:
> Hej!
>
> I ett annat sammanhang �r jag involverad i en diskussion om hur
> offentlig sektor skall publicera sina informationsmodeller f�r att vi
> �ver tid skall uppn� semantisk interoperabilitet utan stora
> centralsstyrda begreppsmodellprojekt. Det �r m a o i st�rre skala
> dessa rekommendationer skall anv�ndas.
>
> Det f�rslag man kommit fram till �r att alla b�r anv�nda UML f�r att
> beskriva sin information. Jag h�vdar att UML inte �r l�mpat f�r att
> beskriva begreppsmodeller utan snarare �r att betrakta som ett
> visuellt alternativ till XML-schema, dvs regelverk f�r struktur av

> information i ett givet serialiseringsformat (XML).
>
Hear, hear !!!
> OWL har en tightare koppling till semantik och ger f�rdelen av att

> entydigt elektroniskt kunna identifiera ett begrepp i en modell. Det
> ger enklare m�jlighet till �teranv�ndning av begrepp vilket bidrar
> till en harmonisering �ver tid.
>
> Det som talar emot �r att inte s� m�nga �r vana vid att skapa modeller

> i OWL och upplever OWL som raketteknik. Vilka alternativ till OWL
> skulle kunna vara aktuella?
Inga ! Som jag ser det.

Om man sitter fast i/�lskar de UML verktyg som finns, s� skall det
finnas program f�r att �vers�tta UML till OWL.
Har sj�lv inte anv�nt n�got s�dant s� jag vet inte hur bra de �r.

Verktygen f�r att bygga OWL ontologier �r inte fullt s� utvecklade som
UML verktygen vilket �r ett aber.

-- Roland

Matthias Palmér

unread,
Jun 3, 2010, 6:20:28 AM6/3/10
to ss...@googlegroups.com
Hej!

On Thu, 2010-06-03 at 09:42 +0200, Peter Krantz wrote:
> Hej!
>
> I ett annat sammanhang är jag involverad i en diskussion om hur
> offentlig sektor skall publicera sina informationsmodeller för att vi
> över tid skall uppnå semantisk interoperabilitet utan stora
> centralsstyrda begreppsmodellprojekt. Det är m a o i större skala
> dessa rekommendationer skall användas.

Låter intressant!

>
> Det förslag man kommit fram till är att alla bör använda UML för att
> beskriva sin information. Jag hävdar att UML inte är lämpat för att
> beskriva begreppsmodeller utan snarare är att betrakta som ett
> visuellt alternativ till XML-schema, dvs regelverk för struktur av
> information i ett givet serialiseringsformat (XML).

Vad man ska använda beror nog lite på syftet.
(Ber om ursäkt för att svaret blir lite långt ...)


Först, vad ska informationsmodellerna användas till ur ett maskin
perspektiv (fokus blir på underliggande formalism)?

A) Generera kod:
Här tror jag UML att föredra. Det finns för OWL också men då finns ingen
roundtrip och integration med IDE:er är svag om ens befintlig.

B) Validera datamodeller mot:
Här tror jag OWL eller ren RDFS är att föredra på grund av RDF
semantiken är så pass väldefinierad och relationerna till
kunskapsrepresentations formalismer (description logics). Det skulle ju
också vara trevligt om effekten i slutänden blir att data blir
tillgängligt i RDF.

Sen, hur ska informationsmodellerna användas ur ett människoperspektiv
(fokus blir på verktygen)?

1) Informationsmodeller ska endast publiceras till en större grupp:
Här tror i princip att vilket modelleringsverktyg som helst kan användas
(även ritverktyg/diagram programvara), förutsatt att själva
informationsmodellen är skapad av ett fåtal experter som i grunden
arbetat med ett mer kompetent verktyg som de själva funnit lämpligt.

2) Informationsmodellen ska utvecklas iterativt i en större grupp:
Här ställs det väsentligt högre krav på användarvänlighet och stöd för
en längre konsensus process. Dvs, användarna bör ha chansen att skapa
modeller som kommenteras och allteftersom revideras. Översikt och
navigation av informationsmodellerna blir viktigt. Här finns få verktyg
att välja mellan.


För att själv svara på frågorna så tror jag inte på A, ur ett
programmeringsperspektiv är det högst tveksamt om informationsmodeller
verkligen är lämpliga att översättas direkt i kod. Främst eftersom det
inte passar bra i iterativ utveckling, informationsmodellerna är work in
progress och man vill inte behöva programmera om för att ändra i
informationsmodellen. (Tex bestämma i förväg vilka RDF properties man
vill ha och sen generera en fix databaslayout utifrån detta.)

Alternativ 1 är problematiskt eftersom det exkluderar alla utom en liten
expertgrupp från modelleringsprocessen. Det kan ge svårigheter i ett
senare skene med genomförandet, tex på grund av brist på
verklighetsanknytning eller bara brist på engagemang från de som inte
blivit involverade.
Alternativ 2 vet jag dock är svårt att stödja med verktyg, vi(*) har
jobbat mot detta mål en längre tid med det RDF baserade verktyget
Conzilla(**), och även om vi kommit en bit på vägen (det fungerar och
har använts med framgång) så är vi inte i mål ännu (användargränsnittet
är fortfarande för svårt). Vi bidrar naturligtvis gärna med erfarenhet
här om det skulle efterfrågas.


Mvh,
Matthias Palmér doktorand på CSC KTH.


(*) KMR gruppen på KTH under ledning av Ambjörn Naeve, se
http://kmr.nada.kth.se

(**) Conzilla, http://www.conzilla.org, är ett visuellt
begreppsmodelleringsverktyg som också är en begreppsbrowser, dvs man kan
skapa kartor och hyperlänka mellan dem. Man kan också återanvända
begrepp mellan kartor och på så sätt skapa olika vyer mot
informationsmodellen. Conzilla stödjer ett flertal olika
modelleringsstilar, inklusive de flesta av UMLs diagramstilar men också
andra initiativ som dialogmapping. Kartorna är möjliga att samarbeta
kring då bidrag till en karta (eller de ingående begreppen) kan göras
separat av en annan än den ägaren av kartan, dessa bidrag kan man sen
slå på och av. Conzilla jobbar direkt mot RDF, dvs. kan presentera
existerande RDF grafer grafiskt och även själva kartorna är RDF utryck
som hålls i separata RDF grafer för att inte blandas med själva
informationsmodellen.

Conzilla har utvecklats av KMR gruppen på KTH inom en mängd
forskningsprojekt sen början på 2000-talet. Tyvär har utvecklingen
stannat av de senaste två åren på grund av brist på finansiering. Under
hösten kommer vi dock ta nya tag inom ramen för ett EU projekt, TELMap,
där Conzilla ska användas för Roadmapping processer. Inom TELMap kommer
Conzilla att byggas om till att bli en web2.0 applikation ovanpå SCAM.
SCAM är ett REST baserat system som hanterar personlig RDF metadata för
många användare, se http://confluence.iml.umu.se/display/SCAM

Peter Krantz

unread,
Jun 3, 2010, 7:41:56 AM6/3/10
to ss...@googlegroups.com
2010/6/3 Matthias Palmér <matt...@nada.kth.se>:

>
> Först, vad ska informationsmodellerna användas till ur ett maskin
> perspektiv (fokus blir på underliggande formalism)?
>

Tanken är inte att generera kod. Idén är att få myndigheter att ta tag
i sina begreppsmodeller (som i dagsläget i många fall saknas helt) och
publicera dem (på t.ex. sin egna webbplats).

När många gjort så kan dessa börja aggregeras ihop i något som liknar
http://rikstermbanken.se/ fast för kompletta modeller. Då får vi
möjlighet att inleda harmoniseringssteget (dvs bena ut varför det
finns 14 olika definitioner av klassen "Fastighet"). Myndigheter får
även chansen att återanvända definitioner utan att skapa nya hela
tiden.

Detta ställer krav på att det format vi väljer för myndigheter är
maskinbearbetningsbart så att aggregering och referenser fungerar på
ett entydigt sätt.

Min farhåga med UML är att det kommer att bli en samling klassdiagram
som saknar det viktigaste; begreppsdefinitioner och möjligheterna att
referera till ett begrepp någon annan definierat på ett entydigt sätt.

Detta behöver kombineras med ett sätt att validera data på och där får
väl XML-schema fungera som verktyg. Men genom att ha en modell i OWL
kan man ju även referera till den när man serialiserar data i andra
format, t.ex. JSON, RDF eller vad man nu vill använda. Kopplingen
mellan begrepp och egenskap i en instans av data är i många fall
odefinierad, men det går ju i så fall att dokumentera detta på ett
någorlunda entydigt sätt.

Att offentlig sektor skulle börja gå över till RDF vore önskvärt, men
i dagsläget är kompetensen inte tillräckligt utbredd för detta tror
jag. Man är extremt fokuserad på XML-schema till den vida grad att jag
misstänker att vissa tror att XML-schema är det enda sättet att
beskriva begreppsmodeller.


> Sen, hur ska informationsmodellerna användas ur ett människoperspektiv
> (fokus blir på verktygen)?
>

Min tanke är att det format man väljer för att dokumentera modellen
behöver kunna användas som underlag för olika vyer. I en verksamhet
kan det vara terminologer, systemutvecklare, användare och andra som
deltar i arbetet. De bör få tillgång till en vy som fungerar för dem.
Från en modell i OWL går det enkelt att automatiskt skapa t.ex.:

1. En PDF med modellens begrepp platt presenterade i textform (för
t.ex. terminologer eller domänexperter):
http://dev.lagrummet.se/dokumentation/model.pdf eller i HTML:
http://rinfo.lagrummet.se/ns/2008/11/rinfo/publ/html

2. En visuell vy över relationer mellan t.ex. klasser och egenskaper.
Ett exempel kan vara ett klassdiagram i UML för systemutvecklare.

3. Verktyg för att verifiera data.


Det som talar emot är verktygsstöd för icke-tekniker i att skapa
modeller i OWL. Förvisso finns http://www.modelfutures.com/owl
http://www.altova.com/semanticworks.html och andra, men det finns
förmodligen fler som är bekanta med UML-verktyg.

Mvh,

Peter

Leif Johansson

unread,
Jun 5, 2010, 4:33:49 AM6/5/10
to ss...@googlegroups.com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 06/03/2010 12:20 PM, Matthias Palm�r wrote:
> Hej!
>
> On Thu, 2010-06-03 at 09:42 +0200, Peter Krantz wrote:
>> Hej!
>>

>> I ett annat sammanhang �r jag involverad i en diskussion om hur
>> offentlig sektor skall publicera sina informationsmodeller f�r att vi
>> �ver tid skall uppn� semantisk interoperabilitet utan stora
>> centralsstyrda begreppsmodellprojekt. Det �r m a o i st�rre skala
>> dessa rekommendationer skall anv�ndas.

> L�ter intressant!


>
>>
>> Det f�rslag man kommit fram till �r att alla b�r anv�nda UML f�r att

>> beskriva sin information. Jag h�vdar att UML inte �r l�mpat f�r att
>> beskriva begreppsmodeller utan snarare �r att betrakta som ett
>> visuellt alternativ till XML-schema, dvs regelverk f�r struktur av


>> information i ett givet serialiseringsformat (XML).

> Vad man ska anv�nda beror nog lite p� syftet.
> (Ber om urs�kt f�r att svaret blir lite l�ngt ...)
>
>
> F�rst, vad ska informationsmodellerna anv�ndas till ur ett maskin
> perspektiv (fokus blir p� underliggande formalism)?
>
> A) Generera kod:
> H�r tror jag UML att f�redra. Det finns f�r OWL ocks� men d� finns ingen
> roundtrip och integration med IDE:er �r svag om ens befintlig.

Jag tror lite p� att utveckla modellerna i UML men publicera i OWL. Det
finns dock en risk f�r att man trillar i f�llan och g�r databasmodeller
istf f�r ontologier.

Problemet med OWL-verktyg �r att dom ofta kr�ver utbildning/erfarenhet
som �r mer sv�rk�pt �n dito f�r UML.

Sj�lv har jag gjort liten halvdan plugin till andromda.org f�r att g�ra
RDFS fr�n en UML-modell. Den skulle man kunna �teruppliva om det beh�vs.

Annars �r ju OWL-DL v�l semantiskt ekvivalent med n�gon ganska stor del
av UML2 (minns inte referensen men jag tror mig ha sett artiklar om det
d�r).

MVH leifj
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkwKC+0ACgkQ8Jx8FtbMZneIKwCeOzc0aLNX8EfBhtE0xkX8vxzB
x4YAnjm5Hddgp0cb8Um98/QH48VPNSIa
=kTR5
-----END PGP SIGNATURE-----

Peter Krantz

unread,
Jun 5, 2010, 9:56:17 AM6/5/10
to ss...@googlegroups.com
2010/6/5 Leif Johansson <le...@it.su.se>:
>
> Jag tror lite på att utveckla modellerna i UML men publicera i OWL. Det
> finns dock en risk för att man trillar i fällan och gör databasmodeller
> istf för ontologier.

Precis. UML är för grovt med klassdiagram och annat. Jag har tittat
igenom en del saker och börjar luta mot att man bygger sin ontologi i
OWL. Då får man den semantiska modellen.

Den är inte alltid 1:1 mot implementationen i ett system. För att
mappa begrepp till t.ex. klasser i XML-schema kan man använda
http://www.w3.org/TR/sawsdl/ Då får man scheman som ger utvecklare mer
information om vad de olika tingen är. Man kan även referera till ett
begrepp i ontologin i sin WSDL på samma sätt. Med den approachen kan
man ha en gemensam grundmodell att samsas runt.


>
> Problemet med OWL-verktyg är att dom ofta kräver utbildning/erfarenhet
> som är mer svårköpt än dito för UML.
>

Börjar man modellera i UML tror jag det är svårt att inte modellera
databasmodeller. Semantiska modeller är inte alltid lätt, men det är
så verkligheten ser ut. Det finns ju dock flera verktyg idag som
funkar ungefär som vilket UML-verktyg som helst (se t.ex. Semantic
Works från Altova).

Annoteringar mm finns beskrivet hur man kan gå tillväga med här:
http://www.xmlmodeling.com/papers/SemanticModelsForXSD


>
> Annars är ju OWL-DL väl semantiskt ekvivalent med någon ganska stor del


> av UML2 (minns inte referensen men jag tror mig ha sett artiklar om det

> där).
>

Det finns massor av likheter, men vad jag förstått måste relationer
modelleras som klasser i UML och det kan se bakvänt ut i många
sammanhang. Man kan dock utöka UML med en "Ontology UML profile".

Mvh,

Peter

Reply all
Reply to author
Forward
0 new messages