ITTALKS - DAML.org

Download Report

Transcript ITTALKS - DAML.org

ITTALKS
A Case Study in
How DAML Helps
Tim Finin
ask-all
subscribe
advertise
University of Maryland
Baltimore County
tell
recommend
register
Semantic Web for
the Military User
June 6, 2001
1
Overview
1. ITTALKS web application
2. Two advanced capabilities
3. How does DAML help?
4. What’s needed to build apps?
Joint work with JHU/APL and MIT/Sloan.
See http://umbc.edu/~finin/swmu/ for slides
2
UMBC/JHU/MIT DAML Project
UMBC, JHU, and MIT are working together on a set of
issues under funding from DARPA
UMBC (Finin, et. al.) is focused on integrating
communicating agents, DAML and the Web
JHU APL (Mayfield, et. al.) is building information
indexing and retrieval systems that work with
documents and queries that contain a mixture of free
text, XML and DAML
MIT Sloan School (Grosof et. al.) is developing
techniques for integrating rule based technology and
distributed belief into DAML
To be integrated in agent-based applications involving search
and using rule-based reasoning.
3
1
ITTALKS
• ITTALKS is a database driven web
site of IT related talks at UMBC and
other institutions. The database
contains information on
– Seminar events
http://ittalks.org/
– People (speakers, hosts, users, …)
– Places (rooms, institutions, …)
• This database is used to dynamically generate web pages
and DAML descriptions for the talks and related
information and serves as a focal point for agent-based
services relating to these talks.
• We are exploring how the semantic web and DAML add
value to this web-based application
4
5
Registered users create a profile
(encoded in DAML) to describe
their preferences and attributes.
6
After logging in, ITTALKS can
filter the talks shown based on my
interests, schedule and location.
7
8
9
ITTALKS Architecture
Web
Services
Web server +
Java servlets
People
HTTP
Email, HTML,
SMS, WAP
MapBlast, CiteSeer,
Google, …
HTTP, WebScraping
Apache
Tomcat
Agents
FIPA ACL, KQML,
DAML
SQL
DB
RDBMS
Databases
<daml>
<daml>
<daml>
</daml>
<daml>
</daml>
</daml>
</daml>
DAML
reasoning
engine
DAML files
10
ITTALKS Ontologies
• We’ve defined and use the following ontologies, all
at http://daml.umbc.edu/ontologies/
– calendar-ont.daml – calendar and schedule info
– classification.daml – ACM CCS topics
– person-ont.daml – people and their attributes
– place-ont.daml – talk locations
– profile-ont.daml – user modeling info
– talk-ont.daml – talks info
– topic-ont.daml – topics and interests
11
ITTALKS Features
General features
• Generation from DB to DAML and
HTML mediated by MySQL, Java
servlets, and JSP.
• Generation of DAML descriptions
and user profiles from HTML forms.
• Creation & use of DAML-encoded
user models describing interests and
ontology extensions.
• Ontologies for events, people, places,
schedules, topics, etc.
• Automatic HTML form (pre) filling
from DAML.
• Syncing of talks with Palm calendars
via Coola.
• Automatic classification of talks into
topic ontology
Agent-based features
• ITTALKS agent with KQML API
using DAML as content language
• Intelligent matching of people and
talks
based on interests, locations and
schedules.
• Agents using both Jackal and FIPA’s
Java Message Service
• Notification via email and mobile
devices via SMS and WML.
• Discovery of relevant background
papers from NEC CiteSeer
• Automatic generation and
maintenance of user models
• Talk recommendations via
collaborative filtering
• Integration with STP (Smart Things
and Places) ubiquitous computing
project
• A XSB-based DAML/RDF
reasoning engine.
12
2
Two Advanced Capabilities
• I’ll briefly describe two advanced
capabilities facilitated by DAML:
– Classifying talk topics and user interests
using DAML ontologies
– Using DAML as a communication
language among software agents
13
Entering talks
• Currently, talks manually
entered through a web
form interface
• Several things help: (i)
recognizing entities, e.g.
people) already in the database and (ii) text
classification
• Goal: become for research talks what NEC CiteSeer is
for research papers
– Focused search engine to collect talk announcements in text or
HTML or marked up in a partially understood ontology.
– Information extraction using LMCO’s Aerotext to extract
relevant talk parameters and enter into database
14
What are talks about?
• Topic hierarchies provide
indexing terms
– ACM CCS topic hierarchy
– Open Directory
• Encoded as DAML ontologies
• These allow users to specify interests as well as browse the
database of talks by topic
• Automatic classification of talks (based on title and
abstract) and users (based on his web pages, CV, papers,
etc.)
• Discovery of mapping rules between CCS to OD ontologies
using IR techniques
15
Classifying Talks
e.g.: ACM
CCS
Topics Ontology
uses
ACM CCS Ontology
uses
CMU
Bow
statistical
text analysis
tools
Now is the
time for all
good men to
come to the
aid of the
country. Now
is the time for
ACM CCS
classifier
Training corpus
e.g.:5K ACM
abstracts
topics
16
Mapping between topic ontologies
T1
Training corpus T1
T2
t1:foo
Topic ontology T1
CMU
Bow
statistical
text analysis
tools
T1T2
mapper
Topic ontology T2
Training corpus T2
{(t2:bar, 0.8),
(t2:qux, 0.7),
…}
17
ask-all
subscribe
advertise
DAML and Agents
• Much multi-agent systems work is grounded in Agent
Communication Languages (e.g., KQML, FIPA) and
associated software infrastructure such as the DARPA Grid
– The paradigm has been peer-to-peer message oriented
communication mediated by brokers and facilitators.
• The DAML program invites different paradigms which will
require some changes in ACLs and their associates software
systems.
– Agents “publish” beliefs, requests, and other “speech acts”
on web pages.
– Agents “discover” what peers have published on the web.
• The software agent research community is very interested in
the semantic web and DAML
18
ITTALKS Agent
• ITTALKS offers a web interface for its human
users and can send notifications to humans via
email, WAP and SMS.
• We are also developing an agent API so that
software agents can interact with ITTALKS.
• Currently, the ITTALKS agent can send
notifications to agents via KQML using DAML as
the “content language”.
– We will support richer, mixed initiative dialogs between
ITTALKS and agents in the future
19
10
1
ITTALKS app
mapquest
18
11
ITTALKS
agent
Travel
agent
17
user’s daml profile
Communication
protocol
9
KQML
2
12
API
User
agent
3
DAML
reasoning engine
8
16
13 5
14
7
15
4
Broker
Agent
6
Agent
Name
Server
Common agent infrastructure
DAML reasoner
Calendar
agent
user’s calendar app
20
3
How Does DAML Help?
• Does it Help? Yes
– We’ve identified five general areas in
which DAML adds value to the
application or facilitates building or
maintaining the application
• Is DAML needed? No
– Not strictly (yet), although the alternative
technologies are not designed for the web
and thus suffer from deficiencies.
21
How does DAML Help?
web
services
interop
language
agent
communication
ontology
language
user
models
22
Information in ITTALKS
is exposed or published in
DAML on the web.
web
services
interop
language
DAML’s descendant will
become the “semantic agent
interlingua” for
communication
applications and systems
ontology
language
user
models
23
web
services
interop
language
agent
communication
DAML is used
• As a DB conceptual
schema language
• To help specify APIs
• To aid human understanding
ontology
language
user
models
24
web
services
interop
language
agent
communication
DAML is used to encode a
ontology
common user model that
language
user
models
• Are stored in the
user’s file space
• Contain information
which can be shared
by many applications
• Can contain
information specific to
certain applications
25
DAML is used to
support agent
communication as a interop
“content language” language
used to encode the
content of a KQML
message
web
services
agent
Future: as an
communication
encoding for an entire
FIPA ACL message
and as a way of
publishing speech acts
on web pages
ontology
language
user
models
26
4
What’s needed to build apps?
• Where does SW markup come from?
– From Databases, just like much of the HTML on today’s web
– But, where does the DB content come from?
• From legacy systems
• From web forms or custom HCIs
• From focused search engines feeding into web scrapers or information
extraction apps
• Are the DAML tools there?
– Some in beta form
– Many XML and RDF tools are very handy
– We used protégé and XMLSpy to create and edit ontologies
27
Conclusion
• ITTALKS is a useful, fairly sophisticated web
application
• The semantic web concepts and DAML in
particular
– Make it easier to develop and maintain ITTALKS
– Support some features of ITTALKS
• Visit http://ittalks.org/
– To use ITTALKS
– For more information, including a paper, a demo
“movie”, and these slides
• mailto:[email protected] to request a domain for
your organization.
28
29