aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Add test data (ABox) for LUBM (manually merged)Federico Igne2020-11-271-0/+137381
| | | | | | | | | | | This data has been generated with the following $ java edu.lehigh.swat.bench.uba.Generator -univ 1 -index 0 -seed 0 -onto "http://swat.cse.lehigh.edu/onto/univ-bench.owl" and manually merged. Note that merging ontologies is not required anymore and the system will take care of it.
* Add ability to pass multiple ontology files on the commandlineFederico Igne2020-11-272-15/+18
|
* Add support for data property domain axiomsFederico Igne2020-11-274-62/+116
| | | | Also reintroduce data property axioms in LUBM
* Add LUBM ontology to the examplesFederico Igne2020-11-262-0/+1468
| | | | Both the original ontology and the modified ontology are included.
* Add ability to convert domain/range axioms for object propertiesFederico Igne2020-11-261-3/+29
| | | | | They have a straightforward translation into the supported normal form proposed in the paper.
* Turn implicit classes wrappers into objectsFederico Igne2020-11-246-12/+15
|
* Rename `RDFoxHelpers` to `RDFoxUtil`Federico Igne2020-11-246-21/+21
| | | | For a more consistent naming.
* Rework filtering program generationFederico Igne2020-11-243-340/+129
|
* Include BCQ case in filtering program generationFederico Igne2020-11-233-305/+316
| | | | The FilteringProgram module has been slightly reworked.
* Remove duplicate creation of RDFox datastoresFederico Igne2020-11-233-32/+20
|
* Rename `boolean` as `bcq`Federico Igne2020-11-234-12/+11
|
* Add Acknowledgements/Credits sections to README.mdFederico Igne2020-11-231-0/+8
|
* Update RSAOntology interface for query answeringFederico Igne2020-11-202-28/+61
|
* Simplify workflow for query executionFederico Igne2020-11-204-218/+130
| | | | Input query is now read from file.
* Integrate new ConjunctiveQuery in filtering program computationFederico Igne2020-11-193-34/+15
|
* Add wrapper class for (boolean) conjunctive queriesFederico Igne2020-11-199-95/+466
|
* Move NI instantiation in FilteringProgramFederico Igne2020-11-195-45/+39
|
* Update README.mdFederico Igne2020-11-191-3/+3
|
* Update README.mdFederico Igne2020-11-191-7/+10
|
* Update README.mdFederico Igne2020-11-191-5/+32
|
* Reorganize project with Java-like folder structureFederico Igne2020-11-1820-41/+56
|
* Rename internal predicate "EquivTo" to "congruent"Federico Igne2020-11-183-13/+13
|
* Change IRI prefix for internal resourcesFederico Igne2020-11-182-9/+5
|
* Rework RSA as a utility objectFederico Igne2020-11-1818-565/+591
|
* Remove implicit RSAOntology conversionFederico Igne2020-11-177-665/+624
| | | | | | This was causing problems without giving any significant advantage. Now it will be easier to refactor classes like RSA, RSAOntology, CanonicalModel.
* Rename RDFTriple to RSAAtomFederico Igne2020-11-171-0/+0
|
* Unify use of RSASuffixFederico Igne2020-11-175-159/+203
| | | | This commit comes with minor fixes and code simplifications.
* Rework suffixesFederico Igne2020-11-166-40/+55
| | | | | This is a WIP implementation of a generalized way of handling IRI suffixes. It is not currently used everywhere.
* Change "internal:" prefix to "rsa:"Federico Igne2020-11-167-63/+74
|
* Fix testsFederico Igne2020-11-142-3/+4
| | | | | They were loading the wrong example file since we switched to Turtle format.
* Update READMEFederico Igne2020-11-141-3/+45
|
* Fix NI predicate computationFederico Igne2020-11-144-37/+76
| | | | | | Now NAMED is introduced during the canonical model computation, while NI instances are computed and introduced in the filtering program generation phase.
* Add diagnostic queries along main queryFederico Igne2020-11-131-26/+83
|
* Add first implementation of top and equality axiomatizationFederico Igne2020-11-131-2/+58
| | | | | | This is a first stab of the axiomatization. For equality we are deriving owl:sameAs triples (not ideal) and did not yet introduced "substitution" rules.
* Simplify role extraction from axiomsFederico Igne2020-11-131-58/+18
| | | | | | | | The previous implementation was using the visitor pattern suggested by the OWLAPI. This was buggy for some reasons and resulting in runtime exceptions (probably due to the complex class tree of the API). In Scala using type pattern matching results in a shorter and more readable way of traversing an AST.
* Fix suffix generation in filtering programFederico Igne2020-11-132-15/+15
| | | | Also a small step into generalizing the concept of suffix
* Add NAMED facts to filtering programFederico Igne2020-11-121-1/+2
| | | | | The difference between NAMED and NI facts still needs to be clarified but this is the implementation closest to the paper description.
* Remove debug outputFederico Igne2020-11-101-1/+0
|
* Add missing rule generated per roleFederico Igne2020-11-101-0/+43
| | | | | This is temporarily required while we reorganize the way suffixes for roles are handled.
* Fix typo in example 1 (Turtle file)Federico Igne2020-11-101-1/+1
|
* Fix SKOLEM call creation during function skolemizationFederico Igne2020-11-102-8/+20
| | | | | The first argument of a SKOLEM call needs to be a literal string. Note that this is not enforced in any way by RDFox, that will fail silently.
* Generalize axiom hashing for constant generationFederico Igne2020-11-103-12/+44
|
* Improve query pretty printingFederico Igne2020-11-101-1/+1
|
* Add OWLClassAssertionAxiom to axioms handled during translationFederico Igne2020-11-101-1/+22
|
* Expose ABox in RSAOntology classFederico Igne2020-11-101-2/+9
|
* Rewrite example 1 in Turtle syntaxFederico Igne2020-11-102-0/+55
| | | | Personally it is better documented, easier to read and to write.
* Fix `notIn` implementation in canonical modelFederico Igne2020-11-091-17/+18
| | | | | The informal definition provided by the paper in wrong, and it turns out `notIn` just means "not in".
* Simplify reification process and add negation reificationFederico Igne2020-11-092-68/+42
|
* Update canonical model unit testsFederico Igne2020-11-061-11/+11
|
* Rework canonical model computationFederico Igne2020-11-063-323/+332
| | | | | | | | | | | | | | | | | | | | This is a first attempt to avoid a bug triggered by the nature of the class RSAOntology and CanonicalModel. An OWLOntology is converted implicitly to an RSAOntology object whenever it is needed. From within the RSAOntology class we used to create a CanonicalModel object (and pass the underling OWLOntology object as a parameter). Inside CanonicalModel we require RSAOntology functionalities from the OWLOntology, triggering a new conversion into RSAOntology (that would compute a new CanonicalModel and so on in a loop). While declaring the CanonicalModel as lazy in RSAOntology could solve the problem, it does not fix the underlying issue of having a class strictly related to RSAOntology as a top level class. As a first attempt we moved CanonicalModel as an object inside RSAOntology.