1. BRIDGING FRAMES AND AXIOMS: INCREASING EXPRESSIVENESS WHILE MAINTAINING USABILITY WITH EZPAL

Size: px
Start display at page:

Download "1. BRIDGING FRAMES AND AXIOMS: INCREASING EXPRESSIVENESS WHILE MAINTAINING USABILITY WITH EZPAL"

Transcription

1 EZPAL: Environment for Composing Constraint Axioms by Instantiating Templates Chih-Sheng J. Hou, Mark A. Musen, Natalya F. Noy Stanford Medical Informatics, Stanford University, Stanford, CA , USA Abstract: Many ontology-development tools allow users to supplement frame-based representations with arbitrary logical sentences. However, few users actually take advantage of this opportunity. For example, in the Ontolingua ontology library, only 20% of the ontologies have any user-defined axioms. We believe the difficulty of composing axioms primarily accounts for the lack of axioms in these knowledge bases: Many domain experts cannot translate their thoughts into abstract and symbolic representations. We attempt to remedy the difficulties by identifying groups of axioms that manifest common patterns, creating templates that allow users to compose axioms by filling in the blanks. We studied axioms in two public ontology libraries, and derived 20 templates that cover 85% of all the user-defined axioms. We describe our methodology for identifying the templates and present examples. We constructed an interface that allows users to create constraints on knowledge bases by filling in blanks; our usability testing shows that users could use templates to encode axioms with a success rate similar to that of experts writing directly in an axiom language. Our approach should foster the introduction of axioms and constraints that are currently missing in many ontologies. Key words: frame-based system, knowledge acquisition, knowledge representation 1. BRIDGING FRAMES AND AXIOMS: INCREASING EXPRESSIVENESS WHILE MAINTAINING USABILITY WITH EZPAL Frame-based representation systems (Karp, 1993) are a popular choice for knowledge representation. Because their taxonomic categorization of canonical concepts often bears close resemblance to the way humans describe knowledge, frame-based systems serve as efficient tools for knowledge acquisition and representation. With the proliferation of approachable user interfaces for frame-based knowledge acquisition, such as the Protégé ontology-editing environment (Protégé 2004), many domain experts actively participate in knowledge acquisition, often without the mediation of knowledge engineers. Domain experts enter information about classes and properties of concepts through a convenient GUI interface. For example, Error! Reference source not found. shows a form for defining a class in the Protégé environment. However, even with the cognitive simplicity of frame-based systems, the methodology does not completely eliminate the need for an

2 experienced developer to mediate the Figure 1. A screenshot taken from Protégé, representing classes, instances, and slots. The left column shows classes of the knowledge base as a taxonomic hierarchy; the middle column contains an instance of the class organization; and the right column presents relationships the instance encodes. process of the knowledge-base design. Most frame-based systems lack the ability to express disjunction, existential quantification about frames, or relationships between properties of the same frame or different frames. For example, one cannot restrict a value of one property based on that of another property. A remedy for this limitation is the introduction of a more expressive axiom language based on First Order Logic (FOL) developed specifically to express these more complex relationships. The traditional approach to specify such relationships involves composing and displaying logical functions in a form that is incomprehensible to many domain experts without training in FOL. An example in

3 Figure 2 shows a simple constraint, every employee has a unique ID, in an axiom in Protégé Axiom Language (PAL), which is an axiom language for the Protégé ontology-editing environment 1 based on Knowledge Interchange Format (KIF) (Genesereth and 1

4 Figure 2 Text-Based Axiom-Editing Environment in Protégé. The axiom in the Protégé Axiom Language (PAL) says that every employee must have a unique ID. Fikes, 1992). The axiom has the following equivalent English translation: For every two employees both of whom have IDs, if the two employees are not the same, their IDs cannot be identical. The difficulty in conceptualizing a thought in a symbolic representation is compounded by the fact there is no standard implementation of an axiom language. Therefore, even though the addition of an axiom language improves the expressiveness of a frame-based system, in practice this gain cannot be realized by developers unless they can overcome the peculiarities of a specific knowledge-based system to enter working axioms correctly. The lack of an abstracted representation for the logical expressions for a hybrid model, in contrast to the highly abstracted user-interface of the original model, does little to address the situation. This factor can lead to a failure to encode critical knowledge realizable only through axioms. We examined axioms in FOL that users included in ontologies in two large ontology libraries, the Protégé ontology library (Protégé 2004) and the Ontolingua ontology library (Ontolingua 1998). We noticed two important facts: First, many ontologies simply lack user-generated axioms, likely because axioms are very hard for developers to write. For example, in Ontolingua, only 20% of the ontologies provide manually generated axioms. Second, most of the axioms that do exist in the ontologies can be described by a small set of templates. In fact, we discovered that 20 templates covered 85% of user-defined axioms in the two libraries (Hou et al.,

5 202). We can use these templates to allow users to specify axioms by selecting an appropriate template and filling in the blanks rather than by having to conceptualize and express a complex axiom in first-order logic. Figure 3 shows the template that would allow users to create the aforementioned constraint every employee has a unique ID simply by populating the blanks of the templates. Figure 3 A template-based interface that allows users to encode the same statement as in Figure 2. Users create this constraint by specifying values in blanks, in this case Class Employee and Slot ID. We acknowledge that this approach will not encompass the modeling of every axiom possible, but it does allow users to specify common logical assertions through an abstracted interface. In case the template library does not cover certain axioms, or an advanced user desires additional flexibility, he can always fall back on the traditional mechanisms of specifying FOL sentences. Therefore, our approach augments, instead of replacing, existing features of a hybrid system. We constructed a knowledge base of templates, devised strategies to organize the templates based on referential patterns, and constructed a graphical user interface that permits users to instantiate constraint axioms by filling values into the templates. The paper begins the discussion with an outline of the underlying knowledge model (Section 2). We then describe our methodology for collecting templates (Section 3). In Section 4, we discuss EZPAL, a plug in for Protégé, which implements our approach (Section 5). We report on the methods and results of our usability experiments, which tested whether or not the templates allowed quick and accurate composition of the axioms similar to those found in various knowledge bases. We describe the evaluation protocols in Section 6 and results in Section 7. We conclude with the discussion of the experiment results (Section 8), related work (Section 9) and future work (Section 10). 2. KNOWLEDGE MODEL We apply our approach in the context of a general frame-based knowledge model. A frame represents a concept or object by encapsulating its characteristic values in various slots that taken together define a data structure. When a frame represents a general concept in the same way as a Platonic form, it becomes a class, whereas an individual realization or instantiation of that

6 concept is called an instance (Figure 1). A superclass is a superset of instances in its subclasses. For example, in Figure 1, the class Editor is a subclass of the class Author. Author is therefore a superclass of Editor, since Author is a more general concept. Chief Hancho is a specific instance of the class Editor. Each instance has a set of slots that contain attributes of the instance. A slot can contain a number, a string, a symbol, an instance of another class, or a class itself. For example, the salary slot of the Employee class contains an integer value. Subclasses inherit slots from superclasses. We can specify attributes of slots (facets) such as the value type, cardinality, default values, and a data range. For example, we can constrain the salary slot of every employee to be greater than 100. However, as we previously mentioned, we cannot usually specify relations between different slots. It is not possible to specify that the salary of every editor is greater than the salaries of those employees whom the editor is responsible for. These assumptions are consistent with the general knowledge model underlying the Open Knowledge-Base Connectivity (OKBC) protocol (Chaudhri, 1998), which was designed as a means of communication among different frame-based knowledge bases. 3. IDENTIFICATION OF TEMPLATES In order to identify axiom templates that would cover a large fraction of axioms that users have put into knowledge bases, we selected two ontology libraries that contained ontologies contributed by developers in many domains. We looked at axioms in ontologies from the Ontolingua ontology library (Ontolingua 1998) and Protégé ontologies. These sources contain knowledge bases from diverse fields and have ample axioms. Ontolingua and Protégé have very similar knowledge models (OKBC). The 18 ontologies that we examined covered such diverse subjects as biological processes, chemical agents, enterprise organization, and bibliographical data. For example, the VT-Domain ontology in Ontolingua describes the declarative concepts (such as component types) and parameters (such as standard physical dimensions) involved in assembling elevators. The ontology for the Athena project (Tu and Musen, 2001), a private ontology from which we derived several axioms, also contains declarative concepts, such as a controlled vocabulary for drugs, lab tests, and diseases, in addition to specific drug data for generating therapy guidelines. We did not consider upper-level and mathematical ontologies which contained specific, complex logical functions seldom reusable in other contexts. Most ontologies had 10 to 30 axioms. Our process for identifying templates consisted of the following steps: 1. We identified axioms that were identical except for the names of specific variables and

