INCATools / INCATools/dosdp-tools

In query mode, check against semantically equivalent rewrites of equivalence axioms

Open
#33 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Scala
Stars
33
Forks
5
PR merge metrics
No merged PRs in 30d

Description

E.g. an ontology may have

* `A = B and R some C`
* `B = D and S some E`

the def for A can be rewritten/unfolded as

* `A = D and R some C and S some E`

it may be the case that only this latter form will match against a particular patterns that expects two slots (e.g. fixed D, R, S and slots for C and E). In some cases the reverse may be the useful one. It is valid to attempt all possible combinations. This should remain in some kind of subset of DL (there is an infinite number of equivalent DL expressions, but I believe the number of EL++ equivalents is bounded and sensible)

This kind of folding/unfolding may be generally useful elsewhere. For example an ontology author may want to rewrite equivalence axioms to conform to the canonical style of the DPs.

There is some code in owltools but it would be better rewritten in scala

* https://github.com/owlcollab/owltools/wiki/Annotation-Extension-Folding
* http://owlcollab.github.io/owltools/api//index.html?owltools/TBoxUnFoldingTool.html

prolog too...
https://blipkit.wordpress.com/2012/01/14/unfolding-t-boxes-in-go-using-popl/

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the Scala query-mode matching entry point and reviewing the linked owltools annotation-extension folding and TBox unfolding references. Define how equivalent EL++ rewrites are generated and bounded, then verify that patterns can match both the original and useful unfolded forms without leaving the intended subset of description logic.

Written by the indexing model from the issue text.

Assessment

Tech stack
scala
Domain
search
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.