SlideShare una empresa de Scribd logo
1 de 58
XML Prepared By Srinivasan Jayakumar
Briefly: The Power of XML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Synergy between Java and XML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
HTML and XML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
HTML and XML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Example XML document <?xml version=&quot;1.0&quot;?> <weatherReport> <date>7/14/97</date> <city>North Place</city>, <state>NX</state> <country>USA</country> High Temp: <high scale=&quot;F&quot;>103</high> Low Temp: <low scale=&quot;F&quot;>70</low> Morning: <morning>Partly cloudy, Hazy</morning> Afternoon: <afternoon>Sunny  & amp; hot</afternoon> Evening: <evening>Clear and Cooler</evening> </weatherReport>
Overall structure  ,[object Object],[object Object],[object Object],[object Object]
XML building blocks ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Elements and attributes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],<name first=&quot;David&quot;    last= &quot; Smith&quot;> </name>
Well-formed XML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
XML as a tree ,[object Object],[object Object],novel foreword chapter number=&quot;1&quot; paragraph paragraph paragraph This is the great American novel. It was a dark and stormy night. Suddenly, a shot rang out!
Viewing XML ,[object Object],[object Object],[object Object],[object Object],[object Object]
XML Parsers
Stream Model ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Data Model ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
SAX and DOM ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Difference between SAX and DOM ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
SAX Parsing
Parsing with SAX ,[object Object],[object Object],[object Object],[object Object]
SAX Parsing: process XML as Stream
Simple SAX program ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The  Sample  class ,[object Object],[object Object],[object Object],[object Object],[object Object]
The  Sample  class ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The  Handler  class ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The  Handler  class ,[object Object],[object Object]
Results ,[object Object],[object Object]
More results ,[object Object],[object Object],[object Object],[object Object],[object Object],// empty string // newline // spaces // another newline
Factories ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Parser factories ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Getting a parser ,[object Object],[object Object],[object Object]
Declaring which handler to use ,[object Object],[object Object],[object Object],[object Object],[object Object]
SAX handlers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Class  DefaultHandler ,[object Object],[object Object],[object Object],[object Object]
ContentHandler  methods ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
ContentHandler  methods ,[object Object],[object Object],[object Object],[object Object],[object Object]
Error Handling ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
External parsers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Problems with SAX ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
DOM Parsing
DOM ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
DOM Parsing: process entire document
Simple DOM program ,[object Object],[object Object],[object Object],[object Object]
Simple DOM program ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Reading in the tree ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Structure of the DOM tree ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Operations on  Node s ,[object Object],tag name null ELEMENT_NODE NamedNodeMap &quot;#text&quot; text contents   TEXT_NODE null  name of attribute   value of attribute   ATTRIBUTE_NODE null
Distinguishing  Node  types ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Operations on  Node s ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Operations for  Element s ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Operations on  Text s ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Operations on  Attribute s ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Overview ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Creating a new DOM import javax.xml.parsers.*; import org.w3c.dom.Document; … try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.newDocument(); } catch (ParserConfigurationException e) { ... }
Creating structure ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Methods of  Node ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Methods of  Element ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Method of  Attribute ,[object Object],[object Object],[object Object]
Queries  ?

Más contenido relacionado

La actualidad más candente

Xml And JSON Java
Xml And JSON JavaXml And JSON Java
Xml And JSON JavaHenry Addo
 
SAX, DOM & JDOM parsers for beginners
SAX, DOM & JDOM parsers for beginnersSAX, DOM & JDOM parsers for beginners
SAX, DOM & JDOM parsers for beginnersHicham QAISSI
 
Tool Development 05 - XML Schema, INI, JSON, YAML
Tool Development 05 - XML Schema, INI, JSON, YAMLTool Development 05 - XML Schema, INI, JSON, YAML
Tool Development 05 - XML Schema, INI, JSON, YAMLNick Pruehs
 
Introductionto xslt
Introductionto xsltIntroductionto xslt
Introductionto xsltKumar
 
Tool Development 04 - XML
Tool Development 04 - XMLTool Development 04 - XML
Tool Development 04 - XMLNick Pruehs
 
Java and XML Schema
Java and XML SchemaJava and XML Schema
Java and XML SchemaRaji Ghawi
 
ODTUG Webcast - Thinking Clearly about XML
ODTUG Webcast - Thinking Clearly about XMLODTUG Webcast - Thinking Clearly about XML
ODTUG Webcast - Thinking Clearly about XMLMarco Gralike
 
Java and SPARQL
Java and SPARQLJava and SPARQL
Java and SPARQLRaji Ghawi
 
Object Relational Mapping in PHP
Object Relational Mapping in PHPObject Relational Mapping in PHP
Object Relational Mapping in PHPRob Knight
 

La actualidad más candente (20)

Java and XML
Java and XMLJava and XML
Java and XML
 
