knocean / knode

Knowledge Development Environment
BSD 3-Clause "New" or "Revised" License
1 stars 1 forks source link

Implement tree views #43

Closed jamesaoverton closed 7 years ago

jamesaoverton commented 7 years ago

We want to be able to view ontologies along multiple hierarchies, which we'll call "trees". Each tree view will have a name, and be served from /tree/<tree-name>. We will have a new configuration file /ontology/trees.edn to configure the trees.

The basic tree data will be represented as a list of (subject, parent, label) tuples, where a subject can have multiple parents, and the parent can be null (when the subject is a root of the tree). Eventually tuples could come from a table, a SPARQL query, or an OWLAPI reasoner. For the initial version, the tuples can be literal data in the configuration file.

We need to support these representations:

Because the ontologies can be large, we should support Inspire Tree's dynamic loading. So we will have to be able to request a root node and return its children, e.g. /tree/example.json?root=EXAMPLE:0000001. We also need a way to return just the roots of the tree (one or more).

We can build on two implementations of the tuples-to-tree code (with examples and tests):

inaimathi commented 7 years ago

Work started in https://github.com/knocean/knode/pull/47. Mostly cleanup at this point.

inaimathi commented 7 years ago

More work in https://github.com/knocean/knode/pull/47. We now have

What's still left as of now is

inaimathi commented 7 years ago

Implemented TSV 2 in the tree data handler

inaimathi commented 7 years ago

Merged the branch that implements all of this, but I'm leaving the issue open until I get a head-check about it.