AG Netzbasierte Informationssysteme http://www.ag-nbi.de
Netzbasierte Informationssysteme Semantic Web
OWL und Anwendungen
Prof. Dr.-Ing. Robert Tolksdorf Freie Universität Berlin
Institut für Informatik
Netzbasierte Informationssysteme mailto: tolk@inf.fu-berlin.de
http://www.robert-tolksdorf.de
Beiträge von Elena Paslaru Bontas Simperl
AG Netzbasierte Informationssysteme http://www.ag-nbi.de
Überblick
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 3
Überblick
• Ontololgien / OWL
• Anwendungen
AG Netzbasierte Informationssysteme http://www.ag-nbi.de
OWL
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 5
Nutzbarkeit von Metadaten
• Damit Metadaten nutzbar sind
• muss der Informationsanbieter sich so ausdrücken, dass Informationsnutzer ihn verstehen
• muss der Informationsnachfrager so fragen, dass er etwas finden kann
• Gemeinsame Benutzung von Konzepten
• Gemeinsame Sprache
• Ontologie zur Definition einer gemeinsamen Sprache
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 6
Menschliche und
maschinelle Interpretation
• Wie sind Aussagen zu interpretieren?
• "Ich möchte einen Schein haben"
• Menschen wissen, dass ein Universitätsstudent damit einen Leistungsnachweis meint (oder will jemand 100€
kassieren?)
• Maschinen fehlt dieser Kontext aus Begriffen und Zusammenhängen
• Der rein textuelle Begriff führt nicht weiter (Geldschein,
Führerschein, Heiligenschein…)
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 7
Gemeinsame Sprache
• Gemeinsame Sprache enthält
• Definiertes Vokabular (Lexeme)
("Vorlesung", "Lecture", "Seminar", "Diplom", "Master")
• Verständnis, welche Konzepte durch Lexeme bezeichnet werden
(Lecture, Seminar, Master (?))
• Verständnis, welche Beziehungen bezeichnet werden (Student besucht Seminar)
• Ontologie:
"An ontology is a specification of a conceptualization"
[Gruber 93] Symbol
steht fürDing Konzept
Konzept
ruft hervor nimmt Bezug
Semiotisches Dreieck [Ogden Richards 23]
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 8
Ontologie
• Ist Beschreibung einer Wissensdomäne mit
• Standardisierter Terminologie (Klassen, Axiome etc) für Konzepte
• Beziehungen zwischen Konzepten
• Ableitungsregeln
• Ziel:
Einschränkung der Interpretationsmöglichkeiten von Symbolen
• Dadurch: Gemeinsame Sprache
• Dadurch: Wissensaustausch möglich
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 9
Ontologie vs. Taxonomie
• Ontologie:
• Graph aus inhaltlichen Bezügen
• Taxonomie:
• hierarchische (oder poly- hierarchische) Klassifikation von Begriffen
Dozent Seminar
Schein Student
veranstaltet
erwirbt
besucht unterschreibt berät
• Universitätsangehörige
• Studierende
• Dozenten
• Veranstaltungen
• Seminar
• Vorlesung
• Leistungsnachweise
• Schein
• Diplom
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 10
Weitere Abgrenzungen
• Kontrolliertes Vokabular
• Liste definierter Schlagworte/Terme
• zur Klassifikation, Indexierung, Suche
• keinerlei inhaltlichen Bezüge
• Thesaurus
• Ursprünglich Liste von Synonymen
• Zusätzlich: Bezüge zwischen Begriffen (siehe auch, verwandt)
• Ziel: Hilfe zum Auffinden von Begriffen
• „Ontology: A thesaurus gone mad“
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 11
Arten von Ontologien
• Top Level Ontologien
• Domänenüberschreitend
• Allgemeine Konzepte
• Person, Mensch, Tätigkeit, Artefakt
• Domain Ontologien
• Auf bestimmten Bereich bezogen
• Dozent, Veranstaltungsbesuch, Schein
• Als Ontologien verpackte
Daten- und Klassenmodelle
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 12
Top Level Ontologien
• Es gibt hinreichende Ansätze zu Top-Level Ontologien
• Cyc/OpenCyc (http://www.opencyc.com)
• 6000 Konzepte, 60000 Aussagen
• WordNet (http://www.cogsci.princeton.edu/~wn)
• 146350 Lexeme
• IEEE P1600.1 Standard Upper Ontology (SUO) Working Group (http://suo.ieee.org)
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 13
Domänenontologien
• Es gibt hinreichend Domänenontologien, oft aber nur Klassifikationsschemata
• UMLS (Medizinische Klassifikationen, Semantische Netze, http://www.nlm.nih.gov/research/umls)
• ICD10 (Krankheiten)
• Produktschemata (eCl@ss, http://www.eclass.de)
• Indexierungsschemata (Bibliotheken)
• DAML Ontology Library
(http://www.daml.org/ontologies)
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 14
Anwendung von Ontologien
• Kommunikation
• Verständnis durch gleichen Bedeutungszusammenhang
• Automatisches Schließen
• Anwendung von Regeln auf Wissen
• Inferieren neuen Wissens
• Repräsentation von Wissen
• Explizite Notation von Wissen
• Wiederverwendung
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 15
Web Ontology Language OWL
• OWL verfeinert und erweitert
Modellierungsmöglichkeiten von RDF
• Es gibt abgesicherte und nicht abgesicherte Web-Seiten:
<owl:Class rdf:ID="protectedPage">
<rdfs:subClassOf rdf:resource="#webPage"/>
</owl:Class>
<owl:Class rdf:ID="unprotectedPage">
<rdfs:subClassOf rdf:resource="#webPage"/>
<owl:disjointWith rdf:resource="#protectedPage"/>
</owl:Class>
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 16
Klassenbildung
• Klasse Car:
<owl:Class rdf:ID="Car">
<rdfs:comment>no car is a person</rdfs:comment>
• Ist Unterklasse einer anonymen Klasse und erfüllt auch deren Eigenschaften:
<rdfs:subClassOf>
<owl:Class>
<owl:complementOf rdf:resource="#Person"/>
</owl:Class>
</rdfs:subClassOf>
</owl:Class>
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 17
Eigenschaften
• Eigenschaften sind Relationen zwischen einem Objekt und
• a) anderen Objekten
<owl:ObjectProperty rdf:ID="hasParent">
<rdfs:domain rdf:resource="#Animal"/>
<rdfs:range rdf:resource="#Animal"/>
</owl:ObjectProperty>
• b) Daten
<owl:DataTypeProperty rdf:ID="age">
<rdf:type rdf:resource=
"&owl;FunctionalProperty"/>
<rdfs:range
rdf:resource="http://www.w3.org/2000/10/
XMLSchema#nonNegativeInteger"/>
</owl:DataTypeProperty>
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 18
Modellierungskonzepte
• Inverse Eigenschaften
<owl:ObjectProperty rdf:ID="hasChild">
<owl:inverseOf rdf:resource="#hasParent"/> …
• Transitive Eigenschaften
<owl:ObjectProperty rdf:ID="descendant">
<rdf:type rdf:resource="&owlTransitiveProperty"/> …
• Synonyme
<owl:ObjectProperty rdf:ID="hasMom">
<owl:samePropertyAs rdf:resource="#hasMother"/> …
<owl:Class rdf:ID="Mom">
<owl:sameClassAs rdf:resource="#Mother"/> …
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 19
Eigenschaften genauer modellieren
• Eltern von Personen sind Personen:
<owl:Class rdf:ID="Person">
<rdfs:subClassOf rdf:resource="#Animal"/>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasParent"/>
<owl:allValuesFrom rdf:resource="#Person"/>
</owl:Restriction>
</rdfs:subClassOf>
• Personen haben genau einen Vater:
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasFather"/>
<owl:cardinality>1</owl:cardinality>
</owl:Restriction>
</rdfs:subClassOf>
<owl:Class/>
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 20
OWL Varianten
• OWL-Full
• Volle Modellierungsmächtigkeit
(z.B. Individuen können gleichzeitig als Klassen gelten)
• Nicht entscheidbar!!
• OWL-DL
• OWL-Full + Trennung zwischen Individuen und Klassen + Einschränkung des RDF-Vokabulars + Einschränkungen auf Kardinalitäten +…
• Entscheidbar in nicht-exponentieller Zeit
• OWL-Lite
• OWL-DL + weitere Einschränkungen auf Kardinalitäten +…
• Entscheidbar in exponentieller Zeit
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 21
Beispiel CIM/XML
• EPRI (Electric Power Research Institute) Common
Information Model (IEC 61970-301) (CIM) Extensions for Electrical Distribution and Asset Modeling
• Ziel: Rahmen zur Modellierung von Stromverteilung und entsprechenden Geräten
• Status: IEC Entwicklung
• Quellen: http://standards.ces.com/cim/
http://standards.ces.com/cim/cim7f/CIM-schema- cimu07f.xml
• Modell aus der Domäne “Elektrik”
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 22
Klassen und Eigenschaften
<rdfs:Class rdf:ID="PowerSystemResource">
<rdfs:label xml:lang="en">PowerSystemResource</rdfs:label>
<rdfs:subClassOf rdf:resource="rdfs:Resource" />
<rdfs:comment>"A power system component that can be either an individual element such as a switch or a set of elements such as an substation.
PowerSystemResources that are sets could be members of other sets. For example a Switch is a member of a Substation and a Substation could be a member of a division of a Company"</rdfs:comment>
</rdfs:Class>
<rdfs:Class rdf:ID="Breaker">
<rdfs:label xml:lang="en">Breaker</rdfs:label>
<rdfs:subClassOf rdf:resource="#Switch" />
<rdfs:comment>"A mechanical switching device capable of making, carrying, and breaking currents under normal circuit conditions and also making, carrying for a specified time, and breaking currents under specified
abnormal circuit conditions e.g. those of short circuit. The typeName is the type of breaker, e.g., oil, air blast, vacuum, SF6."</rdfs:comment>
</rdfs:Class>
<rdf:Property rdf:ID="Breaker.ampRating">
<rdfs:label xml:lang="en">ampRating</rdfs:label>
<rdfs:domain rdf:resource="#Breaker" />
<rdfs:range rdf:resource="#CurrentFlow" />
<rdfs:comment>"Fault interrupting rating in amperes"</rdfs:comment>
</rdf:Property>
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 23
Eigenschaften
<rdf:Property rdf:ID="Breaker.OperatedBy">
<rdfs:label xml:lang="en">OperatedBy</rdfs:label>
<rdfs:domain rdf:resource="#Breaker" />
<rdfs:range rdf:resource="#ProtectionEquipment" />
<cims:inverseRoleName rdf:resource="#ProtectionEquipment.Operates"/>
<cims:multiplicity rdf:resource="http://www.cim- logic.com/schema/990530#M:0..n"/>
<rdfs:comment>"Circuit breakers may be operated by protection relays."</rdfs:comment>
</rdf:Property>
<rdf:Property rdf:ID="ProtectionEquipment.Operates">
<rdfs:label xml:lang="en">Operates</rdfs:label>
<rdfs:domain rdf:resource="#ProtectionEquipment" />
<rdfs:range rdf:resource="#Breaker" />
<cims:inverseRoleName rdf:resource="#Breaker.OperatedBy" />
<cims:multiplicity rdf:resource="http://www.cim- logic.com/schema/990530#M:0..n" />
<rdfs:comment>"Circuit breakers may be operated by protection relays."</rdfs:comment>
</rdf:Property>
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 24
Beispiel GO
•
Gene Ontology• Ziel: “The goal of the Gene Ontology Consortium is to produce a dynamic controlled vocabulary that can be applied to all
organisms even as knowledge of gene and protein roles in cells is accumulating and changing”
• Status: Datensammlung, Public Domain
• Quelle: http://www.geneontology.org/
•
Originaldaten:term: myosin
goid: GO:0016459
definition: A protein complex that functions as a molecular motor; uses the energy of ATP hydrolysis to move actin filaments or to move vesicles or other cargo on fixed actin filaments; has magnesium-ATPase activity and binds actin.
definition_reference: ISBN:96235764 term: myosin ATPase
goid: GO:0008570
definition: The hydrolysis of ATP by myosin that provides the energy for actomyosin contraction.
definition_reference: NC-IUBMB:Proposed Changes to the Enzyme List concerning ATPases and GTPases
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 25
GO Oberes Modell
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE go:go>
<go:go xmlns:go="http://www.geneontology.org/xml-dtd/go.dtd#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<go:version timestamp="Wed May 9 23:55:02 2001" />
<rdf:RDF>
<go:term rdf:about="http://www.geneontology.org/go#GO:0003673">
<go:accession>GO:0003673</go:accession>
<go:name>Gene_Ontology</go:name>
<go:definition></go:definition>
</go:term>
<go:term rdf:about="http://www.geneontology.org/go#GO:0003674">
<go:accession>GO:0003674</go:accession>
<go:name>molecular_function</go:name>
<go:definition>The action characteristic of a gene product.</go:definition>
<go:part-of rdf:resource="http://www.geneontology.org/go#GO:0003673" />
<go:dbxref>
<go:database_symbol>go</go:database_symbol>
<go:reference>curators</go:reference>
</go:dbxref>
</go:term>
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 26
GO Unteres Modell
<go:term rdf:about="http://www.geneontology.org/go#GO:0016209">
<go:accession>GO:0016209</go:accession>
<go:name>antioxidant</go:name>
<go:definition></go:definition>
<go:isa rdf:resource="http://www.geneontology.org/go#GO:0003674" />
<go:association>
<go:evidence evidence_code="ISS">
<go:dbxref>
<go:database_symbol>fb</go:database_symbol>
<go:reference>fbrf0105495</go:reference>
</go:dbxref>
</go:evidence>
<go:gene_product>
<go:name>CG7217</go:name>
<go:dbxref>
<go:database_symbol>fb</go:database_symbol>
<go:reference>FBgn0038570</go:reference>
</go:dbxref>
</go:gene_product>
</go:association>
…
</go:term>
…
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 27
Herausforderungen
• Wo kann Semantic Web angewandt werden?
• Semantic Web in der Pathologie
• Reisewissen
• KnowledgeWeb case studies
• Was ist der nützliche Effekt von Semantic Web
• Wissensnetze
AG Netzbasierte Informationssysteme http://www.ag-nbi.de
Vergleich von Bewerber- und Stellenprofilen
Projekt Wissensnetze
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 29
Online Recruitment
• Trend weg von Portalen hin zu Suchmaschinen
• Portale sind gebührenfinanziert (jobpilot, monster, stepstone etc.)
• Staatliche Portale (Arbeitsagentur, www.ams.se)
• Anbieter veröffentlichen direkt auf ihren Websites
• Spezialisierte Suchmaschinen fokussieren sich auf diese Angebote (wwj, Yahoo HotJobs)
Erstellen der Anzeige
Anzeige veröffentlichen
Bewerbungen erhalten und vorselektieren
Endgültige Entscheidung
Jobprofil überlegen Manuelle Suche
oder Jobprofil veröffentlichen Bewerbungen
schreiben und verschicken Bewerbungs-
gespräch
Arbeitgeber Bewerber
Stelle ausschreiben
Job suchen
Kontrollierte Vokabulare
Dezentral auf Firmen-
webseiten
Basiskriterien automatisch
prüfen
./.
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 30
Online Recruitment mit Semantic Web
•
Erhöhte Markttransparenz zum Vorteil des Stellensuchenden• Angebote einfacher zu finden
• Suchergebnisse mit höherer Präzision
•
Vorteil beim Anbieter• Schnellere und günstigere Stellenbesetzung
•
Änderung bisheriger Geschäftsmodelle• Gebührenfinanzierte Portale verlieren Markt
• Spezialisierte Suchmaschinen gewinnen
•
Zusätzlicher Wert:• Stellenangebote und Bewerberprofile könnten in
HR-Management nach Anstellung übernommen werden
•
Wissensnetze (FU, HU Berlin): BMBF-Internetökonomie, Berliner Forschungszentrum "InterVal - Internet and Value Chains"AG Netzbasierte Informationssysteme http://www.ag-nbi.de 31
Online Recruitment mit Semantic Web
• Präzision der Analyse für Suchmaschinen ist mangelhaft
• Wie erkennt man zuverlässig ein (aktuelles) Stellenangebot im Web?
• Wie analysiert man ein erkanntes Stellenangebot?
(Stellenprofil, erforderliche Skills)
• Möglichkeiten:
• Bei Suchmaschinen: Computerlinguistische Verfahren
• Bei Anbietern: Annotation von Angeboten
• Szenario: Einsatzpfad für Semantic Web
• Organisatorisch:
• Stellenanbieter nutzen gemeinsames kontrolliertes Vokabular
• Stellensuchende nutzen gleiches Vokabular für Stellengesuche
• Technisch:
• Einfache Annotation Reichere Annotation Ersatz von Freitext durch RDF
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 32
Einfache Annotation
• Mit RDF und Bezug auf gemeinsames Vokabular (z.B. abgeleitet von HR-XML)
<html>
<head>
<rdf:RDF xmlns:rdf="…#" xmlns:jpp="…#">
<jpp:JobPositionPosting
rdf:about="http://www.example.org/jp1.html"/>
</rdf:RDF>
</head>
<body>…Job posting in free text…
</body>
</html>
• Suchmaschinen können so Stellenangebote identifizieren
• Tatsächlich ein Stellenangebot vorliegen zu haben hilft
computerlinguistischen Verfahren und erhöht Präzision
der Indexierung
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 33
Reichere Annotation
•
Erfolg der einfachen Annotation bietet Anreiz zu einer erweiterten Beschreibung•
Präzisere Klassifikation von Angeboten mit Hilfe bestehender Standards und Klassifikationen• Stellenbeschreibungen
• Berufskennziffern (BKZ) – Bundesagentur für Arbeit
• Standard Occupation Classification (SOC) System
• Wirtschaftszweige
• Klassifikation der Wirtschaftszweige (WZ2003) – Statistisches Bundesamt
• North American Industry Classification System (NAICS)
• Skills
• Skills Ontology – KOWIEN Projekt, Uni Essen
• HR-XML – HR-XML Konsortium
• HR-BA-XML – Version der Bundesagentur für Arbeit
• HR-XML-SE – Schwedische HR-XML Version
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 34
Reichere Annotation - Beispiel
<html>
<head>
<rdf:RDF xmlns:rdf="…#" xmlns:jpp="…#“
xmlns:skills="…#">
<jpp:JobPositionPosting
rdf:about="http://www.example.org/jp1.html"/>
<jpp:requiredCompetence>
<skills:Java>
<skills:hasCompetenceLevel rdf:resource="…#expert"/>
</skills:Java>
</jpp:requiredCompetence>
</rdf:RDF>
</head>
<body>
… Job posting in free text …
</body>
</html>
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 35
Ersatz von Freitext durch RDF
• In Konsequenz Ersetzung des Freitexts des Stellenangebots durch RDF Beschreibung:
<?xml version="1.0" encoding="UTF-8" ?>
<rdf:RDF xmlns:rdf="…#" xmlns:jpp="…#" xmlns:skills="…#">
<jpp:JobPositionPosting
rdf:about="#JobPositionPostingId-inf-44">
<jpp:hasHiringOrganisation>
<org:Organisation>
<org:name>Freie Universität Berlin</org:name>
</org:Organisation>
</jpp:hasHiringOrganisation>...
<jpp:requiredCompetence>
<skills:Java>
<skills:hasCompetenceLevel rdf:resource="…#expert"/>
</skills:Java>
</jpp:requiredCompetence>...
</jpp:JobPositionPosting>...
</rdf:RDF>
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 36
Prototyp: Human Resource Ontology
• Definition von Konzepten für
• Stellensuchende, Stellenangebote, Bewerbungen
• Semantic Matching integriert Annotationen mit
kontrollierten Vokabularien unter Verwendung von Hintergrundwissen zur Anwendungsdomäne
• Unser Prototyp kann Stellenangebote und
Bewerberprofile semantisch vergleichen (statt reinem Textvergleich mit Vektorraummodell)
Bewerberbeschreibung (HR-BA-XML + BKZ)
Organisation Industrie (WZ2003) Person
Kompetenzen (KOWIEN)
Stellenbeschreibung (HR-BA-XML + BKZ)
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 37
Prototyp: Semantic Matching
• Taxonomische Struktur als Basis zur Errechnung semantischer Abstände
• Ähnlichkeit zwischen zwei Konzepten c1 and c
2 ist
bestimmt durch ihren Abstand d
c(c
1, c
2). Dieser drückt ihre Position in der Konzepthierarchie aus
•dC(Java,C) = (1/64 - 1/512) + (1/64 - 1/256) = 13/512
•simC(Java,C) = 1 – 13/512 = 0,97
Höhere
Programmiersprache
Objektorientiert Imperativ
prozedural
Rein objektorientiert
Java Small talk C++ Delphi
C COBOL
Hybridsprachen
m(5) = 1/64
m(6) = 1/128
m(7) = 1/256
m(8) = 1/512
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 38
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 39
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 40
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 41
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 42
Analyse
• Suchmaschinen können zuverlässiger crawlen und Semantic Matching für höhere Präzision benutzen
• Jobsuchende profitiert von
• der erhöhten Markttransparenz
• der effizienteren und schnelleren Jobvermittlung
• der exakteren Suchergebnissen
• dem annotierten Profil
• Arbeitgeber profitiert von
• Semantic Matching zur Automatisierung der Vorauswahl
• Publikation von Angeboten nur auf eigener Firmen-Website
• erhöhter Reichweite der Angebote und der Präzision der Ansprache potentieller Bewerber
• Nutzung der semantisch annotierten Bewerbung für das firmeninterne Wissens- und Personalmanagement
AG Netzbasierte Informationssysteme http://www.ag-nbi.de
Semantischer Vergleich von Befundberichten
Projekt Semantic Web in der Pathologie
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 44
Digital Pathology
•
Typical diagnostics procedure:• generate and analyze
tissue sample on glass slide
• generate medical report
• store text and image data
•
Extended usage of digital images for diagnostics support and educational purposes in everyday pathologyAG Netzbasierte Informationssysteme http://www.ag-nbi.de 45
Digital Pathology
• Pathology data
(Institute for Pathology, Charité Berlin):
• 15.000 cases annually
• per medical case up to 5 pathology reports
• per pathology report up to 10 digital images (15GB)
• Problems:
• textual and image-based data is stored separately
• image-based retrieval is restricted to structural image characteristics
• text-based retrieval is restricted to string matching
• expert knowledge can not be shared or reused (for diagnostics or teaching purposes) without technical know-how
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 46
A Semantic Web for Pathology
•
Objectives• re-organization of the available and future expert knowledge for efficient diagnostics and differential diagnostics tasks
• reuse text and image data for case-based teaching materials
• minimal invasive usage
• integration in the available technical infrastructure
• provision of good precision values (under-diagnosed cases)
•
Improve retrieval capabilities of the pathology archive• pathology reports are textual representations of digital images
• content of text and image-based data is represented explicitly
• use medical ontologies to refine search features
• use rules to describe diagnostics processes
• use ontology-based NLP algorithms to extract and represent the content of the pathology reports (semantic annotation)
• FU Berlin, Uni Potsdam, Charité Berlin, DFG funded
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 47
transformation component
knowledge component
knowledge base manager
lexicon parser
quality assurance
module
pathology reports
description component
digital slides
digital virtual microscope US
E R I N T RE F A CE
owl xml
ontology lookup owl
consistency checking medical
ontologies instances
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 48
Description Component
• formalization of the pathology reports and metadata for digital slides in XML (SVG, XML-HL7)
• management of the original medical data
• report editor, image annotation tool
• new text reports are forwarded for annotation to the transformation component
• integration in the current environment
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 49
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 50
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 51
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 52
HL 7 Repräsentation
<section><caption>Befund</caption>
<section><caption>Makroskopie</caption>
<paragraph><content>[1]Zwei Gewebszylinder von 15 und 4 mm Laenge[1].</content></paragraph>
</section>
<section><caption>Mikroskopie</caption>
... <paragraph>
<content>[2]Stanzbiopsate aus Lungengewebe mit deutlicher Stoerung der alveolaren Textur,
soweit noch nachweisbar deutlich Verbreiterung der Alveolarsepten, stellenweise Nachweis
von Bronchialepithelregeneraten[2]. [3]Restliche Alveolarlumina z.T. durch
Fibroblastenproliferate verlegt[3]. [4] Im Interstitium ein gemischt entzuendliches Infiltrat,
bestehend aus Plasmazellen und Lymphozyten[4]. [5] Darunter relativ viele CD3-positive kleine und mittelgrosse T-Lymphozyten und CD68-positive Makrophagen[5].</content>
</paragraph>
</section>
<section><caption>Kritischer_Bericht</caption>
<paragraph>
<content>[6]Stanzbiopsate aus der Lunge mit Zeichen der organisierenden Pneumonie (klin.Mittellappen)[6].</content>
</paragraph>
</section>
<section><caption>Kommentar</caption>
...
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 53
knowledge component
knowledge base manager
lexicon parser
quality assurance
module
pathology reports
description component
digital slides
digital virtual microscope US
E R I N T RE F A CE
owl xml
ontology lookup owl
consistency checking medical
ontologies instances
transformation component
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 54
report (OWL) report
(XML)
Transformation Component
• recognizes concept instances from textual pathology reports and image metadata
• generates semantic representation of pathology reports and forwards it to the knowledge component
• suggests ontology extensions for frequent terms
Morph.Lexicon NP Grammar MWE
Tokenizer Sentence-
splitter
Morph.- synt.
Analysis
POS-tag disambig.
Chunk- parser
MWE, Concept-
Lookup
Res.
of under-
spec.
Map FOL to OWL
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 55
Transformation Component
<section><caption>Befund</caption>
<section><caption>Makroskopie</caption>
-<paragraph><content>[1]Zwei Gewebszylinder von 15 und 4 mm Laenge[1].</content></paragraph>
</section>
-<section><caption>Mikroskopie</caption>
-... <paragraph>
<content>[2] Stanzbiopsate aus Lungengewebe mit deutlicher Stoerung der alveolaren Textur, soweit noch nachweisbar
deutlich Verbreiterung der Alveolarsepten, stellenweise Nachweis von Bronchialepithelregeneraten[2]. [3] Restliche Alveolarlumina z.T. durch Fibroblastenproliferate verlegt[3]. [4]Im Interstitium ein gemischt entzuendliches Infiltrat, bestehend aus Plasmazellen und Lymphozyten[4]. [5]Darunter relativ viele CD3-positive
kleine und mittelgrosse T-Lymphozyten und CD68-positive Makrophagen[5].</content>
</paragraph>
</section>
- <section><caption>Kritischer_Bericht</caption>
- <paragraph>
<content>[6] Stanzbiopsate aus der Lunge mit Zeichen der organisierenden Pneumonie (klin.Mittellappen)[6].</content>
</paragraph>
</section>
- <section><caption>Kommentar</caption>
...
[1] card(x1, 2) AND cylinder(x1) AND length(x1, [15, 14]) [2] unspec_plur_det(x2) AND punch_biopsat(x2)
AND from_rel(x2, x3) AND unspec_plur_det(x3) AND lung_tissue(x3) AND with_rel(x3, x4) AND def_det(x4) AND disturbance(x4, x5) AND def_det(x5) AND texture(x5)
AND alveolar(x5) unspec_det(x6) AND extension(x6, x7) AND def_det_plur(x7)
AND aleveolar_septum(x7) AND unspec_det(x8) AND evidence(x8, x9) AND indef_det(x9)
AND epithelial(x9)
AND bronchial(x9) AND regenerates(x9) [3] def_det(x10) AND alveolarlumina(x10)
unspec_det_plur(x11) AND fibrolastial_proliferate(x11) [4] def_det(x12) AND interstitium(x12)
indef_det(x13) AND inflammatory(x13) AND infiltrate(x13) AND consisting_of_rel(x13, x14)
AND unspec_det_plur(x14)
AND konj(x14, x15, x16) AND plasma_cell(x15) AND lymphocyte(x16)
[5] indef_det_plur(x17) AND konj(x17, x18, x19) AND t_lymphocyte(x18)
AND cd68_positive(x19) AND macrophagus(x19) [6] indef_det_plur(x20) AND punch_biopsate(x20)
AND from_rel(x20, x21) AND def_det(x21) AND lung(x21) AND with_rel(x20, x22) AND evidence(x22, x23) AND def_det(x23) AND organising(x23)
AND pneumonia(x23)
LF XML HL7
transformation component
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 56
Transformation Component
[1] card(x1, 2) AND cylinder(x1) AND length(x1, [15, 14]) [2] unspec_plur_det(x2) AND punch_biopsat(x2)
AND from_rel(x2, x3) AND unspec_plur_det(x3) AND lung_tissue(x3) AND with_rel(x3, x4) AND def_det(x4) AND disturbance(x4, x5)
AND def_det(x5) AND texture(x5) AND alveolar(x5) unspec_det(x6) AND extension(x6, x7)
AND def_det_plur(x7)
AND aleveolar_septum(x7) AND unspec_det(x8) AND evidence(x8, x9) AND indef_det(x9)
AND epithelial(x9) AND bronchial(x9) AND regenerates(x9)
[3] def_det(x10) AND alveolarlumina(x10)
unspec_det_plur(x11) AND fibrolastial_proliferate(x11) [4] def_det(x12) AND interstitium(x12)
indef_det(x13) AND inflammatory(x13) AND infiltrate(x13) AND consisting_of_rel(x13, x14)
AND unspec_det_plur(x14)
AND konj(x14, x15, x16) AND plasma_cell(x15) AND lymphocyte(x16)
[5] indef_det_plur(x17) AND konj(x17, x18, x19) AND t_lymphocyte(x18)
AND cd68_positive(x19) AND macrophagus(x19) [6] indef_det_plur(x20) AND punch_biopsate(x20)
AND from_rel(x20, x21) AND def_det(x21) AND lung(x21) AND with_rel(x20, x22) AND evidence(x22, x23) AND def_det(x23) AND organising(x23) AND pneumonia(x23)
LF
<Lung_Tissue rdf:ID="lung_tissue_x3">
<partOf>
<Lung_C0024109 rdf:ID="lung1">
<hasSource rdf:resource=“#UWDA"/>
... properties of the lung ...
</Lung_C0024109>
</partOf>
</Lung_Tissue>
<Punch_biopsat rdf:ID="punch_biopsat_x2">
<from rdf:resource="#lung_tissue_x3"/>
</Punch_biopsat>
<alveola rdf:ID="alveola_x5">
<hasTexture rdf:datatype="http:/.../XMLSchema#string">
disturbed</hasTexture>
<relatedTo rdf:resource="#lung1"/>
</alveola>
<Cylinder rdf:ID="cylinder_x1">
<length rdf:datatype="http://www.w3.org/2001/
XMLSchema#float">15.0</length>
<formOf rdf:resource="#punch_biopsat_x2">
</Cylinder>
<Cylinder rdf:ID="cylinder_x2">
<length rdf:datatype="http://www.w3.org/2001/
XMLSchema#float">14.0</length>
<formOf rdf:resource="#punch_biopsat_x2">
</Cylinder>
OWL
transformation component
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 57
knowledge component
knowledge base manager
lexicon parser
quality assurance
module
pathology reports
description component
digital slides
digital virtual microscope US
E R I N T RE F A CE
owl xml
ontology lookup owl
consistency checking medical
ontologies instances
transformation component
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 58
Knowledge Component
• Knowledge base
• medical ontologies
• ontology of lung anatomy
• ontology of lung diseases
• model of pathology reports
• immunohistology ontology
• generic ontologies
• semantic network
• rules (to be done)
• Tumor Node Metastasis (tumor classification system)
• instances of the ontology concepts from real pathology reports and digital slides
• reasoner
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 59
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 60
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 61
Basis for Ontology: UMLS
• UMLS (Version 2003AC)
• Unified Medical Language System (National Library of Medicine)
• 100 medical libraries (1,5 billion concepts)
• integrates libraries into a common data format (UMLS Semantic Network, UMLS Metathesaurus)
• UMLS Semantic Network:
upper level + medicine core concepts
• UMLS Metathesaurus:
• library-specific concepts
• terms are grouped to single concept id
• translation of terms
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 62
Ontology Generation and Evaluation
•
Top-down approach:• identify relevant UMLS libraries Æ 50% (700.000 concepts)
• Map relevant libraries to archive vocabulary Æ ranking of 10 most application relevant UMLS libraries Æ 250.000 concepts
•
Bottom-up approach:• start with 5 application relevant keywords
• consider neighbored concepts in Metathesaurus Æ 1000 concepts
•
Ontology evaluation• Check inconsistencies (reasoner) Æ 5%
• Add German translations Æ 5%
• Compare archive vocabulary to the ontology vocabulary:
• add pathology-specific knowledge
• add generic knowledge (spatial relationships, part-whole ontology)
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 63
UMLS Issues
• Not intended for automatic integration in Semantic Web applications:
• no precise semantic definition of relationships
(part-of, narrower, broader, related_to, associated_with)
• error-prone modeling decisions:
• no consistent upper-level ontology
• cyclic concept definitions
• erroneous usage of part-of and is-a relationships (right lobe of lung is-a lung)
• meaning of concepts is encoded in concept names (“ARF-smaller-then-2”,
“Unspecified injury of lung with open wound into thorax”)
AG Netzbasierte Informationssysteme http://www.ag-nbi.de 64
Literatur
• T. R. Gruber. A translation approach to portable ontologies. Knowledge Acquisition, 5(2):199-220, 1993. http://ksl-web.stanford.edu/KSL_Abstracts/KSL-92-71.html
• C.K. Odgen and I.A. Richards. The Meaning of Meaning: A Study of the Influence of Language upon Thought and of the Science of Symbolism. Routledge & Kegan Paul Ltd., London, 10 edition, 1923.
• Stefan Decker, Sergey Melnik, Frank Van Harmelen, Dieter Fensel, Michel Klein, Jeen Broekstra, Michael Erdmann, Ian Horrocks. The Semantic Web: The Roles of XML and RDF. IEEE Internet Computing September/October 2000 (Vol. 4, No. 5) pp. 63-74.
• Frank van Harmelen, Peter F. Patel-Schneider and Ian Horrocks, editors.
Annotated DAML+OIL (March 2001) Ontology Markup.
http://www.daml.org/2001/03/daml+oil-walkthru.html
• Frank van Harmelen, Peter F. Patel-Schneider and Ian Horrocks, editors.
Reference description of the DAML+OIL (March 2001) ontology markup language.
http://www.daml.org/2001/03/reference.html
• Frank van Harmelen, Peter F. Patel-Schneider and Ian Horrocks, editors. A Model-Theoretic Semantics for DAML+OIL (March 2001).
http://www.daml.org/2001/03/model-theoretic-semantics.html
• Michael K. Smith, Deborah McGuinness, Raphael Volz, Chris Welty. Web Ontology Language (OWL) Guide Version 1.0. W3C Working Draft 4 November 2002.
http://www.w3.org/TR/owl-guide/