This repository is for the command line wrapper e3 of the EulerX toolkit. The EulerX toolkit developed by the EulerProject team allows to solve the taxonomy alignment problem ("tap") [1, 2]. Here we created a wrapper around the EulerX toolkit to achieve the following benefits.
- Use of e3 as an interactive shell, or directly in scripts
- Use of modular commands with single responsiblities
- Ability to refine taxonomy alignment problems on-the-go
- Reduced exposure to certain expert options
- Reduced knowledge of the EulerX life-cycle
- Reduced exposure to EulerX generated output data
- Re-use of existing computation results in "projects"
Miscellaneous Commands
Command | Description |
---|---|
exit | Exit e3. |
help | Shows this help. |
reset | Resets to factory settings. |
clear | Clears the history and cache. Keeps the configuration and style settings. |
show history | Shows the html rendered history. |
clear history | Clears the history. |
print config | Prints the configuration settings. |
set config <parameter>=<value> | Sets the configuration <parameter> with <value>. |
reset config | Resets the configuration to default. |
print style | Prints the style settings. |
set style <parameterPath>=<value> | Sets the style parameter with (e.g. aggregate/graphstyle/legend) with . |
reset style | Resets the style to default. |
git credentials <host> <username> "<password>" | Sets the <username> and <password> for the git <host>. |
git pull <path> | Clones or pulls an e3_data workspace from the <path> at the configured git repository. |
git push <path> <message> | Commits (with <message>) and pushes the e3_data workspace to the <path> at the configured git repository. |
git state pull <path> | Clones or pulls the e3 state from the <path> at the configured git repository. |
git state push <path> <message> | Commits (with <message> and pushes the e3 state to the <path> at the configured git repository. |
Tap Commands
Command | Description |
---|---|
print tap [<tap>] | Prints the current tap, or the optionally provided <tap> |
print taxonomies [<tap>] | Prints the taxonomies of the current tap, or the optionally provided <tap>. |
print articulations [<tap>] | Prints the articulations of the current tap, or the optionally provided <tap>. |
add taxonomy <taxonomyId> <taxonomyName> [<tap>] | Adds a taxonomy with <taxonomyId> and <taxonomyName> to the current tap, or the optionally provided <tap>. |
remove taxonomy <taxonomyId> [<tap>] | Removes the taxonomy with <taxonomyId> and all referencing articulations from the current tap, or the optionally provided <tap>. |
set taxonomy info <oldTaxonomyId> <newTaxonomyId> <newTaxonomyName> [<tap>] | Sets the <newTaxonomyid> and <newTaxonomyName> to the taxonomy with <oldTaxonomyId> of the current tap, or the optionally provided <tap>. |
add concepts <taxonomyId> (<parentConcepts> <childConcept 1> ... <childConcept n>) [<tap>] | Adds set of <childConcept> to <parentConcept>, creating non-existing concept's as needed to the taxonomy with <taxonomyId> of the current tap, or the optionally provided <tap>. |
remove concepts <recursive> <taxonomyId> (<parentConcepts> <childConcept 1> ... <childConcept n>) [<tap>] | Removes set of <childConcept> from <parentConcept> in the taxonomy with <taxonomyId> of the current tap, or the optionally provided <tap>. |
rename concept <taxonomyId> <oldName> <newName> [<tap>] | Renames the concept in taxonomy with <taxonomyId> from <oldName> to <newName> for the current tap, or the optionally provided <tap>. |
clear taxonomy <taxonomyId> [<tap>] | Clears the taxonomy with <taxonomyId> of the current tap, or the optionally provided <tap>. |
add articulation <articulation> [<tap>] | Adds <articulation> to the current tap, or the optionally provided <tap>. |
remove articulation <articulation_index|articulation> [<tap>] | Removes articulation with index <articulation_index> or string <articulation> from the current tap, or the optionally provided <tap>. |
clear articulations [<tap>] | Clears the articulations of the current tap, or the optionally provided <tap>. |
set sibling disjointness <true|false> [<tap>] | Sets the sibling disjointness for the current tap, or the optionally provided <tap>. |
set coverage <true|false> [<tap>] | Sets the coverage for the current tap, or the optionally provided <tap>. |
set regions <mnpw|mncb|mnve|vrpw|vrve> [<tap>] | Sets the regions for the current tap, or the optionally provided <tap>. |
load tap <cleantax file> | Loads a tap from the <cleantax file>. |
clear tap | Sets the empty tap as the current tap. |
print names | Shows all stored names and their corresponding taps. |
name tap <name> [<tap>] | Names the current tap, or the optionally provided <tap> as <name>. |
use tap <tap> | Makes <tap> the current tap. |
Euler Commands
Command | Description |
---|---|
graph tap [<tap>] | Creates a graph visualization of the current tap, or the optionally provided <tap>. |
is consistent [<tap>] | Checks the consistency of the current tap, or the optionally provided <tap>. |
is unique [<tap>] | Checks if there is a unique world for the current tap, or the optionally provided <tap>. |
is ambiguous [<tap>] | Checks if there is more than 1 world for the current tap, or the optionally provided <tap>. |
is true <articulation> [<tap>] | Checks if the articulation holds true for the current tap, or the optionally provided <tap>. |
more than <count> worlds [<tap>] | Checks if there are more than <count> number of worlds in the current tap, or the optionally provided <tap>. |
graph worlds [<maxWorlds>] [<tap>] | Creates graph visualizations of the worlds, if any exist, and if provided maximally <maxWorlds> for the current tap, or the optionally provided <tap>. |
print worlds [<maxWorlds>] [<tap>] | Prints the worlds, if any exist, and if provided maximally <maxWorlds> for the current tap, or the optionally provided <tap>. |
use world [<worldId>] [<tap>] | Replaces the articulations of the current tap or the optionally provided <tap> with all the articulations extracted from the given <worldId> or the unique world of the tap, if applicable and no <worldId> is given. |
print minimal articulations [<tap>] | Prints minimal sets articulations for the unique world of the current tap, or the optionally provided <tap>. |
use minimal articulations <minimal articulation set id> [<tap>] | Replaces the articulations of the current tap or the optionally provided <tap> with the articulations of the given <minimal articulation set id>. |
print maximal articulations [<tap>] | Prints maximal sets of articulations for all worlds of the current tap, or the optionally provided <tap>. |
use maximal articulations <maximal articulation set id> [<tap>] | Replaces the articulations of the current tap or the optionally provided <tap> with the articulations of the given <maximal articulation set id>. |
graph ambiguity [<tap>] | Creates an ambiguity visualization of the current tap, or the optionally provided <tap>. |
graph summary [<tap>] | Creates a summary visualization of the current tap, or the optionally provided <tap>. |
graph four in one [<tap>] | Creates a four-in-one visualization of the current tap, or the optionally provided <tap>. |
print minimal uniqueness [<tap>] | Prints the minimal subsets of articulations that create uniqueness for the current tap, or the optionally provided <tap>. |
use minimal uniqueness <set id> [<tap>] | Replaces the articulations of the current tap or the optionally provided <tap> with the articulations of the given minimal uniqueness <set id>. |
print minimal inconsistency [<tap>] | Prints the minimal subsets of articulations that create inconsistency for the current tap, or the optionally provided <tap>. |
use minimal inconsistency <set id> [<tap>] | Replaces the articulations of the current tap or the optionally provided <tap> with the articulations of the given minimal inconsistency <set id>. |
print maximal consistency [<tap>] | Prints the maximal subsets of articulations that create consistency for the current tap, or the optionally provided <tap>. |
use maximal consistency <set id> [<tap>] | Replaces the articulations of the current tap or the optionally provided <tap> with the articulations of the given maximal consistency <set id>. |
print maximal ambiguity [<tap>] | Prints the maximal subsets of articulations that create ambiguity for the current tap, or the optionally provided <tap>. |
use maximal ambiguity <set id> [<tap>] | Replaces the articulations of the current tap or the optionally provided <tap> with the articulations of the given maximal ambiguity <set id>. |
graph [<full|reduced>] inconsistency [<tap>] | Creates a graph visualization of the inconsistency, if any exists, for the current tap, or the optionally provided <tap>. |
print fix [<tap>] | Prints a set of suggested fixes of the inconsistency, if any exists, for the current tap, or the optionally provided <tap>. |
use fix <fix set id> [<tap>] | Uses the fix with <fix set id> to create a consistent input from the current tap, or the optionally provided <tap>. |
create tap from worlds <tap_1> ... <tap_n> | Creates a tap with the unique worlds of <tap_1> ... <tap_n> as taxonomies. |
- Python 2.7.x
- Python modules:
- autologging
- pinject
- pyyaml
- networkx
- gitpython
- python-numpy
- matplotlib
- beautifulsoup4
- html5lib
- ruamel.yaml
- EulerX
- Setup preqrequistis
- Clone this repository
- Run e3
- If euler2 is not in your $PATH, do:
- e3 > set config euler2Executable = <your_path_to_EulerX_src-el>/euler2
e3 workspace:
Directory | Description |
---|---|
$CWD/e3_data | e3 workspace files. |
$CWD/e3_data/index.html | Command history as browsable HTML. |
$CWD/e3_data/{tap}/index.html | {tap} as browsable HTML. |
$CWD/e3_data/{tap}/input.txt | {tap} as cleantax file. |
$CWD/e3_data/{tap}/{command}/config.txt | Configuration at the time of {command} execution on {tap}. |
$CWD/e3_data/{tap}/{command}/* | Output files created by {command} execution on {tap}. |
e3 state:
Directory | Description |
---|---|
$CWD/.e3 | e3 state files |
$CWD/.e3/config | stores the configuration settings |
$CWD/.e3/current_tap | stores the current tap |
$CWD/.e3/history | stores the command history |
$CWD/.e3/names | stores the tap to name mappings |
$CWD/.e3/style | stores style settings |
$CWD/.e3/taps | stores taps and computed reasoning data |