SlideShare une entreprise Scribd logo
1  sur  29
Télécharger pour lire hors ligne
2nd Workshop on Digital Information Management                            April, 25-26, 2012
                                                                             Corfu, Greece




  Path-based MXML Storage
        and Querying
  Nikolaos Fousteris 1 , Manolis Gergatsoulis 1 , Yannis Stavrakas 2
  1 Department of Archives and Library Science,      2 Institutefor the Management
                 Ionian University                    of Information Systems (IMIS),
    Ioannou Theotoki 72,49100 Corfu, Greece.                   R. C. Athena,
           {nfouster,manolis}@ionio.gr            G. Mpakou 17, 11524, Athens,Greece.
                                                              yannis@inmis.gr
Introduction & Motivation
 The problem of storing and querying XML data
 using relational databases has been considered
 a lot
 Multidimensional XML is an extension of XML
 and it is used for representing data that assume
 different facets, having different values or
 structure, under different contexts
 We expand the problem of storing and querying
 XML to multidimensional XML data

                                                    2
Outline
 XML Storage
 Multidimensional XML(MXML)
   Fundamental concepts
   MXML example and graphical representation
 MXML Storage
   A path-based approaches is presented
 Context Representation
 Multidimensional XPath (MXPath)
 MXPath to SQL conversion algorithm
 Summary & Future work
                                               3
XML Storage (1/2)
 Includes techniques to store XML data in
 Relational Databases
 XML applications (internet applications)
 are able to exploit the advantages of the
 RDBMS technology
 Operations over XML data, are
 transformed to operations over the
 Relational Schema
                                             4
XML Storage (2/2)
Methodology
  A Relational Schema is chosen for storing XML data
  XML queries are produced by users/applications
  XML queries are translated to SQL queries
  SQL queries are executed
  Results are translated back to XML and returned to the
  user/application

Techniques
  Schema Based
  Schema Oblivious
                                                       5
Multidimensional XML (MXML)
Fundamental Concepts (1/3)

 MXML is an extension of XML

 In MXML data assume different facets,
 having different value or structure, under
 different contexts according to a number of
 dimensions which may be applied to
 elements and attributes

                                           6
MXML – Fundamental Concepts (2/3)

 Dimension: is a variable. Assigning different
 values for each dimension it is possible to
 construct different environments for MXML data
 World: represents an environment under which
 data obtain a meaning and is determined by
 assigning to every dimension a single value
 Context Specifier: an expression which specifies
 a set of worlds (context) under which a facet of an
 MXML element or attribute, is the holding facet of
 this element or attribute

                                                  7
MXML – Example
<book isbn=[edition=english]"0-13-110362-8"[/]               Multidimensional
             [edition=greek]"0-13-110370-9"[/]>              elements/attributes are
 <title>The C programming language</title>                   elements/attributes that
 <authors>                                                   have different facets
    <author>Brian W. Kernighan</author>                      under different
    <author>Dennis M. Ritchie</author>                       contexts.
 </authors>
 <@publisher>                                                Each multidimensional
                                                             element/attribute
 [edition = english] <publisher>Prentice Hall</publisher>[/]
                                                             contains one or more
 [edition = greek] <publisher>Klidarithmos</publisher>[/]
                                                             facets, called Context
 </@publisher>                                               element/attributes.
 <@translator>
 [edition = greek] <translator>Thomas Moraitis</translator>[/]
 </@translator>
 <@price>
                                                                                8
   …….
MXML Graphical Representation




                                9
MXML – Fundamental Concepts (3/3)

 Explicit Context: Is the true context (defined by
 a context specifier) only within the boundaries of
 a single multidimensional element/attribute.
 Inherited Context: Is the context, which is
 inherited from the ancestor nodes to a
 descendant node in the MXML graph.
 Inherited Context Coverage: It constraints the
 inherited context of a node, so as to contain only
 the worlds under which the node has access to
 some value node.

                                                  10
MXML Storage (1/5)
 MXML storage includes techniques that
 store MXML data in Relational Databases.
 Applications using MXML storage are able
 to exploit the advantages of the RDBMS
 technology.
 MXML additional features (context,
 different types of MXML nodes/edges etc.)
 should be considered.
                                         11
MXML Storage (2/5)
Path-based Approach
 MXML nodes are divided into groups, according
 to their types. Each group is stored in a separate
 table named after the type of the nodes
 (elements, attributes and value nodes).
 There is a Path Table, which stores all possible
 paths of the MXML tree.
 For node indexing, it is used a dotted format of
 Dewey-labeling schema.

                                                    12
MXML Storage (3/5)                         Path-based Approach



Dewey-labeling schema
  Used for indexing the nodes of
  MXML tree.
  A label is a dotted string
  a1.a2.a3…an.
  For each ai (i=1…n), i represents
  the depth and ai the position
  number of a node among its
  siblings.

Ex. Node “1.1.2” is the 2nd child of node “1.1” and is placed
  at the 3rd level of the MXML tree.

                                                           13
MXML Storage (4/5)   Path-based Approach




                                    14
MXML Storage (5/5)                              Path-based Approach


Path representation
                      Ex.                                 SQL
                      XPath: /book//picture
                                                        wildcard
                      SQL1:
                      select.. from.. where path LIKE ‘/book%/picture’

                      case1: ‘/book/cover/picture’ (match) correct
                      case2: ‘/booklet/cover/picture’ (match) error

                      SQL2:
                      select.. from.. where path LIKE ‘#/book#%/picture’

                      Cases like case2 above could not happen.

                                                                      15
