semantic web begrippen, definities en taxonomieën logica...

Post on 17-Aug-2020

0 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

• Semantic Web

• RDF en OWL

• Begrippen, definities en taxonomieën

• Logica als hulpstuk voor ontologie

• Protégé gebruiken

Visie

• A web of data that can be processed directly and indirectly by machines.

• The Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries.

• I have a dream for the Web in which computers become capable of analyzing all the data on the Web – the content, links, and transactions between people and computers. [..] The day-to-day mechanisms of trade, bureaucracy and our daily lives will be handled by machines talking to machines.

Kritiek

• Twee formaten voor dezelfde data: voor mensen en voor machines

• Mensen zullen spurieuze informatie produceren om Semantic Web technologie om de tuin te leiden

• Semantic Web technologie faciliteert censuur en inbreuk op privacy

Ontologie

Communicatie

Gesitueerde kennis

eXtensible Markup Language: XML datastructuren

Resource Description Framework: RDF abstracte datastructuren

Web Ontology Language: OWL terminologische axioma’s of beschrijvingen (descriptions)

Semantic Web Rule Language: SWRL regels, alternatief RIF

SPARQL Protocol and RDF Query Language: SPARQL queries, alternatief SWQRL

Vertrouwen en herkomst (Trust en provenance)

RDF RDF

RDF

SPARQL

SPARQL

SPARQL

SPARQL

reasoner

reasoner

RDF

RDF RDF

RDF

SPARQL

SPARQL

SPARQL

SPARQL

reasoner

reasoner

RDF

signature

RDF RDF

RDF

SPARQL

SPARQL

SPARQL

SPARQL

reasoner

reasoner

RDF

signature

encryptie

Belastingdienst

Vendor lockin in kennismanagement

Netwerk arrangementen

Organisatieverandering en overheidsbeleid

Open standaarden

Linked open data delen

Trust en provenance: informatierechten en –plichten, belangen bij fraude, persoonsgegevens

RDF

• Bestaat uit triplets: subject predicaat object

• Een triple is een description van het subject

• Subject is altijd een resource (vgl. database key)

• Predicaat is altijd een resource, en een eigenschap (property)

• Object is een resource of een literal (data)

• Alle resources worden geïdentificeerd met een URI

• Uniform, globaal uniek, geleasde namespaces

Subject = resource

Object = literal

Object = resource

Predicaat = resource

Predicaat = resource

• Een URI = een resource

• Twee URI’s = een of twee resources

Subject = resource

Object = literal

Object = resource

Predicaat = resource

Predicaat = resource

• Een URI = een resource

• Twee URI’s = een of twee resources

Subject = resource

Object = literal

Object = resource

Predicaat = resource

Predicaat = resource

Subject = resource

• Een URI = een resource

• Twee URI’s = een of twee resources

Subject = resource

Object = literal

Object = resource

Predicaat = resource

Predicaat = resource

Subject = resource

Owl:sameAs

• Een URI = een resource

• Twee URI’s = een of twee resources

Subject = resource

Object = literal

Object = resource

Predicaat = resource

Predicaat = resource

Subject = resource

Owl:differentFrom

• URI, bijv. http://www.belastingdienst.nl/keys/test.rdf#belastingplichtige of urn:bd:test:belastingplichtige

• In een namespace, bijv. bd:belastingplichtige in bd = “http://www.belastingdienst.nl/keys/test.rdf”

Subject = resource

Object = literal

Object = resource

Predicaat = resource

Predicaat = resource

Subject = resource

Subject Ns:Naam Ns:HeeftKind Ns:Property3

Ns:subject “Alexander Boer” Ns:object

Subject Ns:Naam Ns:HeeftKind Ns:Property3

Ns:subject “Alexander Boer” Ns:object

Ns:subject

Alexander Boer

Ns:object

Ns:naam

Ns:HeeftKind

Subject Ns:Naam Ns:HeeftKind Ns:HeeftOuder

Ns:subject “Alexander Boer” Ns:object

Ns:object Ns:subject

Ns:subject

Alexander Boer

Ns:object

Ns:naam

Ns:HeeftKind

Subject Ns:Naam Ns:HeeftKind Ns:HeeftOuder

Ns:subject “Alexander Boer” Ns:object

Ns:object Ns:subject

Ns:subject

Alexander Boer

Ns:object

Ns:naam

Ns:HeeftKind

Ns:HeeftOuder

Subject Ns:Naam Ns:HeeftKind Ns:HeeftOuder

Ns:subject “Alexander Boer” Ns:object

Ns:object Ns:subject

Ns:subject

Alexander Boer

Ns:object

Ns:naam

Ns:HeeftKind

Ns:HeeftOuder

Xs:String

Verschillen

Geen normalisatietechnieken nodig; zeer flexibele datastructuren

Optimalisatie voor afleiding van ge-impliceerde triplets

Meerdere keys voor dezelfde entiteit mag

Redeneren op basis van open world assumption

Geen integrity constraints; cellen mogen altijd leeg zijn

Semantisch…

Onderscheid tussen OWA en CWA redeneren

Als condities dan conclusie

Als condities [in de database] dan conclusie

Als [aannames houdbaar zijn] dan conclusie

Geen integrity constraints op datastructuren

als condities [in de database] dan falsum

