当前位置:首页 >> >>

Ittalks A case study in the semantic web and daml

ITTALKS: A Case Study in the Semantic Web and DAML
R. Scott Cost, Tim Finin, Anupam Joshi, Yun Peng, Charles Nicholas, Ian Soboroff, Harry Chen, Lalana Kagal and Filip Perich, Youyong Zou, and Sovrin Tolia
Laboratory for Advanced Information Technology University of Maryland Baltimore County, 1000 Hilltop Circle, Baltimore, MD 21250 cost, ?nin, joshi, ypeng, nicholas, ian, hchen4, lkagal1, fperic1, yzou1, stolia1 @ csee.umbc.edu
? ? ?

Abstract. Effective use of the vast quantity of information now available on the web will require the use of “Semantic Web” markup languages such as the DARPA Agent Markup Language (DAML). Such languages will enable the automated gathering and processing of much information that is currently available but insuf?ciently utilized. Effectively, these languages will facilitate the integration of multi-agent systems with the existing information infrastructure. As part of our exploration of Semantic Web technology, and DAML in particular, we have constructed ITTALKS, a web-based system for automatic and intelligent noti?cation of information technology talks. In this paper, we describe the ITTALKS system, and discuss the numerous ways in which the use of Semantic Web concepts and DAML extend its ability to provide an intelligent online service to both the human community and the agents assisting them.

1 Introduction
With the vast quantity of information now available on the Internet, there is an increasing need to manage this information by marking it up with a semantic language, such as the DARPA Agent Markup Language (DAML), and by using intelligent search engines, in conjunction with ontology-based matching, to provide more ef?cient and accurate information search results. The aim of the Semantic Web effort is to make the present web more machine-readable, in order to allow intelligent agents to retrieve and manipulate pertinent information. The key goal of the DAML program is to develop a Semantic Web markup language that provides suf?cient rules for ontology development, and that is suf?ciently rich to support intelligent agents and other applications [11, 16]. Today’s agents are not tightly integrated into the web infrastructure. If our goal is to have agents acting upon and conversing about web objects, they will have to be seamlessly integrated with the web, and take advantage of existing infrastructure whenever possible (e.g., message sending, security, authentication, directory services, and application service frameworks). We believe that DAML will be central to the realization of this goal.

