a translator framework for the interoperation of graph...

28
Introduction Combined Interoperation/Portability Methods Use Cases A Translator Framework for the Interoperation of Graph plus Relational Data and Rules on the Web AWoSS 2014 Saint John, NB, Canada, February 24, 2014 Gen Zou, Harold Boley Faculty of Computer Science, University of New Brunswick, Fredericton, Canada 1 / 28

Upload: vanhanh

Post on 06-Feb-2018

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

A Translator Framework for the Interoperationof Graph plus Relational Data and Rules

on the WebAWoSS 2014

Saint John, NB, Canada, February 24, 2014

Gen Zou, Harold Boley

Faculty of Computer Science,University of New Brunswick, Fredericton, Canada

1 / 28

Page 2: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Outline

1 Introduction

2 Combined Interoperation/Portability MethodsObject-Relational Interoperation FrameworkPortability ArchitectureEvaluation

3 Use Cases

2 / 28

Page 3: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Outline

1 Introduction

2 Combined Interoperation/Portability MethodsObject-Relational Interoperation FrameworkPortability ArchitectureEvaluation

3 Use Cases

3 / 28

Page 4: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Rule Languages

Along with ontologies, rules provide foundation ofknowledge representation and problem solvingUsed to express

Knowledge for ontology/rule-based data accessDomain-specific (e.g., biomedical) concept definitionsAssociations among dataBusiness logicsPrivacy/security/trust policiesLegal norms...

Will enable Semantic Analytics of Big Data

4 / 28

Page 5: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Rule Languages

Paradigms for modeling entity dependencies:RelationalGraph (Object-Centered)Combined

Since Knowledge Bases (KBs) have been developed inlanguages following all three paradigms, cross-paradigmtranslation, integration, and reuse is often necessaryNeed for an interoperation language and technology:Positional-Slotted Object-Applicative (PSOA) RuleMLNaturally combinable with portability technology:Platform-independent implementation of PSOA RuleML

5 / 28

Page 6: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Hypergraph Example – Relational Betweenness

betweenRel

canadapacific atlantic

usa

mexico

Directed hyperarcs cut through intermediate nodes (cf. Grailog)

FactsbetweenRel(pacific, canada, atlantic)betweenRel(canada, usa,mexico)

6 / 28

Page 7: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Graph Example – Object-Centered Betweenness

betweenObj

b0

b1

canadapacific atlantic

usa

mexico

outer1

inner

outer2

outer1

inner

outer2

Facts“#” denotes “∈” for class membership; “→” associates a slot name with its filler

b0#betweenObj(outer1 → pacific; inner → canada; outer2 → atlantic)b1#betweenObj(outer1 → canada; inner → usa; outer2 → mexico)

7 / 28

Page 8: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Example – Integrated Betweenness (Enriched)

betweenObjRel

b0

b1

2

canadapacific atlantic

usa

mexico

westEast

northSouth

dim

orient

dim

orient

Factsb0#betweenObjRel(pacific, canada, atlantic; dim → 2; orient → westEast)b1#betweenObjRel(canada, usa,mexico; dim → 2; orient → northsouth)

8 / 28

Page 9: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Relational Rule Languages

Widely used for relational DBs (SQL views) and KBs,representing information in classical logicModel dependencies among n entities as an n-arypredicate applied to an ordered sequence of n arguments,called positional argumentsLanguages: Common Logic, Prolog, TPTP-FOF, ...

9 / 28

Page 10: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Graph (Object-Centered) Rule Languages

Receive increasing attention because of expandingresearch and development in linked data on the Web,graph/‘triple’ stores, and big data in NoSQL DBsEach object is represented by a unique Object IDentifier(OID), typed by a class, and described by an unorderedcollection of slots, each being a pair of a name and a fillerAn OID-describing slotted term in AI is called a frame(represents a resource/‘subject’-describing property list onthe Semantic Web)Languages: RDF, N3, ...

10 / 28

Page 11: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Rule Languages

Combine the object-centered and relational paradigms,either in a heterogeneous or a homogeneous wayHeterogeneous

Allow atomic formulas in both relational and object-centeredforms, even mixed in the same ruleLanguages: F-logic and RIF

HomogeneousIntegrate relational and object-centered atomic formulasinto a unified formLanguage: PSOA RuleML

11 / 28

Page 12: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

PSOA RuleML

Integrates relational and object-centered modelingGeneralizes F-logic, RIF-BLD, and POSLUses positional-slotted object-applicative (psoa) terms,permitting a relation application to have an OID – typed bythe relation – and, orthogonally, its arguments to bepositional or slotted.General case (multi-tuple):o#f([t1,1 ... t1,n1] ... [tm,1 ... tm,nm] p1->v1 ... pk->vk)

Special cases (single-tuple brackets and zero-argumentparentheses optional):Combined: o#f([t1 ... tn] p1->v1 ... pk->vk)Positional: o#f([t1 ... tn])Slotted: o#f( p1->v1 ... pk->vk)Member-only: o#f()

12 / 28

Page 13: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Example of Querying a PSOA Fact and Rule

KB:b1#betweenObjRel(canada usa mexico

dim->2 orient->northSouth)

Forall ?out1 ?in ?out2 ?b(

?in#GeoUnit(neighborNorth->?out1neighborSouth->?out2) :-

?b#betweenObjRel(?out1 ?in ?out2orient->northSouth)

)