Context Representation (1/5)

Question

How can we represent in a Relational Database
the set of worlds which are contained in a context
specifier, for each MXML node?




                                                     16
Context Representation (2/5)
Ordered-Based Representation of Context
Basic idea: Total ordering of worlds based on:
  Total ordering of dimensions
  Total ordering of dimension values
For k dimensions with each dimension i having zi
possible values, we may have n=z1*z2*….*zk
possible ordered worlds.
Each world is assigned a unique integer value
between 1 and n (w1 to wn).
                                                   17
Context Representation (3/5)
Ordered-Based Representation of Context

                                    dimensions ordering

                                          dimension values
                                              ordering




                                    possible worlds
                                    ordering



                                                       18
Context Representation (4/5)
Ordered-Based Representation of Context

World Vector:
   A binary number representing a context
specifier. The position of every bit
corresponds to the position of a world
in the total ordering of all possible worlds.
  Each bit of the world vector has two
possible values: 1 if the corresponding
world exists in context specifier or 0 if it does not)
 binary digit for W1   ……       binary digit for Wi       ……      binary digit for Wn
                            1 or 0: world exists or not        n=possible worlds number

possible worlds ordering

Ex: world_vector of the expl. context of node 1.1.6.1 = 0011
                                                                                          19
Context Representation (5/5)
 Ordered-Based
 Representation of Context

Explicit Context Table:
Assigns an explicit context
(expressed in binary format
according to world vector
representation) to a MXML node.
Inherited Context Coverage Table:
Assigns an inherited context coverage
(expressed in binary format according to
world vector representation) to a MXML
node.
                                           20
Multidimensional XPath (MXPath) (1/2)

MXPath:
   An extension of XPath able to easily express
   context-aware queries on MXML data.
   Both explicit context (ec) and inherited context
   coverage (icc) are used to navigate over
   multidimensional elements and attributes.
   Conditions on the explicit context at any point
   of the path are allowed.
   Both multidimensional and context nodes can
   be returned.
                                                 21
Multidimensional XPath (MXPath) (2/2)
      MXPath example:
      [icc() >= “-”],/child::book
      /child::cover[ec() >= “ed=gr”]/child->picture

                            Query in English:
                            Find the (multidimensional) sub-
                  Result
                            element picture of element cover of
                            the greek edition of the book.

                            cover[ec() >= “ed=gr”]
                            is an explicit context qualifier. The
                            function ec() returns the explicit
                            context of a node. The above qualifier
                            says that the ec of the node cover must
                            be superset of the context described
                            by the context specifier [ed=gr].
                                                               22
MXPath to SQL conversion algorithm (1/4)

Methodology:
    Give a MXPath query “Q”, we construct the
    Multidimensional Tree Pattern “G” of Q.
    We divide “Q” in sub-paths according to
    segmentation rules, which define the
    appropriate segmentation points in “G”.
    The sub-paths of “Q” and the predicates are
    used as input for the MXPath to SQL
    conversion algorithm.

                                                  23
MXPath to SQL conversion algorithm (2/4)
                 MXPath example:
 branch
                 /book[authors[author=“Brian W.K.”]]
                 /cover[ec()=“ed=gr”]/->material


                        Query in English:
                        Find the (multidimensional) sub-
                        element material of element cover of
                        the greek edition of the book which
                        has an author named “Brian W.K.”.

                        Notice that the predicate
             Result     [authors[author=“Brian W.K.”]]
                        is a branch.

                                                           24
MXPath to SQL conversion algorithm (3/4)
Multidimensional             MXPath query “Q”:
Tree Pattern                 /book[authors[author=“Brian W.K.”]]
   book(M)                   /cover[ec()=“ed=gr”]/->material

   book      authors(M)   authors   author(M)     author    “Brian W.K.”


  cover(M)
                          Segmentation (Q):
                          Sub_Path_1: #/book
                            Segmentation
                           Predicate_1: [authors[author=“Brian W.K.”]]
                             branch ( authors[author=“Brian W.K.”] ):
  cover[ec()=“ed=gr”]      Sub_Path_2: #/book#/cover
                             Sub_Path_1: #/book#/authors#/author
                           Sub_Path_3: #/book#/cover#/->material
                             Value_1=“Brian W.K.”
 material(M)

                                                                     25
MXPath to SQL conversion algorithm (4/4)
MXPath: /book[authors[author=“Brian W.K.”]]/cover[ec()=“ed=gr”]/->material

SQL:                                       (Select a1.node_id AS a_id
                                             From Element_Table a1, Path_Table p1,
Select a3.node_id                            Value_Table v1
From Element_Table a1, Element_Table a2,     Where p1.path Like '#/book#/authors#/author' and
      Element_Table a3, Path_Table p1,       a1.path_id = p1.path_id and
      Path_Table p2, Path_Table p3,          v1.path_id = p1.path_id and
      EC_Table ec1                           v1.value = 'Brian W.K.' and
Where p1.path Like '#/book' and              v1.node_id Like CONCAT(a1.node_id,'%')
 a1.path_id = p1.path_id and                ) AS T
 a1.node_id = ANY (                        ) and
 Select SUBSTRING_INDEX(a_id,'.', 2)       a2.node_id Like CONCAT(a1.node_id,'%') and
 From                                      p2.path Like '#/book#/cover' and
                                           a2.path_id = p2.path_id and
                                           a2.node_id = ec1.node_id and
                                           ec1.world_vector LIKE '000111' and
                                           a3.node_id Like CONCAT(a2.node_id,'%') and
                                           p3.path Like '#/book#/cover#/->material' and
                                           a3.path_id = p3.path_id



                                                                                         26