7 frames. We removed the variable and frame references to generate a pattern. 2. We used simple rules and judgment to identify groups of similar patterns and generalized them into templates. For example, if there were two patterns Slot A contains B and. Slot A does not contain B, we group the two patterns into the following template:. Slot A does/does not contain B. We introduce variations (see Section 4.3) to keep track of the subtle differences between patterns grouped when into a template (point 3). 3. We derived generic properties for categorization of the templates (see Section 4.2). Consider the following two axioms in a Protégé ontology describing clinical guidelines for hypertension treatment: 2 (forall?process (=> (slot-not-null inhibited_by_object?process) (forall?process (/= "cytochalazin" (name (inhibited_by_object?process))))) (=> (slot-not-null inhibited_by_object?process) (/= "neuraminadase" (name (inhibited_by_object?process))))) The first axiom states that No process instance contains the value cytochalazin in the slot inhibited_by_object. The second axiom states that No process instance contains the value neuraminadase in the slot inhibited_by_object. These axioms vary only in referred slot value cytochalazin and neuraminadase. Thus, we can generalize these two axioms into the following pattern: All instances of class do not contain the value in slot. We then generalize these patterns further, trying to balance the following tradeoff: On the one hand, we want to have a small number of templates in the final collection, simplifying the search for the appropriate template for the ontology developer. On the other hand, we want to ensure that the templates do not become so general as to be incomprehensible. Table 1 shows 4 examples of the 20 templates that we identified. 2 The ontology courtesy of Samson Tu.

8 Every instance of class that shares the same value in slot must/cannot have identical values in slot. Example: All staff members who share an office are assigned different desks. Every instance of Class Staff that share the same value in Slot office-number : Class Staff must share/not share values in Slot desk-number : Class Staff. Every instance of class appears at least once in slot for any instance of class. Example: Every student has at least one advisor. Every instance of Class Student appears at least once in Slot advisee : Class Professor of any instance of Class Professor. For every instance I 1 of class, there must be an instance I 2 of class that contains I 1 in slot. Example: Every student is an advisee of a professor For every instance I 1 of Class Student, there must be an instance I 2 of Class Professor that contains I 1 in slot advisee: Class Professor. For every instance of class, slots and cannot have the same value. Example: A student cannot both likes and dislikes an activity. For every instance of Class Student, Slot likes : Class Student and Slot dislikes : Class Student cannot have the same value. Table 1 Examples of templates with their sample usage. 4. MODELING TEMPLATES AS A PROTÉGÉ ONTOLOGY We developed an ontology of templates in Protégé, storing with each template information to help users understand what the template is about.

9 4.1 Components of a template Figure 4 demonstrates the implementation of a template, which is required to generate a user view (see Figure 3). Note that EZPAL users do not need to see these template definitions; rather, they see a user interface that EZPAL generates automatically based on these definitions (Figure 5). It is the template designer and usually a PAL expert who specifies these definitions.

10 Figure 4 Components of a complete template definition. Numbers in the Figure correspond to elements in the list in Section 4.1. Each definition includes a sentence with blanks to fill in, an example of sample usage, a list of properties, a prototypical axiom translation, a machine-interpretable expression of the template, and an estimate of the level of difficulty entailed in using the template. The form in the Figure is generated automatically from the Protégé ontology for template definition. 1. The English-language representation or the name of the template as a fill-in-the-blanks sentence. For the template in Figure 4, this representation is: Every instance of class appears at least once in slot of any instance of class 2. A set of properties describing the template (see Section 4.2). 3. A sample usage sentence in natural language and template-based English that includes a possible interpretation of the template with the blanks already filled in. Every student has at least one advisor Every instance of Class Student appears at least once in Slot advisee : Class Professor of any instance of Class Professor. 4. A generalized pattern that defines variations of the template and that drives translation into the target representation system. Here is a translation of the example template into Protégé Axiom Language (PAL): (defrange?{class A} :FRAME {Class A})

11 (defrange?{class B} :FRAME {Class B}) ^(forall?{class A} (exists?{class B} ({Slot B 0}?{Class B}?{Class A}))) The variables enclosed in curly brackets can be substituted with direct references to generate a working PAL axiom (see Section 5.1). 5. A computer-interpretable expression of the template for interface generation: The expression contains information that enables the automatic generation of a user interface to acquire fill in the blanks data. This information can in turn be used to translate a generalized pattern to a specific axiom in PAL. It also dictates what type of values can fill-in-the-blanks. This feature allows us to set additional user-interface controls on the types of the allowed frames for which users can fill in a particular blank. The example below limits user s choice of a slot to those slots of the second class B, thus effectively preventing users from composing potentially inappropriate axioms. Every instance of {Class A} appear at least once in {Slot B 0} of any instance of class {Class B} 6. Level of Difficulty: A subjective ranking between 1 and 10 indicating the complexity level of the template, where a lower value indicates the template is more easily understood by users. The template designer assigns the ranking based on his subjective view. However, in general, the ranking correlates positively with the number of blanks users need to fill in and negatively with the frequency with which the template appeared in the samples we examined. We model templates in Protégé as classes and associated information as slot values, thereby changing the paradigm of axiom-composition into one of axiom instantiation, Individual template-based axioms are thus instances of the respective template classes. 4.2 Generic properties for categorization of templates We considered several approaches to classifying templates. The first approach involved creating a hierarchy of templates with strict inheritance. However, we believe there are inherent problems associated with this approach. Empirically, we observed that there is no clear notion of an inheritance relationship between templates. Making a more complicated template an extension of another, simpler template often required overriding the majority of inherited features. This fact defeats the original purpose of inheritance. The second solution for structuring templates involved introduction of abstract super templates with multiple inheritance. Conceptually, the search for super-templates involves semantic abstraction of the templates, but this strategy resulted in templates that are weak and vague, whereas we designed the original templates to be unique and concise.

12 We adopted a third approach for organizing templates: We chose to organize the template classes through descriptions rather than through a hierarchical organizational scheme. Since each constraint axiom ultimately specifies how a particular slot value relates to another, we defined the following properties, which specify the structural or referential relationships between constrained or constraining slots: A condition constrains values of a slot for all instances of one class. This property applies when a constraint needs to apply a comparison across values of the same slot for instances of the same class. For example, slot must contain a unique value. Value(s) of a slot constrain slot values for related instances. This property applies when a slot value for one class restricts value for another slot that belongs to a different but related class. For example, if instance I 1 of class contains another instance I 2 of class in slot, then I 2 must contain value in its slot. Value(s) of a slot constrain other slot values for the same instances. This property applies when a slot value of one instance restricts the slot value of another slot for the same instance For example, for every instance, slot and slot cannot contain the same value. Multiple constraining slots or multiple constrained slots. - applies when the conditions need to invoke a particular constraint and/or there are more than one slot whose value needs constraints e.g. For every instance of class whose slot contains a value, slot must contain value and slot must contain value. These properties are not mutually exclusive, so it is possible to associate one template with more than one property. Following this strategy, it sufficed to create a flat list of templates in which all templates have the superclass template. We then assigned these properties to individual templates. 4.3 Variation in templates Each template can have several variations. Variations can result from using multiple conditions or resulting statements, or from applying different operations to slot values. In general, several variations are automatically associated with certain defined phrases or built-in to a template. For example, several templates have the phrase(s).that contains.. This phrase is short for that does/does not contain, where users will be able to choose either the positive or negative form through an interface in an attempt to generate a constraint axiom. For a different type of variation, which generalizes the number of conditions for a particular

13 slot, consider the following example: There exists an instance of class that contains (value in slot.) (*N) This variation specifies that both the following patterns are legal expansions of the template: There exists an instance of class that contains value in slot. There exists an instance of class that contains value in slot and contain value in slot. These patterns can give rise to the actual constraints found in knowledge bases. For example: There exists an instance of class Drug_Usage that has value Cardio-Selective-Beta-Blocker in slot Drug-Name. There exists an instance of class Current-Medicine that contains value hydrochlorothiazide in slot Drug-Name and value greater than 25 in slot daily-dose. Allowing such variations enables template designers to derive succinct yet flexible template expressions. Without this mechanism, we would have to store individually templates with very minor differences to ensure adequate coverage of the template library, and the template library would become unwieldy to browse and maintain. 5. EZPAL TAB 5.1 Composition of the EZPAL Interface We developed the EZPAL Tab, an extension to the standard Protégé ontology-editing environment (Protégé 2004) that allows the creation of PAL axioms by filling in blanks in a template, much like the process of creating classes and instances by filling in slot values in forms. While defining an ontology, the user can use the EZPAL tab to specify additional constraints on the ontology elements. For example, Figure 4 shows a snapshot of the tab, where a template represents the constraint Every editor s salary is higher than the employees he is responsible for. The EZPAL interface consists of four sections: (1) the Properties filter panel, (2) the Template list panel, (3) the Sample Usage panel, and (4) the Fill in the blank panel. 1. The Properties filter panel the panel modulates the search space or the size of the template list in display by showing only those templates that satisfy all the selected properties on the top panel. The filter panel also allows the users to choose from 3 modes: novice, intermediate, and expert modes. Each mode acts as another level of filtering by showing only the templates with their level of difficulty values under a certain threshold. 2. The Template List Panel The list displays the English representation of templates satisfying the property and the level of difficulty filter. Clicking on a specific template changes

