conceptual xml for systems analysis reema al-kamha phd proposal supported by nsf

23
Conceptual XML for Systems Analysis Reema Al-Kamha PhD Proposal Supported by NSF

Post on 19-Dec-2015

221 views

Category:

Documents


2 download

TRANSCRIPT

Conceptual XML for Systems Analysis

Reema Al-KamhaPhD Proposal

Supported by NSF

2

Motivation

Since: XML becoming standard for data representation XML Schema to specify and validate XML

documents

Thus,

Systems analysts who store their models using XML need a simple conceptual model that works with XML-based development

3

Motivation

XML Schema Low-level implementation details Hierarchical structure Textual implementation

Conceptual models

4

Conceptual XML (C-XML)

We have an answer to the new need of system analysts who store their models using XML!

Conceptual XML (C-XML) is a conceptual model: “Model-equivalent” with XML Schema Represents the model at a high level of abstraction

Example of usefulness: integration of XML repositories

5

Thesis Statement

Conceptual-XML (C-XML) Transformation to and from C-XML and XML

Schema preserve information and constraints Integration of C-XML model instances results

in the integration of the equivalent XML schemas

Prove the concreteness of the transformations Provide prototype implementation

6

C-XML

7

Transformations between C-XML and XML Schema We need information- and constraint-preserving

transformations in both directions Transformations need not be inverses

8

Transformation from C-XML to XML Schema

(Customer,CustomerName,CustomerAddr,Discount, (Order,OrderID,OrderDate, (Item, SalePrice, Qty)* )* )*

(Item, ItemNr,Description,Price, (PreviousItem)*,(Manufacturer,RequestDateTime,Qty)* )*

8: <xs:element name="Item"> 9: <xs:complexType> ...28: <xs:attribute name="ItemNr" type="xs:positiveInteger" use="required"/>29: <xs:attribute name="Description" type="xs:string" use="required"/>30: <xs:attribute name="Price" type="xs:decimal" use="required"/>31: </xs:complexType>32: </xs:element>

9

56: <xs:group name="CustomerDetails">57: <xs:sequence>58: <xs:element name="CustomerName" type="xs:string"/>59: <xs:element name="CustomerAddr" type="xs:string"/>60: ...79: </xs:sequence>80: </xs:group>

Transformation from C-XML to XML Schema

10

35: <xs:key name="OrderKey">36: <xs:selector xpath=".//Order"/>37: <xs:field xpath="@OrderID"/>38: </xs:key> ...60: <xs:element name="Order" minOccurs=“1" maxOccurs="unbounded">61: <xs:complexType>62: <xs:sequence> ...74: </xs:sequence>75: <xs:attribute name="OrderID" type="xs:positiveInteger" use="required"/> ...77: </xs:complexType>78: </xs:element>

Transformation from XML Schema to C-XML

11

44: <xs:element name="Customer" abstract="true"/>45: <xs:element name="PreferredCustomer” substitutionGroup="Customer">46: <xs:complexType>47: <xs:group ref="CustomerDetails"/>48: ...49: </xs:complexType>50: </xs:element>51: <xs:element name="RegularCustomer“ substitutionGroup="Customer">52: <xs:complexType>53: <xs:group ref="CustomerDetails"/>54: </xs:complexType>55: </xs:element>

Transformation from C-XML to XML Schema

12

11: <xs:element ... minOccurs="0" maxOccurs="5">

Transformation from C-XML to XML Schema

13

Transformation from XML Schema to C-XML

56: <xs:group name=“CusomerDetails”>57: <xs:sequence> ...60: <xs:element name="Order" minOccurs="0" maxOccurs="unbounded"> ...77: </xs:seuence>78: </xs:group>

Algorithm overview: Generate object sets for each element, attribute Connected by relationship sets Nested according to XML hierarchy Re-code all constraints in C-XML

14

Transformation from XML Schema to C-XML

Artifact of XML Schema

Artifact of XML nesting

n-ary relationshipdecomposition

15

Integration

XML Schema1 XML Schema2

C-XML1 instance C-XML2 instance

Transform Transform

Integrated XML Schema

Integrated C-XML model instance

Integrated XML Schema

Tra

ns

form

16

Integration

17

Integration

Name

Addr

ID

ID-Nr

Month

Day

Year

Order

ConsumerDetails

Consumer

OrderDate

OrderID

Order

CustomerName

CustomerAddr

CustomerDetails

Customer

Name conflictsConstraint conflictsStructural conflictsData type conflicts

18

Integration

19

Data Merging

Format conflictsArbitrary lexical identifier conflicts

Units conflicts

20

Produce a prototype that : Automatically transforms C-XML to XML Schema Automatically transforms XML Schema to C-XML Integrates two XML Schemas via C-XML views

Artifacts to be Produced

21

Limitations of the Dissertation

No automatic mappings for schema integration No sophisticated C-XML automatic layout tools No proof that the prototype is easy to use

22

Research Papers

“An Information- and Constraint-Preserving Transformation from C-XML to XML Schema”

“An Information- and Constraint-Preserving Transformation from XML Schema to C-XML”

“On the Correctness of Conceptual Level Integration of XML Schemas”

“C-XML-I: A Tool for Conceptual Level Integration of XML Schemas”

23

Contribution A vision for applying conceptual modeling to

support the need of systems analysts who store their models using XML

A framework to support the vision Information- and constraint-preserving

mappings between C-XML and XML Schema Conceptual-level integration properly provides

for XML schema integration