<html>
<head>
	<title>Mini-XML Programmers Manual, Version 2.8</title>
	<meta name="copyright" content="Copyright 2003-2014">
	<meta name="author" content="Michael R. Sweet">
	<meta name="keywords" content="XML, C, C++, library">
</head>
<body>

<h1 align="right"><a name="INTRO"><img src="0.gif" align="right"
hspace="10" width="100" height="100" alt="0"></a>Introduction</h1>

<p>This programmers manual describes Mini-XML version 2.8, a small
XML parsing library that you can use to read and write XML data
files in your C and C++ applications.</p>

<p>Mini-XML was initially developed for the <a
href="http://gutenprint.sf.net/">Gutenprint</a> project to replace
the rather large and unwieldy <tt>libxml2</tt> library with
something substantially smaller and easier-to-use. It all began one
morning in June of 2003 when Robert posted the following sentence to
the developer's list:</p>

<blockquote><em>It's bad enough that we require libxml2, but rolling
our own XML parser is a bit more than we can handle.</em></blockquote>

<p>I then replied with:</p>

<blockquote><em>Given the limited scope of what you use in XML, it
should be trivial to code a mini-XML API in a few hundred lines of
code.</em></blockquote>

<p>I took my own challenge and coded furiously for two days to
produced the initial public release of Mini-XML, total lines of
code: 696. Robert promptly integrated Mini-XML into Gutenprint
and removed libxml2.</p>

<p>Thanks to lots of feedback and support from various
developers, Mini-XML has evolved since then to provide a more
complete XML implementation and now stands at a whopping 3,792
lines of code, compared to 140,410 lines of code for libxml2
version 2.9.1.</p>

<p>Aside from Gutenprint, Mini-XML is used for the
following projects/software applications:</p>

<ul>

	<li><a href="https://www.cups.org/">CUPS</a></li>

	<li><a
	href="http://zynaddsubfx.sourceforge.net">ZynAddSubFX</a></li>

</ul>

<p>Please file a bug on msweet.org if you would like your project added or
removed from this list, or if you have any comments/quotes you would like me to
publish about your experiences with Mini-XML.</p>

<!-- NEED 1in -->
<h2>Organization of This Document</h2>

<p>This manual is organized into the following chapters and
appendices:</p>

<ul>

	<li>Chapter 1, "<a href="#INSTALL">Building,
	Installing, and Packaging Mini-XML</a>", provides
	compilation, installation, and packaging instructions for
	Mini-XML.</li>

	<li>Chapter 2, "<a href="#BASICS">Getting
	Started with Mini-XML</a>", shows how to use the
	Mini-XML library in your programs.</li>

	<li>Chapter 3, "<a href="#ADVANCED">More
	Mini-XML Programming Techniques</a>", shows additional
	ways to use the Mini-XML library.</li>

	<li>Chapter 4, "<a href="#MXMLDOC">Using the
	mxmldoc Utility</a>", describes how to use the
	<tt>mxmldoc(1)</tt> program to generate software
	documentation.</li>

        <li>Appendix A, "<a href="#LICENSE">Mini-XML License</a>",
        provides the terms and conditions for using and distributing
        Mini-XML.</li>

	<li>Appendix B, "<a href="#RELNOTES">Release Notes</a>",
	lists the changes in each release of Mini-XML.</li>

	<li>Appendix C, "<a href="#REFERENCE">Library
	Reference</a>", contains a complete reference for
	Mini-XML, generated by <tt>mxmldoc</tt>.</li>

	<li>Appendix D, "<a href="#SCHEMA">XML Schema</a>", shows
	the XML schema used for the XML files produced by
	<tt>mxmldoc</tt>.</li>

</ul>

<!-- NEED 10 -->
<h2>Notation Conventions</h2>

<p>Various font and syntax conventions are used in this guide.
Examples and their meanings and uses are explained below:</p>

<dl>

	<dt><code>mxmldoc</code><br>
	<code>mxmldoc(1)</code></dt>

	<dd>The names of commands; the first mention of a command
	or function in a chapter is followed by a manual page
	section number.<br><br></dd>

	<dt><var>/var</var><br>
	<var>/etc/hosts</var></dt>

	<dd>File and directory names.<br><br></dd>

	<dt><tt>Request ID is Printer-123</tt></dt>

	<dd>Screen output.<br><br></dd>

	<dt><kbd>lp -d printer filename ENTER</kbd></dt>

	<dd>Literal user input; special keys like
	<kbd>ENTER</kbd> are in ALL CAPS.<br><br></dd>

	<dt>12.3</dt>

	<dd>Numbers in the text are written using the period (.)
	to indicate the decimal point.<br><br></dd>

</dl>

<!-- NEED 10 -->
<h2>Abbreviations</h2>

<p>The following abbreviations are used throughout this
manual:</p>

<dl>

	<dt>Gb</dt>
	<dd>Gigabytes, or 1073741824 bytes<br><br></dd>

	<dt>kb</dt>
	<dd>Kilobytes, or 1024 bytes<br><br></dd>

	<dt>Mb</dt>
	<dd>Megabytes, or 1048576 bytes<br><br></dd>

	<dt>UTF-8, UTF-16</dt>
	<dd>Unicode Transformation Format, 8-bit or 16-bit<br><br></dd>

	<dt>W3C</dt>
	<dd>World Wide Web Consortium<br><br></dd>

	<dt>XML</dt>
	<dd>Extensible Markup Language<br><br></dd>

</dl>

<!-- NEED 12 -->
<h2>Other References</h2>

<dl>

	<dt>The Unicode Standard, Version 4.0, Addison-Wesley,
	ISBN 0-321-18578-1</dt>

	<dd>The definition of the Unicode character set which is
	used for XML.<br><br></dd>

	<dt><a
	href="http://www.w3.org/TR/2004/REC-xml-20040204/">Extensible
	Markup Language (XML) 1.0 (Third Edition)</a></dt>

	<dd>The XML specification from the World Wide Web
	Consortium (W3C)<br><br></dd>

</dl>

<!-- NEED 6 -->
<h2>Legal Stuff</h2>

<p>The Mini-XML library is copyright 2003-2014 by Michael R Sweet. License terms
are described in <a href="#LICENSE">Appendix A - Mini-XML License</a>.</p>

</body>
</html>
