Title: Collaborative Ontology Building with Wikint Preliminary Report
1Collaborative Ontology Building with
Wiki_at_ntPreliminary Report
- Jie Bao and Vasant Honavar
- Artificial Intelligence Research Laboratory
- Computer Science Department
- Iowa State University
- Ames IA USA 50010
- baojie,honavar_at_cs.iastate.edu
2Outline
3Motivation
- 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
4Wiki_at_nt
- Wiki a kind of collaborative documentation
writing/website building tool - _at_nt Ont Ant
- Ont for ontology
- Ant to denote a type of collaborative agent
- Wiki_at_nt a collaborative ontology editor with wiki
5Ants for ontology
- Without SHOE how can you be a RACER?
- Without Sesame how can you make OIL?
- Semantic Web is a plan of good
- But without ontology its only a nil.
- Everyone adds a small piece of brick
- It takes the labor of many to make the Rome real.
- Lets create ontology hand in hand
- Just like ants build their hill.
6Proposed Approach
Wiki Engine for Collaborative Editing
Underlying Language to supportmodularity and
reconciliation
Browser-based Editor
Dynamic loading of Partial Model
Agent Community
Serialization
7Outline
- Overview
- Ontology Language Extension
8Ontology Language Extension - to support
modularity
- POWL package-based ontology language
- Package is an ontology module 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)
9Interface
10Ontology 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 )
- BSubClassOf( 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)
11Example with P and O constructors
- Two packages
- (2d) defeats the general rule (1g).
12Outline
- Overview
- Ontology Language Extension
- Wiki_at_nt Architecture
13Wiki_at_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.
14- http//boole.cs.iastate.edu9090/wikiont
15Architecture Wiki Engine
- Provides a web interface for ontology editor
- Translates the Wiki_at_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 lt-gt package
- Based on JSPWiki engine
16Architecture Wiki Engine/Markup Script
- We defined a set of markup script tags as the
syntax of the ontologies in Wiki_at_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 animalDog rdfssubClassOfanimalCarnivor
e - Shown as
- P and O axioms can be presented in triple
syntax. - term_uri powlpublicpkg_uri
- uri1wikistrongeruri2
17Script Example
- test..AnonymousClass107107\\
- test..AnonymousClass107107
owl..allValuesFrom camera..BodyWithNonAdjustabl
eShutterSpeed\\ - test..AnonymousClass107107 owl..onProperty
camera..body\\ - test..AnonymousClass107107 rdf..type
owl..Restriction\\ - camera..Large-Format\\
- camera..Large-Format rdf..type
owl..Class\\ - camera..Large-Format rdfs..subClassOf
test..AnonymousClass107107\\ - camera..Large-Format rdfs..subClassOf
camera..Camera\\
http//boole.cs.iastate.edu9090/wikiont/Wiki.jsp?
pagecamera..Large-Format
18Architecture Wiki Engine/Modularization
Package
- An ontology could be composed by several
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_at_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.
axiom
Block/WikiPage
Ontology
19Architecture 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 wikistrongerPack
age2, - axiom level, eg.Package11gwikistrongerPacka
ge22d. - Default defeating rules
- Local-first a local package axiom defeats axiom
from imported package - Higher-first social order of the author, eg.
administrator defeats common user
20Architecture Wiki Engine/Memory Mgmt
- While most of the popular ontology editors have
in-memory model for edited ontology, Wiki_at_nt
doesn't. - An in-memory model limits the scalability of the
system - In-memory model implicitly assumes the existence
of a global ontology, requires monotonicity. - We store ontology as a set of separated, possibly
distributed blocks in Wiki_at_nt. - Each block is serialized to a wiki page when it's
not being actively 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.
21Architecture Wiki Engine/Transaction Mgmt
- Wiki_at_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.
22Architecture Agent Management
- Each participant in Wiki_at_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.
23Architecture Ontology I/O
- We can export wiki pages as a single ontology
file, or 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 axioms, eg package1.Dog - Defeated axioms will be removed
24Outline
- Overview
- Ontology Language Extension
- Wiki_at_nt Architecture
- Closing Remarks
25Future 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 POOWL
- Scalability test
- Many others
26Thank you !
- Contact
- Jie Bao
- 215 Atanasoff Hall, Iowa State University
- Ames IA 50010 USA
- Baojie_at_cs.iastate.edu
- 1-515-441-0491, 1-515-294-7331
- http//www.cs.iastate.edu/baojie
- More Information
- Bao, Jie and Honavar, Vasant (2004) Ontology
Language Extensions to Support Localized
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_at_nt - A multi-agent
based ontology building environment . Technical
Report, Computer Science, Iowa State University.
27Backups
28_at_ntHill Whole Picture
C
D
A
Ontology Alignment
Human Expert
Wiki_at_nt
P-OWL
Agents Ontology Mining
Browser
OntologyRepository
B
SemanticRSS-awareChannel
Email list
Wiki
- Version Control
- Redundancy Check
- Conflict Check
- Cross Validation
SemanticRSS-awareChannel
Newsgroup
Blog
Forum
P2P node
SemanticRSS-awareChannel