CS 6795 Semantic Web Techniques

Fall 2014 Projects

 

The projects develop and/or apply Semantic Web tools in domains of knowledge based on the studentsí interests. The prototypes described here have been created to study Semantic Web techniques and are not intended to provide any domain-oriented recommendation.

 

Syllabus
Assigns
Notes
Labs
Project
Resources

Advisor(s)

Topics and Homepages of Teams

Abstracts and URL Starting Points

Harold Boley

Team 1 A Song and Album Knowledge Base in PSOA RuleML: From the Relational to the Object-Centered Paradigm

XYZ

 

A didactic Music Album Knowledge Base was made available for demonstrating the relational and object-centered paradigms as integrated in the PSOA RuleML language.

The project will use the PSOA RuleML implementation called PSOATransRun[PSOA2Prolog,XSBProlog] to extend this album KB, and complement it by facts and rules about songs. An album fact uses a pair side(... ...) of structures playlist(... ... . . . ...) of song OIDs. A song fact can be accessed by top-level queries and via album queries. Each song provides a title, one or more writers, the lead vocals or instrumental, the length (in minutes and seconds); also, optionally, one or more music genres (from a small genre taxonomy), a URL for the lyrics, one or more URLs for audio files, one or more URLs for video files, and one or more awards. This vocabulary should take advantage of corresponding Freebase and schema.org entries starting with "Musical Album" and "MusicAlbum", respectively. Using a rule, the lengths of both sides are to be computed from the lengths of their songs; similarly, the length of an album from the lengths of its sides. Other rules should be introduced where appropriate. Both the relational and object-centered paradigms shall be exemplified, as well as their combinations across the album and song levels. Pros and cons of the relation-to-object transition should be discussed. At least two sample albums shall be represented, one of which being Hotel California from the existing Music Album Knowledge Base, but now including its nine tracks (eight songs, one instrumental).

The Song and Album KB will be made available on the Web, open source, so it can be pointed to from the RuleML site.

 

Music Album Knowledge Base: http://www.cs.unb.ca/~boley/papers/MusicAlbumKB.txt

 

Freebase entry "Musical Album": https://www.freebase.com/music/album?schema=

 

schema.org entry "MusicAlbum": http://schema.org/MusicAlbum

 

PSOA RuleML: http://wiki.ruleml.org/index.php/PSOA_RuleML

 

PSOATransRun[PSOA2Prolog,XSBProlog] (forthcoming): http://wiki.ruleml.org/index.php/PSOA_RuleML#Prolog_Instantiation

 

Harold Boley

Team 2 Object-Relational Decision Rules: Specification in PSOA RuleML and Testing with PSOATransRun

XYZ

 

In F-logic and RIF, objects (frames) are defined entirely separately from function and predicate applications. In POSL and RuleML, these fundamental notions are integrated by permitting applications with optional object identifiers and, orthogonally, arguments that are positional or slotted. The resulting positional-slotted, object-applicative (psoa) terms were given a novel formalization, reducing the number of RIF terms by generalizing its positional and slotted (named-argument) terms as well as its frame terms and class memberships. The syntax and semantics of these integrated terms and rules over them are defined as PSOA RuleML in the style of W3C's RIF-BLD.

The project will use the PSOA RuleML implementation called PSOATransRun[PSOA2Prolog,XSBProlog], based on the translator PSOA2Prolog and the runtime engine XSB Prolog. It will model an excerpt of a knowledge domain in an object-relational fashion using frames, OID-anchored positional facts, and their combinations, as well as decision rules over them. Earlier Web-published POSL fact and rule bases such as the Loan Processor, NBBizKB, ChemXelem, FindXpRT, eTourPlan, and the Personal Agents of Rule Responder instantiations such as WellnessRules can act as modeling examples for the similar PSOA formalism. Syntactic PSOA examples are at Test Cases. The knowledge domain must be amenable to the expressivity of the current PSOA RuleML implementation and should be within (at least) one of the project membersí area of expertise (e.g., in health/wellness/sports, environment/climate, sciences/engineering, finance/economics, or humanities/culture). The domain specification will be founded on PSOA RuleML facts. On top of these, typical decision rules for the chosen domain will be developed in PSOA RuleML. Decisions may be deterministic by employing rules in an 'if then else'-like style (as in the Loan Processor example) or involve search through a space of solutions defined by the rules (as in the eTourPlan example). Domain facts and decision rules will be tested individually and in combination by posing queries to PSOATransRun[PSOA2Prolog,XSBProlog].

