300 likes | 433 Views
XML Queries and Transformation for. end user. A Visual Language for XML. Presented by: Mir Hashimi Ashu Sharma Ashwani Sharma. Author: Martin Ewing. Introduction. Extensible Markup language XML SCHEMA DTD. What is a Schema?. Schema:
E N D
XML Queries and Transformation for end user A Visual Language for XML Presented by: Mir Hashimi Ashu Sharma Ashwani Sharma Author: Martin Ewing ebis/etat/ebuy/xdia Joint Effort
Introduction • Extensible Markup language XML • SCHEMA • DTD ebis/etat/ebuy/xdia Joint Effort
What is a Schema? • Schema: • A collection of statements that define the structure • of a set of data as well as constraints on that • structure. • Schema language: • A language used to define a schema • such as the XML DTD language or an XML • schema language. ebis/etat/ebuy/xdia Joint Effort
XML - Extensible Markup Language <?xml version=“1.0”?> <USAddress> <name>”Alice Smith”</name> <street>”333 Huntington Ave”</street> <city>”Boston”</city> <state>”MA”</state> <zip>”02115”</zip> </USAddress> ebis/etat/ebuy/xdia Joint Effort
XML Schema - a specification of the synta x and semantics of XML documents DTD - document type definition <!DOCTYPE USAddress [ <!ELEMENT USAddress(name, street, city, state, zip) > <!ELEMENT name (#PCDATA) > <!ELEMENT street (#PCDATA) > <!ELEMENT city (#PCDATA) > <!ELEMENT state (#PCDATA) > <!ELEMENT zip (#PCDATA) > ]> ebis/etat/ebuy/xdia Joint Effort
XML Query Languages • Traditional Way: • SQL • XML QL • Lore ebis/etat/ebuy/xdia Joint Effort
XML document for Music <Music> CD year =1193”> <group> Spyro Gyra </group> <title>Dreams Beyond Control </Title> <track no=“1”> <title>Walk the Walk</title> <composer>Fernandez</composer> </track> <track no=“10”> <title>Same Difference</title> <composer>Becckenstein</composer> <composer>Fernandez</composer> </track> </cd> <score> <title>Morning Dance</title> <group>Spyro Gyra>/group> <composer>Beckenstein</composer> <guitar>C dim 7 …</guitar> </score> </music> ebis/etat/ebuy/xdia Joint Effort
Querying XML in the Traditional Way Lorel: 1) select music.% 2) select music .% where music .%.group = “Spyro Gyra” ebis/etat/ebuy/xdia Joint Effort
XML QL Construct <score> { where <music> <score></score>> Element_AS $s </music> CONSTRUCT $s } </scores> and CONSTRUCT <favorite> { WHERE <music> <$a> <group>Spyro Gyra</group> </> </music> CONSRUCT $x } </favorite> ebis/etat/ebuy/xdia Joint Effort
VISIUAL LANGUAGE FOR XML: • XING Stands for • XML IN GRAPHIC ebis/etat/ebuy/xdia Joint Effort
What can Visual language contribute to XML • Eliminating textual and structure representation • of data. • Querying of XML data can be accomplished • VIA pattern. ebis/etat/ebuy/xdia Joint Effort
Criteria for XML VISUAL Language: • Do not define textual query language • Use simple and intuitive visualization • of XML • Employ pattern matching • Keep the system as simple as possible ebis/etat/ebuy/xdia Joint Effort
CD Year:1993 title:Dream Beyond Control group:Spyro Gyra Track Visualizationof music schema No:1 title: walk the walk composer:Fernande XING No:10 title:same differe composer:Beckensi composer :fernande score Title: morning dance group: spyro Gyra composer:Beckens guitar:C dim 7 ebis/etat/ebuy/xdia Joint Effort
XML and visual Language: • Support for XML • Visual Languages contribution • XML contribution to visual language ebis/etat/ebuy/xdia Joint Effort
Visualization of XML: • Well suited • Attractive • Can be easily exchanged between • computer • Simple and interesting for end user ebis/etat/ebuy/xdia Joint Effort
Document Metaphore: • Free text together with categorized information • Field consist of header and value • Patterns or rules ebis/etat/ebuy/xdia Joint Effort
Document Patterns: • Patterns matching provides a light weight • approach to data processing • Desired data is described by samples or patterns • Usually a patterns consist of constants and • variables ebis/etat/ebuy/xdia Joint Effort
Construct <score> { where <music> <score></score>> Element_AS $s </music> CONSTRUCT $s } </scores> and CONSTRUCT <favorite> { WHERE <music> <$a> <group>Spyro Gyra</group> </> </music> CONSRUCT $x } </favorite> music SCORE In XING all Scores can be found by the above pattern. ebis/etat/ebuy/xdia Joint Effort
music * Group:Spyro gyra music CD score Group: Spyro Gyra Group: Spyro Gyra CDs and guitar scores of favorite Group guitar: ebis/etat/ebuy/xdia Joint Effort
Deep Query: Is given by any pattern that is prefixed by anellipsis, meaning to look for that pattern at any nesting depth within the searched document. music o o * Composer:Beckenstein ebis/etat/ebuy/xdia Joint Effort
Document rule: • Document rule can be used to reformat or re-structure query • results. • Consist of two document patterns that are joined by a • double arrow Q P • P is called the argument pattern • Q is called result pattern ebis/etat/ebuy/xdia Joint Effort
Document Rules: music Piece {* } favorite piece group:Spyro Gyra ebis/etat/ebuy/xdia Joint Effort
Document Rules: music 0 0 * list Composer title composer:Beckenstein ebis/etat/ebuy/xdia Joint Effort
Conclusion Bases on visual document metaphor and the notation of document pattern and rules, XING provides a direct and simple way to locate and select information in XML data resources. Xing is usable by broad audience because the interface is completely independent from a complex, textual formal query language ebis/etat/ebuy/xdia Joint Effort
XML-GL We introduce a data model for XML documents, called XML-GDM (XML Graphical Data Model), which we use to represent both the expected structure of XML documents (i.e., their DTDs) and actual documents. The data model has a graphical representation: a syntax directed translation produces graphical schemas of DTDs or of documents. We envision a typical use of XML-GL in which users are presented with the graphical representation of the DTD and can produce queries in XML-GL with a WYSIWYG interface, with suitable drag and fill commands. ebis/etat/ebuy/xdia Joint Effort
The Requirements for an XML Query Language XML is a recent recommendation of the World Wide Web Consortium for a meta-language to define markups for content publishing on the Web. Derived from SGML, XML allows document producers to define and use the set of tags that best mirrors the structure and conceptual properties of the information they want to publish. The use of XML will bring a major change in the structure of Web information, which will become more and more a collection of semistructured objects, i.e., pieces of content for which at least a partial representation of structure (known as schema in the database lexicon) is available. ebis/etat/ebuy/xdia Joint Effort
<!ELEMENT order (shipto, contact?, item+, date)> <!ATTLIST order number PCDATA #REQUIRED> <!ELEMENT shipto (fulladdress|reference)> <!ELEMENT contact (reference|PCDATA)> <!ELEMENT fulladdress (company, addressline+, city)> <!ELEMENT reference EMPTY> <!ATTLIST reference customer IDREF> <!ELEMENT person (firstname?,lastname,fulladdress)> <!ATTLIST person id ID> <!ELEMENT company PCDATA> <!ELEMENT addressline PCDATA> <!ELEMENT city PCDATA> <!ELEMENT date (day, month, year)> <!ELEMENT day PCDATA> <!ELEMENT month PCDATA> <!ELEMENT year PCDATA> <!ELEMENT item (book, quantity, discount?)> ebis/etat/ebuy/xdia Joint Effort
An XML-GL query consists of four parts: 1. The extract part identifies the target of the query, by indicating the target documents and the target elements inside these documents; by drawing a parallel 2. The match part (optional) specifies logical conditions that the target elements must satisfy in order to be part of the query result. 3. The construct part specifies the structure of the result document; the same query can be formulated with different contruction parts, to obtain results formatted differently. 4. The clip part (optional) specifies the elements from the target documents to be retained in the constructed result. ebis/etat/ebuy/xdia Joint Effort
Besides the basic features shown by these examples, XML-GL addresses the remaining requirements by allowing: String manipulation capabilities that enlarge the range of possible queries. The definition of the transitive closure of the containment and reference relationships. Arbitrary computation on document numeric content via built-in functions. The exploitation of element order in the documents. The use of equivalence rules on XML documents and/or XML-GL queries for defining similarity retrieval. ebis/etat/ebuy/xdia Joint Effort
Questions! ebis/etat/ebuy/xdia Joint Effort