Summary
  MXML
  Storing MXML in Relational DB & Context Representation
 (path-based approach)
  MXML querying using MXPath
  Converting MXPath queries to SQL queries


Future work
 Conversion Algorithm implementation and evaluation
 Further optimization of the relational schema



                                                      27
References
1. N. Fousteris, Y. Stavrakas, and M. Gergatsoulis.
   Multidimensional XPath. In Proc. of iiWAS 2008 , pp. 162-169.
   ACM, 2008 .
2. M. Gergatsoulis, Y. Stavrakas, and D. Karteris. Incorporating
   Dimensions in XML and DTD. In Database and Expert
   Systems Applications, 12th International Conference, DEXA
   2001 Munich, Germany, September 3-5, 2001, Proceedings,
   volume 2113 of Lecture Notes in Computer Science, pp. 646-
   656. Springer, 2001.
3. M. Yoshikawa, T. Amagasa, T. Shimura, and S. Uemura.
   XRel: a path-based approach to storage and retrieval of XML
   documents using relational databases. ACM Transactions on
   Internet Technology, 1(1):110-141, 2001.



                                                             28
Thank you..




              29

Contenu connexe

Similaire à Path-based MXML Storage and Querying

Probabilistic models (part 1)
Probabilistic models (part 1)Probabilistic models (part 1)
Probabilistic models (part 1)KU Leuven
 
Xml query language and navigation
Xml query language and navigationXml query language and navigation
Xml query language and navigationRaghu nath
 
Applied xml programming for microsoft
Applied xml programming for microsoftApplied xml programming for microsoft
Applied xml programming for microsoftRaghu nath
 
X-RECOSA: MULTI-SCALE CONTEXT AGGREGATION FOR MULTI-TURN DIALOGUE GENERATION
X-RECOSA: MULTI-SCALE CONTEXT AGGREGATION FOR MULTI-TURN DIALOGUE GENERATIONX-RECOSA: MULTI-SCALE CONTEXT AGGREGATION FOR MULTI-TURN DIALOGUE GENERATION
X-RECOSA: MULTI-SCALE CONTEXT AGGREGATION FOR MULTI-TURN DIALOGUE GENERATIONIJCI JOURNAL
 
A Study on Mapping Semi-Structured Data to a Structured Data for Inverted Ind...
A Study on Mapping Semi-Structured Data to a Structured Data for Inverted Ind...A Study on Mapping Semi-Structured Data to a Structured Data for Inverted Ind...
A Study on Mapping Semi-Structured Data to a Structured Data for Inverted Ind...BRNSSPublicationHubI
 
Chapter3_a_updated.ppt
Chapter3_a_updated.pptChapter3_a_updated.ppt
Chapter3_a_updated.pptAwais Qarni
 
DATA INTEGRATION (Gaining Access to Diverse Data).ppt
DATA INTEGRATION (Gaining Access to Diverse Data).pptDATA INTEGRATION (Gaining Access to Diverse Data).ppt
DATA INTEGRATION (Gaining Access to Diverse Data).pptcareerPointBasti
 
Mining Features from the Object-Oriented Source Code of Software Variants by ...
Mining Features from the Object-Oriented Source Code of Software Variants by ...Mining Features from the Object-Oriented Source Code of Software Variants by ...
Mining Features from the Object-Oriented Source Code of Software Variants by ...Ra'Fat Al-Msie'deen
 
Towards a Query Rewriting Algorithm Over Proteomics XML Resources
Towards a Query Rewriting Algorithm Over Proteomics XML ResourcesTowards a Query Rewriting Algorithm Over Proteomics XML Resources
Towards a Query Rewriting Algorithm Over Proteomics XML ResourcesCSCJournals
 
HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...
HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...
HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...Kyong-Ha Lee
 
Expressing and Exploiting Multi-Dimensional Locality in DASH
Expressing and Exploiting Multi-Dimensional Locality in DASHExpressing and Exploiting Multi-Dimensional Locality in DASH
Expressing and Exploiting Multi-Dimensional Locality in DASHMenlo Systems GmbH
 
Data integration with a façade. The case of knowledge graph construction.
Data integration with a façade. The case of knowledge graph construction.Data integration with a façade. The case of knowledge graph construction.
Data integration with a façade. The case of knowledge graph construction.Enrico Daga
 
Advanced Web Programming Chapter 12
Advanced Web Programming Chapter 12Advanced Web Programming Chapter 12
Advanced Web Programming Chapter 12RohanMistry15
 
Xml processing-by-asfak
Xml processing-by-asfakXml processing-by-asfak
Xml processing-by-asfakAsfak Mahamud
 
04 sm3 xml_xp_07
04 sm3 xml_xp_0704 sm3 xml_xp_07
04 sm3 xml_xp_07Niit Care
 
Xml session05
Xml session05Xml session05
Xml session05Niit Care
 
MIT302 Lesson 2_Advanced Database Systems.pptx
MIT302 Lesson 2_Advanced Database Systems.pptxMIT302 Lesson 2_Advanced Database Systems.pptx
MIT302 Lesson 2_Advanced Database Systems.pptxelsagalgao
 
unit_5_XML data integration database management
unit_5_XML data integration database managementunit_5_XML data integration database management
unit_5_XML data integration database managementsathiyabcsbs
 

