Using Java"s XMLStreamReader PULL XML Parser

By dave on February 17, 2014

In this entry I show how to use the inbuilt Java XMLStreamReader PULL parser class to read an XML file. The XML stream libraries are PULL based XML parsers that do not load the whole document into a memory structure, so therefore are more suited to large volumes of XML. Below is an example XML file for a zoo, it contains Animal data types that have both attributes and data. It is kept simple for the sake of example.

Generate an ATOM feed with GroovyBuilder

By dave on July 1, 2012

Lastly, we look at building an ATOM document using the same principles. ATOM provides a means for site owners to provide updates to site users. It works by providing an XML document showing recent changes to the site. Browsers that support RSS and RSS readers can then highlight these changes to users. An atom formatted document contains two main sections, the header which describes the feed, and then a list of elements, that describe the content.

Reading XML in groovy using XmlParser

By dave on July 1, 2012

Groovy has great inbuilt xml support, and allows you to treat xml paths like objects. Reading elements and attributes is so straightforward that it was one of the factors that got me started with Groovy. So to build an object tree from xml, we just use the XmlParser class. To dereference an element we use normal dot syntax, for an attribute, simply add the at symbol (@) before the name, see the example below.

Write XML with GroovyBuilder

By dave on July 1, 2012

Groovy supports the concept of builders, which provide an abstraction between the required output content and the representation of it. Groovy supports this by providing a tree like structure in groovy code that represents the required HTML or XML: import groovy.xml.MarkupBuilder // create a builder to generate xml like content from a // builder structure, in this case we choose // StringWriter as the output, but it could be any writer.

tcMenu for Arduino

We use cookies to analyse traffic and to personalise content. We also embed Twitter, Youtube and Disqus content on some pages, these companies have their own privacy policies.

Please see our privacy policy should you need more information or wish to adjust your settings.