Evolution of XML Applications

Similar documents
An Analysis of Approaches to XML Schema Inference

Charles University in Prague Faculty of Mathematics and Physics HABILITATION THESIS. Martin Nečaský, Ph.D.

FlexBench: A Flexible XML Query Benchmark

XCase - A Tool for Conceptual XML Data Modeling

XML Schema Integration with Reusable Schema Parts. XML Schema Integration with Reusable Schema Parts

XML Data in (Object-) Relational Databases

Similarity of DTDs Based on Edit Distance and Semantics

THE SOFTWARE REQUIREMENTS FRAMEWORK FOR DOCUMENT CHANGES USING REVERSE ENGINERING APPROACH

Conceptual Modeling in ER and UML

MASTER THESIS. Marek Polák. XML Query Adaptation. Charles University in Prague Faculty of Mathematics and Physics. Department of Software Engineering

High Level Database Models

Extending E-R for Modelling XML Keys

A GML SCHEMA MAPPING APPROACH TO OVERCOME SEMANTIC HETEROGENEITY IN GIS

Conceptual Database Modeling

Using XSEM for Modeling XML Interfaces of Services in SOA

Relational Model. Course A7B36DBS: Database Systems. Lecture 02: Martin Svoboda Irena Holubová Tomáš Skopal

Towards Schema-Guided XML Query Induction

FORMALIZATION OF VERSIONING RULES FOR XML SCHEMA USING UML CLASS DIAGRAM

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages

MASTER THESIS. Soběslav Benda Vzájemný převod mezi XSEM PSM diagramy a jazykem Schematron

Relational Model. Courses B0B36DBS, A4B33DS, A7B36DBS: Database Systems. Lecture 02: Martin Svoboda

Design and Management of Semantic Web Services using Conceptual Model

Database Design Process

Introduction to Dependable Systems: Meta-modeling and modeldriven

Discovering XML Keys and Foreign Keys in Queries

Improving Adaptive Hypermedia by Adding Semantics

Conceptual Design. The Entity-Relationship (ER) Model

course 3 Levels of Database Design CSCI 403 Database Management Mines Courses ERD Attributes Entities title 9/26/2018

XSEM - A Conceptual Model for XML Data

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1

Database Design Process. Requirements Collection & Analysis

AIM. 10 September

XML. Jonathan Geisler. April 18, 2008

Model Driven Engineering (MDE)

A Methodology for Integrating XML Data into Data Warehouses

Chapter 3 Research Method

A Model Driven Approach based on Interaction Flow Modeling Language to Generate Rich Internet Applications

Relational Model. Courses B0B36DBS, A7B36DBS: Database Systems. Practical Class 03: Martin Svoboda

Chapter 13 XML: Extensible Markup Language

To build students capabilities on data modeling

Formulating XML-IR Queries

Publishing Technology 101 A Journal Publishing Primer. Mike Hepp Director, Technology Strategy Dartmouth Journal Services

Sangam: A Framework for Modeling Heterogeneous Database Transformations

<is web> Information Systems & Semantic Web University of Koblenz Landau, Germany

DESIGN AND EVALUATION OF A GENERIC METHOD FOR CREATING XML SCHEMA. 1. Introduction

Definition of Visual Language Editors Using Declarative Languages

course: Database Systems (NDBI025) SS2017/18

Intro to DB CHAPTER 6

Developing CASE tools which support integrated development notations

Database Technology Introduction. Heiko Paulheim

Towards a UML Profile for Service-Oriented Architectures 1

Author: Irena Holubová Lecturer: Martin Svoboda

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

CURRICULUM VITAE. June, 2013

Introduction to Data Management. Lecture #3 (Conceptual DB Design) Instructor: Chen Li

Modelling of Adaptive Hypermedia Systems

MASTER OF ENGINEERING PROGRAM IN INFORMATION

Practical Database Design Methodology and Use of UML Diagrams Design & Analysis of Database Systems

Flight Systems are Cyber-Physical Systems

Optimising XML RDF Data Integration


School of Computing and Information Technology. Examination Paper Autumn 2016

52. Staged Software Architectures with Staged Composition

Modeling Systems Using Design Patterns

Learning Queries for Relational, Semi-structured, and Graph Databases

