FuXi 1.4 release

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

FuXi 1.4 release

Chimezie Ogbuji
My apologies for the cross-posting.

FuXi has been updated to version 1.4 after a series of recent updates and some older ones going back almost a year.  The latest version is available either via easy_install or by compiling the source.  See [1] 

The detailed change log is below, however the major changes include: support for the SPARQL 1.1 (Simple) RIF Core Entailment Regime [2], A RIF in RDF and RIF XML parser for RIF Core documents [3], command-line support for RIF core documents (--ruleFormat option), user-specified rule prioritization, and fixing support of reasoning about predicates that are both in the source RDF graph and that are derived by rules ('hybrid predicates').

In addition, via the use of many of the RIF RDF and OWL Compatibility embeddings [4], it gets through about 70% of the SPARQL 1.1 Entailment Regime tests involving the RDF, RIF, RDFS, and OWL Entailment with RDF-Based Semantics entailment regimes.

The wikis have been updated to reflect these changes and the RIF Core parser includes a RIF Core XML to RIF in RDF XSL transform [5].

Please report any issue to the fuxi-discussion google group ([hidden email])

Detailed Changes

- Added infrastructure for recognizing and setting up SPARQL 1.1 RIF entailment (supporting RIF XML or RIF in RDF in the dataset)
- Removed deprecated decisionProcedure keyword parameter from TopDownSPARQLEntailingStore
- Fixed handling of hybrid predicates (rules and query are changed *before* BFP)
- fixed return of boolean results for ground queries by BFP method
- Fixed BGP entailment evaluation handling of heterogeneous triple patterns (some grounded, others not)
- Fixed variable mapping issue when calling GoalSolution action (when the BFP triggers a p-node associated with a goal and stores the solutions for later retrieval)
- Fixed variable bindings passed over from max conjunctive query (passes all not just those needed by rule head)
- Added GetELHConsequenceProcedureRules in FuXi.DLP.CompletionReasoning which returns the (normalized) completion rules for OWL 2 EL reasoning
- Fixed adornment of rules and how it assures adorned literals are only processed once
- Fixes to adding triple to alpha network
- added slice operation to And (conjunction of literals)
- added RIF in RDF and RIF XML (via XSL transform to RIF in RDF) parser: FuXi.Horn.RIFCore
- fixed production of SIP graph when body is an And
- fixed raising exception when sip cannot be found (query can't be answered by rules, for example)
- fixed collection of solutions for goal during BFP
- fixed enumeration of variables while creating SPARQL queries to dispatch directly against the EDB
- dispatch of conjunctive queries to EDB as SPARQL query now properly include namespace declarations and expands URIs that previously relied on BASE and PREFIX :
- added herbrand_hash to positional terms (ignores variables)
- added --ruleFormat to FuXi command-lined (when given 'rif', rules can be parsed from RIF XML or RIF in RDF) 
- added told BNode handling callback
- fixed (for hybrid predicates) the creation of: evaluate(ruleNo,j+1,X) :- evaluate(ruleNo,j,X), bodyLiteral
- Fixed generation of EDB queries to ignore any adorned predicates
- fix for  Issue 52  (Cannot import OWL from rdflib)
- fixed LloydToporTransformation so the following transformations work as
    H :- (B v B0) -> { H :- B, H :- B0 }
- added fix to handle existentials (bnodes) in the head of a rule
- added replace to Property classes (InfixOWL)
- added helper function for Horn / RIF syntax (Horn Clause syntax)
- Fixed memorization of conjunctive query
- updated query execution action to take information about the free variables in the head of the rule (to help properly evaluate ground queries with intermediate variables that are not returned)
- Fixed cloning of tokens that are components of conjunctive base query
- meta-intepreter keeps track of hybrid predicate rules (in order to sort them)
- fixed handling of conjunctive base queries: continuation rules are now added to set of meta rules
- in debug mode, meta rules are printed out in evaluation order
- Rete network can now take rule prioritizer and alpha node prioritizer functions that determine the order to evaluate the consequent literals and the order to evaluate alpha nodes

-- Chime Ogbuji

[1] http://code.google.com/p/fuxi/wiki/Installation_Testing 
[2] http://code.google.com/p/fuxi/wiki/TopDownSW#SPARQL_1.1_(Simple)_RIF_Core_Entailment_Regime
[3] http://code.google.com/p/fuxi/wiki/FuXiUserManual#Parsing_RIF_Core
[4] http://www.w3.org/TR/rif-rdf-owl/#Appendix:_Embeddings_.28Informative.29
[5] http://fuxi.googlecode.com/hg/lib/Horn/rif-core-rdf.xsl