RuleML: Markup von Regelwerken im Semantischen Web (Markup of Rule Systems in the Semantic Web) Harold Boley, DFKI GmbH Online 2002, Düsseldorf, January.

Slides:



Advertisements
Similar presentations
XML: Extensible Markup Language
Advertisements

ModelicaXML A Modelica XML representation with Applications Adrian Pop, Peter Fritzson Programming Environments Laboratory Linköping University.
1 Overview XML crash course –HTML vs. XML –pure XML data model (XML = linear syntax for trees) XML Schema Rubin Landau, Bertram Ludaescher, Richard Marciano,
1 COS 425: Database and Information Management Systems XML and information exchange.
Cornell CS 502 More XML XML schema, XPATH, XSLT CS 502 – Carl Lagoze – Cornell University.
XML –Query Languages, Extracting from Relational Databases ADVANCED DATABASES Khawaja Mohiuddin Assistant Professor Department of Computer Sciences Bahria.
XML Primer. 2 History: SGML vs. HTML vs. XML SGML (1960) XML(1996) HTML(1990) XHTML(2000)
Introducing XHTML: Module B: HTML to XHTML. Goals Understand how XHTML evolved as a language for Web delivery Understand the importance of DTDs Understand.
1 Advanced Topics XML and Databases. 2 XML u Overview u Structure of XML Data –XML Document Type Definition DTD –Namespaces –XML Schema u Query and Transformation.
Introducing HTML & XHTML:. Goals  Understand hyperlinking  Understand how tags are formed and used.  Understand HTML as a markup language  Understand.
4/20/2017.
Metadata Standards and Applications 4. Metadata Syntaxes and Containers.
Knowledge Mediation in the WWW based on Labelled DAGs with Attached Constraints Jutta Eusterbrock WebTechnology GmbH.
RDF (Resource Description Framework) Why?. XML XML is a metalanguage that allows users to define markup XML separates content and structure from formatting.
The RuleML Initiative, July/August 2001 International Semantic Web Working Symposium SWWS July - 1 August 2001, Stanford, California, USA Harold.
22-Sep-06 CS6795 Semantic Web Techniques 0 Horn Logic Markup Languages.
Lecture 21 XML querying. 2 XSL (eXtensible Stylesheet Language) In HTML, default styling is built into browsers as tag set for HTML is predefined and.
Lecture 6 of Advanced Databases XML Schema, Querying & Transformation Instructor: Mr.Ahmed Al Astal.
CS 6795 SEMANTIC WEB TECHNIQUES TEAM6: HAWRA BADER ALSEEF JEEVAN REDDY KODUR 19 NOV, 2012.
XML CPSC 315 – Programming Studio Fall 2008 Project 3, Lecture 1.
XP 1 CREATING AN XML DOCUMENT. XP 2 INTRODUCING XML XML stands for Extensible Markup Language. A markup language specifies the structure and content of.
WORKING WITH XSLT AND XPATH
XML A Single Entity. xml a single entity Objectives Objectives :  understand the data model  describe the XML Document  describe the XML Schema  describe.
The 7th International Web Rule Symposium: Research Based and Industry Focused (RuleML 2013) July 11-13, 2013, Seattle, USA.
18-Sep-14 CS6795 Semantic Web Techniques 0 Extensible Markup Language.
1 CIS336 Website design, implementation and management (also Semester 2 of CIS219, CIS221 and IT226) Lecture 6 XSLT (Based on Møller and Schwartzbach,
What is XML?  XML stands for EXtensible Markup Language  XML is a markup language much like HTML  XML was designed to carry data, not to display data.
Chapter 27 The World Wide Web and XML. Copyright © 2004 Pearson Addison-Wesley. All rights reserved.27-2 Topics in this Chapter The Web and the Internet.
1 RDF/RuleML Interoperability W3C Workshop on Rule Languages for Interoperability Position Paper, April 2005 Authors: Harold Boley 1, Jing Mei 2,
XML A web enabled data description language 4/22/2001 By Mark Lawson & Edward Ryan L’Herault.
David Hirtle Coop student, NRC IIT e-Business December 2, 2003 Object-Oriented RuleML Re-Modularized and XML Schematized via Content Models.
Of 33 lecture 3: xml and xml schema. of 33 XML, RDF, RDF Schema overview XML – simple introduction and XML Schema RDF – basics, language RDF Schema –
XML 2nd EDITION Tutorial 1 Creating An Xml Document.
Introduction to XML This presentation covers introductory features of XML. What XML is and what it is not? What does it do? Put different related technologies.
XP 1 Creating an XML Document Developing an XML Document for the Jazz Warehouse XML Tutorial.
Accessing Data Using XML CHAPTER NINE Matakuliah: T0063 – Pemrograman Visual Tahun: 2009.
1 The OO jDREW Reference Implementation of RuleML RuleML-2005, November 2005 Marcel Ball 1, Harold Boley 2, David Hirtle 1,2, Jing Mei 1,2, Bruce.
Chapter 27 The World Wide Web and XML. Copyright © 2004 Pearson Addison-Wesley. All rights reserved.27-2 Topics in this Chapter The Web and the Internet.
Semantically Processing The Semantic Web Presented by: Kunal Patel Dr. Gopal Gupta UNIVERSITY OF TEXAS AT DALLAS.
The eXtensible Markup Language (XML). Presentation Outline Part 1: The basics of creating an XML document Part 2: Developing constraints for a well formed.
1 Tutorial 11 Creating an XML Document Developing a Document for a Cooking Web Site.
Programming Languages and Design Lecture 3 Semantic Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 1COMP9321, 15s2, Week.
RuleML Meets RDF: Triples, Rules, and Taxonomies Harold Boley*, NRC IIT e-Business Benjamin Grosof, MIT Sloan (with help from Bruce Spencer, Steve Ross-Talbot,
RuleML Rules Lite Harold Boley, NRC IIT e-Business Said Tabet, Macgregor Corp With Key Contributions from the Joint Committee DAML PI Meeting, Captiva.
From RuleML 0.88 to 0.89 Sublanguages Beyond Horn Logic ― Validation and Translation David Hirtle NRC-IIT, UNB April 21, 2005 Update: June 8, 2005.
University of Nottingham School of Computer Science & Information Technology Introduction to XML 2. XSLT Tim Brailsford.
The Rule Markup Initiative: RDF Relationships and DTD Modularization Harold Boley Benjamin Grosof Said Tabet Updated (8 Mar 2001) from talk at: RDF Interest.
RuleML: Data Model, Language Hierarchy, and Transformations Harold Boley, DFKI GmbH, Visiting Researcher at NRC IIT e-Business, Fredericton 2001 Seminar.
Raluca Paiu1 Semantic Web Search By Raluca PAIU
Working with XML. Markup Languages Text-based languages based on SGML Text-based languages based on SGML SGML = Standard Generalized Markup Language SGML.
1 RIF Design Roadmap Draft PM Harold Boley (NRC), Michael Kifer (Stony Brook U), Axel Polleres (DERI), Jos de Bruijn (DERI), Michael Sintek.
Of 35 lecture 17: semantic web rules. of 35 ece 627, winter ‘132 logic importance - high-level language for expressing knowledge - high expressive power.
RuleML for the Semantic Web Harold Boley OntoWeb Kick-off WorkshopOntoWeb Kick-off Workshop, Heraklion, Greece, June 2001 Revised: 17 July 2001 (joint.
 XML derives its strength from a variety of supporting technologies.  Structure and data types: When using XML to exchange data among clients, partners,
A Test Case Suite for Hornlog+ RuleML 1.01 A Test Case Suite for Hornlog+ RuleML 1.01 CS6795 Semantic Web Techniques Team 3: Zhenzhi Cui Radhika Yadav.
CHAPTER NINE Accessing Data Using XML. McGraw Hill/Irwin ©2002 by The McGraw-Hill Companies, Inc. All rights reserved Introduction The eXtensible.
XML Extensible Markup Language
XML Schema – XSLT Week 8 Web site:
XML Notes taken from w3schools. What is XML? XML stands for EXtensible Markup Language. XML was designed to store and transport data. XML was designed.
Rendering XML Documents ©NIITeXtensible Markup Language/Lesson 5/Slide 1 of 46 Objectives In this session, you will learn to: * Define rendering * Identify.
CH 15 XSL Transformations 1. Objective What is XSL? Overview of XSL transformations Understanding XSL templates Computing the value of a node with xsl:value-of.
XML: Extensible Markup Language
Querying and Transforming XML Data
XML QUESTIONS AND ANSWERS
XML in Web Technologies
Database Processing with XML
ece 720 intelligent web: ontology and beyond
Extensible Markup Language
More XML XML schema, XPATH, XSLT
Presentation transcript:

RuleML: Markup von Regelwerken im Semantischen Web (Markup of Rule Systems in the Semantic Web) Harold Boley, DFKI GmbH Online 2002, Düsseldorf, January 29 st, 2002

RuleML Online International Initiative RuleML The Rule Markup Initiative works towards W3C submission representing its various participants from industry and academiaRule Markup Initiative First goal has thus been to provide modular system of RuleML sublanguages based on XML and RDF (Resource Description Framework)  This led to development of novel XML-RDF- integrating Web data model  On its basis, RuleML initially defined with hierarchy of DTDs, gradually redefined with XML Schema  To facilitate rule exchange, XSLT-based translators between RuleML and other rule languages have been specified

RuleML Online Web-Based Business Rules: Merchant-Customer Exchange Scenario (I) Merchant 1 Merchant m... Customer request rules on discounts etc. request rules on discounts etc. preselect m best merchants (e.g., using purchasing rules)

RuleML Online Merchant 1 Merchant m... Customer publish rulebase 1 publish rulebase m compare, instantiate, and run rulebases Web-Based Business Rules: Merchant-Customer Exchange Scenario (II) translate to standard format (e.g., RuleML)

RuleML Online Merchant i Customer order from Merchant i select best deal (e.g., discount) Web-Based Business Rules: Merchant-Customer Exchange Scenario (III)

RuleML Online Web-Based Business Rules: Formalize Natural Language in Horn Logic Prolog-like formalization (with XML underpinnings): ''The discount for a customer buying a product is 5.0 percent if the customer is premium and the product is regular.'' ''The discount for a customer buying a product is 7.5 percent if the customer is premium and the product is luxury.''... English Business Rules:

RuleML Online Semantics and Pragmatics (Implementation) Original Web: Distributed development, usage and maintenance of HTML-based informal documents Semantic Web: Employ same infrastructure for formal specifications or declarative programs Which Logics/Languages? Uniform semantic/pragmatic foundation potential: – Description Logic: RDF Schema, DAML+OILfor taxonomies – Horn Logic: Prolog, RuleMLfor axioms for ontologies

RuleML Online Syntax Syntactic underpinnings, however, will most likely come from Extensible Markup Language (XML) Fortunately, translators between Prolog and XML syntaxes can be defined Can also form basis for semantic/pragmatic technology transfers between Prolog and XML Current talk will exemplify this using XML syntax of Rule Markup Language (RuleML), Version 0.8

RuleML Online Unify XML and RDF XML based on, possibly attributed, left-to-right ordered, node-labeled trees, reminiscent of parse (syntax) trees RDF based on directed, arc-labeled (unordered) graphs with two kinds of nodes, resources and literals, the latter not allowing outgoing arcs XML and RDF have different data models: With the advent of the Semantic Web a unified data model would be advantageousSemantic Web

RuleML Online Problem with Positional XML Markup For marking up 3 2, an XML element powform might be employed, with the positional convention ''First child is base, second child is exponent'' But without some kind of 'signature declaration' this markup could instead mean 2 3 according to a ''First child is exponent, second child is base'' convention Analogous conventions for N-ary operators (N >2) need to disambiguate a combinatorially exploding number of possible interpretations Without extra information the positions of 'roles' ( powform : base and exponent) of children cannot in general be determined from some such markup

RuleML Online Solution with Non-Positional RDF Markup In 'object-centered' modeling and 'feature'/'frame' logics the way out is representing powers and other operators in a non-positional manner, making them objects with explicitly indicated roles for their arguments In Frame/Horn-logic-integrating F-Logic, developed for RDF in TRIPLE, our example could thus be represented as a fact: powform [base -> 3 : integer; exponent -> 2 : integer].

RuleML Online Non-Positional RuleML Solution Paralleling this in RuleML, we complement XML 'type tags' by distinguished, RDF-like 'role tags' Generalizing XML attributes, roles will allow values that themselves contain markup In our example we thus use powform with _base and _exponent subelements, where the leading '' _ '' distinguishes roles: 3 2

RuleML Online Role Commutativity There are two correctly prefixed powform -child permutations, which we regard as algebraically equivalent commutative markups: =

RuleML Online Graph Identity and Markup Equation Graph-theoretically, our data model permits trees with unordered arcs labeled by their roles, here base and exponent, and nodes as introduced earlier: powform 32 integer baseexponent Generally, for trees branching order of (explicitly labeled) arcs is immaterial and for markups equation holds: =

RuleML Online Order-Labeled Combination For the sequence 3, 9 combined with the formula 3 2 : rational powseqform 3 rational 32 integer baseexponent

RuleML Online OrdLab Tree Graph-theoretically, positional children become left-to- right-ordered arcs, here targeting the rational s 3 and 9, while role children become labels on un- ordered arcs, here targeting the integer s 3 and 2 (different arrows emphasize ordered vs. labeled arcs): 9 rational powseqform 3 rational 32 integer baseexponent

RuleML Online Relation Applications in RuleML A predicate or relation symbol will in RuleML be a rel element. The application of an _opr -role- embedded relation symbol to a sequence of terms is marked by an atom element in RuleML Example: travel application travel(john,channel-tunnel) to two individual constants will thus be: travel john channel-tunnel

RuleML Online Facts in RuleML Horn fact in RuleML is asserted as a fact element that possesses exactly one subelement -- the _ head -role-embedded atom element Example: travel fact (containing travel application) travel(john,channel-tunnel). becomes: travel john channel-tunnel Tree structure? fact Subtree _head XML fact head Subtree OrdLab

RuleML Online Derivation Rules in RuleML: Source Horn rule in RuleML is asserted as an imp element that has two subelements -- a _ head -role atom element augmented (either to its right or left) by a _ body -role atom or and element Example: travel rule (Datalog) travel(Someone,channel-tunnel) :- carry(eurostar,Someone). rewritten in RuleML thus:

RuleML Online Derivation Rules in RuleML: Markup travel someone channel-tunnel carry eurostar someone

RuleML Online Derivation Rules in RuleML: Tree Graph-theoretically, RuleML clauses are again OrdLab trees, as illustrated for this rule:

RuleML Online The RuleML DTD/Schema Hierarchy urc-bin-data-ground-fact urc-bin-data-ground-log urc-bin-datalog bin-datalogurc-datalog ur-datalog ur-hornlog ur-equalog hornlog equalog datalog ur Rooted DAG will be extended with branches for further sublanguages URL/URI-like ‘ur’-objects ruleml RDF-like triples ur-datalog = join(ur,datalog) Focus on 12 sublanguages of derivation rule modules: All except the 'UR' (URL/URI) group correspond to well-known rule systems, with formal semantics

RuleML Online Derivation Rules in UR-Datalog: Indexing travel someone channel-tunnel carry eurostar someone

RuleML Online Modular Sublanguage Composition Each node in above hierarchy, e.g. 'hornlog', is a DTD/Schema that defines syntax of this sublanguage: Knowledge bases can refer to most specific DTD/Schema to maximize interoperability Non-leaf nodes are composed of the -- possibly modified -- node(s) reachable via outgoing link(s) below plus possibly some extra definition parts Example:'hornlog' is composed of a -- slightly modified -- 'datalog' plus complex terms; 'datalog' itself contains 'bin-datalog', etc.

RuleML Online From DTD to XML Schema: rulebase s DTD line (XML in EBNF-like SGML subset): Schema part (official way to define XML in XML):...

RuleML Online From DTD to XML Schema: imp lications DTD line (permuted _head / _body sequences): Schema part (unordered xsd:all set):... <xsd:element name="_head" type="_headType" minOccurs="1" maxOccurs="1"/> <xsd:element name="_body" type="_bodyType" minOccurs="1" maxOccurs="1"/>...

RuleML Online Extending Datalog to Full Prolog Remaining essential lines of 'datalog' DTD:'datalog' DTD We are currently investigating for XML Schema version the issue of composition mechanisms better than conditional DTD parts, involving xsd:redefineXML Schema versionissue of composition mechanisms better than conditional DTD parts Extended atom plus cterm lines for 'hornlog' DTD:'hornlog' DTD | cterm

RuleML Online HTML Rendering of Business Rules Before our XML-to-XML roundtrip: RFML version, via XML-to-HTML stylesheet rfmlsp, will lead to font-and-color-coded HTML Prolog version, rendered in a browser (first line is sample rule): rfmlsp

RuleML Online XSL Transformations from and to RuleML Exemplary pair of 'inverse' translators ('stylesheets') exporting/importing markup between RuleML and RFML (Relational-Functional Markup Language),'inverse' translatorsRelational-Functional Markup Language where only the logic part is needed for Prolog: Export via ruleml2rfml.xsl : ruleml2rfml.xsl Stylesheet translates Hornlog RuleML rulebase to corresponding RFML program Import via rfml2ruleml.xsl : rfml2ruleml.xsl Stylesheet translates a Hornlog RFML program to corresponding RuleML rulebase

RuleML Online Bi-Transforming Discount Sample Rule ''The discount for a customer buying a product is 5.0 percent if the customer is premium and the product is regular.'' discount customer product 5.0 percent premium customer regular product discount customer product 5.0 percent premium customer regular product ruleml2rfml.xsl rfml2ruleml.xsl

RuleML Online Export from RuleML: Tree Rewriting (I) rulebase Subtree... rfml... Subtree What does this XML processing look like in XML?

RuleML Online Export from RuleML: Implementation (I) First XSLT rule ('template') matches document root '' / '' followed by rulebase element; it 'recursively' maps ('applies') all matching templates to all rulebase subelements and generates rfml element from result: <!-- process rulebase and position fact/imp transformers -->

RuleML Online Export from RuleML: Tree Rewriting (II) fact Subtree _head hn Subtree

RuleML Online Export from RuleML: Implementation (II) Second template matches fact element, does apply-templates over its _head in mode pattop (for RFML's op erator patt erns), and generates hn element from result: <!-- process fact, transforming it to hn clause without premises --> <xsl:apply-templates select="_head" mode="pattop"/>

RuleML Online Export from RuleML: Tree Rewriting (III) atom PCDATA _opr rel Argterm... pattop PCDATA con... Argterm atom Argterm... PCDATA _opr rel Implementation details: ruleml2rfml.xsl ruleml2rfml.xsl

RuleML Online Import to RuleML: Implementation (I) First template is exact 'inverse' of the first ruleml2rfml template: <!-- process rfml program and position hn transformer -->

RuleML Online Import to RuleML: Implementation (II) Second template matches hn element, and, for fact case, expects one child; fact element with _ head role is generated from result of apply- templates over the pattop :...

RuleML Online Web Technology for Prolog Prepared semantic-pragmatic XML-Prolog transfers using XML syntax: XML-RDF-integrating data model used as basis for DTD/Schema definitions of Prolog on the Web Started semantic-pragmatic transfers in direction XML-to-Prolog by specifying (semantics-preserving) XSLT-based translators RuleML  RFML It is now possible to build and exchange Prolog knowledge bases over the Web

RuleML Online Web Technology for General Use : DTDs and XSLT are Still Most Practical, XML Schema and XQuery are Promising Demonstrated practical use of W3C technologies such as DTDs and XML Schema as well as XSLT On the other hand hinted at a few problems with current version of XML Schema, hoping that more expressive version will be available in future Functional and logic programmers may also have wondered whether XSLT-based translators could be specified more concisely in future version of XSLT Perhaps XQuery can act as incentive towards formal semantics of XML queries and transformationsXQuery

RuleML Online Prolog Technology for the Web Corresponding transfers in Prolog-to-XML direction have already started with Mandarax, j-DREW, and other RuleML engines based on Prolog technologyRuleML engines based on Prolog technology It may also be useful to implement (orthogonalized versions of) XML Schema, XSLT, etc. in (RuleML and) Prolog to explore limits of expressiveness that can be realized formally and efficiently Side-effect of this work could be translators between XML syntax and more concise Prolog syntax for W3C languages such as XML Schema and XSLT