Similaire à Path-based MXML Storage and Querying (20)

Probabilistic models (part 1)
Probabilistic models (part 1)Probabilistic models (part 1)
Probabilistic models (part 1)
 
K04302082087
K04302082087K04302082087
K04302082087
 
Xml query language and navigation
Xml query language and navigationXml query language and navigation
Xml query language and navigation
 
Applied xml programming for microsoft
Applied xml programming for microsoftApplied xml programming for microsoft
Applied xml programming for microsoft
 
X-RECOSA: MULTI-SCALE CONTEXT AGGREGATION FOR MULTI-TURN DIALOGUE GENERATION
X-RECOSA: MULTI-SCALE CONTEXT AGGREGATION FOR MULTI-TURN DIALOGUE GENERATIONX-RECOSA: MULTI-SCALE CONTEXT AGGREGATION FOR MULTI-TURN DIALOGUE GENERATION
X-RECOSA: MULTI-SCALE CONTEXT AGGREGATION FOR MULTI-TURN DIALOGUE GENERATION
 
A Study on Mapping Semi-Structured Data to a Structured Data for Inverted Ind...
A Study on Mapping Semi-Structured Data to a Structured Data for Inverted Ind...A Study on Mapping Semi-Structured Data to a Structured Data for Inverted Ind...
A Study on Mapping Semi-Structured Data to a Structured Data for Inverted Ind...
 
Chapter3_a_updated.ppt
Chapter3_a_updated.pptChapter3_a_updated.ppt
Chapter3_a_updated.ppt
 
DATA INTEGRATION (Gaining Access to Diverse Data).ppt
DATA INTEGRATION (Gaining Access to Diverse Data).pptDATA INTEGRATION (Gaining Access to Diverse Data).ppt
DATA INTEGRATION (Gaining Access to Diverse Data).ppt
 
Mining Features from the Object-Oriented Source Code of Software Variants by ...
Mining Features from the Object-Oriented Source Code of Software Variants by ...Mining Features from the Object-Oriented Source Code of Software Variants by ...
Mining Features from the Object-Oriented Source Code of Software Variants by ...
 
Towards a Query Rewriting Algorithm Over Proteomics XML Resources
Towards a Query Rewriting Algorithm Over Proteomics XML ResourcesTowards a Query Rewriting Algorithm Over Proteomics XML Resources
Towards a Query Rewriting Algorithm Over Proteomics XML Resources
 
HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...
HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...
HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...
 
Expressing and Exploiting Multi-Dimensional Locality in DASH
Expressing and Exploiting Multi-Dimensional Locality in DASHExpressing and Exploiting Multi-Dimensional Locality in DASH
Expressing and Exploiting Multi-Dimensional Locality in DASH
 
Data integration with a façade. The case of knowledge graph construction.
Data integration with a façade. The case of knowledge graph construction.Data integration with a façade. The case of knowledge graph construction.
Data integration with a façade. The case of knowledge graph construction.
 
Advanced Web Programming Chapter 12
Advanced Web Programming Chapter 12Advanced Web Programming Chapter 12
Advanced Web Programming Chapter 12
 
Xml processing-by-asfak
Xml processing-by-asfakXml processing-by-asfak
Xml processing-by-asfak
 
04 sm3 xml_xp_07
04 sm3 xml_xp_0704 sm3 xml_xp_07
04 sm3 xml_xp_07
 
Xml session05
Xml session05Xml session05
Xml session05
 
MIT302 Lesson 2_Advanced Database Systems.pptx
MIT302 Lesson 2_Advanced Database Systems.pptxMIT302 Lesson 2_Advanced Database Systems.pptx
MIT302 Lesson 2_Advanced Database Systems.pptx
 
unit_5_XML data integration database management
unit_5_XML data integration database managementunit_5_XML data integration database management
unit_5_XML data integration database management
 
Bhagaban Mallik
Bhagaban MallikBhagaban Mallik
Bhagaban Mallik
 

Plus de Giannis Tsakonas

Αρχειακά Μεταδεδομένα: Πρότυπα και Διαχείριση στον Παγκόσμιο Ιστό
Αρχειακά Μεταδεδομένα: Πρότυπα και Διαχείριση στον Παγκόσμιο ΙστόΑρχειακά Μεταδεδομένα: Πρότυπα και Διαχείριση στον Παγκόσμιο Ιστό
Αρχειακά Μεταδεδομένα: Πρότυπα και Διαχείριση στον Παγκόσμιο ΙστόGiannis Tsakonas
 
The “Nomenclature of Multidimensionality” in the Digital Libraries Evaluation...
The “Nomenclature of Multidimensionality” in the Digital Libraries Evaluation...The “Nomenclature of Multidimensionality” in the Digital Libraries Evaluation...
The “Nomenclature of Multidimensionality” in the Digital Libraries Evaluation...Giannis Tsakonas
 
Increasing traceability of physical library items through Koha: the case of S...
Increasing traceability of physical library items through Koha: the case of S...Increasing traceability of physical library items through Koha: the case of S...
Increasing traceability of physical library items through Koha: the case of S...Giannis Tsakonas
 