14 Figure 5. Using the four components of EZPAL Tab to create a constraint Every editor s salary is greater than that of the employees for whom he/she is responsible. The user browses the template library by clicking on one in display on panel 2 the Template List Panel, examines sample usages on panel 3, and fills in the details on panel 4. the other two panels on the right to display the associated examples and fill-in-the-blanks form. 3. The Sample Usage Panel This panel displays the sample usage information for a template in two forms: as an example English sentence and as a template in which the blanks have already been filled. 4. The Fill in the blank panel This is the panel where user actually fills in the blanks and has a sentence about how this actually happens. When the user fills in the blanks, EZPAL limits his choices only to the ones that the ontology allows. For example,

15 Figure shows a permitted sequence of steps users can fill in values: one must specify the class type before specifying its slot, and subsequently the slot value. The tab displays the newly created axiom on the axioms based on this template section of the panel. Figure 6 Partial screenshots of a template to demonstrate the built in value selection constraint mechanism. (a) The user must specify a class type before it can specify the slot or slot value (b) User can choose from the slots of employee once the class is chosen. (c) The user can now define the slot value once the slot salary is chosen. 6. EVALUATION PROTOCOL AND RESULTS We performed user studies to evaluate formally the hypothesis that templates could help users to encode successfully simple axioms without any knowledge of an axiom language itself. More specifically, we evaluated how successful the users were in encoding constraints using the EZPAL tab. 6.1 Subjects and Training The participants in the experiment were four students, two staff members at Stanford Medical Informatics, and one student at University of Washington. All participants had one or more years of experience using the basic Protégé ontology-development environment for knowledge representation and knowledge acquisition, but they had little or no experience with the Protégé Axiom Language (PAL). All users had some Computer Science background. There was no formal training session to teach the participants how to use the EZPAL Tab. Instead, each participant received a link to a website containing a short description on the tab s features and a few examples. 3 We asked each participant to generate a set of constraints for the assigned knowledge base by using the EZPAL Tab. The success rate and time measurements served as the basis for our evaluation. 3 The experiment materials are available at

16 6.2 The Knowledge Base and Constraints for Evaluation We used an ontology describing a travel domain, which was available to us. 4 The ontology provided basic descriptions for modes of transportations, trip information, and facilities at destinations. The domain description contained mostly common-sense knowledge, and thus all participants were equally familiar with the domain. Furthermore, each participant received detailed written explanation of the ontology that elucidated the concepts and relations that were not immediately clear. The list of constraints that we asked the users to encode was derived primarily from the PAL constraints in the original ontology. We simplified several complex constraints into several simple ones and introduced a few more constraints that would enhance the integrity of the knowledge base describing the travel domain. Table 2 shows nine constraints that the participants were asked to encode. The constraints are written in plain English independently of the EZPAL templates to simulate a real world situation. The participants were given one hour to encode them. We intentionally included several constraints that could not be encoded with EZPAL (entries 5 and 9) to add more realism to the user studies. We informed the participants that they would need to decide whether to try to find a template for each axiom. We told then that even if a suitable template exists for an axiom, the wording is not necessarily equivalent. These conditions reflect real-world situations. 1. Every arrival city of a flight must have an airport. 2. For any lodging the number of available rooms cannot exceed total number of rooms. 3. Every destination of a flight must also have another flight departing from it. 4. No two transport systems can share the same make and model numbers. 5. The only possible mode of transportation between cities in different continents is Airplane. 4 We developed an ontology as part of the experiment on expressiveness of ontology-development tools at the EON2002 workshop (

17 6. All 5-star hotels have internet connections. 7. For every flight the price for the economy class must be lower than that of a business class. 8. Every route has customers. 9. The customers of a route must have matching expected departure and arrival cities. Table 2 Constraints in English. The subjects attempted to encode all 9 axioms within one hour. 6.3 Evaluation Criteria For each of the axioms, we asked the participants to indicate whether they (1) attempted to encode the axiom and believed they were successful ; (2) attempted to encode the axiom but could not find a suitable template; (3) did not attempt to encode the axiom. For all responses of category 1, we manually examined the knowledge base to determine how many constraints were encoded correctly. Based on the collected data, we used the following evaluation criteria to measure the participants performance: a) Ability to locate a template. We measured how often the participants could find a template for a constraint they attempted to encode. In other words, we divided total number of constraints that participants encoded by the total number of constraints that participants attempted to encode. This ratio demonstrates the subjects ability to locate their desired templates in the library, regardless of whether the templates identified could correctly express the logical statements in mind (we address the issue of correctness in Expectation Accuracy below). b) Expectation Accuracy. We measured the ratio of total number of correct guesses, which is the number of attempts, to look for templates for a constraint EZPAL can formulate and skipping ones EZPAL could not create, to the total number of axioms. This number implies how well the subjects allocated their limited time according to their expectations of the expressiveness of the template library. c) Correctness. We measured the fraction of axioms that the participants encoded that were actually correct. We divided the total number of encoded axioms that were correct by the total number of axioms that the users encoded. This number measures how well the participants understood the templates when using them to create constraint axioms.

18 d) Subjective opinion. We gave subjects usability questionnaires focusing on their opinions about the design of templates, properties, interface layouts, and the strategies that they used to identify templates. 7. EVALUATION RESULTS We now present the results of our evaluation. 7.1 Ability to locate templates The users attempted to encode on average 7.3 (S.D. = 0.94) out of 9 constraints with EZPAL. Of these, they were able to find suitable templates for an average of 5.2 axioms (S.D. = 0.75). These numbers constitute a success rate of 72.6%. Many subjects indicated that they did not have enough time to attempt all the constraints. 7.2 Expectation Accuracy Only seven of the nine constraints given to the subjects could be encoded directly using EZPAL. One of the remaining two axioms required information from a slot several layers of indirection away from the constrained class, and another required two EZPAL expressions due to the structure of the ontology. Of the 7 axioms that could be encoded with EZPAL, the users attempted to encode on average 6.4 times, or 92% correct (S.D. = 0.65). For the two axioms that EZPAL could not encode, the users did not attempt to use EZPAL 1.3 times, or 64% correct (S.D. = 0.47). In fact, overall, the weighted average of expectation accuracy is 86% (S.D. = 0.5). As the results suggest, the users tended to be optimistic by attempting to compose axioms that could not be expressed by any template. In fact, subjects were tricked by the deceptively simple axiom The only possible mode of transportation between cities in different continents is Airplane, which EZPAL could not encode due to the way the ontology was structured. 7.3 Encoded Axiom Correctness Out of the mean 5.2 axioms that each participant encoded, 4.5 or 87% of axioms were correct. Thus, most of the time users were successful in deciphering the relationships between the constraining classes, constraint classes, instances, and slots the templates represent as English sentences.

19 7.4 Expert s Performance in Encoding the Same Constraints Entered directly in PAL We also asked a PAL expert to encode the same set of nine constraints directly in PAL, without using the EZPAL tab. Given the same amount of time, the expert spent 55 minutes and attempted to encode all 9 constraints, 6 of which were correct. 8. DISCUSSION Our work demonstrates the feasibility of a template-based approach for acquiring logical constraints. The subjects, all of whom taught themselves EZPAL, were able to encode correctly 73% of the constraints under significant time pressure, 5 when dealing with unexpected complexities in various parts of the ontology, and with no prior experience with the template library itself. As expected, identifying the correct template, rather than populating the blanks with values, is the most difficult step in the process. Most of the constraints we supplied involved multiple slots and indirections, but users worked quite well within the framework by achieving high scores in the ability to locate templates and to encode axioms correctly. In fact, for the few simple constraints involving one slot or several slots without indirection, the percentage of attempted axioms encoded correctly was 92.9%. The chance of successfully encoding axioms in EZPAL correlates inversely with the difficulty level of the axioms. Comparison of performances of EZPAL users and that of the PAL user, who did not use EZPAL to encode the axioms, also revealed potential benefits of our approach. The PAL expert successfully constructed one constraint out of the two that could not be encoded with EZPAL. Interestingly, if one only considers the constraints EZPAL could express, the correctness levels are almost identical (5 by the expert using PAL directly vs. 4.5 on average by subjects using EZPAL). These results are especially promising, since the subjects, who composed the axioms without any knowledge of PAL, did almost as well as the PAL expert, who had extensive experience with composing PAL axioms. Further analysis of the results shows that 1) the expert spent a significant amount of time checking the syntax and logic of the axioms and 2) two axioms that the expert encoded correctly have a more succinct representation than is possible in EZPAL. EZPAL reduced the time needed for entry of axioms and ensured that the resulting PAL axioms where syntactically correct. In this study, we do not have sufficient data to conclude whether EZPAL users performed better or worse than PAL experts, since we evaluated only one of the latter. Because of the complexity of the language, we simply did not have enough PAL 5 Three out of seven subjects managed to examine all nine constraints before running out of time.

