Download - Collaborative Ontology Building with Wiki@nt
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan
1
Collaborative Ontology Building with Wiki@nt
Preliminary Report
Jie Bao and Vasant HonavarArtificial Intelligence Research Laboratory
Computer Science DepartmentIowa State University
Ames IA USA 50010{baojie,honavar}@cs.iastate.edu
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 2
Outline Overview
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 3
Motivation Ontology construction is a collaborative process
direct cooperation among domain experts, and software agents
indirect cooperation through reuse of published ontologies. Integration: different participants have only partial knowledge
of the domain, and hence can contribute part of the ontology. Modularity helps!
Reconciliation: Semantic mismatches and logical inconsistencies between independently developed ontologies are unavoidable.
Existing ontology editors (Protégé, OilEd…) are mostly focused on stand-alone ontology development rather than collaborative construction of ontologies.
How about KAON, OntoEdit, WebODE, CODE ? Lack of modularity
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 4
Wiki@nt Wiki : a kind of collaborative d
ocumentation writing/website building tool
@nt = Ont + Ant Ont for ontology Ant to denote a type of collabora
tive agent Wiki@nt: a collaborative ontol
ogy editor with wiki
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 5
Ants for ontologyWithout SHOE how can you be a RACER?Without Sesame how can you make OIL?
Semantic Web is a plan of goodBut without ontology it’s only a nil.
Everyone adds a small piece of brick It takes the labor of many to make the Rome
real.
Let’s create ontology hand in handJust like ants build their hill.
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 6
Proposed ApproachWiki Engine for
Collaborative EditingUnderlying Language to support
modularity and reconciliationBrowser-based Editor
Agent C
om
munity
Dynamic loading of Partial Model
Seria
lizatio
n
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 7
Outline Overview Ontology Language Extension
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 8
Ontology Language Extension - to support modularity POWL: package-based ontolo
gy language Package is an ontology modu
le with clearly defined access interface
Each term is defined in a package and has its scope Eg: public, private
Constructor P (Bao and Honavar 2004)
P1
P2
public
private
P1
P2
public
private
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 9
Interface
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 10
Ontology Language Extension- to handle inconsistency
A |= t, but {A,B} !|= t A: DisjointClasses(Plant,Animal) A: SubClassOf( Dog , Carnivore ) A: SubClassOf( Carnivore, Animal)
restriction(eats allValueFrom(Animal)) -t B: SubClassOf( Grass , Plant ) B:SubClassOf( SickDog, Dog)
restriction(eats someValueFrom(Grass)) This can be resolved with defeasible axioms
Partial orders are assigned to axioms; stronger axioms can defeat weaker axioms.
Constructor O ( Heymans 2002)
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 11
Example with P and O constructors
• Two packages• (2d) defeats the general rule (1g).
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 12
Outline Overview Ontology Language Extension Wiki@nt Architecture
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 13
Wiki@nt Using wiki to edit OSHOQP(D) ontology.
An ontology module is composed of one or more wiki pages;
Multiple users can edit the same content, with wiki version control, transaction management and memory management.
An ontology is saved intoor loaded from a set of wiki pages and managed by an ontology repository.
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 14
http://boole.cs.iastate.edu:9090/wikiont
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 15
Architecture – Wiki Engine Provides a web interface for ontology editor Translates the Wiki@nt script to HTML code to
be shown in the web browser. Manages the storage of wiki pages, in plain file
or database. Provides version control. Provides transaction management. Provides memory management. Compose/Decompose ontology <-> package
Based on JSPWiki engine
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 16
Architecture – Wiki Engine/Markup Script
We defined a set of markup script tags as the syntax of the ontologies in Wiki@nt.
The syntax is an extension to OWL to support package and partial order on axioms.
Wiki markup script is a human readable syntax equivalent to the N-Triple syntax. Each axiom is assigned a URI
Eg: [animal:Dog] [rdfs:subClassOf][animal:Carnivore] Shown as
‘P’ and ‘O’ axioms can be presented in triple syntax.
[term_uri] [powl:public][pkg_uri] [uri1][wiki:stronger][uri2]
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 17
Script Example; [test..AnonymousClass107|#107]\\* [test..AnonymousClass107|107] [owl..allValuesFrom] [camera..Body
WithNonAdjustableShutterSpeed]\\* [test..AnonymousClass107|107] [owl..onProperty] [camera..body]\\* [test..AnonymousClass107|107] [rdf..type] [owl..Restriction]\\; camera..Large-Format\\* [camera..Large-Format] [rdf..type] [owl..Class]\\* [camera..Large-Format] [rdfs..subClassOf] [test..AnonymousClass10
7|107]\\* [camera..Large-Format] [rdfs..subClassOf] [camera..Camera]\\
http://boole.cs.iastate.edu:9090/wikiont/Wiki.jsp?page=camera..Large-Format
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 18
Architecture – Wiki Engine/Modularization An ontology could be composed by sever
al packages, and one package could be reused by multiple ontologies.
A package is a logic module for an ontology, usually from a single author.
A block is a set of related axioms inside a package, and will be physically mapped to a wiki page.
In Wiki@nt, we choose axiom groups as ontology blocks. Each axiom group contains triples with same subject.
For example,the axiom groups in Animal Ontology package(1) will be Dog, Carnivore, eats, and billy.
Ontology
Package
Block/WikiPage
axiom
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 19
Architecture – Wiki Engine/Inconsistency
Inconsistency among modules should be resolved when integrating the modules.
We assume each package should be consistent. A partial order can be specified on
package level, eg. [Package1] [wiki:stronger][Package2], axiom level, eg.[Package1:1g][wiki:stronger][Package2:2d].
Default defeating rules Local-first: a local package axiom defeats axiom from im
ported package Higher-first: social order of the author, eg. administrator
defeats common user
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 20
Architecture – Wiki Engine/Memory Mgmt
While most of the popular ontology editors have in-memory model for edited ontology, Wiki@nt doesn't.
An in-memory model limits the scalability of the system In-memory model implicitly assumes the existence of a glo
bal ontology, requires monotonicity. We store ontology as a set of separated, possibly dist
ributed blocks in Wiki@nt. Each block is serialized to a wiki page when it's not being a
ctively edited, and is loaded into memory only when it's needed.
A (local or remote) partial ontology model is dynamically loaded into local memory during an editing or reasoning process, from a set of pages.
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 21
Architecture – Wiki Engine/Transaction Mgmt
Wiki@nt denies the write-access of agents to a page and related pages if it is locked by some other agents.
If a class is under editing/lock, its superclasses in the class hierarchy and its instances will be locked.
If a property is under editing/lock, its superproperties in the property hierarchy will be locked.
If a concept, property or instance is under editing/lock, all other concepts, properties or instances in the same wikipage(axiom group) will be locked.
If a package is locked, all packages that import it will be locked.
Locking is propagated by recursively applying these rules.
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 22
Architecture – Agent Management
Each participant in Wiki@nt is considered as an agent.
Each agent is assigned different privileges, such as ontology administrator and package manager.
An agent can become an editor of an existing ontology module or create a new module.
RPC interface is reserved for software agents.
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 23
Architecture – Ontology I/O We can export wiki pages as a single ontology file, o
r read an ontology file into Wiki Ontology Repository.
The relevant portion of an ontology is extracted or assembled from the wiki pages.
Each loaded ontology is assigned a unique name, eg. http://mydomain.org/animal/
Reduce to standard OWL Package could be eliminated by adding a prefix to its axiom
s, eg: package1.Dog Defeated axioms will be removed
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 24
Outline Overview Ontology Language Extension Wiki@nt Architecture Closing Remarks
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 25
Future work Better transaction management What is “sufficient” local model in reasoning?
For memory management Better policy to assign partial order over axioms Better graphic, interactive UI
Java/Applet client Plugins for Protégé ?
More formal versioning representation A reasoner over P+O+OWL Scalability test Many others……
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 26
Thank you !Contact:
Jie Bao215 Atanasoff Hall, Iowa State UniversityAmes IA 50010 [email protected], 1-515-294-7331http://www.cs.iastate.edu/~baojie
More Information: Bao, Jie and Honavar, Vasant (2004) Ontology Language Extensions to Support Loca
lized Semantics, Modular Reasoning, and Collaborative Ontology Design and Ontology Reuse . Technical Report, Computer Sicence, Iowa State University.
Bao, Jie and Honavar, Vasant (2004) Collaborative Ontology Building with Wiki@nt - A multi-agent based ontology building environment . Technical Report, Computer Science, Iowa State University.
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 27
Backups
Nov 8,2004 EON2004 - ISWC2004, Hiroshima, Japan 28
@ntHill – Whole Picture
OntologyRepository
Wiki@nt P-OWL
Hum
an
Exp
ert
Email list
Newsgroup
Forum
Blog
Wiki
P2P node
SemanticRSS-aware
Channel
SemanticRSS-aware
Channel
SemanticRSS-aware
Channel
Agents: Ontology
MiningBrowser
Onto
logy A
lignm
ent
• Version Control• Redundancy Check• Conflict Check• Cross Validation
A
B
C D