Relational Model. Rab Nawaz Jadoon DCS. Assistant Professor. Department of Computer Science. COMSATS IIT, Abbottabad Pakistan

Starting Ontology Development by Visually Modeling an Example Situation - a User Study

challenges in domain-specific modeling raphaël mannadiar august 27, 2009

User Interface Modelling Based on the Graph Transformations of Conceptual Data Model

The DBMS accepts requests for data from the application program and instructs the operating system to transfer the appropriate data.

High-Level Database Models (ii)

How To Validate An Xml File Against A Schema Using Xmlspy

SQL: DML and Advanced Constructs Insert, Update, Delete, View, Index, Procedure, Transaction, Trigger

XML Technologies Dissected Erik Wilde Swiss Federal Institute of Technology, Zürich

Creating Ontology Chart Using Economy Domain Ontologies

ProFoUnd: Program-analysis based Form Understanding

Contents. Database. Information Policy. C03. Entity Relationship Model WKU-IP-C03 Database / Entity Relationship Model

Syntax Agnostic Semantic Validation of XML Documents using Schematron

DSD: A Schema Language for XML

Using DSM to Generate Database Schema and Data Management

Transforming The Code: More Than Meets The Eye

!MDA$based*Teaching*and* Research*in*Software*Engineering*!

i* on ADOxx : A Case Study

Schema-Guided Query Induction

Proseminar. (with Eclipse) Jun.-Prof. Dr.-Ing. Steffen Becker. Model-Driven Software Engineering. Software Engineering Group

Change Detection System for the Maintenance of Automated Testing

An Evaluation of Geo-Ontology Representation Languages for Supporting Web Retrieval of Geographical Information

2004 John Mylopoulos. The Entity-Relationship Model John Mylopoulos. The Entity-Relationship Model John Mylopoulos

Design concepts for data-intensive applications

Model Driven Engineering (MDE) and Diagrammatic Predicate Logic (DPL)

CIS 330: Web-driven Web Applications. Lecture 2: Introduction to ER Modeling

Schematron Validation for AQD

Model Driven Architecture

M359 Block5 - Lecture12 Eng/ Waleed Omar

Enabling Seamless Sharing of Data among Organizations Using the DaaS Model in a Cloud

Proof Documents: Presentation and Representation

COMP9321 Web Application Engineering

CS/INFO 330 Entity-Relationship Modeling. Announcements. Goals of This Lecture. Mirek Riedewald

Week. Lecture Topic day (including assignment/test) 1 st 1 st Introduction to Module 1 st. Practical

COMP9321 Web Application Engineering

Transcription:

Evolution of XML Applications University of Technology Sydney, Australia Irena Mlynkova 9.11. 2011 XML and Web Engineering Research Group Department of Software Engineering Faculty of Mathematics and Physics Charles University in Prague Czech Republic mlynkova@ksi.mff.cuni.cz http://www.ksi.mff.cuni.cz/~mlynkova/index.html

Charles University Established 1348 King Charles IV. Currently: Number of faculties: 17 Number of employees: 7 500 Number of students: 51 000 Academic Ranking of World Universities: 201. 300. http://www.cuni.cz/ukeng-1.html

Faculty of Mathematics and Physics Established 1952 Structure School of Mathematics School of Physics School of Computer Science ½of students Number of departments: 6 http://www.mff.cuni.cz/toiso-8859-2.en/

Department of Software Engineering Staff: 15 researchers 4 lecturers 22 PhD students Average results per year: 80 papers in refereed proceedings/journals 7 SW prototypes Research groups: Similarity Retrieval Research Group Web Semantization Research Group Service-Oriented Systems Group XML and Web Engineering Research Group http://www.ksi.mff.cuni.cz/en/

XML and Web Engineering Research Group 4 researchers + 5 PhD students Current areas: Modelling of XML applications and systems Evolution and change management of applications Inference of XML schemas Similarity of XML data Linked Data Data provenance Statistical analysis of real-world data Older topics: XML benchmarking Storage strategies for XML data http://www.ksi.mff.cuni.cz/xrg/