Ακαδημαϊκές Βιβλιοθήκες στην Πάτρα: Προηγμένες υπηρεσίες, δικτύωση & προοπτικές
Ακαδημαϊκές Βιβλιοθήκες στην Πάτρα: Προηγμένες υπηρεσίες, δικτύωση & προοπτικέςΑκαδημαϊκές Βιβλιοθήκες στην Πάτρα: Προηγμένες υπηρεσίες, δικτύωση & προοπτικές
Ακαδημαϊκές Βιβλιοθήκες στην Πάτρα: Προηγμένες υπηρεσίες, δικτύωση & προοπτικέςGiannis Tsakonas
 
We were group no 2: notes for the MLAS2015 workshop
We were group no 2: notes for the MLAS2015 workshopWe were group no 2: notes for the MLAS2015 workshop
We were group no 2: notes for the MLAS2015 workshopGiannis Tsakonas
 
Βιβλιοθήκες & Πολιτισμός: τα προφανή και τα ευνόητα
Βιβλιοθήκες & Πολιτισμός: τα προφανή και τα ευνόηταΒιβλιοθήκες & Πολιτισμός: τα προφανή και τα ευνόητα
Βιβλιοθήκες & Πολιτισμός: τα προφανή και τα ευνόηταGiannis Tsakonas
 
{Tech}changes: the technological state of Greek Libraries.
{Tech}changes: the technological state of Greek Libraries.{Tech}changes: the technological state of Greek Libraries.
{Tech}changes: the technological state of Greek Libraries.Giannis Tsakonas
 
Affective relationships between users & libraries in times of economic stress
Affective relationships between users & libraries in times of economic stressAffective relationships between users & libraries in times of economic stress
Affective relationships between users & libraries in times of economic stressGiannis Tsakonas
 
Charting the Digital Library Evaluation Domain with a Semantically Enhanced M...
Charting the Digital Library Evaluation Domain with a Semantically Enhanced M...Charting the Digital Library Evaluation Domain with a Semantically Enhanced M...
Charting the Digital Library Evaluation Domain with a Semantically Enhanced M...Giannis Tsakonas
 
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - Σεμινάριο Κύπρου
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - Σεμινάριο ΚύπρουΔεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - Σεμινάριο Κύπρου
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - Σεμινάριο ΚύπρουGiannis Tsakonas
 
FRBR και Linked Data - Σεμινάριο Αθήνας
FRBR και Linked Data -  Σεμινάριο ΑθήναςFRBR και Linked Data -  Σεμινάριο Αθήνας
FRBR και Linked Data - Σεμινάριο ΑθήναςGiannis Tsakonas
 
Automatic Medical Document Generation via Spatial SNOMED Elements in Hysteros...
Automatic Medical Document Generation via Spatial SNOMED Elements in Hysteros...Automatic Medical Document Generation via Spatial SNOMED Elements in Hysteros...
Automatic Medical Document Generation via Spatial SNOMED Elements in Hysteros...Giannis Tsakonas
 
Policies for geospatial collections: a research in US and Canadian academic l...
Policies for geospatial collections: a research in US and Canadian academic l...Policies for geospatial collections: a research in US and Canadian academic l...
Policies for geospatial collections: a research in US and Canadian academic l...Giannis Tsakonas
 
Developing a Metadata Model for Historic Buildings: Describing and Linking Ar...
Developing a Metadata Model for Historic Buildings: Describing and Linking Ar...Developing a Metadata Model for Historic Buildings: Describing and Linking Ar...
Developing a Metadata Model for Historic Buildings: Describing and Linking Ar...Giannis Tsakonas
 
Query Expansion and Context: Thoughts on Language, Meaning and Knowledge Orga...
Query Expansion and Context: Thoughts on Language, Meaning and Knowledge Orga...Query Expansion and Context: Thoughts on Language, Meaning and Knowledge Orga...
Query Expansion and Context: Thoughts on Language, Meaning and Knowledge Orga...Giannis Tsakonas
 
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - FRBR και Linked Data
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - FRBR και Linked DataΔεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - FRBR και Linked Data
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - FRBR και Linked DataGiannis Tsakonas
 
Open Bibliographic Data and E-LIS
Open Bibliographic Data and E-LISOpen Bibliographic Data and E-LIS
Open Bibliographic Data and E-LISGiannis Tsakonas
 
Dileo Presentation (in English)
Dileo Presentation (in English)Dileo Presentation (in English)
Dileo Presentation (in English)Giannis Tsakonas
 
Evaluation Insights to Key Processes of Digital Repositories
Evaluation Insights to Key Processes of Digital RepositoriesEvaluation Insights to Key Processes of Digital Repositories
Evaluation Insights to Key Processes of Digital RepositoriesGiannis Tsakonas
 
E-LIS, το ηλεκτρονικό αρχείο για τη Βιβλιοθηκονομία και την Επιστήμη της Πληρ...
E-LIS, το ηλεκτρονικό αρχείο για τη Βιβλιοθηκονομία και την Επιστήμη της Πληρ...E-LIS, το ηλεκτρονικό αρχείο για τη Βιβλιοθηκονομία και την Επιστήμη της Πληρ...
E-LIS, το ηλεκτρονικό αρχείο για τη Βιβλιοθηκονομία και την Επιστήμη της Πληρ...Giannis Tsakonas
 

Plus de Giannis Tsakonas (20)

Αρχειακά Μεταδεδομένα: Πρότυπα και Διαχείριση στον Παγκόσμιο Ιστό
Αρχειακά Μεταδεδομένα: Πρότυπα και Διαχείριση στον Παγκόσμιο ΙστόΑρχειακά Μεταδεδομένα: Πρότυπα και Διαχείριση στον Παγκόσμιο Ιστό
Αρχειακά Μεταδεδομένα: Πρότυπα και Διαχείριση στον Παγκόσμιο Ιστό
 