English Query: “Which GeoUnit has Canada as its northern neighbor?”Query: ?X#GeoUnit(neighborNorth->canada)Answer: ?X=usa

TPTP version in Common Logic would contribute to COLORE

13 / 28

Page 14: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Semantics-Preserving Translation

For a translation ϕL1,L2 from the source language L1 to thetarget language L2:

Sound: all entailments that hold after translation to L2already hold in L1Complete: all entailments in L1still hold after translation to L2Semantics preserving = sound + completeSemantics-preserving translation desired forrealizing L1 via L2:

KB1

Q1

KB2

Q2

`1 `2

ϕL1,L2

ϕL1,L2

14 / 28

Page 15: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

Outline

1 Introduction

2 Combined Interoperation/Portability MethodsObject-Relational Interoperation FrameworkPortability ArchitectureEvaluation

3 Use Cases

15 / 28

Page 16: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

Outline

1 Introduction

2 Combined Interoperation/Portability MethodsObject-Relational Interoperation FrameworkPortability ArchitectureEvaluation

3 Use Cases

16 / 28

Page 17: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

System of Translation Pathways

Use the homogeneous object-relational languagePSOA RuleML as the interchange languageImplement unidirectional or bidirectional translationsbetween PSOA RuleML and

Relational languages: TPTP and the Horn subset of PrologObject-centered language: N3Heterogenous object-relational language: RIF

17 / 28

Page 18: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

General Translation Steps

Translations with PSOA RuleML as the source languageTransform the source KB into a normalized form with onlyelementary constructs, using a composition oftransformations staying within PSOA RuleML

ObjectificationSlotribution/tupributionSkolemizationUnnesting

Map elementary constructs into the target languageTranslations with PSOA RuleML as the target language

Mostly syntactic translation, target different subsets ofPSOA RuleML

18 / 28

Page 19: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

General Translation Steps

Each translation is a recursive algorithm τ that can bespecified as a mapping table

Example of τpsoa: Mapping from PSOA RuleML to TPTP

PSOA/PS Constructs TPTP Constructso#f() member(τpsoa(o), τpsoa(f))

AND(f1 ... fn) (τpsoa(f1) & ... & τpsoa(fn))ϕ :- ψ τpsoa(ψ)=> τpsoa(ϕ)

... ...

19 / 28

Page 20: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

Outline

1 Introduction

2 Combined Interoperation/Portability MethodsObject-Relational Interoperation FrameworkPortability ArchitectureEvaluation

3 Use Cases

20 / 28

Page 21: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

Portability Architecture

Realizing increasing subsets of PSOA RuleML semanticsin portablility architecture: Framework for translators andtranslator-based reasoning systems

Instantiated in ANTLR (ANother Tool for LanguageRecognition) for executable translators implementingmapping tables, e.g. targeting L2 = TPTP

21 / 28

Page 22: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

Portability Architecture

ANTLR-based Java library of translatorsParsers/Generators: between concrete-syntax strings andabstract-syntax trees (ASTs)Transformers: from ASTs to ASTs

Service-based composition technology for translatorsalong the pathways

22 / 28

Page 23: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

Outline

1 Introduction

2 Combined Interoperation/Portability MethodsObject-Relational Interoperation FrameworkPortability ArchitectureEvaluation

3 Use Cases

23 / 28

Page 24: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Object-Relational Interoperation FrameworkPortability ArchitectureEvaluation

Evaluation

Evaluation metrics for soundness and completeness,analogous to, respectively, precision and recall ininformation retrievalTest Suite

Contains existing independent test cases, e.g. fromhttp://www.w3.org/2005/rules/wiki/Category:Test_Case

and test cases developed by ourselves, athttp://wiki.ruleml.org/index.php/PSOA_RuleML

Also contains new use cases (following slides)Covers different language and translator features

24 / 28

Page 25: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Outline

1 Introduction

2 Combined Interoperation/Portability MethodsObject-Relational Interoperation FrameworkPortability ArchitectureEvaluation

3 Use Cases

25 / 28

Page 26: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Ongoing: Geospatial Rules

Extend our running example by formalizing and integratingfurther geospatial knowledgeFor each relation/class, determine most suitable paradigm(relational-only, object-centered-only, or object-relationalcombined) along with its argument treatmentEnhance geospatial data with knowledge in a Rule-BasedData Access (RBDA) scenario, e.g. for WSL forestry data

26 / 28

Page 27: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Planned: Financial Business Rules

Develop KB with business rules in PSOA RuleML for thefinancial management of organizations, e.g. RuleML Inc.Data from financial documents and electronic financialstatement spreadsheets will be mapped to PSOA factsOIDs are used to connect metadata (KB) and paperdocuments. Can also be used as dereferenceable URLsfor scanned versions of documents.A systematics of financial business rules will be explored(e.g., validation rules for transaction plausibility checks,transformation rules for currency conversion, heuristicrules for checking-to-savings transfers)

27 / 28

Page 28: A Translator Framework for the Interoperation of Graph ...boley/talks/InteropGraphRel-AWoSS2014-talk.pdf · A Translator Framework for the Interoperation of Graph plus Relational

IntroductionCombined Interoperation/Portability Methods

Use Cases

Demo

PSOATransRun available online:http://psoa.ruleml.cloudbees.net

Try test cases and send feedbackhttp://wiki.ruleml.org/index.php/PSOA_RuleML

28 / 28