Evolution of XML Applications XML application = an application that exploits XML technologies XML data, XML schemas (DTD, XSD, Schematron, RELAX NG), XML queries (XPath, XQuery), XSLT scripts, Evolution of application User requirements or surrounding environment changes => the application needs to adapt accordingly Key problem: changes in data structure Influence further processing Our focus Many related issues to be solved

Preliminary Approaches They solve separate issues An XML application can be much complex

XML System of Applications An XML application usually involves a family of XML schemas Each involved in particular execution part => XML system of applications Schemas are related, overlap, exploit each other, Problems: The amount of schemas can be high Tens, hundreds, A change in a single schema may need to be propagated to numerous other schemas => Difficult, error-prone,

Example Common problem domain: purchasing goods List of customers Purchase requests And other schemas Customer details, purchase responses, purchase transport details,

Example New user requirement: Address is not a simple string, but should be divided into street, city, zip code, We need to: Find all the addresses in all the schemas Correctly modify their structure Correctly propagate the modification to all respective documents The situation can be even more complicated E.g. We may want to change only addresses that represent a place to ship the goods, not all addresses Not, e.g., the address of the headquarters And so far we consider only data

Our Solution current approaches MDA extension Necasky, M. - Mlynkova, I.: On Different Perspectives of XML Schema Evolution. FlexDBIST '09 workshop of DEXA '09, pages 422-426, September 2009. IEEE Computer Society Press, 2009.

Five-Level XML Evolution Framework Based on the MDA principle Idea: modelling of problem domain at different levels of abstraction Levels: Extensional level XML documents Operational level XML queries Schema level XML schemas DTD, XSD, Schematron, RELAX NG Platform-independent level conceptual model of the whole problem domain e.g. purchasing goods Platform-specific level mapping of the problem domain to particular XML formats e.g. list of customers, purchase requests,

Platform-Independent Model (PIM) Models real-world concepts + relationships among them Simplified UML class diagram Classes, attributes + data types Binary associations + cardinalities Simplification: easier and shorter description of ideas Can be further extended future work

Platform-Specific Model (PSM) How part of reality modelled by PIM is represented in an XML schema Glue between PIM and XML schemas UML class diagrams extended for the purposes of XML modelling Hierarchical structure XML elements vs. attributes Order Specific XML schema constructs Necasky, M.: Conceptual Modeling for XML. In Dissertations in Database and Information Systems Series, Volume 99. IOS Press/AKA Verlag. January 2009, 164pp. ISBN: 978-58603-956-1.

Two Perspectives of PSM Conceptual: Classes, attributes and associations of PSM are mapped to classes, attributes and associations of PIM The mapping specifies the semantics of PSM schema in terms of PIM schema Grammatical: A PSM schema models an XML format = an XML schema = a regular tree grammar A regular tree grammar can be translated to a PSM schema and vice versa Multiple possible translations from PSM to XML schema

How the Evolution Process Works? List of customers Purchase requests But there are many related problems to be solved

Background Issues Definition of PIM Constructs Operations Atomic vs. composite Definition of PSM Constructs Operations Atomic vs. composite Definition of mapping between PIM and PSM, PSM and XML schema Definition of propagation of each operation In current literature mostly omitted

Formal Definition of Models and Mapping Algorithm for translating PSM to regular tree grammars and vice versa Proof of correctness and expressive power Interpretation Translation Definition of interpretation = formal definition of mapping between conceptual levels Proof of correctness Necasky, M., I. - Klimek, J. - Maly, J. - Mlynkova: When Conceptual Model Meets Grammar: A Dual Approach to XML Data Modeling. International Journal on Data & Knowledge Engineering. Elsevier 2012. (In press.)

Formal Definition of Models and Mapping Note: DTD <=> local-tree grammars XSD <=> single-type tree grammars RELAX NG <=> regular tree grammars Note: PSM schema can describe multiple XML schemas Inheritance, references, Lots of syntactic sugar Side results: Algorithm for PSM schema normalization and optimization

Edit Operations and Their Propagation Definition of a set of atomic operations at PSM and PIM levels Proof of minimality, correctness Specification of propagation mechanism Correctness Definition of composition of edit operations Atomic ones are too simple, just for formal reasons Necasky, M. - Klimek, J. - Maly, J. - Mlynkova, I.: Evolution and Change Management of XML-based Systems. Journal of Systems and Software. Elsevier 2012. (In press.)

