Hi Folks,
Parsing is cool!
Parsing is about taking a flat (linear) structure, such as this flat list of Book data:
<Books>
<Title>Parsing Techniques</Title>
<Author>Dick Grune</Author>
<Author> Ceriel J.H. Jacobs</Author>
<Date>2007</Date>
<ISBN>978-0-387-20248-8</ISBN>
<Publisher>Springer</Publisher>
<Title>Introduction to Graph Theory</Title>
<Author>Richard J. Trudeau</Author>
<Date>1993</Date>
<ISBN>0-486-67870-9</ISBN>
<Publisher>Dover Publications</Publisher>
<Title>Introduction to Formal Languages</Title>
<Author>Gyorgy E. Revesz</Author>
<Date>2012</Date>
<ISBN>0-486-66697-2</ISBN>
<Publisher>Dover Publications</Publisher>
</Books>
And adding structure to it:
<Books>
<Book>
<Title>Parsing Techniques</Title>
<Authors>
<Author>Dick Grune</Author>
<Author> Ceriel J.H. Jacobs</Author>
</Authors>
<Date>2007</Date>
<ISBN>978-0-387-20248-8</ISBN>
<Publisher>Springer</Publisher>
</Book>
<Book>
<Title>Introduction to Graph Theory</Title>
<Authors>
<Author>Richard J. Trudeau</Author>
</Authors>
<Date>1993</Date>
<ISBN>0-486-67870-9</ISBN>
<Publisher>Dover Publications</Publisher>
</Book>
<Book>
<Title>Introduction to Formal Languages</Title>
<Authors>
<Author>Gyorgy E. Revesz</Author>
</Authors>
<Date>2012</Date>
<ISBN>0-486-66697-2</ISBN>
<Publisher>Dover Publications</Publisher>
</Book>
</Books>
I wrote a short tutorial on parsing. I use XML in the examples, although parsing can be used to structure many things besides XML.
Here is my tutorial:
http://www.xfront.com/parsing-techniques/bottom-up-parser/Parsing-for-XML-Developers.pptx