Working Draft 10 July 2012
This version:
http://democritique.org/softs/WebProtege/mindmapping/docs/roadmap.xhtml
Editor:
Henry Boccon-Gibod - h.c.boccongibod@gmail.com
See also :
A mind mapping user interface for WebProtege
specification of the displaying algorithm of the current version
list and roles of implied code resources in version 0
The first version of the graphic visualisation portlet is an alpha test prototype that works on the version 1 of webprotege, and do not allow ontology modification.
The next iteration is intended to work on the version 2 of webprotege, will allow edition of OWL2 ontologies.
This page describe the roadmap for the development we foresee for that future iteration.
The next iteration of the portlet will introduce an ontology layer in order to make it more easy to develop and maintain, and adaptable on other development contexts.
In order to be as far as possible easily adaptable to any evolution of an underneath API, the following pseudo-code is based on the associated development of a set of specific java classes each corresponding to an OWL metaClass as defined in the W3C standard, as follow, with their main suggested methods :
class OWLClass subclass of EntityData, with mehods :
getClassSuperClasses
getClassSubClasses
getClassDisjointClasses
getClassEquivalentClasses
getClassIndividuals
getClassObjectProperties
getClassObjectPropertyRestrictions
getClassDatatypePropertyRestrictions
setClassSuperClass
setClassEquivalentClass
setClassDisjointClass
setClassFunctionalObjectProperty
setClassTransitivelObjectProperty
setClassSymmetricObjectProperty
setClassDatatypeProperty
setClassFunctionalDatatypeProperty
createClassSubClass
createClassIndividuals
createClassFunctionalObjectProperty
createClassTransitivelObjectProperty
createClassSymmetricObjectProperty
createClassDatatypeProperty
createClassFunctionalDatatypeProperty
createClassPropertyRestriction
class OWLIndividual subclass of EntityData, with mehods :
getIndividualDatatypeProperties
getIndividualObjectProperties
createIndividualDatatypeProperty
createIndividualDatatypeValue
createIndividualObjectProperty
setIndividualObjectPropertyTarget(OWLObjectProperty,OWLIndividual)
class OWLObjectProperty subclass of PropertyData, with mehods :
getObjectPropertyKind
getObjectPropertyDomainClasses
getObjectPropertyRangeClasses
setObjectPropertyKind
setObjectPropertyDomainClasses
setObjectPropertyRangeClasses
class OWLFunctionalObjectProperty (subclass of OWLObjectProperty)
class OWLTransitiveObjectProperty (subclass of OWLObjectProperty)
class OWLSymmetricObjectProperty (subclass of OWLObjectProperty)
class OWLDatatypeProperty subclass of PropertyData, with mehods :
getDatatypePropertyDomainClasses
getDatatypePropertyRangeXsdType
setDatatypePropertyDomainClasses
setDatatypePropertyRangeXsdType
class OWLFunctionalDatatypeProperty (subclass of owlDatatypeProperty)
class OWLAnnotationProperty, with mehods :
getAnnotationPropertyDomainClasses
getAnnotationPropertyRangeClasses
getAnnotationPropertyRangeXsdType
The current version do not synchronize properly the navigation between the graph visualisation portlet and any others.
clicking in the graph visualisation portlet or in the Class Tree portlet must set it automatically as the controlling one, and synchronize the display of others.
That feature is based on the setup of a "current language"
The first accessed rdfs:label int the current language is displayed, as it is supposed to be unique
The editing process depends on the verified rights of the user.
They may be of three levels :
read only, abox edition, tbox edition (during tbox edition, abox edition is inhibited)
The edition (create, modify delete ontology elements) of the ontology is allowed from the graph visualisation portlet with the following features :
- one may click on the right mouse button when the mouse is
on the current item name or
on one of its properties.
on one of its property values.
- to click on the right mouse button displays a context menu linked by a dynamic leg to the current clicked item (that can be either the current item or one of its property).
- to move the mouse with right button down move the popup menu and adapt the shape of the link between the displayed current item origin and the popup menu. see here a prototype example of that feature
That feature acts on the current element : the popup menu provide a delete button. Click on the left button initiate the element deleting process as it is in web-protégé.
protégé-server take care of the consistancy of any OWL entity which were related to the deleted element
That feature acts only on the current element and/or its properties: the popup menu provides a set of possible creations, the list of which depends on clicked element
to mouse down on the right button initiate the creation process.
The creation process depends on the kind of object to be created :
Typically the process get Five steps :
- One : to mouse down on the right button and move display an attached menu with the list of allowed properties
- Two : release the button let the attached menu where it is.
- Three : to click on one of the property list in the attached menu :
- create the potential property
- display a second property menu allowing either :
- to create the target element ;
- to choose the target element in a list;
- in both case, one or two attached menu displays the list of allowed possibilities.
- Four : to click on one of the possibility either :
- establish the chosen link with the existing chosen existing entity.
- create the new entity in the chosen context with default values.
- Five : update the graph of current element.
That feature acts only on values of properties of the current element : the popup menu provides a set of possible actions, the list of which depends on the current element.
these actions may be :
- removing an objectProperty value.
- editing a dataTypeProperty value.
on clicking with right button on a property value :
- on an objectProperty value, a menu ask to confirm the property removal.
- on a datatypeProperty value, a menu display the text content and its attributes, with an ok and a cancel button.
1
Protégé and WebProtégé are national resources for biomedical ontologies and knowledge bases supported by the National Institute of General Medical Sciences
Protégé is a core component of The National Center for Biomedical Ontology
Copyright © 2012 Stanford Center for Biomedical Informatics Research