The “Nomenclature of Multidimensionality” in the Digital Libraries Evaluation...
The “Nomenclature of Multidimensionality” in the Digital Libraries Evaluation...The “Nomenclature of Multidimensionality” in the Digital Libraries Evaluation...
The “Nomenclature of Multidimensionality” in the Digital Libraries Evaluation...
 
Increasing traceability of physical library items through Koha: the case of S...
Increasing traceability of physical library items through Koha: the case of S...Increasing traceability of physical library items through Koha: the case of S...
Increasing traceability of physical library items through Koha: the case of S...
 
Ακαδημαϊκές Βιβλιοθήκες στην Πάτρα: Προηγμένες υπηρεσίες, δικτύωση & προοπτικές
Ακαδημαϊκές Βιβλιοθήκες στην Πάτρα: Προηγμένες υπηρεσίες, δικτύωση & προοπτικέςΑκαδημαϊκές Βιβλιοθήκες στην Πάτρα: Προηγμένες υπηρεσίες, δικτύωση & προοπτικές
Ακαδημαϊκές Βιβλιοθήκες στην Πάτρα: Προηγμένες υπηρεσίες, δικτύωση & προοπτικές
 
We were group no 2: notes for the MLAS2015 workshop
We were group no 2: notes for the MLAS2015 workshopWe were group no 2: notes for the MLAS2015 workshop
We were group no 2: notes for the MLAS2015 workshop
 
Βιβλιοθήκες & Πολιτισμός: τα προφανή και τα ευνόητα
Βιβλιοθήκες & Πολιτισμός: τα προφανή και τα ευνόηταΒιβλιοθήκες & Πολιτισμός: τα προφανή και τα ευνόητα
Βιβλιοθήκες & Πολιτισμός: τα προφανή και τα ευνόητα
 
{Tech}changes: the technological state of Greek Libraries.
{Tech}changes: the technological state of Greek Libraries.{Tech}changes: the technological state of Greek Libraries.
{Tech}changes: the technological state of Greek Libraries.
 
Affective relationships between users & libraries in times of economic stress
Affective relationships between users & libraries in times of economic stressAffective relationships between users & libraries in times of economic stress
Affective relationships between users & libraries in times of economic stress
 
Charting the Digital Library Evaluation Domain with a Semantically Enhanced M...
Charting the Digital Library Evaluation Domain with a Semantically Enhanced M...Charting the Digital Library Evaluation Domain with a Semantically Enhanced M...
Charting the Digital Library Evaluation Domain with a Semantically Enhanced M...
 
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - Σεμινάριο Κύπρου
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - Σεμινάριο ΚύπρουΔεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - Σεμινάριο Κύπρου
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - Σεμινάριο Κύπρου
 
FRBR και Linked Data - Σεμινάριο Αθήνας
FRBR και Linked Data -  Σεμινάριο ΑθήναςFRBR και Linked Data -  Σεμινάριο Αθήνας
FRBR και Linked Data - Σεμινάριο Αθήνας
 
Automatic Medical Document Generation via Spatial SNOMED Elements in Hysteros...
Automatic Medical Document Generation via Spatial SNOMED Elements in Hysteros...Automatic Medical Document Generation via Spatial SNOMED Elements in Hysteros...
Automatic Medical Document Generation via Spatial SNOMED Elements in Hysteros...
 
Policies for geospatial collections: a research in US and Canadian academic l...
Policies for geospatial collections: a research in US and Canadian academic l...Policies for geospatial collections: a research in US and Canadian academic l...
Policies for geospatial collections: a research in US and Canadian academic l...
 
Developing a Metadata Model for Historic Buildings: Describing and Linking Ar...
Developing a Metadata Model for Historic Buildings: Describing and Linking Ar...Developing a Metadata Model for Historic Buildings: Describing and Linking Ar...
Developing a Metadata Model for Historic Buildings: Describing and Linking Ar...
 
Query Expansion and Context: Thoughts on Language, Meaning and Knowledge Orga...
Query Expansion and Context: Thoughts on Language, Meaning and Knowledge Orga...Query Expansion and Context: Thoughts on Language, Meaning and Knowledge Orga...
Query Expansion and Context: Thoughts on Language, Meaning and Knowledge Orga...
 
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - FRBR και Linked Data
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - FRBR και Linked DataΔεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - FRBR και Linked Data
Δεδομένα Βιβλιοθηκών στο μελλοντικό ψηφιακό περιβάλλον - FRBR και Linked Data
 
Open Bibliographic Data and E-LIS
Open Bibliographic Data and E-LISOpen Bibliographic Data and E-LIS
Open Bibliographic Data and E-LIS
 
Dileo Presentation (in English)
Dileo Presentation (in English)Dileo Presentation (in English)
Dileo Presentation (in English)
 
Evaluation Insights to Key Processes of Digital Repositories
Evaluation Insights to Key Processes of Digital RepositoriesEvaluation Insights to Key Processes of Digital Repositories
Evaluation Insights to Key Processes of Digital Repositories
 
E-LIS, το ηλεκτρονικό αρχείο για τη Βιβλιοθηκονομία και την Επιστήμη της Πληρ...
E-LIS, το ηλεκτρονικό αρχείο για τη Βιβλιοθηκονομία και την Επιστήμη της Πληρ...E-LIS, το ηλεκτρονικό αρχείο για τη Βιβλιοθηκονομία και την Επιστήμη της Πληρ...
E-LIS, το ηλεκτρονικό αρχείο για τη Βιβλιοθηκονομία και την Επιστήμη της Πληρ...
 

