SlideShare una empresa de Scribd logo
1 de 25
eXtensible   Markup Language (XML)



                     Presented By:
                     Nisha Dwivedi
Outline of Presentation
 Introduction
 Comparison between XML and HTML
 XML Syntax
 XML Queries and Mediators
 Challenges
 Summary
What is XML?
 eXtensible Markup Language
 Markup language for documents containing
  structured information
 Defined by four specifications:
       XML, the Extensible Markup Language
       XLL, the Extensible Linking Language
       XSL, the Extensible Style Language
       XUA, the XML User Agent
XML….
 Based on Standard Generalized Markup
  Language (SGML)
 Version 1.0 introduced by World Wide Web
  Consortium (W3C) in 1998
 Bridge for data exchange on

  the Web
Comparisons
     XML                        HTML
 Extensible set of tags    Fixed set of tags
 Content orientated        Presentation oriented
 Standard Data             No data validation
  infrastructure             capabilities
 Allows multiple           Single presentation
  output forms
Authoring XML
    Elements
   An XML element is made up of a start tag, an end
    tag, and data in between.
   Example:
       <director> Matthew Dunn </director>
   Example of another element with the same value:
       <actor> Matthew Dunn </actor>
   XML tags are case-sensitive:
       <CITY> <City> <city>
   XML can abbreviate empty elements, for example:
    <married> </married> can be abbreviated to
    <married/>
Authoring XML
Elements (cont’d)
 An attribute is a name-value pair separated
  by an equal sign (=).
 Example:

   <City ZIP=“94608”> Emeryville </City>
 Attributes are used to attach additional,
  secondary information to an element.
Authoring XML
    Documents
 A basic XML document is an XML element
  that can, but might not, include nested XML
  elements.
 Example:
    <books>
       <book isbn=“123”>
           <title> Second Chance </title>
           <author> Matthew Dunn </author>
       </book>
    </books>
XML Data Model:
  Example
<BOOKS>
<book id=“123”                                   BOOKS
  loc=“library”>                           book
                            loc=“library”              article
  <author>Hull</author>
  <title>California</title>                    ref
                                  123                    555
  <year> 1995 </year>
</book>                        author     year     author        title
<article id=“555”                  title
  ref=“123”>
  <author>Su</author>        Hull          1995 Su             Purdue
  <title> Purdue</title>           California
</article>
</BOOKS>
Authoring XML
Documents (cont’d)
 Authoring   guidelines:
   All elements must have an end tag.
   All elements must be cleanly nested
    (overlapping elements are not allowed).
   All attribute values must be enclosed in
    quotation marks.
   Each document must have a unique first
    element, the root node.
Authoring XML Data
Islands
   A data island is an XML document that exists
    within an HTML page.

   The <XML> element marks the beginning of
    the data island, and its ID attribute provides a
    name that you can use to reference the data
    island.
Authoring XML Data
Islands (cont’d)
   Example:
    <XML ID=“XMLID”>
       <customer>
            <name> Mark Hanson </name>
            <custID> 29085 </custID>
       </customer>
    </XML>
Document Type
    Definitions (DTD)
 An XML document may have an optional
  DTD.
 DTD serves as grammar for the underlying
  XML document, and it is part of XML
  language.
 DTDs are somewhat unsatisfactory, but no
  consensus exists so far beyond the basic
  DTDs.
 DTD has the form:
    <!DOCTYPE name [markupdeclaration]>
DTD (cont’d)
Consider an XML document:
<db><person><name>Alan</name>
             <age>42</age>
             <email>agb@usa.net </email>
     </person>
     <person>………</person>
     ……….
