Download presentation
Presentation is loading. Please wait.
Published byRolf Shelton Modified over 9 years ago
1
Foundational Data Modeling and Schema Transformations for XML Data Engineering Stephen W. Liddle Information Systems Department Reema Al-Kamha & David W. Embley Computer Science Department Brigham Young University, Provo, Utah
2
2 24 April 2008 UNISCON 2008, Klagenfurt, Austria XML Data Engineering Model XML conceptually Map conceptual models to XML Reverse-engineer XML to conceptual models Ensure properties Information preserving transformations Constraint preserving transformations Redundancy-free guarantees
3
3 C-XML 24 April 2008 UNISCON 2008, Klagenfurt, Austria
4
4 24 April 2008 UNISCON 2008, Klagenfurt, Austria Modeling XML Conceptually Scaling the mountain of abstraction Delicate balance Enough modeling constructs But not to many High-level capture of essentials Avoidance of low-level implementation details Formal but easily understood XML needs better abstractions
5
5 24 April 2008 UNISCON 2008, Klagenfurt, Austria XML Schema/Model Mismatch XML features not explicitly supported in traditional conceptual models: Ordered lists of concepts Choice of concept from among several Mixed content Use of content from another model Nested information hierarchies C-XML
6
6 24 April 2008 UNISCON 2008, Klagenfurt, Austria Missing Modeling Constructs (1) Sequence structure Parent concept Ordered child concepts Constrained recurrence of children Constrained recurrence of sequence itself <xs:element name="MiddleName" type="xs:string“ minOccurs="0" maxOccurs="2"/>
7
7 Missing Modeling Constructs (1) 24 April 2008 UNISCON 2008, Klagenfurt, Austria
8
8 24 April 2008 UNISCON 2008, Klagenfurt, Austria Missing Modeling Constructs (2) Choice structure Parent concept Choose one child concept from several alternatives Constrained recurrence of chosen child Constrained recurrence of choice itself <xs:element name="PhoneNumber" type="xs:string" minOccurs="1" maxOccurs="2" />
9
9 24 April 2008 UNISCON 2008, Klagenfurt, Austria Missing Modeling Constructs (3) Mixed attribute Allows character and element data to be intertwined Any and anyAttribute structures Insert structures from other namespaces Constrained recurrence
10
10 24 April 2008 UNISCON 2008, Klagenfurt, Austria Missing Modeling Constructs (4) Nesting of hierarchical structures Key organizational characteristic of XML Arbitrarily complex nesting possible
11
11 C-XML Example 24 April 2008 UNISCON 2008, Klagenfurt, Austria
12
12 C-XML TO XML SCHEMA 24 April 2008 UNISCON 2008, Klagenfurt, Austria
13
13 exists [0:*] (Course(x) Student(x1) Semester(x2) Grade(x3) )) --> C-XMLXML Schema
14
14 Algorithm Overview Generate a forest of scheme trees Translate an individual object set Translate scheme-tree collections of object sets Create a root node Add uniqueness constraints Translate generalization/specialization hierarchies
15
15 (Student, StudentID, StudentName, FirstName, LastName, (MiddleName)*, (Course, Semester, Grade)*)* Generate Scheme Trees
16
16 (Course, Department)* Generate Scheme Trees
17
17 (GradStudent, Advisor)*(UndergradStudent)* Generate Scheme Trees
18
18 (Student, StudentID, StudentName, FirstName, LastName, (MiddleName)*, (Course, Semester, Grade)*)* (Course, Department)*(GradStudent, Advisor)*(UndergradStudent)* Generate Scheme Trees
19
19 Student, StudentID, StudentName, FirstName, LastName MiddleName Course, Semester, Grade Course, Department GradStudent, Advisor UndergradStudent (Student, StudentID, StudentName, FirstName, LastName, (MiddleName)*, (Course, Semester, Grade)*)* (Course, Department)*(GradStudent, Advisor)*(UndergradStudent)* Generate Scheme Trees
20
20 Individual Object Sets...
21
21 Scheme-Tree Translation Students CoursesGradStudents UndergradStudents MiddleNames Course-Semester-GradesMiddleNames Students Student MiddleName CourseGradStudent UndergradStudent Course-Semester-Grade
22
22 Scheme-Tree Translation... <xs:element name="Semester-Course-Grade" minOccurs="0" maxOccurs="unbounded">......
23
23 Scheme-Tree Translation exists [0:*] (Course(x) Student(x1) Semester(x2) Grade(x3) )) -->
24
24
25
25 Root Element Students CoursesGradStudentsUndergradStudents......
26
26 Uniqueness Constraints <xs:element name="Student" maxOccurs="unbounded">...
27
27 Generalization/Specialization
28
28 XML SCHEMA TO C-XML 24 April 2008 UNISCON 2008, Klagenfurt, Austria
29
29 XML Schema C- XML
30
30 Algorithm Overview Generate object sets for each element & attribute Specify built-in and simple types in data frames Obtain relationship sets from parent-child connections Obtain participation constraints from minOccurs, maxOccurs, and use constraints
31
31 Attribute Transformation
32
32 Element Transformation
33
33 Choice Transformation
34
34 Sequence Transformation
35
35 Key Constraints Transformation
36
36 Substitution Group & Extension Transformation
37
37 Observation on Transformations These transformations to and from C-XML are not inverses of one another However, C-XML XML Schema C-XML XML Schema
38
38 Demo 24 April 2008 UNISCON 2008, Klagenfurt, Austria
39
39 PROPERTY GUARANTEES 24 April 2008 UNISCON 2008, Klagenfurt, Austria
40
40 Transformation Properties: C-XML to XML Schema Theorem 1: … preserves information. Proof: injective Theorem 2: Allowing for pragma constraints, … preserves constraints. Proof: by construction Theorem 3: … yields an XML-Schema instance whose complying XML documents are redundancy free. Proof: [TKDE, Aug06] 24 April 2008 UNISCON 2008, Klagenfurt, Austria
41
41 Transformation Properties: XML Schema to C-XML Theorem 4: … preserves information. Proof: injective Theorem 5: … preserves constraints. Proof: by construction 24 April 2008 UNISCON 2008, Klagenfurt, Austria
42
42 24 April 2008 UNISCON 2008, Klagenfurt, Austria Conclusions C-XML models XML conceptually Transformations C-XML to XML Reverse-engineer XML to C-XML Properties Information preserving Constraint preserving Redundancy-free guarantee www.deg.byu.edu
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.