Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader
-
Upload
okalani-brayden -
Category
Documents
-
view
55 -
download
0
description
Transcript of Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader
![Page 1: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/1.jpg)
Ontoloogiate rakendamine infovaradesemantilisel kirjeldamiselSemantika koolitusprogrammi 5. mooduli kohandus
Tallinnas, 04.06.2010Peep Küngas, [email protected]
Koolitus toimub Euroopa Liidu struktuurifondide programmi “Infoühiskonna teadlikkuse tõstmine” raames, mida rahastab Euroopa Regionaalarengu Fond
![Page 2: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/2.jpg)
Semantiline koosvõime – organisatsioonide võime mõista andmete tähendust ühte moodi
<operation name="kylogi"><documentation><xtee:title>KÜ logi</xtee:title></documentation><input message="s:kylogiIn" /><output message="s:kylogiResponseOut" /></operation>
![Page 3: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/3.jpg)
Semantilise koosvõime arhitektuur
![Page 4: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/4.jpg)
Miks IS semantiliselt rikastada?
1. Korduvkasutuso andmekvaliteet (andmete vastuolulisus dubleerimisest tulenevalt)o investeeringud andmete tootmises
2. Andmeintegratsioon eri allikatesto vääritimõistmineo investeeringud IS integratsioonile
3. IS jätkusuutlikus
IS ja teeenuste semantiline kirjeldus ei ole arendajale lisakoormus/-kulu – muutub lihtsalt dokumenteerimise vorm, nt sõnastiku vormiks on XML-il põhinev keel OWL, mitte tabel analüüsispetsifikatsioonis
![Page 5: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/5.jpg)
Veebiteenuse kirjelduskeel WSDL
• Web Services Description Language (WSDL) v2.0• seni on valdavalt kasutusel v1.1
• W3C soovitus 26. juuni 2007• WSDL on XML formaat veebiteenuste , sh
kasutatavate sõnumite, kirjeldamiseks
![Page 6: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/6.jpg)
http://www.w3.org/TR/wsdl20-primer/
![Page 7: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/7.jpg)
Semantilised veebiteenused
• Semantic Web Services (SWS)• Teenused, mille kirjeldus sisaldab teenuse
semantikat• Eesmärgiks automatiseerida teenuste
otsingut, analüüsi, kombineerimist, käivitamist, monitooringut jne
![Page 8: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/8.jpg)
Semantics Required for Web Processes
ExecutionSemantics
QoS Semantics
FunctionalSemantics
Data/
InformationSemantics
Development/ Description/ Annotation
Teenuse semantika komponendid
Execution, Adaptation
and MediationBPWS4J,
activeBPEL,WSMX
METEOR-S
Composition, Configuration
and Negotiation
BPEL, WS-Agreement, WS-
PolicyMETEOR-S (MWSCF)
Publication/ Discovery
(Semantic) UDDIMETEOR-S
(MWSDI)
WSDL, WSDL-S, SAWSDL, WSMO,
OWL-SMETEOR-S (MWSAF)
![Page 9: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/9.jpg)
![Page 10: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/10.jpg)
Näide – milleks SWS?
• Olgu (EMTA, ajakirjandus, ..) vaja leida pankrotistunud ettevõtte omanikele kuuluva kinnisvara väärtus
1. Loome ettevõtte omanike nimekirja (äriregistri päring)2. Loome igale omanikule kuuluvate kinnistute nimekirja
(kinnisturaamatu päring)3. Määrame iga kinnistu väärtuse (mõne kinnisvarafirma või
Maa-ameti hindamiste andmebaas vm infoallikas)
![Page 11: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/11.jpg)
ariregister::getCompanyDetails()<complexType name="getCompanyDetails"><sequence><element name="registryCode" type="string"/></sequence></complexType>
…<complexType name=”BoardMember"><sequence><element name="idCode" type="tns:PersonIdCode"/><element name="isValid" type="boolean"/><element name="name" type="tns:PersonName"/></sequence></complexType>…<complexType name="PersonIdCode">
<sequence><element name="estonianIdCode” type="string"/><element name="foreignIdCode" type="string"/></sequence></complexType>
![Page 12: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/12.jpg)
Olemasolevad “klotsid”…
objektiHind
getImmovableDetails
getRegisteredImmovables
getCompanyDetails
registryCode
estonianIdCode
nationalIdCode
newRegisterPartNumber
registerPartNumber
cadastralRegistryNumber
registrikood summa
![Page 13: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/13.jpg)
..vajavad seostamist
objektiHind
getImmovableDetails
getRegisteredImmovables
getCompanyDetails
registryCode
estonianIdCode
nationalIdCode
newRegisterPartNumber
registerPartNumber
cadastralRegistryNumber
registrikood summa
![Page 14: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/14.jpg)
registryCode
estonianIdCode
nationalIdCode
newRegisterPartNumber
registerPartNumber
cadastralRegistryNumber
registrikood summa
EstonianIdentifica
tionCode
New LandRegistryNumber
CadastralRegistryNumber
Value
BusinessRegistry
Code
NationalIdentifica
tionCode
SwedishIdentifica
tionCode
LandRegistryNumber
Old LandRegistryNumber
..vajavad kontseptuaalset korrastamist
![Page 15: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/15.jpg)
Tulemiks kompleksteenus
objektiHind
getImmovableDetails
getRegisteredImmovables
getCompanyDetails
Business
Registry
Code
Value
![Page 16: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/16.jpg)
WSMO Studio
• Käivita WSMO Studio• Impordi loodud ontoloogia WSMO Studiosse
• kontrolli üle ontoloogia elemendid, seosed• Impordi WSDL (faili laiendiks peab
olema .wsdl)• veendu, et WSDLi struktuur tuli kenasti sisse
![Page 17: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/17.jpg)
SA-WSDL
• Semantic Annotations for WSDL and XML Schema• W3C soovitus (recommendation) 28. august 2007
o http://www.w3.org/TR/2007/REC-sawsdl-20070828/o http://www.w3.org/TR/2007/NOTE-sawsdl-guide-20070828/ <<
usage guide• Evolutsiooniline lähenemine - toetub ja laiendab
olemasolevaid standardeid• Sõltumatu valdkonna mudeli semantika vormingust
o “omad”: RDFS, OWL o OMG: UML (OUP)o korraga võib kasutada mitmeid ontoloogiaid
>> WSDL toetab süntaktilist koosvõimet>> SA-WSDL toetab semantilist koosvõimet
![Page 18: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/18.jpg)
![Page 19: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/19.jpg)
SA-WSDL terminoloogia
1. semantiline mudel (semantic model)o masin-loetav maailma osa peegelduso nt ontoloogia, taksonoomia, sõnastik, ...
2. kontsept (concept)o semantilise mudeli element, nt mõiste, klassifikaatori element,
seos, omaduse väärtus, instants, aksioom, reegel, ..o peab olema URI abil identifitseeritav
3. semantiline annotatsioon (semantic annotation)o infokogumis (dokumendis) olev täiendav info mis viitab mõistele
semantilises mudelis selleks, et kirjeldada infokogumis osao SA-WSDLis on semantiline annotatsioon XML parameetritena
(attribute)
![Page 20: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/20.jpg)
SA-WSDL = 3 märgendit
1.modelReferenceo seose spetsifitseerimiseks WSDL või XML Schema
komponendi ja mõne semantilise mudeli kontsepti vahel2.liftingSchemaMapping
o transformatsiooni spetsifitseerimiseks XML-põhisest andmekogumist > semantilise mudeli kujule
3.loweringSchemaMappingo transformatsiooni spetsifitseerimiseks vastupidisel
suunal
![Page 21: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/21.jpg)
63
SA-WSDL skoop
63
SA-WSDL ei käsitle rakenduslikke WSDL komponente
modelReference
schemaMapping
![Page 22: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/22.jpg)
SA-WSDL - modelReference
• Seose spetsifitseerimiseks WSDL või XML Schema komponendi ja mõne semantilise mudeli kontsepti vahel
• Komponendiks võivad ollao WSDL komponent
liides - wsdl:interface teenus - wsdl:operation erind - wsdl:fault
o WSDL Type Definitions / XML Schema lihttüübi defineering - xs:simpleType komplekstüübi defineering - xs:complexType elemendi deklareering - xs:element parameetri deklareering - xs:attribute
![Page 23: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/23.jpg)
modelReference teoorias
http://www.w3.org/ns/sawsdl:<xs:attribute name="modelReference" type="listOfAnyURI"/>
<xs:simpleType name="listOfAnyURI"><xs:list itemType="xs:anyURI"/></xs:simpleType>
• Võib viidata mitmele mõistele – kõik kehtivad• Soovitavalt viitab dokumendile mis määratleb semantiliselt
kirjeldatavat elementio dokument võib olla WSDL väline või samas WSDLiso Best Practice Recipes for Publishing RDF Vocabularies,
CoolURIs, ...
![Page 24: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/24.jpg)
modelReference [0..*]
<wsdl:types> ...<xs:simpleType name=“KY“>...</xs:simpleType></wsdl:types>
katastriüksus
maakorralduse ontoloogia (OWL)
WSDL lihttüüp
<wsdl:types> ...<xs:simpleType name=“KY“sawsdl:modelReference="http://riik.ee/ontoloogiad/maakorraldus/katastriyksus /space/ http://city24.ee/ont/katastriyksus "></xs:simpleType></wsdl:types> SA-WSDL annotatsioon mitmele ontoloogia/mõistele
suurendab tõenäosust teenust otsinguga leida
katastriüksus
kinnisvara ontoloogia (OWL)
![Page 25: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/25.jpg)
XSD kompleksandmetüüp
• Võivad sisaldada parameetreid ja elemente• Defineeritakse kasutades olemasolevaid
andmetüüpe (sh kasutaja defineeritud) ningo sequence – kohustuslike elementide hulk, järjekord on
tähtiso all – kohustuslike elementide hulk, järjekord ei ole tähtiso choice – elementide hulk, millest üks valitakse
![Page 26: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/26.jpg)
XSD kompleksandmetüüp
N: andmetüübi defineerimine<complexType name=“fyysIsikType”> <sequence>
<element name=“eesnimi” type=“string” minOccurs=“0” maxOccurs=“unbounded”/>
<element name=“perenimi” type=“string”/> </sequence> <attribute name=“tiitel” type=“string”
use=“optional”/></complexType>
.. ja kasutamine<element name=“fyysIsik” type=“fyysIsikType”/>
![Page 27: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/27.jpg)
modelReference komplekstüüpide bottom-level annoteerimiseks
<wsdl:types> ...<complexType name=“aadress1"><sequence><element name=“maakond“ type="xsd:string"/><element name=“tänav" type="xsd:string"/>...</sequence></complexType>...</wsdl:types>
aadress
tänav
maakond
…
maakorralduse ontoloogia (OWL)
koosneb
koosneb
WSDL komplekstüüp
<wsdl:types> ...<complexType name=“aadress1"> <sequence><element name=“maakond“ type="xsd:string" sawsdl:modelReference =“http://www.riik.ee/ontoloogiad/maakorraldus/maakond”/><element name=“tänav" type="xsd:string“sawsdl:modelReference =…/tanav”/>...</sequence>
![Page 28: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/28.jpg)
modelReference komplekstüüpide top-level annoteerimiseks
<wsdl:types> ...<complexType name=“aadress1"><sequence><element name=“maakond“ type="xsd:string"/><element name=“tänav" type="xsd:string"/>...</sequence></complexType>...</wsdl:types>
aadress
tänav
maakond
…
maakorralduse ontoloogia (OWL)
koosneb
koosneb
WSDL komplekstüüp
<wsdl:types> ...<complexType name=“aadress1"sawsdl:modelReference = “http://www.riik.ee/ontoloogiad/maakorraldus/aadress"> <sequence><element name=“maakond“ type="xsd:string"/><element name=“tänav" type="xsd:string"/> ...</sequence>
![Page 29: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/29.jpg)
schemaMapping komplekstüüpide annoteerimisel
<wsdl:types> ...<complexType name=“aadress1"><sequence><element name=“maakond“ type="xsd:string"/><element name=“tänav" type="xsd:string"/>...</sequence></complexType>...</wsdl:types>
aadress
tänav
maakond
…
maakorralduse ontoloogia (OWL)
koosneb
koosneb
WSDL komplekstüüp
<wsdl:types> ...<complexType name=“aadress1"sawsdl:modelReference = “http://www.riik.ee/ontoloogiad/maakorraldus/aadress"sawsdl:liftingSchemaMapping = “http://.../vastavustabelid/aadress1_ontoloogia.xslt”sawsdl:loweringSchemaMapping = http://.../ontoloogia_aadress1.xslt”><sequence> …
![Page 30: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/30.jpg)
schemaMapping tehnoloogiad
<wsdl:types> ...<complexType name=“aadress1"><sequence><element name=“maakond“ type="xsd:string"/><element name=“tänav" type="xsd:string"/>...</sequence></complexType>...</wsdl:types>
aadress
tänav
maakond
…
maakorralduse ontoloogia (OWL)
koosneb
koosneb
WSDL komplekstüüp
lowering• XSLT• XQuery• vm
lifting• SPARQL• XSLT• XQuery• vm
![Page 31: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/31.jpg)
schemaMapping kasutamine
• vastavusse viiakse andmete tasandil, mitte skeemide tasandil
• mappingud on kasutatavad andmeteisenduselo kui on vaja käivitada teenust ja algandmed on RDFiso mediaatorina, kui on vaja ühe teenuse väljund suunata
teise teenuse sisendiks
![Page 32: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/32.jpg)
liftingSchemaMapping näide• Olgu veebiteenuse väljund järgmine
<KY_piirang xmlns="http://riik.ee/ont/maakorraldus#">
piirang_puudub </KY_piirang>
• ..ning olgu see väljund vaja anda semantilisele agendile, so teisendada agendile sobivale semantilisele kujule – RDF
• Teisenduseks kasutame XSLTd või XQuery’t• Tulemus:
<rdf:RDF xmlns:rdf=“..." <maakorraldus:katastriyksys> <piirang rdf:datatype=“...#boolean"> false </piirang> </maakorraldus:katastriyksys> </rdf:RDF>
![Page 33: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/33.jpg)
Semantilise annoteerimise ülesanne
• Iga tiim (1-2 inimest) saab ülesande kirjeldada, sh semantiliselt, paari infovarao järgida semantika juhisto täiendada töö käigus ontoloogiat
• Luua üks kompleksteenuso teenuste kirjelduste alusel otsida vajalikud “klotsid”
teistelt rühmadelto kirjeldada kompleksteenus
![Page 34: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/34.jpg)
Annoteerimise skeemid
• Eesnimi suvalises kontekstis– http://riha.eesti.ee/onto/isikuontoloogia/eesnimi• Juristi eesnimi– http://riha.eesti.ee/onto/ametiteontoloogia/Jurist
http://riha.eesti.ee/onto/isikuontoloogia/eesnimi• Juristi eesnimi passis– http://riha.eesti.ee/onto/ametiteontoloogia/Jurist
http://riha.eesti.ee/onto/isikuontoloogia/omabPassi http://riha.eesti.ee/onto/dokumentideontoloogia/Pass http://riha.eesti.ee/onto/isikuontoloogia/eesnimi
![Page 35: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/35.jpg)
KOKKUVÕTEKuidas edasi?
![Page 36: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/36.jpg)
SA-WSDL toega töövahendid
• XMLSpy ja Semantic Works, Altova• Semantic Tools for Web Services, IBM alphaWorks • WSMO Studio, Ontotext
o http://www.wsmostudio.org/o http://sourceforge.net/news/?group_id=119791
• Radiant WSDL-S/SA-WSDL Annotation Tool, University of Georgia
• Tekstiredaktorid• http://www.w3.org/2002/ws/sawsdl/#tools
![Page 37: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/37.jpg)
Koos semantilise koosvõimeni!
• Semantiline koosvõime– tagab teenuste lihtsa leidmise ja rakendamise– tagab vajadusel kiire rakenduste muutmise– võimaldab tuvastada andmete ja teenuste liiasust– lihtsustab tarkavara dokumentatsioonist arusaamist
• Semantikavarade süstemaatilise haldamiseta ei saa olla semantilist koosvõimet!
![Page 38: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/38.jpg)
Semantikaalast informatsiooni
Millega on tegemist, kuidas ennast arengutega kursis hoida ja oma panus anda?
1. Riigi infosüsteemi semantilise koosvõimega seotud dokumentatsioon, semantika töörühma materjalid jms http://www.riso.ee/wiki/Semantika
2. Teavituskanalina postitusnimekiri https://lists.riik.ee/listinfo/semantika
3. Semantika foorum aadressil http://www.riso.ee/et/forum/4
![Page 39: Tallinnas, 04.06.2010 Peep Küngas, peep@soatrader](https://reader031.fdocument.pub/reader031/viewer/2022020920/5681387b550346895da02c79/html5/thumbnails/39.jpg)
Täname!
Lektoriga saab ühendust:1. Peep Küngas mailto://[email protected] callto://peepkungas
Koolitus toimus Euroopa Liidu struktuurifondide programmi “Infoühiskonna teadlikkuse tõstmine” raames, mida rahastab Euroopa Regionaalarengu Fond