</db>
DTD (cont’d)

   DTD for it might be:
    <!DOCTYPE db [
      <!ELEMENT db (person*)>
      <!ELEMENT person (name, age, email)>
      <!ELEMENT name (#PCDATA)>
      <!ELEMENT age (#PCDATA)>
      <!ELEMENT email (#PCDATA)>
    ]>
DTD (cont’d)
Occurrence Indicator:
Indicator                   Occurrence

(no indicator)   Required        One and only
                                 one
?                Optional        None or one

*                Optional,       None, one, or
                 repeatable      more
+                Required,       One or more
                 repeatable
XML Query Languages
   The first XML query languages
       LOREL (Stanford)
       XQL
 Several other query languages have been
  developed (e.g. UNQL, XPath)
 XML-QL considered by W3C for
  standardization
 Currently W3C is considering and working on
  a new query language: XQuery
A Query Language for
    XML: XML-QL
 Developed at AT&T labs
 To extract data from the input XML data
 Has variables to which data is bound and
  templates which show how the output XML
  data is to be constructed
 Uses the XML syntax
 Based on a where/construct syntax
    Where combines from and where parts of
     SQL
    Construct corresponds to SQL’s select
XML-QL Query: Example 1
   Retrieve all authors of books published by
    Morgan Kaufmann:

    where <book>
              <publisher><name>
               Morgan Kaufmann
              </name> </publisher>
             <title> $T </title>
             <author> $A </author>
        </book> in “www.a.b.c/bib.xml”
    construct <result> $A </result>
XML-QL Query: Example 2
   XML-QL query asking for all bookstores that sell
    The Java Programming Language for under $25:
where <store>
          <name> $N </name>
          <book>
          <title> The Java Programming Language </title>
          <price> $P </price>
          </book>
       </store> in “www.store/bib.xml”
       $P < 25
construct <result> $N </result>
Semistructured Data and
Mediators
   Semistructured data is often encountered in data
    exchange and integration
   At the sources the data may be structured (e.g. from
    relational databases)
   We model the data as semistructured to facilitate
    exchange and integration
   Users see an integrated semistructured view that
    they can query
   Queries are eventually reformulated into queries over
    the structured resources (e.g. SQL)
   Only results need to be materialized
What is a mediator ?
   A complex software component that
    integrates and transforms data from one or
    several sources using a declarative
    specification
   Two main contexts:
     Data conversion: converts data between
      two different models
          e.g. by translating data from a relational
           database into XML
     Data  integration: integrates data from
      different sources into a common view
Converting Relational
Database to XML
Example: Export the following data into XML and group
  books by store
 Relational Database:

  Store (sid, name, phone)
  Book (bid, title, authors)
  StoreBook (sid , bid, price, stock)

                      price     stock

 name       Store        StoreBook         Book     authors


    phone       sid                     title     bid
Converting Relational
    Database to XML (Cont’d)
   XML:
    <store> <name> … </name>
           <phone> … </phone>
           <book> <title>… </title>
                  <authors> … </authors>
                  <price> … </price>
           </book>
           <book>…</book>
           …
    </store>
Challenges facing XML
   Integration of data sharing



   Security

Más contenido relacionado

La actualidad más candente

XML Document Object Model (DOM)
XML Document Object Model (DOM)XML Document Object Model (DOM)
XML Document Object Model (DOM)BOSS Webtech
 
Xml basics
Xml basicsXml basics
Xml basicsKumar
 
Building XML Based Applications
Building XML Based ApplicationsBuilding XML Based Applications
Building XML Based ApplicationsPrabu U
 
XML for beginners
XML for beginnersXML for beginners
XML for beginnerssafysidhu
 
XML and Databases
XML and DatabasesXML and Databases
XML and DatabasesCittrex
 
Introduction to XML and Databases
Introduction to XML and DatabasesIntroduction to XML and Databases
Introduction to XML and Databasestorp42
 
XML, DTD & XSD Overview
XML, DTD & XSD OverviewXML, DTD & XSD Overview
XML, DTD & XSD OverviewPradeep Rapolu
 
Xml and xml processor
Xml and xml processorXml and xml processor
Xml and xml processorHimanshu Soni
 
02 well formed and valid documents
02 well formed and valid documents02 well formed and valid documents
02 well formed and valid documentsBaskarkncet
 

La actualidad más candente (20)

XML Document Object Model (DOM)
XML Document Object Model (DOM)XML Document Object Model (DOM)
XML Document Object Model (DOM)
 
03 x files
03 x files03 x files
03 x files
 
Xml basics
Xml basicsXml basics
Xml basics
 
Unit iv xml
Unit iv xmlUnit iv xml
Unit iv xml
 
fundamentals of XML
fundamentals of XMLfundamentals of XML
fundamentals of XML
 
00 introduction
00 introduction00 introduction
00 introduction
 
Building XML Based Applications
Building XML Based ApplicationsBuilding XML Based Applications
Building XML Based Applications
 
XML Databases
XML DatabasesXML Databases
XML Databases
 
DOM-XML
DOM-XMLDOM-XML
DOM-XML
 
Dom parser
Dom parserDom parser
Dom parser
 
Xml dom
Xml domXml dom
Xml dom
 
Xml p2 Lecture Notes
Xml p2 Lecture NotesXml p2 Lecture Notes
Xml p2 Lecture Notes
 
XML for beginners
XML for beginnersXML for beginners
XML for beginners
 
XML and Databases
XML and DatabasesXML and Databases
XML and Databases
 
Xml processors
Xml processorsXml processors
Xml processors
 
Introduction to XML and Databases
Introduction to XML and DatabasesIntroduction to XML and Databases
Introduction to XML and Databases
 
XML, DTD & XSD Overview
XML, DTD & XSD OverviewXML, DTD & XSD Overview
XML, DTD & XSD Overview
 
Xml and xml processor
Xml and xml processorXml and xml processor
Xml and xml processor
 
Xml schema
Xml schemaXml schema
Xml schema
 
02 well formed and valid documents
02 well formed and valid documents02 well formed and valid documents
02 well formed and valid documents
 

Destacado

Moving from Relational to Document Store
Moving from Relational to Document StoreMoving from Relational to Document Store
Moving from Relational to Document StoreGraham Tackley
 
GRAPHITE — An Extensible Graph Traversal Framework for RDBMS
GRAPHITE — An Extensible Graph Traversal Framework for RDBMSGRAPHITE — An Extensible Graph Traversal Framework for RDBMS
GRAPHITE — An Extensible Graph Traversal Framework for RDBMSGraph-TA
 
Dare to build vertical design with relational data (Entity-Attribute-Value)
Dare to build vertical design with relational data (Entity-Attribute-Value)Dare to build vertical design with relational data (Entity-Attribute-Value)
Dare to build vertical design with relational data (Entity-Attribute-Value)Ivo Andreev
 
Entity Attribute Value (Eav)
Entity   Attribute   Value (Eav)Entity   Attribute   Value (Eav)
Entity Attribute Value (Eav)Tâm
 
7. Relational Database Design in DBMS
7. Relational Database Design in DBMS7. Relational Database Design in DBMS
7. Relational Database Design in DBMSkoolkampus
 
Introduction to XML
Introduction to XMLIntroduction to XML
Introduction to XMLyht4ever
 
Relational Database Design - Lecture 4 - Introduction to Databases (1007156ANR)
Relational Database Design - Lecture 4 - Introduction to Databases (1007156ANR)Relational Database Design - Lecture 4 - Introduction to Databases (1007156ANR)
Relational Database Design - Lecture 4 - Introduction to Databases (1007156ANR)Beat Signer
 

Destacado (9)

Moving from Relational to Document Store
Moving from Relational to Document StoreMoving from Relational to Document Store
Moving from Relational to Document Store
 
GRAPHITE — An Extensible Graph Traversal Framework for RDBMS
GRAPHITE — An Extensible Graph Traversal Framework for RDBMSGRAPHITE — An Extensible Graph Traversal Framework for RDBMS
GRAPHITE — An Extensible Graph Traversal Framework for RDBMS
 
Dare to build vertical design with relational data (Entity-Attribute-Value)
Dare to build vertical design with relational data (Entity-Attribute-Value)Dare to build vertical design with relational data (Entity-Attribute-Value)
Dare to build vertical design with relational data (Entity-Attribute-Value)
 
Entity Attribute Value (Eav)
Entity   Attribute   Value (Eav)Entity   Attribute   Value (Eav)
Entity Attribute Value (Eav)
 
Extensible Data Modeling
Extensible Data ModelingExtensible Data Modeling
Extensible Data Modeling
 
InnoDB Locking Explained with Stick Figures
InnoDB Locking Explained with Stick FiguresInnoDB Locking Explained with Stick Figures
InnoDB Locking Explained with Stick Figures
 
7. Relational Database Design in DBMS
7. Relational Database Design in DBMS7. Relational Database Design in DBMS
7. Relational Database Design in DBMS
 
Introduction to XML
Introduction to XMLIntroduction to XML
Introduction to XML
 
Relational Database Design - Lecture 4 - Introduction to Databases (1007156ANR)
Relational Database Design - Lecture 4 - Introduction to Databases (1007156ANR)Relational Database Design - Lecture 4 - Introduction to Databases (1007156ANR)
Relational Database Design - Lecture 4 - Introduction to Databases (1007156ANR)
 

Similar a Xml nisha dwivedi (20)

Xml 215-presentation
Xml 215-presentationXml 215-presentation
Xml 215-presentation
 
Web page concept Basic
Web page concept  BasicWeb page concept  Basic
Web page concept Basic
 
Unit 10: XML and Beyond (Sematic Web, Web Services, ...)
Unit 10: XML and Beyond (Sematic Web, Web Services, ...)Unit 10: XML and Beyond (Sematic Web, Web Services, ...)
Unit 10: XML and Beyond (Sematic Web, Web Services, ...)
 
XML
XMLXML
XML
 
Web services Overview in depth
Web services Overview in depthWeb services Overview in depth
Web services Overview in depth
 
Xml
XmlXml
Xml
 
[DSBW Spring 2010] Unit 10: XML and Web And beyond
[DSBW Spring 2010] Unit 10: XML and Web And beyond[DSBW Spring 2010] Unit 10: XML and Web And beyond
[DSBW Spring 2010] Unit 10: XML and Web And beyond
 
Xml
Xml Xml
Xml
 
Basics of XML
Basics of XMLBasics of XML
Basics of XML
 
Chapter4
Chapter4Chapter4
Chapter4
 
Xml transformation language
Xml transformation languageXml transformation language
Xml transformation language
 
Xslt
XsltXslt
Xslt
 
Xml and DTD's
Xml and DTD'sXml and DTD's
Xml and DTD's
 
1 xml fundamentals
1 xml fundamentals1 xml fundamentals
1 xml fundamentals
 
eXtensible Markup Language (XML)
eXtensible Markup Language (XML)eXtensible Markup Language (XML)
eXtensible Markup Language (XML)
 
Introduction to xml schema
Introduction to xml schemaIntroduction to xml schema
Introduction to xml schema
 
XPATH_XSLT-1.pptx
XPATH_XSLT-1.pptxXPATH_XSLT-1.pptx
XPATH_XSLT-1.pptx
 
Web Information Systems XML
Web Information Systems XMLWeb Information Systems XML
Web Information Systems XML
 
XML Schema.pptx
XML Schema.pptxXML Schema.pptx
XML Schema.pptx
 
5 xsl (formatting xml documents)
5   xsl (formatting xml documents)5   xsl (formatting xml documents)
5 xsl (formatting xml documents)
 

Xml nisha dwivedi

  • 1. eXtensible Markup Language (XML) Presented By: Nisha Dwivedi
  • 2. Outline of Presentation  Introduction  Comparison between XML and HTML  XML Syntax  XML Queries and Mediators  Challenges  Summary
  • 3. What is XML?  eXtensible Markup Language  Markup language for documents containing structured information  Defined by four specifications:  XML, the Extensible Markup Language  XLL, the Extensible Linking Language  XSL, the Extensible Style Language  XUA, the XML User Agent
  • 4. XML….  Based on Standard Generalized Markup Language (SGML)  Version 1.0 introduced by World Wide Web Consortium (W3C) in 1998  Bridge for data exchange on the Web
  • 5. Comparisons XML HTML  Extensible set of tags  Fixed set of tags  Content orientated  Presentation oriented  Standard Data  No data validation infrastructure capabilities  Allows multiple  Single presentation output forms
  • 6. Authoring XML Elements  An XML element is made up of a start tag, an end tag, and data in between.  Example: <director> Matthew Dunn </director>  Example of another element with the same value: <actor> Matthew Dunn </actor>  XML tags are case-sensitive: <CITY> <City> <city>  XML can abbreviate empty elements, for example: <married> </married> can be abbreviated to <married/>
  • 7. Authoring XML Elements (cont’d)  An attribute is a name-value pair separated by an equal sign (=).  Example: <City ZIP=“94608”> Emeryville </City>  Attributes are used to attach additional, secondary information to an element.
  • 8. Authoring XML Documents  A basic XML document is an XML element that can, but might not, include nested XML elements.  Example: <books> <book isbn=“123”> <title> Second Chance </title> <author> Matthew Dunn </author> </book> </books>
  • 9. XML Data Model: Example <BOOKS> <book id=“123” BOOKS loc=“library”> book loc=“library” article <author>Hull</author> <title>California</title> ref 123 555 <year> 1995 </year> </book> author year author title <article id=“555” title ref=“123”> <author>Su</author> Hull 1995 Su Purdue <title> Purdue</title> California </article> </BOOKS>
  • 10. Authoring XML Documents (cont’d)  Authoring guidelines:  All elements must have an end tag.  All elements must be cleanly nested (overlapping elements are not allowed).  All attribute values must be enclosed in quotation marks.  Each document must have a unique first element, the root node.
  • 11. Authoring XML Data Islands  A data island is an XML document that exists within an HTML page.  The <XML> element marks the beginning of the data island, and its ID attribute provides a name that you can use to reference the data island.
  • 12. Authoring XML Data Islands (cont’d)  Example: <XML ID=“XMLID”> <customer> <name> Mark Hanson </name> <custID> 29085 </custID> </customer> </XML>
  • 13. Document Type Definitions (DTD)  An XML document may have an optional DTD.  DTD serves as grammar for the underlying XML document, and it is part of XML language.  DTDs are somewhat unsatisfactory, but no consensus exists so far beyond the basic DTDs.  DTD has the form: <!DOCTYPE name [markupdeclaration]>
  • 14. DTD (cont’d) Consider an XML document: <db><person><name>Alan</name> <age>42</age> <email>agb@usa.net </email> </person> <person>………</person> ………. </db>
  • 15. DTD (cont’d)  DTD for it might be: <!DOCTYPE db [ <!ELEMENT db (person*)> <!ELEMENT person (name, age, email)> <!ELEMENT name (#PCDATA)> <!ELEMENT age (#PCDATA)> <!ELEMENT email (#PCDATA)> ]>
  • 16. DTD (cont’d) Occurrence Indicator: Indicator Occurrence (no indicator) Required One and only one ? Optional None or one * Optional, None, one, or repeatable more + Required, One or more repeatable
  • 17. XML Query Languages  The first XML query languages  LOREL (Stanford)  XQL  Several other query languages have been developed (e.g. UNQL, XPath)  XML-QL considered by W3C for standardization  Currently W3C is considering and working on a new query language: XQuery
  • 18. A Query Language for XML: XML-QL  Developed at AT&T labs  To extract data from the input XML data  Has variables to which data is bound and templates which show how the output XML data is to be constructed  Uses the XML syntax  Based on a where/construct syntax  Where combines from and where parts of SQL  Construct corresponds to SQL’s select
  • 19. XML-QL Query: Example 1  Retrieve all authors of books published by Morgan Kaufmann: where <book> <publisher><name> Morgan Kaufmann </name> </publisher> <title> $T </title> <author> $A </author> </book> in “www.a.b.c/bib.xml” construct <result> $A </result>
  • 20. XML-QL Query: Example 2  XML-QL query asking for all bookstores that sell The Java Programming Language for under $25: where <store> <name> $N </name> <book> <title> The Java Programming Language </title> <price> $P </price> </book> </store> in “www.store/bib.xml” $P < 25 construct <result> $N </result>
  • 21. Semistructured Data and Mediators  Semistructured data is often encountered in data exchange and integration  At the sources the data may be structured (e.g. from relational databases)  We model the data as semistructured to facilitate exchange and integration  Users see an integrated semistructured view that they can query  Queries are eventually reformulated into queries over the structured resources (e.g. SQL)  Only results need to be materialized
  • 22. What is a mediator ?  A complex software component that integrates and transforms data from one or several sources using a declarative specification  Two main contexts:  Data conversion: converts data between two different models  e.g. by translating data from a relational database into XML  Data integration: integrates data from different sources into a common view
  • 23. Converting Relational Database to XML Example: Export the following data into XML and group books by store  Relational Database: Store (sid, name, phone) Book (bid, title, authors) StoreBook (sid , bid, price, stock) price stock name Store StoreBook Book authors phone sid title bid
  • 24. Converting Relational Database to XML (Cont’d)  XML: <store> <name> … </name> <phone> … </phone> <book> <title>… </title> <authors> … </authors> <price> … </price> </book> <book>…</book> … </store>
  • 25. Challenges facing XML  Integration of data sharing  Security