SlideShare a Scribd company logo
1 of 15
XML and Its Applications
Ben Y. Zhao, CS294-7
Spring 1999
Overview: The XML Language
 What is XML
 Document Type Definitions
 XML and DTD Example
 XML APIs: DOM and SAX
 Pros and Cons
What is XML?
 Extensible Markup Language is a simplified
subset of Standard Generalized Markup Language.
 Tags can be arbitrarily named, and can be used to
encode semantic information about enclosed data.
 Documents can be well-formed, or optionally
validated against Document Type Definitions.
 XML documents can be componentized, and be
distributed across networks.
 Creates a self-describing, text-based framework
around text and binary data
Document Type Definitions
 DTD: Concise structural definition of an XML
document type.
 DTDs are optional, well-formed+DTD=>valid
 DTDs provide a way to enforce XML documents’
compliance to constraints on XML documents.
 Optional elements and attributes add additional
flexibility to support evolving schemas.
 DTDs can be embedded in the XML document,
providing a self-sufficient validating document.
XML and DTD Example (open editor)
<?xml version =“1.0” encoding="US-ASCII"?>
<!ELEMENT PERSON (NAME, (EMAIL)+)>
<!ELEMENT NAME (FIRSTNAME, LASTNAME)>
<!ELEMENT FIRSTNAME (#PCDATA)>
<!ELEMENT LASTNAME (#PCDATA)>
<!ELEMENT EMAIL (#PCDATA)>
<?xml version =“1.0”?>
<PERSON>
<NAME>
<FIRSTNAME>Ben</FIRSTNAME>
<LASTNAME>Zhao</LASTNAME>
</NAME>
<EMAIL>ravenben@cs.berkeley.edu</EMAIL>
<EMAIL>ravenben@joker.cs.berkeley.edu</EMAIL>
</PERSON>
XML APIs: DOM and SAX
 DOM (Document Object Model)
– Provides a definitive API for accessing hierarchical
description languages like XML, HTML
– Specifies interfaces for accessing all part of a document
– Includes inheritance, typing, and constants
 SAX (Simple API for XML)
– An event-driven parser API
– API reports parsing events to application via callbacks
– Optimized for parsing large documents by eliminating
need to keep tree structure in memory
Pros and Cons
Pros
 Simple (human readable)
 Standard (easy to
integrate, widely adopted)
 Portable (cross-platform
data exchange)
 Flexible
(handles complex data)
 Extensible
(dynamic data model)
Cons
 Text-based means space
consuming
 Standardization is still a
problem to be solved
 Evolutionary model means
ill-defined functionality
core
Overview: Current XML Efforts
 XML Tools
 Evolving Recommendations
 Industry Databases
 XML Query Languages
 Research Query Engines
 Relevance to Systems Research
XML Tools
 Parsers
– Existing parsers support DOM or SAX
– Varying XML compliance and performance
 Editors for XSL, XML and DTDs
 Browsers
 Converters
– Applications that convert from and to XML
 Document Management
– Lightweight searching and indexing tools
– Difference engines
Related Evolving Recommendations
 Namespaces: qualifying names with URI references
 XML-data, defines XML vocabulary for schemas
(definitions of characteristics of classes of objects)
 XLink
– XML Linking language, sophisticated link styles
 XPointers
– XML Pointers to all parts of XML documents
 RDF (Resource Description Framework)
– model for using XML to describe metadata on the web
 DCD(Document Content Description)
– XML-data + RDF
Industry XML Databases
 ObjectStore eXcelon
– Middle tier server that imports from different DB stores
– XQL queries applied to integrated data
– Provides “cache server” for XML imported from
heterogeneous DB backends
– Focuses on web applications as access methods to DBs
 Poet XML Repository
– Object oriented database with standard DB
functionality, with OQL
– Focuses on use of XML to faciliate EDI
XML Query Languages
 XML-QL (AT&T, Inria, U.Wash.)
– Very similar to SQL
– Optimizations and other DB techniques applicable
– Data integration and conversion from hetero. sources
 XQL (Microsoft)
– Based on the XSL transformation language
– Context based and XML-specific query matching
– Departure from the database-centric SQL format
 LOREL (Stanford)
– See notes from Last Week’s LOREL presentation
Research Query Engines
 LORE (Stanford)
– Based on the LOREL query language
– A feature-rich DB approach to XML storage and query,
with context-free indexing, path indexing through
dataguides, query optimizations, and views
 XSet (UCB, Ninja)
– Streamlined XML search engine implemented in Java
– Focus on high performance rather than feature set
– Small size favors integration into low-level applications
– Research issues on next slide
Relevance to Systems Work
 FSML: XML meta-index for fast access to files
 Distributed Service Discovery (Ninja SDS)
– Service descriptions encoded in XML
 Semantically Enhanced Web searching
 Data exchange across heterogeneous platforms
 Low overhead scripting language for thin clients
 User preferences
– Embedded logic and scripting inside XML
Discussion
 XML: flexible description language with optional
DTD validation
 Provides flexible framework for marking data with
inferred semantics
 Provides additional push towards standardization,
but not as a result of the language itself
 Are the benefits of the XML movement due to
something intrinsic in the language?
 Description language of choice? Pervasive among
future applications?

More Related Content

Similar to ravenbenweb xml and its application .PPT

Structured Dynamics' Semantic Technologies Product Stack
Structured Dynamics' Semantic Technologies Product StackStructured Dynamics' Semantic Technologies Product Stack
Structured Dynamics' Semantic Technologies Product StackMike Bergman
 
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
 
Metadata Workshop - Utrecht - November 5, 2008
Metadata Workshop - Utrecht - November 5, 2008Metadata Workshop - Utrecht - November 5, 2008
Metadata Workshop - Utrecht - November 5, 2008askamy
 
Catalog-based Conversion from Relational Database into XML Schema (XSD)
Catalog-based Conversion from Relational Database into XML Schema (XSD)Catalog-based Conversion from Relational Database into XML Schema (XSD)
Catalog-based Conversion from Relational Database into XML Schema (XSD)CSCJournals
 
Applied xml programming for microsoft
Applied xml programming for microsoftApplied xml programming for microsoft
Applied xml programming for microsoftRaghu nath
 
Oracle soa xml faq
Oracle soa xml faqOracle soa xml faq
Oracle soa xml faqxavier john
 
prefix based labelling scheme for xml data
prefix based labelling scheme for xml dataprefix based labelling scheme for xml data
prefix based labelling scheme for xml dataakash1391
 
eXtensible Markup Language
eXtensible Markup LanguageeXtensible Markup Language
eXtensible Markup LanguageAditya Raj
 
Xml and xml processor
Xml and xml processorXml and xml processor
Xml and xml processorHimanshu Soni
 
Xml and xml processor
Xml and xml processorXml and xml processor
Xml and xml processorHimanshu Soni
 
Infromation Reprentation, Structured Data and Semantics
Infromation Reprentation,Structured Data and SemanticsInfromation Reprentation,Structured Data and Semantics
Infromation Reprentation, Structured Data and SemanticsYogendra Tamang
 
IT6801-Service Oriented Architecture
IT6801-Service Oriented ArchitectureIT6801-Service Oriented Architecture
IT6801-Service Oriented ArchitectureMadhu Amarnath
 
Development of a new indexing technique for XML document retrieval
Development of a new indexing technique for XML document retrievalDevelopment of a new indexing technique for XML document retrieval
Development of a new indexing technique for XML document retrievalAmjad Ali
 
XML and Databases
XML and DatabasesXML and Databases
XML and DatabasesCittrex
 
Xml viva questions
Xml viva questionsXml viva questions
Xml viva questionsVipul Naik
 
Web data management (chapter-1)
Web data management (chapter-1)Web data management (chapter-1)
Web data management (chapter-1)Dhaval Asodariya
 

Similar to ravenbenweb xml and its application .PPT (20)

Structured Dynamics' Semantic Technologies Product Stack
Structured Dynamics' Semantic Technologies Product StackStructured Dynamics' Semantic Technologies Product Stack
Structured Dynamics' Semantic Technologies Product Stack
 
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
 
Metadata Workshop - Utrecht - November 5, 2008
Metadata Workshop - Utrecht - November 5, 2008Metadata Workshop - Utrecht - November 5, 2008
Metadata Workshop - Utrecht - November 5, 2008
 
Catalog-based Conversion from Relational Database into XML Schema (XSD)
Catalog-based Conversion from Relational Database into XML Schema (XSD)Catalog-based Conversion from Relational Database into XML Schema (XSD)
Catalog-based Conversion from Relational Database into XML Schema (XSD)
 
Applied xml programming for microsoft
Applied xml programming for microsoftApplied xml programming for microsoft
Applied xml programming for microsoft
 
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, ...)
 
Oracle soa xml faq
Oracle soa xml faqOracle soa xml faq
Oracle soa xml faq
 
XPATH_XSLT-1.pptx
XPATH_XSLT-1.pptxXPATH_XSLT-1.pptx
XPATH_XSLT-1.pptx
 
prefix based labelling scheme for xml data
prefix based labelling scheme for xml dataprefix based labelling scheme for xml data
prefix based labelling scheme for xml data
 
eXtensible Markup Language
eXtensible Markup LanguageeXtensible Markup Language
eXtensible Markup Language
 
Xml and xml processor
Xml and xml processorXml and xml processor
Xml and xml processor
 
Xml and xml processor
Xml and xml processorXml and xml processor
Xml and xml processor
 
Infromation Reprentation, Structured Data and Semantics
Infromation Reprentation,Structured Data and SemanticsInfromation Reprentation,Structured Data and Semantics
Infromation Reprentation, Structured Data and Semantics
 
IT6801-Service Oriented Architecture
IT6801-Service Oriented ArchitectureIT6801-Service Oriented Architecture
IT6801-Service Oriented Architecture
 
Development of a new indexing technique for XML document retrieval
Development of a new indexing technique for XML document retrievalDevelopment of a new indexing technique for XML document retrieval
Development of a new indexing technique for XML document retrieval
 
uptu web technology unit 2 Xml2
uptu web technology unit 2 Xml2uptu web technology unit 2 Xml2
uptu web technology unit 2 Xml2
 
XML and Databases
XML and DatabasesXML and Databases
XML and Databases
 
XML
XMLXML
XML
 
Xml viva questions
Xml viva questionsXml viva questions
Xml viva questions
 
Web data management (chapter-1)
Web data management (chapter-1)Web data management (chapter-1)
Web data management (chapter-1)
 

More from ubaidullah75790

vu-re-lecture-33 requirement engineering.ppt
vu-re-lecture-33 requirement engineering.pptvu-re-lecture-33 requirement engineering.ppt
vu-re-lecture-33 requirement engineering.pptubaidullah75790
 
Requirement management traceability.ppt
Requirement management  traceability.pptRequirement management  traceability.ppt
Requirement management traceability.pptubaidullah75790
 
SRS for banking system requirement engineer.ppt
SRS for banking system requirement engineer.pptSRS for banking system requirement engineer.ppt
SRS for banking system requirement engineer.pptubaidullah75790
 
Agile Method requirement engineering.ppt
Agile Method requirement engineering.pptAgile Method requirement engineering.ppt
Agile Method requirement engineering.pptubaidullah75790
 
traceabilty transport layer is liye .ppt
traceabilty transport layer is liye .ppttraceabilty transport layer is liye .ppt
traceabilty transport layer is liye .pptubaidullah75790
 
vu-re-lecture-45 requirement engineering.ppt
vu-re-lecture-45 requirement engineering.pptvu-re-lecture-45 requirement engineering.ppt
vu-re-lecture-45 requirement engineering.pptubaidullah75790
 
SRS for banking system requirement s.ppt
SRS for banking system requirement s.pptSRS for banking system requirement s.ppt
SRS for banking system requirement s.pptubaidullah75790
 
SRS 2 requiremenr engineering in computer.ppt
SRS 2 requiremenr engineering in computer.pptSRS 2 requiremenr engineering in computer.ppt
SRS 2 requiremenr engineering in computer.pptubaidullah75790
 
Requirments management traceability.ppt
Requirments  management traceability.pptRequirments  management traceability.ppt
Requirments management traceability.pptubaidullah75790
 
SRS 1 software requirement specificatio.ppt
SRS 1 software requirement specificatio.pptSRS 1 software requirement specificatio.ppt
SRS 1 software requirement specificatio.pptubaidullah75790
 
vu-re-lecture-10 requirement engineering.ppt
vu-re-lecture-10 requirement engineering.pptvu-re-lecture-10 requirement engineering.ppt
vu-re-lecture-10 requirement engineering.pptubaidullah75790
 
vu-re-lecture-09 engineering requiremen.ppt
vu-re-lecture-09 engineering requiremen.pptvu-re-lecture-09 engineering requiremen.ppt
vu-re-lecture-09 engineering requiremen.pptubaidullah75790
 
vu-re-lecture-08 requirement engineer.ppt
vu-re-lecture-08 requirement engineer.pptvu-re-lecture-08 requirement engineer.ppt
vu-re-lecture-08 requirement engineer.pptubaidullah75790
 
vu-re-lecture-06 requirement engineer.ppt
vu-re-lecture-06 requirement engineer.pptvu-re-lecture-06 requirement engineer.ppt
vu-re-lecture-06 requirement engineer.pptubaidullah75790
 
vu-re-lecture-05 requirement engineering.ppt
vu-re-lecture-05 requirement engineering.pptvu-re-lecture-05 requirement engineering.ppt
vu-re-lecture-05 requirement engineering.pptubaidullah75790
 
vu-re-lecture-04 software engineering.ppt
vu-re-lecture-04 software engineering.pptvu-re-lecture-04 software engineering.ppt
vu-re-lecture-04 software engineering.pptubaidullah75790
 
vu-re-lecture-03 requirement engineering.ppt
vu-re-lecture-03 requirement engineering.pptvu-re-lecture-03 requirement engineering.ppt
vu-re-lecture-03 requirement engineering.pptubaidullah75790
 
vu-re-lecture-02 requirements engineering.ppt
vu-re-lecture-02 requirements engineering.pptvu-re-lecture-02 requirements engineering.ppt
vu-re-lecture-02 requirements engineering.pptubaidullah75790
 
vu-re-lecture-01 software engineering.ppt
vu-re-lecture-01 software engineering.pptvu-re-lecture-01 software engineering.ppt
vu-re-lecture-01 software engineering.pptubaidullah75790
 
vu-re-lecture software requirement-25.ppt
vu-re-lecture software requirement-25.pptvu-re-lecture software requirement-25.ppt
vu-re-lecture software requirement-25.pptubaidullah75790
 

More from ubaidullah75790 (20)

vu-re-lecture-33 requirement engineering.ppt
vu-re-lecture-33 requirement engineering.pptvu-re-lecture-33 requirement engineering.ppt
vu-re-lecture-33 requirement engineering.ppt
 
Requirement management traceability.ppt
Requirement management  traceability.pptRequirement management  traceability.ppt
Requirement management traceability.ppt
 
SRS for banking system requirement engineer.ppt
SRS for banking system requirement engineer.pptSRS for banking system requirement engineer.ppt
SRS for banking system requirement engineer.ppt
 
Agile Method requirement engineering.ppt
Agile Method requirement engineering.pptAgile Method requirement engineering.ppt
Agile Method requirement engineering.ppt
 
traceabilty transport layer is liye .ppt
traceabilty transport layer is liye .ppttraceabilty transport layer is liye .ppt
traceabilty transport layer is liye .ppt
 
vu-re-lecture-45 requirement engineering.ppt
vu-re-lecture-45 requirement engineering.pptvu-re-lecture-45 requirement engineering.ppt
vu-re-lecture-45 requirement engineering.ppt
 
SRS for banking system requirement s.ppt
SRS for banking system requirement s.pptSRS for banking system requirement s.ppt
SRS for banking system requirement s.ppt
 
SRS 2 requiremenr engineering in computer.ppt
SRS 2 requiremenr engineering in computer.pptSRS 2 requiremenr engineering in computer.ppt
SRS 2 requiremenr engineering in computer.ppt
 
Requirments management traceability.ppt
Requirments  management traceability.pptRequirments  management traceability.ppt
Requirments management traceability.ppt
 
SRS 1 software requirement specificatio.ppt
SRS 1 software requirement specificatio.pptSRS 1 software requirement specificatio.ppt
SRS 1 software requirement specificatio.ppt
 
vu-re-lecture-10 requirement engineering.ppt
vu-re-lecture-10 requirement engineering.pptvu-re-lecture-10 requirement engineering.ppt
vu-re-lecture-10 requirement engineering.ppt
 
vu-re-lecture-09 engineering requiremen.ppt
vu-re-lecture-09 engineering requiremen.pptvu-re-lecture-09 engineering requiremen.ppt
vu-re-lecture-09 engineering requiremen.ppt
 
vu-re-lecture-08 requirement engineer.ppt
vu-re-lecture-08 requirement engineer.pptvu-re-lecture-08 requirement engineer.ppt
vu-re-lecture-08 requirement engineer.ppt
 
vu-re-lecture-06 requirement engineer.ppt
vu-re-lecture-06 requirement engineer.pptvu-re-lecture-06 requirement engineer.ppt
vu-re-lecture-06 requirement engineer.ppt
 
vu-re-lecture-05 requirement engineering.ppt
vu-re-lecture-05 requirement engineering.pptvu-re-lecture-05 requirement engineering.ppt
vu-re-lecture-05 requirement engineering.ppt
 
vu-re-lecture-04 software engineering.ppt
vu-re-lecture-04 software engineering.pptvu-re-lecture-04 software engineering.ppt
vu-re-lecture-04 software engineering.ppt
 
vu-re-lecture-03 requirement engineering.ppt
vu-re-lecture-03 requirement engineering.pptvu-re-lecture-03 requirement engineering.ppt
vu-re-lecture-03 requirement engineering.ppt
 
vu-re-lecture-02 requirements engineering.ppt
vu-re-lecture-02 requirements engineering.pptvu-re-lecture-02 requirements engineering.ppt
vu-re-lecture-02 requirements engineering.ppt
 
vu-re-lecture-01 software engineering.ppt
vu-re-lecture-01 software engineering.pptvu-re-lecture-01 software engineering.ppt
vu-re-lecture-01 software engineering.ppt
 
vu-re-lecture software requirement-25.ppt
vu-re-lecture software requirement-25.pptvu-re-lecture software requirement-25.ppt
vu-re-lecture software requirement-25.ppt
 

Recently uploaded

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 

ravenbenweb xml and its application .PPT

  • 1. XML and Its Applications Ben Y. Zhao, CS294-7 Spring 1999
  • 2. Overview: The XML Language  What is XML  Document Type Definitions  XML and DTD Example  XML APIs: DOM and SAX  Pros and Cons
  • 3. What is XML?  Extensible Markup Language is a simplified subset of Standard Generalized Markup Language.  Tags can be arbitrarily named, and can be used to encode semantic information about enclosed data.  Documents can be well-formed, or optionally validated against Document Type Definitions.  XML documents can be componentized, and be distributed across networks.  Creates a self-describing, text-based framework around text and binary data
  • 4. Document Type Definitions  DTD: Concise structural definition of an XML document type.  DTDs are optional, well-formed+DTD=>valid  DTDs provide a way to enforce XML documents’ compliance to constraints on XML documents.  Optional elements and attributes add additional flexibility to support evolving schemas.  DTDs can be embedded in the XML document, providing a self-sufficient validating document.
  • 5. XML and DTD Example (open editor) <?xml version =“1.0” encoding="US-ASCII"?> <!ELEMENT PERSON (NAME, (EMAIL)+)> <!ELEMENT NAME (FIRSTNAME, LASTNAME)> <!ELEMENT FIRSTNAME (#PCDATA)> <!ELEMENT LASTNAME (#PCDATA)> <!ELEMENT EMAIL (#PCDATA)> <?xml version =“1.0”?> <PERSON> <NAME> <FIRSTNAME>Ben</FIRSTNAME> <LASTNAME>Zhao</LASTNAME> </NAME> <EMAIL>ravenben@cs.berkeley.edu</EMAIL> <EMAIL>ravenben@joker.cs.berkeley.edu</EMAIL> </PERSON>
  • 6. XML APIs: DOM and SAX  DOM (Document Object Model) – Provides a definitive API for accessing hierarchical description languages like XML, HTML – Specifies interfaces for accessing all part of a document – Includes inheritance, typing, and constants  SAX (Simple API for XML) – An event-driven parser API – API reports parsing events to application via callbacks – Optimized for parsing large documents by eliminating need to keep tree structure in memory
  • 7. Pros and Cons Pros  Simple (human readable)  Standard (easy to integrate, widely adopted)  Portable (cross-platform data exchange)  Flexible (handles complex data)  Extensible (dynamic data model) Cons  Text-based means space consuming  Standardization is still a problem to be solved  Evolutionary model means ill-defined functionality core
  • 8. Overview: Current XML Efforts  XML Tools  Evolving Recommendations  Industry Databases  XML Query Languages  Research Query Engines  Relevance to Systems Research
  • 9. XML Tools  Parsers – Existing parsers support DOM or SAX – Varying XML compliance and performance  Editors for XSL, XML and DTDs  Browsers  Converters – Applications that convert from and to XML  Document Management – Lightweight searching and indexing tools – Difference engines
  • 10. Related Evolving Recommendations  Namespaces: qualifying names with URI references  XML-data, defines XML vocabulary for schemas (definitions of characteristics of classes of objects)  XLink – XML Linking language, sophisticated link styles  XPointers – XML Pointers to all parts of XML documents  RDF (Resource Description Framework) – model for using XML to describe metadata on the web  DCD(Document Content Description) – XML-data + RDF
  • 11. Industry XML Databases  ObjectStore eXcelon – Middle tier server that imports from different DB stores – XQL queries applied to integrated data – Provides “cache server” for XML imported from heterogeneous DB backends – Focuses on web applications as access methods to DBs  Poet XML Repository – Object oriented database with standard DB functionality, with OQL – Focuses on use of XML to faciliate EDI
  • 12. XML Query Languages  XML-QL (AT&T, Inria, U.Wash.) – Very similar to SQL – Optimizations and other DB techniques applicable – Data integration and conversion from hetero. sources  XQL (Microsoft) – Based on the XSL transformation language – Context based and XML-specific query matching – Departure from the database-centric SQL format  LOREL (Stanford) – See notes from Last Week’s LOREL presentation
  • 13. Research Query Engines  LORE (Stanford) – Based on the LOREL query language – A feature-rich DB approach to XML storage and query, with context-free indexing, path indexing through dataguides, query optimizations, and views  XSet (UCB, Ninja) – Streamlined XML search engine implemented in Java – Focus on high performance rather than feature set – Small size favors integration into low-level applications – Research issues on next slide
  • 14. Relevance to Systems Work  FSML: XML meta-index for fast access to files  Distributed Service Discovery (Ninja SDS) – Service descriptions encoded in XML  Semantically Enhanced Web searching  Data exchange across heterogeneous platforms  Low overhead scripting language for thin clients  User preferences – Embedded logic and scripting inside XML
  • 15. Discussion  XML: flexible description language with optional DTD validation  Provides flexible framework for marking data with inferred semantics  Provides additional push towards standardization, but not as a result of the language itself  Are the benefits of the XML movement due to something intrinsic in the language?  Description language of choice? Pervasive among future applications?