1 ittalks ittalks a case study in how daml helps tim finin university of maryland baltimore county...
TRANSCRIPT
1
ITTALKSITTALKSA Case Study in
How DAML Helps
Tim FininTim FininUniversity of Maryland
Baltimore County
Semantic Web for the Military User
June 6, 2001
ask-all
advertisesubscribe
tellrecommend
register
2
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
3
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.
4
ITTALKS• ITTALKS is a database driven web
site of IT related talks at UMBC andother institutions. The database contains information on– Seminar events– 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
http://ittalks.org/
1
6
Registered users create a profile (encoded in DAML) to describe their preferences and attributes.
7
After logging in, ITTALKS can filter the talks shown based on my interests, schedule and location.
8
9
10
ITTALKS Architecture
Web server + Java servlets
DAMLreasoning
engine
DAMLreasoning
engine
<daml></daml>
<daml></daml>
<daml></daml>
<daml></daml>
DAML files
Agents
Databases
People
RDBMSRDBMSDB
Email, HTML, SMS, WAP
FIPA ACL, KQML, DAML
SQLHTTP, KQML, DAML, Prolog
MapBlast, CiteSeer,Google, …HTTP
HTTP, WebScraping
WebServices
ApacheTomcat
11
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
12
ITTALKS 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
• A XSB-based DAML/RDF reasoning engine.
• 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
Agent-based featuresGeneral features
13
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
2
14
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
15
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
16
Classifying Talks
ACM CCS Ontology
Training corpus
CMU Bow
statisticaltext analysis
tools
CMU Bow
statisticaltext analysis
tools
ACM CCSclassifier
Now is the time for all good men to come to the aid of the country. Now is the time for
topics
e.g.: ACMCCS
e.g.:5K ACMabstracts
Topics Ontology
uses
uses
17
Mapping between topic ontologies
Topic ontology T1
Training corpus T1
CMU Bow
statisticaltext analysis
tools
CMU Bow
statisticaltext analysis
tools
T1T2mapper
{(t2:bar, 0.8), (t2:qux, 0.7), …}
Topic ontology T2
Training corpus T2
T1
T2
t1:foo
18
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
ask-all
advertisesubscribe
19
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
20
ITTALKSagent
Travelagent
Calendaragent
Useragent
DAMLreasoning engine
BrokerAgent
AgentNameServer
user’s daml profile
mapquest
user’s calendar app
ITTALKS app
DAML reasonerCommon agent infrastructure
KQML
API
Communicationprotocol
1
8
7 6
5
3
2
4
9
10
11
12
13
17
16
15
14
18
21
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.
3
22
How does DAML Help?
ontologylanguage
usermodels
interoplanguage
agentcommunication
webservices
23
ontologylanguage
usermodels
interoplanguage
agentcommunication
webservices
Information in ITTALKS is exposed or published in DAML on the web.
DAML’s descendant will become the “semantic interlingua” for applications and systems
24
ontologylanguage
usermodels
interoplanguage
agentcommunication
webservices
DAML is used • As a DB conceptualschema language
• To help specify APIs• To aid human understanding
25
ontologylanguage
usermodels
interoplanguage
agentcommunication
webservices
DAML is used to encode a common user model that
• Are stored in the user’s file space
• Contain information which can be shared by many applications
• Can contain information specific to certain applications
26
ontologylanguage
usermodels
interoplanguage
agentcommunication
webservices
DAML is used to support agent communication as a “content language” used to encode the content of a KQML message
Future: as an encoding for an entire FIPA ACL message and as a way of publishing speech acts on web pages
27
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
4
28
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.
29