1 / 13

Extensible Markup Language XML

Extensible Markup Language XML. MIS 520 – Database Theory Fall 2001 (Day) Lecture 14. Types of Databases. Data is facts and figures Database is a related set of data Kinds of databases Unstructured Meaning of data interpreted by user Semi-Structured

Download Presentation

Extensible Markup Language XML

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Extensible Markup LanguageXML MIS 520 – Database Theory Fall 2001 (Day) Lecture 14

  2. Types of Databases • Data is facts and figures • Database is a related set of data Kinds of databases • Unstructured • Meaning of data interpreted by user • Semi-Structured • Structure of data wrapped around data • Structured • Fixed structure of data • Data added to the fixed structure

  3. XML • XML is a text based markup language that is fast becoming a standard of data interchange • An open standard from W3C • A direct descendant from SGML Example: Product Inventory Data <Product> <Name>Refrigerator</Name> <Model Number>R3456d2h</Model Number> <Manufacturer>General Electric</Manufacturer> <Price>1290.00</Price> <Quantity>1200</Quantity> </Product>

  4. Data Interchange • XMLs key role is data interchange • Two business partners want to exchange customer data • Agree on a set of tags • Exchange data without having to change internal databases • Other business partners can join in the exchange by using the tagset • New tags can be added to extend the functionality Key to successful data interchange is building consensus and standardizing of tag sets

  5. XML = Universal Data • TCP/IP  Universal Networking • HTML  Universal Rendering • Java  Universal Code • XML  Universal Data • Numerous standard bodies are set up for standardization of tags in different domains • ebXML • XBRL • MML • CML

  6. HTML vs. XML • Both are markup languages • HTML has fixed set of tags • XML allows user to specify the tags based on requirements • Usage • HTML tags specify how to display data • XML tags specify semantics of the data • Tag Interpretation • HTML specifies what each tag and attribute means • XML tags delimit data & leave interpretation to the parsing application • Well formedness • HTML very tolerant of rule violations (nesting, matching tags) • XML very strictly follows rules of well formedness

  7. Structure of XML • Prolog • Instructs the parser as to what it it parsing • Contains processing instructions for processor • Body • Tags - Entities • Attributes - Properties of Entities • Comments - Statements for clarification in the document Example <?xml version=“1.0” encoding=“UTF-8” standalone=“yes” ?>  Prolog <contact> <name> <first name>Sanjay</first name> <last name>Goel</last name> </name> <address>  Body <street>56 Della Street</street> <city>Phoenix</city> <state>AZ</state> <zip>15784</zip> </address> </contact>

  8. Prolog <?xml version=“1.0” encoding=“UTF-8” standalone=“yes” ?> • Contains eclaration that identifies a document as xml • Version • Version of XML markup language used in the data • Not optional • Encoding • Identifies the character set used to encode the data • Default compressed Unicode: UTF-8 • Standalone • Tells whether or not this document references external entity • May contain entity definitions and tag specifications

  9. XML Syntax: Elements & Attributes • Uses less-than and greater-than characters (<…>) as delimiters • Every opening tag must having an accompanying closing tag • <First Name>Sanjay</First Name> • Empty tags do not require an accompanying closing tag. • Empty tags have a forward slash before the greater-than sign e.g. <Name/> • Tags can have attributes which must be enclosed in double quotes • <name first=“Sanjay” last=“Goel”) • Elements should be properly nested • The nesting can not be interleaved • Each document must have one single root element • Elements and attribute names are case sensitive

  10. Tree Structure - Elements • XML documents have a tree structure containing multiple levels of nested tags. • Root element is a single XML element which encloses all of the other XML elements and data in the document • All other elements are children of the root element <?xml version=“1.0” encoding=“UTF-8” standalone=“yes” ?> <contact> Root Element <name> <first name>Sanjay</first name> <last name>Goel</last name> </name> <address> <street>56 Della Street</street>  Child Elements <city>Phoenix</city> <state>AZ</state> <zip>15784</zip> </address> </contact>

  11. Attributes • Attributes are properties associated with an element • Each attribute is a name value pair • No element may contain two attributes with same name • Name and value are strings • Example • <?xml version=“1.0” encoding=“UTF-8” standalone=“yes” ?> • <contact> • <name first=“Sanjay” last=“Goel”></name> Attributes • <address> • <street>56 Della Street</street>  Nested Elements • <city>Phoenix</city> • <state>AZ</state> • <zip>15784</zip> • </address> • </contact>

  12. Elements vs. Attributes • Data should be stored in Elements • Information about data (meta-data) should be stored in attributes • When in doubt use elements • Rules of thumb • Elements should have information which some one may want to read. • Attributes are appropriate for information about document that has nothing to do with content of document e.g. URLs, units, references, ids belong to attributes • What is your meta-data may be some ones data

  13. Comments • XML comments begin with “<!--”and end with “-->” • All data between these delimiters is discarded • <!-- This is a list of names of people --> • Comments should not come before XML declaration • Comments can not be placed inside a tag • Comments may be used to hide and surround tags <Name> <first>Sanjay</first> <!-- <last>Goel</last> -->  Last tag is ignored </Name> • “--” string may not occur inside a comment except as part of its opening and closing tag • <!-- the Red door -- that is the second -->  Illegal

More Related