DOM and SAX
DOM and SAXDOM and SAX
DOM and SAX
 
Xml And JSON Java
Xml And JSON JavaXml And JSON Java
Xml And JSON Java
 
Querring xml with xpath
Querring xml with xpath Querring xml with xpath
Querring xml with xpath
 
SAX, DOM & JDOM parsers for beginners
SAX, DOM & JDOM parsers for beginnersSAX, DOM & JDOM parsers for beginners
SAX, DOM & JDOM parsers for beginners
 
5 xml parsing
5   xml parsing5   xml parsing
5 xml parsing
 
Dom parser
Dom parserDom parser
Dom parser
 
JAXB
JAXBJAXB
JAXB
 
Understanding XML DOM
Understanding XML DOMUnderstanding XML DOM
Understanding XML DOM
 
XML and XPath details
XML and XPath detailsXML and XPath details
XML and XPath details
 
Tool Development 05 - XML Schema, INI, JSON, YAML
Tool Development 05 - XML Schema, INI, JSON, YAMLTool Development 05 - XML Schema, INI, JSON, YAML
Tool Development 05 - XML Schema, INI, JSON, YAML
 
XML parsing using jaxb
XML parsing using jaxbXML parsing using jaxb
XML parsing using jaxb
 
Introductionto xslt
Introductionto xsltIntroductionto xslt
Introductionto xslt
 
Tool Development 04 - XML
Tool Development 04 - XMLTool Development 04 - XML
Tool Development 04 - XML
 
Jaxb
JaxbJaxb
Jaxb
 
Java and XML Schema
Java and XML SchemaJava and XML Schema
Java and XML Schema
 
ODTUG Webcast - Thinking Clearly about XML
ODTUG Webcast - Thinking Clearly about XMLODTUG Webcast - Thinking Clearly about XML
ODTUG Webcast - Thinking Clearly about XML
 
Xpath presentation
Xpath presentationXpath presentation
Xpath presentation
 
Java and SPARQL
Java and SPARQLJava and SPARQL
Java and SPARQL
 
Object Relational Mapping in PHP
Object Relational Mapping in PHPObject Relational Mapping in PHP
Object Relational Mapping in PHP
 

Destacado

Simple API for XML
Simple API for XMLSimple API for XML
Simple API for XMLguest2556de
 
XML Document Object Model (DOM)
XML Document Object Model (DOM)XML Document Object Model (DOM)
XML Document Object Model (DOM)BOSS Webtech
 
eXtensible Markup Language APIs in Java 1.6 - Simple and efficient XML parsin...
eXtensible Markup Language APIs in Java 1.6 - Simple and efficient XML parsin...eXtensible Markup Language APIs in Java 1.6 - Simple and efficient XML parsin...
eXtensible Markup Language APIs in Java 1.6 - Simple and efficient XML parsin...Wojciech Podgórski
 
DOM ( Document Object Model )
DOM ( Document Object Model )DOM ( Document Object Model )
DOM ( Document Object Model )ITSTB
 
XML.ppt
XML.pptXML.ppt
XML.pptbutest
 
Java Web Service - Summer 2004
Java Web Service - Summer 2004Java Web Service - Summer 2004
Java Web Service - Summer 2004Danny Teng
 
An Introduction to the DOM
An Introduction to the DOMAn Introduction to the DOM
An Introduction to the DOMMindy McAdams
 
Jaxp Xmltutorial 11 200108
Jaxp Xmltutorial 11 200108Jaxp Xmltutorial 11 200108
Jaxp Xmltutorial 11 200108nit Allahabad
 
Java Web Services [2/5]: Introduction to SOAP
Java Web Services [2/5]: Introduction to SOAPJava Web Services [2/5]: Introduction to SOAP
Java Web Services [2/5]: Introduction to SOAPIMC Institute
 
Java Web Services [5/5]: REST and JAX-RS
Java Web Services [5/5]: REST and JAX-RSJava Web Services [5/5]: REST and JAX-RS
Java Web Services [5/5]: REST and JAX-RSIMC Institute
 
Xml Java
Xml JavaXml Java
Xml Javacbee48
 
Java Web Services [3/5]: WSDL, WADL and UDDI
Java Web Services [3/5]: WSDL, WADL and UDDIJava Web Services [3/5]: WSDL, WADL and UDDI
Java Web Services [3/5]: WSDL, WADL and UDDIIMC Institute
 
java API for XML DOM
java API for XML DOMjava API for XML DOM
java API for XML DOMSurinder Kaur
 

Destacado (19)

Xml processors
Xml processorsXml processors
Xml processors
 
XML DOM
XML DOMXML DOM
XML DOM
 
Simple API for XML
Simple API for XMLSimple API for XML
Simple API for XML
 
XML Document Object Model (DOM)
XML Document Object Model (DOM)XML Document Object Model (DOM)
XML Document Object Model (DOM)
 
