Save documentation updates.

pull/193/head
Michael R Sweet 18 years ago
parent 6d33fb1163
commit b4eca043a0
  1. 44
      doc/install.html
  2. 121
      doc/intro.html
  3. 2
      doc/license.html
  4. 166
      doc/mxml.html
  5. 4
      doc/mxmldoc.xsd
  6. 32
      doc/relnotes.html

@ -5,12 +5,31 @@
and Packaging Mini-XML</a></h1> and Packaging Mini-XML</a></h1>
<p>This chapter describes how to build, install, and package <p>This chapter describes how to build, install, and package
Mini-XML on your system.</p> Mini-XML on your system from the source archive. You will need an
ANSI/ISO-C compatible compiler to build Mini-XML - GCC works, as
do most vendors' C compilers. If you are building Mini-XML on
Windows, we recommend using the Visual C++ environment with the
supplied solution file. For other operating systems, you'll need a
POSIX-compatible shell and <tt>make</tt> program in addition to
the C compiler.</p>
<h2>Compiling Mini-XML</h2> <h2>Compiling Mini-XML</h2>
<p>Mini-XML comes with an autoconf-based configure script; just <p>Mini-XML comes with both an autoconf-based configure script
type the following command to get things going:</p> and a Visual C++ solution that can be used to compile the library
and associated tools.</p>
<h3>Compiling with Visual C++</h3>
<p>Open the <VAR>mxml.sln</VAR> solution in the <VAR>vcnet</VAR>
folder. Choose the desired build configuration, "Debug" (the
default) or "Release", and then choose <VAR>Build Solution</VAR>
from the <VAR>Build</VAR> menu.</p>
<h3>Compiling with Command-Line Tools</h3>
<p>Type the following command to configure the Mini-XML source
code for your system:</p>
<pre> <pre>
<kbd>./configure ENTER</kbd> <kbd>./configure ENTER</kbd>
@ -41,17 +60,18 @@ program to verify that things are working, as follows:</p>
<h2>Installing Mini-XML</h2> <h2>Installing Mini-XML</h2>
<p>Use the <tt>make</tt> command with the <kbd>install</kbd> <p>If you are using Visual C++, copy the <VAR>mxml.lib</VAR> and
target to install Mini-XML in the configured directories:</p> and <VAR>mxml.h</VAR> files to the Visual C++ <VAR>lib</VAR> and
<VAR>include<VAR> directories, respectively.</p>
<p>Otherwise, use the <tt>make</tt> command with the
<kbd>install</kbd> target to install Mini-XML in the configured
directories:</p>
<pre> <pre>
<kbd>make install ENTER</kbd> <kbd>make install ENTER</kbd>
</pre> </pre>
<p>If you are using Mini-XML under Microsoft Windows with Visual
C++, use the included project files in the <var>vcnet</var>
subdirectory to build the library instead.</p>
<h2>Creating Mini-XML Packages</h2> <h2>Creating Mini-XML Packages</h2>
@ -86,10 +106,8 @@ to create portable and native packages for your system:</p>
<p>The packages are stored in a subdirectory named <p>The packages are stored in a subdirectory named
<var>dist</var> for your convenience. The portable packages <var>dist</var> for your convenience. The portable packages
utilize scripts and tar files to install the software on the utilize scripts and tar files to install the software on the
target system; this is especially useful when installing on target system. After extracting the package archive, use the
systems with different Linux distributions. Use the <var>mxml.install</var> script to install the software.</p>
<var>mxml.install</var> script to install the software and
<var>mxml.remove</var> script to remove the software.</p>
<p>The native packages will be in the local OS's native format: <p>The native packages will be in the local OS's native format:
RPM for Red Hat Linux, DPKG for Debian Linux, PKG for Solaris, RPM for Red Hat Linux, DPKG for Debian Linux, PKG for Solaris,

