
Copyright © 2005DERI®, All Rights Reserved. DERI liability, trademark, document use, and software licensing rules apply.
The goal of this document is to identify requirements for an editing and browsing tool for ontologies. This document integrates points of view of researchers, developers and use case partners.
The rest of this document is structured as follows: In section 2 the requirements are listed before their realization is planned in section 3. Finally this document is concluded in section 4.
Apart from the actual requirements, this section also details the use cases and shows a simple component diagram putting the editor in the big picture.
The deliverable will be implemented in the following phases (M1 is January 2004):
Target phase 1 means that most functionality for the requirement should be present (at least in crude form) in phase 1, and can be refined in phase 2. The result of phase 1 will be a prototype which can be used to demonstrate progress of this deliverable and to do simple editing and browsing tasks in the use case work packages. Target phase 2 means no functionality for the requirement needs to be present in the prototype, i.e. before phase 2 starts. Finally, target phase 3 means what we currently see as future work; we may want to fulfill it after phase 2.
Figure 1 is a use case diagram for ontology editing and browsing.
Figure 1: Use cases in ontology editing and browsing
The following list maps the use cases to their resulting requirements:
| UC1 | -> | R14, R15 |
| UC2 | -> | R4, R7a |
| UC3 | -> | R4, R7b |
| UC4 | -> | R4, R5, R7x |
| UC5 | -> | R6 |
| UC6 | -> | R4, R5, R6, R7, R7x, R11a |
| UC7 | -> | R9, R11a, R11b |
| UC8 | -> | R11c |
| UC9 | -> | R8, R10 |
| UC10 | -> | R13 |
| UC11 | -> | R13 |
| UC12 | -> | R13 |
| UC13 | -> | R3 |
| UC14 | -> | R13a |
| UC15 | -> | R13b |
| UC16 | -> | R13c |
| UC17 | -> | R2 |
| UC18 | -> | R12 |
| UC19 | -> | R12 |
| UC20 | -> | R16 |
| UC21 | -> | R17 |
| UC22 | -> | R18 |
| UC23 | -> | R19 |
| UC24 | -> | R20 |
| UC25 | -> | R21, R22, R23 |
Further use cases, currently deemed out of scope:
Deliverable 4: OMS Architecture shows the various components of the ontology management system and how they interact with each other.
Note: in the following list, the Rx numbers are stable identifiers of the respective requirements that will not change with subsequent revisions of the document, for example as requirements are added, removed and reorganized, and therefore we suggest using the Rx identifiers when referring to a requirement in a question or a comment. When creating a new requirement, the author should use the identifier R22 and update this sentence.
Description: Support the ontology language WSML as specified in WSMO D16 [WSML].
Description: The tool should be able to deal with ontology schemas that contain thousands of concepts and relationships and with knowledge bases larger by orders of magnitude.
Description: Apart from the main language WSML defined in WSMO D16, the editing and browsing tool may support other ontology systems and languages, for example the W3C standard OWL [OWL]. Such support can be done by export/import converters, possibly included in ORDI.
Description: Adding, removing, changing components of an ontology schema in a visualization in a GUI environment. For description of the components, see R7.
Description: Adding, removing, changing components of a knowledge base in a GUI environment. For description of the components, see R7.
Description: Editing of the source representation (XML or other syntax) of ontology schemas and knowledge bases by expert users should also be possible in the tool.
Description: The sub-requirements detail what the (editable/browseable) components of ontology schemas and knowledge bases are. They are currently modeled from WSML-core.
Description: concepts, concept hierarchies (subConceptOf), concept attributes and their types
Description: relations (incl. transitive, symmetric and inverse) and their domains and ranges
Description: Representing non-functional properties, including Dublin Core annotations.
Description: Instances, their types, attribute values and instance stores.
Description: Representing logical axioms in an ontology schema or knowledge base.
Description: Ontologies often need to reuse other ontologies to build concepts and preferably do so by "importing" external ontologies by reference. Such imports must be represented as properties of ontologies.
Description: Ontologies often need to reuse other ontologies to build concepts and sometimes the reused ontology needs to be transformed to suit the target needs by mediators. Such mediated imports must be represented as properties of ontologies.
Description: Representing knowledge not explicitly represented in an ontology schema or knowledge base but logically inferred from the available data and axioms. Such knowledge should be distinguished from explicit knowledge in the conceptual model.
Relationship to other components: R7a-e are affected by this
Description: A user will have some number of available ontology schemas (on the file system, in a repository, on the Web etc.) and a list of these should be available in the browsing tool. Categorization of the ontology schemas can include criteria like source, imported ontologies, document relations etc., possibly resulting in a graph of ontology schemas. A user may select an ontology schema and "open" it for editing.
Remark: Phase 1 will only produce a simplistic browser with basic categorization.
Description: The tool must support viewing an ontology schema based on the conceptual model, i.e. browsing by the conceptual components displayed in an expandable tree form complemented by various graph forms, e.g. UML-like diagrams or hyperbolic trees, and also displaying details of the selected elements.
Remark: browsing could be web interface, while editing should be a desktop app; good design will separate the functionality from the interface; editor will need a browser, but a separate just-browser can be provided later
Description: A user will have some number of available knowledge bases (on the file system, in a repository, on the Web etc.) and a list of these should be available in the browsing tool. Categorization of the knowledge bases can include criteria like source, used ontologies, document relations etc., possibly resulting in a graph of knowledge bases.
Description: The tool must support viewing a knowledge base based on the conceptual model, i.e. browsing by the conceptual components. See sub-requirements.
Description: The tool will display the contents of the knowledge base. Possible views are RDF graph and conceptual component graph.
Description: This includes listing all components by component type, by relation to a selected component etc. For example in terms of OWL: listing all classes, their attributes/restrictions, listing all properties, their restrictions, etc.
Description: Executing a user-specified logical query (in a language dependent on the ontology language) and displaying its results.
Description: A non-expert user may need assistance with formulating logical queries, therefore the environment should provide such assistance. Also, such queries could be stored in a repository or a reasoner component for future reuse and reevaluation.
Description: The tool must support getting the available ontology schemas and/or knowledge bases from a variety of sources and storing edited ontologies and/or knowledge bases in those sources. See sub-requirements.
Description: Access to the local file system to get and store the ontology schemas and knowledge bases serialized in WSML/XML.
Description: Versioned access to an underlying storage of ontology schemas and knowledge bases, as specified and implemented in D6.
Remark: As deliverable D6 is evolving together with D8, integration work may be necessary in all phases.
Description: Access to the D9 repository for ontology schemas and knowledge bases.
Remark: As deliverable D9 is evolving together with D8, integration work may be necessary in all phases.
Description: Ontology schemas produced using the editing tool must be checked and the user warned about any inconsistencies. The tool should be able to work with inconsistent ontology schemas, though, as any version changes in reused ontology schemas may invalidate an edited ontology schema. The tool may help the user with any changes necessary to update the ontology schema to the latest version of the reused ontology, for instance by pointing out the individual statements that cause inconsistency.
Relationship to other components: Interplay with D6, R15
Description: knowledge bases produced using the editing tool must be checked against their respective ontologies and the user warned about any inconsistencies. The tool should be able to work with inconsistent knowledge bases, though, as any version changes in the ontology of a knowledge base may invalidate the knowledge base. The tool may help the user with any changes necessary to update the knowledge base to the latest version of the ontology, for instance by pointing out the individual statements that cause inconsistency.
Relationship to other components: Interplay with D6, R14
Description: The tool should support the creation of a single ontology from two or more existing ontologies with overlapping parts, for example by assisting in identifying the overlapping parts.
Relationship to other components: Interplay with WP 1
Description: The tool should support relating similar concepts or relations from different ontologies to each other by various types of relations (equivalence, implication etc.), for example by viewing the ontologies side-by-side and assisting in the creation of the relations.
Relationship to other components: Interplay with WP 1
Description: The tool should support bringing two or more ontologies into mutual agreement, making them consistent and coherent, for example by viewing/editing multiple ontologies and highlighting similarities or inconsistencies.
Relationship to other components: Interplay with WP 1
Description: The tool should support factoring an ontology into independent related sub-ontologies, with additional support like automatically indicating independent parts.
Description: Similarly to databases, the ontology management system will have a data definition language and an interpreter for such language - that component is currently external to deliverable D8. The editor should support importing and executing documents in that language, though.
Description: For distributed (asynchronous) collaboration over an ontology, it is necessary that various users can add comments on various elements of the ontology. It is similar to the MS Word in-place commenting feature. This is necessary because the comments are local to what they pertain to as opposed to just sending an email with the comments inline and the ontology being commented on as attachment.
Description: For distributed (synchronous) collaboration over an ontology, it is necessary that various items can be locked so that transaction style can be guaranteed for modifications.
Description: For distributed (synchronous) collaboration over an ontology, it is necessary that each logged in user is visually notified of changes that have been performed by other users.
This section provides a rough planning for the implementation of the editing and browsing tool. It specifies which requirements will be addressed, by when they will be implemented (in what state) and when stable versions can be expected.
The current plan for implementing the various requirements:
| December / M12 | June / M18 | December / M24 | June / M30 | |
|---|---|---|---|---|
| Support for WSML-Core (R1) | X | |||
| Support for large-scale ontologies (R2) | X | |||
| Support for OWL, other languages (R3) | X | |||
| Ontology schema editing (R4, R6, R7abcfg) | X | |||
| Non-functional properties (R7c) | X | |||
| Editing axioms/rules (R7e) | X | |||
| Ontology schema validation (R14) | X | |||
| Knowledge base editing (R5, R6, R7d) | X | |||
| Knowledge base validation (R15) | X | |||
| Ontology schema browsing (R8, R9) | X | |||
| Knowledge base browsing (R10, R11ab) | X | |||
| Querying (R11c) | X | |||
| Query modeling and storage (R12) | X | |||
| Viewing inferred knowledge (R7h) | X | |||
| Filesystem WSML/XML storage (R13a) | X | |||
| Integration with Repository (R13c) | X | |||
| Integration with Versioning (R13b) | X | |||
| Merging, Mapping, Alignment (R16, R17, R18) | X | |||
| Factoring (R19) | X | |||
| Support for DDL interpretation (R20) | X | |||
| Collaborative development (R21, R22, R23) | X |
In this document the requirements for editing and browsing tool for ontologies were outlined and analyzed.
The work is funded by the European Commission under the projects DIP, Knowledge Web, Ontoweb, SEKT, SWWS, Esperonto and h-TechSight; by Science Foundation Ireland under the DERI-Lion project; and by the Vienna city government under the CoOperate programme.
The authors would like to thank to all the members of the OMWG working group for their advices and inputs to this document.
[OWL] McGuinness, D. et al. (2004). OWL Web Ontology Language. W3C Recommendation, http://www.w3.org/TR/owl-features/
[WSML] de Bruijn, Jos et al.(2005). D16.1v0.2 The Web Service Modeling Language WSML, http://www.wsmo.org/TR/d16/d16.1/
$Date: 2005/08/30 12:40:23 $