
Copyright © 2004 DERI®, 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. Apart from the actual requirements, the following 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. And finally a question mark means the requirement may not be in scope for the tool and if that turns out to be the case, the requirement may not be fulfilled.
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 |
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.
Target phase: 1
Description: The tool should be able to deal with ontologies that contain thousands of concepts and relationships and with instance collections larger by orders of magnitude.
Target phase: 2
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.
Target phase: 1?
Description: Adding, removing, changing conceptual components of an ontology in a visualization in a GUI environment. For description of the conceptual components, see R7.
Target phase: 1
Description: Adding, removing, changing conceptual components of an instance collection in a GUI environment. For description of the conceptual components, see R7.
Target phase: 2
Description: Editing of the source representation (XML or other syntax) of ontologies and instance collections by expert users should also be possible in the tool. Initially, this will be the only way to edit instance collections.
Target phase: 1
Description: The sub-requirements detail what the (editable/browseable) components of ontologies and instance collections are. They are currently modeled from WSML-core.
Description: concepts, concept hierarchies (subConceptOf), concept attributes and their types
Target phase: 1
Description: relations (incl. transitive, symmetric and inverse) and their domains and ranges
Target phase: 1
Description: Representing non-functional properties, including Dublin Core annotations.
Target phase: 1
Description: Instances, their types, attribute values and instance stores.
Target phase: 2
Description: Representing logical axioms in an ontology or instance collection.
Target phase: 2
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.
Target phase: 1
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.
Target phase: 1
Description: Representing knowledge not explicitly represented in an ontology or instance collection 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
Target phase: 2?
Description: A user will have some number of available ontologies (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 ontologies can include criteria like source, imported ontologies, document relations etc., possibly resulting in a graph of ontologies. A user may select an ontology and "open" it for editing.
Target phase: 1, 2
Remark: Phase 1 will only produce a simplistic browser with basic categorization.
Description: The tool must support viewing an ontology 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.
Target phase: 1
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 instance collections (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 instance collections can include criteria like source, used ontologies, document relations etc., possibly resulting in a graph of instance collections.
Target phase: 2
Description: The tool must support viewing an instance collection based on the conceptual model, i.e. browsing by the conceptual components. See sub-requirements.
Description: The tool will display the contents of the instance collection. Possible views are RDF graph and conceptual component graph.
Target phase: 2
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.
Target phase: 2
Description: Executing a user-specified logical query (in a language dependent on the ontology language) and displaying its results.
Target phase: 2
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.
Target phase: 2
Description: The tool must support getting the available ontologies and/or instance collections from a variety of sources and storing edited ontologies and/or instance collections in those sources. See sub-requirements.
Description: Access to the local file system to get and store the ontologies and instance collections serialized in WSML/XML.
Target phase: 1?
Description: Versioned access to an underlying storage of ontologies and instance collections, as specified and implemented in D6.
Target phase: 1, 2
Remark: As deliverable D6 is evolving together with D8, integration work may be necessary in all phases.
Description: Access to the D9 repository for ontologies and instance collections.
Target phase: 1, 2
Remark: As deliverable D9 is evolving together with D8, integration work may be necessary in all phases.
Description: Ontologies produced using the editing tool must be checked and the user warned about any inconsistencies. The tool should be able to work with inconsistent ontologies, though, as any version changes in reused ontologies may invalidate an edited ontology. The tool may help the user with any changes necessary to update the ontology 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
Target phase: 2?
Description: Instance collections 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 instance collections, though, as any version changes in the ontology of an instance collection may invalidate the instance collection. The tool may help the user with any changes necessary to update the instance collection 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
Target phase: 2?
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
Target phase: 2
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
Target phase: 2
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
Target phase: 2
Description: The tool should support factoring an ontology into independent related sub-ontologies, with additional support like automatically indicating independent parts.
Target phase: 2?
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.
Target phase: 2?
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.
Target phase: 1
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 | Next 18 months | |
|---|---|---|---|
| Support for WSML-Core (R1) | X | ||
| Support for large-scale ontologies (R2) | X | ||
| Support for OWL, other languages (R3) | X? | X? | |
| Ontology editing (R4, R6, R7abcfg) | X | ||
| Editing axioms/rules (R7e) | X | ||
| Ontology validation (R14) | X? | ||
| Instance collection editing (R5, R6, R7d) | X | ||
| Instance collection validation (R15) | X? | ||
| Ontology browsing (R8, R9) | X | X | |
| Instance collection 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 | X | |
| Integration with Versioning (R13b) | X | X | |
| Merging, Mapping, Alignment (R16, R17, R18) | X | ||
| Factoring (R19) | X? | ||
| Support for DDL interpretation (R20) | X? | ||
| Asynchronous collaboration with comments (R21) | X |
todo
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/
$Date: 2004/10/04 17:06:40 $