Comments (18)
Noon is great!
from pheknowlator.
Current status of attempting to use Konclude though the OWL-API is summarized here: ignazio1977/owllink-owlapi#2
Probably not worth meeting today unless you have something you want to discuss.
from pheknowlator.
Yep, let's meet. I should have some preliminary data to show you.
from pheknowlator.
@bill-baumgartner - I won't be able to meet during our normal Wednesday time, but can meet anytime today after 1pm and anytime tomorrow (for the most part). Let me know that works best for you!
from pheknowlator.
Evaluation steps look good. What was the result of ./owltools -h
?
I can meet @ 1pm today. Tomorrow looks dicey due to the weather forecast.
from pheknowlator.
Evaluation steps look good. What was the result of
./owltools -h
?
I can meet @ 1pm today. Tomorrow looks dicey due to the weather forecast.
I have something at 1pm. I could do 12pm or 2pm. Do either of those work?
The result of running ./owltools -h
indicated that of our list of potential ontologies, only ELK
and Pellet
were included.
from pheknowlator.
@bill-baumgartner - following up from our meeting yesterday. Can you please take a look at OWLTools to see how difficult it might be to add a reasoner from the OWLAPI? Thank you!!
from pheknowlator.
@callahantiff - can you post the list of reasoners we selected?
from pheknowlator.
@callahantiff - can you post the list of reasoners we selected?
No problem, @bill-baumgartner the reasoners we chose are shown in the table below.
Reasoner | Language | OWLTools |
---|---|---|
ELK | EL | Yes |
ELepHant | EL | No |
Pellet | DL | Yes |
RACER | DL | No |
FACT++ | DL | No |
Chainsaw | DL | No |
Konclude | DL | No |
Crack | DL | No |
TrOWL | DL+EL | No |
MORe | DL+EL | No |
from pheknowlator.
First pass - the biggest issue is that most of the available reasoners support OWL API v3, and not v4 or v5.
- elephant - C code, "Support for OWL API is planned"
- pellet - OWL API v3
- racer - OWL API v3
- chainsaw - OWL API v3
- konclude - no direct connect to OWL API, but may be possible to use: https://www.derivo.de/en/products/konclude/usage-owl-api/
- crack - listed as unmaintained here: http://owl.cs.manchester.ac.uk/tools/list-of-reasoners/
- trowl - OWL API v3
- more - OWL API v3
- fact++ - supports OWL API v4
- snorocket - not on our list, but supports OWL API v4
I'll take a look at integrating Konclude first as it looks to be doable, and then perhaps we take a closer look and prioritize the rest.
from pheknowlator.
First pass - the biggest issue is that most of the available reasoners support OWL API v3, and not v4 or v5.
elephant - C code, "Support for OWL API is planned"
pellet - OWL API v3
racer - OWL API v3
chainsaw - OWL API v3
konclude - no direct connect to OWL API, but may be possible to use: https://www.derivo.de/en/products/konclude/usage-owl-api/
crack - listed as unmaintained here: http://owl.cs.manchester.ac.uk/tools/list-of-reasoners/
trowl - OWL API v3
more - OWL API v3
fact++ - supports OWL API v4
snorocket - not on our list, but supports OWL API v4
I'll take a look at integrating Konclude first as it looks to be doable, and then perhaps we take a closer look and prioritize the rest.
Thanks for the update @bill-baumgartner! I think your plan sounds great! Let me know if I can do anything in the meantime! I will also be in tomorrow if you prefer to meet in person.
from pheknowlator.
@bill-baumgartner - did you want to touch base on this stuff today?
from pheknowlator.
Turns out that Konclude works well from the command-line (in conjunction with Docker). So far I have not figured out how to retrieve explanations for unsatisfiable classes, but it is straightforward to:
- check the consistency of an ontology, e.g.
docker run --rm --name "konclude" -v /local/path/to/ontologies:/data konclude/konclude consistency -i /data/cl.owl
- classify an ontology, e.g.
docker run --rm --name "konclude" -v /local/path/to/ontologies:/data konclude/konclude classify -v -i /data/cl.owl -o /data/cl.konclude.out
- and, check the satisfiability of a specific class, e.g.
docker run --rm --name "konclude" -v /local/path/to/ontologies:/data konclude/konclude satisfiability -v -i /data/cl.owl -x http://purl.obolibrary.org/obo/CL_2000096
from pheknowlator.
Turns out that Konclude works well from the command-line (in conjunction with Docker). So far I have not figured out how to retrieve explanations for unsatisfiable classes, but it is straightforward to:
- check the consistency of an ontology, e.g.
docker run --rm --name "konclude" -v /local/path/to/ontologies:/data konclude/konclude consistency -i /data/cl.owl
- classify an ontology, e.g.
docker run --rm --name "konclude" -v /local/path/to/ontologies:/data konclude/konclude classify -v -i /data/cl.owl -o /data/cl.konclude.out
- and, check the satisfiability of a specific class, e.g.
docker run --rm --name "konclude" -v /local/path/to/ontologies:/data konclude/konclude satisfiability -v -i /data/cl.owl -x http://purl.obolibrary.org/obo/CL_2000096
Awesome, thanks Bill! Once I have the graph built I will give this a try! Happy to help dig around to find the output for unsatisfiable classes too.
from pheknowlator.
Morning @bill-baumgartner!
Below is a link to download a zipped directory of the ontologies we can use for the reasoner challenge. I have spent the last few days extensively cleaning these files (i.e. removed punning, fixing erroneous Literal typing, correcting inconsistent imported ontology identifiers, etc.). I also went ahead and ran each cleaned file through ELK to make sure that the cleaning didn't inadvertently cause other errors. All of them passed.
Download Link: reasoner_challenge.zip
Directory Contents
Aside from the clean single ontology files, you will also find:
- Each individual, cleaned ontology (
n=10
) - A file for each pairwise ontology merge (
n=45
; naming scheme:ont1_ont2_merged.owl
) - A file of all of the single ontologies merged together (
all_ontologies_merged.owl
)
Note. All ontologies in the directory contain all original entities (i.e. not had all annotation assertions removed to create the minimal symbolic representation). I figured we should start with them intact and if need be, apply the reduction transformation later on (it's super easy to do).
Question: @bill-baumgartner - do we want all triple-, quad-, ...n-1
-wise merge files? It is easy to generate these, but thought I would ask just in case you had something else in mind.
Ok, that's all for now, see you in a few hours!
from pheknowlator.
@bill-baumgartner - here is the Jupyter Notebook I mentioned during our meeting today (incase you are curious).
from pheknowlator.
@bill-baumgartner - just wanted to check-in and see how the great reasoner challenge of 2020 was going? Still OK to meet at our usual time tomorrow?
from pheknowlator.
Yep, let's meet. I should have some preliminary data to show you.
@bill-baumgartner - Woo hoo! Sounds great, I am looking forward to it!
from pheknowlator.
Related Issues (20)
- July 2021 Build -- Delay
- Incorporating Ensmallen -- 🔮 Magic ✨ 🎩
- Script Notebook: OWLNETS_Example_Application.ipynb HOT 1
- New Resource Request: LINCS
- Adding Edge Pattern and Relation Types HOT 3
- requirements.txt HOT 7
- Newline char in node description/definition causes dirty lines in node metadata files HOT 5
- Foreign characters in node labels HOT 18
- Simplify input files -- input yaml HOT 5
- GitHub Actions -- Docker build-push-action failing HOT 3
- Migrate from Google Cloud Container Registry to Artifact Registry
- Create Notebook to Enable pkt use in Efforts like HuBMAP HOT 1
- Create Build Dashboard
- Wiki: Create Endpoint Page
- CI/CD Pipeline: Ensuring Builds Use Most Current Data HOT 3
- Enabling Google GCS Directory Listing HOT 6
- Pheknowlator knowledge graph in OBO format HOT 4
- log directory is not created when pkt_kg is imported HOT 1
- Consider switching to https://identifiers.org/ URI or CURIEs HOT 2
- Create Edge-Type Attribute File HOT 15
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pheknowlator.