tree-document-topology-visualizer
A software to draw the topology of a TREE view
https://github.com/constraintautomaton/tree-document-topology-visualizer
Science Score: 57.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 1 DOI reference(s) in README -
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.1%) to scientific vocabulary
Keywords
Repository
A software to draw the topology of a TREE view
Basic Info
Statistics
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
README.md
Tree-document-topology-visualizer
Software to draw the topology of a TREE view.
How it work
The processing can be divided into 4 steps;
- Query the TREE view to get the tree:relation
- Build a graph from the tree:relation
- Build a graphviz graph
- Generate a graph file (supported file types: dot, svg, png, jpg)
We use the Link Traversal Query Processessing modules of the SPARQL query engine Comunica
to execute the following SPARQL query to collect information about the tree:Relation
and the current tree:Nodes.
```sparql PREFIX tree: https://w3id.org/tree# PREFIX rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns#
SELECT ?node ?nextNode ?operator ?value WHERE { ?node tree:relation ?relation . ?relation tree:node ?nextNode .
?relation rdf:type ?operator.
?relation tree:value ?value .
} LIMIT {limit}
``
We then build a graph from the query response where the vertices are composed of the variables from the SPARQL query?nodeand?nextNodeand the edges are characterized by the pair (?node,?nextNode) and are "weighted" with the boolean expression composes with the SPARQL variable?operator?value`.
The graph is forwarded to the go-graphviz library which handles the generation of the graph file.
Dependencies
- go version 1.20
- nodejs v16
- yarn
- Make Optional for building
Build
First use
To build the software for a first time
make build-all
It will build the main source code and the javascript code used to instantiate Comunica.
Main source code
To only build the main source code
make build
The binary will be located in ./build/tree-visualizer
Debugging
To build the code and then run it with the default parameters
make build-run
Usage
To run with the default parameters
make run
The binary is located inside the ./build/tree-visualizer.
To display the help prompt use -h.
The file type is inferred from the extension of the path passed to -p.
Usage of ./build/tree-visualizer:
-l uint
The maximum number of relations (default 18446744073709551615)
-p string
Resulting path of the graph (default "./generated/graph.svg")
-t string
URL of the TREE document (default "http://localhost:3000/ldes/test")
-u Make the graph unlabeled
Test
To run all the tests
make test
TO DO
- [ ] Make a streaming version of the program where the graph is generated has the relations are discovered.
- [ ] Make a mode to handle simpler
tree:relationwithout using optional statements in the SPARQL query has it greatly slows down the execution time. - [ ] Include an option to track the nodes that are traversed when executing a SPARQL query from an outsider Query engine.
- [ ] Option to output an
htmlfile, with an interactive graph using JavaScript. - [ ] Create a web assembly binary.
Bib reference
bib
@software{Tam_tree-document-topology-visualizer_2023,
author = {Tam, Bryan-Elliott},
doi = {10.5281/zenodo.1234},
month = {4},
title = {{tree-document-topology-visualizer}},
url = {https://github.com/constraintAutomaton/tree-document-topology-visualizer},
version = {1.0.0},
year = {2023}
}
Owner
- Name: Bryan-Elliott Tam
- Login: constraintAutomaton
- Kind: user
- Location: Ghent, Belgium
- Company: imec - Ghent University - IDLab
- Repositories: 8
- Profile: https://github.com/constraintAutomaton
PhD Student working on querying for semantic web technologies
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Tam" given-names: "Bryan-Elliott" orcid: "https://orcid.org/ 0000-0003-3467-9755" title: "tree-document-topology-visualizer" version: 1.0.0 doi: 10.5281/zenodo.1234 date-released: 2023-04-07 url: "https://github.com/constraintAutomaton/tree-document-topology-visualizer"
GitHub Events
Total
Last Year
Committers
Last synced: 8 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Bryan-Elliott Tam | b****m@u****e | 55 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 8 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0