The system will be made available on the Web, open source, so it can be pointed to from the PSOA RuleML site.

 

PSOA RuleML / PSOATransRun (with various examples and links):
http://wiki.ruleml.org/index.php/PSOA_RuleML#PSOATransRun

 

POSL Knowledge Bases: http://ruleml.org/#Library

 

Rule Responder: http://ruleml.org/RuleResponder/

 

Tara Athan,

Harold Boley

Team 3 A Test Case Suite for Hornlog+ RuleML 1.01

Zhenzhi Cui,
Radhika Yadav

 

Deliberation RuleML comprises a family of sublanguages, starting with Datalog, Hornlog, and other Derivation Rules, and proceeding to FOL and beyond. The Deliberation RuleML 1.01 release has its focus on the three defining Datalog+ extensions of rule conclusions/heads: Existential, Equality, and Integrity Rules. Datalog+ test and use cases have been developed for various purposes, including for validation (specification), transformation (interoperability), execution (benchmarking), and prototyping (application). Hornlog+, also part of the Deliberation RuleML 1.01 family, has been less explored. Like Hornlog does for Datalog, Hornlog+ extends Datalog+ with (constructor) functions. Particular Hornlog+ RuleML 1.01 language features can be customized via MYNG 1.01. For Deliberation RuleML 1.01 examples, see the instructive Datalog+ business rules and the entries of the Rulebase Competition 2014.

In this project, Hornlog+ test rulebases (including test queries) shall be realized, e.g. by augmenting the current examples of Datalog+ rulebases with functions or by augmenting the current Hornlog examples with the three defining extensions. These Hornlog+ RuleML 1.0 instance documents shall be formatted in an easy-to-read standard (pretty-print-indented) manner. Like the Datalog+ RuleML 1.01 examples, they should have a prelude so that they can be validated w.r.t. the most specific schema, in both XML Schema and Relax NG. Hence they shall be double-validated with Validome (XML Schema) and Validator.nu (Relax NG), both introduced in Lab 1. Results of these validations shall be documented (including with a few screenshots).

The Test Case Suite will be developed and made available in Github on the Web, open source, so it can be pointed to from the RuleML site.

 

RuleML 1.01 Examples (grouped according to sublanguages):

http://deliberation.ruleml.org/1.01/exa

W3C RIFTest Cases:
http://www.w3.org/2005/rules/wiki/Category:Test_Case

 

Demo of MYNG 1.01:

http://wiki.ruleml.org/index.php/Demo_of_MYNG_1.01

 

Github (Learning): https://help.github.com/articles/good-resources-for-learning-git-and-github/
Github (RuleML): https://github.com/RuleML
Github (Demo): http://wiki.ruleml.org/index.php/Github_Demo

 

Tara Athan,

Harold Boley

Team 4 XSLT 2.0 Translation of a Datalog+ RuleML 1.01/XML Subset to the Presentation Syntax of Nyaya

XYZ

 

The current release for RuleML's condition=>conclusion rules, Deliberation RuleML 1.01, has its focus on the three defining Datalog+ extensions of rule conclusions/heads: Existential, Equality, and Integrity Rules. To keep querying decidable, restrictions of rule conditions/bodies have been introduced in Datalog+/- and implemented in the Nyaya engine. Under the assumption that those restrictions have already been observed by a context-sensitive/semantic validator or by the user, Nyaya can be employed as an engine for the corresponding subset of Datalog+ RuleML 1.01. For Deliberation RuleML 1.01 examples, see the instructive Datalog+ business rules and the entries of the Rulebase Competition 2014.

In this project, a translator will be built in XSLT 2.0 to transform a subset of Datalog+ RuleML 1.01/XML to the Nyaya (presentation/input) syntax. XSLT 2.0 processors already come with a parser for XML input and generate XML, HTML, or plain text output. For the project, this plain text will be Nyaya syntax, which can be formatted by preserving whitespace.

The translator will be developed and made available in Github on the Web, open source, so it can be pointed to from the RuleML site.

 