Dit is een kwestie van evidentie, niet logica

Semantisch…

Onderscheid tussen OWA en CWA redeneren

Als condities dan conclusie

Als condities [in de database] dan conclusie

Als [aannames houdbaar zijn] dan conclusie

Geen integrity constraints op datastructuren

als condities [in de database] dan falsum

Dit is een kwestie van evidentie, niet logica

Hier is BD goed in

De periode eigen woning hoofdverblijf (begin) van een voorkomen van Spec inkomsten uit eigen woning hoofdverblijf van een IB belastingplichtige moet eerder of gelijk zijn aan de periode eigen woning hoofdverblijf (eind) van het voorkomen van zijn Spec inkomsten uit eigen woning hoofdverblijf indien het voorkomen van zijn Spec inkomsten uit eigen woning hoofdverblijf aan alle volgende voorwaarden voldoet: zijn periode eigen woning hoofdverblijf (begin) is gevuld

zijn periode eigen woning hoofdverblijf (eind) is gevuld

• RDF kan gebruikt worden voor alle data

• OWL wordt gebruikt om terminologische restricties op RDF data te leggen

• OWL wordt vaak als taal voor taxonomieën gebruikt

• Veel taxonomieën zijn echter niet ontologisch van aard (personal construct psychology: taxonomieën als beslisboom)

Dingen

Dingen die pijn doen

Vuur Lava Shampoo

Dingen die iedereen

lekker vindt

Snoep

Lastig

Een taxonomie is geen beslisboom

Alleen stricte subsumptie en logische monotonie

Ontologische stratificatie wordt niet gefaciliteerd

Een taxonomie is geen beslisboom:

Gesubsumeerd door meerdere concepten?

Sluiten subconcepten elkaar uit?

Partitioneren subconcepten het superconcept?

Restconcepten (niet-concepten) en differentiatie

Stricte subsumptie: een auto kan niet meestal een motorvoertuig zijn

Monotonie: terminologische kennis blijft altijd waar, in de tijd en in alle contexten van gebruik

Dus isoleerbaar en kopieerbaar

Ontologische stratificatie: een rijbaan kan niet een lijn, een vlak en een volume zijn

OWL

Resources zijn individuën, begrippen, of eigenschappen

Beschrijvingen zijn terminologische axioma’s: – A subClassOf B betekent dat A een voldoende

voorwaarde is om B te concluderen, en B een noodzakelijke voorwaarde om A te concluderen

– A equivalentTo B is A subClassOf B en vice versa

– A disjointWith B betekent dat niet A een noodzakelijke voorwaarde is om B te concluderen, en niet B een noodzakelijke voorwaarde om A te concluderen

• Ieder terminologisch axioma verbindt twee begrippen

• Een begrip hoeft niet aan een enkele term/naam gekoppeld te zijn

• We hoeven niet van alle beschrijvingen te weten of ze waar zijn om tot beslissingen te komen

• i = j betekent dat i en j keys voor dezelfde entiteit zijn

Syntax

XML/RDF

OWL/XML

Functional syntax

Manchester syntax

Turtle/n3/ntriples

DLML logica

Plan

Execute

Monitor

Diagnose

Model

Design

Implement

Monitor

Diagnose

Model

Wat doe je ermee?

• Classificeren: naarmate meer bekend wordt van een resource, zal deze omlaag schuiven in de taxonomie

• Subsumeren: de reasoner zal zelf een taxonomie aanleggen op basis van de beschrijvingen van begrippen

• Uitvragen van de RDF store met queries, en dan begint het werk pas echt (redeneren, handelen, monitoren, diagnose, …)

Logica’s

RDF schema

OWL Lite

DL

Full

OWL2 EL

QL

RL

Tableau calculus

OWL versus regels

• SWRL, RIF

• Met regels meer controle op toepassing van de regel

• Vrijere variabele-binding (???)

• Evt. CWA, Negation as failure, non-standaard manieren van redeneren

Bottom line

• Het abstracte datamodel van RDF is veel belangrijker dan concrete datastructuren

• De operationele semantiek van OWL in al zijn dialecten is moeilijk te doorgronden voor niet-experts

• Goed, gestructureerd modelleren blijft een probleem van de gebruiker: de taal geeft nauwelijks nuttige clues

Protégé gebruiken

Eerst Graphviz installeren

Versie 4.1

Het reasoner menu

Syntax in de applicatie is niet officieel! Jawel, nog een syntax…

Ontologiebestand maken

Kies XML/RDF syntax

Kies een URI voor het bestand

Let op: Protégé is niet erg gebruiksvriendelijk en stabiel

Focus…

Protégé is niet tekstgeörienteerd

De Pizza tutorial

http://owl.cs.manchester.ac.uk/tutorials/protegeowltutorial/

Of “pizza tutorial owl” in een zoekmachine

De handleiding is een goede intro in de taal en de applicatie

Geen voorbeeld van een goede taxonomie!

De opdracht

• Motorrijtuigenbelasting

• Een complete taxonomie, met disjointness, partitie, en restricties op eigenschappen

• Keuzes voor ontologische stratificatie

• Hoe ga je om met uitzonderingen?

• Welk stukje tekst wordt gemodelleerd?

• Wordt alle tekst gemodelleerd?

• We werken dit later uit…

top related