CS 6975 Web Semantics Normalizers for RuleML 1.0 in XSLT 2.0 Nada Alsalmi ‍ Leah Bidlake ‍ Ao Cheng ‍ Thea Gegenberg ‍ Emily Wilson Instructor: Dr. Harold.

Slides:



Advertisements
Similar presentations
XML-XSL Introduction SHIJU RAJAN SHIJU RAJAN Outline Brief Overview Brief Overview What is XML? What is XML? Well Formed XML Well Formed XML Tag Name.
Advertisements

Chungnam National University DataBase System Lab
What is XML? a meta language that allows you to create and format your own document markups a method for putting structured data into a text file; these.
HTML Overview - Cascading Style Sheets (CSS). Before We Begin Make a copy of one of your HTML file you have previously created Make a copy of one of your.
ECE Application Programming Instructor: Dr. Michael Geiger Spring 2012 Lecture 31: PE5.
1 XSLT – eXtensible Stylesheet Language Transformations Modified Slides from Dr. Sagiv.
Introduction to XSLT. What is XML? Design Goals of XML XML Format XML Declaration ElementsAttributes.
+ XSL eXtensible Stylesheet Language. + 2 XML Lecture Adapted from the work of Prof Mark Baker ACET, University of Reading.
1 CP3024 Lecture 9 XML revisited, XSL, XSLT, XPath, XSL Formatting Objects.
XML Unit 6 October 31. XML, review XML is used to markup data Used to describe information Uses tags like HTML –But all tags are user-defined –Must be.
XSLT Stylesheets Some more advanced examples (adapted from the Edinburgh LT site)
ModelicaXML A Modelica XML representation with Applications Adrian Pop, Peter Fritzson Programming Environments Laboratory Linköping University.
We Need Smart XML Processing HTML has ultra-complex semantics XML has no semantics Something must bridge the gap  A program ?  A clear set of data semantics?
XSL Transformations (XSLT) Meghasyam Bokam April’1 st, 2002.
1 Copyright (c) [2000]. Roger L. Costello. All Rights Reserved. Using XSLT and XPath to Transform XML Documents Roger L. Costello XML Technologies.
XML Language Family Detailed Examples Most information contained in these slide comes from: These slides are intended.
Cornell CS 502 More XML XML schema, XPATH, XSLT CS 502 – Carl Lagoze – Cornell University.
XML Technologies and Applications Rajshekhar Sunderraman Department of Computer Science Georgia State University Atlanta, GA 30302
Object Oriented Programming III1 XSLT Processing XML using XSLT Using XPath.
September 15, 2003Houssam Haitof1 XSL Transformation Houssam Haitof.
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.
MC 365 – Software Engineering Presented by: John Ristuccia Shawn Posts Ndi Sampson XSLT Introduction BCi.
Manohar – Why XML is Required Problem: We want to save the data and retrieve it further or to transfer over the network. This.
Introduction to XSLT & its use in Grainger Library full-text & metadata projects Thomas G. Habing Grainger Engineering Library Presentation to ASIS&T,
Sheet 1XML Technology in E-Commerce 2001Lecture 6 XML Technology in E-Commerce Lecture 6 XPointer, XSLT.
Lecture 6 of Advanced Databases XML Schema, Querying & Transformation Instructor: Mr.Ahmed Al Astal.
XML for E-commerce III Helena Ahonen-Myka. In this part... n Transforming XML n Traversing XML n Web publishing frameworks.
XP New Perspectives on XML Tutorial 6 1 TUTORIAL 6 XSLT Tutorial – Carey ISBN
WORKING WITH XSLT AND XPATH
1 CIS336 Website design, implementation and management (also Semester 2 of CIS219, CIS221 and IT226) Lecture 6 XSLT (Based on Møller and Schwartzbach,
Processing of structured documents Spring 2002, Part 2 Helena Ahonen-Myka.
 2004 Prentice Hall, Inc. All rights reserved. 1 Chapter 34 - Case Study: Active Server Pages and XML Outline 34.1 Introduction 34.2 Setup and Message.
O Supervisor : Dr. Harold Boley o Advisor : Dr. Tara Athan o Team : Simranjit Singh Pratik Shah Bijiteshwar R Aayush.
ECA 228 Internet/Intranet Design I XSLT Example. ECA 228 Internet/Intranet Design I 2 CSS Limitations cannot modify content cannot insert additional text.
CITA 330 Section 6 XSLT. Transforming XML Documents to XHTML Documents XSLT is an XML dialect which is declared under namespace "
XSLT Kanda Runapongsa Dept. of Computer Engineering Khon Kaen University.
Transforming Documents „a how-to of transforming xml documents“ Lecture on Walter Kriha.
CIS 375—Web App Dev II XSL. 2 XSL Introduction XSL stands for _____________________________. XSL is the language used for manipulating and displaying.
Lecture 11 XSL Transformations (part 1: Introduction)
XSLT Introduction. XSLT is the transformation part of XSL An XSLT file contains rules which are applied against and XML file to produce an output Outputs.
IS1825: Developing Multimedia Applications for Business Lecture 1: Introduction to CSS Rob Gleasure
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.
 2002 Prentice Hall, Inc. All rights reserved. 1 Chapter 12 – XSL: Extensible Stylesheet Language Transformations (XSLT) Outline 12.1Introduction 12.2Setup.
Accessing Data Using XML CHAPTER NINE Matakuliah: T0063 – Pemrograman Visual Tahun: 2009.
1 Overview of XSL. 2 Outline We will use Roger Costello’s tutorial The purpose of this presentation is  To give a quick overview of XSL  To describe.
Cascading Style Sheets CSS. Source W3Schools
1 Copyright (c) [2000]. Roger L. Costello. All Rights Reserved. Using XSLT and XPath to Transform XML Documents Roger L. Costello XML Technologies.
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 1COMP9321, 15s2, Week.
David Orchard W3C Lead BEA Systems Web service and XML Extensibility and Versioning.
More XML XPATH, XSLT CS 431 – February 23, 2005 Carl Lagoze – Cornell University.
XP New Perspectives on XML, 2 nd Edition Tutorial 7 1 TUTORIAL 7 CREATING A COMPUTATIONAL STYLESHEET.
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.
XSLT: How Do We Use It? Nancy Hallberg Nikki Massaro Kauffman.
#N14 Pattern Value (aka Substring attribute) SDD 1.1 Initial Discussion XXX = [Proposal | Initial Discussion | General Direction Proposal]
 XML derives its strength from a variety of supporting technologies.  Structure and data types: When using XML to exchange data among clients, partners,
Jackson, Web Technologies: A Computer Science Perspective, © 2007 Prentice-Hall, Inc. All rights reserved Chapter 7 Representing Web Data:
1 Extensible Stylesheet Language (XSL) Extensible Stylesheet Language (XSL)
XML Introduction to XML Extensible Markup Language.
XML Schema – XSLT Week 8 Web site:
1 XSL Transformations (XSLT). 2 XSLT XSLT is a language for transforming XML documents into XHTML documents or to other XML documents. XSLT uses XPath.
LegalRuleML Metamodel Tara Athan, Harold Boley, Guido Governatori, Monica Palmirani, Adrian Paschke, Adam Wyner July 13, 2013 RuleML th International.
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.
Building CSS in Visual Studio Slide 2 Introduction Using the different HTML (and other) Visual Studio Editors CSS tools.
XSLT: The XML transformation language
Unit 4 Representing Web Data: XML
LegalRuleML Metamodel
Chapter 7 Representing Web Data: XML
More XML XML schema, XPATH, XSLT
Unit 6 - XML Transformations
Presentation transcript:

CS 6975 Web Semantics Normalizers for RuleML 1.0 in XSLT 2.0 Nada Alsalmi ‍ Leah Bidlake ‍ Ao Cheng ‍ Thea Gegenberg ‍ Emily Wilson Instructor: Dr. Harold Boley Advisor: Dr. Tara Athan

Overview Introduction Comparison to previous Normalizer Our 4-Phase Normalizer: ▫Phase 1 – Adding Role Tags ▫Phase 2 – Canonical Ordering ▫Phase 3 – Making attribute default values explicit ▫Phase 4 – Pretty Print Demo

Introduction Work Flow diagram:

Multiple Phases within a Single Stylesheet Within a single stylesheet, a pipeline is expressed as a series of variables:

Comparison to Derek’s & David’s Normalizer Performed transformation in 1 Pass/Phase … …

PHASE 1

RuleML 0.91 to 1.0 All references for namespace and schema locations changed to: Output from style sheet has RuleML Version 1.0 as default namespace.

RuleML 0.91 to 1.0 Changes to names of role tags: Children of ▫Role tag replaced with ▫Role tag replace with Children of ▫Role tag replaced with ▫Role tag replace with Name of interpretation attribute: changed

RuleML 0.91 to 1.0 – Other Changes Webizing attribute: changed Name of type tag for unified term: ▫ changed to Name of type tag for constant term: ▫ changed to Content of ▫Role tag wraps all content of

Phase 1 – Add Missing Edge Stripes Edge is also referred to as role tag or method tag. Match the elements using the parent tag. Determine if the children were already wrapped with the appropriate tag. Wrap the ‘naked’ children with the appropriate role tag. For some elements an index attribute was also added.

Phase 1 Each time an element was matched there was a test to determine if the role tags were already present for any or all of the children. In some cases the children may already be wrapped in role tags but in a different order, which had to be tested for. Test cases developed including: relaxed, partially normalized and fully normalized.

Phase 1 Adding missing stripes to Implies and Entails – difficult because of the number of possibilities of missing, stripes. As suggested by Tara Athan, our advisor, this was simplified by assuming that the and are in canonical position already if stripes are skipped.

Phase 1 – Example 1 st child wrapped with 2 nd child wrapped with Check for partially normalized: ▫If the 1 st child was already wrapped with then the 2 nd child has to be wrapped with

Phase 1: Example

Test CaseResults Relaxed:Normalized:

Test CaseResults Partially Normalized:Normalized:

Test CaseResults Partially Normalized:Normalized:

Test CaseResults Fully Normalized:Normalized:

PHASE 2 Canonical Ordering

Phases 2: Canonical Order Output Schema used to infer canonical ordering e.g.

Phase 2: Example

Phase 2: Example (cont.)

Phase 2: Example

Phase 2: Example (cont.) Before normalization: After normalization:

PHASE 3 Default Values  Treatment of attributes with default values  Remain the original instinct of input

Modes Phase 1, Phase2, Phase3 are independently implemented. Use the feature of “mode” from XSLT 2.0  Format the same Data differently in different Places  XSLT Element

Default ( yes | no ( yes | no bidirectional | forward | backward bidirectional | forward | backward ( no | yes ( 0.. | 1 ( no | yes ) List

Problems Then oxygen seemed to automatically put in all possible attributes listed with their default values. If list all the schemas in the ruleml file, i.e. Oxygen explicit copying of default attributes won’t happen if you do delete the attributes of the RuleML tag that specify the schema.

Results Ruleml File After normalized:

PHASE 4 Pretty Print

Pretty Print Output RuleML nicely Comments For some tags we don’t want a new line

Pretty Print – How? Variables and params ▫

Pretty Print – Outline

Final Demo Normalizer: u.unbf.ca/~lbidlak1/100relaxed-to-normal.xslt u.unbf.ca/~lbidlak1/100relaxed-to-normal.xslt Handout Website: u.unbf.ca/~lbidlak1/ u.unbf.ca/~lbidlak1/