This work was supported in part by the Defense Advanced Research Projects Agency under contract F30602-00-2-0 591 AO K528 as part of the DAML program (http://daml.org/).

Rules Data Selfdesc. doc. Data Logic Ontology Vocabulary RDF + RDF Schema XML + NS + XML Schema Unicode URI Proof


Fig. 1. Tim Berners-Lee’s vision of the Semantic Web is founded on a base that includes URIs, XML and RDF.

In support of this claim, we have constructed a real, ?elded application, ITTALKS, which facilitates user and agent interaction in the domain of talk discovery. It also provides a simple web-driven infrastructure for agent interaction. In addition, ITTALKS serves as a platform for designing and prototyping the software components required to enable developers to create intelligent software agents capable of understanding and processing information and knowledge encoded in DAML and other semantically rich markup languages. To date, we have focused on developing the support and infrastructure required to integrate intelligent agents into an environment of web browsers, servers, application server platforms, and associated supporting languages (e.g., WEB/SQL, WEBL), protocols (e.g., SSL, S/MIME, WAP, eSpeak), services (e.g., LDAP) and other underlying technologies (e.g., Java, Jini, PKI). On the surface, ITTALKS is a web portal offering access to information about talks, seminars and colloquia related to information technology (IT). It is organized around domains, which typically represent event hosting organizations such as universities, research laboratories or professional groups, and which in turn are represented by independent web sites. ITTALKS utilizes DAML for its knowledge base representation, reasoning, and agent communication. DAML is used to markup all the information, which is stored in a knowledge base, in order to provide additional reasoning capabilities otherwise unavailable. With information denoted in a semantically machine-understandable format, the computer can deduce additional information, a task which is dif?cult in a traditional database system. For example, if both ITTALKS and the user agree on a common semantics, the ITTALKS web portal can provide not only the talks that correspond to the user’s pro?le, in terms of interest, time, and location constraints, but can further ?lter the IT events based on information about the user’s personal schedule, inferred location at the time of the talk, distance and current traf?c patterns, etc. ITTALKS can also dynamically update the user’s pro?le with incrementally learned knowledge of the user’s usage patterns. ITTALKS demonstrates the value of markup languages such as DAML to the Semantic Web, demonstrating its ability to represent ontologies, agent content languages and its ability to improve the functionality of agents on the web. We have developed DAML-encoded ontologies for describing event, temporal, spatial, personal, and conversational information, which enable us to represent all required knowledge in a DAMLencoded format. In addition, we have created several DAML-encoded classi?cation on-

Digital Signature

tologies, which support additional reasoning capabilities in ?nding the best matching IT talks for a particular user. Furthermore, in the ITTALKS application, any web page presented on the ITTALKS web sites contains the necessary information for an agent to retrieve the DAML-encoded description of this page as well as the contact information of a responsible agent in order to provide more effective conversation. ITTALKS thus provides each agent with the capability to retrieve and manipulate any ITTALKSrelated information via a web site interface or through a direct agent-to-agent conversation. Hence, by combining the features of currently existing web applications with the DAML-based knowledge and reasoning capabilities, ITTALKS presents a true Semantic Web application.

2 Background
DAML is a semantic language being developed by a consortium of U.S.-based academic and business researchers 1 , formed August 2000, to address the current web’s limitations in providing machine-readable, and more importantly machine-interpretable, information on the Internet. The goal of DAML is to enable the transformation of the currently human-oriented web, which is largely used as a text and multimedia repository only, into a Semantic Web, as envisioned by Berners-Lee [2]. This process involves the augmentation of web pages with additional information that is expressed in a way that facilitates machine understanding [12]. DAML is built upon the capabilities of an already existing syntactic language, the Extendable Markup Language (XML), and the Resource Description Framework and Resource Description Framework Schema (RDF/S). These are XML applications that provide a number of preliminary semantic facilities required for the realization of the Semantic Web vision. XML was developed by the World Wide Web Consortium (W3C) as a standard for alternative data encoding on the Internet, and was primarily intended for machine processing. XML is an application pro?le of the Standard Generalized Markup Language (SGML), and is therefore based on a well-de?ned and well-understood syntactic

Visit the DAML Program of?cial web site at http://www.daml.org/.

<daml:class rdf:ID="Animal"> <rdfs:label>Animal</rdfs:label> <rdfs:comment>An Example</rdfs:comment> </daml:Class> <daml:Class rdf:ID="Male"> <rdfs:subClassOf rdf:resource="#Animal"/> </daml:Class>

<daml:class rdf:ID="Female"> <rdfs:subClassOf rdf:resource="#Animal" /> <daml:disjointWith rdf:resource="#Male" /> </daml:Class> <daml:Class rdf:ID="Man"> <rdfs:subClassOf rdf:resource="#Person" /> <rdfs:subClassOf rdf:resource="#Male" /> </daml:Class>

Fig. 2. An example of DAML-encoded knowledge.

Fig. 3. A screenshot depicting the main page of the ITTALKS system.

language. The XML standard provides the necessary means to declare and use simple data structures, which are stored in machine-readable XML documents. Subsequently, the information made available in these documents can be processed or translated into additional XML documents to provide the appropriate form for human understanding, such as text-to-voice, graphics or HTML conversion. However, since XML is de?ned only at the syntactic level, machines cannot be relied upon to unambiguously determine the correct meaning of the XML tags used in a given XML document. Consequently, XML is not suitable as a desired language for representing complex knowledge. As a result, the W3C Consortium developed RDF/S with the goal of addressing the XML de?ciencies by adding formal semantics on top of XML. These two standards provide representation frameworks for describing relationships among resources, in terms of named properties and values, that are similar to representation frameworks of semantic networks and rudimentary frame languages (e.g. RDF Schema). Yet, both standards are still very restrictive as knowledge representation languages due to their lack of support for variables, general quanti?cation, rules, etc. DAML is an attempt to build upon XML and RDF/S in order to produce a language that is well suited for building the Semantic Web. It follows the same path for representing data and information in a document as XML, and provides similar rules and de?nitions to RDF/S. In addition, DAML also provides rules for describing further constraints and relationships among resources, including cardinality, domain and range restrictions, as well as union, disjunction, inverse and transitive rules. DAML is, therefore, an effort to develop a universal Semantic Web markup language that is suf?ciently rich to provide machines not only with the ability to read data but also to interpret and draw inferences from it. DAML will enable the development of intelligent agents and applications that can autonomously retrieve and manipulate information on the Internet and from the Semantic Web of tomorrow.

As part of UMBC’s role in the DAML Program, we have developed ITTALKS; a web portal that offers access to information about talks, seminars, colloquia, and other IT related events. ITTALKS provides users with a rich description of IT events, including location, speaker, hosting organization, and talk topic. More importantly, ITTALKS also provides agents with the ability to retrieve and manipulate information stored in the ITTALKS knowledge base. Below, we discuss various aspects of the system in more detail. Unlike other web services, ITTALKS employs DAML for knowledge base representation, reasoning, and agent communication. The use of DAML to represent information in its knowledge base, in conjunction with its use for interchangeable type ontologies as described in Section 5.6, enables more sophisticated reasoning than would otherwise be available. For example, a simpler representation scheme might allow the user to identify talks based on interest, time and location. When both ITTALKS and the user agree on a common semantics, the ITTALKS web portal is able to perform further ?ltering, based on more sophisticated inference. In addition to enhancing knowledge representation and reasoning, DAML is used for all communication, including simple messages and queries, using the ITTALKS de?ned ontology. Moreover, ITTALKS offers the option for each user to use his/her personal agent to communicate with ITTALKS on his/her behalf, providing a higher level of service. 3.1 Features of ITTALKS Personalizable Accounts ITTALKS can be used anonymously, or, more effectively, with personalized user accounts. Users have the option to register with ITTALKS either by entering information manually via web forms, or by providing the location (URL) of a DAMLized personal pro?le, which can include information such as the users location, interests, contact details, and schedule. This schedule might be as rudimentary as a list of available time periods for given days, or could include signi?cantly more detail. Subsequently, this information is used to provide each user with a personalized view of the site, displaying only talks that match the user’s interests and/or schedule. Since DAML is not yet in widespread use, ITTALKS provides a tool for creating a DAML personal pro?le. Currently, the tool constructs a pro?le containing only items used by the ITTALKS system. However, we believe that the pro?le, in one form or another, will ultimately provide a unique and universal point for obtaining personal information about the user, not just for ITTALKS, but for all information needs, and will then include any sort of information the user would like to share. In the future, all services that require personal information about the user should access the same user pro?le, eliminating the need to repeatedly enter the same information for a multitude of services. We believe that the new standard for XML Signature and Encryption under development may provide a mechanism by which users can have some control over access to different parts of their pro?le. Customizable Domains To support our goal of creating a universal resource for the international IT research community, ITTALKS is organized around domains, which


Web server


Web services
HTTP, WebScraping

+ Java servlet



DAML speaking agents

ITtalks database


< < < d d d a DAML files

DAML reasoning

Fig. 4. The architecture for ITTALKS is built around a web server backed by a relational database. Interfaces are provided to human users, software agents and web services.

typically represent event hosting organization such as universities, research laboratories or professional groups. Each domain is represented by a separate web site and is independently maintained by a moderator who can, among other things, de?ne the scope of the domain and delegate to other registered users the ability to edit talk entries. For example, the stanford.ittalks.org domain might be con?gured to include only talks hosted at Stanford University. On the other hand, another domain, sri.ittalks.org, might be con?gured to include not only talks about Semantic Web topics that are held at SRI, but also those at Stanford, as well as any talks within 15 mile range of the SRI facility in Palo Alto.

Multiple Modes of Access The ITTALKS system is accessible either to users directly via the web, or to agents acting on their behalf. The web portal provides numerous features, including registration, search, entry and domain administration. An agent-based interface allows interaction with user agents or other services. In an effort to provide the highest degree of interoperability, the web portal allows a user to browse desired information in a variety of formats. The user may retrieve information in DAML, standard HTML format with DAML annotation, or Wireless Markup Language (WML) format, which supports WAP enabled phones. The ITTALKS web portal also has the ability to generate RDF Site Summary (RSS) ?les in response to certain queries. These RSS ?les can then be used for various external purposes, such as displaying upcoming talks on a departmental web site. To provide access for agent based services, ITTALKS makes use of Jackal [7], a communication infrastructure for Java-based agents developed by our research group at UMBC. Currently, it facilitates the use of KQML agent communication language [9]. Additionally, it is in the process of adapting to the FIPA standards [10, 1]. In addition, our research group, in cooperation with other universities, is developing a DAML ontology for the necessary conversation protocols.

Personal Profile Ontology ACM Ontology Calendar Ontology Conversation Ontology

Topic Ontology Open Directory Ontology

Talk Ontology

Fig. 5. The relationships among the various ontologies used by the ITTALKS system.

Interchangeable Ontologies The ITTALKS system is based on a set of ontologies 2 that are used to describe talks and the things associated with them, e.g., people, places, topics and interests, schedules. Figure 5 shows some of the dependencies that exist among these ontologies. The ontologies are used in the representation and processing of DAML descriptions and also as “conceptual schemata” against which the database and various software APIs are built. We have developed a general ontology for describing the topics of arbitrary talks and papers. Using this, we have implemented an ontology to describe IT related talks based on the ACM’s Computer Classi?cation System. In addition, we currently are developing a DAML ontology for IT talks based on a portion of the Open Directory, and are considering additional classi?cation ontologies. Figure 7 sketches some of the major classes and properties in these ontologies. These topic ontologies are used to describe talks as well as the users’ interests throughout the system, and also support an automated talk classi?cation, for which we have obtained a training collection for the ACM CCS and are also generating an Open Directory training collection to develop the necessary components. In addition, the DAML ontologies give a user the ability to add additional assertions in DAML to further characterize their interests. Lastly, we are also in the process of developing a semi-automated component that can map topics in one ontology into topics in another, by utilizing user-speci?c mapping believes and by taking advantage of the fact that nodes in each ontology have an associated collection of text. This component is further described in Section 5.4.

Extensive Data Entry Support Currently ITTALKS requires that information about talks be manually entered via a web form interface, or be available in a DAML description available at a given URL. Although we have made this process as simple as possible (e.g., by supporting automatic form completion using information from the knowledge base and the user’s DAML pro?le) it could still be improved. Therefore, we are developing a focused web spider to collect talk announcements from open sources


on the web. This spider will identify key information items using a text extraction system, and will automatically add information to the ITTALKS knowledge base. We are working with the Lockheed-Martin research group on the above task, and will use their AeroText information extraction system. 3.2 Architecture The current implementation of ITTALKS uses a relational database, in combination with a web server, to provide user access to the system. To enable agents to access the system, the ITTALKS provides an interface for agent-based communication. Database. The main software packages that are used in the ITTALKS system are the MySQL relational database software and a combination of Apache and Tomcat as the web portal servers. The contents of the ITTALKS knowledge base are stored in a database whose schema is closely mapped to our ontologies describing events, people, topics and locations. We have chosen MySQL because of its known reliability, and because we required software with a license that allows us to make the ITTALKS package available to additional academic and commercial institutions. Web Server. As stated above, for our web, we have chosen a combination of Apache and Tomcat. This enables us to present the IT talk descriptions to the user using Java servlets and JSP ?les, which dynamically generate requested information in DAML, XML, HTML, RSS, and WML formats. The current ITTALKS implementation can provide information suitable for viewing on either a standard, computer-based or a WAP-enabled cellular phone. Extensions. In addition, we are currently employing the Jackal agent communication infrastructure developed at UMBC and the Lockheed-Martin’s AeroText information extraction system in order to facilitate ITTALKS-user agent interaction and the automated text extraction, respectively. We are in the process of modifying Jackal to provide support for FIPA ACL interoperability. Also, we are considering the possible replacement of MySQL with native XML database software such as dbXML. 3.3 A Typical Scenario In order to better portray user interaction with ITTALKS, we present a simple, typical interaction. In this scenario, a user, Jim, learns from his colleagues about the existence of the ITTALKS web portal as a source of IT related events in his area; Jim is af?liated with Stanford University. Jim directs his browser to the www.ittalks.org main page. Seeing a link to stanford.ittalks.org (a Stanford ITTALKS domain), he selects it, and is presented with a new page listing upcoming talks that are scheduled at Stanford, SRI and other locations within a 15-mile radius (the default distance for the Stanford domain).

Jim browses the web site, viewing announcements for various talks matching his interests and preferred locations (as provided in his explicit search queries). He is impressed that he can see the talk information not only in HTML, but also in DAML, RSS and WML formats. Finding a talk of potential interest to a colleague, Jim takes advantage of the invitation feature, which allows him to send an invitational e-mail to any of his friends for any of the listed talks. Finally, using the personalize link on the bottom of the page, Jim creates his own ittalks.org main page, by providing the URL of his DAML-encoded pro?le. This customized page, listing talks based on his preferences, will be Jim’s entrance to the ITTALKS site whenever he returns.

4 Agent Interaction
ITTALKS is intended to demonstrate, among other things, the ways in which DAML facilitates the integration of service agents with online information resources. To this end, and in order to extend the capabilities of the system, we have de?ned a number of agents that support the operation of ITTALKS. Some can be seen as supporting services (such as external information services), while others we assume will exist in the general environment in the future. 4.1 Agents ITTALKS Agent. The ITTALKS agent is a front-end for the ITTALKS system. It interacts with ITTALKS through the same web-based interface as human users, but communicates via an ACL with other agents on the web, extending the system’s accessibility. At present, the agent does not support any advanced functionality, but acts primarily as a gateway for agent access. User Agents. One longtime goal of agent research is that users will be represented online by agents that can service queries and ?lter information for them. While ITTALKS does not require that such agents exist, we recognize the added power that could be gained by the use of such agents. Therefore, ITTALKS supports interaction with User Agents as well as their human counterparts. The User Agent that we have developed understands DAML, supports sophisticated reasoning, and communicates via a standard agent communication language. Reasoning is accomplished with the use of the XSB, a logic programming and deductive database system for Unix and Windows developed at SUNY Stony Brook. Calendar Agent. Although a user agent may contain the necessary knowledge about its user’s schedule, we believe that it will bene?t from assigning the calendar-based facts and preferences to a separate agent - the calendar agent. This enables the user agent not only to consult the user calendar, but also to use the same protocol to consult other calendar agents that may represent other users or groups the user belongs to. In addition, the calendar agent may only represent abstraction to already existing infrastructure, such as Microsoft Outlook or other desktop/server applications. Finally, the calendar agent may also be used to represent a room, and thus allow for re-use of the same principles of participation scheduling as well as event scheduling.

ITTALKS talk event


User Agent

MapQuest Agent

Calendar Agent

talk event of interest?

is my user free? that time slot is clear Distance from my user? 25 miles is my user free added the travel time?

event accepted

my user will attend

that time slot is still clear

Fig. 6. Interactions between the various agents described in the ITTALKS/Agent scenario.

Classi?er Agent. ITTALKS uses a Classi?er (or recommender) Agent that is invoked when a user is entering a new talk. Based on the talk’s abstract, the Classi?er returns ACM Classi?cation Hierarchy Classi?cation numbers along with a rank, in descending order. Using a local table of classi?cation numbers and names, ITTALKS suggests to the user ten possible topics. MapQuest Agent. The MapQuest Agent is a wrapper agent that allows ITTALKS to make use of external services. It interacts directly with agents (e.g. the ITTALKS agent, User Agents), and accepts requests for information such as the distance between two known locations. It then phrases an appropriate request to the MapQuest system, parses the results, and generates an appropriate response. Note that this agent could be generically named a Distance Agent, and make use of any external service (or combination of several, as needed). 4.2 Scenario We describe here an interaction that illustrates some of the advanced features provided through the use of agents in conjunction with ITTALKS. This scenario assumes that user Jim has already registered with ITTALKS, and has left instructions with the system to notify him in the event that certain types of talks are scheduled. In the course of operation, ITTALKS discovers that there is an upcoming talk that may interest Jim, and of which Jim has not yet been noti?ed. Based on information in Jim’s preferences, which have been obtained from him directly and/or from his online, DAML-encoded pro?le, ITTALKS opts to notify Jim’s User Agent directly. This is done via ITTALKS own agent, which forwards the message using an ACL. Upon receiving this information, Jim’s User Agent consults with Jim’s Calendar agent to determine his availability, and with the MapQuest agent to ?nd the distance from Jim’s predicted location at the time of the talk. Some more sophisticated interactions could potentially take place at this time; for example, the Calendar and User agents may decide to alter Jim’s schedule, and proceed to contact the User agent of some other individual. Or, the User agent might request more information about the speaker and

the event by contacting other agents or web sites, such as CiteSeer-based agent [3], to obtain more information necessary to make a decision. Finally, after making a decision, the User Agent will send a noti?cation back to the ITTALKS agent indicating that Jim will/will not plan to attend. The ITTALKS agent will make the appropriate adjustments to the ITTALKS database. In a more complex interaction scheme, Jim might be employed by a research group, which possesses a limited funding and is therefore enforcing a policy that allows only one researcher at a time to attend a particular IT event. As a result, the User agent cannot decide on Jim’s participation until it successfully interacts with other agents representing Jim’s employer and colleagues. Therefore, the decision whether anyone from the research group could attend the IT event and the further election of the group representative requires an interaction of agent virtual community. From a slightly different perspective, the User agent will also bene?t from participating in virtual communities thanks to recommendations it obtains from other User agents. One User agent may recommend an IT event given its owner’s experiences from attending a past talk of the same speaker. Another User agent may decide to share comparisons of two competing times and locations for an identical IT event. Yet another User agent may simply share its owner’s intensions on attending a particular IT event. Thus, each member of the virtual community can pro?t from these and many other positive and negative recommendations, and re?ect these social ?ltering methods in its own decisions. Finally, in a ‘Smart Of?ce’ scenario [14, 4], the ITTALKS agent may also be directly contacting an agent representing the location where a given IT event will be held. This ‘room’ agent may then use varying service discovery techniques [5, 17] to locate a projector presented in the room and inform it to pre-download the powerpoint presentation before the speaker arrival. Moreover, the ‘room’ agent may also try to contact additional agents in the IT event vicinity to decrease possible noise level from other rooms and to verify that a ‘hallway’ agent has requested enough refreshments during the IT event.

5 Bene?ts of DAML
ITTALKS bene?ts signi?cantly from its use of a semantic markup language. DAML is used to specify the ontologies that are used so extensively in our system, for personal pro?les, and as a content language for agent communication. Without DAML, specifying schedules, interests and assertions about topics would be very dif?cult. In ITTALKS, a user can specify that according to the user a couple of topics are equivalent or related or dissimilar, etc. This will allow ITTALKS to tailor the searching of talks to the users needs. As an agent content language, DAML provides more ?exible semantics than KIF or other content languages that currently provide syntax only. The ultimate bene?t of using DAML then lies in the ability of ITTALKS to independently interact with any DAML-capable agent without the need of a human supervision. Consequently, all these bene?ts, which are described in further details below, enable more ef?cient interaction between the system and its users, let them be humans or software agents.

5.1 Interoperability Standard Our use of DAML allows the content of ITTALKS to be easily shared with other DAML-aware applications and agents. For example, a Centaurus room manager agent [14] could watch ITTALKS for events happening in a room for which it is responsible in order to enable better scheduling. DAML also acts as an interoperability standard allowing other sites to make their talks available for inclusion in ITTALKS by publishing announcements marked up in our ontology. 5.2 Agent Communication Language In the future Semantic Web, agents will create, access, modify, enrich and manage DAML documents as a way to disseminate and share knowledge. As DAML documents will be the objects of discourse, DAML and ACLs must be successfully integrated. Agents will need to communicate with one another not only to exchange DAML documents but also to exchange informational attitudes about DAML documents. Using an Agent Communication Languages (ACL) agents can “talk” about DAML documents. Integrating ACL work and concepts with a universe of DAML content is our ?rst goal. Using DAML as an agent content language will add more meaning to the message. 5.3 Distributed Trust and Belief Agents face a dif?cult problem of knowing what information sources (e.g. documents, web pages, agents) to believe and/or trust in an open, distributed and dynamic world, and how to integrate potentially contradictory information. DAML can be used to support distributed trust and reputation management [13, 15], by forming the basis of a logic for distributed belief transfer that will enable more sophisticated, semanticallydriven rule-based techniques for information integration and fusion. We are making use of DAML’s expressiveness by employing it to describe security policies, credentials and trust relationships, which form the basis of trust management. Policies speci?ed in this way contain more semantic meaning, which facilitates their integration and improved con?ict resolution. Also, it will be possible for other applications to interpret the agent’s credentials, e.g. authorization certi?cates, correctly, making these credentials universal. Similarly, describing beliefs and associating levels of trust with these beliefs is more straightforward and the deduction of belief is uniform by different applications and services. 5.4 Data Entry Support ITTALKS supports intelligent form ?lling, making it easier for users to enter and edit information in their pro?les, and also to enter and edit talk announcements and other basic information. In addition, we provide automatic form ?lling when an editor tries to enter information about an entity (e.g. a talk, person, room) that already present in the knowledge base.

R ela ted to K eyw ord s
d am l:ran ge d am l:d om ain d am l:d om ain S ub T opic d am l:ran ge S up erT opic

S o ftw a re

d a m l: L itera l
d am l:d om ain

T op ic

d am l:C las s d am l:ran ge

A C M T opic
S ub T opic

S up erT opic

In teg ra ted C ircu its

S ub T opic d am l:ran ge d am l:d om ain S up erT opic

H a rd w a re

S ub T opic

S u bT op ic

S u p erT op ic

S up erT opic

M em o ry S tru ctu res

Fig. 7. The Ontologies used by ITTALKS are relatively simple, such as the topics ontology used to describe talk topics and user interests.

Entering Talks. In order to make ITTALKS successful, as we need to make it as easy as possible new talk descriptions to be entered into the system. We are addressing this problem using three complimentary approaches: an enhanced web interface, accepting marked up announcements, and automated text extraction. DAML plays a key role in the ?rst two and is the target representation for the third. Enhancing the Web Interface. We have used several techniques to enhance the web form interface for entering talk announcements. One of the simplest and most effective is to recognize then some of the information being entered about an object such as a person, a room or an organization has already been entered into the ITTALKS system and to “pre-?ll” the remaining parts of the form from our stored information. For example, most talks at an organization are given in a small number of rooms. Once the complete information about a particular room (e.g., room number, building, address, seating capacity, longitude and latitude, A/V equipment, networking connection, etc.) has been entered for one talk, it need not be entered again. Although the current implementation of this does not directly use DAML, its use can support a more generalized version of a web form-?lling assistant. The approach depends on two ideas: (i) tagging web form widgets with DAML descriptions of what they represent and (ii) capturing dependencies among data items in DAML and (iii) compiling these dependencies into an appropriate execution form (e.g., JavaScript procedures) that can drive the web form interface. In addition, we plan to investigate the possibility of a multi-modal support, where user can enter new information via standard keyboard input as well as through voice recognition means. Here, we understand that when presenting the user with a new form, the user will be allowed to use her own voice to enter data in each ?eld. Then upon submission of voice-?lled form, ITTALKS will try to infer the meaning of the recorded sound, obtain additional information based on the knowledge and rules stored in ITTALKS system, and present back the user with a text-pre?lled form for veri?cation purposes. This enhancement will then allow ITTALKS to provide talk entry support for devices with limited keyboard functionality, such as PDAs or cellular phones.

Text Classi?cation. For ITTALKS to ?lter talk announcements on topic matches, we need to know the appropriate topics for each talk. Initially, we required that users manually select appropriate topic categories from a web interface to the ACM CCS hierarchy. This turns out to be a daunting task requiring the user to navigate in a hierarchy of nearly 300 topics, many of which about whose meaning he will not be sure. Some users will face a similar problem in trying to select topics to characterize their own interests. Ultimately we would like to use more that one topic hierarchy to classify both talk topics and user interests (e.g., ACM CCS and Open Directory nodes), which makes the problem even more dif?cult for our users. To address this problem, we have built an automatic text classi?er that can suggest terms in a hierarchy that are appropriate for classifying a talk based on its title and abstract. The classi?er package used was from the Bag Of Words (BOW) toolkit by Andrew McCallum at CMU. This library provides support for a wide variety of text classi?cation and retrieval algorithms. We used the Naive Bayes algorithm, which is widely used in the classi?cation literature, fairly effective, and quick to learn the 285 classes in our test collection. We plan to use the same classi?cation agent to suggest interest terms for users based on the text found by searching their web pages. In addition to classifying text into a particular ontology at a time, we are also developing a tool for mapping among multiple ontologies. Such tool will, for example, allow each user to select her preferred topic ontology on the ?y, and the ITTALKS system will then immediately adapt and present the personalized ?ltering results according to this ontology. As a prototype of the mapping tool, we have chosen a semi-automatic approach, wherein user can manually select relations among speci?c topics across the ontologies (“landmarks”), e.g. broader, narrower, and similar. Subsequently, the remaining mappings are automatically computed via a combination of the user-speci?ed relations and our automatic text classi?er using training sets of documents for the ontologies. The automated mapper then operates in the following manner:

Accepting Marked Up Announcements. One of the simplest ways to enter new talk announcements is to provide them as a document that is already marked up. The current ITTALKS interface allows one to enter a URL for a talk announcement that is assumed to be marked up in ontologies that ITTALKS understands. Currently, these are just the “native” ontologies that we have built for this application. In general, if some talk announcements were available with semantic markup using other ontologies, it might be possible to provide rules and transformation that could map or partially map the information into the ITTALKS ontologies. We expect that, as the Semantic Web develops, it will be more and more likely that talk announcements with some meaningful mark up will be found on the web.

Automated Information Extraction from Text. We would like to be able to process talk announcements in plain text or HTML and automatically identify and extract the key information required by ITTALKS. This would allow us to ?ll the ITTALKS database with information obtained from announcements delivered via email lists or found on the web. The problem of recognizing and extracting information from talk

announcements has been studied before [8, 6] mostly in the context of using it as a machine learning application. We are developing a information extraction use the AeroText system that can identify and extract the information found in a typical talk announcement and use this to automatically produce a version marked up in DAML which can then be entered in the ITTALKS database. 5.5 User Pro?les We use personal pro?les to help ITTALKS meet the requirements of individual users. A pro?le is a widely accessible source of information about the user, marked in DAML, to which other services and individuals can refer. In the future, such a pro?le may be used by all web-based services that the user wants to access. The pro?le will ultimately provide a unique and universal point for obtaining personal information about the user for all services, preventing the need for duplication and potential inconsistencies. This pro?le can be easily shared, and with the use of DAML, will allow more expressive content for schedules, preferences and interests. The notion of a personal pro?le and a user agent are closely linked; a user might have one or the other, or both. The pro?le would likely express much of the information that might be encoded in a user agent’s knowledge base. Conversely, an agent would likely be able to answer queries about information contained in a pro?le. 5.6 Modularity With the use of DAML, we can de?ne several ontologies for topics and switch between them with ease. Furthermore, to restrict the retrieval results, a user can perform the search with respect to a certain set of ontologies, such as the ACM or Open Directory Classi?cation.

6 Future Directions
Since most users do not currently have personal agents, we have been developing one that can be used with this system. It is our goal, however, that ITTALKS be able to interact with external agents of any type. The agent we are developing reasons about the user’s interests, schedules, assertions and uses the MapQuest agent to ?gure out if a user will be able to attend an interesting talk on a certain date. We are developing a framework to use DAML in distributed trust and belief. DAML expressions on a web page that encodes a statement or other speech act by an agent are signed to provide authentication and integrity. We are working on an ontology to describe permissions, obligations and policies in DAML and allow agents to make statements about and delegate them. In order to make the process of data entry more ef?cient, we are developing a focused web spider, which will collect talk announcements from source on the web and to identify the key information in these announcements using a text extraction system. The spider will add all found and relevant information to the ITTALKS knowledge base.

7 Conclusion
Effective use of the vast quantity of information now available on the web necessitates semantic markup such as DAML. With the use of such a tool, we can enable the automated or machine-facilitated gathering and processing of much information that is currently lost to us. ITTALKS, our system for automatic and intelligent noti?cation of Information Technology talks, demonstrates the value of DAML in a variety of ways. DAML is used throughout the ITTALKS system, from basic knowledge representation, to inter-agent communication.

1. Fabio Bellifemine, Agostino Poggi, and Giovanni Rimassa. Developing multi agent systems with a ?pa-compliant agent framework. Software - Practice and Experience, 3, 2001. 2. Tim Berners-Lee, James Hendler, and Ora Lassila. The semantic web. Scienti?c American, May 2001. 3. Kurt D. Bollacker, Steve Lawrence, and C. Lee Giles. Citeseer: An autonomous web agent for automatic retrieval and identi?cation of interesting publications. Proceedings of the Second International Conference on Autonomous Agents (Agents ’98). ACM Press, Minneapolis, 1998. 4. Andrej Cedilnik, Lalana Kagal, Filip Perich, Jeffrey Undercoffer, and Anupam Joshi. A secure infrastructure for service discovery and access in pervasive computing. Technical report, TR-CS-01-12, CSEE, University of Maryland Baltimore County, 2001. 5. Dipanjan Chakraborty, Filip Perich, Sasikanth Avancha, and Anupam Joshi. Dreggie: Semantic service discovery for m-commerce applications. Workshop on Reliable and Secure Applications in Mobile Environment, 20th Symposiom on Reliable Distributed Systems, October 2001. 6. Fabio Ciravegna. Learning to tag for information extraction from text. ECAI Workshop on Machine Learning for Information Extraction, August 2000. workshop held in conjunction with ECAI2000, Berline. 7. R. Scott Cost, Tim Finin, Yannis Labrou, Xiaocheng Luan, Yun Peng, Ian Soboroff, James May?eld, and Akram Boughannam. Jackal: A java-based tool for agent development. Working Notes of the Workshop on Tools for Developing Agents, AAAI ’98, July 1998. 8. T. Elliassi-Rad and J.Shavlik. Instructable and adaptive web-agents that learn to retrieve and extract information. Department of Computer Sciences, University of Wisconsin, Machine Learning Research Group Working Pap, 2000. 9. Tim Finin, Yannis Labrou, and James May?eld. Software Agents, chapter KQML as an agent communication. MIT Press, Cambridge, 1997. 10. FIPA. Fipa 97 speci?cation part 2: Agent communication language. Technical report, FIPA - Foundation for Intelligent Physical Agents, October 1997. 11. James Hendler. Agents and the semantic web. IEEE Intelligent Systems, 16(2):30–37, March/April 2001. 12. James Hendler and Deborah McGuinness. The darpa agent markup language. IEEE Intelligent Systems, 15(6):72–73, November/December 2000. 13. Lalana Kagal, Harry Chen, Scott Cost, Timothy Finin, and Yun Peng. An infrastructure for distributed trust management. Autonomous Agents Workshop on Norms and Institutions in Multiagent Systems, AA’01, Montreal, Canada, May 2001.

14. Lalana Kagal, Vlad Korolev, Harry Chen, Anupam Joshi, and Timothy Finin. A framework for intelligent services in a mobile environment. Proceedings of the International Workshop on Smart Appliances and Wearable Computing (IWSAWC), April 2001. 15. Ninghui Li and BBenjamin Grosof. A practically implementable and tractable delegation logic. IEEE Symposium on Security and Privacy, May 2000. 16. Sheila A. McIlraith, Tran Cao Son, and Honglei Zeng. Semantic web services. IEEE Intelligent Systems, 16(2), March/April 2001. 17. Olga Ratsimor, Vladimir Korolev, Anupam Joshi, and Timothy Finin. Agents2go: An infrastructure for location-dependent service discovery in the mobile electronic commerce environment. ACM Mobile Commerce Workshop, July 2001.



All rights reserved Powered by 甜梦文库 9512.net

copyright ©right 2010-2021。