20 experts. In future work, we will conduct a full comparative study of PAL and EZPAL. Some subjects suggested that the wording for a few templates was slightly awkward, but in many cases this awkwardness was an artifact of standardization among sentence structures. This standardization contrasts with the variety of different ways in which the axioms in the libraries in our study expressed the same things. Some users found the standardized sentence structures greatly benefited their search for a working template. Beyond the sentence structures, the examples associated with each axiom provided perhaps the most significant assistance in the search process. Interestingly, opinions about the helpfulness of properties, which were descriptions about the referential patterns of templates, varied. Many users thought the properties were clear but some users also thought the properties were incomprehensible. Some participants did not use properties as a filtering mechanism at all. Some participants suggested that the properties are too abstract, but those who disagreed said that picturing the relationships among frames mentally or actually drawing pictures helped in choosing the properties. Another complaint was that sometimes a property encompasses too many templates; selecting only one property did not reduce the size of the viewable list of templates very much. However, we observed that the users who claimed they were comfortable with the properties were able to encode more axioms successfully than did those who did not make use of the feature. 9. RELATED WORK Research in classifying and representing axioms in a user-friendly way has been relatively sparse in the knowledge base-systems community. Staab and Mädche (Staab and Mäedche 2000) adopt an approach similar to ours: They note that many axioms that they encountered in ontology-engineering projects follow similar patterns. They abstract several classes of axioms, such as algebraic axioms (e.g., reflexivity and symmetry of properties), axioms dealing with composition of relations, axioms describing part whole relations and so on. Then the abstract representation of an axiom (the one that the user sees) is a predicate for which a user only needs to specify arguments. The user does not need to worry about the symbolic representation of the axiom in a specific language. For the limited set of axioms that the authors discuss, the predicate approach works well. However, it is unclear how the same approach would work for slightly different variations of axioms and axioms with varying number of conditions. In addition, for many users a look at the predicate name does not immediately clarify what the underlying axioms are about (e.g., consider the predicate PartonomicRolePropagation ). In the ontology libraries that we considered, most axioms did not fall in the categories identified by the authors. This approach does not provide a path from the axiom templates to a user-friendly interface that

21 naïve users can use to create the axioms. Despite these differences, it is important to see the parallels between this work and ours in that we try to facilitate the user s experience in defining axioms by allowing him to instantiate common patterns rather than write axioms from scratch. Researchers applied the above idea not only to specifying single axioms but also to specifying sets of axioms. In some cases, a set of axioms represents a complex knowledge-base component, such as a description of a physical process (Barker, 2001; Clark, 2000). In other cases, a set of parameterized axioms represents a new constraint that cannot be directly expressed in the corresponding language (Staab et al., 2001). As a result, the task of the knowledge-base designer is greatly simplified since he needs only to instantiate a particular pattern rather than write a set of axioms from scratch. In addition, the user creates the definition at a higher level of abstraction and the system can then translate it into several specific languages if necessary. In our work, we identify the recurring patterns by analyzing a large set of real-world axioms that users have created in their ontologies. The work on Generalized Directive Models (GDM) (van Heijst et al. 1992) also exploits the idea of using patterns for knowledge acquisition. With GDMs, the processes of creating abstract model of the domain and filling it in with domain knowledge are closely intertwined. GDMs use a grammar designed for a specific task, such as diagnosis, to acquire and generate information both for the abstract model and for the domain knowledge. For each of the tasks, a separate grammar must be designed. Tu and Musen (Tu, 2001) observe that most of the axioms required by developers of ontologies of clinical-practice guidelines need to write follow a limited set of patterns. Specifically, they consider axioms for describing decision criteria in clinical guidelines. Instead of writing an axiom in PAL, a guideline author fills in the form that looks exactly as a form for any regular instance in the knowledge base. For example, there is a check box to mark whether the user is looking for presence or absence of a particular criterion; a box to select from the list of time periods; a box to select a value from the list of conditions, and so on. Once the user fills in the form, the engine automatically generates an axiom in PAL. Again, in this approach, the user can specify a large fraction of axioms simply by performing a fairly intuitive task filling in blanks in a form. However, the templates are specific to defining guideline criteria. To use them for other domains, one will need to create new sets of templates. In our work, we studied ontologies from many different domains, to create domain-independent templates. Our methodology however can also be used in domain-specific context: a study of ontologies in a specific domain can produce a set of templates specific for the domain. The tools that we describe in this paper can then be used to assist users in creating axioms based on these domain-specific templates. Design patterns in object-oriented programming (Gamma, 1999) is another approach to using recurring representation patterns as the building blocks of design. A design patterns records,

22 explains, and evaluates patterns of code in object-oriented systems. Similar to our templates, each design pattern also encodes information for structuring, creating, and managing the design idioms. Our work also has some parallels with case-based reasoning (Leake, 1996). In case-based reasoning, a problem is solved by comparing it to a set of existing cases for which we know the solution. The case-based reasoning paradigm has been used in many different domains for diagnosis, design, planning, and so on. The underlying assumption in CBR is that situations repeat themselves and rather than solve a problem from scratch, we can look for a similar case that has occurred previously. In a similar way, our research suggests that in many cases, even such tasks as axiom design in knowledge-base systems, can be described by a set of patterns that have previously occurred. Where in a case-based reasoning setting, the system matches the new case to its library of cases, in EZPAL the user matches the axiom that he wants to express to the library of templates and adjusts the template to match the axiom more closely. And just as CBR will not work in every possible situation but has proved to be extremely useful and practical in plethora of applications, we believe that our methodology for defining logical axioms will enable many users to augment their knowledge bases with additional knowledge. 10. SUMMARY We developed an axiom-modeling methodology whereby we identified templates based on structural repetitions among existing axioms, and properties which were relational abstractions of the templates. Using the templates, which are available as fill-in-the-blank English sentences, users can fill in values to create axioms without previous knowledge of the underlying axiom language. We created a Protégé knowledge base of templates and properties derived from the constraint axioms in Protégé and Ontolingua ontologies. We also developed a constraint acquisition tab which allows users to filter the template list with known properties of the goal axiom before users identify and instantiate the associated template. Results of the user studies showed that even though a user s ontology layout affects coverage of the templates and the concept of property based on structural abstraction of templates required more time to understand, the approach demanded only a short training period and allowed its users to encode basic and intermediate axioms quickly and accurately. ACKNOWLEDGEMENTS We are very grateful to Samson Tu, Mor Peleg and Iwei Yeh for sharing their Protégé ontologies. We would also like to thank Monica Crubézy for suggestions about template designs and interface evaluation and Carolyn Ross for suggestions about writing. This work was supported in