@ -48,10 +48,10 @@ on the data based upon schema files or other sources of
definition information, nor does it support character entities definition information, nor does it support character entities
other than those required by the XML specification.</p> other than those required by the XML specification.</p>
<!-- NEED 4in --> <!-- NEED 6 -->
<h2>Legal Stuff</h2> <h2>Legal Stuff</h2>
<p>The Mini-XML library is copyright 2003-2005 by Michael <p>The Mini-XML library is copyright 2003-2007 by Michael
Sweet.</p> Sweet.</p>
<p>This library is free software; you can redistribute it and/or <p>This library is free software; you can redistribute it and/or
@ -71,7 +71,7 @@ more details.</p>
<h2>History</h2> <h2>History</h2>
<p>Mini-XML was initially developed for the <a <p>Mini-XML was initially developed for the <a
href='http://gimp-print.sf.net/'>Gimp-Print</a> project to href='http://gutenprint.sf.net/'>Gutenprint</a> project to
replace the rather large and unwieldy <tt>libxml2</tt> library replace the rather large and unwieldy <tt>libxml2</tt> library
with something substantially smaller and easier-to-use. It all with something substantially smaller and easier-to-use. It all
began one morning in June of 2003 when Robert posted the began one morning in June of 2003 when Robert posted the
@ -89,14 +89,16 @@ of code.</blockquote>
<p>I took my own challenge and coded furiously for two days to <p>I took my own challenge and coded furiously for two days to
produced the initial public release of Mini-XML, total lines of produced the initial public release of Mini-XML, total lines of
code: 696. Robert promptly integrated Mini-XML into Gimp-Print code: 696. Robert promptly integrated Mini-XML into Gutenprint
and removed libxml2.</p> and removed libxml2.</p>
<p>Thanks to lots of feedback and support from various <p>Thanks to lots of feedback and support from various
developers, Mini-XML has evolved since then to provide a more developers, Mini-XML has evolved since then to provide a more
complete XML implementation and now stands at a whopping 2,974 complete XML implementation and now stands at a whopping 3,441
lines of code, compared to 103,893 lines of code for libxml2 lines of code, compared to 103,893 lines of code for libxml2
version 2.6.9. Aside from Gimp-Print, Mini-XML is used for the version 2.6.9.</p>
<p>Aside from Gutenprint, Mini-XML is used for the
following projects/software applications:</p> following projects/software applications:</p>
<ul> <ul>
@ -159,116 +161,89 @@ appendices:</p>
</ul> </ul>
<!-- NEED 4in --> <!-- NEED 10 -->
<h2>Notation Conventions</h2> <h2>Notation Conventions</h2>
<p>Various font and syntax conventions are used in this guide. <p>Various font and syntax conventions are used in this guide.
Examples and their meanings and uses are explained below:</p> Examples and their meanings and uses are explained below:</p>
<center><table width='80%'> <dl>
<tr>
<th>Example</th>
<td>&nbsp;&nbsp;&nbsp;</td>
<th>Description</th>
</tr>
<tr><td colspan='3'>&nbsp;</td></tr>
<tr valign='top'>
<td><code>lpstat</code><br />
<code>lpstat(1)</code></td>
<td>&nbsp;&nbsp;&nbsp;</td>
<td>The names of commands; the first mention of a command or
function in a chapter is followed by a manual page section
number.</td>
</tr>
<tr><td colspan='3'>&nbsp;</td></tr>
<tr valign='top'>
<td><var>/var</var><br />
<var>/usr/share/cups/data/testprint.ps</var></td>
<td>&nbsp;&nbsp;&nbsp;</td>
<td>File and directory names.</td>
</tr>
<tr><td colspan='3'>&nbsp;</td></tr>
<tr valign='top'>
<td nowrap><tt>Request ID is Printer-123</tt></td>
<td>&nbsp;&nbsp;&nbsp;</td>
<td>Screen output.</td>
</tr>
<tr><td colspan='3'>&nbsp;</td></tr>
<tr valign='top'>
<td nowrap><kbd>lp -d printer filename ENTER</kbd></td>
<td>&nbsp;&nbsp;&nbsp;</td>
<td>Literal user input; special keys like <kbd>ENTER</kbd> are
in ALL CAPS.</td>
</tr>
<tr><td colspan='3'>&nbsp;</td></tr>
<tr valign='top'>
<td>12.3</td>
<td>&nbsp;&nbsp;&nbsp;</td>
<td>Numbers in the text are written using the period (.) to indicate
the decimal point.</td>
</tr>
</table></center>
<!-- NEED 4in --> <dt><code>lpstat</code><br>
<code>lpstat(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>/usr/share/cups/data/testprint.ps</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> <h2>Abbreviations</h2>
<p>The following abbreviations are used throughout this <p>The following abbreviations are used throughout this
manual:</p> manual:</p>
<blockquote>
<dl> <dl>
<dt>Gb</dt> <dt>Gb</dt>
<dd>Gigabytes, or 1073741824 bytes<br />&nbsp;</dd> <dd>Gigabytes, or 1073741824 bytes<br><br></dd>
<dt>kb</dt> <dt>kb</dt>
<dd>Kilobytes, or 1024 bytes<br />&nbsp;</dd> <dd>Kilobytes, or 1024 bytes<br><br></dd>
<dt>Mb</dt> <dt>Mb</dt>
<dd>Megabytes, or 1048576 bytes<br />&nbsp;</dd> <dd>Megabytes, or 1048576 bytes<br><br></dd>
<dt>UTF-8, UTF-16</dt> <dt>UTF-8, UTF-16</dt>
<dd>Unicode Transformation Format, 8-bit or 16-bit<br />&nbsp;</dd> <dd>Unicode Transformation Format, 8-bit or 16-bit<br><br></dd>
<dt>W3C</dt> <dt>W3C</dt>
<dd>World Wide Web Consortium<br />&nbsp;</dd> <dd>World Wide Web Consortium<br><br></dd>
<dt>XML</dt> <dt>XML</dt>
<dd>Extensible Markup Language<br />&nbsp;</dd> <dd>Extensible Markup Language<br><br></dd>
</dl> </dl>
</blockquote>
<!-- NEED 12 -->
<h2>Other References</h2> <h2>Other References</h2>
<blockquote>
<dl> <dl>
<dt>The Unicode Standard, Version 4.0, Addison-Wesley, <dt>The Unicode Standard, Version 4.0, Addison-Wesley,
ISBN 0-321-18578-1</dt> ISBN 0-321-18578-1</dt>
<dd>The definition of the Unicode character set which is <dd>The definition of the Unicode character set which is
used for XML.<br />&nbsp;</dd> used for XML.<br><br></dd>
<dt><a <dt><a
href='http://www.w3.org/TR/2004/REC-xml-20040204/'>Extensible href='http://www.w3.org/TR/2004/REC-xml-20040204/'>Extensible
Markup Language (XML) 1.0 (Third Edition)</a></dt> Markup Language (XML) 1.0 (Third Edition)</a></dt>
<dd>The XML specification from the World Wide Web <dd>The XML specification from the World Wide Web
Consortium (W3C)<br />&nbsp;</dd> Consortium (W3C)<br><br></dd>
</dl> </dl>
</blockquote>
</body> </body>
</html> </html>

@ -539,7 +539,7 @@ POSSIBILITY OF SUCH DAMAGES.</p>
<p align='center'><big>END OF TERMS AND CONDITIONS</big></p> <p align='center'><big>END OF TERMS AND CONDITIONS</big></p>
<h4>How to Apply These Terms to Your New Libraries</h4> <p><big>How to Apply These Terms to Your New Libraries</big></p>
<p>If you develop a new library, and you want it to be of the greatest <p>If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that possible use to the public, we recommend making it free software that

@ -3,7 +3,7 @@
<HEAD> <HEAD>
<TITLE>Mini-XML Programmers Manual, Version 2.3</TITLE> <TITLE>Mini-XML Programmers Manual, Version 2.3</TITLE>
<META NAME="author" CONTENT="Michael Sweet"> <META NAME="author" CONTENT="Michael Sweet">
<META NAME="copyright" CONTENT="Copyright 2003-2005"> <META NAME="copyright" CONTENT="Copyright 2003-2007">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=iso-iso-8859-1"> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=iso-iso-8859-1">
<STYLE TYPE="text/css"><!-- <STYLE TYPE="text/css"><!--
BODY { font-family: serif } BODY { font-family: serif }
@ -22,7 +22,7 @@ PRE { font-family: monospace }
<CENTER><A HREF="#CONTENTS"><IMG SRC="logo.png" BORDER="0" WIDTH="256" HEIGHT="256" ALT="Mini-XML Programmers Manual, Version 2.3"><BR> <CENTER><A HREF="#CONTENTS"><IMG SRC="logo.png" BORDER="0" WIDTH="256" HEIGHT="256" ALT="Mini-XML Programmers Manual, Version 2.3"><BR>
<H1>Mini-XML Programmers Manual, Version 2.3</H1></A><BR> <H1>Mini-XML Programmers Manual, Version 2.3</H1></A><BR>
Michael Sweet<BR> Michael Sweet<BR>
Copyright 2003-2005<BR> Copyright 2003-2007<BR>
</CENTER> </CENTER>
<HR NOSHADE> <HR NOSHADE>
<H1 ALIGN="CENTER"><A NAME="CONTENTS">Table of Contents</A></H1> <H1 ALIGN="CENTER"><A NAME="CONTENTS">Table of Contents</A></H1>
@ -67,10 +67,8 @@ Copyright 2003-2005<BR>
</LI> </LI>
</UL> </UL>
<B><A HREF="#LICENSE">A - Mini-XML License</A></B> <B><A HREF="#LICENSE">A - Mini-XML License</A></B>
<UL> <BR>
<LI><A HREF="#5_1">How to Apply These Terms to Your New Libraries</A></LI> <BR><B><A HREF="#RELNOTES">B - Release Notes</A></B>
</UL>
<B><A HREF="#RELNOTES">B - Release Notes</A></B>
<UL> <UL>
<LI><A HREF="#6_1">Changes in Mini-XML 2.3</A></LI> <LI><A HREF="#6_1">Changes in Mini-XML 2.3</A></LI>
<LI><A HREF="#6_2">Changes in Mini-XML 2.2.2</A></LI> <LI><A HREF="#6_2">Changes in Mini-XML 2.2.2</A></LI>
@ -103,6 +101,7 @@ Copyright 2003-2005<BR>
<LI><A HREF="#mxmlDelete">mxmlDelete()</A></LI> <LI><A HREF="#mxmlDelete">mxmlDelete()</A></LI>
<LI><A HREF="#mxmlElementGetAttr">mxmlElementGetAttr()</A></LI> <LI><A HREF="#mxmlElementGetAttr">mxmlElementGetAttr()</A></LI>
<LI><A HREF="#mxmlElementSetAttr">mxmlElementSetAttr()</A></LI> <LI><A HREF="#mxmlElementSetAttr">mxmlElementSetAttr()</A></LI>
<LI><A HREF="#mxmlElementSetAttrf">mxmlElementSetAttrf()</A></LI>
<LI><A HREF="#mxmlEntityAddCallback">mxmlEntityAddCallback()</A></LI> <LI><A HREF="#mxmlEntityAddCallback">mxmlEntityAddCallback()</A></LI>
<LI><A HREF="#mxmlEntityGetName">mxmlEntityGetName()</A></LI> <LI><A HREF="#mxmlEntityGetName">mxmlEntityGetName()</A></LI>
<LI><A HREF="#mxmlEntityGetValue">mxmlEntityGetValue()</A></LI> <LI><A HREF="#mxmlEntityGetValue">mxmlEntityGetValue()</A></LI>
@ -116,21 +115,23 @@ Copyright 2003-2005<BR>
<LI><A HREF="#mxmlLoadFd">mxmlLoadFd()</A></LI> <LI><A HREF="#mxmlLoadFd">mxmlLoadFd()</A></LI>
<LI><A HREF="#mxmlLoadFile">mxmlLoadFile()</A></LI> <LI><A HREF="#mxmlLoadFile">mxmlLoadFile()</A></LI>
<LI><A HREF="#mxmlLoadString">mxmlLoadString()</A></LI> <LI><A HREF="#mxmlLoadString">mxmlLoadString()</A></LI>
<LI><A HREF="#7_3_18">&nbsp;Mini-XML 2.3&nbsp;mxmlNewCDATA()</A></LI> <LI><A HREF="#7_3_19">&nbsp;Mini-XML 2.3&nbsp;mxmlNewCDATA()</A></LI>
<LI><A HREF="#7_3_19">&nbsp;Mini-XML 2.1&nbsp;mxmlNewCustom()</A></LI> <LI><A HREF="#7_3_20">&nbsp;Mini-XML 2.1&nbsp;mxmlNewCustom()</A></LI>
<LI><A HREF="#mxmlNewElement">mxmlNewElement()</A></LI> <LI><A HREF="#mxmlNewElement">mxmlNewElement()</A></LI>
<LI><A HREF="#mxmlNewInteger">mxmlNewInteger()</A></LI> <LI><A HREF="#mxmlNewInteger">mxmlNewInteger()</A></LI>
<LI><A HREF="#mxmlNewOpaque">mxmlNewOpaque()</A></LI> <LI><A HREF="#mxmlNewOpaque">mxmlNewOpaque()</A></LI>
<LI><A HREF="#mxmlNewReal">mxmlNewReal()</A></LI> <LI><A HREF="#mxmlNewReal">mxmlNewReal()</A></LI>
<LI><A HREF="#mxmlNewText">mxmlNewText()</A></LI> <LI><A HREF="#mxmlNewText">mxmlNewText()</A></LI>
<LI><A HREF="#mxmlNewTextf">mxmlNewTextf()</A></LI> <LI><A HREF="#mxmlNewTextf">mxmlNewTextf()</A></LI>
<LI><A HREF="#7_3_27">&nbsp;Mini-XML 2.3&nbsp;mxmlRelease()</A></LI>
<LI><A HREF="#mxmlRemove">mxmlRemove()</A></LI> <LI><A HREF="#mxmlRemove">mxmlRemove()</A></LI>
<LI><A HREF="#7_3_29">&nbsp;Mini-XML 2.3&nbsp;mxmlRetain()</A></LI>
<LI><A HREF="#mxmlSaveAllocString">mxmlSaveAllocString()</A></LI> <LI><A HREF="#mxmlSaveAllocString">mxmlSaveAllocString()</A></LI>
<LI><A HREF="#mxmlSaveFd">mxmlSaveFd()</A></LI> <LI><A HREF="#mxmlSaveFd">mxmlSaveFd()</A></LI>
<LI><A HREF="#mxmlSaveFile">mxmlSaveFile()</A></LI> <LI><A HREF="#mxmlSaveFile">mxmlSaveFile()</A></LI>
<LI><A HREF="#mxmlSaveString">mxmlSaveString()</A></LI> <LI><A HREF="#mxmlSaveString">mxmlSaveString()</A></LI>
<LI><A HREF="#7_3_31">&nbsp;Mini-XML 2.3&nbsp;mxmlSetCDATA()</A></LI> <LI><A HREF="#7_3_34">&nbsp;Mini-XML 2.3&nbsp;mxmlSetCDATA()</A></LI>
<LI><A HREF="#7_3_32">&nbsp;Mini-XML 2.1&nbsp;mxmlSetCustom()</A></LI> <LI><A HREF="#7_3_35">&nbsp;Mini-XML 2.1&nbsp;mxmlSetCustom()</A></LI>
<LI><A HREF="#mxmlSetCustomHandlers">mxmlSetCustomHandlers()</A></LI> <LI><A HREF="#mxmlSetCustomHandlers">mxmlSetCustomHandlers()</A></LI>
<LI><A HREF="#mxmlSetElement">mxmlSetElement()</A></LI> <LI><A HREF="#mxmlSetElement">mxmlSetElement()</A></LI>
<LI><A HREF="#mxmlSetErrorCallback">mxmlSetErrorCallback()</A></LI> <LI><A HREF="#mxmlSetErrorCallback">mxmlSetErrorCallback()</A></LI>
@ -139,6 +140,7 @@ Copyright 2003-2005<BR>
<LI><A HREF="#mxmlSetReal">mxmlSetReal()</A></LI> <LI><A HREF="#mxmlSetReal">mxmlSetReal()</A></LI>
<LI><A HREF="#mxmlSetText">mxmlSetText()</A></LI> <LI><A HREF="#mxmlSetText">mxmlSetText()</A></LI>
<LI><A HREF="#mxmlSetTextf">mxmlSetTextf()</A></LI> <LI><A HREF="#mxmlSetTextf">mxmlSetTextf()</A></LI>
<LI><A HREF="#7_3_44">&nbsp;Mini-XML 2.3&nbsp;mxmlSetWrapMargin()</A></LI>
<LI><A HREF="#mxmlWalkNext">mxmlWalkNext()</A></LI> <LI><A HREF="#mxmlWalkNext">mxmlWalkNext()</A></LI>
<LI><A HREF="#mxmlWalkPrev">mxmlWalkPrev()</A></LI> <LI><A HREF="#mxmlWalkPrev">mxmlWalkPrev()</A></LI>
</UL> </UL>
@ -1474,7 +1476,7 @@ mxmlIndexEnum</TT>.</P>
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.</P> DAMAGES.</P>
<P align="center"><BIG>END OF TERMS AND CONDITIONS</BIG></P> <P align="center"><BIG>END OF TERMS AND CONDITIONS</BIG></P>
<H2><A NAME="5_1">How to Apply These Terms to Your New Libraries</A></H2> <P><BIG>How to Apply These Terms to Your New Libraries</BIG></P>
<P>If you develop a new library, and you want it to be of the greatest <P>If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that possible use to the public, we recommend making it free software that
everyone can redistribute and change. You can do so by permitting everyone can redistribute and change. You can do so by permitting
@ -1523,6 +1525,20 @@ Ty Coon, President of Vice
<UL> <UL>
<LI>Added two exceptions to the LGPL to support static linking of <LI>Added two exceptions to the LGPL to support static linking of
applications against Mini-XML.</LI> applications against Mini-XML.</LI>
<LI>Added mxmlElementSetAttrf() function (STR #43)</LI>
<LI>Added snprintf() emulation function for test program (STR #32)</LI>
<LI>Added the _CRT_SECURE_NO_DEPRECATE definition when building on VC++
2005 (STR #36)</LI>
<LI>mxmlLoad*() did not detect missing &gt; characters in elements (STR
#41)</LI>
<LI>mxmlLoad*() did not detect missing close tags at the end of an XML
document (STR #45)</LI>
<LI>Added user_data and ref_count members to mxml_node_t structure.</LI>
<LI>Added mxmlReleaseNode() and mxmlRetainNode() APIs for
reference-counted nodes.</LI>
<LI>Added mxmlSetWrapMargin() to control the wrapping of XML output.</LI>
<LI>Added conditional check for EINTR error code for certain Windows
compilers that do not define it (STR #33)</LI>
<LI>The mxmldoc program now generates correct HTML 4.0 output <LI>The mxmldoc program now generates correct HTML 4.0 output
(previously it generated invalid XHTML...)</LI> (previously it generated invalid XHTML...)</LI>
<LI>The mxmldoc program now supports &quot;@deprecated@, &quot;@private@&quot;, and <LI>The mxmldoc program now supports &quot;@deprecated@, &quot;@private@&quot;, and
@ -1764,6 +1780,7 @@ Ty Coon, President of Vice
<LI><A href="#mxmlDelete"><TT>mxmlDelete()</TT></A></LI> <LI><A href="#mxmlDelete"><TT>mxmlDelete()</TT></A></LI>
<LI><A href="#mxmlElementGetAttr"><TT>mxmlElementGetAttr()</TT></A></LI> <LI><A href="#mxmlElementGetAttr"><TT>mxmlElementGetAttr()</TT></A></LI>
<LI><A href="#mxmlElementSetAttr"><TT>mxmlElementSetAttr()</TT></A></LI> <LI><A href="#mxmlElementSetAttr"><TT>mxmlElementSetAttr()</TT></A></LI>
<LI><A href="#mxmlElementSetAttrf"><TT>mxmlElementSetAttrf()</TT></A></LI>
<LI><A href="#mxmlEntityAddCallback"><TT>mxmlEntityAddCallback()</TT></A> <LI><A href="#mxmlEntityAddCallback"><TT>mxmlEntityAddCallback()</TT></A>
</LI> </LI>
<LI><A href="#mxmlEntityGetName"><TT>mxmlEntityGetName()</TT></A></LI> <LI><A href="#mxmlEntityGetName"><TT>mxmlEntityGetName()</TT></A></LI>
@ -1791,7 +1808,13 @@ Ty Coon, President of Vice
<LI><A href="#mxmlNewReal"><TT>mxmlNewReal()</TT></A></LI> <LI><A href="#mxmlNewReal"><TT>mxmlNewReal()</TT></A></LI>
<LI><A href="#mxmlNewText"><TT>mxmlNewText()</TT></A></LI> <LI><A href="#mxmlNewText"><TT>mxmlNewText()</TT></A></LI>
<LI><A href="#mxmlNewTextf"><TT>mxmlNewTextf()</TT></A></LI> <LI><A href="#mxmlNewTextf"><TT>mxmlNewTextf()</TT></A></LI>
<LI><A href="#mxmlRelease"><TT>mxmlRelease()</TT></A>
<!--span class='info'-->
&nbsp;Mini-XML 2.3&nbsp;</LI>
<LI><A href="#mxmlRemove"><TT>mxmlRemove()</TT></A></LI> <LI><A href="#mxmlRemove"><TT>mxmlRemove()</TT></A></LI>
<LI><A href="#mxmlRetain"><TT>mxmlRetain()</TT></A>
<!--span class='info'-->
&nbsp;Mini-XML 2.3&nbsp;</LI>
<LI><A href="#mxmlSaveAllocString"><TT>mxmlSaveAllocString()</TT></A></LI> <LI><A href="#mxmlSaveAllocString"><TT>mxmlSaveAllocString()</TT></A></LI>
<LI><A href="#mxmlSaveFd"><TT>mxmlSaveFd()</TT></A></LI> <LI><A href="#mxmlSaveFd"><TT>mxmlSaveFd()</TT></A></LI>
<LI><A href="#mxmlSaveFile"><TT>mxmlSaveFile()</TT></A></LI> <LI><A href="#mxmlSaveFile"><TT>mxmlSaveFile()</TT></A></LI>
@ -1811,6 +1834,9 @@ Ty Coon, President of Vice
<LI><A href="#mxmlSetReal"><TT>mxmlSetReal()</TT></A></LI> <LI><A href="#mxmlSetReal"><TT>mxmlSetReal()</TT></A></LI>
<LI><A href="#mxmlSetText"><TT>mxmlSetText()</TT></A></LI> <LI><A href="#mxmlSetText"><TT>mxmlSetText()</TT></A></LI>
<LI><A href="#mxmlSetTextf"><TT>mxmlSetTextf()</TT></A></LI> <LI><A href="#mxmlSetTextf"><TT>mxmlSetTextf()</TT></A></LI>
<LI><A href="#mxmlSetWrapMargin"><TT>mxmlSetWrapMargin()</TT></A>
<!--span class='info'-->
&nbsp;Mini-XML 2.3&nbsp;</LI>
<LI><A href="#mxmlWalkNext"><TT>mxmlWalkNext()</TT></A></LI> <LI><A href="#mxmlWalkNext"><TT>mxmlWalkNext()</TT></A></LI>
<LI><A href="#mxmlWalkPrev"><TT>mxmlWalkPrev()</TT></A></LI> <LI><A href="#mxmlWalkPrev"><TT>mxmlWalkPrev()</TT></A></LI>
</UL> </UL>
@ -1929,6 +1955,38 @@ mxmlElementSetAttr(
<H4>Returns</H4> <H4>Returns</H4>
<P>Nothing.</P> <P>Nothing.</P>
<!-- NEW PAGE -->
<H3 class="title"><A name="mxmlElementSetAttrf">mxmlElementSetAttrf()</A>
</H3>
<H4>Description</H4>
<P>Set an attribute with a formatted value. If the named attribute
already exists, the value of the attribute is replaced by the new
formatted string. The formatted string value is copied into the element
node. This function does nothing if the node is not an element.</P>
<H4>Syntax</H4>
<PRE>
void
mxmlElementSetAttrf(
<A href="#mxml_node_t">mxml_node_t</A> * node,
const char * name,
const char * format,
...);
</PRE>
<H4>Arguments</H4>
<DIV class="table">
<TABLE align="center" border="1" cellpadding="5" cellspacing="0" width="80%">
<THEAD></THEAD>
<TR><TH>Name</TH><TH>Description</TH></TR>
<TBODY></TBODY>
<TR><TD><TT>node</TT></TD><TD>Element node</TD></TR>
<TR><TD><TT>name</TT></TD><TD>Name of attribute</TD></TR>
<TR><TD><TT>format</TT></TD><TD>Printf-style attribute value</TD></TR>
<TR><TD><TT>...</TT></TD><TD>Additional arguments as needed</TD></TR>
</TABLE>
</DIV>
<H4>Returns</H4>
<P>Nothing.</P>
<!-- NEW PAGE --> <!-- NEW PAGE -->
<H3 class="title"><A name="mxmlEntityAddCallback"> <H3 class="title"><A name="mxmlEntityAddCallback">
mxmlEntityAddCallback()</A></H3> mxmlEntityAddCallback()</A></H3>
@ -2272,7 +2330,7 @@ mxmlLoadString(
<P>First node or NULL if the string has errors.</P> <P>First node or NULL if the string has errors.</P>
<!-- NEW PAGE --> <!-- NEW PAGE -->
<H3 class="title"><A NAME="7_3_18"> <H3 class="title"><A NAME="7_3_19">
<!--span class='info'--> <!--span class='info'-->
&nbsp;Mini-XML 2.3&nbsp;<A name="mxmlNewCDATA">mxmlNewCDATA()</A></A></H3> &nbsp;Mini-XML 2.3&nbsp;<A name="mxmlNewCDATA">mxmlNewCDATA()</A></A></H3>
<H4>Description</H4> <H4>Description</H4>
@ -2302,7 +2360,7 @@ mxmlNewCDATA(
<P>New node</P> <P>New node</P>
<!-- NEW PAGE --> <!-- NEW PAGE -->
<H3 class="title"><A NAME="7_3_19"> <H3 class="title"><A NAME="7_3_20">
<!--span class='info'--> <!--span class='info'-->
&nbsp;Mini-XML 2.1&nbsp;<A name="mxmlNewCustom">mxmlNewCustom()</A></A></H3> &nbsp;Mini-XML 2.1&nbsp;<A name="mxmlNewCustom">mxmlNewCustom()</A></A></H3>
<H4>Description</H4> <H4>Description</H4>
@ -2503,6 +2561,31 @@ mxmlNewTextf(
<H4>Returns</H4> <H4>Returns</H4>
<P>New node</P> <P>New node</P>
<!-- NEW PAGE -->
<H3 class="title"><A NAME="7_3_27">
<!--span class='info'-->
&nbsp;Mini-XML 2.3&nbsp;<A name="mxmlRelease">mxmlRelease()</A></A></H3>
<H4>Description</H4>
<P>Release a node. When the reference count reaches zero, the node (and
any children) is deleted via mxmlDelete().</P>
<H4>Syntax</H4>
<PRE>
int
mxmlRelease(
<A href="#mxml_node_t">mxml_node_t</A> * node);
</PRE>
<H4>Arguments</H4>
<DIV class="table">
<TABLE align="center" border="1" cellpadding="5" cellspacing="0" width="80%">
<THEAD></THEAD>
<TR><TH>Name</TH><TH>Description</TH></TR>
<TBODY></TBODY>
<TR><TD><TT>node</TT></TD><TD>Node</TD></TR>
</TABLE>
</DIV>
<H4>Returns</H4>
<P>New reference count</P>
<!-- NEW PAGE --> <!-- NEW PAGE -->
<H3 class="title"><A name="mxmlRemove">mxmlRemove()</A></H3> <H3 class="title"><A name="mxmlRemove">mxmlRemove()</A></H3>
<H4>Description</H4> <H4>Description</H4>
@ -2527,6 +2610,30 @@ mxmlRemove(
<H4>Returns</H4> <H4>Returns</H4>
<P>Nothing.</P> <P>Nothing.</P>
<!-- NEW PAGE -->
<H3 class="title"><A NAME="7_3_29">
<!--span class='info'-->
&nbsp;Mini-XML 2.3&nbsp;<A name="mxmlRetain">mxmlRetain()</A></A></H3>
<H4>Description</H4>
<P>Retain a node.</P>
<H4>Syntax</H4>
<PRE>
int
mxmlRetain(
<A href="#mxml_node_t">mxml_node_t</A> * node);
</PRE>
<H4>Arguments</H4>
<DIV class="table">
<TABLE align="center" border="1" cellpadding="5" cellspacing="0" width="80%">
<THEAD></THEAD>
<TR><TH>Name</TH><TH>Description</TH></TR>
<TBODY></TBODY>
<TR><TD><TT>node</TT></TD><TD>Node</TD></TR>
</TABLE>
</DIV>
<H4>Returns</H4>
<P>New reference count</P>
<!-- NEW PAGE --> <!-- NEW PAGE -->
<H3 class="title"><A name="mxmlSaveAllocString">mxmlSaveAllocString()</A> <H3 class="title"><A name="mxmlSaveAllocString">mxmlSaveAllocString()</A>
</H3> </H3>
@ -2647,7 +2754,7 @@ mxmlSaveString(
<P>Size of string</P> <P>Size of string</P>
<!-- NEW PAGE --> <!-- NEW PAGE -->
<H3 class="title"><A NAME="7_3_31"> <H3 class="title"><A NAME="7_3_34">
<!--span class='info'--> <!--span class='info'-->
&nbsp;Mini-XML 2.3&nbsp;<A name="mxmlSetCDATA">mxmlSetCDATA()</A></A></H3> &nbsp;Mini-XML 2.3&nbsp;<A name="mxmlSetCDATA">mxmlSetCDATA()</A></A></H3>
<H4>Description</H4> <H4>Description</H4>
@ -2674,7 +2781,7 @@ mxmlSetCDATA(
<P>0 on success, -1 on failure</P> <P>0 on success, -1 on failure</P>
<!-- NEW PAGE --> <!-- NEW PAGE -->
<H3 class="title"><A NAME="7_3_32"> <H3 class="title"><A NAME="7_3_35">
<!--span class='info'--> <!--span class='info'-->
&nbsp;Mini-XML 2.1&nbsp;<A name="mxmlSetCustom">mxmlSetCustom()</A></A></H3> &nbsp;Mini-XML 2.1&nbsp;<A name="mxmlSetCustom">mxmlSetCustom()</A></A></H3>
<H4>Description</H4> <H4>Description</H4>
@ -2901,6 +3008,31 @@ mxmlSetTextf(
<H4>Returns</H4> <H4>Returns</H4>
<P>0 on success, -1 on failure</P> <P>0 on success, -1 on failure</P>
<!-- NEW PAGE -->
<H3 class="title"><A NAME="7_3_44">
<!--span class='info'-->
&nbsp;Mini-XML 2.3&nbsp;<A name="mxmlSetWrapMargin">mxmlSetWrapMargin()</A></A></H3>
<H4>Description</H4>
<P>Set the the wrap margin when saving XML data. Wrapping is disabled
when &quot;column&quot; is &lt;= 0.</P>
<H4>Syntax</H4>
<PRE>
void
mxmlSetWrapMargin(
int column);
</PRE>
<H4>Arguments</H4>
<DIV class="table">
<TABLE align="center" border="1" cellpadding="5" cellspacing="0" width="80%">
<THEAD></THEAD>
<TR><TH>Name</TH><TH>Description</TH></TR>
<TBODY></TBODY>
<TR><TD><TT>column</TT></TD><TD>Column for wrapping</TD></TR>
</TABLE>
</DIV>
<H4>Returns</H4>
<P>Nothing.</P>
<!-- NEW PAGE --> <!-- NEW PAGE -->
<H3 class="title"><A name="mxmlWalkNext">mxmlWalkNext()</A></H3> <H3 class="title"><A name="mxmlWalkNext">mxmlWalkNext()</A></H3>
<H4>Description</H4> <H4>Description</H4>
@ -3078,7 +3210,9 @@ struct mxml_node_s
struct <A href="#mxml_node_s">mxml_node_s</A> * next; struct <A href="#mxml_node_s">mxml_node_s</A> * next;
struct <A href="#mxml_node_s">mxml_node_s</A> * parent; struct <A href="#mxml_node_s">mxml_node_s</A> * parent;
struct <A href="#mxml_node_s">mxml_node_s</A> * prev; struct <A href="#mxml_node_s">mxml_node_s</A> * prev;
int ref_count;
mxml_type_t type; mxml_type_t type;
void * user_data;
<A href="#mxml_value_t">mxml_value_t</A> value; <A href="#mxml_value_t">mxml_value_t</A> value;
}; };
</PRE> </PRE>
@ -3092,7 +3226,9 @@ struct mxml_node_s
<TR><TD><TT>next</TT></TD><TD>Next node under same parent</TD></TR> <TR><TD><TT>next</TT></TD><TD>Next node under same parent</TD></TR>
<TR><TD><TT>parent</TT></TD><TD>Parent node</TD></TR> <TR><TD><TT>parent</TT></TD><TD>Parent node</TD></TR>
<TR><TD><TT>prev</TT></TD><TD>Previous node under same parent</TD></TR> <TR><TD><TT>prev</TT></TD><TD>Previous node under same parent</TD></TR>
<TR><TD><TT>ref_count</TT></TD><TD>Use count</TD></TR>
<TR><TD><TT>type</TT></TD><TD>Node type</TD></TR> <TR><TD><TT>type</TT></TD><TD>Node type</TD></TR>
<TR><TD><TT>user_data</TT></TD><TD>User data</TD></TR>
<TR><TD><TT>value</TT></TD><TD>Node value</TD></TR> <TR><TD><TT>value</TT></TD><TD>Node value</TD></TR>
</TABLE> </TABLE>
</DIV> </DIV>

@ -2,8 +2,8 @@
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation> <xsd:annotation>
<xsd:documentation xml:lang="en"> <xsd:documentation xml:lang="en">
Mini-XML 2.2 documentation schema for mxmldoc output. Mini-XML 2.3 documentation schema for mxmldoc output.
Copyright 2003-2005 by Michael Sweet. Copyright 2003-2007 by Michael Sweet.
This program is free software; you can redistribute it and/or This program is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public modify it under the terms of the GNU Library General Public

@ -3,7 +3,7 @@
<h1 align='right'><a name='RELNOTES'>B - Release Notes</a></h1> <h1 align='right'><a name='RELNOTES'>B - Release Notes</a></h1>
<h2>Changes in Mini-XML 2.3</h2> <h2 _hd_omit_toc>Changes in Mini-XML 2.3</h2>
<ul> <ul>
@ -71,7 +71,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 2.2.2</h2> <h2 _hd_omit_toc>Changes in Mini-XML 2.2.2</h2>
<ul> <ul>
@ -81,7 +81,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 2.2.1</h2> <h2 _hd_omit_toc>Changes in Mini-XML 2.2.1</h2>
<ul> <ul>
@ -104,7 +104,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 2.2</h2> <h2 _hd_omit_toc>Changes in Mini-XML 2.2</h2>
<ul> <ul>
@ -127,7 +127,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 2.1</h2> <h2 _hd_omit_toc>Changes in Mini-XML 2.1</h2>
<ul> <ul>
@ -148,7 +148,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 2.0</h2> <h2 _hd_omit_toc>Changes in Mini-XML 2.0</h2>
<ul> <ul>
@ -211,7 +211,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 1.3</h2> <h2 _hd_omit_toc>Changes in Mini-XML 1.3</h2>
<ul> <ul>
@ -241,7 +241,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 1.2</h2> <h2 _hd_omit_toc>Changes in Mini-XML 1.2</h2>
<ul> <ul>
@ -266,7 +266,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 1.1.2</h2> <h2 _hd_omit_toc>Changes in Mini-XML 1.1.2</h2>
<ul> <ul>
@ -281,7 +281,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 1.1.1</h2> <h2 _hd_omit_toc>Changes in Mini-XML 1.1.1</h2>
<ul> <ul>
@ -298,7 +298,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 1.1</h2> <h2 _hd_omit_toc>Changes in Mini-XML 1.1</h2>
<ul> <ul>
@ -318,7 +318,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 1.0</h2> <h2 _hd_omit_toc>Changes in Mini-XML 1.0</h2>
<ul> <ul>
@ -333,7 +333,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 0.93</h2> <h2 _hd_omit_toc>Changes in Mini-XML 0.93</h2>
<ul> <ul>
@ -377,7 +377,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 0.92</h2> <h2 _hd_omit_toc>Changes in Mini-XML 0.92</h2>
<ul> <ul>
@ -385,7 +385,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 0.91</h2> <h2 _hd_omit_toc>Changes in Mini-XML 0.91</h2>
<ul> <ul>
@ -393,7 +393,7 @@
</ul> </ul>
<h2>Changes in Mini-XML 0.9</h2> <h2 _hd_omit_toc>Changes in Mini-XML 0.9</h2>
<ul> <ul>

Loading…
Cancel
Save