eXtensible Markup Language APIs in Java 1.6 - Simple and efficient XML parsin...
eXtensible Markup Language APIs in Java 1.6 - Simple and efficient XML parsin...eXtensible Markup Language APIs in Java 1.6 - Simple and efficient XML parsin...
eXtensible Markup Language APIs in Java 1.6 - Simple and efficient XML parsin...
 
Session 1
Session 1Session 1
Session 1
 
XML
XMLXML
XML
 
XSLT
XSLTXSLT
XSLT
 
XML
XMLXML
XML
 
DOM ( Document Object Model )
DOM ( Document Object Model )DOM ( Document Object Model )
DOM ( Document Object Model )
 
XML.ppt
XML.pptXML.ppt
XML.ppt
 
Java Web Service - Summer 2004
Java Web Service - Summer 2004Java Web Service - Summer 2004
Java Web Service - Summer 2004
 
An Introduction to the DOM
An Introduction to the DOMAn Introduction to the DOM
An Introduction to the DOM
 
Jaxp Xmltutorial 11 200108
Jaxp Xmltutorial 11 200108Jaxp Xmltutorial 11 200108
Jaxp Xmltutorial 11 200108
 
Java Web Services [2/5]: Introduction to SOAP
Java Web Services [2/5]: Introduction to SOAPJava Web Services [2/5]: Introduction to SOAP
Java Web Services [2/5]: Introduction to SOAP
 
Java Web Services [5/5]: REST and JAX-RS
Java Web Services [5/5]: REST and JAX-RSJava Web Services [5/5]: REST and JAX-RS
Java Web Services [5/5]: REST and JAX-RS
 
Xml Java
Xml JavaXml Java
Xml Java
 
Java Web Services [3/5]: WSDL, WADL and UDDI
Java Web Services [3/5]: WSDL, WADL and UDDIJava Web Services [3/5]: WSDL, WADL and UDDI
Java Web Services [3/5]: WSDL, WADL and UDDI
 
java API for XML DOM
java API for XML DOMjava API for XML DOM
java API for XML DOM
 

Similar a Java XML Parsing (20)

Processing XML with Java
Processing XML with JavaProcessing XML with Java
Processing XML with Java
 
XML Transformations With PHP
XML Transformations With PHPXML Transformations With PHP
XML Transformations With PHP
 
XML
XMLXML
XML
 
Stax parser
Stax parserStax parser
Stax parser
 
Introduction to XML
Introduction to XMLIntroduction to XML
Introduction to XML
 
Inroduction to XSLT with PHP4
Inroduction to XSLT with PHP4Inroduction to XSLT with PHP4
Inroduction to XSLT with PHP4
 
Unit 2.3
Unit 2.3Unit 2.3
Unit 2.3
 
Boost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco GralikeBoost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
 
XML
XMLXML
XML
 
XML and XSLT
XML and XSLTXML and XSLT
XML and XSLT
 
XML notes.pptx
XML notes.pptxXML notes.pptx
XML notes.pptx
 
Unit 2.3
Unit 2.3Unit 2.3
Unit 2.3
 
6 311 W
6 311 W6 311 W
6 311 W
 
6 311 W
6 311 W6 311 W
6 311 W
 
test
testtest
test
 
Xml
XmlXml
Xml
 
eXtensible Markup Language (XML)
eXtensible Markup Language (XML)eXtensible Markup Language (XML)
eXtensible Markup Language (XML)
 
Developing web apps using Erlang-Web
Developing web apps using Erlang-WebDeveloping web apps using Erlang-Web
Developing web apps using Erlang-Web
 
Python xml processing
Python   xml processingPython   xml processing
Python xml processing
 
Xml
XmlXml
Xml
 

Java XML Parsing

  • 1. XML Prepared By Srinivasan Jayakumar
  • 2.
  • 3.
  • 4.
  • 5.
  • 6. Example XML document <?xml version=&quot;1.0&quot;?> <weatherReport> <date>7/14/97</date> <city>North Place</city>, <state>NX</state> <country>USA</country> High Temp: <high scale=&quot;F&quot;>103</high> Low Temp: <low scale=&quot;F&quot;>70</low> Morning: <morning>Partly cloudy, Hazy</morning> Afternoon: <afternoon>Sunny & amp; hot</afternoon> Evening: <evening>Clear and Cooler</evening> </weatherReport>
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 14.
  • 15.
  • 16.
  • 17.
  • 19.
  • 20. SAX Parsing: process XML as Stream
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 40.
  • 41. DOM Parsing: process entire document
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53. Creating a new DOM import javax.xml.parsers.*; import org.w3c.dom.Document; … try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.newDocument(); } catch (ParserConfigurationException e) { ... }
  • 54.
  • 55.
  • 56.
  • 57.