23 part by a contract from the U.S. National Cancer Institute. Johnson Hou was supported by the Stanford President s Scholar Intellectual Exploration Grant for lower-division undergraduate students. This work was conducted using the Protégé resource, which is supported by grant LM from the United States National Library of Medicine. REFERENCES Barker, K., Clark, P. and Porter, B. A Library of Generic Concepts for Composing Knowledge Bases. In: the First International Conference on Knowledge Capture (K-Cap'01). Victoria, BC, Clark P., Thompson, J., and Porter, B. Knowledge Patterns. In: the Seventh International Conference on Principles of Knowledge Representation and Reasoning(KR-2000), pages , Eds: A. Cohn, F. Giunchiglia, B. Selman, CA:Kaufmann, Chaudhri, V.K., Farquhar, A., Fikes, R., Karp, P.D. and Rice, J.P. OKBC: A programmatic foundation for knowledge base interoperability. In: the Fifteenth National Conference on Artificial Intelligence (AAAI-98). Madison, Wisconsin: AAAI Press/The MIT Press, Gamma, E., Helm, R., Johnson, R. and Vlissides, J., Design Patterns: Elements of Reusable Object Oriented Software. Reading, MA: Addison-Wesley, Genesereth, M.R. and Fikes, R.E., Knowledge Interchange Format, Version 0.3,Reference Manual, Knowledge Systems Laboratory, Stanford University, Heijst, G.v., Terpstra, P., Wielinga, B. and Shadbolt, N. (1992). Generalised Directive Models. In: Proceedings of the 7th Banff Knowledge Acquisition for Knowledge-Based Systems Workshop, Banff, Alberta, Canada. Hou, C.J., Noy, N.F., Musen, M. A., A Template-Based Approach Toward Acquisition of Logical Sentences. In: the Proceedings of the Conference on Intelligent Information Processing (IIP-2002), Montreal, Canada: Kluwer Academic Publisher, Karp, P.D., The design space of frame knowledge representation systems, SRI AI Center: Menlo Park, CA, Leake, D., Case-Based Reasoning: Experiences, Lessons, and Future Directions. AAAI Press, Ontolingua, Ontolingua System Reference Manual, Knowledge Systems Lab, Stanford University, Protégé, The Protege Project, Stanford Medical Informatics, Stanford University, Staab, S. and Mäedche, A. Axioms are objects, too - Ontology Engineering Beyond the Modeling of Concepts and Relations. In: the 14th European Conference on Artificial Intelligence (ECAI 2000), Workshop on Ontologies and Problem-Solving Methods. Berlin, Staab, S. Erdmann M., Mäedche A. Engineering ontologies using semantic patterns. In: A. Preece & D. O'Leary

24 (eds.), Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence(IJCAI-01), Workshop on E-Business & the Intelligent Web. Seattle, Tu, S.W. and Musen, M.A. Modeling Data and Knowledge in the EON Guideline Architecture. In: MedInfo London, 2001.

Component-Based Support for Building Knowledge-Acquisition Systems

Component-Based Support for Building Knowledge-Acquisition Systems Component-Based Support for Building Knowledge-Acquisition Systems Mark A. Musen, Ray W. Fergerson, William E. Grosso, Natalya F. Noy, Monica Crubézy, and John H. Gennari Stanford Medical Informatics Stanford

More information

Evaluation experiment for the editor of the WebODE ontology workbench

Evaluation experiment for the editor of the WebODE ontology workbench Evaluation experiment for the editor of the WebODE ontology workbench Óscar Corcho, Mariano Fernández-López, Asunción Gómez-Pérez Facultad de Informática. Universidad Politécnica de Madrid Campus de Montegancedo,

More information

Reusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach

Reusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach Reusable Knowledge-based Components for Building Software Applications: A Knowledge Modelling Approach Martin Molina, Jose L. Sierra, Jose Cuena Department of Artificial Intelligence, Technical University

More information

AN INTELLIGENT TUTORING SYSTEM FOR LEARNING DESIGN PATTERNS

AN INTELLIGENT TUTORING SYSTEM FOR LEARNING DESIGN PATTERNS AN INTELLIGENT TUTORING SYSTEM FOR LEARNING DESIGN PATTERNS ZORAN JEREMIĆ, VLADAN DEVEDŽIĆ, DRAGAN GAŠEVIĆ FON School of Business Administration, University of Belgrade Jove Ilića 154, POB 52, 11000 Belgrade,

More information

Algorithm and Tool for Automated Ontology Merging and Alignment

Algorithm and Tool for Automated Ontology Merging and Alignment From: AAAI-00 Proceedings. Copyright 2000, AAAI (www.aaai.org). All rights reserved. Algorithm and Tool for Automated Ontology Merging and Alignment Natalya Fridman Noy and Mark A. Musen Stanford Medical

More information

Ontological Representations of Software Patterns

Ontological Representations of Software Patterns Ontological Representations of Software Patterns Jean-Marc Rosengard and Marian F. Ursu University of London http://w2.syronex.com/jmr/ Abstract. This paper 1 is based on and advocates the trend in software

More information

Network-Based Information Brokers

Network-Based Information Brokers From: AAAI Technical Report SS-95-08. Compilation copyright 1995, AAAI (www.aaai.org). All rights reserved. Network-Based Information Brokers Richard Fikes Robert Engelmore Adam Farquhar Wanda Pratt Knowledge

More information

Ontology Modeling Using UML

Ontology Modeling Using UML Ontology Modeling Using UML Xin Wang Christine W. Chan Department of Computer Science, University of Regina, Regina, Saskatchewan, Canada S4S 0A2 wangx@cs.uregina.ca, chan@cs.uregina.ca Abstract Ontology

More information

A View Integration Approach to Dynamic Composition of Web Services

A View Integration Approach to Dynamic Composition of Web Services A View Integration Approach to Dynamic Composition of Web Services Snehal Thakkar, Craig A. Knoblock, and José Luis Ambite University of Southern California/ Information Sciences Institute 4676 Admiralty

More information

THE IMPACT OF INHERITANCE ON SECURITY IN OBJECT-ORIENTED DATABASE SYSTEMS

THE IMPACT OF INHERITANCE ON SECURITY IN OBJECT-ORIENTED DATABASE SYSTEMS THE IMPACT OF INHERITANCE ON SECURITY IN OBJECT-ORIENTED DATABASE SYSTEMS David L. Spooner Computer Science Department Rensselaer Polytechnic Institute Troy, New York 12180 The object-oriented programming

More information

Abstraction in Computer Science & Software Engineering: A Pedagogical Perspective

Abstraction in Computer Science & Software Engineering: A Pedagogical Perspective Orit Hazzan's Column Abstraction in Computer Science & Software Engineering: A Pedagogical Perspective This column is coauthored with Jeff Kramer, Department of Computing, Imperial College, London ABSTRACT

More information

Toward Ontology-Based Frameworks for Knowledge-Acquisition Tools

Toward Ontology-Based Frameworks for Knowledge-Acquisition Tools Toward -Based Frameworks for Knowledge-Acquisition Tools Angel R. Puerta, Robert Neches *, Henrik Eriksson, Pedro Szekely *, Ping Luo *, Mark A. Musen Medical Computer Science Group Knowledge Systems Laboratory

More information

Getting Started with Protege-Frames

Getting Started with Protege-Frames Author : Eliza Sachs Current Contact : Jennifer Vendetti (vendetti at stanford dot edu) Last Modified : June 6, 2006 Page 1 of 72 Table Of Contents Understanding ontologies... 4 What is an ontology?...

More information

Model Driven Laboratory Information Management Systems Hao Li 1, John H. Gennari 1, James F. Brinkley 1,2,3 Structural Informatics Group 1

Model Driven Laboratory Information Management Systems Hao Li 1, John H. Gennari 1, James F. Brinkley 1,2,3 Structural Informatics Group 1 Model Driven Laboratory Information Management Systems Hao Li 1, John H. Gennari 1, James F. Brinkley 1,2,3 Structural Informatics Group 1 Biomedical and Health Informatics, 2 Computer Science and Engineering,

More information

Fourth generation techniques (4GT)

Fourth generation techniques (4GT) Fourth generation techniques (4GT) The term fourth generation techniques (4GT) encompasses a broad array of software tools that have one thing in common. Each enables the software engineer to specify some

More information

Building Applications with Protégé: An Overview. Protégé Conference July 23, 2006

Building Applications with Protégé: An Overview. Protégé Conference July 23, 2006 Building Applications with Protégé: An Overview Protégé Conference July 23, 2006 Outline Protégé and Databases Protégé Application Designs API Application Designs Web Application Designs Higher Level Access

More information

Introducing Formal Methods. Software Engineering and Formal Methods

Introducing Formal Methods. Software Engineering and Formal Methods Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended

More information

Overview of the TACITUS Project

Overview of the TACITUS Project Overview of the TACITUS Project Jerry R. Hobbs Artificial Intelligence Center SRI International 1 Aims of the Project The specific aim of the TACITUS project is to develop interpretation processes for

More information

Design Patterns for Complex Event Processing

Design Patterns for Complex Event Processing Design Patterns for Complex Event Processing Adrian Paschke BioTec Center, Technical University Dresden, 01307 Dresden, Germany adrian.paschke AT biotec.tu-dresden.de ABSTRACT Currently engineering efficient

More information

Managing Variability in Software Architectures 1 Felix Bachmann*

Managing Variability in Software Architectures 1 Felix Bachmann* Managing Variability in Software Architectures Felix Bachmann* Carnegie Bosch Institute Carnegie Mellon University Pittsburgh, Pa 523, USA fb@sei.cmu.edu Len Bass Software Engineering Institute Carnegie

More information

ONTOLOGY-BASED APPROACH TO DEVELOPMENT OF ADJUSTABLE KNOWLEDGE INTERNET PORTAL FOR SUPPORT OF RESEARCH ACTIVITIY

ONTOLOGY-BASED APPROACH TO DEVELOPMENT OF ADJUSTABLE KNOWLEDGE INTERNET PORTAL FOR SUPPORT OF RESEARCH ACTIVITIY ONTOLOGY-BASED APPROACH TO DEVELOPMENT OF ADJUSTABLE KNOWLEDGE INTERNET PORTAL FOR SUPPORT OF RESEARCH ACTIVITIY Yu. A. Zagorulko, O. I. Borovikova, S. V. Bulgakov, E. A. Sidorova 1 A.P.Ershov s Institute

More information

Creating, Solving, and Graphing Systems of Linear Equations and Linear Inequalities

Creating, Solving, and Graphing Systems of Linear Equations and Linear Inequalities Algebra 1, Quarter 2, Unit 2.1 Creating, Solving, and Graphing Systems of Linear Equations and Linear Inequalities Overview Number of instructional days: 15 (1 day = 45 60 minutes) Content to be learned

More information

Appendix B Data Quality Dimensions

Appendix B Data Quality Dimensions Appendix B Data Quality Dimensions Purpose Dimensions of data quality are fundamental to understanding how to improve data. This appendix summarizes, in chronological order of publication, three foundational

More information

Ontology and automatic code generation on modeling and simulation

Ontology and automatic code generation on modeling and simulation Ontology and automatic code generation on modeling and simulation Youcef Gheraibia Computing Department University Md Messadia Souk Ahras, 41000, Algeria youcef.gheraibia@gmail.com Abdelhabib Bourouis

More information

An Intelligent Sales Assistant for Configurable Products

An Intelligent Sales Assistant for Configurable Products An Intelligent Sales Assistant for Configurable Products Martin Molina Department of Artificial Intelligence, Technical University of Madrid Campus de Montegancedo s/n, 28660 Boadilla del Monte (Madrid),

More information

Evaluation experiment of ontology tools interoperability with the WebODE ontology engineering workbench

Evaluation experiment of ontology tools interoperability with the WebODE ontology engineering workbench Evaluation experiment of ontology tools interoperability with the WebODE ontology engineering workbench Óscar Corcho, Asunción Gómez-Pérez, Danilo José Guerrero-Rodríguez, David Pérez-Rey, Alberto Ruiz-Cristina,

More information

Functional Decomposition Top-Down Development

Functional Decomposition Top-Down Development Functional Decomposition Top-Down Development The top-down approach builds a system by stepwise refinement, starting with a definition of its abstract function. You start the process by expressing a topmost

More information

2QWRORJ\LQWHJUDWLRQLQDPXOWLOLQJXDOHUHWDLOV\VWHP

2QWRORJ\LQWHJUDWLRQLQDPXOWLOLQJXDOHUHWDLOV\VWHP 2QWRORJ\LQWHJUDWLRQLQDPXOWLOLQJXDOHUHWDLOV\VWHP 0DULD7HUHVD3$=,(1=$L$UPDQGR67(//$72L0LFKHOH9,1',*1,L $OH[DQGURV9$/$5$.26LL9DQJHOLV.$5.$/(76,6LL (i) Department of Computer Science, Systems and Management,

More information

Five High Order Thinking Skills

Five High Order Thinking Skills Five High Order Introduction The high technology like computers and calculators has profoundly changed the world of mathematics education. It is not only what aspects of mathematics are essential for learning,

More information

OilEd: a Reason-able Ontology Editor for the Semantic Web

OilEd: a Reason-able Ontology Editor for the Semantic Web OilEd: a Reason-able Ontology Editor for the Semantic Web Sean Bechhofer, Ian Horrocks, Carole Goble and Robert Stevens Department of Computer Science, University of Manchester, UK seanb@cs.man.ac.uk,

More information

Ontology-based Classification of Email

Ontology-based Classification of Email Ontology-based Classification of Email Kazem Taghva, Julie Borsack, Jeffrey Coombs, Allen Condit, Steve Lumos, and Tom Nartker Information Science Research Institute University of Nevada, Las Vegas Abstract

More information

Program Visualization for Programming Education Case of Jeliot 3

Program Visualization for Programming Education Case of Jeliot 3 Program Visualization for Programming Education Case of Jeliot 3 Roman Bednarik, Andrés Moreno, Niko Myller Department of Computer Science University of Joensuu firstname.lastname@cs.joensuu.fi Abstract:

More information

An Intelligent Assistant for Public Transport Management

An Intelligent Assistant for Public Transport Management An Intelligent Assistant for Public Transport Management Martin Molina Department of Artificial Intelligence, Universidad Politécnica de Madrid Campus de Montegancedo s/n 28660, Boadilla del Monte, Madrid,

More information

AI Magazine Volume 21 Number 4 (2000) ( AAAI)

AI Magazine Volume 21 Number 4 (2000) ( AAAI) AI Magazine Volume 21 Number 4 (2000) ( AAAI) Last-Minute Travel Application André Hübner, Mario Lenz, Roman Borch, and Michael Posthoff In this article, we present a last-minute travel application as

More information

Writing learning objectives

Writing learning objectives Writing learning objectives This material was excerpted and adapted from the following web site: http://www.utexas.edu/academic/diia/assessment/iar/students/plan/objectives/ What is a learning objective?

More information

On-Demand Business Process Integration Based on Intelligent Web Services

On-Demand Business Process Integration Based on Intelligent Web Services 132 On-Demand Business Process Integration Based on Intelligent Web Services Xiaohua Lu 1, Yinsheng Li 1, Ying Huang 2 1 Software School, Fudan University, Shanghai, China Phone: +86-21-55664096-808, {0014010,

More information

Software Service Engineering Architect s Dream or Developer s Nightmare?

Software Service Engineering Architect s Dream or Developer s Nightmare? Software Service Engineering Architect s Dream or Developer s Nightmare? Gregor Hohpe Google, 1600 Amphitheatre Parkway, Mountain View, CA 94043 gregor@hohpe.com Abstract. Architectural principles such

More information

Usability metrics for software components

Usability metrics for software components Usability metrics for software components Manuel F. Bertoa and Antonio Vallecillo Dpto. Lenguajes y Ciencias de la Computación. Universidad de Málaga. {bertoa,av}@lcc.uma.es Abstract. The need to select

More information

Teaching Methodology for 3D Animation

Teaching Methodology for 3D Animation Abstract The field of 3d animation has addressed design processes and work practices in the design disciplines for in recent years. There are good reasons for considering the development of systematic

More information

Static Analysis and Validation of Composite Behaviors in Composable Behavior Technology

Static Analysis and Validation of Composite Behaviors in Composable Behavior Technology Static Analysis and Validation of Composite Behaviors in Composable Behavior Technology Jackie Zheqing Zhang Bill Hopkinson, Ph.D. 12479 Research Parkway Orlando, FL 32826-3248 407-207-0976 jackie.z.zhang@saic.com,

More information

OKBC: A Programmatic Foundation for Knowledge Base Interoperability 1 2

OKBC: A Programmatic Foundation for Knowledge Base Interoperability 1 2 Appears in the Proceedings of AAAI-98, July 26-30, Madison, WI. 1 OKBC: A Programmatic Foundation for Knowledge Base Interoperability 1 2 Vinay K. Chaudhri SRI International 333 Ravenswood Avenue Menlo

More information

Patterns in. Lecture 2 GoF Design Patterns Creational. Sharif University of Technology. Department of Computer Engineering

Patterns in. Lecture 2 GoF Design Patterns Creational. Sharif University of Technology. Department of Computer Engineering Patterns in Software Engineering Lecturer: Raman Ramsin Lecture 2 GoF Design Patterns Creational 1 GoF Design Patterns Principles Emphasis on flexibility and reuse through decoupling of classes. The underlying

More information

An Intuitive Graphical Query Interface for Protégé Knowledge Bases

An Intuitive Graphical Query Interface for Protégé Knowledge Bases An Intuitive Graphical Query Interface for Protégé Knowledge Bases Landon Todd Detwiler, Cornelius Rosse, Linda Shapiro Structural Informatics Group University of Washington Emily Query interface for Protégé

More information

Name of pattern types 1 Process control patterns 2 Logic architectural patterns 3 Organizational patterns 4 Analytic patterns 5 Design patterns 6

Name of pattern types 1 Process control patterns 2 Logic architectural patterns 3 Organizational patterns 4 Analytic patterns 5 Design patterns 6 The Researches on Unified Pattern of Information System Deng Zhonghua,Guo Liang,Xia Yanping School of Information Management, Wuhan University Wuhan, Hubei, China 430072 Abstract: This paper discusses

More information

Johannes Sametinger. C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria

Johannes Sametinger. C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria OBJECT-ORIENTED DOCUMENTATION C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria Abstract Object-oriented programming improves the reusability of software

More information

Umbrello UML Modeller Handbook

Umbrello UML Modeller Handbook 2 Contents 1 Introduction 7 2 UML Basics 8 2.1 About UML......................................... 8 2.2 UML Elements........................................ 9 2.2.1 Use Case Diagram.................................

More information

Case studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design

Case studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design I. Automated Banking System Case studies: Outline Requirements Engineering: OO and incremental software development 1. case study: withdraw money a. use cases b. identifying class/object (class diagram)

More information

Current Standard: Mathematical Concepts and Applications Shape, Space, and Measurement- Primary

Current Standard: Mathematical Concepts and Applications Shape, Space, and Measurement- Primary Shape, Space, and Measurement- Primary A student shall apply concepts of shape, space, and measurement to solve problems involving two- and three-dimensional shapes by demonstrating an understanding of:

More information

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements

More information

Problem of the Month: Fair Games

Problem of the Month: Fair Games Problem of the Month: The Problems of the Month (POM) are used in a variety of ways to promote problem solving and to foster the first standard of mathematical practice from the Common Core State Standards:

More information

SuccessFactors Learning: Scheduling Management

SuccessFactors Learning: Scheduling Management SuccessFactors Learning: Scheduling Management Classroom Guide v 6.4 For SuccessFactors Learning v 6.4 Last Modified 08/30/2011 2011 SuccessFactors, Inc. All rights reserved. Execution is the Difference

More information

Improving Knowledge-Based System Performance by Reordering Rule Sequences

Improving Knowledge-Based System Performance by Reordering Rule Sequences Improving Knowledge-Based System Performance by Reordering Rule Sequences Neli P. Zlatareva Department of Computer Science Central Connecticut State University 1615 Stanley Street New Britain, CT 06050

More information

Jambalaya: Interactive visualization to enhance ontology authoring and knowledge acquisition in Protégé

Jambalaya: Interactive visualization to enhance ontology authoring and knowledge acquisition in Protégé Jambalaya: Interactive visualization to enhance ontology authoring and knowledge acquisition in Protégé Margaret-Anne Storey 1,4 Mark Musen 2 John Silva 3 Casey Best 1 Neil Ernst 1 Ray Fergerson 2 Natasha

More information

FUNDAMENTALS OF ARTIFICIAL INTELLIGENCE KNOWLEDGE REPRESENTATION AND NETWORKED SCHEMES

FUNDAMENTALS OF ARTIFICIAL INTELLIGENCE KNOWLEDGE REPRESENTATION AND NETWORKED SCHEMES Riga Technical University Faculty of Computer Science and Information Technology Department of Systems Theory and Design FUNDAMENTALS OF ARTIFICIAL INTELLIGENCE Lecture 7 KNOWLEDGE REPRESENTATION AND NETWORKED

More information

3D Interactive Information Visualization: Guidelines from experience and analysis of applications

3D Interactive Information Visualization: Guidelines from experience and analysis of applications 3D Interactive Information Visualization: Guidelines from experience and analysis of applications Richard Brath Visible Decisions Inc., 200 Front St. W. #2203, Toronto, Canada, rbrath@vdi.com 1. EXPERT

More information

A Tool for Searching the Semantic Web for Supplies Matching Demands

A Tool for Searching the Semantic Web for Supplies Matching Demands A Tool for Searching the Semantic Web for Supplies Matching Demands Zuzana Halanová, Pavol Návrat, Viera Rozinajová Abstract: We propose a model of searching semantic web that allows incorporating data

More information

Facebook Friend Suggestion Eytan Daniyalzade and Tim Lipus

Facebook Friend Suggestion Eytan Daniyalzade and Tim Lipus Facebook Friend Suggestion Eytan Daniyalzade and Tim Lipus 1. Introduction Facebook is a social networking website with an open platform that enables developers to extract and utilize user information

More information

The Effect of Flexible Learning Schedule on Online Learners Learning, Application, and Instructional Perception

The Effect of Flexible Learning Schedule on Online Learners Learning, Application, and Instructional Perception 1060 The Effect of Flexible Learning Schedule on Online Learners Learning, Application, and Instructional Perception Doo H. Lim University of Tennessee Learning style has been an important area of study

More information

CONDIS. IT Service Management and CMDB

CONDIS. IT Service Management and CMDB CONDIS IT Service and CMDB 2/17 Table of contents 1. Executive Summary... 3 2. ITIL Overview... 4 2.1 How CONDIS supports ITIL processes... 5 2.1.1 Incident... 5 2.1.2 Problem... 5 2.1.3 Configuration...

More information

In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data.

In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data. MATHEMATICS: THE LEVEL DESCRIPTIONS In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data. Attainment target

More information

A Framework of Context-Sensitive Visualization for User-Centered Interactive Systems

A Framework of Context-Sensitive Visualization for User-Centered Interactive Systems Proceedings of 10 th International Conference on User Modeling, pp423-427 Edinburgh, UK, July 24-29, 2005. Springer-Verlag Berlin Heidelberg 2005 A Framework of Context-Sensitive Visualization for User-Centered

More information

3. Mathematical Induction

3. Mathematical Induction 3. MATHEMATICAL INDUCTION 83 3. Mathematical Induction 3.1. First Principle of Mathematical Induction. Let P (n) be a predicate with domain of discourse (over) the natural numbers N = {0, 1,,...}. If (1)

More information

Semantic Object Language Whitepaper Jason Wells Semantic Research Inc.

Semantic Object Language Whitepaper Jason Wells Semantic Research Inc. Semantic Object Language Whitepaper Jason Wells Semantic Research Inc. Abstract While UML is the accepted visual language for object-oriented system modeling, it lacks a common semantic foundation with

More information

Paraphrasing controlled English texts

Paraphrasing controlled English texts Paraphrasing controlled English texts Kaarel Kaljurand Institute of Computational Linguistics, University of Zurich kaljurand@gmail.com Abstract. We discuss paraphrasing controlled English texts, by defining

More information

Foglight. Dashboard Support Guide

Foglight. Dashboard Support Guide Foglight Dashboard Support Guide 2013 Quest Software, Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide is furnished under

More information

Handout #1: Mathematical Reasoning

Handout #1: Mathematical Reasoning Math 101 Rumbos Spring 2010 1 Handout #1: Mathematical Reasoning 1 Propositional Logic A proposition is a mathematical statement that it is either true or false; that is, a statement whose certainty or

More information

DEALMAKER: An Agent for Selecting Sources of Supply To Fill Orders

DEALMAKER: An Agent for Selecting Sources of Supply To Fill Orders DEALMAKER: An Agent for Selecting Sources of Supply To Fill Orders Pedro Szekely, Bob Neches, David Benjamin, Jinbo Chen and Craig Milo Rogers USC/Information Sciences Institute Marina del Rey, CA 90292

More information

CHAPTER 3. Methods of Proofs. 1. Logical Arguments and Formal Proofs

CHAPTER 3. Methods of Proofs. 1. Logical Arguments and Formal Proofs CHAPTER 3 Methods of Proofs 1. Logical Arguments and Formal Proofs 1.1. Basic Terminology. An axiom is a statement that is given to be true. A rule of inference is a logical rule that is used to deduce

More information

Ontology-based Product Tracking System

Ontology-based Product Tracking System Ontology-based Product Tracking System Vikram N. Ketkar, Larry Whitman & Don Malzahn Department of Industrial and Manufacturing Engineering Wichita State University Wichita, KS 67260 Abstract Product tracking

More information

WRITING A CRITICAL ARTICLE REVIEW

WRITING A CRITICAL ARTICLE REVIEW WRITING A CRITICAL ARTICLE REVIEW A critical article review briefly describes the content of an article and, more importantly, provides an in-depth analysis and evaluation of its ideas and purpose. The

More information

Semantic Search in Portals using Ontologies

Semantic Search in Portals using Ontologies Semantic Search in Portals using Ontologies Wallace Anacleto Pinheiro Ana Maria de C. Moura Military Institute of Engineering - IME/RJ Department of Computer Engineering - Rio de Janeiro - Brazil [awallace,anamoura]@de9.ime.eb.br

More information

What is a metamodel: the OMG s metamodeling infrastructure

What is a metamodel: the OMG s metamodeling infrastructure Modeling and metamodeling in Model Driven Development Warsaw, May 14-15th 2009 Gonzalo Génova ggenova@inf.uc3m.es http://www.kr.inf.uc3m.es/ggenova/ Knowledge Reuse Group Universidad Carlos III de Madrid

More information

Ten steps to better requirements management.

Ten steps to better requirements management. White paper June 2009 Ten steps to better requirements management. Dominic Tavassoli, IBM Actionable enterprise architecture management Page 2 Contents 2 Introduction 2 Defining a good requirement 3 Ten

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence ICS461 Fall 2010 1 Lecture #12B More Representations Outline Logics Rules Frames Nancy E. Reed nreed@hawaii.edu 2 Representation Agents deal with knowledge (data) Facts (believe

More information

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT SYSTEMS ANALYSIS & DESIGN EXAMINERS REPORT

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT SYSTEMS ANALYSIS & DESIGN EXAMINERS REPORT BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT SYSTEMS ANALYSIS & DESIGN EXAMINERS REPORT Monday 28 th September 2015 Case Study for both sections A and

More information

Business Rule Standards -- Interoperability and Portability

Business Rule Standards -- Interoperability and Portability Rule Standards -- Interoperability and Portability April 2005 Mark H. Linehan Senior Technical Staff Member IBM Software Group Emerging Technology mlinehan@us.ibm.com Donald F. Ferguson IBM Fellow Software

More information

Knowledge Management Systems: Essential Requirements and Generic Design Patterns

Knowledge Management Systems: Essential Requirements and Generic Design Patterns Published in: Smari, W.W.; Melab, N.; Yetongnon, K. (Eds.): Proceedings of the International Symposium on Information Systems and Engineering, ISE'2001, Las Vegas: CSREA Press 2001, pp. 114-121 Knowledge

More information

Overview. Essential Questions. Precalculus, Quarter 4, Unit 4.5 Build Arithmetic and Geometric Sequences and Series

Overview. Essential Questions. Precalculus, Quarter 4, Unit 4.5 Build Arithmetic and Geometric Sequences and Series Sequences and Series Overview Number of instruction days: 4 6 (1 day = 53 minutes) Content to Be Learned Write arithmetic and geometric sequences both recursively and with an explicit formula, use them

More information

Building Decision Support through Dynamic Workflow Systems for Health Care Ontology Focus. Tanay Sharma B00098872 tsharma@dal.ca

Building Decision Support through Dynamic Workflow Systems for Health Care Ontology Focus. Tanay Sharma B00098872 tsharma@dal.ca Building Decision Support through Dynamic Workflow Systems for Health Care Ontology Focus By Tanay Sharma B00098872 tsharma@dal.ca Performed at Atlantic Innovation Fund St. Francis Xavier University Antigonish,

More information

Lesson 4 Web Service Interface Definition (Part I)

Lesson 4 Web Service Interface Definition (Part I) Lesson 4 Web Service Interface Definition (Part I) Service Oriented Architectures Module 1 - Basic technologies Unit 3 WSDL Ernesto Damiani Università di Milano Interface Definition Languages (1) IDLs

More information

Rose/Architect: a tool to visualize architecture

Rose/Architect: a tool to visualize architecture Published in the Proceedings of the 32 nd Annual Hawaii International Conference on Systems Sciences (HICSS 99) Rose/Architect: a tool to visualize architecture Alexander Egyed University of Southern California

More information

SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS

SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework

More information

Measurement with Ratios

Measurement with Ratios Grade 6 Mathematics, Quarter 2, Unit 2.1 Measurement with Ratios Overview Number of instructional days: 15 (1 day = 45 minutes) Content to be learned Use ratio reasoning to solve real-world and mathematical

More information

Extend Table Lens for High-Dimensional Data Visualization and Classification Mining

Extend Table Lens for High-Dimensional Data Visualization and Classification Mining Extend Table Lens for High-Dimensional Data Visualization and Classification Mining CPSC 533c, Information Visualization Course Project, Term 2 2003 Fengdong Du fdu@cs.ubc.ca University of British Columbia

More information

Open Ontology Repository Initiative

Open Ontology Repository Initiative Open Ontology Repository Initiative Frank Olken Lawrence Berkeley National Laboratory National Science Foundation folken@nsf.gov presented to CENDI/NKOS Workshop World Bank Sept. 11, 2008 Version 6.0 DISCLAIMER

More information

Click on the links below to jump directly to the relevant section

Click on the links below to jump directly to the relevant section Click on the links below to jump directly to the relevant section What is algebra? Operations with algebraic terms Mathematical properties of real numbers Order of operations What is Algebra? Algebra is

More information

Logical Design of Audit Information in Relational Databases

Logical Design of Audit Information in Relational Databases Essay 25 Logical Design of Audit Information in Relational Databases Sushil Jajodia, Shashi K. Gadia, and Gautam Bhargava In the Trusted Computer System Evaluation Criteria [DOD85], the accountability

More information

An Introduction to. Metrics. used during. Software Development

An Introduction to. Metrics. used during. Software Development An Introduction to Metrics used during Software Development Life Cycle www.softwaretestinggenius.com Page 1 of 10 Define the Metric Objectives You can t control what you can t measure. This is a quote

More information

SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture

SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q Number: S90-03A Passing Score: 800 Time Limit: 120 min File Version: 14.5 http://www.gratisexam.com/ Exam Code: S90-03A Exam Name:

More information

IF The customer should receive priority service THEN Call within 4 hours PCAI 16.4

IF The customer should receive priority service THEN Call within 4 hours PCAI 16.4 Back to Basics Backward Chaining: Expert System Fundamentals By Dustin Huntington Introduction Backward chaining is an incredibly powerful yet widely misunderstood concept, yet it is key to building many

More information

Structural Design Patterns Used in Data Structures Implementation

Structural Design Patterns Used in Data Structures Implementation Structural Design Patterns Used in Data Structures Implementation Niculescu Virginia Department of Computer Science Babeş-Bolyai University, Cluj-Napoca email address: vniculescu@cs.ubbcluj.ro November,

More information

Software Engineering. Introduction. Software Costs. Software is Expensive [Boehm] ... Columbus set sail for India. He ended up in the Bahamas...

Software Engineering. Introduction. Software Costs. Software is Expensive [Boehm] ... Columbus set sail for India. He ended up in the Bahamas... Software Engineering Introduction... Columbus set sail for India. He ended up in the Bahamas... The economies of ALL developed nations are dependent on software More and more systems are software controlled

More information

Applying Object-Oriented Principles to the Analysis and Design of Learning Objects

Applying Object-Oriented Principles to the Analysis and Design of Learning Objects Applying Object-Oriented Principles to the Analysis and Design of Learning Objects Chrysostomos Chrysostomou and George Papadopoulos Department of Computer Science, University of Cyprus, Nicosia, Cyprus

More information

Introduction to Service Oriented Architectures (SOA)

Introduction to Service Oriented Architectures (SOA) Introduction to Service Oriented Architectures (SOA) Responsible Institutions: ETHZ (Concept) ETHZ (Overall) ETHZ (Revision) http://www.eu-orchestra.org - Version from: 26.10.2007 1 Content 1. Introduction

More information

No More Keyword Search or FAQ: Innovative Ontology and Agent Based Dynamic User Interface

No More Keyword Search or FAQ: Innovative Ontology and Agent Based Dynamic User Interface IAENG International Journal of Computer Science, 33:1, IJCS_33_1_22 No More Keyword Search or FAQ: Innovative Ontology and Agent Based Dynamic User Interface Nelson K. Y. Leung and Sim Kim Lau Abstract

More information

Survey Research. Classifying surveys on the basis of their scope and their focus gives four categories:

Survey Research. Classifying surveys on the basis of their scope and their focus gives four categories: Survey Research Types of Surveys Surveys are classified according to their focus and scope (census and sample surveys) or according to the time frame for data collection (longitudinal and cross-sectional

More information

TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.

TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs. CH04 Capturing the Requirements Understanding what the customers and users expect the system to do * The Requirements Process * Types of Requirements * Characteristics of Requirements * How to Express

More information

Ektron to EPiServer Digital Experience Cloud: Information Architecture

Ektron to EPiServer Digital Experience Cloud: Information Architecture Ektron to EPiServer Digital Experience Cloud: Information Architecture This document is intended for review and use by Sr. Developers, CMS Architects, and other senior development staff to aide in the

More information

User Studies of an Interdependency-Based Interface for Acquiring Problem-Solving Knowledge

User Studies of an Interdependency-Based Interface for Acquiring Problem-Solving Knowledge User Studies of an Interdependency-Based Interface for Acquiring Problem-Solving Knowledge Jihie Kim and Yolanda Gil USC/Information Sciences Institute 4676 Admiralty Way Marina del Rey, CA 99 {jihie,gil}@isi.edu

More information

AC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION

AC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION AC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION Michael Black, American University Manoj Franklin, University of Maryland-College Park American Society for Engineering

More information