XSL Transformations (XSLT) Version 2.0:

http://www.w3.org/TR/xslt20/

Upgrading XSLT 1.0 to XSLT 2.0:
http://stackoverflow.com/questions/9387396/upgrading-xslt-1-0-to-xslt-2-0

 

Deliberation RuleML 1.01 (with Datalog+):

http://blog.ruleml.org/post/2a4779af-297e-4455-b7bf-af371576a884/

 

Instructive Datalog+ business rules (XML and presentation syntax):

http://deliberation.ruleml.org/1.01/exa/DatalogPlus/datalogplus_min.ruleml

 

Nyaya reference implementation:

https://bitbucket.org/giorsi/nyaya
(Examples: https://bytebucket.org/giorsi/nyaya/raw/4f4140387bd437216817c60ea44dc62ecb9154f5/irispm/examples/Tmod.txt)

 

Github (Learning): https://help.github.com/articles/good-resources-for-learning-git-and-github/
Github (RuleML): https://github.com/RuleML
Github (Demo): http://wiki.ruleml.org/index.php/Github_Demo

 

Tara Athan,

Harold Boley

Team 5 XSLT 2.0 Translation of Datalog+ RuleML 1.01/XML to a Subset of the TPTP Language

Meng Luan,
Changyang Liu

 

The current release for RuleML's condition=>conclusion rules, Deliberation RuleML 1.01, has its focus on the three defining Datalog+ extensions of rule conclusions/heads: Existential, Equality, and Integrity Rules. Thousands of Problems for Theorem Provers (TPTP) is a library of test problems for Automated Theorem Proving (ATP) systems, which has a standard language for coding (KB and query) input/output that is used for the annual CADE ATP System Competition (CASC). The TPTP language can be employed to target multiple online ATP engines, which can process the Datalog+ subset of RuleML 1.01. For Deliberation RuleML 1.01 examples, see the instructive Datalog+ business rules and the entries of the Rulebase Competition 2014. Three Datalog+ business rules exemplifying the three defining extensions in a subset of TPTP can be coded thus ("=>" is the 'forward' notation for rules; "!" and "?" indicate universal and existential quantification, respectively):


fof(clauseExistential,axiom,(
    ! [X] : ( margaret = X  =>  ? [Y] : supervises(X,Y) )
	              )).
				  
fof(clauseEquality,axiom,(
    ! [X,Y,Z] : ( ( supervises(X,Z) & supervises(Y,Z) )  =>  X = Y )
	              )).
				  				  
fof(clauseIntegrity,axiom,(
    ! [X] : ( supervises(X,X)  =>  $false )
	              )).
	

In this project, a translator will be built in XSLT 2.0 to transform Datalog+ RuleML 1.01/XML to a subset of TPTP. XSLT 2.0 processors already come with a parser for XML input and generate XML, HTML, or plain text output. For the project, this plain text will be TPTP syntax, which can be formatted by preserving whitespace.

The translator will be developed and made available in Github on the Web, open source, so it can be pointed to from the RuleML site.

 

XSL Transformations (XSLT) Version 2.0:

http://www.w3.org/TR/xslt20/

Upgrading XSLT 1.0 to XSLT 2.0:
http://stackoverflow.com/questions/9387396/upgrading-xslt-1-0-to-xslt-2-0

 

Deliberation RuleML 1.01 (with Datalog+):

http://blog.ruleml.org/post/2a4779af-297e-4455-b7bf-af371576a884/

 

Instructive Datalog+ business rules (XML and presentation syntax):

http://deliberation.ruleml.org/1.01/exa/DatalogPlus/datalogplus_min.ruleml

 

Full TPTP syntax (in BNF):

http://www.cs.miami.edu/~tptp/TPTP/SyntaxBNF.html
(Example for needed fof subset: http://www.cs.miami.edu/~tptp/TPTP/QuickGuide/Problems.html)

 

Online ATP engines:

http://www.cs.miami.edu/~tptp/cgi-bin/SystemOnTPTP

 

Github (Learning): https://help.github.com/articles/good-resources-for-learning-git-and-github/
Github (RuleML): https://github.com/RuleML
Github (Demo): http://wiki.ruleml.org/index.php/Github_Demo

 

 

 

 


Maintained by Harold Boley