Our Edit Operations Creation, update, removal classical operations New atomic operation: synchronization Two sets of schema components are semantically equivalent Idea: Requirement: Address is not a simple string, but should be divided into street, city, zip code, Existing approaches: creating new attributes + removing the old one => loss of information Our approach: synchronization => the propagation mechanism knows where to get data

Re-Validation of XML Documents PSM diagram = XML schema changes => XML documents need to be adapted Re-validation (XSLT scripts) User interaction Translation Re-validation script Maly, J. - Mlynkova, I. - Necasky, M.: XML Data Transformations as Schema Evolves. ADBIS '11, September 2011. Lecture Notes in Computer Science, Springer-Verlag, 2011. Maly, J. - Necasky, M. - Mlynkova, I.: Efficient Propagation of Changes from an XML Schema to XML Documents. Extended version. (submitted)

Propagation to Operational Level Schema evolves => query inconsistency Related work: a single paper describing rules for backwardcompatible Translation Re-validation algorithm queries We need: a model of queries, a mapping between data and queries, edit operations, propagation mechanism, M. Polak. XML Query Adaptation. Master Thesis, Charles University in Prague, Czech Republic, 2011. http://www.ksi.mff.cuni.cz/~mlynkova/dp/polak.pdf. Polak, M. - Mlynkova, I. - Pardede, E.: XML Query Adaptation as Schema Evolves. Submitted.

Modelling Strategies Top-Down (forward engineering) modelling a new system (or its modification) 1. Creating PIM schema 2. Creating a PSM schema from PIM Or its modification 3. Translating PSM schema to XML schema 4. Instantiating the schema Bottom-Up (reverse engineering) an existing system + integration of an existing XML schema 1. Translating XML schema to PSM 2. Mapping of PSM schema to and PIM schema We need a suitable similarity measure If we do not have a schema, we need an inference method

Reverse Engineering: Inference of XML Schemas Currently: Heuristic vs. grammarbased approaches Exploit purely XML documents Our proposals: Other input data Old schema, queries, user interaction Other output information XSD, ICs Optimization of the inference process Vosta, O. - Mlynkova, I. - Pokorny, J.: Even an Ant Can Create an XSD. DASFAA '08, pages 35-50, March 2008. LNCS 4947, Springer-Verlag, 2008. Necasky, M. - Mlynkova, I.: Discovering XML Keys and Foreign Keys in Queries. SAC '09 - track Web Technologies, pages 639-646, March 2009. ACM Press, 2009. And many other

jinfer A framework for XML schema inference Based on the idea of plug-ins Modules Can be added, removed, replaced, compared, Playground for proposing new inference methods Not interesting features are implemented Transforming XML data to grammar rules Transforming automata to XML schemas Current know approaches are implemented New ones can be compared http://jinfer.sourceforge.net/

jinfer

Reverse Engineering: Mapping of PSM to PIM Current approaches: Analyze structure, context, semantics, operations, Our aim: To adapt verified techniques To minimize user interaction Starka, J. - Mlynkova, I. - Klimek, J. - Necasky, M.: Integration of Web Service Interfaces via Decision Trees. IIT '11, pages 47-52, April 2011. IEEE Computer Society, 2011.

Other Data Formats An XML system can contain other than XML data => the ideas can be generalized Relational models, UML class models, Business process models? The idea can be extended

Implementations XCase (http://xcase.codeplex.com/) Implementation of first ideas Desktop application XML data levels and propagation among them exolutio (http://exolutio.com/) Web application of XCase Automatic generation of mappings between PIM and PSM DaemonX (http://daemonx.codeplex.com/) A general framework for any kind of data (not only XML) New data format => new plug-in Currently: XML, relational, UML

exolutio

Future Work More complex conceptual-modelling constructs e.g. inheritance, n-ary relationships Queries, integrity constraints Modelling, change propagation, Other data formats Relational data, objects, Formal specification, edit operations, propagation, Storage strategies New dimension: schema evolves => storage strategy should be optimized Extension to business process models New dimension: not data structures, but what happens with them Question: Is it possible to integrate it? How?