Dernier

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

Dernier (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

Path-based MXML Storage and Querying

  • 1. 2nd Workshop on Digital Information Management April, 25-26, 2012 Corfu, Greece Path-based MXML Storage and Querying Nikolaos Fousteris 1 , Manolis Gergatsoulis 1 , Yannis Stavrakas 2 1 Department of Archives and Library Science, 2 Institutefor the Management Ionian University of Information Systems (IMIS), Ioannou Theotoki 72,49100 Corfu, Greece. R. C. Athena, {nfouster,manolis}@ionio.gr G. Mpakou 17, 11524, Athens,Greece. yannis@inmis.gr
  • 2. Introduction & Motivation The problem of storing and querying XML data using relational databases has been considered a lot Multidimensional XML is an extension of XML and it is used for representing data that assume different facets, having different values or structure, under different contexts We expand the problem of storing and querying XML to multidimensional XML data 2
  • 3. Outline XML Storage Multidimensional XML(MXML) Fundamental concepts MXML example and graphical representation MXML Storage A path-based approaches is presented Context Representation Multidimensional XPath (MXPath) MXPath to SQL conversion algorithm Summary & Future work 3
  • 4. XML Storage (1/2) Includes techniques to store XML data in Relational Databases XML applications (internet applications) are able to exploit the advantages of the RDBMS technology Operations over XML data, are transformed to operations over the Relational Schema 4
  • 5. XML Storage (2/2) Methodology A Relational Schema is chosen for storing XML data XML queries are produced by users/applications XML queries are translated to SQL queries SQL queries are executed Results are translated back to XML and returned to the user/application Techniques Schema Based Schema Oblivious 5
  • 6. Multidimensional XML (MXML) Fundamental Concepts (1/3) MXML is an extension of XML In MXML data assume different facets, having different value or structure, under different contexts according to a number of dimensions which may be applied to elements and attributes 6
  • 7. MXML – Fundamental Concepts (2/3) Dimension: is a variable. Assigning different values for each dimension it is possible to construct different environments for MXML data World: represents an environment under which data obtain a meaning and is determined by assigning to every dimension a single value Context Specifier: an expression which specifies a set of worlds (context) under which a facet of an MXML element or attribute, is the holding facet of this element or attribute 7
  • 8. MXML – Example <book isbn=[edition=english]"0-13-110362-8"[/] Multidimensional [edition=greek]"0-13-110370-9"[/]> elements/attributes are <title>The C programming language</title> elements/attributes that <authors> have different facets <author>Brian W. Kernighan</author> under different <author>Dennis M. Ritchie</author> contexts. </authors> <@publisher> Each multidimensional element/attribute [edition = english] <publisher>Prentice Hall</publisher>[/] contains one or more [edition = greek] <publisher>Klidarithmos</publisher>[/] facets, called Context </@publisher> element/attributes. <@translator> [edition = greek] <translator>Thomas Moraitis</translator>[/] </@translator> <@price> 8 …….
  • 10. MXML – Fundamental Concepts (3/3) Explicit Context: Is the true context (defined by a context specifier) only within the boundaries of a single multidimensional element/attribute. Inherited Context: Is the context, which is inherited from the ancestor nodes to a descendant node in the MXML graph. Inherited Context Coverage: It constraints the inherited context of a node, so as to contain only the worlds under which the node has access to some value node. 10
  • 11. MXML Storage (1/5) MXML storage includes techniques that store MXML data in Relational Databases. Applications using MXML storage are able to exploit the advantages of the RDBMS technology. MXML additional features (context, different types of MXML nodes/edges etc.) should be considered. 11
  • 12. MXML Storage (2/5) Path-based Approach MXML nodes are divided into groups, according to their types. Each group is stored in a separate table named after the type of the nodes (elements, attributes and value nodes). There is a Path Table, which stores all possible paths of the MXML tree. For node indexing, it is used a dotted format of Dewey-labeling schema. 12
  • 13. MXML Storage (3/5) Path-based Approach Dewey-labeling schema Used for indexing the nodes of MXML tree. A label is a dotted string a1.a2.a3…an. For each ai (i=1…n), i represents the depth and ai the position number of a node among its siblings. Ex. Node “1.1.2” is the 2nd child of node “1.1” and is placed at the 3rd level of the MXML tree. 13
  • 14. MXML Storage (4/5) Path-based Approach 14
  • 15. MXML Storage (5/5) Path-based Approach Path representation Ex. SQL XPath: /book//picture wildcard SQL1: select.. from.. where path LIKE ‘/book%/picture’ case1: ‘/book/cover/picture’ (match) correct case2: ‘/booklet/cover/picture’ (match) error SQL2: select.. from.. where path LIKE ‘#/book#%/picture’ Cases like case2 above could not happen. 15
  • 16. Context Representation (1/5) Question How can we represent in a Relational Database the set of worlds which are contained in a context specifier, for each MXML node? 16
  • 17. Context Representation (2/5) Ordered-Based Representation of Context Basic idea: Total ordering of worlds based on: Total ordering of dimensions Total ordering of dimension values For k dimensions with each dimension i having zi possible values, we may have n=z1*z2*….*zk possible ordered worlds. Each world is assigned a unique integer value between 1 and n (w1 to wn). 17
  • 18. Context Representation (3/5) Ordered-Based Representation of Context dimensions ordering dimension values ordering possible worlds ordering 18
  • 19. Context Representation (4/5) Ordered-Based Representation of Context World Vector: A binary number representing a context specifier. The position of every bit corresponds to the position of a world in the total ordering of all possible worlds. Each bit of the world vector has two possible values: 1 if the corresponding world exists in context specifier or 0 if it does not) binary digit for W1 …… binary digit for Wi …… binary digit for Wn 1 or 0: world exists or not n=possible worlds number possible worlds ordering Ex: world_vector of the expl. context of node 1.1.6.1 = 0011 19
  • 20. Context Representation (5/5) Ordered-Based Representation of Context Explicit Context Table: Assigns an explicit context (expressed in binary format according to world vector representation) to a MXML node. Inherited Context Coverage Table: Assigns an inherited context coverage (expressed in binary format according to world vector representation) to a MXML node. 20
  • 21. Multidimensional XPath (MXPath) (1/2) MXPath: An extension of XPath able to easily express context-aware queries on MXML data. Both explicit context (ec) and inherited context coverage (icc) are used to navigate over multidimensional elements and attributes. Conditions on the explicit context at any point of the path are allowed. Both multidimensional and context nodes can be returned. 21
  • 22. Multidimensional XPath (MXPath) (2/2) MXPath example: [icc() >= “-”],/child::book /child::cover[ec() >= “ed=gr”]/child->picture Query in English: Find the (multidimensional) sub- Result element picture of element cover of the greek edition of the book. cover[ec() >= “ed=gr”] is an explicit context qualifier. The function ec() returns the explicit context of a node. The above qualifier says that the ec of the node cover must be superset of the context described by the context specifier [ed=gr]. 22
  • 23. MXPath to SQL conversion algorithm (1/4) Methodology: Give a MXPath query “Q”, we construct the Multidimensional Tree Pattern “G” of Q. We divide “Q” in sub-paths according to segmentation rules, which define the appropriate segmentation points in “G”. The sub-paths of “Q” and the predicates are used as input for the MXPath to SQL conversion algorithm. 23
  • 24. MXPath to SQL conversion algorithm (2/4) MXPath example: branch /book[authors[author=“Brian W.K.”]] /cover[ec()=“ed=gr”]/->material Query in English: Find the (multidimensional) sub- element material of element cover of the greek edition of the book which has an author named “Brian W.K.”. Notice that the predicate Result [authors[author=“Brian W.K.”]] is a branch. 24
  • 25. MXPath to SQL conversion algorithm (3/4) Multidimensional MXPath query “Q”: Tree Pattern /book[authors[author=“Brian W.K.”]] book(M) /cover[ec()=“ed=gr”]/->material book authors(M) authors author(M) author “Brian W.K.” cover(M) Segmentation (Q): Sub_Path_1: #/book Segmentation Predicate_1: [authors[author=“Brian W.K.”]] branch ( authors[author=“Brian W.K.”] ): cover[ec()=“ed=gr”] Sub_Path_2: #/book#/cover Sub_Path_1: #/book#/authors#/author Sub_Path_3: #/book#/cover#/->material Value_1=“Brian W.K.” material(M) 25
  • 26. MXPath to SQL conversion algorithm (4/4) MXPath: /book[authors[author=“Brian W.K.”]]/cover[ec()=“ed=gr”]/->material SQL: (Select a1.node_id AS a_id From Element_Table a1, Path_Table p1, Select a3.node_id Value_Table v1 From Element_Table a1, Element_Table a2, Where p1.path Like '#/book#/authors#/author' and Element_Table a3, Path_Table p1, a1.path_id = p1.path_id and Path_Table p2, Path_Table p3, v1.path_id = p1.path_id and EC_Table ec1 v1.value = 'Brian W.K.' and Where p1.path Like '#/book' and v1.node_id Like CONCAT(a1.node_id,'%') a1.path_id = p1.path_id and ) AS T a1.node_id = ANY ( ) and Select SUBSTRING_INDEX(a_id,'.', 2) a2.node_id Like CONCAT(a1.node_id,'%') and From p2.path Like '#/book#/cover' and a2.path_id = p2.path_id and a2.node_id = ec1.node_id and ec1.world_vector LIKE '000111' and a3.node_id Like CONCAT(a2.node_id,'%') and p3.path Like '#/book#/cover#/->material' and a3.path_id = p3.path_id 26
  • 27. Summary MXML Storing MXML in Relational DB & Context Representation (path-based approach) MXML querying using MXPath Converting MXPath queries to SQL queries Future work Conversion Algorithm implementation and evaluation Further optimization of the relational schema 27
  • 28. References 1. N. Fousteris, Y. Stavrakas, and M. Gergatsoulis. Multidimensional XPath. In Proc. of iiWAS 2008 , pp. 162-169. ACM, 2008 . 2. M. Gergatsoulis, Y. Stavrakas, and D. Karteris. Incorporating Dimensions in XML and DTD. In Database and Expert Systems Applications, 12th International Conference, DEXA 2001 Munich, Germany, September 3-5, 2001, Proceedings, volume 2113 of Lecture Notes in Computer Science, pp. 646- 656. Springer, 2001. 3. M. Yoshikawa, T. Amagasa, T. Shimura, and S. Uemura. XRel: a path-based approach to storage and retrieval of XML documents using relational databases. ACM Transactions on Internet Technology, 1(1):110-141, 2001. 28