Technical Requirements for a Graph Editor
Etienne Saliez, version 2023-01-26 /
- Introduction:
- A generic knowledge graph editor could not yet be found, at
lest for projects like:
- Healthcare organizations,
- AIMIG, "Assisted Intelligence in Medicine using
Interactive Graphs", http://www.aimig.org/ .
where both medical knowledge and patient record information
should be structured as graphs.
- Objectives:
- Creation and maintenance of knowledge bases by domain
experts.
- Explainable decision support.
- Requirements and considered solutions:
- ( 1 ) Prototype initial requirements:
- Visual representation: of attributes of nodes and edges,
like:
- Visual representation of concepts, i.e. nodes, and of
their relations, i.e. edges. Visual presentations of their
attributes by means of color, shape, size, etc...
- Typical examples:
- Navigation and selections in graphs:
- Synchronization between focus in human conscientiousness
and focus in the computer graphs. The focus means here
that in both cases, only a small fraction of the content
of a large knowledge base can be considered at a given
point in time. In a similar way only a small
fraction of millions nodes can be presented on a screen.
- The question is to move easily to related concepts and
to make synthesis. This by clicking on objects and moving
the focus on different point of view and challenges.
Queries with filters.
- Creations and updates:
- Very user-friendly interface allowing natural drag and
drops for the creation and update of nodes and edges. As
well simple forms in order to manage attributes.
Knowledge depend on human experts. Textbooks of knowledge
could help but are mostly available in natural language.
Anyhow domain experts must at least review any graph
knowledge base.
- Typical examples:
- "Arrows.app", https://neo4j.com/labs/arrows/
(currently not good working on Firefox but well on
Chromium browser). However this excellent example of
human interface do not yet allow to update a regular
Neo4j database.
For the purpose of creating knowledge graphs, the
expected advantages are more precision while taking no
more time than typing text and trying to convert natural
language. An example: https://arrows.app/#/local/id=oQGPTlmtocZCO14nc-R-
.
- Nowadays most graph software seems intended for big
data analysis. However some have limited edit
capabilities for individual nodes, as for example
Bloom/Neo4j, Linkurious, ...
- Of course when possible import knowledge from available
databases in other formats. However reviews by experts and
maintenance will remain necessary.
- Information processing:
- It should be possible to associate some functionality to
a knowledge base.
- Event based architecture. Some events should trigger
other events in the graph. Particularly allowing
evaluations of likelihoods and decision support. This
in function of the weight of the relations with other
concepts.
- This mean the possibility to attach some code to nodes,
in function of their local attributes. This by means of
some code inside nodes or calls to external functions.
- Medical collaborations;
- A biomedical knowledge base must remain open for
discussion with experts, particularly with teachers in
universities. Also in the raining of medical students.
Experimental start with a few chapters and potential very
large extensions.
- In order to be trusted the content of medical knowledge
must remain open and independent.
- Keep the knowledge available for developing regions.
- This means "Open Data".
- Technical collaborations:
- Seek multidisciplinary developers willing to contribute
to this challenging project.
- Keep the freedom to adapt the software in function of
evolving requirements.
- As far as possible use Open Source software tools.
- Economic model:
- Developments to be based on grants for applied research.
Contribution from partners needing software extensions.
- Support services as traditional business.
- ( 2 ) Later stages requirements:
- Decision support:
- Development of more advanced decision support and
recommendations.
- Natural Language Processing:
- Not a priority at the initial prototype stage, since the
focus is at the logic structure of knowledge.
- Precision:
- In the initial version, coefficients will be based on
common sense guesses, which will be later improved on
basis of learning from research on observed facts.
- Confidentiality:
- Role Based Access Control. In the case of healthcare
every patient has a specific "Care Team", trusted by the
patient and needing access to his information.
- Security:
- Protection against intrusions and misuses. Initially not
critical for experimental project as "proof of concept",
but well when real patient will be involved.
- 3D representation of graphs:
- To be explored. Potentially useful for navigation in
graphs.
- Current exploratory prototype: