1
0
mirror of https://gitlab.gnome.org/GNOME/libxslt synced 2025-07-31 02:43:06 +03:00

Moved the man pages to section 3 applied patch from Peter Breitenlohner

* libxslt.spec.in libexslt/Makefile.am libexslt/libexslt.3
  libxslt/Makefile.am libxslt/libxslt.3: Moved the man pages
  to section 3
* libexslt/sets.c: applied patch from Peter Breitenlohner
* doc/*: rebuilt the docs
* tests/docbook/result//* tests/xmlspec/*.html: changes in
  generattion of " as " in element content.
Daniel
This commit is contained in:
Daniel Veillard
2003-06-13 14:58:09 +00:00
parent 0422b114d4
commit 636a24b3d9
50 changed files with 1654 additions and 1983 deletions

View File

@ -1,3 +1,13 @@
Fri Jun 13 16:53:33 CEST 2003 Daniel Veillard <daniel@veillard.com>
* libxslt.spec.in libexslt/Makefile.am libexslt/libexslt.3
libxslt/Makefile.am libxslt/libxslt.3: Moved the man pages
to section 3
* libexslt/sets.c: applied patch from Peter Breitenlohner
* doc/*: rebuilt the docs
* tests/docbook/result//* tests/xmlspec/*.html: changes in
generattion of &quot; as " in element content.
Sun Jun 08 22:57:13 CEST 2003 Igor Zlatkovic <igor@zlatkovic.com>
* libxslt/transform.c: changed xsltChoose to ignore whitespace

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Gnome XSLT Library Reference Manual</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><meta name="description" content="This manual documents the interfaces of the libxslt
library and has some short notes to help get you up to speed
with using the library."><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">

View File

@ -226,6 +226,10 @@
<ANCHOR id="xsltParseTemplateContent" href="libxslt/libxslt-xsltInternals.html#xsltParseTemplateContent">
<ANCHOR id="xsltAllocateExtra" href="libxslt/libxslt-xsltInternals.html#xsltAllocateExtra">
<ANCHOR id="xsltAllocateExtraCtxt" href="libxslt/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">
<ANCHOR id="xsltCreateRVT" href="libxslt/libxslt-xsltInternals.html#xsltCreateRVT">
<ANCHOR id="xsltRegisterTmpRVT" href="libxslt/libxslt-xsltInternals.html#xsltRegisterTmpRVT">
<ANCHOR id="xsltRegisterPersistRVT" href="libxslt/libxslt-xsltInternals.html#xsltRegisterPersistRVT">
<ANCHOR id="xsltFreeRVTs" href="libxslt/libxslt-xsltInternals.html#xsltFreeRVTs">
<ANCHOR id="xsltNumberData" href="libxslt/libxslt-numbersInternals.html#xsltNumberData">
<ANCHOR id="xsltNumberDataPtr" href="libxslt/libxslt-numbersInternals.html#xsltNumberDataPtr">
<ANCHOR id="xsltFormatNumberInfo" href="libxslt/libxslt-numbersInternals.html#xsltFormatNumberInfo">

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>attributes</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>extensions</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>functions</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>imports</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>keys</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Libxslt Library Reference</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>namespaces</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Libxslt Programming Notes</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>numbersInternals</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,395 +0,0 @@
<HTML
><HEAD
><TITLE
>numbersInternals</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
"><LINK
REL="HOME"
TITLE="Gnome XSLT Library Reference Manual"
HREF="book1.html"><LINK
REL="UP"
TITLE="Libxslt Library Reference"
HREF="libxslt-lib.html"><LINK
REL="PREVIOUS"
TITLE="xsltInternals"
HREF="libxslt-xsltinternals.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TH
COLSPAN="4"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="5"
>Gnome XSLT Library Reference Manual</FONT
></TH
></TR
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxslt-xsltinternals.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxslt-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
>&nbsp;</TD
></TR
></TABLE
></DIV
><H1
><A
NAME="LIBXSLT-NUMBERSINTERNALS"
></A
>numbersInternals</H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN6039"
></A
><H2
>Name</H2
>numbersInternals&nbsp;--&nbsp;</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN6042"
></A
><H2
>Synopsis</H2
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="SYNOPSIS"
>&#13;
struct <A
HREF="libxslt-numbersinternals.html#XSLTNUMBERDATA"
>xsltNumberData</A
>;
typedef <A
HREF="libxslt-numbersinternals.html#XSLTNUMBERDATAPTR"
>xsltNumberDataPtr</A
>;
struct <A
HREF="libxslt-numbersinternals.html#XSLTFORMATNUMBERINFO"
>xsltFormatNumberInfo</A
>;
typedef <A
HREF="libxslt-numbersinternals.html#XSLTFORMATNUMBERINFOPTR"
>xsltFormatNumberInfoPtr</A
>;</PRE
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN6049"
></A
><H2
>Description</H2
><P
></P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN6052"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN6054"
></A
><H3
><A
NAME="XSLTNUMBERDATA"
></A
>struct xsltNumberData</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xsltNumberData {
xmlChar *level;
xmlChar *count;
xmlChar *from;
xmlChar *value;
xmlChar *format;
int has_format;
int digitsPerGroup;
int groupingCharacter;
int groupingCharacterLen;
xmlDocPtr doc;
xmlNodePtr node;
};</PRE
></TD
></TR
></TABLE
><P
>This data structure is just a wrapper to pass xsl:number data in.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6060"
></A
><H3
><A
NAME="XSLTNUMBERDATAPTR"
></A
>xsltNumberDataPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xsltNumberData *xsltNumberDataPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6065"
></A
><H3
><A
NAME="XSLTFORMATNUMBERINFO"
></A
>struct xsltFormatNumberInfo</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xsltFormatNumberInfo {
int integer_hash; /* Number of '#' in integer part */
int integer_digits; /* Number of '0' in integer part */
int frac_digits; /* Number of '0' in fractional part */
int frac_hash; /* Number of '#' in fractional part */
int group; /* Number of chars per display 'group' */
int multiplier; /* Scaling for percent or permille */
char add_decimal; /* Flag for whether decimal point appears in pattern */
char is_multiplier_set; /* Flag to catch multiple occurences of percent/permille */
char is_negative_pattern;/* Flag for processing -ve prefix/suffix */
};</PRE
></TD
></TR
></TABLE
><P
>This data structure lists the various parameters needed to format numbers.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6071"
></A
><H3
><A
NAME="XSLTFORMATNUMBERINFOPTR"
></A
>xsltFormatNumberInfoPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xsltFormatNumberInfo *xsltFormatNumberInfoPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><BR
CLEAR="all"><BR><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxslt-xsltinternals.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxslt-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
>&nbsp;</TD
></TR
><TR
><TD
COLSPAN="2"
ALIGN="left"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>xsltInternals</B
></FONT
></TD
><TD
COLSPAN="2"
ALIGN="right"
>&nbsp;</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>pattern</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>templates</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>transform</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>variables</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xslt</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xsltInternals</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;
@ -98,6 +97,12 @@ void <a href="libxslt-xsltInternals.html#xsltParseTemplateContent">xsltPa
<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xmlNodePtr">xmlNodePtr</GTKDOCLINK> templ);
int <a href="libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style);
int <a href="libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt);
<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xmlDocPtr">xmlDocPtr</GTKDOCLINK> <a href="libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt);
int <a href="libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt,
<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xmlDocPtr">xmlDocPtr</GTKDOCLINK> RVT);
int <a href="libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt,
<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xmlDocPtr">xmlDocPtr</GTKDOCLINK> RVT);
void <a href="libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt);
</pre></div><div class="refsect1" lang="en"><h2>Description</h2><p>
</p></div><div class="refsect1" lang="en"><h2>Details</h2><div class="refsect2" lang="en"><h3><a name="XSLT-MAX-SORT-CAPS"></a>XSLT_MAX_SORT</h3><pre class="programlisting">#define XSLT_MAX_SORT 15
@ -265,6 +270,13 @@ Data structure associated to a parsed document.</p><p>
void * errctx; /* context for the error handler */
xsltSortFunc sortfunc; /* a ctxt specific sort routine */
/*
* handling of temporary Result Value Tree
*/
xmlDocPtr tmpRVT; /* list of RVT without persistance */
xmlDocPtr persistRVT; /* list of persistant RVTs */
int ctxtflags; /* context processing flags */
};
</pre><p>
@ -681,4 +693,27 @@ This make sure there is a slot ready in the transformation context</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i><EFBFBD>:</span></td><td> an XSLT transformation context
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of the slot
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xsltCreateRVT"></a>xsltCreateRVT ()</h3><pre class="programlisting"><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xmlDocPtr">xmlDocPtr</GTKDOCLINK> xsltCreateRVT (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt);</pre><p>
Create a result value tree</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i><EFBFBD>:</span></td><td> an XSLT transformation context
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the result value tree or NULL in case of error
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xsltRegisterTmpRVT"></a>xsltRegisterTmpRVT ()</h3><pre class="programlisting">int xsltRegisterTmpRVT (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt,
<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xmlDocPtr">xmlDocPtr</GTKDOCLINK> RVT);</pre><p>
Register the result value tree for destruction at the end of the context</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i><EFBFBD>:</span></td><td> an XSLT transformation context
</td></tr><tr><td><span class="term"><i><tt>RVT</tt></i><EFBFBD>:</span></td><td> a result value tree
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 in case of success and -1 in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xsltRegisterPersistRVT"></a>xsltRegisterPersistRVT ()</h3><pre class="programlisting">int xsltRegisterPersistRVT (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt,
<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xmlDocPtr">xmlDocPtr</GTKDOCLINK> RVT);</pre><p>
Register the result value tree for destruction at the end of the processing</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i><EFBFBD>:</span></td><td> an XSLT transformation context
</td></tr><tr><td><span class="term"><i><tt>RVT</tt></i><EFBFBD>:</span></td><td> a result value tree
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 in case of success and -1 in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xsltFreeRVTs"></a>xsltFreeRVTs ()</h3><pre class="programlisting">void xsltFreeRVTs (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt);</pre><p>
Free all the registered result value tree of the transformation</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i><EFBFBD>:</span></td><td> an XSLT transformation context
</td></tr></tbody></table></div></div></div></div><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="libxslt-keys.html"><b>&lt;&lt;<EFBFBD>keys</b></a></td><td align="right"><a accesskey="n" href="libxslt-numbersInternals.html"><b>numbersInternals<EFBFBD>&gt;&gt;</b></a></td></tr></table></body></html>

View File

@ -1,4 +1,3 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xsltutils</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;

View File

@ -1,16 +1,14 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<api name='libxslt'>
<files>
<file name='extra'>
<exports symbol='XSLT_LIBXSLT_NAMESPACE'/>
<exports symbol='XSLT_NORM_SAXON_NAMESPACE'/>
<exports symbol='XSLT_SAXON_NAMESPACE'/>
<exports symbol='XSLT_XALAN_NAMESPACE'/>
<exports symbol='XSLT_XT_NAMESPACE'/>
<exports symbol='xsltDebug'/>
<exports symbol='xsltFunctionNodeSet'/>
<exports symbol='xsltRegisterAllExtras'/>
<exports symbol='xsltRegisterExtras'/>
<file name='documents'>
<exports symbol='xsltFindDocument'/>
<exports symbol='xsltFreeDocuments'/>
<exports symbol='xsltFreeStyleDocuments'/>
<exports symbol='xsltLoadDocument'/>
<exports symbol='xsltLoadStyleDocument'/>
<exports symbol='xsltNewDocument'/>
<exports symbol='xsltNewStyleDocument'/>
</file>
<file name='imports'>
<exports symbol='XSLT_GET_IMPORT_INT'/>
@ -22,11 +20,40 @@
<exports symbol='xsltParseStylesheetImport'/>
<exports symbol='xsltParseStylesheetInclude'/>
</file>
<file name='preproc'>
<exports symbol='xsltDocumentComp'/>
<exports symbol='xsltExtMarker'/>
<exports symbol='xsltFreeStylePreComps'/>
<exports symbol='xsltStylePreCompute'/>
<file name='security'>
<exports symbol='XSLT_SECPREF_CREATE_DIRECTORY'/>
<exports symbol='XSLT_SECPREF_READ_FILE'/>
<exports symbol='XSLT_SECPREF_READ_NETWORK'/>
<exports symbol='XSLT_SECPREF_WRITE_FILE'/>
<exports symbol='XSLT_SECPREF_WRITE_NETWORK'/>
<exports symbol='xsltCheckRead'/>
<exports symbol='xsltCheckWrite'/>
<exports symbol='xsltFreeSecurityPrefs'/>
<exports symbol='xsltGetDefaultSecurityPrefs'/>
<exports symbol='xsltGetSecurityPrefs'/>
<exports symbol='xsltNewSecurityPrefs'/>
<exports symbol='xsltSecurityAllow'/>
<exports symbol='xsltSecurityCheck'/>
<exports symbol='xsltSecurityForbid'/>
<exports symbol='xsltSecurityOption'/>
<exports symbol='xsltSecurityPrefs'/>
<exports symbol='xsltSecurityPrefsPtr'/>
<exports symbol='xsltSetCtxtSecurityPrefs'/>
<exports symbol='xsltSetDefaultSecurityPrefs'/>
<exports symbol='xsltSetSecurityPrefs'/>
</file>
<file name='templates'>
<exports symbol='xsltAttrListTemplateProcess'/>
<exports symbol='xsltAttrTemplateProcess'/>
<exports symbol='xsltAttrTemplateValueProcess'/>
<exports symbol='xsltAttrTemplateValueProcessNode'/>
<exports symbol='xsltEvalAttrValueTemplate'/>
<exports symbol='xsltEvalStaticAttrValueTemplate'/>
<exports symbol='xsltEvalTemplateString'/>
<exports symbol='xsltEvalXPathPredicate'/>
<exports symbol='xsltEvalXPathString'/>
<exports symbol='xsltEvalXPathStringNs'/>
<exports symbol='xsltTemplateProcess'/>
</file>
<file name='xsltutils'>
<exports symbol='IS_XSLT_ELEM'/>
@ -95,49 +122,24 @@
<exports symbol='xsltUnparsedEntityURIFunction'/>
<exports symbol='xsltXPathFunctionLookup'/>
</file>
<file name='security'>
<exports symbol='XSLT_SECPREF_CREATE_DIRECTORY'/>
<exports symbol='XSLT_SECPREF_READ_FILE'/>
<exports symbol='XSLT_SECPREF_READ_NETWORK'/>
<exports symbol='XSLT_SECPREF_WRITE_FILE'/>
<exports symbol='XSLT_SECPREF_WRITE_NETWORK'/>
<exports symbol='xsltCheckRead'/>
<exports symbol='xsltCheckWrite'/>
<exports symbol='xsltFreeSecurityPrefs'/>
<exports symbol='xsltGetDefaultSecurityPrefs'/>
<exports symbol='xsltGetSecurityPrefs'/>
<exports symbol='xsltNewSecurityPrefs'/>
<exports symbol='xsltSecurityAllow'/>
<exports symbol='xsltSecurityCheck'/>
<exports symbol='xsltSecurityForbid'/>
<exports symbol='xsltSecurityOption'/>
<exports symbol='xsltSecurityPrefs'/>
<exports symbol='xsltSecurityPrefsPtr'/>
<exports symbol='xsltSetCtxtSecurityPrefs'/>
<exports symbol='xsltSetDefaultSecurityPrefs'/>
<exports symbol='xsltSetSecurityPrefs'/>
<file name='namespaces'>
<exports symbol='xsltCopyNamespace'/>
<exports symbol='xsltCopyNamespaceList'/>
<exports symbol='xsltFreeNamespaceAliasHashes'/>
<exports symbol='xsltGetNamespace'/>
<exports symbol='xsltGetSpecialNamespace'/>
<exports symbol='xsltNamespaceAlias'/>
</file>
<file name='templates'>
<exports symbol='xsltAttrListTemplateProcess'/>
<exports symbol='xsltAttrTemplateProcess'/>
<exports symbol='xsltAttrTemplateValueProcess'/>
<exports symbol='xsltAttrTemplateValueProcessNode'/>
<exports symbol='xsltEvalAttrValueTemplate'/>
<exports symbol='xsltEvalStaticAttrValueTemplate'/>
<exports symbol='xsltEvalTemplateString'/>
<exports symbol='xsltEvalXPathPredicate'/>
<exports symbol='xsltEvalXPathString'/>
<exports symbol='xsltEvalXPathStringNs'/>
<exports symbol='xsltTemplateProcess'/>
</file>
<file name='documents'>
<exports symbol='xsltFindDocument'/>
<exports symbol='xsltFreeDocuments'/>
<exports symbol='xsltFreeStyleDocuments'/>
<exports symbol='xsltLoadDocument'/>
<exports symbol='xsltLoadStyleDocument'/>
<exports symbol='xsltNewDocument'/>
<exports symbol='xsltNewStyleDocument'/>
<file name='extra'>
<exports symbol='XSLT_LIBXSLT_NAMESPACE'/>
<exports symbol='XSLT_NORM_SAXON_NAMESPACE'/>
<exports symbol='XSLT_SAXON_NAMESPACE'/>
<exports symbol='XSLT_XALAN_NAMESPACE'/>
<exports symbol='XSLT_XT_NAMESPACE'/>
<exports symbol='xsltDebug'/>
<exports symbol='xsltFunctionNodeSet'/>
<exports symbol='xsltRegisterAllExtras'/>
<exports symbol='xsltRegisterExtras'/>
</file>
<file name='xsltInternals'>
<exports symbol='CHECK_STOPPED'/>
@ -335,13 +337,11 @@
<exports symbol='xsltLibxsltVersion'/>
<exports symbol='xsltMaxDepth'/>
</file>
<file name='namespaces'>
<exports symbol='xsltCopyNamespace'/>
<exports symbol='xsltCopyNamespaceList'/>
<exports symbol='xsltFreeNamespaceAliasHashes'/>
<exports symbol='xsltGetNamespace'/>
<exports symbol='xsltGetSpecialNamespace'/>
<exports symbol='xsltNamespaceAlias'/>
<file name='preproc'>
<exports symbol='xsltDocumentComp'/>
<exports symbol='xsltExtMarker'/>
<exports symbol='xsltFreeStylePreComps'/>
<exports symbol='xsltStylePreCompute'/>
</file>
<file name='variables'>
<exports symbol='XSLT_REGISTER_VARIABLE_LOOKUP'/>
@ -751,6 +751,7 @@ informations are stored'/>
*'/>
<field name='tmpRVT' type='xmlDocPtr' info=' list of RVT without persistance'/>
<field name='persistRVT' type='xmlDocPtr' info=' list of persistant RVTs'/>
<field name='ctxtflags' type='int' info=' context processing flags'/>
</struct>
<typedef name='xsltTransformContextPtr' file='xsltInternals' type='xsltTransformContext *'/>
<typedef name='xsltTransformState' file='xsltInternals' type='enum'/>

View File

@ -1,14 +1,14 @@
<MACRO>
<NAME>LIBXSLT_DOTTED_VERSION</NAME>
#define LIBXSLT_DOTTED_VERSION "1.0.29"
#define LIBXSLT_DOTTED_VERSION "1.0.30"
</MACRO>
<MACRO>
<NAME>LIBXSLT_VERSION</NAME>
#define LIBXSLT_VERSION 10029
#define LIBXSLT_VERSION 10030
</MACRO>
<MACRO>
<NAME>LIBXSLT_VERSION_STRING</NAME>
#define LIBXSLT_VERSION_STRING "10029"
#define LIBXSLT_VERSION_STRING "10030"
</MACRO>
<MACRO>
<NAME>WITH_XSLT_DEBUG</NAME>
@ -1150,15 +1150,15 @@ void
</FUNCTION>
<MACRO>
<NAME>LIBXSLT_DOTTED_VERSION</NAME>
#define LIBXSLT_DOTTED_VERSION "1.0.29"
#define LIBXSLT_DOTTED_VERSION "1.0.30"
</MACRO>
<MACRO>
<NAME>LIBXSLT_VERSION</NAME>
#define LIBXSLT_VERSION 10029
#define LIBXSLT_VERSION 10030
</MACRO>
<MACRO>
<NAME>LIBXSLT_VERSION_STRING</NAME>
#define LIBXSLT_VERSION_STRING "10029"
#define LIBXSLT_VERSION_STRING "10030"
</MACRO>
<MACRO>
<NAME>WITH_XSLT_DEBUG</NAME>
@ -1293,417 +1293,6 @@ typedef int (*trio_instream_t) TRIO_PROTO((trio_pointer_t));
#define vdscanf trio_vdscanf
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_GCC</NAME>
# define TRIO_COMPILER_GCC
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUNPRO</NAME>
# define TRIO_COMPILER_SUNPRO
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUNPRO</NAME>
# define TRIO_COMPILER_SUNPRO
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_XLC</NAME>
# define TRIO_COMPILER_XLC
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_XLC</NAME>
# define TRIO_COMPILER_XLC /* Workaround for old xlc */
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_DECC</NAME>
# define TRIO_COMPILER_DECC
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_DECC</NAME>
# define TRIO_COMPILER_DECC /* Workaround for old DEC C compilers */
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_MSVC</NAME>
# define TRIO_COMPILER_MSVC
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_BCB</NAME>
# define TRIO_COMPILER_BCB
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_VMS</NAME>
# define TRIO_PLATFORM_VMS
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_QNX</NAME>
# define TRIO_PLATFORM_QNX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_WIN32</NAME>
# define TRIO_PLATFORM_WIN32
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_MPEIX</NAME>
# define TRIO_PLATFORM_MPEIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_AIX</NAME>
# define TRIO_PLATFORM_AIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_HPUX</NAME>
# define TRIO_PLATFORM_HPUX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_SOLARIS</NAME>
# define TRIO_PLATFORM_SOLARIS
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_SUNOS</NAME>
# define TRIO_PLATFORM_SUNOS
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C89</NAME>
# define TRIO_COMPILER_SUPPORTS_C89
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C90</NAME>
# define TRIO_COMPILER_SUPPORTS_C90
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C94</NAME>
# define TRIO_COMPILER_SUPPORTS_C94
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C99</NAME>
# define TRIO_COMPILER_SUPPORTS_C99
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C94</NAME>
# define TRIO_COMPILER_SUPPORTS_C94
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_UNIX95</NAME>
# define TRIO_COMPILER_SUPPORTS_UNIX95
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_UNIX98</NAME>
# define TRIO_COMPILER_SUPPORTS_UNIX98
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_UNIX01</NAME>
# define TRIO_COMPILER_SUPPORTS_UNIX01
</MACRO>
<MACRO>
<NAME>TRIO_PUBLIC</NAME>
# define TRIO_PUBLIC
</MACRO>
<MACRO>
<NAME>TRIO_PRIVATE</NAME>
# define TRIO_PRIVATE static
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_ANCIENT</NAME>
# define TRIO_COMPILER_ANCIENT
</MACRO>
<MACRO>
<NAME>TRIO_CONST</NAME>
# define TRIO_CONST
</MACRO>
<MACRO>
<NAME>TRIO_VOLATILE</NAME>
# define TRIO_VOLATILE
</MACRO>
<MACRO>
<NAME>TRIO_SIGNED</NAME>
# define TRIO_SIGNED
</MACRO>
<TYPEDEF>
<NAME>trio_long_double_t</NAME>
typedef double trio_long_double_t;
</TYPEDEF>
<TYPEDEF>
<NAME>trio_pointer_t</NAME>
typedef char * trio_pointer_t;
</TYPEDEF>
<MACRO>
<NAME>TRIO_SUFFIX_LONG</NAME>
# define TRIO_SUFFIX_LONG(x) x
</MACRO>
<MACRO>
<NAME>TRIO_PROTO</NAME>
# define TRIO_PROTO(x) ()
</MACRO>
<MACRO>
<NAME>TRIO_NOARGS</NAME>
# define TRIO_NOARGS
</MACRO>
<MACRO>
<NAME>TRIO_ARGS1</NAME>
# define TRIO_ARGS1(list,a1) list a1;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS2</NAME>
# define TRIO_ARGS2(list,a1,a2) list a1; a2;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS3</NAME>
# define TRIO_ARGS3(list,a1,a2,a3) list a1; a2; a3;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS4</NAME>
# define TRIO_ARGS4(list,a1,a2,a3,a4) list a1; a2; a3; a4;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS5</NAME>
# define TRIO_ARGS5(list,a1,a2,a3,a4,a5) list a1; a2; a3; a4; a5;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS6</NAME>
# define TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6) list a1; a2; a3; a4; a5; a6;
</MACRO>
<MACRO>
<NAME>TRIO_VARGS2</NAME>
# define TRIO_VARGS2(list,a1,a2) list a1; a2
</MACRO>
<MACRO>
<NAME>TRIO_VARGS3</NAME>
# define TRIO_VARGS3(list,a1,a2,a3) list a1; a2; a3
</MACRO>
<MACRO>
<NAME>TRIO_VARGS4</NAME>
# define TRIO_VARGS4(list,a1,a2,a3,a4) list a1; a2; a3; a4
</MACRO>
<MACRO>
<NAME>TRIO_VARGS5</NAME>
# define TRIO_VARGS5(list,a1,a2,a3,a4,a5) list a1; a2; a3; a4; a5
</MACRO>
<MACRO>
<NAME>TRIO_VA_DECL</NAME>
# define TRIO_VA_DECL va_dcl
</MACRO>
<MACRO>
<NAME>TRIO_VA_START</NAME>
# define TRIO_VA_START(x,y) va_start(x)
</MACRO>
<MACRO>
<NAME>TRIO_VA_END</NAME>
# define TRIO_VA_END(x) va_end(x)
</MACRO>
<MACRO>
<NAME>TRIO_CONST</NAME>
# define TRIO_CONST const
</MACRO>
<MACRO>
<NAME>TRIO_VOLATILE</NAME>
# define TRIO_VOLATILE volatile
</MACRO>
<MACRO>
<NAME>TRIO_SIGNED</NAME>
# define TRIO_SIGNED signed
</MACRO>
<TYPEDEF>
<NAME>trio_long_double_t</NAME>
typedef long double trio_long_double_t;
</TYPEDEF>
<TYPEDEF>
<NAME>trio_pointer_t</NAME>
typedef void * trio_pointer_t;
</TYPEDEF>
<MACRO>
<NAME>TRIO_SUFFIX_LONG</NAME>
# define TRIO_SUFFIX_LONG(x) x ## L
</MACRO>
<MACRO>
<NAME>TRIO_PROTO</NAME>
# define TRIO_PROTO(x) x
</MACRO>
<MACRO>
<NAME>TRIO_NOARGS</NAME>
# define TRIO_NOARGS void
</MACRO>
<MACRO>
<NAME>TRIO_ARGS1</NAME>
# define TRIO_ARGS1(list,a1) (a1)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS2</NAME>
# define TRIO_ARGS2(list,a1,a2) (a1,a2)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS3</NAME>
# define TRIO_ARGS3(list,a1,a2,a3) (a1,a2,a3)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS4</NAME>
# define TRIO_ARGS4(list,a1,a2,a3,a4) (a1,a2,a3,a4)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS5</NAME>
# define TRIO_ARGS5(list,a1,a2,a3,a4,a5) (a1,a2,a3,a4,a5)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS6</NAME>
# define TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6) (a1,a2,a3,a4,a5,a6)
</MACRO>
<MACRO>
<NAME>TRIO_VARGS2</NAME>
# define TRIO_VARGS2 TRIO_ARGS2
</MACRO>
<MACRO>
<NAME>TRIO_VARGS3</NAME>
# define TRIO_VARGS3 TRIO_ARGS3
</MACRO>
<MACRO>
<NAME>TRIO_VARGS4</NAME>
# define TRIO_VARGS4 TRIO_ARGS4
</MACRO>
<MACRO>
<NAME>TRIO_VARGS5</NAME>
# define TRIO_VARGS5 TRIO_ARGS5
</MACRO>
<MACRO>
<NAME>TRIO_VA_DECL</NAME>
# define TRIO_VA_DECL ...
</MACRO>
<MACRO>
<NAME>TRIO_VA_START</NAME>
# define TRIO_VA_START(x,y) va_start(x,y)
</MACRO>
<MACRO>
<NAME>TRIO_VA_END</NAME>
# define TRIO_VA_END(x) va_end(x)
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE inline
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE __inline__
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE _inline
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE __inline
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_LL</NAME>
# define TRIO_COMPILER_SUPPORTS_LL
</MACRO>
<STRUCT>
<NAME>xsltSecurityPrefs</NAME>
</STRUCT>
<TYPEDEF>
<NAME>xsltSecurityPrefsPtr</NAME>
typedef xsltSecurityPrefs *xsltSecurityPrefsPtr;
</TYPEDEF>
<ENUM>
<NAME>xsltSecurityOption</NAME>
typedef enum {
XSLT_SECPREF_READ_FILE = 1,
XSLT_SECPREF_WRITE_FILE,
XSLT_SECPREF_CREATE_DIRECTORY,
XSLT_SECPREF_READ_NETWORK,
XSLT_SECPREF_WRITE_NETWORK
} xsltSecurityOption;
</ENUM>
<USER_FUNCTION>
<NAME>xsltSecurityCheck</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,
xsltTransformContextPtr ctxt,
const char *value
</USER_FUNCTION>
<FUNCTION>
<NAME>xsltNewSecurityPrefs</NAME>
<RETURNS>xsltSecurityPrefsPtr </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>xsltFreeSecurityPrefs</NAME>
<RETURNS>void </RETURNS>
xsltSecurityPrefsPtr sec
</FUNCTION>
<FUNCTION>
<NAME>xsltSetSecurityPrefs</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltSecurityOption option,xsltSecurityCheck func
</FUNCTION>
<FUNCTION>
<NAME>xsltGetSecurityPrefs</NAME>
<RETURNS>xsltSecurityCheck </RETURNS>
xsltSecurityPrefsPtr sec,xsltSecurityOption option
</FUNCTION>
<FUNCTION>
<NAME>xsltSetDefaultSecurityPrefs</NAME>
<RETURNS>void </RETURNS>
xsltSecurityPrefsPtr sec
</FUNCTION>
<FUNCTION>
<NAME>xsltGetDefaultSecurityPrefs</NAME>
<RETURNS>xsltSecurityPrefsPtr </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>xsltSetCtxtSecurityPrefs</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt
</FUNCTION>
<FUNCTION>
<NAME>xsltSecurityAllow</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt,const char *value
</FUNCTION>
<FUNCTION>
<NAME>xsltSecurityForbid</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt,const char *value
</FUNCTION>
<FUNCTION>
<NAME>xsltCheckWrite</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt,const xmlChar *URL
</FUNCTION>
<FUNCTION>
<NAME>xsltCheckRead</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt,const xmlChar *URL
</FUNCTION>
<MACRO>
<NAME>XSLT_MAX_SORT</NAME>
#define XSLT_MAX_SORT 15
</MACRO>
@ -2157,6 +1746,13 @@ struct xsltTransformContext {
void * errctx; /* context for the error handler */
xsltSortFunc sortfunc; /* a ctxt specific sort routine */
/*
* handling of temporary Result Value Tree
*/
xmlDocPtr tmpRVT; /* list of RVT without persistance */
xmlDocPtr persistRVT; /* list of persistant RVTs */
int ctxtflags; /* context processing flags */
};
</STRUCT>
<MACRO>
@ -2251,3 +1847,434 @@ xsltStylesheetPtr style
<RETURNS>int </RETURNS>
xsltTransformContextPtr ctxt
</FUNCTION>
<FUNCTION>
<NAME>xsltCreateRVT</NAME>
<RETURNS>xmlDocPtr </RETURNS>
xsltTransformContextPtr ctxt
</FUNCTION>
<FUNCTION>
<NAME>xsltRegisterTmpRVT</NAME>
<RETURNS>int </RETURNS>
xsltTransformContextPtr ctxt,xmlDocPtr RVT
</FUNCTION>
<FUNCTION>
<NAME>xsltRegisterPersistRVT</NAME>
<RETURNS>int </RETURNS>
xsltTransformContextPtr ctxt,xmlDocPtr RVT
</FUNCTION>
<FUNCTION>
<NAME>xsltFreeRVTs</NAME>
<RETURNS>void </RETURNS>
xsltTransformContextPtr ctxt
</FUNCTION>
<MACRO>
<NAME>TRIO_COMPILER_GCC</NAME>
# define TRIO_COMPILER_GCC
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUNPRO</NAME>
# define TRIO_COMPILER_SUNPRO
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUNPRO</NAME>
# define TRIO_COMPILER_SUNPRO
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_XLC</NAME>
# define TRIO_COMPILER_XLC
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_XLC</NAME>
# define TRIO_COMPILER_XLC /* Workaround for old xlc */
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_DECC</NAME>
# define TRIO_COMPILER_DECC
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_DECC</NAME>
# define TRIO_COMPILER_DECC /* Workaround for old DEC C compilers */
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_MSVC</NAME>
# define TRIO_COMPILER_MSVC
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_BCB</NAME>
# define TRIO_COMPILER_BCB
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_VMS</NAME>
# define TRIO_PLATFORM_VMS
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_QNX</NAME>
# define TRIO_PLATFORM_QNX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_UNIX</NAME>
# define TRIO_PLATFORM_UNIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_WIN32</NAME>
# define TRIO_PLATFORM_WIN32
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_MPEIX</NAME>
# define TRIO_PLATFORM_MPEIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_AIX</NAME>
# define TRIO_PLATFORM_AIX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_HPUX</NAME>
# define TRIO_PLATFORM_HPUX
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_SOLARIS</NAME>
# define TRIO_PLATFORM_SOLARIS
</MACRO>
<MACRO>
<NAME>TRIO_PLATFORM_SUNOS</NAME>
# define TRIO_PLATFORM_SUNOS
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C89</NAME>
# define TRIO_COMPILER_SUPPORTS_C89
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C90</NAME>
# define TRIO_COMPILER_SUPPORTS_C90
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C94</NAME>
# define TRIO_COMPILER_SUPPORTS_C94
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C99</NAME>
# define TRIO_COMPILER_SUPPORTS_C99
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_C94</NAME>
# define TRIO_COMPILER_SUPPORTS_C94
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_UNIX95</NAME>
# define TRIO_COMPILER_SUPPORTS_UNIX95
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_UNIX98</NAME>
# define TRIO_COMPILER_SUPPORTS_UNIX98
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_UNIX01</NAME>
# define TRIO_COMPILER_SUPPORTS_UNIX01
</MACRO>
<MACRO>
<NAME>TRIO_PUBLIC</NAME>
# define TRIO_PUBLIC
</MACRO>
<MACRO>
<NAME>TRIO_PRIVATE</NAME>
# define TRIO_PRIVATE static
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_ANCIENT</NAME>
# define TRIO_COMPILER_ANCIENT
</MACRO>
<MACRO>
<NAME>TRIO_CONST</NAME>
# define TRIO_CONST
</MACRO>
<MACRO>
<NAME>TRIO_VOLATILE</NAME>
# define TRIO_VOLATILE
</MACRO>
<MACRO>
<NAME>TRIO_SIGNED</NAME>
# define TRIO_SIGNED
</MACRO>
<TYPEDEF>
<NAME>trio_long_double_t</NAME>
typedef double trio_long_double_t;
</TYPEDEF>
<TYPEDEF>
<NAME>trio_pointer_t</NAME>
typedef char * trio_pointer_t;
</TYPEDEF>
<MACRO>
<NAME>TRIO_SUFFIX_LONG</NAME>
# define TRIO_SUFFIX_LONG(x) x
</MACRO>
<MACRO>
<NAME>TRIO_PROTO</NAME>
# define TRIO_PROTO(x) ()
</MACRO>
<MACRO>
<NAME>TRIO_NOARGS</NAME>
# define TRIO_NOARGS
</MACRO>
<MACRO>
<NAME>TRIO_ARGS1</NAME>
# define TRIO_ARGS1(list,a1) list a1;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS2</NAME>
# define TRIO_ARGS2(list,a1,a2) list a1; a2;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS3</NAME>
# define TRIO_ARGS3(list,a1,a2,a3) list a1; a2; a3;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS4</NAME>
# define TRIO_ARGS4(list,a1,a2,a3,a4) list a1; a2; a3; a4;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS5</NAME>
# define TRIO_ARGS5(list,a1,a2,a3,a4,a5) list a1; a2; a3; a4; a5;
</MACRO>
<MACRO>
<NAME>TRIO_ARGS6</NAME>
# define TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6) list a1; a2; a3; a4; a5; a6;
</MACRO>
<MACRO>
<NAME>TRIO_VARGS2</NAME>
# define TRIO_VARGS2(list,a1,a2) list a1; a2
</MACRO>
<MACRO>
<NAME>TRIO_VARGS3</NAME>
# define TRIO_VARGS3(list,a1,a2,a3) list a1; a2; a3
</MACRO>
<MACRO>
<NAME>TRIO_VARGS4</NAME>
# define TRIO_VARGS4(list,a1,a2,a3,a4) list a1; a2; a3; a4
</MACRO>
<MACRO>
<NAME>TRIO_VARGS5</NAME>
# define TRIO_VARGS5(list,a1,a2,a3,a4,a5) list a1; a2; a3; a4; a5
</MACRO>
<MACRO>
<NAME>TRIO_VA_DECL</NAME>
# define TRIO_VA_DECL va_dcl
</MACRO>
<MACRO>
<NAME>TRIO_VA_START</NAME>
# define TRIO_VA_START(x,y) va_start(x)
</MACRO>
<MACRO>
<NAME>TRIO_VA_END</NAME>
# define TRIO_VA_END(x) va_end(x)
</MACRO>
<MACRO>
<NAME>TRIO_CONST</NAME>
# define TRIO_CONST const
</MACRO>
<MACRO>
<NAME>TRIO_VOLATILE</NAME>
# define TRIO_VOLATILE volatile
</MACRO>
<MACRO>
<NAME>TRIO_SIGNED</NAME>
# define TRIO_SIGNED signed
</MACRO>
<TYPEDEF>
<NAME>trio_long_double_t</NAME>
typedef long double trio_long_double_t;
</TYPEDEF>
<TYPEDEF>
<NAME>trio_pointer_t</NAME>
typedef void * trio_pointer_t;
</TYPEDEF>
<MACRO>
<NAME>TRIO_SUFFIX_LONG</NAME>
# define TRIO_SUFFIX_LONG(x) x ## L
</MACRO>
<MACRO>
<NAME>TRIO_PROTO</NAME>
# define TRIO_PROTO(x) x
</MACRO>
<MACRO>
<NAME>TRIO_NOARGS</NAME>
# define TRIO_NOARGS void
</MACRO>
<MACRO>
<NAME>TRIO_ARGS1</NAME>
# define TRIO_ARGS1(list,a1) (a1)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS2</NAME>
# define TRIO_ARGS2(list,a1,a2) (a1,a2)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS3</NAME>
# define TRIO_ARGS3(list,a1,a2,a3) (a1,a2,a3)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS4</NAME>
# define TRIO_ARGS4(list,a1,a2,a3,a4) (a1,a2,a3,a4)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS5</NAME>
# define TRIO_ARGS5(list,a1,a2,a3,a4,a5) (a1,a2,a3,a4,a5)
</MACRO>
<MACRO>
<NAME>TRIO_ARGS6</NAME>
# define TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6) (a1,a2,a3,a4,a5,a6)
</MACRO>
<MACRO>
<NAME>TRIO_VARGS2</NAME>
# define TRIO_VARGS2 TRIO_ARGS2
</MACRO>
<MACRO>
<NAME>TRIO_VARGS3</NAME>
# define TRIO_VARGS3 TRIO_ARGS3
</MACRO>
<MACRO>
<NAME>TRIO_VARGS4</NAME>
# define TRIO_VARGS4 TRIO_ARGS4
</MACRO>
<MACRO>
<NAME>TRIO_VARGS5</NAME>
# define TRIO_VARGS5 TRIO_ARGS5
</MACRO>
<MACRO>
<NAME>TRIO_VA_DECL</NAME>
# define TRIO_VA_DECL ...
</MACRO>
<MACRO>
<NAME>TRIO_VA_START</NAME>
# define TRIO_VA_START(x,y) va_start(x,y)
</MACRO>
<MACRO>
<NAME>TRIO_VA_END</NAME>
# define TRIO_VA_END(x) va_end(x)
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE inline
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE __inline__
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE _inline
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE __inline
</MACRO>
<MACRO>
<NAME>TRIO_INLINE</NAME>
# define TRIO_INLINE
</MACRO>
<MACRO>
<NAME>TRIO_COMPILER_SUPPORTS_LL</NAME>
# define TRIO_COMPILER_SUPPORTS_LL
</MACRO>
<STRUCT>
<NAME>xsltSecurityPrefs</NAME>
</STRUCT>
<TYPEDEF>
<NAME>xsltSecurityPrefsPtr</NAME>
typedef xsltSecurityPrefs *xsltSecurityPrefsPtr;
</TYPEDEF>
<ENUM>
<NAME>xsltSecurityOption</NAME>
typedef enum {
XSLT_SECPREF_READ_FILE = 1,
XSLT_SECPREF_WRITE_FILE,
XSLT_SECPREF_CREATE_DIRECTORY,
XSLT_SECPREF_READ_NETWORK,
XSLT_SECPREF_WRITE_NETWORK
} xsltSecurityOption;
</ENUM>
<USER_FUNCTION>
<NAME>xsltSecurityCheck</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,
xsltTransformContextPtr ctxt,
const char *value
</USER_FUNCTION>
<FUNCTION>
<NAME>xsltNewSecurityPrefs</NAME>
<RETURNS>xsltSecurityPrefsPtr </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>xsltFreeSecurityPrefs</NAME>
<RETURNS>void </RETURNS>
xsltSecurityPrefsPtr sec
</FUNCTION>
<FUNCTION>
<NAME>xsltSetSecurityPrefs</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltSecurityOption option,xsltSecurityCheck func
</FUNCTION>
<FUNCTION>
<NAME>xsltGetSecurityPrefs</NAME>
<RETURNS>xsltSecurityCheck </RETURNS>
xsltSecurityPrefsPtr sec,xsltSecurityOption option
</FUNCTION>
<FUNCTION>
<NAME>xsltSetDefaultSecurityPrefs</NAME>
<RETURNS>void </RETURNS>
xsltSecurityPrefsPtr sec
</FUNCTION>
<FUNCTION>
<NAME>xsltGetDefaultSecurityPrefs</NAME>
<RETURNS>xsltSecurityPrefsPtr </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>xsltSetCtxtSecurityPrefs</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt
</FUNCTION>
<FUNCTION>
<NAME>xsltSecurityAllow</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt,const char *value
</FUNCTION>
<FUNCTION>
<NAME>xsltSecurityForbid</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt,const char *value
</FUNCTION>
<FUNCTION>
<NAME>xsltCheckWrite</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt,const xmlChar *URL
</FUNCTION>
<FUNCTION>
<NAME>xsltCheckRead</NAME>
<RETURNS>int </RETURNS>
xsltSecurityPrefsPtr sec,xsltTransformContextPtr ctxt,const xmlChar *URL
</FUNCTION>

View File

@ -328,6 +328,62 @@ dscanf
vdscanf
</SECTION>
<SECTION>
<FILE>xsltInternals</FILE>
XSLT_MAX_SORT
XSLT_PAT_NO_PRIORITY
xsltRuntimeExtra
xsltRuntimeExtraPtr
XSLT_RUNTIME_EXTRA_LST
XSLT_RUNTIME_EXTRA_FREE
XSLT_RUNTIME_EXTRA
xsltTemplate
xsltTemplatePtr
xsltDecimalFormat
xsltDecimalFormatPtr
xsltDocument
xsltDocumentPtr
xsltTransformContext
xsltTransformContextPtr
xsltElemPreComp
xsltElemPreCompPtr
xsltTransformFunction
xsltSortFunc
xsltStyleType
xsltElemPreCompDeallocator
xsltStylePreComp
xsltStylePreCompPtr
xsltStackElem
xsltStackElemPtr
xsltStylesheet
xsltStylesheetPtr
xsltOutputType
xsltTransformState
CHECK_STOPPED
CHECK_STOPPEDE
CHECK_STOPPED0
xsltNewStylesheet
xsltParseStylesheetFile
xsltFreeStylesheet
xsltIsBlank
xsltFreeStackElemList
xsltDecimalFormatGetByName
xsltParseStylesheetProcess
xsltParseStylesheetOutput
xsltParseStylesheetDoc
xsltParseStylesheetImportedDoc
xsltLoadStylesheetPI
xsltNumberFormat
xsltFormatNumberConversion
xsltParseTemplateContent
xsltAllocateExtra
xsltAllocateExtraCtxt
xsltCreateRVT
xsltRegisterTmpRVT
xsltRegisterPersistRVT
xsltFreeRVTs
</SECTION>
<SECTION>
<FILE>triodef</FILE>
TRIO_COMPILER_GCC
@ -399,55 +455,3 @@ xsltCheckWrite
xsltCheckRead
</SECTION>
<SECTION>
<FILE>xsltInternals</FILE>
XSLT_MAX_SORT
XSLT_PAT_NO_PRIORITY
xsltRuntimeExtra
xsltRuntimeExtraPtr
XSLT_RUNTIME_EXTRA_LST
XSLT_RUNTIME_EXTRA_FREE
XSLT_RUNTIME_EXTRA
xsltTemplate
xsltTemplatePtr
xsltDecimalFormat
xsltDecimalFormatPtr
xsltDocument
xsltDocumentPtr
xsltTransformContext
xsltTransformContextPtr
xsltElemPreComp
xsltElemPreCompPtr
xsltTransformFunction
xsltSortFunc
xsltStyleType
xsltElemPreCompDeallocator
xsltStylePreComp
xsltStylePreCompPtr
xsltStackElem
xsltStackElemPtr
xsltStylesheet
xsltStylesheetPtr
xsltOutputType
xsltTransformState
CHECK_STOPPED
CHECK_STOPPEDE
CHECK_STOPPED0
xsltNewStylesheet
xsltParseStylesheetFile
xsltFreeStylesheet
xsltIsBlank
xsltFreeStackElemList
xsltDecimalFormatGetByName
xsltParseStylesheetProcess
xsltParseStylesheetOutput
xsltParseStylesheetDoc
xsltParseStylesheetImportedDoc
xsltLoadStylesheetPI
xsltNumberFormat
xsltFormatNumberConversion
xsltParseTemplateContent
xsltAllocateExtra
xsltAllocateExtraCtxt
</SECTION>

View File

@ -30,6 +30,6 @@ libexslt_la_SOURCES = \
libexslt_la_LIBADD = $(INSTALLED_XSLT_LIB) $(EXTRA_LIBS)
libexslt_la_LDFLAGS = -version-info @LIBEXSLT_VERSION_INFO@
man_MANS = libexslt.4
man_MANS = libexslt.3
EXTRA_DIST = $(man_MANS)

View File

@ -1,4 +1,4 @@
.TH libexslt 4 "15 May 2002"
.TH libexslt 3 "15 May 2002"
.SH NAME
libexslt \- extension library for XSLT
.SH DESCRIPTION

View File

@ -101,8 +101,8 @@ static void
exsltSetsDistinctFunction (xmlXPathParserContextPtr ctxt, int nargs) {
xmlXPathObjectPtr obj;
xmlNodeSetPtr ns, ret;
int boolval;
void *user;
int boolval = 0;
void *user = NULL;
if (nargs != 1) {
xmlXPathSetArityError(ctxt);

View File

@ -85,8 +85,8 @@ rm -fr %{buildroot}
%doc AUTHORS ChangeLog NEWS README Copyright TODO FEATURES
%doc doc/libxslt-api.xml
%doc doc/libexslt-api.xml
%doc %{_mandir}/man4/libxslt.4*
%doc %{_mandir}/man4/libexslt.4*
%doc %{_mandir}/man3/libxslt.3*
%doc %{_mandir}/man3/libexslt.3*
%{_libdir}/lib*.so
%{_libdir}/*a
%{_libdir}/*.sh

View File

@ -51,7 +51,7 @@ libxslt_la_SOURCES = \
libxslt_la_LIBADD = $(EXTRA_LIBS)
libxslt_la_LDFLAGS = -version-info @LIBXSLT_VERSION_INFO@
man_MANS = libxslt.4
man_MANS = libxslt.3
EXTRA_DIST = $(man_MANS)

View File

@ -504,6 +504,7 @@ struct _xsltTransformContext {
*/
xmlDocPtr tmpRVT; /* list of RVT without persistance */
xmlDocPtr persistRVT; /* list of persistant RVTs */
int ctxtflags; /* context processing flags */
};
/**

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -84,7 +84,7 @@
irc.gnome.org is another option for contacting GDP members.
</p></div></div><div class="sect2"><a name="notation"/><div class="titlepage"><div><h3 class="title"><a name="notation"/>Notation and Conventions</h3></div></div><p>
This Handbook uses the following notation:
<div class="informaltable" id="id2880946"><a name="id2880946"/><table border="0"><colgroup><col/><col/></colgroup><tbody><tr><td><tt>/usr/bin</tt></td><td>
<div class="informaltable" id="id2797668"><a name="id2797668"/><table border="0"><colgroup><col/><col/></colgroup><tbody><tr><td><tt>/usr/bin</tt></td><td>
Directory
</td></tr><tr><td><tt>foo.sgml</tt></td><td>
Filename
@ -148,7 +148,7 @@
help. The <i>DocTable</i> also allows
people to make announcements and suggestions and to discuss
issues in the comments section.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2787350"/>Note</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2795537"/>Note</h3><p>
Note that the information in the
<i>DocTable</i> may not always be up-to-date
or accurate. When you assign yourself to documenting an
@ -160,7 +160,7 @@
this for documentation, not least of which is the single
source nature of SGML. To contribute to the GDP you should
learn to use DocBook.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2787436"/>NOTE</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2795620"/>NOTE</h3><p>
To get started writing for the GDP you do not need to rush
out and learn DocBook - if you feel it is too much to handle
for now, you can submit plain ASCII text to the <a href="http://mail.gnome.org/mailman/listinfo/gnome-doc-list/" target="_top">
@ -206,14 +206,14 @@
your output document appearance subtly vary between the two
DTD's. To install the GDP custom DTD with PNG image support
by hand:
</p><div class="itemizedlist"><ul><li style="list-style-type: opencircle"><p><a name="id2787838"/>
</p><div class="itemizedlist"><ul><li style="list-style-type: opencircle"><p><a name="id2796033"/>
Download <a href="http://www.labs.redhat.com/png/png-support.html" target="_top">the
GDP DocBook DTD for PNG support</a> and install it
where you keep your DTD's. (On Red Hat use <tt>/usr/lib/sgml/</tt>.) Note that
the 3.0 DTD is missing support for the
<tt>&lt;legalnotice&gt;</tt> tag, so it is
recommended that you use version 3.1
</p></li><li style="list-style-type: disc"><p><a name="id2788168"/>
</p></li><li style="list-style-type: disc"><p><a name="id2796096"/>
Add the new DTD to your SGML CATALOG file. The location
of your SGML CATALOG file may vary depending upon your
distribution. (On Red Hat it is usually in
@ -291,7 +291,7 @@ V1.1//EN&quot;[]&gt;
the command <tt>$</tt><b>db2ps
mydocument.sgml</b>, after which you can print out or
view the resulting .ps file.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2907932"/>NOTE</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2796573"/>NOTE</h3><p>
The html files you get will not look quite the same as the
documentation distributed with GNOME unless you have the
custom stylesheets installed on your machine. DocBook
@ -342,24 +342,24 @@ V1.1//EN&quot;[]&gt;
There are many resources available to help you learn DocBook.
The following resources on the web are useful for learning
DocBook:
</p><div class="itemizedlist"><ul><li style="list-style-type: disc"><p><a name="id2908222"/>
</p><div class="itemizedlist"><ul><li style="list-style-type: disc"><p><a name="id2918692"/>
<a href="http://www.docbook.org" target="_top">http://www.docbook.org</a> - Norman
Walsh's <i>DocBook: The Definitive
Guide</i>. Online O'Reilly book on using
DocBook. Contains an excellent element reference. May be
too formal for a beginner.
</p></li><li style="list-style-type: disc"><p><a name="id2908268"/>
</p></li><li style="list-style-type: disc"><p><a name="id2918739"/>
<a href="http://www.oswg.org/oswg-nightly/oswg/en_US.ISO_8859-1/articles/DocBook-Intro/docbook-intro/index.html" target="_top">A Practical Introduction to DocBook</a>
- The Open Source Writers Group's introduction to using
DocBook. This is an excellent HOW-TO type article on
getting started.
</p></li><li style="list-style-type: disc"><p><a name="id2908308"/>
</p></li><li style="list-style-type: disc"><p><a name="id2918780"/>
<a href="http://nis-www.lanl.gov/~rosalia/mydocs/docbook-intro/docbook-intro.html" target="_top">Getting Going with DocBook: Notes for
Hackers</a> - Mark Galassi's introduction to DocBook
for hackers. This has to be one of the first
introductions to DocBook ever - still as good as it ever
was.
</p></li><li style="list-style-type: disc"><p><a name="id2908348"/>
</p></li><li style="list-style-type: disc"><p><a name="id2918819"/>
<a href="http://www.freebsd.org/tutorials/docproj-primer/" target="_top">
FreeBSD Documentation Project Primer for New
Contributors</a> - FreeBSD documentation project
@ -372,7 +372,7 @@ V1.1//EN&quot;[]&gt;
</p><p>
The following sections of this document are designed to help
documentation authors write correct and consistent DocBook:
</p><div class="itemizedlist"><ul><li style="list-style-type: disc"><p><a name="id2908423"/>
</p><div class="itemizedlist"><ul><li style="list-style-type: disc"><p><a name="id2918894"/>
<a href="#docbookbasics" title="DocBook Basics ">the section called &#8220;DocBook Basics &#8221;</a> - Descriptions of
commonly used DocBook tags.
</p></li></ul></div><p>
@ -710,7 +710,7 @@ V1.1//EN&quot;[]&gt;
ready for this transistion, it is <i>strongly
advised</i> that the documentation writers conform to XML
syntax rules. Here are most important differences:
</p><div class="variablelist"><dl><dt><a name="id2910860"/><span class="term"> <i>Minimization</i></span></dt><dd><p><a name="id2910878"/>
</p><div class="variablelist"><dl><dt><a name="id2921205"/><span class="term"> <i>Minimization</i></span></dt><dd><p><a name="id2921223"/>
It is possible with some implementations of SGML to use
minimizations to close elements in a document by using
&lt;/&gt;, for example:
@ -721,7 +721,7 @@ V1.1//EN&quot;[]&gt;
if you are using Emacs with psgml
mode, you can also use menu command
Modify-&gt;Normalize.
</p></dd><dt><a name="id2910991"/><span class="term"> <i>Self-closing tags</i></span></dt><dd><p><a name="id2911010"/>
</p></dd><dt><a name="id2921339"/><span class="term"> <i>Self-closing tags</i></span></dt><dd><p><a name="id2921357"/>
Also, in SGML some tags are allowed not to have closing
tags. For example, it is legal for
<tt>&lt;xref&gt;</tt> not to have a closing tag:
@ -731,7 +731,7 @@ V1.1//EN&quot;[]&gt;
<tt><tt>&lt;xref
linkend=&quot;someid&quot;/&gt;</tt></tt> (note the
slash!).
</p></dd><dt><a name="id2911074"/><span class="term"> <i>Case sensitive tags</i></span></dt><dd><p><a name="id2911092"/>
</p></dd><dt><a name="id2921424"/><span class="term"> <i>Case sensitive tags</i></span></dt><dd><p><a name="id2921441"/>
In XML, unlike SGML, tags are case-senstive
<tt>&lt;title&gt;</tt> and
<tt>&lt;TITLE&gt;</tt> are different tags!
@ -797,7 +797,7 @@ V1.1//EN&quot;[]&gt;
actual file name (without extension). The result will look like this:
<div class="figure"><p><a name="shot1"/><b>Figure 1. Screenshot</b></p><div class="screenshot"><p><img src="figures/example_screenshot"/></p></div></div>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2911611"/>NOTE</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2921964"/>NOTE</h3><p>
Notice in this example that the screenshot file name does
not include the file type extension -- to find out
why, please read <a href="#jadeimages" title="Images in DocBook Tools">the section called &#8220;Images in DocBook Tools&#8221;</a>.
@ -845,7 +845,7 @@ make: *** No rule to make target `love'. Stop.
Note the use of tags <tt>&lt;prompt&gt;</tt> and
<tt>&lt;userinput&gt;</tt> for marking system prompt
and commands entered by user.
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2911833"/>NOTE</h3><p>
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2922180"/>NOTE</h3><p>
Note that both <tt>&lt;programlisting&gt;</tt>
and <tt>&lt;screen&gt;</tt> preserve linebreaks,
but interpret SGML tags (unlike LaTeX
@ -858,7 +858,7 @@ make: *** No rule to make target `love'. Stop.
<tt>&lt;itemizedlist&gt;</tt>,
<tt>&lt;orderedlist&gt;</tt>, and
<tt>&lt;variablelist&gt;</tt>.
</p><div class="variablelist"><dl><dt><a name="id2911950"/><span class="term"> <tt>&lt;itemizedlist&gt;</tt></span></dt><dd><p><a name="id2911969"/>
</p><div class="variablelist"><dl><dt><a name="id2922298"/><span class="term"> <tt>&lt;itemizedlist&gt;</tt></span></dt><dd><p><a name="id2922318"/>
This is the simplest unnumbered list, parallel to
<tt>&lt;ul&gt;</tt> in HTML. Here is an example:
<pre class="programlisting">
@ -889,16 +889,16 @@ make: *** No rule to make target `love'. Stop.
</pre>
and output:
</p><div class="itemizedlist"><ul><li><p><a name="id2912012"/>
</p><div class="itemizedlist"><ul><li><p><a name="id2922357"/>
Show backup files --
This will show any backup file that might be on
your system.
</p></li><li><p><a name="id2912060"/>
</p></li><li><p><a name="id2922417"/>
Show hidden files --
This will show all &quot;dot files&quot; or files that
begin with a dot. This files typically include
configuration files and directories.
</p></li><li><p><a name="id2912092"/>
</p></li><li><p><a name="id2922449"/>
Mix files and directories
-- This option will display files and
directories in the order you sort them instead
@ -915,7 +915,7 @@ make: *** No rule to make target `love'. Stop.
or -- if none of
this applies -- use
<a href="#gui" title="GUI elements"><tt>&lt;emphasis&gt;</tt></a>.
</p></dd><dt><a name="id2912265"/><span class="term"> <tt>&lt;orderedlist&gt;</tt></span></dt><dd><p><a name="id2912283"/>
</p></dd><dt><a name="id2922620"/><span class="term"> <tt>&lt;orderedlist&gt;</tt></span></dt><dd><p><a name="id2922639"/>
This list is completely analogous to
<tt>&lt;itemizedlist&gt;</tt> and has the same
syntax, but it produces numbered list. By default,
@ -928,7 +928,7 @@ make: *** No rule to make target `love'. Stop.
<tt>loweralpha</tt>,
<tt>upperroman</tt>,
<tt>lowerroman</tt>.
</p></dd><dt><a name="id2912363"/><span class="term"> <tt>&lt;variablelist&gt;</tt></span></dt><dd><p><a name="id2912382"/> This list is used when each entry is
</p></dd><dt><a name="id2922720"/><span class="term"> <tt>&lt;variablelist&gt;</tt></span></dt><dd><p><a name="id2922739"/> This list is used when each entry is
rather long, so it should be formatted as a block of text
with some subtitle, like a small subsection. The
<tt>&lt;variablelist&gt;</tt> is more complicated
@ -969,25 +969,25 @@ make: *** No rule to make target `love'. Stop.
are smart enough to change the numeration (for
<tt>&lt;orderedlist&gt;</tt>) or marks of each entry
(in <tt>&lt;itemizedlist&gt;</tt>) for sub-lists
</p></div></div><div class="sect2"><a name="inline"/><div class="titlepage"><div><h3 class="title"><a name="inline"/>Inline Elements</h3></div></div><div class="sect3"><a name="gui"/><div class="titlepage"><div><h4 class="title"><a name="gui"/>GUI elements</h4></div></div><div class="itemizedlist"><ul><li><p><a name="id2912542"/>
</p></div></div><div class="sect2"><a name="inline"/><div class="titlepage"><div><h3 class="title"><a name="inline"/>Inline Elements</h3></div></div><div class="sect3"><a name="gui"/><div class="titlepage"><div><h4 class="title"><a name="gui"/>GUI elements</h4></div></div><div class="itemizedlist"><ul><li><p><a name="id2922909"/>
<tt>&lt;guibutton&gt;</tt> -- used for
buttons, including checkbuttons and radio buttons
</p></li><li><p><a name="id2912568"/>
</p></li><li><p><a name="id2922935"/>
<tt>&lt;guimenu&gt;</tt>,
<tt>&lt;guisubmenu&gt;</tt> --used for
top-level menus and submenus
respectively, for example <tt>
&lt;guisubmenu&gt;Utilities&lt;/guisubmenu&gt; submenu of the
&lt;guimenu&gt;Main Menu&lt;/guimenu&gt;</tt>
</p></li><li><p><a name="id2912619"/>
</p></li><li><p><a name="id2922985"/>
<tt>&lt;guimenuitem&gt;</tt>--an entry in a
menu
</p></li><li><p><a name="id2912642"/>
</p></li><li><p><a name="id2923009"/>
<tt>&lt;guiicon&gt;</tt>--an icon
</p></li><li><p><a name="id2912666"/>
</p></li><li><p><a name="id2923034"/>
<tt>&lt;guilabel&gt;</tt>--for items which have
labels, like tabs, or bounding boxes.
</p></li><li><p><a name="id2912692"/>
</p></li><li><p><a name="id2923060"/>
<tt>&lt;interface&gt;</tt>-- for most everything
else... a window, a dialog box, the Panel, etc.
</p></li></ul></div><p>
@ -1035,35 +1035,35 @@ url=&quot;http://www.gnome.org&quot;&gt;GNOME Web page&lt;/ulink&gt;
computer-related things</h4></div></div><p>
Here are some tags used to describe operating system-related
things:
</p><div class="itemizedlist"><ul><li><p><a name="id2913087"/> <tt>&lt;filename&gt;</tt> -- used
</p><div class="itemizedlist"><ul><li><p><a name="id2923447"/> <tt>&lt;filename&gt;</tt> -- used
for filenames,
e.g.<tt>&lt;filename&gt;</tt>
foo.sgml
<tt>&lt;/filename&gt;</tt>
produces: <tt>foo.sgml</tt>.
</p></li><li><p><a name="id2913141"/> <tt>&lt;filename
</p></li><li><p><a name="id2923504"/> <tt>&lt;filename
class=&quot;directory&quot;&gt;</tt> -- used for
directories, e.g.<tt>&lt;filename
class=&quot;directory&quot;&gt;</tt>/usr/bin
<tt>&lt;/filename&gt;</tt>
produces: <tt>/usr/bin</tt>.
</p></li><li><p><a name="id2913201"/>
</p></li><li><p><a name="id2923567"/>
<tt>&lt;application&gt;</tt> -- used for
application names,
e.g. <tt>&lt;application&gt;</tt>Gnumeric
<tt>&lt;/application&gt;</tt> produces:
Gnumeric.
</p></li><li><p><a name="id2913256"/>
</p></li><li><p><a name="id2923622"/>
<tt>&lt;envar&gt;</tt> -- used for
environment variables, e.g.
<tt>&lt;envar&gt;</tt>PATH<tt>&lt;/envar&gt;</tt>.
</p></li><li><p><a name="id2913297"/>
</p></li><li><p><a name="id2923664"/>
<tt>&lt;command&gt;</tt> -- used for
commands entered on command line, e.g.
<tt>&lt;command&gt;</tt>make install
<tt>&lt;/command&gt;</tt> produces:
<b>make install</b>.
</p></li><li><p><a name="id2913353"/>
</p></li><li><p><a name="id2923721"/>
<tt>&lt;replaceable&gt;</tt> -- used for
replaceable text, e.g.
<tt>&lt;command&gt;</tt>db2html<tt>&lt;replaceable&gt;</tt>
@ -1131,15 +1131,15 @@ url=&quot;http://www.gnome.org&quot;&gt;GNOME Web page&lt;/ulink&gt;
is required.
</p><p>
here is partial list of most commonly used enitites:
</p><div class="itemizedlist"><ul><li><p><a name="id2913824"/>
</p><div class="itemizedlist"><ul><li><p><a name="id2924181"/>
<tt>&amp;amp;</tt> -- ampersend (&amp;)
</p></li><li><p><a name="id2913843"/>
</p></li><li><p><a name="id2924202"/>
<tt>&amp;lt;</tt> -- left angle bracket (&lt;)
</p></li><li><p><a name="id2913862"/>
</p></li><li><p><a name="id2924221"/>
<tt>&amp;copy;</tt> -- copyright sign (<28>)
</p></li><li><p><a name="id2913880"/>
</p></li><li><p><a name="id2924239"/>
<tt>&amp;mdash;</tt> -- long dash (--)
</p></li><li><p><a name="id2913902"/>
</p></li><li><p><a name="id2924265"/>
<tt>&amp;hellip;</tt> -- ellipsis (...)
</p></li></ul></div><p>
Note that the actual look of the resulting symbols depends
@ -1194,7 +1194,7 @@ url=&quot;http://www.gnome.org&quot;&gt;GNOME Web page&lt;/ulink&gt;
each window or panel presented to the user using screenshots (in
PNG format only) when appropriate. They should also describe
each feature and preference option available.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2914346"/>Documentation Availability</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2924708"/>Documentation Availability</h3><p>
Applications and applets should not rely on documentation
which is only available on the internet. All manuals and
other documentation should be packaged with the application or
@ -1205,14 +1205,14 @@ url=&quot;http://www.gnome.org&quot;&gt;GNOME Web page&lt;/ulink&gt;
the templates in <a href="#template2-1x" title="Template 2: Applet Manual For GNOME 1.x">the section called &#8220;Template 2: Applet Manual For GNOME 1.x&#8221;</a> for GNOME
versions 1.x and the templates in <a href="#template2-2x" title="Template 2: Applet Manual For GNOME 2.x">the section called &#8220;Template 2: Applet Manual For GNOME 2.x&#8221;</a>
for GNOME versions 2.x.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2914439"/>Manuals For Large Applications</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2924802"/>Manuals For Large Applications</h3><p>
Manuals for very large applications, such as GNOME Workshop
components should be a <tt>&lt;book&gt;</tt> (and thus
use <tt>&lt;chapter&gt;</tt> for each primary section)
, instead of <tt>&lt;article&gt;</tt> which most
applications use(with each primary section being a
<tt>&lt;sect1&gt;</tt>).
</p></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2914497"/>Applet Manuals in GNOME 2.0</h3><p>
</p></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2924860"/>Applet Manuals in GNOME 2.0</h3><p>
Note that applet manuals in GNOME 2.0 are treated in a special
way. The manuals for all applets are merged into a single
virtual document by Nautilus. For this reason, the header
@ -1228,7 +1228,7 @@ url=&quot;http://www.gnome.org&quot;&gt;GNOME Web page&lt;/ulink&gt;
application, as described in <a href="#listingdocsinhelpmenu" title="Listing Documents in the Help Menu">the section called &#8220;Listing Documents in the Help Menu&#8221;</a>.
Applets should make their manuals available by
right-clicking on the applet.
</p></div><div class="sect1"><a name="listingdocsinhelpmenu"/><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="listingdocsinhelpmenu"/>Listing Documents in the Help Menu</h2></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2914617"/>Developer Information</h3><p>
</p></div><div class="sect1"><a name="listingdocsinhelpmenu"/><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="listingdocsinhelpmenu"/>Listing Documents in the Help Menu</h2></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2924983"/>Developer Information</h3><p>
This section is for developers. Documentation authors
generally do not need to know this material.
</p></div><p>
@ -1260,7 +1260,7 @@ function-reference.html Gnumeric function reference
application's name. The application documentation (converted
from SGML into HTML with <b>db2html</b>) should be
placed in this directory too.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2914806"/>Note</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2925171"/>Note</h3><p>
If the help files are not present in the correct directory, the
menu items will NOT appear when the program is run.
</p></div><p>
@ -1286,7 +1286,7 @@ GnomeUIInfo helpmenu[] = {
Help menu. When the user selects any of these
topics from the Help menu, a help browser
will be started with the associated HTML documentation.
</p></div><div class="sect1"><a name="applicationhelpbuttons"/><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="applicationhelpbuttons"/>Application Help Buttons</h2></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2914972"/>Developer Information</h3><p>
</p></div><div class="sect1"><a name="applicationhelpbuttons"/><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="applicationhelpbuttons"/>Application Help Buttons</h2></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2925335"/>Developer Information</h3><p>
This section is for developers. Documentation authors
generally do not need to know this material.
</p></div><p>
@ -1311,7 +1311,7 @@ if (tmp) {
gnome_help_goto(0, tmp);
g_free(tmp);
}
</pre><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2915108"/>NOTE</h3><p>
</pre><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2925473"/>NOTE</h3><p>
The example above is in the C language, please refer to other
documentation or forums for other GNOME language bindings.
</p></div></div><div class="sect1"><a name="packagingappletdocs"/><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="packagingappletdocs"/>Packaging Applet Documentation</h2></div></div><div class="sect2"><a name="appletfiles"/><div class="titlepage"><div><h3 class="title"><a name="appletfiles"/>Applet Documentation Files</h3></div></div><p>
@ -1348,7 +1348,7 @@ if (tmp) {
of the <i>GNOME Applets</i> book, you must
remember to add <tt>&lt;legalnotice&gt;</tt> and
<tt>&lt;copyright&gt;</tt> sections.
</p></div><div class="sect2"><a name="appletmenu"/><div class="titlepage"><div><h3 class="title"><a name="appletmenu"/>Adding Documentation to an Applet Menu</h3></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2915355"/>Developer Information</h3><p>
</p></div><div class="sect2"><a name="appletmenu"/><div class="titlepage"><div><h3 class="title"><a name="appletmenu"/>Adding Documentation to an Applet Menu</h3></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2925721"/>Developer Information</h3><p>
This section is for developers. Documentation authors
generally do not need to know this material.
</p></div><p>
@ -1453,7 +1453,7 @@ applet_widget_register_stock_callback (APPLET_WIDGET(applet), &quot;about&quot;,
</p></div><div class="sect2"><a name="balance"/><div class="titlepage"><div><h3 class="title"><a name="balance"/>Achieving a Balanced Style</h3></div></div><p>
Just as you need to juggle expert and novice readers,
you'll have to juggle a number of other extremes as you write:
<div class="itemizedlist"><ul><li><p><a name="id2915900"/>
<div class="itemizedlist"><ul><li><p><a name="id2926279"/>
Documents should be complete, yet concise. You should
describe every feature, but you'll have decide how much
detail is really necessary. It's not, for example,
@ -1463,7 +1463,7 @@ applet_widget_register_stock_callback (APPLET_WIDGET(applet), &quot;about&quot;,
you spend fewer words on the obvious, you can spend more
time clarifying the ambiguous labels and explaining
items that are more complex.
</p></li><li><p><a name="id2915927"/>
</p></li><li><p><a name="id2926306"/>
Be engaging and friendly, yet professional. Games
documents may be less formal than productivity
application documents (people don't
@ -1472,14 +1472,14 @@ applet_widget_register_stock_callback (APPLET_WIDGET(applet), &quot;about&quot;,
maintain a standard of style which holds the reader's
interest without resorting to jokes and untranslatable
allusions or puns.
</p></li><li><p><a name="id2915966"/>
</p></li><li><p><a name="id2926345"/>
Examples, tips, notes, and screenshots are useful to
break up long stretches of text, but too many can get in
the way, and make your documents too choppy to read.
It's good to provide a screenshot of any dialog windows
a user might run into, but if a dialog box has several
tabs, it's not usually necessary to have one for each.
</p></li><li><p><a name="id2915990"/>
</p></li><li><p><a name="id2926368"/>
The GDP strives to have all of its documentation conform
to certain standards of style and content, but every
document (and every writer) is different. You will need

View File

@ -6,11 +6,11 @@
<pre class="programlisting">
&lt;!DOCTYPE Article PUBLIC &quot;-//GNOME//DTD DocBook PNG Variant V1.1//EN&quot;[
&lt;!DOCTYPE Article PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.1//EN"[
&lt;!-- if not using PNG graphic, replace reference above with
.....PUBLIC &quot;-//OASIS//DTD DocBook V3.1//EN&quot;[
.....PUBLIC "-//OASIS//DTD DocBook V3.1//EN"[
--&gt;
&lt;!ENTITY version &quot;1.0.53&quot;&gt;
&lt;!ENTITY version "1.0.53"&gt;
&lt;!-- replace version above with actual application version number--&gt;
&lt;!-- Template Version: 1.0.1 (do not remove this line) --&gt;
]&gt;
@ -20,7 +20,7 @@
Documentation Project Team. Please use it for writing GNOME
documentation, making obvious changes. In particular, all the words
written in UPPERCASE (with the exception of GNOME) should be
replaced. As for &quot;legalnotice&quot;, please leave the reference
replaced. As for "legalnotice", please leave the reference
unchanged.
Remember that this is a guide, rather than a perfect model to follow
@ -30,7 +30,7 @@
&lt;!-- =============Document Header ============================= --&gt;
&lt;article id=&quot;index&quot;&gt; &lt;!-- please do not change the id --&gt;
&lt;article id="index"&gt; &lt;!-- please do not change the id --&gt;
&lt;artheader&gt;
&lt;title&gt;MY-GNOME-APP&lt;/title&gt;
@ -49,7 +49,7 @@
--&gt;
&lt;!-- do not put authorname in the header except in copyright - use
section &quot;authors&quot; below --&gt;
section "authors" below --&gt;
&lt;legalnotice&gt;
&lt;para&gt;
@ -60,8 +60,8 @@
Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. You may obtain a copy of the &lt;citetitle&gt;GNU Free
Documentation License&lt;/citetitle&gt; from the Free Software
Foundation by visiting &lt;ulink type=&quot;http&quot;
url=&quot;http://www.fsf.org&quot;&gt;their Web site&lt;/ulink&gt; or by writing
Foundation by visiting &lt;ulink type="http"
url="http://www.fsf.org"&gt;their Web site&lt;/ulink&gt; or by writing
to: Free Software Foundation, Inc., 59 Temple Place - Suite
330, Boston, MA 02111-1307, USA.
&lt;/para&gt;
@ -84,7 +84,7 @@
&lt;!-- ============= Document Body ============================= --&gt;
&lt;!-- ============= Introduction ============================== --&gt;
&lt;sect1 id=&quot;intro&quot;&gt;
&lt;sect1 id="intro"&gt;
&lt;title&gt;Introduction&lt;/title&gt;
&lt;para&gt;
@ -125,7 +125,7 @@
&lt;!-- ================ Usage ================================ --&gt;
&lt;!-- This section should describe basic usage of the application. --&gt;
&lt;sect1 id=&quot;usage&quot;&gt;
&lt;sect1 id="usage"&gt;
&lt;title&gt;Using MY-GNOME-APP&lt;/title&gt;
&lt;para&gt;
&lt;application&gt;MY-GNOME-APP&lt;/application&gt; can be used to produce a
@ -137,19 +137,19 @@
&lt;/para&gt;
&lt;!-- ========= Basic Usage =========================== --&gt;
&lt;sect2 id=&quot;mainwin&quot;&gt;
&lt;sect2 id="mainwin"&gt;
&lt;title&gt;Basic usage&lt;/title&gt;
&lt;para&gt;
Starting &lt;application&gt;MY-GNOME-APP&lt;/application&gt; opens the
&lt;interface&gt;Main window&lt;/interface&gt;, shown in &lt;xref
linkend=&quot;mainwindow-fig&quot;&gt;. The window is at first empty.
linkend="mainwindow-fig"&gt;. The window is at first empty.
&lt;!-- ==== Figure ==== --&gt;
&lt;figure id=&quot;mainwindow-fig&quot;&gt;
&lt;figure id="mainwindow-fig"&gt;
&lt;title&gt;MY-GNOME-APP Main Window&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;MY-GNOME-APP Main Window&lt;/screeninfo&gt;
&lt;graphic fileref=&quot;SCREENSHOT&quot; format=&quot;png&quot; srccredit=&quot;ME&quot;&gt;
&lt;graphic fileref="SCREENSHOT" format="png" srccredit="ME"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
@ -157,13 +157,13 @@
&lt;/para&gt;
&lt;!-- For this app, one could put &quot;proving&quot; or &quot;edit&quot; (probably even
&lt;!-- For this app, one could put "proving" or "edit" (probably even
both of them) as sect2's seperate from the main window
section. Since they were both so closely involved with the main
window, I decided to have them as sect3's isntead. Judgement
call. --&gt;
&lt;sect3 id=&quot;proving&quot;&gt;
&lt;sect3 id="proving"&gt;
&lt;title&gt;Proving a Theorem&lt;/title&gt;
&lt;para&gt;
To get a proof of a theorem, select
@ -242,7 +242,7 @@
&lt;/para&gt;
&lt;/warning&gt;
&lt;/sect3&gt;
&lt;sect3 id=&quot;editing&quot;&gt;
&lt;sect3 id="editing"&gt;
&lt;title&gt;Editing Proofs&lt;/title&gt;
&lt;para&gt;
Once you have proven the theorem, it will be displayed in
@ -295,16 +295,16 @@
============================================================= --&gt;
&lt;sect2 id=&quot;toolbar&quot;&gt;
&lt;sect2 id="toolbar"&gt;
&lt;title&gt;Toolbar&lt;/title&gt;
&lt;para&gt;
The toolbar (shown in &lt;xref linkend=&quot;figure-usage-toolbar&quot;&gt;)
The toolbar (shown in &lt;xref linkend="figure-usage-toolbar"&gt;)
provides access to several commonly used routines.
&lt;figure id=&quot;figure-usage-toolbar&quot;&gt;
&lt;figure id="figure-usage-toolbar"&gt;
&lt;title&gt;MY-GNOME-APP Toolbar&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;MY-GNOME-APP Toolbar&lt;/screeninfo&gt;
&lt;graphic fileref=&quot;usage-toolbar.png&quot; format=&quot;png&quot;&gt;&lt;/graphic&gt;
&lt;graphic fileref="usage-toolbar.png" format="png"&gt;&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
&lt;variablelist&gt;
@ -340,7 +340,7 @@
&lt;/sect2&gt;
&lt;!-- ========= Menus =========================== --&gt;
&lt;sect2 id=&quot;menubar&quot;&gt;
&lt;sect2 id="menubar"&gt;
&lt;!-- Describing the menubar ensures comprehensive feature
coverage. Nest itemizedlists inside variablelists so that each
@ -479,7 +479,7 @@
&lt;para&gt;
&lt;guimenuitem&gt;Preferences&amp;hellip;&lt;/guimenuitem&gt;
&amp;mdash; This opens the &lt;link
linkend=&quot;prefs&quot;&gt;&lt;interface&gt;Preferences
linkend="prefs"&gt;&lt;interface&gt;Preferences
Dialog&lt;/interface&gt;&lt;/link&gt;, which allows you to configure
many settings.
&lt;/para&gt;
@ -532,7 +532,7 @@
&lt;!-- ============= Customization ============================= --&gt;
&lt;sect1 id=&quot;prefs&quot;&gt;
&lt;sect1 id="prefs"&gt;
&lt;title&gt;Customization&lt;/title&gt;
&lt;para&gt;
To change the application settings, select
@ -541,15 +541,15 @@
&lt;guimenuitem&gt;Preferences...&lt;/guimenuitem&gt;
&lt;/menuchoice&gt;. This opens the
&lt;interface&gt;Preferences&lt;/interface&gt; dialog, shown in &lt;xref
linkend=&quot;preferences-fig&quot;&gt;.
linkend="preferences-fig"&gt;.
&lt;/para&gt;
&lt;figure id=&quot;preferences-fig&quot;&gt;
&lt;figure id="preferences-fig"&gt;
&lt;title&gt;Preferences Dialog&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;Preferences Dialog&lt;/screeninfo&gt;
&lt;graphic fileref=&quot;SCREENSHOT&quot; format=&quot;png&quot;
srccredit=&quot;ME&quot;&gt;
&lt;graphic fileref="SCREENSHOT" format="png"
srccredit="ME"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
@ -635,7 +635,7 @@
&lt;!-- This section should describe known bugs and limitations of
the program if there are any - please be frank and list all
problems you know of. --&gt;
&lt;sect1 id=&quot;bugs&quot;&gt;
&lt;sect1 id="bugs"&gt;
&lt;title&gt;Known Bugs and Limitations&lt;/title&gt;
&lt;para&gt;
This application has no known bugs.
@ -645,18 +645,18 @@
&lt;!-- ============= Authors ================================ --&gt;
&lt;sect1 id=&quot;authors&quot;&gt;
&lt;sect1 id="authors"&gt;
&lt;title&gt;Authors&lt;/title&gt;
&lt;para&gt;
&lt;application&gt;MY-GNOME-APP&lt;/application&gt; was written by GNOME-HACKER
(&lt;email&gt;hacker@gnome.org&lt;/email&gt;). To find more information about
&lt;application&gt;MY-GNOME-APP&lt;/application&gt;, please visit the &lt;ulink
url=&quot;http://www.my-gnome-app.org&quot; type=&quot;http&quot;&gt;MY-GNOME-APP Web
url="http://www.my-gnome-app.org" type="http"&gt;MY-GNOME-APP Web
page&lt;/ulink&gt;. Please send all comments, suggestions, and bug
reports to the &lt;ulink url=&quot;http://bugs.gnome.org&quot; type=&quot;http&quot;&gt;GNOME
reports to the &lt;ulink url="http://bugs.gnome.org" type="http"&gt;GNOME
bug tracking database&lt;/ulink&gt;. (Instructions for submitting bug
reports can be found &lt;ulink
url=&quot;http://bugs.gnome.org/Reporting.html&quot; type=&quot;http&quot;&gt;
url="http://bugs.gnome.org/Reporting.html" type="http"&gt;
on-line&lt;/ulink&gt;.) You can also use &lt;application&gt;Bug Report
Tool&lt;/application&gt; (&lt;command&gt;bug-buddy&lt;/command&gt;), available in the
&lt;guisubmenu&gt;Utilities&lt;/guisubmenu&gt; submenu of &lt;guimenu&gt;Main
@ -666,12 +666,12 @@
&lt;para&gt;
This manual was written by ME
(&lt;email&gt;MYNAME@MYADDRESS&lt;/email&gt;). Please send all comments and
suggestions regarding this manual to the &lt;ulink type=&quot;http&quot;
url=&quot;http://developer.gnome.org/projects/gdp&quot;&gt;GNOME Documentation
suggestions regarding this manual to the &lt;ulink type="http"
url="http://developer.gnome.org/projects/gdp"&gt;GNOME Documentation
Project&lt;/ulink&gt; by sending an email to
&lt;email&gt;docs@gnome.org&lt;/email&gt;. You can also add your comments online
by using the &lt;ulink type=&quot;http&quot;
url=&quot;http://www.gnome.org/gdp/doctable/&quot;&gt;GNOME Documentation Status
by using the &lt;ulink type="http"
url="http://www.gnome.org/gdp/doctable/"&gt;GNOME Documentation Status
Table&lt;/ulink&gt;.
&lt;/para&gt;
@ -690,7 +690,7 @@
&lt;!-- ============= Application License ============================= --&gt;
&lt;sect1 id=&quot;license&quot;&gt;
&lt;sect1 id="license"&gt;
&lt;title&gt;License&lt;/title&gt;
&lt;para&gt;
This program is free software; you can redistribute it and/or
@ -710,8 +710,8 @@
included as an appendix to the &lt;citetitle&gt;GNOME Users
Guide&lt;/citetitle&gt;. You may also obtain a copy of the
&lt;citetitle&gt;GNU General Public License&lt;/citetitle&gt; from the Free
Software Foundation by visiting &lt;ulink type=&quot;http&quot;
url=&quot;http://www.fsf.org&quot;&gt;their Web site&lt;/ulink&gt; or by writing to
Software Foundation by visiting &lt;ulink type="http"
url="http://www.fsf.org"&gt;their Web site&lt;/ulink&gt; or by writing to
&lt;address&gt;
Free Software Foundation, Inc.
&lt;street&gt;59 Temple Place&lt;/street&gt; - Suite 330

View File

@ -14,8 +14,8 @@
<pre class="programlisting">
&lt;!DOCTYPE Article PUBLIC &quot;-//GNOME//DTD DocBook PNG Variant V1.1//EN&quot;[
&lt;!entity APPLETNAME.sgml SYSTEM &quot;applet_template_1.sgml&quot;&gt;
&lt;!DOCTYPE Article PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.1//EN"[
&lt;!entity APPLETNAME.sgml SYSTEM "applet_template_1.sgml"&gt;
&lt;!-- Template Version: 1.0.1 (do not remove this line) --&gt;
]&gt;
@ -23,7 +23,7 @@
Documentation Project Team. Please use it for writing GNOME
documentation, making obvious changes. In particular, all the words
written in UPPERCASE (with the exception of GNOME) should be
replaced. As for &quot;legalnotice&quot;, please leave the reference
replaced. As for "legalnotice", please leave the reference
unchanged,make sure to add/remove trademarks to the list as
appropriate for your document.
@ -31,7 +31,7 @@
thanks ;-).
--&gt;
&lt;article id=&quot;index&quot;&gt; &lt;!-- please do not change the id --&gt;
&lt;article id="index"&gt; &lt;!-- please do not change the id --&gt;
&lt;!-- ============= Document Header ============================= --&gt;
&lt;artheader&gt;
@ -51,7 +51,7 @@
--&gt;
&lt;!-- do not put authorname in the header except in copyright - use
section &quot;authors&quot; below --&gt;
section "authors" below --&gt;
&lt;legalnotice&gt;
&lt;para&gt;
@ -61,8 +61,8 @@
by the Free Software Foundation with no Invariant Sections, no
Front-Cover Texts, and no Back-Cover Texts. You may obtain a copy
of the &lt;citetitle&gt;GNU Free Documentation License&lt;/citetitle&gt; from
the Free Software Foundation by visiting &lt;ulink type=&quot;http&quot;
url=&quot;http://www.fsf.org&quot;&gt;their Web site&lt;/ulink&gt; or by writing to:
the Free Software Foundation by visiting &lt;ulink type="http"
url="http://www.fsf.org"&gt;their Web site&lt;/ulink&gt; or by writing to:
Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
&lt;/para&gt;
@ -95,12 +95,12 @@
&lt;!-- Template Version: 1.0.1 (do not remove this line) --&gt;
&lt;sect1 id=&quot;APPLET&quot;&gt;
&lt;sect1 id="APPLET"&gt;
&lt;title&gt;APPLET Applet&lt;/title&gt;
&lt;para&gt;
&lt;application&gt;APPLET&lt;/application&gt; applet, shown in &lt;xref
linkend=&quot;APPLETapplet-fig&quot;&gt;, allows you to &amp;hellip;. To add this
linkend="APPLETapplet-fig"&gt;, allows you to &amp;hellip;. To add this
applet to a &lt;interface&gt;Panel&lt;/interface&gt;,
right-click on the &lt;interface&gt;Panel&lt;/interface&gt; and choose
&lt;menuchoice&gt;
@ -112,18 +112,18 @@
&lt;/menuchoice&gt;.
&lt;/para&gt;
&lt;figure id=&quot;APPLETapplet-fig&quot;&gt;
&lt;figure id="APPLETapplet-fig"&gt;
&lt;title&gt;APPLET Applet&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;APPLET Applet&lt;/screeninfo&gt;
&lt;graphic format=&quot;png&quot; fileref=&quot;APPLET_applet&quot;
srccredit=&quot;YOURNAME&quot;&gt;
&lt;graphic format="png" fileref="APPLET_applet"
srccredit="YOURNAME"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
&lt;!-- ============= Usage ================================ --&gt;
&lt;sect2 id=&quot;APPLET-usage&quot;&gt;
&lt;sect2 id="APPLET-usage"&gt;
&lt;title&gt;Usage&lt;/title&gt;
&lt;para&gt;
(Place a short description of how to use the applet here.)
@ -137,7 +137,7 @@
&lt;listitem&gt;
&lt;para&gt;
&lt;guimenuitem&gt;Properties&amp;hellip;&lt;/guimenuitem&gt; &amp;mdash;
opens the &lt;link linkend=&quot;APPLET-prefs&quot;&gt;
opens the &lt;link linkend="APPLET-prefs"&gt;
&lt;guilabel&gt;Properties&lt;/guilabel&gt;&lt;/link&gt; dialog.
&lt;/para&gt;
&lt;/listitem&gt;
@ -164,23 +164,23 @@
&lt;!-- ============= Customization ============================= --&gt;
&lt;sect2 id=&quot;APPLET-prefs&quot;&gt;
&lt;sect2 id="APPLET-prefs"&gt;
&lt;title&gt;Customization&lt;/title&gt;
&lt;para&gt;
You can customize &lt;application&gt;APPLET&lt;/application&gt;
applet by right-clicking on it and choosing
&lt;guimenuitem&gt;Properties&amp;hellip;&lt;/guimenuitem&gt;. This will open the
&lt;interface&gt;Properties&lt;/interface&gt; dialog(shown in &lt;xref
linkend=&quot;APPLET-settings-fig&quot;&gt;), which allows you to
linkend="APPLET-settings-fig"&gt;), which allows you to
change various settings.
&lt;/para&gt;
&lt;figure id=&quot;APPLET-settings-fig&quot;&gt;
&lt;figure id="APPLET-settings-fig"&gt;
&lt;title&gt;Properties dialog&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;Properties dialog&lt;/screeninfo&gt;
&lt;graphic format=&quot;png&quot; fileref=&quot;APPLET_settings&quot;
srccredit=&quot;YOURNAME&quot;&gt;
&lt;graphic format="png" fileref="APPLET_settings"
srccredit="YOURNAME"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
@ -226,7 +226,7 @@
&lt;!-- This section should describe known bugs and limitations of
the program if there are any - please be frank and list all
problems you know of --&gt;
&lt;sect2 id=&quot;bugs&quot;&gt;
&lt;sect2 id="bugs"&gt;
&lt;title&gt;Known Bugs and Limitations&lt;/title&gt;
&lt;para&gt;
This applet has no known bugs.
@ -236,16 +236,16 @@
&lt;!-- ============= Authors ================================ --&gt;
&lt;sect2 id=&quot;authors&quot;&gt;
&lt;sect2 id="authors"&gt;
&lt;title&gt;Authors&lt;/title&gt;
&lt;para&gt;
&lt;application&gt;APPLET&lt;/application&gt; was written by GNOME-HACKER
(&lt;email&gt;hacker@gnome.org&lt;/email&gt;). Please send all comments,
suggestions, and bug
reports to the &lt;ulink url=&quot;http://bugs.gnome.org&quot; type=&quot;http&quot;&gt;GNOME
reports to the &lt;ulink url="http://bugs.gnome.org" type="http"&gt;GNOME
bug tracking database&lt;/ulink&gt;. (Instructions for submitting bug
reports can be found &lt;ulink
url=&quot;http://bugs.gnome.org/Reporting.html&quot; type=&quot;http&quot;&gt;
url="http://bugs.gnome.org/Reporting.html" type="http"&gt;
on-line&lt;/ulink&gt;. You can also use &lt;application&gt;Bug Report
Tool&lt;/application&gt; (&lt;command&gt;bug-buddy&lt;/command&gt;), available in the
&lt;guisubmenu&gt;Utilities&lt;/guisubmenu&gt; submenu of &lt;guimenu&gt;Main
@ -255,12 +255,12 @@
&lt;para&gt;
This manual was written by ME
(&lt;email&gt;MYNAME@MYADDRESS&lt;/email&gt;). Please send all comments and
suggestions regarding this manual to the &lt;ulink type=&quot;http&quot;
url=&quot;http://developer.gnome.org/projects/gdp&quot;&gt;GNOME Documentation
suggestions regarding this manual to the &lt;ulink type="http"
url="http://developer.gnome.org/projects/gdp"&gt;GNOME Documentation
Project&lt;/ulink&gt; by sending an email to
&lt;email&gt;docs@gnome.org&lt;/email&gt;. You can also submit comments online
by using the &lt;ulink type=&quot;http&quot;
url=&quot;http://www.gnome.org/gdp/doctable/&quot;&gt;GNOME Documentation
by using the &lt;ulink type="http"
url="http://www.gnome.org/gdp/doctable/"&gt;GNOME Documentation
Status Table&lt;/ulink&gt;.
&lt;/para&gt;
@ -279,7 +279,7 @@
&lt;!-- ============= Application License ============================= --&gt;
&lt;sect2 id=&quot;license&quot;&gt;
&lt;sect2 id="license"&gt;
&lt;title&gt;License&lt;/title&gt;
&lt;para&gt;
This program is free software; you can redistribute it and/or
@ -299,8 +299,8 @@
included as an appendix to the &lt;citetitle&gt;GNOME Users
Guide&lt;/citetitle&gt;. You may also obtain a copy of the
&lt;citetitle&gt;GNU General Public License&lt;/citetitle&gt; from the Free
Software Foundation by visiting &lt;ulink type=&quot;http&quot;
url=&quot;http://www.fsf.org&quot;&gt;their Web site&lt;/ulink&gt; or by writing to
Software Foundation by visiting &lt;ulink type="http"
url="http://www.fsf.org"&gt;their Web site&lt;/ulink&gt; or by writing to
&lt;address&gt;
Free Software Foundation, Inc.
&lt;street&gt;59 Temple Place&lt;/street&gt; - Suite 330

View File

@ -18,12 +18,12 @@
</p><p>
<pre class="programlisting">
&lt;!DOCTYPE book PUBLIC &quot;-//GNOME//DTD DocBook PNG Variant V1.1//EN&quot;[
&lt;!ENTITY TEMPLATE-APPLET SYSTEM &quot;gnome-applet-template.sgml.part&quot;&gt;
&lt;!DOCTYPE book PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.1//EN"[
&lt;!ENTITY TEMPLATE-APPLET SYSTEM "gnome-applet-template.sgml.part"&gt;
]&gt;
&lt;book id=&quot;gnome-applets&quot;&gt;
&lt;book id="gnome-applets"&gt;
&lt;bookinfo&gt;
&lt;title&gt;GNOME Applets&lt;/title&gt;
@ -72,11 +72,11 @@
&lt;/bookinfo&gt;
&lt;!-- #### Introduction ###### --&gt;
&lt;chapter id=&quot;applets-intro&quot;&gt;
&lt;chapter id="applets-intro"&gt;
&lt;title&gt;Introduction&lt;/title&gt;
&lt;!-- #### Intro | What Are Applets? ###### --&gt;
&lt;sect1 id=&quot;applets-what-are&quot;&gt;
&lt;sect1 id="applets-what-are"&gt;
&lt;title&gt;What Are Applets?&lt;/title&gt;
&lt;para&gt;
Applets are one of the most popular and useful objects you can add
@ -108,17 +108,17 @@
&lt;/para&gt;
&lt;para&gt;
&lt;figure id=&quot;example-applets-fig&quot;&gt;
&lt;figure id="example-applets-fig"&gt;
&lt;title&gt;Example Applets&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;Example Applets&lt;/screeninfo&gt;
&lt;graphic fileref=&quot;example_applets&quot; format=&quot;png&quot;
srccredit=&quot;muet&quot;&gt;
&lt;graphic fileref="example_applets" format="png"
srccredit="muet"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
Several example applets are shown in &lt;xref
linkend=&quot;example-applets-fig&quot;&gt;. From left to right, they are: (1)
linkend="example-applets-fig"&gt;. From left to right, they are: (1)
&lt;application&gt;Mixer Applet&lt;/application&gt;, which allows you to turn
on/off sound and control its volume by clicking on the applet. (2)
&lt;application&gt;Sound Monitor&lt;/application&gt; Applet, which displays
@ -140,8 +140,8 @@
&lt;interface&gt;Panels&lt;/interface&gt; and using them. The following
chapters go through each of the standard GNOME applets describing
them in detail. There are also additional applets which can be
downloaded off the Web. See &lt;ulink type=&quot;http&quot;
url=&quot;http://www.gnome.org/applist/list-martin.phtml&quot;&gt;The GNOME
downloaded off the Web. See &lt;ulink type="http"
url="http://www.gnome.org/applist/list-martin.phtml"&gt;The GNOME
Software Map&lt;/ulink&gt; for lists of additional GNOME applications
and applets.
&lt;/para&gt;
@ -153,10 +153,10 @@
&lt;/sect1&gt;
&lt;!-- #### Intro | Adding, Moving, and Removing Applets ###### --&gt;
&lt;sect1 id=&quot;applet-add-move-replace&quot;&gt;
&lt;sect1 id="applet-add-move-replace"&gt;
&lt;title&gt;Adding, Moving, and Removing Applets&lt;/title&gt;
&lt;sect2 id=&quot;adding-applets&quot;&gt;
&lt;sect2 id="adding-applets"&gt;
&lt;title&gt;Adding Applets to a Panel&lt;/title&gt;
&lt;para&gt;
To add an applet to a &lt;interface&gt;Panel&lt;/interface&gt;, right-click
@ -169,7 +169,7 @@
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;moving-applets&quot;&gt;
&lt;sect2 id="moving-applets"&gt;
&lt;title&gt;Moving Applets In or Between Panels&lt;/title&gt;
&lt;para&gt;
It is easy to move applets in a &lt;interface&gt;Panel&lt;/interface&gt; or
@ -188,12 +188,12 @@
other objects, the behavior depends on the global preferences
you have set for your &lt;interface&gt;Panels&lt;/interface&gt; in the
&lt;application&gt;GNOME Control Center&lt;/application&gt;: the applet you are
moving can switch places with other objects, &quot;push&quot; all objects
it meets, or &quot;jump&quot; over all other objects without disturbing
moving can switch places with other objects, "push" all objects
it meets, or "jump" over all other objects without disturbing
them. You can also override the default behavior by holding
&lt;keycap&gt;Shift&lt;/keycap&gt; button (for &quot;push&quot; mode),
&lt;keycap&gt;Ctrl&lt;/keycap&gt; (for &quot;switched&quot; mode), or
&lt;keycap&gt;Alt&lt;/keycap&gt; (for &quot;free&quot; mode, i.e. jumping other other
&lt;keycap&gt;Shift&lt;/keycap&gt; button (for "push" mode),
&lt;keycap&gt;Ctrl&lt;/keycap&gt; (for "switched" mode), or
&lt;keycap&gt;Alt&lt;/keycap&gt; (for "free" mode, i.e. jumping other other
objects without disturbing them) button while dragging.
&lt;/para&gt;
&lt;para&gt;
@ -208,7 +208,7 @@
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;removing-applets&quot;&gt;
&lt;sect2 id="removing-applets"&gt;
&lt;title&gt;Removing Applets from a Panel&lt;/title&gt;
&lt;para&gt;
To remove an applet from a &lt;interface&gt;Panel&lt;/interface&gt;,
@ -220,7 +220,7 @@
&lt;!-- #### Intro | The Right-Click Pop-Up Menu ###### --&gt;
&lt;sect1 id=&quot;right-click-pop-up-menu&quot;&gt;
&lt;sect1 id="right-click-pop-up-menu"&gt;
&lt;title&gt;The Right-Click Pop-Up Menu&lt;/title&gt;
&lt;para&gt;
Clicking the right mouse button on any applet brings up
@ -229,7 +229,7 @@
often has additional items which vary depending on the particular
applet.
&lt;/para&gt;
&lt;sect2 id=&quot;standard-right-click-items&quot;&gt;
&lt;sect2 id="standard-right-click-items"&gt;
&lt;title&gt;Standard Pop-Up Items&lt;/title&gt;
&lt;para&gt;
All applets should have the following items in their right-click
@ -297,7 +297,7 @@
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;applet-properties-dialog&quot;&gt;
&lt;sect2 id="applet-properties-dialog"&gt;
&lt;title&gt;The Applet Properties Dialog&lt;/title&gt;
&lt;para&gt;
Many applets have customizable properties. These applets will
@ -305,12 +305,12 @@
right-click &lt;guimenu&gt;pop-up menu&lt;/guimenu&gt; which brings up the
&lt;interface&gt;Properties&lt;/interface&gt; dialog where you can alter the
appearance or behaviour of the applet.
&lt;figure id=&quot;example-props-dialog-fig&quot;&gt;
&lt;figure id="example-props-dialog-fig"&gt;
&lt;title&gt;An Example Applet Properties Dialog&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;An Example Applets Properties Dialog&lt;/screeninfo&gt;
&lt;graphic fileref=&quot;applet_props_dialog&quot; format=&quot;png&quot;
srccredit=&quot;muet&quot;&gt;
&lt;graphic fileref="applet_props_dialog" format="png"
srccredit="muet"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
@ -357,7 +357,7 @@
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;common-right-click-items&quot;&gt;
&lt;sect2 id="common-right-click-items"&gt;
&lt;title&gt;Other Common Pop-Up Items&lt;/title&gt;
&lt;para&gt;
Many applets also have one or more of the following items in their
@ -398,13 +398,13 @@
&lt;/sect2&gt;
&lt;/sect1&gt;
&lt;sect1 id=&quot;feedback&quot;&gt;
&lt;sect1 id="feedback"&gt;
&lt;title&gt;Feedback&lt;/title&gt;
&lt;sect2 id=&quot;reporting-bugs&quot;&gt;
&lt;sect2 id="reporting-bugs"&gt;
&lt;title&gt;Reporting Applet Bugs&lt;/title&gt;
&lt;para&gt;
GNOME users are encouraged to report bugs to &lt;ulink type=&quot;http&quot;
url=&quot;http://bugs.gnome.org&quot;&gt;The GNOME Bug Tracking
GNOME users are encouraged to report bugs to &lt;ulink type="http"
url="http://bugs.gnome.org"&gt;The GNOME Bug Tracking
System&lt;/ulink&gt;. The easiest way to submit bugs is to use the
&lt;application&gt;Bug Report Tool&lt;/application&gt; program by selecting
&lt;menuchoice&gt;
@ -416,7 +416,7 @@
reproduce the the scenario.
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;documentation-feedback&quot;&gt;
&lt;sect2 id="documentation-feedback"&gt;
&lt;title&gt;Providing Feedback&lt;/title&gt;
&lt;para&gt;
GNOME users are welcome to provide suggestions for how
@ -425,27 +425,27 @@
&lt;application&gt;Bug Report Tool&lt;/application&gt; discussed above.
Suggestions for documentation changes can be emailed directly to
the documentation author (whose email should be included in the
&quot;Authors&quot; section of the document) or by sending an email to
"Authors" section of the document) or by sending an email to
&lt;email&gt;docs@gnome.org&lt;/email&gt;.
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;joining-gnome&quot;&gt;
&lt;sect2 id="joining-gnome"&gt;
&lt;title&gt;Joining GNOME&lt;/title&gt;
&lt;para&gt;
GNOME is a community project, created by hundreds of programmers,
documentation writers, icon design artists, web masters, and
other people, most of whom work on a volunteer basis. New GNOME
contributors are always welcome. To join the GNOME team, visit
these web sites: developers &amp;mdash; &lt;ulink type=&quot;http&quot;
url=&quot;http://developer.gnome.org&quot;&gt;The GNOME Development
Site&lt;/ulink&gt;, documentation writers &amp;mdash; &lt;ulink type=&quot;http&quot;
url=&quot;http://developer.gnome.org/projects/gdp&quot;&gt;The GNOME Documentation
Project&lt;/ulink&gt;, icon design artists &amp;mdash; &lt;ulink type=&quot;http&quot;
url=&quot;http://gnome-icons.sourceforge.net/&quot;&gt;Gnome Icon Web&lt;/ulink&gt;,
general &amp;mdash; &lt;ulink type=&quot;http&quot;
url=&quot;http://developer.gnome.org/helping/&quot;&gt;Helping GNOME&lt;/ulink&gt;,
or just join the gnome-list email list (see &lt;ulink type=&quot;http&quot;
url=&quot;http://www.gnome.org/resources/mailing-lists.html&quot;&gt;GNOME Mailing
these web sites: developers &amp;mdash; &lt;ulink type="http"
url="http://developer.gnome.org"&gt;The GNOME Development
Site&lt;/ulink&gt;, documentation writers &amp;mdash; &lt;ulink type="http"
url="http://developer.gnome.org/projects/gdp"&gt;The GNOME Documentation
Project&lt;/ulink&gt;, icon design artists &amp;mdash; &lt;ulink type="http"
url="http://gnome-icons.sourceforge.net/"&gt;Gnome Icon Web&lt;/ulink&gt;,
general &amp;mdash; &lt;ulink type="http"
url="http://developer.gnome.org/helping/"&gt;Helping GNOME&lt;/ulink&gt;,
or just join the gnome-list email list (see &lt;ulink type="http"
url="http://www.gnome.org/resources/mailing-lists.html"&gt;GNOME Mailing
Lists&lt;/ulink&gt;) to discuss what you are interested in doing.
&lt;/para&gt;
&lt;/sect2&gt;
@ -453,7 +453,7 @@
&lt;/chapter&gt;
&lt;!-- ############### Template Applets ##################### --&gt;
&lt;chapter id=&quot;template-applets&quot;&gt;
&lt;chapter id="template-applets"&gt;
&lt;title&gt;Template Applets&lt;/title&gt;
&amp;TEMPLATE-APPLET
@ -505,27 +505,27 @@
&lt;!-- stated in a translation approved by the Foundation. --&gt;
&lt;!-- ############### GNOMEAPPLET ############### --&gt;
&lt;sect1 id=&quot;GNOMEAPPLET&quot;&gt;
&lt;sect1 id="GNOMEAPPLET"&gt;
&lt;title&gt;GNOMEAPPLET Applet&lt;/title&gt;
&lt;para&gt;
&lt;application&gt;GNOMEAPPLET&lt;/application&gt; applet, shown in &lt;xref
linkend=&quot;GNOMEAPPLET-fig&quot;&gt;, does this and that. To learn how to
linkend="GNOMEAPPLET-fig"&gt;, does this and that. To learn how to
add this applet to a &lt;interface&gt;Panel&lt;/interface&gt;, see &lt;xref
linkend=&quot;adding-applets&quot;&gt;.
linkend="adding-applets"&gt;.
&lt;/para&gt;
&lt;figure id=&quot;GNOMEAPPLET-fig&quot;&gt;
&lt;figure id="GNOMEAPPLET-fig"&gt;
&lt;title&gt;GNOMEAPPLET&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;GNOMEAPPLET&lt;/screeninfo&gt;
&lt;graphic format=&quot;png&quot; fileref=&quot;GNOMEAPPLET-fig&quot; srccredit=&quot;ME&quot;&gt;
&lt;graphic format="png" fileref="GNOMEAPPLET-fig" srccredit="ME"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
&lt;sect2 id=&quot;GNOMEAPPLET-usage&quot;&gt;
&lt;sect2 id="GNOMEAPPLET-usage"&gt;
&lt;title&gt;Usage&lt;/title&gt;
&lt;para&gt;
This applet does nothing. To use it, just
@ -533,18 +533,18 @@
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;GNOMEAPPLET-right-click&quot;&gt;
&lt;sect2 id="GNOMEAPPLET-right-click"&gt;
&lt;title&gt;Right-Click Pop-Up Menu Items&lt;/title&gt;
&lt;para&gt;
In addition to the standard menu items (see &lt;xref
linkend=&quot;standard-right-click-items&quot;&gt;), the right-click pop-up menu has
linkend="standard-right-click-items"&gt;), the right-click pop-up menu has
the following items:
&lt;itemizedlist&gt;
&lt;listitem&gt;
&lt;para&gt;
&lt;guimenuitem&gt;Properties...&lt;/guimenuitem&gt; &amp;mdash; This menu
item opens the &lt;interface&gt;Properties&lt;/interface&gt; dialog (see
&lt;xref linkend=&quot;GNOMEAPPLET-properties&quot;&gt;) which allows you to
&lt;xref linkend="GNOMEAPPLET-properties"&gt;) which allows you to
customize the appearance and behavior of this applet.
&lt;/para&gt;
&lt;/listitem&gt;
@ -552,27 +552,27 @@
&lt;para&gt;
&lt;guimenuitem&gt;Run Hello World...&lt;/guimenuitem&gt; &amp;mdash; This
menu item starts the program &lt;application&gt;Hello
World&lt;/application&gt;, used to say &quot;hello&quot; to the world.
World&lt;/application&gt;, used to say "hello" to the world.
&lt;/para&gt;
&lt;/listitem&gt;
&lt;/itemizedlist&gt;
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;GNOMEAPPLET-properties&quot;&gt;
&lt;sect2 id="GNOMEAPPLET-properties"&gt;
&lt;title&gt;Properties&lt;/title&gt;
&lt;para&gt;
You can configure &lt;application&gt;GNOMEAPPLET&lt;/application&gt; applet by
right-clicking on the applet and choosing the
&lt;guimenuitem&gt;Properties...&lt;/guimenuitem&gt; menu item. This will open the
&lt;interface&gt;Properties&lt;/interface&gt; dialog, shown in &lt;xref
linkend=&quot;GNOMEAPPLET-properties-fig&quot;&gt;.
linkend="GNOMEAPPLET-properties-fig"&gt;.
&lt;/para&gt;
&lt;figure id=&quot;GNOMEAPPLET-properties-fig&quot;&gt;
&lt;figure id="GNOMEAPPLET-properties-fig"&gt;
&lt;title&gt;Properties Dialog&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;Properties Dialog&lt;/screeninfo&gt;
&lt;graphic format=&quot;png&quot; fileref=&quot;GNOMEAPPLET-properties&quot; srccredit=&quot;ME&quot;&gt;
&lt;graphic format="png" fileref="GNOMEAPPLET-properties" srccredit="ME"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
@ -588,11 +588,11 @@
dialog, including descriptions of the &lt;guibutton&gt;OK&lt;/guibutton&gt;,
&lt;guibutton&gt;Apply&lt;/guibutton&gt;, &lt;guibutton&gt;Cancel&lt;/guibutton&gt;, and
&lt;guibutton&gt;Help&lt;/guibutton&gt; buttons, see &lt;xref
linkend=&quot;applet-properties-dialog&quot;&gt;.
linkend="applet-properties-dialog"&gt;.
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;GNOMEAPPLET-bugs&quot;&gt;
&lt;sect2 id="GNOMEAPPLET-bugs"&gt;
&lt;title&gt; Known Bugs and Limitations&lt;/title&gt;
&lt;para&gt;
There are no known bugs in the
@ -600,7 +600,7 @@
&lt;/para&gt;
&lt;/sect2&gt;
&lt;sect2 id=&quot;GNOMEAPPLET-authors&quot;&gt;
&lt;sect2 id="GNOMEAPPLET-authors"&gt;
&lt;title&gt;Authors&lt;/title&gt;
&lt;para&gt;
This applet was writen by HACKER-NAME
@ -608,7 +608,7 @@
which you are reading now was written by
YOUR-NAME &lt;email&gt;YOUR-EMAIL&lt;/email&gt;. For information on submitting
bug reports and suggestions for improvements, see &lt;xref
linkend=&quot;feedback&quot;&gt;.
linkend="feedback"&gt;.
&lt;/para&gt;
&lt;/sect2&gt;

View File

@ -83,14 +83,14 @@
irc.gnome.org is another option for contacting GDP members.
</p></div></div><div class="sect2"><a name="notation"></a><div class="titlepage"><div><h3 class="title"><a name="notation"></a>Notation and Conventions</h3></div></div><p>
This Handbook uses the following notation:
<div class="informaltable" id="id2807857"><a name="id2807857"></a><table border="0"><colgroup><col><col></colgroup><tbody><tr><td><tt>/usr/bin</tt></td><td>
<div class="informaltable" id="id2814391"><a name="id2814391"></a><table border="0"><colgroup><col><col></colgroup><tbody><tr><td><tt>/usr/bin</tt></td><td>
Directory
</td></tr><tr><td><tt>foo.sgml</tt></td><td>
Filename
</td></tr><tr><td><b>command</b></td><td>
Command or text that would be typed.
</td></tr><tr><td><b><i><tt>replaceable</tt></i></b></td><td>
&quot;Variable&quot; text that can be replaced.
"Variable" text that can be replaced.
</td></tr><tr><td><tt>Program or Doc Code</tt></td><td>Program or document code</td></tr></tbody></table></div>
</p></div><div class="sect2"><a name="about"></a><div class="titlepage"><div><h3 class="title"><a name="about"></a>About This Handbook</h3></div></div><p>
This Handbook is a guide for both writing documentation for

View File

@ -1,7 +1,7 @@
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Getting Started Writing GNOME Documentation</title><meta name="generator" content="DocBook XSL Stylesheets V1.40"><link rel="home" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="up" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="previous" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="next" href="indexs03.html" title="The GNOME Documentation System"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Getting Started Writing GNOME Documentation</th></tr><tr><td width="20%" align="left"><a href="index.html">Prev</a><3E></td><th width="60%" align="center"><3E></th><td width="20%" align="right"><3E><a href="indexs03.html">Next</a></td></tr></table><hr></div><div class="sect1"><a name="gettingstarted"></a><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="gettingstarted"></a>Getting Started Writing GNOME Documentation</h2></div></div><div class="sect2"><a name="selecting"></a><div class="titlepage"><div><h3 class="title"><a name="selecting"></a>Selecting A Document</h3></div></div><div class="sect3"><a name="know"></a><div class="titlepage"><div><h4 class="title"><a name="know"></a>Document Something You Know</h4></div></div><p>
The most frequently asked question of new contributors who
join the GDP is &quot;which document should I start
with?&quot;. Because most people involved are volunteers, we do
join the GDP is "which document should I start
with?". Because most people involved are volunteers, we do
not <i>assign</i> projects and applications to
write documents for. The first step is all yours - you must
decide what about GNOME interests you most and find out if
@ -41,7 +41,7 @@
help. The <i>DocTable</i> also allows
people to make announcements and suggestions and to discuss
issues in the comments section.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2801402"></a>Note</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2810555"></a>Note</h3><p>
Note that the information in the
<i>DocTable</i> may not always be up-to-date
or accurate. When you assign yourself to documenting an
@ -53,7 +53,7 @@
this for documentation, not least of which is the single
source nature of SGML. To contribute to the GDP you should
learn to use DocBook.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2801489"></a>NOTE</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2810638"></a>NOTE</h3><p>
To get started writing for the GDP you do not need to rush
out and learn DocBook - if you feel it is too much to handle
for now, you can submit plain ASCII text to the <a href="http://mail.gnome.org/mailman/listinfo/gnome-doc-list/" target="_top">
@ -99,25 +99,25 @@
your output document appearance subtly vary between the two
DTD's. To install the GDP custom DTD with PNG image support
by hand:
</p><div class="itemizedlist"><ul><li style="list-style-type: opencircle"><p><a name="id2801874"></a>
</p><div class="itemizedlist"><ul><li style="list-style-type: opencircle"><p><a name="id2811052"></a>
Download <a href="http://www.labs.redhat.com/png/png-support.html" target="_top">the
GDP DocBook DTD for PNG support</a> and install it
where you keep your DTD's. (On Red Hat use <tt>/usr/lib/sgml/</tt>.) Note that
the 3.0 DTD is missing support for the
<tt>&lt;legalnotice&gt;</tt> tag, so it is
recommended that you use version 3.1
</p></li><li style="list-style-type: disc"><p><a name="id2802204"></a>
</p></li><li style="list-style-type: disc"><p><a name="id2811114"></a>
Add the new DTD to your SGML CATALOG file. The location
of your SGML CATALOG file may vary depending upon your
distribution. (On Red Hat it is usually in
/usr/lib/sgml/CATALOG.) Add the following line to this
file:
<pre class="programlisting">
PUBLIC &quot;-//GNOME//DTD DocBook PNG Variant V1.0//EN&quot; &quot;png-support-3.0.dtd&quot;
PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.0//EN" "png-support-3.0.dtd"
</pre>
If you are using the 3.1 DTD, use:
<pre class="programlisting">
PUBLIC &quot;-//GNOME//DTD DocBook PNG Variant V1.1//EN&quot; &quot;png-support-3.1.dtd&quot;
PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.1//EN" "png-support-3.1.dtd"
</pre>
</p></li></ul></div><p>
Alternately, you can download and install the
@ -130,14 +130,14 @@ PUBLIC &quot;-//GNOME//DTD DocBook PNG Variant V1.1//EN&quot; &quot;png-support-
</p><p>
Articles:
<pre class="programlisting">
&lt;!DOCTYPE Article PUBLIC &quot;-//GNOME//DTD DocBook PNG Variant
V1.1//EN&quot;[]&gt;
&lt;!DOCTYPE Article PUBLIC "-//GNOME//DTD DocBook PNG Variant
V1.1//EN"[]&gt;
</pre>
</p><p>
Books:
<pre class="programlisting">
&lt;!DOCTYPE Book PUBLIC &quot;-//GNOME//DTD DocBook PNG Variant
V1.1//EN&quot;[]&gt;
&lt;!DOCTYPE Book PUBLIC "-//GNOME//DTD DocBook PNG Variant
V1.1//EN"[]&gt;
</pre>
</p></div><div class="sect3"><a name="editors"></a><div class="titlepage"><div><h4 class="title"><a name="editors"></a>Editors</h4></div></div><p>
There are many editors on Linux and UNIX systems available
@ -184,7 +184,7 @@ V1.1//EN&quot;[]&gt;
the command <tt>$</tt><b>db2ps
mydocument.sgml</b>, after which you can print out or
view the resulting .ps file.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2922151"></a>NOTE</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2811592"></a>NOTE</h3><p>
The html files you get will not look quite the same as the
documentation distributed with GNOME unless you have the
custom stylesheets installed on your machine. DocBook
@ -210,7 +210,7 @@ V1.1//EN&quot;[]&gt;
&lt;title&gt;My Image&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;Sample GNOME Display&lt;/screeninfo&gt;
&lt;graphic format=&quot;png&quot; fileref=&quot;myfile&quot; srccredit=&quot;me&quot;&gt;
&lt;graphic format="png" fileref="myfile" srccredit="me"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
@ -235,24 +235,24 @@ V1.1//EN&quot;[]&gt;
There are many resources available to help you learn DocBook.
The following resources on the web are useful for learning
DocBook:
</p><div class="itemizedlist"><ul><li style="list-style-type: disc"><p><a name="id2922441"></a>
</p><div class="itemizedlist"><ul><li style="list-style-type: disc"><p><a name="id2933577"></a>
<a href="http://www.docbook.org" target="_top">http://www.docbook.org</a> - Norman
Walsh's <i>DocBook: The Definitive
Guide</i>. Online O'Reilly book on using
DocBook. Contains an excellent element reference. May be
too formal for a beginner.
</p></li><li style="list-style-type: disc"><p><a name="id2922486"></a>
</p></li><li style="list-style-type: disc"><p><a name="id2933624"></a>
<a href="http://www.oswg.org/oswg-nightly/oswg/en_US.ISO_8859-1/articles/DocBook-Intro/docbook-intro/index.html" target="_top">A Practical Introduction to DocBook</a>
- The Open Source Writers Group's introduction to using
DocBook. This is an excellent HOW-TO type article on
getting started.
</p></li><li style="list-style-type: disc"><p><a name="id2922526"></a>
</p></li><li style="list-style-type: disc"><p><a name="id2933666"></a>
<a href="http://nis-www.lanl.gov/~rosalia/mydocs/docbook-intro/docbook-intro.html" target="_top">Getting Going with DocBook: Notes for
Hackers</a> - Mark Galassi's introduction to DocBook
for hackers. This has to be one of the first
introductions to DocBook ever - still as good as it ever
was.
</p></li><li style="list-style-type: disc"><p><a name="id2922566"></a>
</p></li><li style="list-style-type: disc"><p><a name="id2933704"></a>
<a href="http://www.freebsd.org/tutorials/docproj-primer/" target="_top">
FreeBSD Documentation Project Primer for New
Contributors</a> - FreeBSD documentation project
@ -265,7 +265,7 @@ V1.1//EN&quot;[]&gt;
</p><p>
The following sections of this document are designed to help
documentation authors write correct and consistent DocBook:
</p><div class="itemizedlist"><ul><li style="list-style-type: disc"><p><a name="id2922642"></a>
</p><div class="itemizedlist"><ul><li style="list-style-type: disc"><p><a name="id2933779"></a>
<a href="indexs04.html" title="DocBook Basics ">the section called &#8220;DocBook Basics &#8221;</a> - Descriptions of
commonly used DocBook tags.
</p></li></ul></div><p>
@ -333,11 +333,11 @@ V1.1//EN&quot;[]&gt;
</p></div><div class="sect3"><a name="screenshotfiles"></a><div class="titlepage"><div><h4 class="title"><a name="screenshotfiles"></a>Screenshot Files</h4></div></div><p>
Screenshots should be kept in the main documentation
directory with your SGML file for applets, or should be
kept in a directory called &quot;figs&quot; for application and other
kept in a directory called "figs" for application and other
documentation. After you use <b>db2html</b> to
convert your SGML file to HTML (see <a href="indexs02.html#make-output" title="Creating Something Useful with your Docs">the section called &#8220;Creating Something Useful with your Docs&#8221;</a>), you will need to copy your
screenshots (either the individual PNG files for applet
documentation, or the whole &quot;figs&quot; directory for other
documentation, or the whole "figs" directory for other
documentation) into the newly created HTML directory. Note
that every time you use <b>db2html</b> the HTML
directory is erased and rewritten, so do not store your only
@ -380,7 +380,7 @@ V1.1//EN&quot;[]&gt;
CVSROOT=':pserver:anonymous@anoncvs.gnome.org:/cvs/gnome'</b>
and then login with <b>cvs login</b>(there is no
password, just hit return). As an example, we will use the
&quot;gnome-docu/gdp&quot; module which contains this and several
"gnome-docu/gdp" module which contains this and several
other documents. To check these documents out for the first
time, type <b>cvs -z3 checkout
gnome-docu/gdp</b>. After you have this document

View File

@ -66,7 +66,7 @@
to query any part (button, widget, etc.) of an application
window. This is done by either entering a CS Help mode by
clicking on an icon or by right clicking on the application
part and selecting &quot;What's This&quot; or whatever is decided on
part and selecting "What's This" or whatever is decided on
at the time. Context sensitive help is described in more
detail in <a href="indexs10.html" title="Writing Context Sensitive Help (coming in GNOME-2.0)">the section called &#8220;Writing Context Sensitive Help (coming in GNOME-2.0)&#8221;</a>
below.

View File

@ -46,8 +46,8 @@
</p><p>
Using 'content' as the elements to define the text of a document also
allows for search engines to make use of the actual elements to make a
&quot;smarter search&quot;. For example, if you are searching for all documents
written by the author &quot;Susie&quot; your search engine could be made smart
"smarter search". For example, if you are searching for all documents
written by the author "Susie" your search engine could be made smart
enough to only search &lt;author&gt; elements, making for a faster and more
accurate search.
</p><p>
@ -71,7 +71,7 @@
ready for this transistion, it is <i>strongly
advised</i> that the documentation writers conform to XML
syntax rules. Here are most important differences:
</p><div class="variablelist"><dl><dt><a name="id2925078"></a><span class="term"> <i>Minimization</i></span></dt><dd><p><a name="id2925097"></a>
</p><div class="variablelist"><dl><dt><a name="id2936091"></a><span class="term"> <i>Minimization</i></span></dt><dd><p><a name="id2936110"></a>
It is possible with some implementations of SGML to use
minimizations to close elements in a document by using
&lt;/&gt;, for example:
@ -82,17 +82,17 @@
if you are using Emacs with psgml
mode, you can also use menu command
Modify-&gt;Normalize.
</p></dd><dt><a name="id2925210"></a><span class="term"> <i>Self-closing tags</i></span></dt><dd><p><a name="id2925229"></a>
</p></dd><dt><a name="id2936225"></a><span class="term"> <i>Self-closing tags</i></span></dt><dd><p><a name="id2936244"></a>
Also, in SGML some tags are allowed not to have closing
tags. For example, it is legal for
<tt>&lt;xref&gt;</tt> not to have a closing tag:
<tt><tt>&lt;xref
linkend=&quot;someid&quot;&gt;</tt></tt>. In
linkend="someid"&gt;</tt></tt>. In
XML, it is illegal; instead, you should use
<tt><tt>&lt;xref
linkend=&quot;someid&quot;/&gt;</tt></tt> (note the
linkend="someid"/&gt;</tt></tt> (note the
slash!).
</p></dd><dt><a name="id2925293"></a><span class="term"> <i>Case sensitive tags</i></span></dt><dd><p><a name="id2925311"></a>
</p></dd><dt><a name="id2936311"></a><span class="term"> <i>Case sensitive tags</i></span></dt><dd><p><a name="id2936327"></a>
In XML, unlike SGML, tags are case-senstive
<tt>&lt;title&gt;</tt> and
<tt>&lt;TITLE&gt;</tt> are different tags!
@ -145,11 +145,11 @@
<pre class="programlisting">
&lt;figure id=&quot;shot1&quot;&gt;
&lt;figure id="shot1"&gt;
&lt;title&gt;Screenshot&lt;/title&gt;
&lt;screenshot&gt;
&lt;screeninfo&gt;Screenshot of a program&lt;/screeninfo&gt;
&lt;graphic format=&quot;PNG&quot; fileref=&quot;figures/example_screenshot&quot; srccredit=&quot;ME&quot;&gt;
&lt;graphic format="PNG" fileref="figures/example_screenshot" srccredit="ME"&gt;
&lt;/graphic&gt;
&lt;/screenshot&gt;
&lt;/figure&gt;
@ -158,7 +158,7 @@
actual file name (without extension). The result will look like this:
<div class="figure"><p><a name="shot1"></a><b>Figure 1. Screenshot</b></p><div class="screenshot"><p><img src="figures/example_screenshot"></p></div></div>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2925829"></a>NOTE</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2936851"></a>NOTE</h3><p>
Notice in this example that the screenshot file name does
not include the file type extension -- to find out
why, please read <a href="indexs02.html#jadeimages" title="Images in DocBook Tools">the section called &#8220;Images in DocBook Tools&#8221;</a>.
@ -206,7 +206,7 @@ make: *** No rule to make target `love'. Stop.
Note the use of tags <tt>&lt;prompt&gt;</tt> and
<tt>&lt;userinput&gt;</tt> for marking system prompt
and commands entered by user.
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2926052"></a>NOTE</h3><p>
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2937067"></a>NOTE</h3><p>
Note that both <tt>&lt;programlisting&gt;</tt>
and <tt>&lt;screen&gt;</tt> preserve linebreaks,
but interpret SGML tags (unlike LaTeX
@ -219,7 +219,7 @@ make: *** No rule to make target `love'. Stop.
<tt>&lt;itemizedlist&gt;</tt>,
<tt>&lt;orderedlist&gt;</tt>, and
<tt>&lt;variablelist&gt;</tt>.
</p><div class="variablelist"><dl><dt><a name="id2926168"></a><span class="term"> <tt>&lt;itemizedlist&gt;</tt></span></dt><dd><p><a name="id2926188"></a>
</p><div class="variablelist"><dl><dt><a name="id2937185"></a><span class="term"> <tt>&lt;itemizedlist&gt;</tt></span></dt><dd><p><a name="id2937205"></a>
This is the simplest unnumbered list, parallel to
<tt>&lt;ul&gt;</tt> in HTML. Here is an example:
<pre class="programlisting">
@ -234,7 +234,7 @@ make: *** No rule to make target `love'. Stop.
&lt;listitem&gt;
&lt;para&gt;
&lt;guilabel&gt;Show hidden files&lt;/guilabel&gt; &amp;mdash; This will
show all &quot;dot files&quot; or files that begin with a dot. This
show all "dot files" or files that begin with a dot. This
files typically include configuration files and directories.
&lt;/para&gt;
&lt;/listitem&gt;
@ -250,16 +250,16 @@ make: *** No rule to make target `love'. Stop.
</pre>
and output:
</p><div class="itemizedlist"><ul><li><p><a name="id2926231"></a>
</p><div class="itemizedlist"><ul><li><p><a name="id2937244"></a>
Show backup files --
This will show any backup file that might be on
your system.
</p></li><li><p><a name="id2926278"></a>
</p></li><li><p><a name="id2937304"></a>
Show hidden files --
This will show all &quot;dot files&quot; or files that
This will show all "dot files" or files that
begin with a dot. This files typically include
configuration files and directories.
</p></li><li><p><a name="id2926310"></a>
</p></li><li><p><a name="id2937335"></a>
Mix files and directories
-- This option will display files and
directories in the order you sort them instead
@ -277,20 +277,20 @@ make: *** No rule to make target `love'. Stop.
or -- if none of
this applies -- use
<a href="indexs04.html#gui" title="GUI elements"><tt>&lt;emphasis&gt;</tt></a>.
</p></dd><dt><a name="id2926483"></a><span class="term"> <tt>&lt;orderedlist&gt;</tt></span></dt><dd><p><a name="id2926502"></a>
</p></dd><dt><a name="id2937507"></a><span class="term"> <tt>&lt;orderedlist&gt;</tt></span></dt><dd><p><a name="id2937525"></a>
This list is completely analogous to
<tt>&lt;itemizedlist&gt;</tt> and has the same
syntax, but it produces numbered list. By default,
this list uses Arabic numerals for numbering entries;
you can override this using <tt>numeration</tt>,
for example <tt>&lt;orderedlist
numeration=&quot;lowerroman&quot;&gt;</tt>. Possible values of
numeration="lowerroman"&gt;</tt>. Possible values of
these attribute are <tt>arabic</tt>,
<tt>upperalpha</tt>,
<tt>loweralpha</tt>,
<tt>upperroman</tt>,
<tt>lowerroman</tt>.
</p></dd><dt><a name="id2926582"></a><span class="term"> <tt>&lt;variablelist&gt;</tt></span></dt><dd><p><a name="id2926600"></a> This list is used when each entry is
</p></dd><dt><a name="id2937607"></a><span class="term"> <tt>&lt;variablelist&gt;</tt></span></dt><dd><p><a name="id2937625"></a> This list is used when each entry is
rather long, so it should be formatted as a block of text
with some subtitle, like a small subsection. The
<tt>&lt;variablelist&gt;</tt> is more complicated
@ -331,25 +331,25 @@ make: *** No rule to make target `love'. Stop.
are smart enough to change the numeration (for
<tt>&lt;orderedlist&gt;</tt>) or marks of each entry
(in <tt>&lt;itemizedlist&gt;</tt>) for sub-lists
</p></div></div><div class="sect2"><a name="inline"></a><div class="titlepage"><div><h3 class="title"><a name="inline"></a>Inline Elements</h3></div></div><div class="sect3"><a name="gui"></a><div class="titlepage"><div><h4 class="title"><a name="gui"></a>GUI elements</h4></div></div><div class="itemizedlist"><ul><li><p><a name="id2926761"></a>
</p></div></div><div class="sect2"><a name="inline"></a><div class="titlepage"><div><h3 class="title"><a name="inline"></a>Inline Elements</h3></div></div><div class="sect3"><a name="gui"></a><div class="titlepage"><div><h4 class="title"><a name="gui"></a>GUI elements</h4></div></div><div class="itemizedlist"><ul><li><p><a name="id2937796"></a>
<tt>&lt;guibutton&gt;</tt> -- used for
buttons, including checkbuttons and radio buttons
</p></li><li><p><a name="id2926786"></a>
</p></li><li><p><a name="id2937822"></a>
<tt>&lt;guimenu&gt;</tt>,
<tt>&lt;guisubmenu&gt;</tt> --used for
top-level menus and submenus
respectively, for example <tt>
&lt;guisubmenu&gt;Utilities&lt;/guisubmenu&gt; submenu of the
&lt;guimenu&gt;Main Menu&lt;/guimenu&gt;</tt>
</p></li><li><p><a name="id2926837"></a>
</p></li><li><p><a name="id2937872"></a>
<tt>&lt;guimenuitem&gt;</tt>--an entry in a
menu
</p></li><li><p><a name="id2926860"></a>
</p></li><li><p><a name="id2937896"></a>
<tt>&lt;guiicon&gt;</tt>--an icon
</p></li><li><p><a name="id2926885"></a>
</p></li><li><p><a name="id2937921"></a>
<tt>&lt;guilabel&gt;</tt>--for items which have
labels, like tabs, or bounding boxes.
</p></li><li><p><a name="id2926910"></a>
</p></li><li><p><a name="id2937946"></a>
<tt>&lt;interface&gt;</tt>-- for most everything
else... a window, a dialog box, the Panel, etc.
</p></li></ul></div><p>
@ -371,8 +371,8 @@ make: *** No rule to make target `love'. Stop.
to (section, figure, etc.), while the second just creates a
link (in HTML output). Here is an example:
<pre class="programlisting">
An example of a &lt;link linkend=&quot;extip&quot;&gt;tip&lt;/link&gt; was given in
&lt;xref linkend=&quot;notes&quot; /&gt;.
An example of a &lt;link linkend="extip"&gt;tip&lt;/link&gt; was given in
&lt;xref linkend="notes" /&gt;.
</pre>
which produces: An example of a <a href="indexs04.html#extip">tip</a> was given in <a href="indexs04.html#notes" title="Notes, Warnings, And Tips">the section called &#8220;Notes, Warnings, And Tips&#8221;</a>.
</p><p>
@ -383,8 +383,8 @@ An example of a &lt;link linkend=&quot;extip&quot;&gt;tip&lt;/link&gt; was given
Web page or a local file, use <tt>&lt;ulink&gt;</tt>
tag, for example:
<pre class="programlisting">
To find more about GNOME, please visit &lt;ulink type=&quot;http&quot;
url=&quot;http://www.gnome.org&quot;&gt;GNOME Web page&lt;/ulink&gt;
To find more about GNOME, please visit &lt;ulink type="http"
url="http://www.gnome.org"&gt;GNOME Web page&lt;/ulink&gt;
</pre>
which produces: To find more about GNOME, please visit
<a href="http://www.gnome.org" target="_top">The GNOME Web
@ -397,35 +397,35 @@ url=&quot;http://www.gnome.org&quot;&gt;GNOME Web page&lt;/ulink&gt;
computer-related things</h4></div></div><p>
Here are some tags used to describe operating system-related
things:
</p><div class="itemizedlist"><ul><li><p><a name="id2927306"></a> <tt>&lt;filename&gt;</tt> -- used
</p><div class="itemizedlist"><ul><li><p><a name="id2938334"></a> <tt>&lt;filename&gt;</tt> -- used
for filenames,
e.g.<tt>&lt;filename&gt;</tt>
foo.sgml
<tt>&lt;/filename&gt;</tt>
produces: <tt>foo.sgml</tt>.
</p></li><li><p><a name="id2927360"></a> <tt>&lt;filename
class=&quot;directory&quot;&gt;</tt> -- used for
</p></li><li><p><a name="id2938391"></a> <tt>&lt;filename
class="directory"&gt;</tt> -- used for
directories, e.g.<tt>&lt;filename
class=&quot;directory&quot;&gt;</tt>/usr/bin
class="directory"&gt;</tt>/usr/bin
<tt>&lt;/filename&gt;</tt>
produces: <tt>/usr/bin</tt>.
</p></li><li><p><a name="id2927420"></a>
</p></li><li><p><a name="id2938454"></a>
<tt>&lt;application&gt;</tt> -- used for
application names,
e.g. <tt>&lt;application&gt;</tt>Gnumeric
<tt>&lt;/application&gt;</tt> produces:
Gnumeric.
</p></li><li><p><a name="id2927475"></a>
</p></li><li><p><a name="id2938509"></a>
<tt>&lt;envar&gt;</tt> -- used for
environment variables, e.g.
<tt>&lt;envar&gt;</tt>PATH<tt>&lt;/envar&gt;</tt>.
</p></li><li><p><a name="id2927515"></a>
</p></li><li><p><a name="id2938551"></a>
<tt>&lt;command&gt;</tt> -- used for
commands entered on command line, e.g.
<tt>&lt;command&gt;</tt>make install
<tt>&lt;/command&gt;</tt> produces:
<b>make install</b>.
</p></li><li><p><a name="id2927571"></a>
</p></li><li><p><a name="id2938607"></a>
<tt>&lt;replaceable&gt;</tt> -- used for
replaceable text, e.g.
<tt>&lt;command&gt;</tt>db2html<tt>&lt;replaceable&gt;</tt>
@ -493,15 +493,15 @@ url=&quot;http://www.gnome.org&quot;&gt;GNOME Web page&lt;/ulink&gt;
is required.
</p><p>
here is partial list of most commonly used enitites:
</p><div class="itemizedlist"><ul><li><p><a name="id2928042"></a>
</p><div class="itemizedlist"><ul><li><p><a name="id2939068"></a>
<tt>&amp;amp;</tt> -- ampersend (&amp;)
</p></li><li><p><a name="id2928061"></a>
</p></li><li><p><a name="id2939089"></a>
<tt>&amp;lt;</tt> -- left angle bracket (&lt;)
</p></li><li><p><a name="id2928080"></a>
</p></li><li><p><a name="id2939108"></a>
<tt>&amp;copy;</tt> -- copyright sign (<28>)
</p></li><li><p><a name="id2928099"></a>
</p></li><li><p><a name="id2939126"></a>
<tt>&amp;mdash;</tt> -- long dash (--)
</p></li><li><p><a name="id2928120"></a>
</p></li><li><p><a name="id2939152"></a>
<tt>&amp;hellip;</tt> -- ellipsis (...)
</p></li></ul></div><p>
Note that the actual look of the resulting symbols depends

View File

@ -13,7 +13,7 @@
application for which the documentation is written:
<pre class="programlisting">
&lt;sect1 id=&quot;intro&quot;&gt;
&lt;sect1 id="intro"&gt;
&lt;title&gt;Introduction&lt;/title&gt;
&lt;para&gt;
blah-blah-blah This document describes version 1.0.53 of gfoo.
@ -31,7 +31,7 @@
</p></div><div class="sect3"><a name="license2"></a><div class="titlepage"><div><h4 class="title"><a name="license2"></a>Software license</h4></div></div><p>
All GNOME applications must contain information about the
license (for software, not for documentation), either in the
&quot;About&quot; box or in the manual.
"About" box or in the manual.
</p></div><div class="sect3"><a name="bugtraq"></a><div class="titlepage"><div><h4 class="title"><a name="bugtraq"></a> Bug reporting</h4></div></div><p>
Application documentation should give an address for
reporting bugs and for submitting comments about the

View File

@ -6,7 +6,7 @@
each window or panel presented to the user using screenshots (in
PNG format only) when appropriate. They should also describe
each feature and preference option available.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2928565"></a>Documentation Availability</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2939595"></a>Documentation Availability</h3><p>
Applications and applets should not rely on documentation
which is only available on the internet. All manuals and
other documentation should be packaged with the application or
@ -17,14 +17,14 @@
the templates in <a href="apas02.html" title="Template 2: Applet Manual For GNOME 1.x">the section called &#8220;Template 2: Applet Manual For GNOME 1.x&#8221;</a> for GNOME
versions 1.x and the templates in <a href="apas03.html" title="Template 2: Applet Manual For GNOME 2.x">the section called &#8220;Template 2: Applet Manual For GNOME 2.x&#8221;</a>
for GNOME versions 2.x.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2928657"></a>Manuals For Large Applications</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2939689"></a>Manuals For Large Applications</h3><p>
Manuals for very large applications, such as GNOME Workshop
components should be a <tt>&lt;book&gt;</tt> (and thus
use <tt>&lt;chapter&gt;</tt> for each primary section)
, instead of <tt>&lt;article&gt;</tt> which most
applications use(with each primary section being a
<tt>&lt;sect1&gt;</tt>).
</p></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2928715"></a>Applet Manuals in GNOME 2.0</h3><p>
</p></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2939746"></a>Applet Manuals in GNOME 2.0</h3><p>
Note that applet manuals in GNOME 2.0 are treated in a special
way. The manuals for all applets are merged into a single
virtual document by Nautilus. For this reason, the header
@ -35,7 +35,7 @@
<tt>&lt;sect2&gt;</tt>.
</p></div><p>
Application manuals should be made available by having a
&quot;Manual&quot; entry in the Help pull-down menu
"Manual" entry in the Help pull-down menu
at the top of the
application, as described in <a href="indexs07.html" title="Listing Documents in the Help Menu">the section called &#8220;Listing Documents in the Help Menu&#8221;</a>.
Applets should make their manuals available by

View File

@ -1,4 +1,4 @@
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Listing Documents in the Help Menu</title><meta name="generator" content="DocBook XSL Stylesheets V1.40"><link rel="home" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="up" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="previous" href="indexs06.html" title="Writing Application and Applet Manuals"><link rel="next" href="indexs08.html" title="Application Help Buttons"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Listing Documents in the Help Menu</th></tr><tr><td width="20%" align="left"><a href="indexs06.html">Prev</a><3E></td><th width="60%" align="center"><3E></th><td width="20%" align="right"><3E><a href="indexs08.html">Next</a></td></tr></table><hr></div><div class="sect1"><a name="listingdocsinhelpmenu"></a><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="listingdocsinhelpmenu"></a>Listing Documents in the Help Menu</h2></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2928836"></a>Developer Information</h3><p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Listing Documents in the Help Menu</title><meta name="generator" content="DocBook XSL Stylesheets V1.40"><link rel="home" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="up" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="previous" href="indexs06.html" title="Writing Application and Applet Manuals"><link rel="next" href="indexs08.html" title="Application Help Buttons"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Listing Documents in the Help Menu</th></tr><tr><td width="20%" align="left"><a href="indexs06.html">Prev</a><3E></td><th width="60%" align="center"><3E></th><td width="20%" align="right"><3E><a href="indexs08.html">Next</a></td></tr></table><hr></div><div class="sect1"><a name="listingdocsinhelpmenu"></a><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="listingdocsinhelpmenu"></a>Listing Documents in the Help Menu</h2></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2939869"></a>Developer Information</h3><p>
This section is for developers. Documentation authors
generally do not need to know this material.
</p></div><p>
@ -30,7 +30,7 @@ function-reference.html Gnumeric function reference
application's name. The application documentation (converted
from SGML into HTML with <b>db2html</b>) should be
placed in this directory too.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2929024"></a>Note</h3><p>
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2940058"></a>Note</h3><p>
If the help files are not present in the correct directory, the
menu items will NOT appear when the program is run.
</p></div><p>
@ -40,12 +40,12 @@ function-reference.html Gnumeric function reference
<pre class="programlisting">
GnomeUIInfo helpmenu[] = {
{GNOME_APP_UI_ITEM,
N_(&quot;About&quot;), N_(&quot;Info about this program&quot;),
N_("About"), N_("Info about this program"),
about_cb, NULL, NULL,
GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_ABOUT,
0, 0, NULL},
GNOMEUIINFO_SEPARATOR,
GNOMEUIINFO_HELP(&quot;<i>appname</i>&quot;),
GNOMEUIINFO_HELP("<i>appname</i>"),
GNOMEUIINFO_END
};
</pre>

View File

@ -1,4 +1,4 @@
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Application Help Buttons</title><meta name="generator" content="DocBook XSL Stylesheets V1.40"><link rel="home" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="up" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="previous" href="indexs07.html" title="Listing Documents in the Help Menu"><link rel="next" href="indexs09.html" title="Packaging Applet Documentation"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Application Help Buttons</th></tr><tr><td width="20%" align="left"><a href="indexs07.html">Prev</a><3E></td><th width="60%" align="center"><3E></th><td width="20%" align="right"><3E><a href="indexs09.html">Next</a></td></tr></table><hr></div><div class="sect1"><a name="applicationhelpbuttons"></a><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="applicationhelpbuttons"></a>Application Help Buttons</h2></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2929190"></a>Developer Information</h3><p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Application Help Buttons</title><meta name="generator" content="DocBook XSL Stylesheets V1.40"><link rel="home" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="up" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="previous" href="indexs07.html" title="Listing Documents in the Help Menu"><link rel="next" href="indexs09.html" title="Packaging Applet Documentation"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Application Help Buttons</th></tr><tr><td width="20%" align="left"><a href="indexs07.html">Prev</a><3E></td><th width="60%" align="center"><3E></th><td width="20%" align="right"><3E><a href="indexs09.html">Next</a></td></tr></table><hr></div><div class="sect1"><a name="applicationhelpbuttons"></a><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="applicationhelpbuttons"></a>Application Help Buttons</h2></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2940222"></a>Developer Information</h3><p>
This section is for developers. Documentation authors
generally do not need to know this material.
</p></div><p>
@ -18,12 +18,12 @@
Browser the developer should add code based on the following example:
</p><pre class="programlisting">
gchar *tmp;
tmp = gnome_help_file_find_file (&quot;module&quot;, &quot;page.html&quot;);
tmp = gnome_help_file_find_file ("module", "page.html");
if (tmp) {
gnome_help_goto(0, tmp);
g_free(tmp);
}
</pre><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2929326"></a>NOTE</h3><p>
</pre><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2940360"></a>NOTE</h3><p>
The example above is in the C language, please refer to other
documentation or forums for other GNOME language bindings.
</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a href="indexs07.html">Prev</a><3E></td><td width="20%" align="center"><a href="index.html">Home</a></td><td width="40%" align="right"><3E><a href="indexs09.html">Next</a></td></tr><tr><td width="40%" align="left">Listing Documents in the Help Menu<6E></td><td width="20%" align="center"><a href="index.html">Up</a></td><td width="40%" align="right"><3E>Packaging Applet Documentation</td></tr></table></div></body></html>

View File

@ -32,7 +32,7 @@
of the <i>GNOME Applets</i> book, you must
remember to add <tt>&lt;legalnotice&gt;</tt> and
<tt>&lt;copyright&gt;</tt> sections.
</p></div><div class="sect2"><a name="appletmenu"></a><div class="titlepage"><div><h3 class="title"><a name="appletmenu"></a>Adding Documentation to an Applet Menu</h3></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2929573"></a>Developer Information</h3><p>
</p></div><div class="sect2"><a name="appletmenu"></a><div class="titlepage"><div><h3 class="title"><a name="appletmenu"></a>Adding Documentation to an Applet Menu</h3></div></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a name="id2940608"></a>Developer Information</h3><p>
This section is for developers. Documentation authors
generally do not need to know this material.
</p></div><p>
@ -45,8 +45,8 @@
To add an applet's manual to its applet menu, use:
<pre class="programlisting">
/* add an item to the applet menu */
applet_widget_register_callback(APPLET_WIDGET(applet), &quot;manual&quot;,
_(&quot;Manual&quot;), &amp;open_manual, NULL);
applet_widget_register_callback(APPLET_WIDGET(applet), "manual",
_("Manual"), &amp;open_manual, NULL);
</pre>
Here the second argument is an arbitrary name for the
callback, the third argument is the label which will appear
@ -62,8 +62,8 @@ _(&quot;Manual&quot;), &amp;open_manual, NULL);
item to the applet's menu. This is a
stock menu item and is done:
<pre class="programlisting">
applet_widget_register_stock_callback (APPLET_WIDGET(applet), &quot;about&quot;,
GNOME_STOCK_MENU_ABOUT, _(&quot;About&quot;), &amp;my_applet_cb_about,
applet_widget_register_stock_callback (APPLET_WIDGET(applet), "about",
GNOME_STOCK_MENU_ABOUT, _("About"), &amp;my_applet_cb_about,
NULL);
</pre>
</p><p>

View File

@ -1,6 +1,6 @@
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Writing Context Sensitive Help (coming in GNOME-2.0)</title><meta name="generator" content="DocBook XSL Stylesheets V1.40"><link rel="home" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="up" href="index.html" title="The GNOME Handbook of Writing Software Documentation"><link rel="previous" href="indexs09.html" title="Packaging Applet Documentation"><link rel="next" href="indexs11.html" title="Referring to Other GNOME Documentation (coming in
GNOME-2.0)"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Writing Context Sensitive Help (coming in GNOME-2.0)</th></tr><tr><td width="20%" align="left"><a href="indexs09.html">Prev</a><3E></td><th width="60%" align="center"><3E></th><td width="20%" align="right"><3E><a href="indexs11.html">Next</a></td></tr></table><hr></div><div class="sect1"><a name="writingcontextsensitivehelp"></a><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="writingcontextsensitivehelp"></a>Writing Context Sensitive Help (coming in GNOME-2.0)</h2></div></div><p>
Context sensitive help, also known as &quot;pop-up&quot; help, will allow
Context sensitive help, also known as "pop-up" help, will allow
a user to obtain help information about specific buttons or
parts of an application.
</p><p>
@ -13,7 +13,7 @@
developer to give an id to a particular portion of the User
Interface, for example, a button. Once the interface is complete
a Perl script can then be run against the interface code to
create a &quot;map&quot; file. This map file allows the developer or
create a "map" file. This map file allows the developer or
writer to associate particular paragraph sections from an XML
document to the interface items.
</p><p>
@ -25,7 +25,7 @@
user launches context sensitive help on the interface (either by
pressing a button and then clicking on the interface item they
want information on, or by right mouse clicking on the interface
item and selecting a pop-up menu item like &quot;What's This&quot;) a
item and selecting a pop-up menu item like "What's This") a
small transient window will appear with brief but detailed
information on the interface item.
</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a href="indexs09.html">Prev</a><3E></td><td width="20%" align="center"><a href="index.html">Home</a></td><td width="40%" align="right"><3E><a href="indexs11.html">Next</a></td></tr><tr><td width="40%" align="left">Packaging Applet Documentation<6F></td><td width="20%" align="center"><a href="index.html">Up</a></td><td width="40%" align="right"><3E>Referring to Other GNOME Documentation (coming in

View File

@ -33,7 +33,7 @@
</p></div><div class="sect2"><a name="balance"></a><div class="titlepage"><div><h3 class="title"><a name="balance"></a>Achieving a Balanced Style</h3></div></div><p>
Just as you need to juggle expert and novice readers,
you'll have to juggle a number of other extremes as you write:
<div class="itemizedlist"><ul><li><p><a name="id2930118"></a>
<div class="itemizedlist"><ul><li><p><a name="id2941166"></a>
Documents should be complete, yet concise. You should
describe every feature, but you'll have decide how much
detail is really necessary. It's not, for example,
@ -43,7 +43,7 @@
you spend fewer words on the obvious, you can spend more
time clarifying the ambiguous labels and explaining
items that are more complex.
</p></li><li><p><a name="id2930146"></a>
</p></li><li><p><a name="id2941193"></a>
Be engaging and friendly, yet professional. Games
documents may be less formal than productivity
application documents (people don't
@ -52,14 +52,14 @@
maintain a standard of style which holds the reader's
interest without resorting to jokes and untranslatable
allusions or puns.
</p></li><li><p><a name="id2930185"></a>
</p></li><li><p><a name="id2941232"></a>
Examples, tips, notes, and screenshots are useful to
break up long stretches of text, but too many can get in
the way, and make your documents too choppy to read.
It's good to provide a screenshot of any dialog windows
a user might run into, but if a dialog box has several
tabs, it's not usually necessary to have one for each.
</p></li><li><p><a name="id2930208"></a>
</p></li><li><p><a name="id2941255"></a>
The GDP strives to have all of its documentation conform
to certain standards of style and content, but every
document (and every writer) is different. You will need
@ -101,7 +101,7 @@
bug reports, writers must check for errors in their documents.
Poor grammar, bad spelling, and gross technical errors in
draft documents are fine. However, if those problems show up
in a &quot;real&quot; release, they can count against the credibility of
in a "real" release, they can count against the credibility of
GNOME and Linux. They'll also make you look bad.
</p><p>
There is no substitute for a human proofreader; use a

View File

@ -82,7 +82,7 @@ be contacted at <a href="mailto:cmsmcq@w3.org">cmsmcq@w3.org</a>.</p>
<h2><a name="contents">Table of Contents</a></h2><p class="toc">1 <a href="#sec-intro">Introduction</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1.1 <a href="#sec-origin-goals">Origin and Goals</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1.2 <a href="#sec-terminology">Terminology</a><br>2 <a href="#sec-documents">Documents</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.1 <a href="#sec-well-formed">Well-Formed XML Documents</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.2 <a href="#charsets">Characters</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.3 <a href="#sec-common-syn">Common Syntactic Constructs</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.4 <a href="#syntax">Character Data and Markup</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.5 <a href="#sec-comments">Comments</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.6 <a href="#sec-pi">Processing Instructions</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.7 <a href="#sec-cdata-sect">CDATA Sections</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.8 <a href="#sec-prolog-dtd">Prolog and Document Type Declaration</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.9 <a href="#sec-rmd">Standalone Document Declaration</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.10 <a href="#sec-white-space">White Space Handling</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.11 <a href="#sec-line-ends">End-of-Line Handling</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.12 <a href="#sec-lang-tag">Language Identification</a><br>3 <a href="#sec-logical-struct">Logical Structures</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.1 <a href="#sec-starttags">Start-Tags, End-Tags, and Empty-Element Tags</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.2 <a href="#elemdecls">Element Type Declarations</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.2.1 <a href="#sec-element-content">Element Content</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.2.2 <a href="#sec-mixed-content">Mixed Content</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.3 <a href="#attdecls">Attribute-List Declarations</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.3.1 <a href="#sec-attribute-types">Attribute Types</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.3.2 <a href="#sec-attr-defaults">Attribute Defaults</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.3.3 <a href="#AVNormalize">Attribute-Value
Normalization</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.4 <a href="#sec-condition-sect">Conditional Sections</a><br>4 <a href="#sec-physical-struct">Physical Structures</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.1 <a href="#sec-references">Character and Entity References</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.2 <a href="#sec-entity-decl">Entity Declarations</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.2.1 <a href="#sec-internal-ent">Internal Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.2.2 <a href="#sec-external-ent">External Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.3 <a href="#TextEntities">Parsed Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.3.1 <a href="#sec-TextDecl">The Text Declaration</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.3.2 <a href="#wf-entities">Well-Formed Parsed Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.3.3 <a href="#charencoding">Character Encoding in Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4 <a href="#entproc">XML Processor Treatment of Entities and References</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.1 <a href="#not-recognized">Not Recognized</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.2 <a href="#included">Included</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.3 <a href="#include-if-valid">Included If Validating</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.4 <a href="#forbidden">Forbidden</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.5 <a href="#inliteral">Included in Literal</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.6 <a href="#notify">Notify</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.7 <a href="#bypass">Bypassed</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.8 <a href="#as-PE">Included as PE</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.5 <a href="#intern-replacement">Construction of Internal Entity Replacement Text</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.6 <a href="#sec-predefined-ent">Predefined Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.7 <a href="#Notations">Notation Declarations</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.8 <a href="#sec-doc-entity">Document Entity</a><br>5 <a href="#sec-conformance">Conformance</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5.1 <a href="#proc-types">Validating and Non-Validating Processors</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5.2 <a href="#safe-behavior">Using XML Processors</a><br>6 <a href="#sec-notation">Notation</a><br></p>
<h3>Appendices</h3><p class="toc">A <a href="#sec-bibliography">References</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A.1 <a href="#sec-existing-stds">Normative References</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A.2 <a href="#null">Other References</a><br>B <a href="#CharClasses">Character Classes</a><br>C <a href="#sec-xml-and-sgml">XML and SGML</a> (Non-Normative)<br>D <a href="#sec-entexpand">Expansion of Entity and Character References</a> (Non-Normative)<br>E <a href="#determinism">Deterministic Content Models</a> (Non-Normative)<br>F <a href="#sec-guessing">Autodetection
of Character Encodings</a> (Non-Normative)<br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F.1 <a href="#sec-guessing-no-ext-info">Detection Without External Encoding Information</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F.2 <a href="#sec-guessing-with-ext-info">Priorities in the Presence of External Encoding Information</a><br>G <a href="#sec-xml-wg">W3C XML Working Group</a> (Non-Normative)<br>H <a href="#sec-core-wg">W3C XML Core Group</a> (Non-Normative)<br>I <a href="#id2676581">Production Notes</a> (Non-Normative)<br></p></div><hr><div class="body">
of Character Encodings</a> (Non-Normative)<br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F.1 <a href="#sec-guessing-no-ext-info">Detection Without External Encoding Information</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F.2 <a href="#sec-guessing-with-ext-info">Priorities in the Presence of External Encoding Information</a><br>G <a href="#sec-xml-wg">W3C XML Working Group</a> (Non-Normative)<br>H <a href="#sec-core-wg">W3C XML Core Group</a> (Non-Normative)<br>I <a href="#id2681697">Production Notes</a> (Non-Normative)<br></p></div><hr><div class="body">
<div class="div1">
<h2><a name="sec-intro"></a>1 Introduction</h2>
@ -231,7 +231,7 @@ be <a title="Validity" href="#dt-valid">valid</a> if it meets certain further co
<p>Each XML document has both a logical and a physical structure. Physically,
the document is composed of units called <a title="Entity" href="#dt-entity">entities</a>.
An entity may <a title="Entity Reference" href="#dt-entref">refer</a> to other entities to
cause their inclusion in the document. A document begins in a &quot;root&quot;
cause their inclusion in the document. A document begins in a "root"
or <a title="Document Entity" href="#dt-docent">document entity</a>. Logically, the document
is composed of declarations, elements, comments, character references, and
processing instructions, all of which are indicated in the document by explicit
@ -286,7 +286,7 @@ versions of these standards cited in <a href="#sec-existing-stds"><b>A.1 Normati
current at the time this document was prepared. New characters may be added
to these standards by amendments or new editions. Consequently, XML processors
must accept any character in the range specified for <a href="#NT-Char">Char</a>.</span>
The use of &quot;compatibility characters&quot;, as defined in section
The use of "compatibility characters", as defined in section
6.8 of <a href="#Unicode">[Unicode]</a> <span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E67">[E67]</a>(see
also D21 in section 3.6 of <a href="#Unicode3">[Unicode3]</a>)</span>, is discouraged.]</p>
@ -317,7 +317,7 @@ are given in <a href="#CharClasses"><b>B Character Classes</b></a>.</p>
<p>[<a name="dt-name" title="Name">Definition</a>: A <b>Name</b> is a token beginning
with a letter or one of a few punctuation characters, and continuing with
letters, digits, hyphens, underscores, colons, or full stops, together known
as name characters.] Names beginning with the string &quot;<code>xml</code>&quot;,
as name characters.] Names beginning with the string "<code>xml</code>",
or any string which would match <code>(('X'|'x') ('M'|'m') ('L'|'l'))</code>,
are reserved for standardization in this or future versions of this specification.</p>
<div class="note"><p class="prefix"><b>Note:</b></p>
@ -339,16 +339,16 @@ of attributes (<a href="#NT-AttValue">AttValue</a>), and external identifiers
(<a href="#NT-SystemLiteral">SystemLiteral</a>). Note that a <a href="#NT-SystemLiteral">SystemLiteral</a>
can be parsed without scanning for markup.</p>
<h5>Literals</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-EntityValue"></a>[9]<5D><><EFBFBD></td><td><code>EntityValue</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&quot;' ([^%&amp;&quot;] | <a href="#NT-PEReference">PEReference</a>
| <a href="#NT-Reference">Reference</a>)* '&quot;' </code></td><xsltdebug></xsltdebug></tr><tr valign="baseline"><td></td><td></td><td></td><td><code>|<7C> &quot;'&quot; ([^%&amp;'] | <a href="#NT-PEReference">PEReference</a> | <a href="#NT-Reference">Reference</a>)* &quot;'&quot;</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-AttValue"></a>[10]<5D><><EFBFBD></td><td><code>AttValue</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&quot;' ([^&lt;&amp;&quot;] | <a href="#NT-Reference">Reference</a>)*
'&quot;' </code></td><xsltdebug></xsltdebug></tr><tr valign="baseline"><td></td><td></td><td></td><td><code>|<7C> &quot;'&quot; ([^&lt;&amp;'] | <a href="#NT-Reference">Reference</a>)*
&quot;'&quot;</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-SystemLiteral"></a>[11]<5D><><EFBFBD></td><td><code>SystemLiteral</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>('&quot;' [^&quot;]* '&quot;') |<7C>(&quot;'&quot; [^']* &quot;'&quot;) </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PubidLiteral"></a>[12]<5D><><EFBFBD></td><td><code>PubidLiteral</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&quot;' <a href="#NT-PubidChar">PubidChar</a>* '&quot;'
| &quot;'&quot; (<a href="#NT-PubidChar">PubidChar</a> - &quot;'&quot;)* &quot;'&quot;</code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PubidChar"></a>[13]<5D><><EFBFBD></td><td><code>PubidChar</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>#x20 | #xD | #xA |<7C>[a-zA-Z0-9] |<7C>[-'()+,./:=?;!*#@$_%]</code></td><xsltdebug></xsltdebug></tr></tbody></table>
<h5>Literals</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-EntityValue"></a>[9]<5D><><EFBFBD></td><td><code>EntityValue</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'"' ([^%&amp;"] | <a href="#NT-PEReference">PEReference</a>
| <a href="#NT-Reference">Reference</a>)* '"' </code></td><xsltdebug></xsltdebug></tr><tr valign="baseline"><td></td><td></td><td></td><td><code>|<7C> "'" ([^%&amp;'] | <a href="#NT-PEReference">PEReference</a> | <a href="#NT-Reference">Reference</a>)* "'"</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-AttValue"></a>[10]<5D><><EFBFBD></td><td><code>AttValue</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'"' ([^&lt;&amp;"] | <a href="#NT-Reference">Reference</a>)*
'"' </code></td><xsltdebug></xsltdebug></tr><tr valign="baseline"><td></td><td></td><td></td><td><code>|<7C> "'" ([^&lt;&amp;'] | <a href="#NT-Reference">Reference</a>)*
"'"</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-SystemLiteral"></a>[11]<5D><><EFBFBD></td><td><code>SystemLiteral</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>('"' [^"]* '"') |<7C>("'" [^']* "'") </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PubidLiteral"></a>[12]<5D><><EFBFBD></td><td><code>PubidLiteral</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'"' <a href="#NT-PubidChar">PubidChar</a>* '"'
| "'" (<a href="#NT-PubidChar">PubidChar</a> - "'")* "'"</code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PubidChar"></a>[13]<5D><><EFBFBD></td><td><code>PubidChar</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>#x20 | #xD | #xA |<7C>[a-zA-Z0-9] |<7C>[-'()+,./:=?;!*#@$_%]</code></td><xsltdebug></xsltdebug></tr></tbody></table>
<div class="diff-add"><div class="note"><p class="prefix"><b>Note:</b></p>
<p><a href="http://www.w3.org/XML/xml-19980210-errata#E72">[E72]</a>Although
the <a href="#NT-EntityValue">EntityValue</a> production allows the definition
of an entity consisting of a single explicit <code>&lt;</code> in the literal
(e.g., <code>&lt;!ENTITY mylt &quot;&lt;&quot;&gt;</code>), it is strongly advised to avoid
(e.g., <code>&lt;!ENTITY mylt "&lt;"&gt;</code>), it is strongly advised to avoid
this practice since any reference to that entity will cause a well-formedness
error.</p>
</div></div>
@ -371,20 +371,20 @@ are also legal within the <a title="Literal Entity Value" href="#dt-litentval">l
of an internal entity declaration; see <a href="#wf-entities"><b>4.3.2 Well-Formed Parsed Entities</b></a>.</span>
If they are needed elsewhere, they must be <a title="escape" href="#dt-escape">escaped</a>
using either <a title="Character Reference" href="#dt-charref">numeric character references</a>
or the strings &quot;<code>&amp;amp;</code>&quot; and &quot;<code>&amp;lt;</code>&quot;
respectively. The right angle bracket (&gt;) may be represented using the string &quot;<code>&amp;gt;</code>&quot;,
or the strings "<code>&amp;amp;</code>" and "<code>&amp;lt;</code>"
respectively. The right angle bracket (&gt;) may be represented using the string "<code>&amp;gt;</code>",
and must, <a title="For Compatibility" href="#dt-compat">for compatibility</a>, be escaped
using &quot;<code>&amp;gt;</code>&quot; or a character reference when it
appears in the string &quot;<code>]]&gt;</code>&quot; in content, when
using "<code>&amp;gt;</code>" or a character reference when it
appears in the string "<code>]]&gt;</code>" in content, when
that string is not marking the end of a <a title="CDATA Section" href="#dt-cdsection">CDATA
section</a>.</p>
<p>In the content of elements, character data is any string of characters
which does not contain the start-delimiter of any markup. In a CDATA section,
character data is any string of characters not including the CDATA-section-close
delimiter, &quot;<code>]]&gt;</code>&quot;.</p>
delimiter, "<code>]]&gt;</code>".</p>
<p>To allow attribute values to contain both single and double quotes, the
apostrophe or single-quote character (') may be represented as &quot;<code>&amp;apos;</code>&quot;,
and the double-quote character (&quot;) as &quot;<code>&amp;quot;</code>&quot;.</p>
apostrophe or single-quote character (') may be represented as "<code>&amp;apos;</code>",
and the double-quote character (") as "<code>&amp;quot;</code>".</p>
<h5>Character Data</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-CharData"></a>[14]<5D><><EFBFBD></td><td><code>CharData</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>[^&lt;&amp;]* - ([^&lt;&amp;]* ']]&gt;' [^&lt;&amp;]*)</code></td><xsltdebug></xsltdebug></tr></tbody></table>
</div>
@ -397,7 +397,7 @@ in addition, they may appear within the document type declaration at places
allowed by the grammar. They are not part of the document's <a title="Character Data" href="#dt-chardata">character
data</a>; an XML processor may, but need not, make it possible for an
application to retrieve the text of comments. <a title="For Compatibility" href="#dt-compat">For
compatibility</a>, the string &quot;<code>--</code>&quot; (double-hyphen)
compatibility</a>, the string "<code>--</code>" (double-hyphen)
must not occur within comments.] <span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E63">[E63]</a>Parameter
entity references are not recognized within comments.</span></p>
@ -422,7 +422,7 @@ following example is <em>not</em> well-formed.</p></div>
<p>PIs are not part of the document's <a title="Character Data" href="#dt-chardata">character
data</a>, but must be passed through to the application. The PI begins
with a target (<a href="#NT-PITarget">PITarget</a>) used to identify the application
to which the instruction is directed. The target names &quot;<code>XML</code>&quot;, &quot;<code>xml</code>&quot;,
to which the instruction is directed. The target names "<code>XML</code>", "<code>xml</code>",
and so on are reserved for standardization in this or future versions of this
specification. The XML <a title="Notation" href="#dt-notation">Notation</a> mechanism
may be used for formal declaration of PI targets. <span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E63">[E63]</a>Parameter
@ -434,17 +434,17 @@ entity references are not recognized within processing instructions.</span></p>
<p>[<a name="dt-cdsection" title="CDATA Section">Definition</a>: <b>CDATA sections</b>
may occur anywhere character data may occur; they are used to escape blocks
of text containing characters which would otherwise be recognized as markup.
CDATA sections begin with the string &quot;<code>&lt;![CDATA[</code>&quot;
and end with the string &quot;<code>]]&gt;</code>&quot;:]</p>
CDATA sections begin with the string "<code>&lt;![CDATA[</code>"
and end with the string "<code>]]&gt;</code>":]</p>
<h5>CDATA Sections</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-CDSect"></a>[18]<5D><><EFBFBD></td><td><code>CDSect</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-CDStart">CDStart</a> <a href="#NT-CData">CData</a> <a href="#NT-CDEnd">CDEnd</a></code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-CDStart"></a>[19]<5D><><EFBFBD></td><td><code>CDStart</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&lt;![CDATA['</code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-CData"></a>[20]<5D><><EFBFBD></td><td><code>CData</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>(<a href="#NT-Char">Char</a>* - (<a href="#NT-Char">Char</a>*
']]&gt;' <a href="#NT-Char">Char</a>*)) </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-CDEnd"></a>[21]<5D><><EFBFBD></td><td><code>CDEnd</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>']]&gt;'</code></td><xsltdebug></xsltdebug></tr></tbody></table>
<p>Within a CDATA section, only the <a href="#NT-CDEnd">CDEnd</a> string is
recognized as markup, so that left angle brackets and ampersands may occur
in their literal form; they need not (and cannot) be escaped using &quot;<code>&amp;lt;</code>&quot;
and &quot;<code>&amp;amp;</code>&quot;. CDATA sections cannot nest.</p>
<p>An example of a CDATA section, in which &quot;<code>&lt;greeting&gt;</code>&quot;
and &quot;<code>&lt;/greeting&gt;</code>&quot; are recognized as <a title="Character Data" href="#dt-chardata">character data</a>, not <a title="Markup" href="#dt-markup">markup</a>:</p>
in their literal form; they need not (and cannot) be escaped using "<code>&amp;lt;</code>"
and "<code>&amp;amp;</code>". CDATA sections cannot nest.</p>
<p>An example of a CDATA section, in which "<code>&lt;greeting&gt;</code>"
and "<code>&lt;/greeting&gt;</code>" are recognized as <a title="Character Data" href="#dt-chardata">character data</a>, not <a title="Markup" href="#dt-markup">markup</a>:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;![CDATA[&lt;greeting&gt;Hello, world!&lt;/greeting&gt;]]&gt; </pre></td></tr></table>
</div>
<div class="div2">
@ -453,14 +453,14 @@ and &quot;<code>&lt;/greeting&gt;</code>&quot; are recognized as <a title="Chara
<p>[<a name="dt-xmldecl" title="XML Declaration">Definition</a>: XML documents <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E107">[E107]</a>should</span>
begin with an <b>XML declaration</b> which specifies the version of
XML being used.] For example, the following is a complete XML document, <a title="Well-Formed" href="#dt-wellformed">well-formed</a> but not <a title="Validity" href="#dt-valid">valid</a>:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version=&quot;1.0&quot;?&gt; &lt;greeting&gt;Hello, world!&lt;/greeting&gt; </pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version="1.0"?&gt; &lt;greeting&gt;Hello, world!&lt;/greeting&gt; </pre></td></tr></table>
<p>and so is this:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;greeting&gt;Hello, world!&lt;/greeting&gt;</pre></td></tr></table>
<p>The version number &quot;<code>1.0</code>&quot; should be used to indicate
<p>The version number "<code>1.0</code>" should be used to indicate
conformance to this version of this specification; it is an error for a document
to use the value &quot;<code>1.0</code>&quot; if it does not conform to
to use the value "<code>1.0</code>" if it does not conform to
this version of this specification. It is the intent of the XML working group
to give later versions of this specification numbers other than &quot;<code>1.0</code>&quot;,
to give later versions of this specification numbers other than "<code>1.0</code>",
but this intent does not indicate a commitment to produce any future versions
of XML, nor if any are produced, to use any particular numbering scheme. Since
future versions are not ruled out, this construct is provided as a means to
@ -482,8 +482,8 @@ in the document.</p>
(<a href="#NT-doctypedecl">doctypedecl</a> <a href="#NT-Misc">Misc</a>*)?</code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td><a name="NT-XMLDecl"></a>[23]<5D><><EFBFBD></td><td><code>XMLDecl</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&lt;?xml' <a href="#NT-VersionInfo">VersionInfo</a> <a href="#NT-EncodingDecl">EncodingDecl</a>? <a href="#NT-SDDecl">SDDecl</a>? <a href="#NT-S">S</a>? '?&gt;'</code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td class="diff-chg"><a name="NT-VersionInfo"></a>[24]<5D><><EFBFBD></td><td class="diff-chg"><code>VersionInfo</code></td><td class="diff-chg"><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td class="diff-chg"><code><a href="#NT-S">S</a> 'version' <a href="#NT-Eq">Eq</a>
(&quot;'&quot; <a href="#NT-VersionNum">VersionNum</a> &quot;'&quot; | '&quot;' <a href="#NT-VersionNum">VersionNum</a>
'&quot;')<i>/* <a href="http://www.w3.org/XML/xml-19980210-errata#E15">[E15]</a> */</i></code></td><xsltdebug></xsltdebug></tr>
("'" <a href="#NT-VersionNum">VersionNum</a> "'" | '"' <a href="#NT-VersionNum">VersionNum</a>
'"')<i>/* <a href="http://www.w3.org/XML/xml-19980210-errata#E15">[E15]</a> */</i></code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td><a name="NT-Eq"></a>[25]<5D><><EFBFBD></td><td><code>Eq</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-S">S</a>? '=' <a href="#NT-S">S</a>?</code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td><a name="NT-VersionNum"></a>[26]<5D><><EFBFBD></td><td><code>VersionNum</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>([a-zA-Z0-9_.:] | '-')+</code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td><a name="NT-Misc"></a>[27]<5D><><EFBFBD></td><td><code>Misc</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-Comment">Comment</a> | <a href="#NT-PI">PI</a>
@ -569,12 +569,12 @@ internal subset in that in them, <a title="Parameter-entity reference" href="#dt
references</a> are permitted <em>within</em> markup declarations,
not only <em>between</em> markup declarations.</p>
<p>An example of an XML document with a document type declaration:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version=&quot;1.0&quot;?&gt; &lt;!DOCTYPE greeting SYSTEM &quot;hello.dtd&quot;&gt; &lt;greeting&gt;Hello, world!&lt;/greeting&gt; </pre></td></tr></table>
<p>The <a title="System Identifier" href="#dt-sysid">system identifier</a> &quot;<code>hello.dtd</code>&quot;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version="1.0"?&gt; &lt;!DOCTYPE greeting SYSTEM "hello.dtd"&gt; &lt;greeting&gt;Hello, world!&lt;/greeting&gt; </pre></td></tr></table>
<p>The <a title="System Identifier" href="#dt-sysid">system identifier</a> "<code>hello.dtd</code>"
gives the <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E78">[E78]</a>address
(a URI reference)</span> of a DTD for the document.</p>
<p>The declarations can also be given locally, as in this example:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version="1.0" encoding="UTF-8" ?&gt;
&lt;!DOCTYPE greeting [
&lt;!ELEMENT greeting (#PCDATA)&gt;
]&gt;
@ -601,24 +601,24 @@ them).]</span></p>
<h5>Standalone Document Declaration</h5><table class="scrap" summary="Scrap"><tbody>
<tr valign="baseline"><td><a name="NT-SDDecl"></a>[32]<5D><><EFBFBD></td><td><code>SDDecl</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code> <a href="#NT-S">S</a> 'standalone' <a href="#NT-Eq">Eq</a>
((&quot;'&quot; ('yes' | 'no') &quot;'&quot;) | ('&quot;' ('yes' | 'no') '&quot;')) </code></td><xsltdebug></xsltdebug><td><a href="#vc-check-rmd">[VC: Standalone Document Declaration]</a></td></tr>
(("'" ('yes' | 'no') "'") | ('"' ('yes' | 'no') '"')) </code></td><xsltdebug></xsltdebug><td><a href="#vc-check-rmd">[VC: Standalone Document Declaration]</a></td></tr>
</tbody></table>
<p>In a standalone document declaration, the value &quot;yes&quot; indicates
<p>In a standalone document declaration, the value "yes" indicates
that there are no <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E64">[E64]</a><a title="External Markup Declaration" href="#dt-extmkpdecl">external markup declarations</a></span> which
affect the information passed from the XML processor to the application. The
value &quot;no&quot; indicates that there are or may be such external
value "no" indicates that there are or may be such external
markup declarations. Note that the standalone document declaration only denotes
the presence of external <em>declarations</em>; the presence, in a document,
of references to external <em>entities</em>, when those entities are internally
declared, does not change its standalone status.</p>
<p>If there are no external markup declarations, the standalone document declaration
has no meaning. If there are external markup declarations but there is no
standalone document declaration, the value &quot;no&quot; is assumed.</p>
<p>Any XML document for which <code>standalone=&quot;no&quot;</code> holds can be converted
standalone document declaration, the value "no" is assumed.</p>
<p>Any XML document for which <code>standalone="no"</code> holds can be converted
algorithmically to a standalone document, which may be desirable for some
network delivery applications.</p>
<div class="constraint"><p class="prefix"><a name="vc-check-rmd"></a><b>Validity constraint: Standalone Document Declaration</b></p><p>The
standalone document declaration must have the value &quot;no&quot; if
standalone document declaration must have the value "no" if
any external markup declarations contain declarations of:</p>
<ul>
<li><p>attributes with <a title="Attribute Default" href="#dt-default">default</a> values,
@ -638,17 +638,17 @@ if white space occurs directly within any instance of those types.</p></li>
</ul>
</div>
<p>An example XML declaration with a standalone document declaration:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version=&quot;1.0&quot; standalone='yes'?&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version="1.0" standalone='yes'?&gt;</pre></td></tr></table>
</div>
<div class="div2">
<h3><a name="sec-white-space"></a>2.10 White Space Handling</h3>
<p>In editing XML documents, it is often convenient to use &quot;white space&quot;
<p>In editing XML documents, it is often convenient to use "white space"
(spaces, tabs, and blank lines<span class="diff-del"><a href="http://www.w3.org/XML/xml-19980210-errata#E39">[E39]</a>,
denoted by the nonterminal <a href="#NT-S">S</a> in this specification</span>)
to set apart the markup for greater readability. Such white space is typically
not intended for inclusion in the delivered version of the document. On the
other hand, &quot;significant&quot; white space that should be preserved
other hand, "significant" white space that should be preserved
in the delivered version is common, for example in poetry and source code.</p>
<p>An <a title="XML Processor" href="#dt-xml-proc">XML processor</a> must always pass
all characters in a document that are not markup through to the application.
@ -661,14 +661,14 @@ white space should be preserved by applications. In valid documents, this
attribute, like any other, must be <a title="Attribute-List Declaration" href="#dt-attdecl">declared</a>
if it is used. When declared, it must be given as an <a title="Enumerated Attribute Values" href="#dt-enumerated">enumerated
type</a> whose <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E81">[E81]</a>values
are one or both of</span> &quot;default&quot; and &quot;preserve&quot;.
are one or both of</span> "default" and "preserve".
For example:</p>
<div class="diff-chg"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td class="diff-chg"><pre>&lt;!ATTLIST poem xml:space (default|preserve) 'preserve'&gt;
&lt;!-- <a href="http://www.w3.org/XML/xml-19980210-errata#E81">[E81]</a>--&gt;
&lt;!ATTLIST pre xml:space (preserve) #FIXED 'preserve'&gt;</pre></td></tr></table></div>
<p>The value &quot;default&quot; signals that applications' default white-space
processing modes are acceptable for this element; the value &quot;preserve&quot;
<p>The value "default" signals that applications' default white-space
processing modes are acceptable for this element; the value "preserve"
indicates the intent that applications preserve all the white space. This
declared intent is considered to apply to all elements within the content
of the element where it is specified, unless overriden with another instance
@ -687,7 +687,7 @@ These lines are typically separated by some combination of the characters
carriage-return (#xD) and line-feed (#xA).</p>
<div class="diff-del"><p>To simplify the tasks of <a title="Application" href="#dt-app">applications</a>,
wherever an external parsed entity or the literal entity value of an internal
parsed entity contains either the literal two-character sequence &quot;#xD#xA&quot;
parsed entity contains either the literal two-character sequence "#xD#xA"
or a standalone literal #xD, an <a title="XML Processor" href="#dt-xml-proc">XML processor</a>
must pass to the application the single character #xA. (This behavior can
conveniently be produced by normalizing all line breaks to #xA on input, before
@ -730,28 +730,28 @@ languages not presently covered by <a href="#ISO639">[ISO 639]</a>.</p>
for the representation of names of languages</cite></p></li>
<li><p>a language identifier registered with the Internet Assigned Numbers
Authority <span class="diff-chg"><a href="#IANA-LANGCODES">[IANA-LANGCODES]</a></span>; these begin with the
prefix &quot;<code>i-</code>&quot; (or &quot;<code>I-</code>&quot;)</p>
prefix "<code>i-</code>" (or "<code>I-</code>")</p>
</li>
<li><p>a language identifier assigned by the user, or agreed on between
parties in private use; these must begin with the prefix &quot;<code>x-</code>&quot;
or &quot;<code>X-</code>&quot; in order to ensure that they do not conflict
parties in private use; these must begin with the prefix "<code>x-</code>"
or "<code>X-</code>" in order to ensure that they do not conflict
with names later standardized or registered with IANA</p></li>
</ul></div>
<div class="diff-del"><p>There may be any number of <a href="#NT-Subcode">Subcode</a>
segments; if the first subcode segment exists and the Subcode consists of
two letters, then it must be a country code from <a href="#ISO3166">[ISO 3166]</a>,
&quot;Codes for the representation of names of countries.&quot; If the first subcode
"Codes for the representation of names of countries." If the first subcode
consists of more than two letters, it must be a subcode for the language in
question registered with IANA, unless the <a href="#NT-Langcode">Langcode</a>
begins with the prefix &quot;<code>x-</code>&quot; or &quot;<code>X-</code>&quot;. </p></div>
begins with the prefix "<code>x-</code>" or "<code>X-</code>". </p></div>
<div class="diff-del"><p>It is customary to give the language code in lower case, and
the country code (if any) in upper case. Note that these values, unlike other
names in XML documents, are case insensitive.</p></div>
<p>For example:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;p xml:lang=&quot;en&quot;&gt;The quick brown fox jumps over the lazy dog.&lt;/p&gt;
&lt;p xml:lang=&quot;en-GB&quot;&gt;What colour is it?&lt;/p&gt;
&lt;p xml:lang=&quot;en-US&quot;&gt;What color is it?&lt;/p&gt;
&lt;sp who=&quot;Faust&quot; desc='leise' xml:lang=&quot;de&quot;&gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;p xml:lang="en"&gt;The quick brown fox jumps over the lazy dog.&lt;/p&gt;
&lt;p xml:lang="en-GB"&gt;What colour is it?&lt;/p&gt;
&lt;p xml:lang="en-US"&gt;What color is it?&lt;/p&gt;
&lt;sp who="Faust" desc='leise' xml:lang="de"&gt;
&lt;l&gt;Habe nun, ach! Philosophie,&lt;/l&gt;
&lt;l&gt;Juristerei, und Medizin&lt;/l&gt;
&lt;l&gt;und leider auch Theologie&lt;/l&gt;
@ -781,8 +781,8 @@ document</a> contains one or more <b>elements</b>, the boundaries
of which are either delimited by <a title="Start-Tag" href="#dt-stag">start-tags</a>
and <a title="End Tag" href="#dt-etag">end-tags</a>, or, for <a title="Empty" href="#dt-empty">empty</a>
elements, by an <a title="empty-element tag" href="#dt-eetag">empty-element tag</a>. Each
element has a type, identified by name, sometimes called its &quot;generic
identifier&quot; (GI), and may have a set of attribute specifications.]
element has a type, identified by name, sometimes called its "generic
identifier" (GI), and may have a set of attribute specifications.]
Each attribute specification has a <a title="Attribute Name" href="#dt-attrname">name</a>
and a <a title="Attribute Value" href="#dt-attrval">value</a>.</p>
@ -828,7 +828,7 @@ XML element is marked by a <b>start-tag</b>.]</p>
<p>The <a href="#NT-Name">Name</a> in the start- and end-tags gives the element's <b>type</b>. [<a name="dt-attr" title="Attribute">Definition</a>: The <a href="#NT-Name">Name</a>-<a href="#NT-AttValue">AttValue</a>
pairs are referred to as the <b>attribute specifications</b> of the
element], [<a name="dt-attrname" title="Attribute Name">Definition</a>: with the <a href="#NT-Name">Name</a> in each pair referred to as the <b>attribute name</b>]
and [<a name="dt-attrval" title="Attribute Value">Definition</a>: the content of the <a href="#NT-AttValue">AttValue</a> (the text between the <code>'</code> or <code>&quot;</code>
and [<a name="dt-attrval" title="Attribute Value">Definition</a>: the content of the <a href="#NT-AttValue">AttValue</a> (the text between the <code>'</code> or <code>"</code>
delimiters) as the <b>attribute value</b>.]<span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E46">[E46]</a>Note
that the order of attribute specifications in a start-tag or empty-element
tag is not significant.</span></p>
@ -845,10 +845,10 @@ values cannot contain direct or indirect entity references to external entities.
<div class="constraint"><p class="prefix"><a name="CleanAttrVals"></a><b>Well-formedness constraint: No <code>&lt;</code> in Attribute Values</b></p>
<p>The <a title="Replacement Text" href="#dt-repltext">replacement text</a> of any entity
referred to directly or indirectly in an attribute value <span class="diff-del"><a href="http://www.w3.org/XML/xml-19980210-errata#E83">[E83]</a>(other
than &quot;<code>&amp;lt;</code>&quot;) </span>must not contain a <code>&lt;</code>.</p>
than "<code>&amp;lt;</code>") </span>must not contain a <code>&lt;</code>.</p>
</div>
<p>An example of a start-tag:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;termdef id=&quot;dt-dog&quot; term=&quot;dog&quot;&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;termdef id="dt-dog" term="dog"&gt;</pre></td></tr></table>
<p>[<a name="dt-etag" title="End Tag">Definition</a>: The end of every element that begins
with a start-tag must be marked by an <b>end-tag</b> containing a name
that echoes the element's type as given in the start-tag:]</p>
@ -882,8 +882,8 @@ interoperability</a>, the empty-element tag <span class="diff-chg"><a href="http
be used, and should only be used,</span> for elements which are declared
EMPTY.</p>
<p>Examples of empty elements:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;IMG align=&quot;left&quot;
src=&quot;http://www.w3.org/Icons/WWW/w3c_home&quot; /&gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;IMG align="left"
src="http://www.w3.org/Icons/WWW/w3c_home" /&gt;
&lt;br&gt;&lt;/br&gt;
&lt;br/&gt;</pre></td></tr></table>
</div>
@ -987,8 +987,8 @@ but not their order or their number of occurrences:</p>
</tbody></table>
<p>where the <a href="#NT-Name">Name</a>s give the types of elements that
may appear as children. <span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E10">[E10]</a>The
keyword <b>#PCDATA</b> derives historically from the term &quot;parsed
character data.&quot;</span></p>
keyword <b>#PCDATA</b> derives historically from the term "parsed
character data."</span></p>
<div class="constraint"><p class="prefix"><a name="vc-MixedChildrenUnique"></a><b>Validity constraint: No Duplicate Types</b></p><p>The
same name must not appear more than once in a single mixed-content declaration.</p>
</div>
@ -1142,9 +1142,9 @@ that attribute must match the default value.</p>
id ID #REQUIRED
name CDATA #IMPLIED&gt;
&lt;!ATTLIST list
type (bullets|ordered|glossary) &quot;ordered&quot;&gt;
type (bullets|ordered|glossary) "ordered"&gt;
&lt;!ATTLIST form
method CDATA #FIXED &quot;POST&quot;&gt;</pre></td></tr></table>
method CDATA #FIXED "POST"&gt;</pre></td></tr></table>
</div>
<div class="diff-chg"><div class="div3">
@ -1193,21 +1193,21 @@ by a non-validating <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19
as if declared <b>CDATA</b>.</p>
<p>Following are examples of attribute normalization. Given the following
declarations:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY d &quot;&amp;#xD;&quot;&gt;
&lt;!ENTITY a &quot;&amp;#xA;&quot;&gt;
&lt;!ENTITY da &quot;&amp;#xD;&amp;#xA;&quot;&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY d "&amp;#xD;"&gt;
&lt;!ENTITY a "&amp;#xA;"&gt;
&lt;!ENTITY da "&amp;#xD;&amp;#xA;"&gt;</pre></td></tr></table>
<p>the attribute specifications in the left column below would be normalized
to the character sequences of the middle column if the attribute <code>a</code>
is declared <b>NMTOKENS</b> and to those of the right columns if <code>a</code>
is declared <b>CDATA</b>.</p>
<table border="1" frame="border"><thead><tr><th colspan="1" rowspan="1">Attribute specification</th>
<th colspan="1" rowspan="1">a is NMTOKENS</th><th colspan="1" rowspan="1">a is CDATA</th></tr></thead><tbody><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a=&quot;
<th colspan="1" rowspan="1">a is NMTOKENS</th><th colspan="1" rowspan="1">a is CDATA</th></tr></thead><tbody><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a="
xyz&quot;</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>x y z</code></td><td colspan="1" rowspan="1"><code>#x20 #x20 x y z</code></td>
</tr><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a=&quot;&amp;d;&amp;d;A&amp;a;&amp;a;B&amp;da;&quot;</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>A
xyz"</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>x y z</code></td><td colspan="1" rowspan="1"><code>#x20 #x20 x y z</code></td>
</tr><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a="&amp;d;&amp;d;A&amp;a;&amp;a;B&amp;da;"</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>A
#x20 B</code></td><td colspan="1" rowspan="1"><code>#x20 #x20 A #x20 #x20 B #x20 #x20</code></td>
</tr><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a=
&quot;&amp;#xd;&amp;#xd;A&amp;#xa;&amp;#xa;B&amp;#xd;&amp;#xa;&quot;</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>#xD
"&amp;#xd;&amp;#xd;A&amp;#xa;&amp;#xa;B&amp;#xd;&amp;#xa;"</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>#xD
#xD A #xA #xA B #xD #xA</code></td><td colspan="1" rowspan="1"><code>#xD #xD A #xA #xA B #xD #xD</code></td>
</tr></tbody></table>
<p>Note that the last example is invalid (but well-formed) if <code>a</code>
@ -1235,8 +1235,8 @@ Conditional Section/PE Nesting]</a></td></tr>
('&lt;![' | ']]&gt;') <a href="#NT-Char">Char</a>*) </code></td><xsltdebug></xsltdebug></tr>
</tbody></table>
<div class="diff-add"><div class="constraint"><p class="prefix"><a name="condsec-nesting"></a><b>Validity constraint: <a href="http://www.w3.org/XML/xml-19980210-errata#E90">[E90]</a>Proper
Conditional Section/PE Nesting</b></p><p>If any of the &quot;<code>&lt;![</code>&quot;,
&quot;<code>[</code>&quot;, or &quot;<code>]]&gt;</code>&quot; of a conditional section is contained
Conditional Section/PE Nesting</b></p><p>If any of the "<code>&lt;![</code>",
"<code>[</code>", or "<code>]]&gt;</code>" of a conditional section is contained
in the replacement text for a parameter-entity reference, all of them must
be contained in the same replacement text.</p>
</div></div>
@ -1254,8 +1254,8 @@ If a conditional section with a keyword of <b>INCLUDE</b> occurs within
a larger conditional section with a keyword of <b>IGNORE</b>, both the outer
and the inner conditional sections are ignored.<span class="diff-add"> <a href="http://www.w3.org/XML/xml-19980210-errata#E90">[E90]</a>The contents
of an ignored conditional section are parsed by ignoring all characters after
the &quot;<code>[</code>&quot; following the keyword, except conditional section starts
&quot;<code>&lt;![</code>&quot; and ends &quot;<code>]]&gt;</code>&quot;, until the matching conditional
the "<code>[</code>" following the keyword, except conditional section starts
"<code>&lt;![</code>" and ends "<code>]]&gt;</code>", until the matching conditional
section end is found. Parameter entity references are not recognized in this
process.</span></p>
<p>If the keyword of the conditional section is a parameter-entity reference,
@ -1319,10 +1319,10 @@ set, for example one not directly accessible from available input devices.]</p>
<div class="constraint"><p class="prefix"><a name="wf-Legalchar"></a><b>Well-formedness constraint: Legal Character</b></p><p>Characters referred
to using character references must match the production for <a title="" href="#NT-Char">Char</a>.</p>
</div>
<p>If the character reference begins with &quot;<code>&amp;#x</code>&quot;,
<p>If the character reference begins with "<code>&amp;#x</code>",
the digits and letters up to the terminating <code>;</code> provide a hexadecimal
representation of the character's code point in ISO/IEC 10646. If it begins
just with &quot;<code>&amp;#</code>&quot;, the digits up to the terminating <code>;</code>
just with "<code>&amp;#</code>", the digits up to the terminating <code>;</code>
provide a decimal representation of the character's code point.</p>
<p>[<a name="dt-entref" title="Entity Reference">Definition</a>: An <b>entity reference</b>
refers to the content of a named entity.] [<a name="dt-GERef" title="General Entity Reference">Definition</a>: References to parsed general entities use
@ -1332,7 +1332,7 @@ use percent-sign (<code>%</code>) and semicolon (<code>;</code>) as delimiters.]
<h5>Entity Reference</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-Reference"></a>[67]<5D><><EFBFBD></td><td><code>Reference</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-EntityRef">EntityRef</a> | <a href="#NT-CharRef">CharRef</a></code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-EntityRef"></a>[68]<5D><><EFBFBD></td><td><code>EntityRef</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&amp;' <a href="#NT-Name">Name</a> ';'</code></td><xsltdebug></xsltdebug><td><a href="#wf-entdeclared">[WFC: Entity Declared]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#vc-entdeclared">[VC: Entity Declared]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#textent">[WFC: Parsed Entity]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#norecursion">[WFC: No Recursion]</a></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PEReference"></a>[69]<5D><><EFBFBD></td><td><code>PEReference</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'%' <a href="#NT-Name">Name</a> ';'</code></td><xsltdebug></xsltdebug><td><a href="#vc-entdeclared">[VC: Entity Declared]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#norecursion">[WFC: No Recursion]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#indtd">[WFC: In DTD]</a></td></tr></tbody></table>
<div class="constraint"><p class="prefix"><a name="wf-entdeclared"></a><b>Well-formedness constraint: Entity Declared</b></p><p>In a document
without any DTD, a document with only an internal DTD subset which contains
no parameter entity references, or a document with &quot;<code>standalone='yes'</code>&quot;, <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E34">[E34]</a>for
no parameter entity references, or a document with "<code>standalone='yes'</code>", <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E34">[E34]</a>for
an entity reference that does not occur within the external subset or a parameter
entity, the <a href="#NT-Name">Name</a> given in the entity reference must <a title="match" href="#dt-match">match</a> that in an <a href="#sec-entity-decl"><cite>entity
declaration</cite></a> that does not occur within the external subset or a
@ -1352,7 +1352,7 @@ the rule that an entity must be declared is a well-formedness constraint only
if <a href="#sec-rmd"><cite>standalone='yes'</cite></a>.</p>
</div>
<div class="constraint"><p class="prefix"><a name="vc-entdeclared"></a><b>Validity constraint: Entity Declared</b></p><p>In a document with
an external subset or external parameter entities with &quot;<code>standalone='no'</code>&quot;,
an external subset or external parameter entities with "<code>standalone='no'</code>",
the <a href="#NT-Name">Name</a> given in the entity reference must <a title="match" href="#dt-match">match</a> that in an <a href="#sec-entity-decl"><cite>entity
declaration</cite></a>. For interoperability, valid documents should declare
the entities <code>amp</code>,
@ -1382,9 +1382,9 @@ only appear in the <a title="Document Type Declaration" href="#dt-doctype">DTD</
This document was prepared on &amp;docdate; and
is classified &amp;security-level;.</pre></td></tr></table>
<p>Example of a parameter-entity reference:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!-- declare the parameter entity &quot;ISOLat2&quot;... --&gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!-- declare the parameter entity "ISOLat2"... --&gt;
&lt;!ENTITY % ISOLat2
SYSTEM &quot;http://www.xml.com/iso/isolat2-xml.entities&quot; &gt;
SYSTEM "http://www.xml.com/iso/isolat2-xml.entities" &gt;
&lt;!-- ... now reference it. --&gt;
%ISOLat2;</pre></td></tr></table>
</div>
@ -1419,8 +1419,8 @@ Note that some processing of entity and character references in the <a title="Li
the correct <a title="Replacement Text" href="#dt-repltext">replacement text</a>: see <a href="#intern-replacement"><b>4.5 Construction of Internal Entity Replacement Text</b></a>.</p>
<p>An internal entity is a <a title="Text Entity" href="#dt-parsedent">parsed entity</a>.</p>
<p>Example of an internal entity declaration:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY Pub-Status &quot;This is a pre-release of the
specification.&quot;&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY Pub-Status "This is a pre-release of the
specification."&gt;</pre></td></tr></table>
</div>
<div class="div3">
@ -1475,12 +1475,12 @@ single space characters (#x20), and leading and trailing white space must
be removed.</p>
<p>Examples of external entity declarations:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY open-hatch
SYSTEM &quot;http://www.textuality.com/boilerplate/OpenHatch.xml&quot;&gt;
SYSTEM "http://www.textuality.com/boilerplate/OpenHatch.xml"&gt;
&lt;!ENTITY open-hatch
PUBLIC &quot;-//Textuality//TEXT Standard open-hatch boilerplate//EN&quot;
&quot;http://www.textuality.com/boilerplate/OpenHatch.xml&quot;&gt;
PUBLIC "-//Textuality//TEXT Standard open-hatch boilerplate//EN"
"http://www.textuality.com/boilerplate/OpenHatch.xml"&gt;
&lt;!ENTITY hatch-pic
SYSTEM &quot;../grafix/OpenHatch.gif&quot;
SYSTEM "../grafix/OpenHatch.gif"
NDATA gif &gt;</pre></td></tr></table>
</div>
</div>
@ -1522,8 +1522,8 @@ can begin in one entity and end in another.</p>
<h4><a name="charencoding"></a>4.3.3 Character Encoding in Entities</h4>
<p>Each external parsed entity in an XML document may use a different encoding
for its characters. All XML processors must be able to read entities in <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E56">[E56]</a>both
the UTF-8 and UTF-16 encodings.</span> <span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E77">[E77]</a>The terms &quot;UTF-8&quot;
and &quot;UTF-16&quot; in this specification do not apply to character
the UTF-8 and UTF-16 encodings.</span> <span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E77">[E77]</a>The terms "UTF-8"
and "UTF-16" in this specification do not apply to character
encodings with any other labels, even if the encodings or labels are very
similar to UTF-8 or UTF-16.</span></p>
<p>Entities encoded in UTF-16 must begin with the Byte Order Mark described
@ -1544,25 +1544,25 @@ must begin with a text declaration <span class="diff-add">(see <a href="#sec-Tex
an encoding declaration:</p>
<h5>Encoding Declaration</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-EncodingDecl"></a>[80]<5D><><EFBFBD></td><td><code>EncodingDecl</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-S">S</a> 'encoding' <a href="#NT-Eq">Eq</a>
('&quot;' <a href="#NT-EncName">EncName</a> '&quot;' | &quot;'&quot; <a href="#NT-EncName">EncName</a>
&quot;'&quot; ) </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-EncName"></a>[81]<5D><><EFBFBD></td><td><code>EncName</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>[A-Za-z] ([A-Za-z0-9._] | '-')*</code></td><xsltdebug></xsltdebug><td><i>/* Encoding
('"' <a href="#NT-EncName">EncName</a> '"' | "'" <a href="#NT-EncName">EncName</a>
"'" ) </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-EncName"></a>[81]<5D><><EFBFBD></td><td><code>EncName</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>[A-Za-z] ([A-Za-z0-9._] | '-')*</code></td><xsltdebug></xsltdebug><td><i>/* Encoding
name contains only Latin characters */</i></td></tr></tbody></table>
<p>In the <a title="Document Entity" href="#dt-docent">document entity</a>, the encoding
declaration is part of the <a title="XML Declaration" href="#dt-xmldecl">XML declaration</a>.
The <a href="#NT-EncName">EncName</a> is the name of the encoding used.</p>
<p>In an encoding declaration, the values &quot;<code>UTF-8</code>&quot;, &quot;<code>UTF-16</code>&quot;, &quot;<code>ISO-10646-UCS-2</code>&quot;, and &quot;<code>ISO-10646-UCS-4</code>&quot; should be used
<p>In an encoding declaration, the values "<code>UTF-8</code>", "<code>UTF-16</code>", "<code>ISO-10646-UCS-2</code>", and "<code>ISO-10646-UCS-4</code>" should be used
for the various encodings and transformations of Unicode / ISO/IEC 10646,
the values &quot;<code>ISO-8859-1</code>&quot;, &quot;<code>ISO-8859-2</code>&quot;,
... <a href="http://www.w3.org/XML/xml-19980210-errata#E106">[E106]</a><span class="diff-chg">&quot;<code>ISO-8859-</code><var>n</var>&quot; (where <var>n</var>
the values "<code>ISO-8859-1</code>", "<code>ISO-8859-2</code>",
... <a href="http://www.w3.org/XML/xml-19980210-errata#E106">[E106]</a><span class="diff-chg">"<code>ISO-8859-</code><var>n</var>" (where <var>n</var>
is the part number)</span> should be used for the parts of ISO 8859, and
the values &quot;<code>ISO-2022-JP</code>&quot;, &quot;<code>Shift_JIS</code>&quot;,
and &quot;<code>EUC-JP</code>&quot; should be used for the various encoded
the values "<code>ISO-2022-JP</code>", "<code>Shift_JIS</code>",
and "<code>EUC-JP</code>" should be used for the various encoded
forms of JIS X-0208-1997. <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E57">[E57]</a>It
is recommended that character encodings registered (as <em>charset</em>s)
with the Internet Assigned Numbers Authority <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E58">[E58]</a><a href="#IANA">[IANA-CHARSETS]</a></span>,
other than those just listed, be referred to using their registered names;
other encodings should use names starting with an &quot;x-&quot; prefix.
other encodings should use names starting with an "x-" prefix.
XML processors should match character encoding names in a case-insensitive
way and should either interpret an IANA-registered name as the encoding registered
at IANA for that name or treat it as unknown (processors are, of course, not
@ -1674,8 +1674,8 @@ the replacement text of entities used to escape markup delimiters (the entities
<code>gt</code>,
<code>apos</code>,
<code>quot</code>)
is always treated as data</span>. (The string &quot;<code>AT&amp;amp;T;</code>&quot;
expands to &quot;<code>AT&amp;T;</code>&quot; and the remaining ampersand
is always treated as data</span>. (The string "<code>AT&amp;amp;T;</code>"
expands to "<code>AT&amp;T;</code>" and the remaining ampersand
is not recognized as an entity-reference delimiter.) A character reference
is <b>included</b> when the indicated character is processed in place
of the reference itself. </p>
@ -1723,10 +1723,10 @@ the location the reference was recognized, except that a single or double
quote character in the replacement text is always treated as a normal data
character and will not terminate the literal. For example, this is well-formed:</p>
<div class="diff-chg"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td class="diff-chg"><pre>&lt;!-- <a href="http://www.w3.org/XML/xml-19980210-errata#E4">[E4]</a> --&gt;
&lt;!ENTITY % YN '&quot;Yes&quot;' &gt;
&lt;!ENTITY WhatHeSaid &quot;He said %YN;&quot; &gt;</pre></td></tr></table></div>
&lt;!ENTITY % YN '"Yes"' &gt;
&lt;!ENTITY WhatHeSaid "He said %YN;" &gt;</pre></td></tr></table></div>
<p>while this is not:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY EndAttr &quot;27'&quot; &gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY EndAttr "27'" &gt;
&lt;element attribute='a-&amp;EndAttr;&gt;</pre></td></tr></table>
</div>
<div class="div3">
@ -1773,16 +1773,16 @@ text</em> of any parameter entities referred to, and must contain the character
referred to, in place of any character references in the literal entity value;
however, general-entity references must be left as-is, unexpanded. For example,
given the following declarations:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY % pub &quot;&amp;#xc9;ditions Gallimard&quot; &gt;
&lt;!ENTITY rights &quot;All rights reserved&quot; &gt;
&lt;!ENTITY book &quot;La Peste: Albert Camus,
&amp;#xA9; 1947 %pub;. &amp;rights;&quot; &gt;</pre></td></tr></table>
<p>then the replacement text for the entity &quot;<code>book</code>&quot;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY % pub "&amp;#xc9;ditions Gallimard" &gt;
&lt;!ENTITY rights "All rights reserved" &gt;
&lt;!ENTITY book "La Peste: Albert Camus,
&amp;#xA9; 1947 %pub;. &amp;rights;" &gt;</pre></td></tr></table>
<p>then the replacement text for the entity "<code>book</code>"
is:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>La Peste: Albert Camus,
<EFBFBD> 1947 <20>ditions Gallimard. &amp;rights;</pre></td></tr></table>
<p>The general-entity reference &quot;<code>&amp;rights;</code>&quot; would
be expanded should the reference &quot;<code>&amp;book;</code>&quot; appear
<p>The general-entity reference "<code>&amp;rights;</code>" would
be expanded should the reference "<code>&amp;book;</code>" appear
in the document's content or an attribute value.</p>
<p>These simple rules may have complex interactions; for a detailed discussion
of a difficult example, see <a href="#sec-entexpand"><b>D Expansion of Entity and Character References</b></a>.</p>
@ -1799,7 +1799,7 @@ other delimiters. A set of general entities (<code>amp</code>,
<code>quot</code>) is specified for
this purpose. Numeric character references may also be used; they are expanded
immediately when recognized and must be treated as character data, so the
numeric character references &quot;<code>&amp;#60;</code>&quot; and &quot;<code>&amp;#38;</code>&quot;
numeric character references "<code>&amp;#60;</code>" and "<code>&amp;#38;</code>"
may be used to escape <code>&lt;</code> and <code>&amp;</code> when they occur
in character data.]</p>
<p>All XML processors must recognize these entities whether they are declared
@ -1815,13 +1815,13 @@ or <code>quot</code> are declared, they must be declared as internal entities
whose replacement text is the single character being escaped (or a character
reference to that character; the double escaping here is unnecessary but harmless).
For example:</span></p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY lt &quot;&amp;#38;#60;&quot;&gt;
&lt;!ENTITY gt &quot;&amp;#62;&quot;&gt;
&lt;!ENTITY amp &quot;&amp;#38;#38;&quot;&gt;
&lt;!ENTITY apos &quot;&amp;#39;&quot;&gt;
&lt;!ENTITY quot &quot;&amp;#34;&quot;&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY lt "&amp;#38;#60;"&gt;
&lt;!ENTITY gt "&amp;#62;"&gt;
&lt;!ENTITY amp "&amp;#38;#38;"&gt;
&lt;!ENTITY apos "&amp;#39;"&gt;
&lt;!ENTITY quot "&amp;#34;"&gt;</pre></td></tr></table>
<div class="diff-del"><p>Note that the <code>&lt;</code> and <code>&amp;</code> characters
in the declarations of &quot;<code>lt</code>&quot; and &quot;<code>amp</code>&quot;
in the declarations of "<code>lt</code>" and "<code>amp</code>"
are doubly escaped to meet the requirement that entity replacement be well-formed.</p></div>
</div>
<div class="div2">
@ -1890,7 +1890,7 @@ they do <em>not</em> read; that is to say, they must use the information
in those declarations to <a href="#AVNormalize"><cite>normalize</cite></a>
attribute values, <a href="#included"><cite>include</cite></a> the replacement
text of internal entities, and supply <a href="#sec-attr-defaults"><cite>default
attribute values</cite></a>.] <span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E33">[E33]</a>Except when <code>standalone=&quot;yes&quot;</code>, </span>they
attribute values</cite></a>.] <span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E33">[E33]</a>Except when <code>standalone="yes"</code>, </span>they
must not <a title="Process Declarations" href="#dt-use-mdecl">process</a> <a title="entity declaration" href="#dt-entdecl">entity
declarations</a> or <a title="Attribute-List Declaration" href="#dt-attdecl">attribute-list declarations</a>
encountered after a reference to a parameter entity that is not read, since
@ -1964,7 +1964,7 @@ indicated.</p>
<p>matches any <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E93">[E93]</a><a href="#NT-Char">Char</a></span> with a value not among the characters given. <span class="diff-add"><a href="http://www.w3.org/XML/xml-19980210-errata#E3">[E3]</a>Enumerations
and ranges of forbidden values can be mixed in one set of brackets.</span></p>
</dd>
<dt class="label"><code>&quot;string&quot;</code></dt>
<dt class="label"><code>"string"</code></dt>
<dd>
<p>matches a literal string <a title="match" href="#dt-match">matching</a> that
given inside the double quotes.</p>
@ -2253,8 +2253,8 @@ the categories Mc, Me, Mn, Lm, or Nd.</p></li>
<li><p>Characters in the compatibility area (i.e. with character code greater
than #xF900 and less than #xFFFE) are not allowed in XML names.</p></li>
<li><p>Characters which have a font or compatibility decomposition (i.e.
those with a &quot;compatibility formatting tag&quot; in field 5 of the
database -- marked by field 5 beginning with a &quot;&lt;&quot;) are not
those with a "compatibility formatting tag" in field 5 of the
database -- marked by field 5 beginning with a "&lt;") are not
allowed.</p></li>
<li><p>The following characters are treated as name-start characters rather
than name characters, because the property file classifies them as Alphabetic:
@ -2284,16 +2284,16 @@ restrictions that XML places on documents beyond those of SGML, see <a href="#Cl
<p>This appendix contains some examples illustrating the sequence of entity-
and character-reference recognition and expansion, as specified in <a href="#entproc"><b>4.4 XML Processor Treatment of Entities and References</b></a>.</p>
<p>If the DTD contains the declaration</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY example &quot;&lt;p&gt;An ampersand (&amp;#38;#38;) may be escaped
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY example "&lt;p&gt;An ampersand (&amp;#38;#38;) may be escaped
numerically (&amp;#38;#38;#38;) or with a general entity
(&amp;amp;amp;).&lt;/p&gt;&quot; &gt;</pre></td></tr></table>
(&amp;amp;amp;).&lt;/p&gt;" &gt;</pre></td></tr></table>
<p>then the XML processor will recognize the character references when it
parses the entity declaration, and resolve them before storing the following
string as the value of the entity &quot;<code>example</code>&quot;:</p>
string as the value of the entity "<code>example</code>":</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;p&gt;An ampersand (&amp;#38;) may be escaped
numerically (&amp;#38;#38;) or with a general entity
(&amp;amp;amp;).&lt;/p&gt;</pre></td></tr></table>
<p>A reference in the document to &quot;<code>&amp;example;</code>&quot;
<p>A reference in the document to "<code>&amp;example;</code>"
will cause the text to be reparsed, at which time the start- and end-tags
of the <code>p</code> element will be recognized and the three references will
be recognized and expanded, resulting in a <code>p</code> element with the following
@ -2307,30 +2307,30 @@ In the following example, the line numbers are solely for reference.</p>
2 &lt;!DOCTYPE test [
3 &lt;!ELEMENT test (#PCDATA) &gt;
4 &lt;!ENTITY % xx '&amp;#37;zz;'&gt;
5 &lt;!ENTITY % zz '&amp;#60;!ENTITY tricky &quot;error-prone&quot; &gt;' &gt;
5 &lt;!ENTITY % zz '&amp;#60;!ENTITY tricky "error-prone" &gt;' &gt;
6 %xx;
7 ]&gt;
8 &lt;test&gt;This sample shows a &amp;tricky; method.&lt;/test&gt;</pre></td></tr></table>
<p>This produces the following:</p>
<ul>
<li><p>in line 4, the reference to character 37 is expanded immediately,
and the parameter entity &quot;<code>xx</code>&quot; is stored in the symbol
table with the value &quot;<code>%zz;</code>&quot;. Since the replacement
text is not rescanned, the reference to parameter entity &quot;<code>zz</code>&quot;
is not recognized. (And it would be an error if it were, since &quot;<code>zz</code>&quot;
and the parameter entity "<code>xx</code>" is stored in the symbol
table with the value "<code>%zz;</code>". Since the replacement
text is not rescanned, the reference to parameter entity "<code>zz</code>"
is not recognized. (And it would be an error if it were, since "<code>zz</code>"
is not yet declared.)</p></li>
<li><p>in line 5, the character reference &quot;<code>&amp;#60;</code>&quot;
is expanded immediately and the parameter entity &quot;<code>zz</code>&quot;
is stored with the replacement text &quot;<code>&lt;!ENTITY tricky &quot;error-prone&quot;
&gt;</code>&quot;, which is a well-formed entity declaration.</p></li>
<li><p>in line 6, the reference to &quot;<code>xx</code>&quot; is recognized,
and the replacement text of &quot;<code>xx</code>&quot; (namely &quot;<code>%zz;</code>&quot;)
is parsed. The reference to &quot;<code>zz</code>&quot; is recognized in
its turn, and its replacement text (&quot;<code>&lt;!ENTITY tricky &quot;error-prone&quot;
&gt;</code>&quot;) is parsed. The general entity &quot;<code>tricky</code>&quot;
has now been declared, with the replacement text &quot;<code>error-prone</code>&quot;.</p>
<li><p>in line 5, the character reference "<code>&amp;#60;</code>"
is expanded immediately and the parameter entity "<code>zz</code>"
is stored with the replacement text "<code>&lt;!ENTITY tricky "error-prone"
&gt;</code>", which is a well-formed entity declaration.</p></li>
<li><p>in line 6, the reference to "<code>xx</code>" is recognized,
and the replacement text of "<code>xx</code>" (namely "<code>%zz;</code>")
is parsed. The reference to "<code>zz</code>" is recognized in
its turn, and its replacement text ("<code>&lt;!ENTITY tricky "error-prone"
&gt;</code>") is parsed. The general entity "<code>tricky</code>"
has now been declared, with the replacement text "<code>error-prone</code>".</p>
</li>
<li><p>in line 8, the reference to the general entity &quot;<code>tricky</code>&quot;
<li><p>in line 8, the reference to the general entity "<code>tricky</code>"
is recognized, and it is expanded, so the full content of the <code>test</code>
element is the self-describing (and ungrammatical) string <em>This sample
shows a error-prone method.</em></p></li>
@ -2342,7 +2342,7 @@ shows a error-prone method.</em></p></li>
<p><span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E102">[E102]</a>As
noted in <a href="#sec-element-content"><b>3.2.1 Element Content</b></a>, it is required that content
models in element type declarations be deterministic. This requirement is <a title="For Compatibility" href="#dt-compat">for compatibility</a> with SGML (which calls deterministic
content models &quot;unambiguous&quot;);</span> XML processors built
content models "unambiguous");</span> XML processors built
using SGML systems may flag non-deterministic content models as errors.</p>
<p>For example, the content model <code>((b, c) | (b, d))</code> is non-deterministic,
because given an initial <code>b</code> the <span class="diff-chg"><a href="http://www.w3.org/XML/xml-19980210-errata#E95">[E95]</a>XML processor</span>
@ -2390,9 +2390,9 @@ encoding information and </span>not in UTF-8 or UTF-16 <span class="diff-chg">en
begin with an XML encoding declaration, in which the first characters must
be '<code>&lt;?xml</code>', any conforming processor can detect, after two
to four octets of input, which of the following cases apply. In reading this
list, it may help to know that in UCS-4, '&lt;' is &quot;<code>#x0000003C</code>&quot;
and '?' is &quot;<code>#x0000003F</code>&quot;, and the Byte Order Mark
required of UTF-16 data streams is &quot;<code>#xFEFF</code>&quot;. <span class="diff-add">The notation <var>##</var> is used to denote any byte value except <span class="diff-chg">that two consecutive <var>##</var>s cannot be both 00</span>.</span></p>
list, it may help to know that in UCS-4, '&lt;' is "<code>#x0000003C</code>"
and '?' is "<code>#x0000003F</code>", and the Byte Order Mark
required of UTF-16 data streams is "<code>#xFEFF</code>". <span class="diff-add">The notation <var>##</var> is used to denote any byte value except <span class="diff-chg">that two consecutive <var>##</var>s cannot be both 00</span>.</span></p>
<div class="diff-add"><p>With a Byte Order Mark:</p></div>
<div class="diff-add"><table border="1" frame="border"><tbody><tr><td colspan="1" rowspan="1"><code>00 00 FE
FF</code></td><td colspan="1" rowspan="1">UCS-4, big-endian machine (1234 order)</td></tr><tr><td colspan="1" rowspan="1"><code>FF
@ -2574,7 +2574,7 @@ Contact</i>) </li>
</div></div>
<div class="diff-add"><div class="div1">
<h2><a name="id2676581"></a>I Production Notes (Non-Normative)</h2>
<h2><a name="id2681697"></a>I Production Notes (Non-Normative)</h2>
<p>This Second Edition was encoded in the <a href="http://www.w3.org/XML/1998/06/xmlspec-v21.dtd">XMLspec
DTD</a> (which has <a href="http://www.w3.org/XML/1998/06/xmlspec-report-v21.htm">documentation</a>
available). The HTML versions were produced with a combination of the <a href="http://www.w3.org/XML/1998/06/xmlspec.xsl">xmlspec.xsl</a>, <a href="http://www.w3.org/XML/1998/06/diffspec.xsl">diffspec.xsl</a>,

View File

@ -65,7 +65,7 @@ be contacted at <a href="mailto:cmsmcq@w3.org">cmsmcq@w3.org</a>.</p>
<h2><a name="contents">Table of Contents</a></h2><p class="toc">1 <a href="#sec-intro">Introduction</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1.1 <a href="#sec-origin-goals">Origin and Goals</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1.2 <a href="#sec-terminology">Terminology</a><br>2 <a href="#sec-documents">Documents</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.1 <a href="#sec-well-formed">Well-Formed XML Documents</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.2 <a href="#charsets">Characters</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.3 <a href="#sec-common-syn">Common Syntactic Constructs</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.4 <a href="#syntax">Character Data and Markup</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.5 <a href="#sec-comments">Comments</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.6 <a href="#sec-pi">Processing Instructions</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.7 <a href="#sec-cdata-sect">CDATA Sections</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.8 <a href="#sec-prolog-dtd">Prolog and Document Type Declaration</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.9 <a href="#sec-rmd">Standalone Document Declaration</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.10 <a href="#sec-white-space">White Space Handling</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.11 <a href="#sec-line-ends">End-of-Line Handling</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.12 <a href="#sec-lang-tag">Language Identification</a><br>3 <a href="#sec-logical-struct">Logical Structures</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.1 <a href="#sec-starttags">Start-Tags, End-Tags, and Empty-Element Tags</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.2 <a href="#elemdecls">Element Type Declarations</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.2.1 <a href="#sec-element-content">Element Content</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.2.2 <a href="#sec-mixed-content">Mixed Content</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.3 <a href="#attdecls">Attribute-List Declarations</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.3.1 <a href="#sec-attribute-types">Attribute Types</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.3.2 <a href="#sec-attr-defaults">Attribute Defaults</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.3.3 <a href="#AVNormalize">Attribute-Value
Normalization</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3.4 <a href="#sec-condition-sect">Conditional Sections</a><br>4 <a href="#sec-physical-struct">Physical Structures</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.1 <a href="#sec-references">Character and Entity References</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.2 <a href="#sec-entity-decl">Entity Declarations</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.2.1 <a href="#sec-internal-ent">Internal Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.2.2 <a href="#sec-external-ent">External Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.3 <a href="#TextEntities">Parsed Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.3.1 <a href="#sec-TextDecl">The Text Declaration</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.3.2 <a href="#wf-entities">Well-Formed Parsed Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.3.3 <a href="#charencoding">Character Encoding in Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4 <a href="#entproc">XML Processor Treatment of Entities and References</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.1 <a href="#not-recognized">Not Recognized</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.2 <a href="#included">Included</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.3 <a href="#include-if-valid">Included If Validating</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.4 <a href="#forbidden">Forbidden</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.5 <a href="#inliteral">Included in Literal</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.6 <a href="#notify">Notify</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.7 <a href="#bypass">Bypassed</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.4.8 <a href="#as-PE">Included as PE</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.5 <a href="#intern-replacement">Construction of Internal Entity Replacement Text</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.6 <a href="#sec-predefined-ent">Predefined Entities</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.7 <a href="#Notations">Notation Declarations</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4.8 <a href="#sec-doc-entity">Document Entity</a><br>5 <a href="#sec-conformance">Conformance</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5.1 <a href="#proc-types">Validating and Non-Validating Processors</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5.2 <a href="#safe-behavior">Using XML Processors</a><br>6 <a href="#sec-notation">Notation</a><br></p>
<h3>Appendices</h3><p class="toc">A <a href="#sec-bibliography">References</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A.1 <a href="#sec-existing-stds">Normative References</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A.2 <a href="#null">Other References</a><br>B <a href="#CharClasses">Character Classes</a><br>C <a href="#sec-xml-and-sgml">XML and SGML</a> (Non-Normative)<br>D <a href="#sec-entexpand">Expansion of Entity and Character References</a> (Non-Normative)<br>E <a href="#determinism">Deterministic Content Models</a> (Non-Normative)<br>F <a href="#sec-guessing">Autodetection
of Character Encodings</a> (Non-Normative)<br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F.1 <a href="#sec-guessing-no-ext-info">Detection Without External Encoding Information</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F.2 <a href="#sec-guessing-with-ext-info">Priorities in the Presence of External Encoding Information</a><br>G <a href="#sec-xml-wg">W3C XML Working Group</a> (Non-Normative)<br>H <a href="#sec-core-wg">W3C XML Core Group</a> (Non-Normative)<br>I <a href="#id2676581">Production Notes</a> (Non-Normative)<br></p></div><hr><div class="body">
of Character Encodings</a> (Non-Normative)<br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F.1 <a href="#sec-guessing-no-ext-info">Detection Without External Encoding Information</a><br><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F.2 <a href="#sec-guessing-with-ext-info">Priorities in the Presence of External Encoding Information</a><br>G <a href="#sec-xml-wg">W3C XML Working Group</a> (Non-Normative)<br>H <a href="#sec-core-wg">W3C XML Core Group</a> (Non-Normative)<br>I <a href="#id2681697">Production Notes</a> (Non-Normative)<br></p></div><hr><div class="body">
<div class="div1">
<h2><a name="sec-intro"></a>1 Introduction</h2>
@ -213,7 +213,7 @@ be <a title="Validity" href="#dt-valid">valid</a> if it meets certain further co
<p>Each XML document has both a logical and a physical structure. Physically,
the document is composed of units called <a title="Entity" href="#dt-entity">entities</a>.
An entity may <a title="Entity Reference" href="#dt-entref">refer</a> to other entities to
cause their inclusion in the document. A document begins in a &quot;root&quot;
cause their inclusion in the document. A document begins in a "root"
or <a title="Document Entity" href="#dt-docent">document entity</a>. Logically, the document
is composed of declarations, elements, comments, character references, and
processing instructions, all of which are indicated in the document by explicit
@ -268,7 +268,7 @@ versions of these standards cited in <a href="#sec-existing-stds"><b>A.1 Normati
current at the time this document was prepared. New characters may be added
to these standards by amendments or new editions. Consequently, XML processors
must accept any character in the range specified for <a href="#NT-Char">Char</a>.
The use of &quot;compatibility characters&quot;, as defined in section
The use of "compatibility characters", as defined in section
6.8 of <a href="#Unicode">[Unicode]</a> (see
also D21 in section 3.6 of <a href="#Unicode3">[Unicode3]</a>), is discouraged.]</p>
@ -299,7 +299,7 @@ are given in <a href="#CharClasses"><b>B Character Classes</b></a>.</p>
<p>[<a name="dt-name" title="Name">Definition</a>: A <b>Name</b> is a token beginning
with a letter or one of a few punctuation characters, and continuing with
letters, digits, hyphens, underscores, colons, or full stops, together known
as name characters.] Names beginning with the string &quot;<code>xml</code>&quot;,
as name characters.] Names beginning with the string "<code>xml</code>",
or any string which would match <code>(('X'|'x') ('M'|'m') ('L'|'l'))</code>,
are reserved for standardization in this or future versions of this specification.</p>
<div class="note"><p class="prefix"><b>Note:</b></p>
@ -321,16 +321,16 @@ of attributes (<a href="#NT-AttValue">AttValue</a>), and external identifiers
(<a href="#NT-SystemLiteral">SystemLiteral</a>). Note that a <a href="#NT-SystemLiteral">SystemLiteral</a>
can be parsed without scanning for markup.</p>
<h5>Literals</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-EntityValue"></a>[9]<5D><><EFBFBD></td><td><code>EntityValue</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&quot;' ([^%&amp;&quot;] | <a href="#NT-PEReference">PEReference</a>
| <a href="#NT-Reference">Reference</a>)* '&quot;' </code></td><xsltdebug></xsltdebug></tr><tr valign="baseline"><td></td><td></td><td></td><td><code>|<7C> &quot;'&quot; ([^%&amp;'] | <a href="#NT-PEReference">PEReference</a> | <a href="#NT-Reference">Reference</a>)* &quot;'&quot;</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-AttValue"></a>[10]<5D><><EFBFBD></td><td><code>AttValue</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&quot;' ([^&lt;&amp;&quot;] | <a href="#NT-Reference">Reference</a>)*
'&quot;' </code></td><xsltdebug></xsltdebug></tr><tr valign="baseline"><td></td><td></td><td></td><td><code>|<7C> &quot;'&quot; ([^&lt;&amp;'] | <a href="#NT-Reference">Reference</a>)*
&quot;'&quot;</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-SystemLiteral"></a>[11]<5D><><EFBFBD></td><td><code>SystemLiteral</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>('&quot;' [^&quot;]* '&quot;') |<7C>(&quot;'&quot; [^']* &quot;'&quot;) </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PubidLiteral"></a>[12]<5D><><EFBFBD></td><td><code>PubidLiteral</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&quot;' <a href="#NT-PubidChar">PubidChar</a>* '&quot;'
| &quot;'&quot; (<a href="#NT-PubidChar">PubidChar</a> - &quot;'&quot;)* &quot;'&quot;</code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PubidChar"></a>[13]<5D><><EFBFBD></td><td><code>PubidChar</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>#x20 | #xD | #xA |<7C>[a-zA-Z0-9] |<7C>[-'()+,./:=?;!*#@$_%]</code></td><xsltdebug></xsltdebug></tr></tbody></table>
<h5>Literals</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-EntityValue"></a>[9]<5D><><EFBFBD></td><td><code>EntityValue</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'"' ([^%&amp;"] | <a href="#NT-PEReference">PEReference</a>
| <a href="#NT-Reference">Reference</a>)* '"' </code></td><xsltdebug></xsltdebug></tr><tr valign="baseline"><td></td><td></td><td></td><td><code>|<7C> "'" ([^%&amp;'] | <a href="#NT-PEReference">PEReference</a> | <a href="#NT-Reference">Reference</a>)* "'"</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-AttValue"></a>[10]<5D><><EFBFBD></td><td><code>AttValue</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'"' ([^&lt;&amp;"] | <a href="#NT-Reference">Reference</a>)*
'"' </code></td><xsltdebug></xsltdebug></tr><tr valign="baseline"><td></td><td></td><td></td><td><code>|<7C> "'" ([^&lt;&amp;'] | <a href="#NT-Reference">Reference</a>)*
"'"</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-SystemLiteral"></a>[11]<5D><><EFBFBD></td><td><code>SystemLiteral</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>('"' [^"]* '"') |<7C>("'" [^']* "'") </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PubidLiteral"></a>[12]<5D><><EFBFBD></td><td><code>PubidLiteral</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'"' <a href="#NT-PubidChar">PubidChar</a>* '"'
| "'" (<a href="#NT-PubidChar">PubidChar</a> - "'")* "'"</code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PubidChar"></a>[13]<5D><><EFBFBD></td><td><code>PubidChar</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>#x20 | #xD | #xA |<7C>[a-zA-Z0-9] |<7C>[-'()+,./:=?;!*#@$_%]</code></td><xsltdebug></xsltdebug></tr></tbody></table>
<div class="note"><p class="prefix"><b>Note:</b></p>
<p>Although
the <a href="#NT-EntityValue">EntityValue</a> production allows the definition
of an entity consisting of a single explicit <code>&lt;</code> in the literal
(e.g., <code>&lt;!ENTITY mylt &quot;&lt;&quot;&gt;</code>), it is strongly advised to avoid
(e.g., <code>&lt;!ENTITY mylt "&lt;"&gt;</code>), it is strongly advised to avoid
this practice since any reference to that entity will cause a well-formedness
error.</p>
</div>
@ -351,20 +351,20 @@ within a <a title="Comment" href="#dt-comment">comment</a>, a <a title="Processi
instruction</a>, or a <a title="CDATA Section" href="#dt-cdsection">CDATA section</a>.
If they are needed elsewhere, they must be <a title="escape" href="#dt-escape">escaped</a>
using either <a title="Character Reference" href="#dt-charref">numeric character references</a>
or the strings &quot;<code>&amp;amp;</code>&quot; and &quot;<code>&amp;lt;</code>&quot;
respectively. The right angle bracket (&gt;) may be represented using the string &quot;<code>&amp;gt;</code>&quot;,
or the strings "<code>&amp;amp;</code>" and "<code>&amp;lt;</code>"
respectively. The right angle bracket (&gt;) may be represented using the string "<code>&amp;gt;</code>",
and must, <a title="For Compatibility" href="#dt-compat">for compatibility</a>, be escaped
using &quot;<code>&amp;gt;</code>&quot; or a character reference when it
appears in the string &quot;<code>]]&gt;</code>&quot; in content, when
using "<code>&amp;gt;</code>" or a character reference when it
appears in the string "<code>]]&gt;</code>" in content, when
that string is not marking the end of a <a title="CDATA Section" href="#dt-cdsection">CDATA
section</a>.</p>
<p>In the content of elements, character data is any string of characters
which does not contain the start-delimiter of any markup. In a CDATA section,
character data is any string of characters not including the CDATA-section-close
delimiter, &quot;<code>]]&gt;</code>&quot;.</p>
delimiter, "<code>]]&gt;</code>".</p>
<p>To allow attribute values to contain both single and double quotes, the
apostrophe or single-quote character (') may be represented as &quot;<code>&amp;apos;</code>&quot;,
and the double-quote character (&quot;) as &quot;<code>&amp;quot;</code>&quot;.</p>
apostrophe or single-quote character (') may be represented as "<code>&amp;apos;</code>",
and the double-quote character (") as "<code>&amp;quot;</code>".</p>
<h5>Character Data</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-CharData"></a>[14]<5D><><EFBFBD></td><td><code>CharData</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>[^&lt;&amp;]* - ([^&lt;&amp;]* ']]&gt;' [^&lt;&amp;]*)</code></td><xsltdebug></xsltdebug></tr></tbody></table>
</div>
@ -377,7 +377,7 @@ in addition, they may appear within the document type declaration at places
allowed by the grammar. They are not part of the document's <a title="Character Data" href="#dt-chardata">character
data</a>; an XML processor may, but need not, make it possible for an
application to retrieve the text of comments. <a title="For Compatibility" href="#dt-compat">For
compatibility</a>, the string &quot;<code>--</code>&quot; (double-hyphen)
compatibility</a>, the string "<code>--</code>" (double-hyphen)
must not occur within comments.] Parameter
entity references are not recognized within comments.</p>
@ -402,7 +402,7 @@ following example is <em>not</em> well-formed.</p>
<p>PIs are not part of the document's <a title="Character Data" href="#dt-chardata">character
data</a>, but must be passed through to the application. The PI begins
with a target (<a href="#NT-PITarget">PITarget</a>) used to identify the application
to which the instruction is directed. The target names &quot;<code>XML</code>&quot;, &quot;<code>xml</code>&quot;,
to which the instruction is directed. The target names "<code>XML</code>", "<code>xml</code>",
and so on are reserved for standardization in this or future versions of this
specification. The XML <a title="Notation" href="#dt-notation">Notation</a> mechanism
may be used for formal declaration of PI targets. Parameter
@ -414,17 +414,17 @@ entity references are not recognized within processing instructions.</p>
<p>[<a name="dt-cdsection" title="CDATA Section">Definition</a>: <b>CDATA sections</b>
may occur anywhere character data may occur; they are used to escape blocks
of text containing characters which would otherwise be recognized as markup.
CDATA sections begin with the string &quot;<code>&lt;![CDATA[</code>&quot;
and end with the string &quot;<code>]]&gt;</code>&quot;:]</p>
CDATA sections begin with the string "<code>&lt;![CDATA[</code>"
and end with the string "<code>]]&gt;</code>":]</p>
<h5>CDATA Sections</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-CDSect"></a>[18]<5D><><EFBFBD></td><td><code>CDSect</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-CDStart">CDStart</a> <a href="#NT-CData">CData</a> <a href="#NT-CDEnd">CDEnd</a></code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-CDStart"></a>[19]<5D><><EFBFBD></td><td><code>CDStart</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&lt;![CDATA['</code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-CData"></a>[20]<5D><><EFBFBD></td><td><code>CData</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>(<a href="#NT-Char">Char</a>* - (<a href="#NT-Char">Char</a>*
']]&gt;' <a href="#NT-Char">Char</a>*)) </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-CDEnd"></a>[21]<5D><><EFBFBD></td><td><code>CDEnd</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>']]&gt;'</code></td><xsltdebug></xsltdebug></tr></tbody></table>
<p>Within a CDATA section, only the <a href="#NT-CDEnd">CDEnd</a> string is
recognized as markup, so that left angle brackets and ampersands may occur
in their literal form; they need not (and cannot) be escaped using &quot;<code>&amp;lt;</code>&quot;
and &quot;<code>&amp;amp;</code>&quot;. CDATA sections cannot nest.</p>
<p>An example of a CDATA section, in which &quot;<code>&lt;greeting&gt;</code>&quot;
and &quot;<code>&lt;/greeting&gt;</code>&quot; are recognized as <a title="Character Data" href="#dt-chardata">character data</a>, not <a title="Markup" href="#dt-markup">markup</a>:</p>
in their literal form; they need not (and cannot) be escaped using "<code>&amp;lt;</code>"
and "<code>&amp;amp;</code>". CDATA sections cannot nest.</p>
<p>An example of a CDATA section, in which "<code>&lt;greeting&gt;</code>"
and "<code>&lt;/greeting&gt;</code>" are recognized as <a title="Character Data" href="#dt-chardata">character data</a>, not <a title="Markup" href="#dt-markup">markup</a>:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;![CDATA[&lt;greeting&gt;Hello, world!&lt;/greeting&gt;]]&gt; </pre></td></tr></table>
</div>
<div class="div2">
@ -433,14 +433,14 @@ and &quot;<code>&lt;/greeting&gt;</code>&quot; are recognized as <a title="Chara
<p>[<a name="dt-xmldecl" title="XML Declaration">Definition</a>: XML documents should
begin with an <b>XML declaration</b> which specifies the version of
XML being used.] For example, the following is a complete XML document, <a title="Well-Formed" href="#dt-wellformed">well-formed</a> but not <a title="Validity" href="#dt-valid">valid</a>:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version=&quot;1.0&quot;?&gt; &lt;greeting&gt;Hello, world!&lt;/greeting&gt; </pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version="1.0"?&gt; &lt;greeting&gt;Hello, world!&lt;/greeting&gt; </pre></td></tr></table>
<p>and so is this:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;greeting&gt;Hello, world!&lt;/greeting&gt;</pre></td></tr></table>
<p>The version number &quot;<code>1.0</code>&quot; should be used to indicate
<p>The version number "<code>1.0</code>" should be used to indicate
conformance to this version of this specification; it is an error for a document
to use the value &quot;<code>1.0</code>&quot; if it does not conform to
to use the value "<code>1.0</code>" if it does not conform to
this version of this specification. It is the intent of the XML working group
to give later versions of this specification numbers other than &quot;<code>1.0</code>&quot;,
to give later versions of this specification numbers other than "<code>1.0</code>",
but this intent does not indicate a commitment to produce any future versions
of XML, nor if any are produced, to use any particular numbering scheme. Since
future versions are not ruled out, this construct is provided as a means to
@ -462,8 +462,8 @@ in the document.</p>
(<a href="#NT-doctypedecl">doctypedecl</a> <a href="#NT-Misc">Misc</a>*)?</code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td><a name="NT-XMLDecl"></a>[23]<5D><><EFBFBD></td><td><code>XMLDecl</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&lt;?xml' <a href="#NT-VersionInfo">VersionInfo</a> <a href="#NT-EncodingDecl">EncodingDecl</a>? <a href="#NT-SDDecl">SDDecl</a>? <a href="#NT-S">S</a>? '?&gt;'</code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td><a name="NT-VersionInfo"></a>[24]<5D><><EFBFBD></td><td><code>VersionInfo</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-S">S</a> 'version' <a href="#NT-Eq">Eq</a>
(&quot;'&quot; <a href="#NT-VersionNum">VersionNum</a> &quot;'&quot; | '&quot;' <a href="#NT-VersionNum">VersionNum</a>
'&quot;')<i>/* */</i></code></td><xsltdebug></xsltdebug></tr>
("'" <a href="#NT-VersionNum">VersionNum</a> "'" | '"' <a href="#NT-VersionNum">VersionNum</a>
'"')<i>/* */</i></code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td><a name="NT-Eq"></a>[25]<5D><><EFBFBD></td><td><code>Eq</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-S">S</a>? '=' <a href="#NT-S">S</a>?</code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td><a name="NT-VersionNum"></a>[26]<5D><><EFBFBD></td><td><code>VersionNum</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>([a-zA-Z0-9_.:] | '-')+</code></td><xsltdebug></xsltdebug></tr>
<tr valign="baseline"><td><a name="NT-Misc"></a>[27]<5D><><EFBFBD></td><td><code>Misc</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-Comment">Comment</a> | <a href="#NT-PI">PI</a>
@ -549,12 +549,12 @@ internal subset in that in them, <a title="Parameter-entity reference" href="#dt
references</a> are permitted <em>within</em> markup declarations,
not only <em>between</em> markup declarations.</p>
<p>An example of an XML document with a document type declaration:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version=&quot;1.0&quot;?&gt; &lt;!DOCTYPE greeting SYSTEM &quot;hello.dtd&quot;&gt; &lt;greeting&gt;Hello, world!&lt;/greeting&gt; </pre></td></tr></table>
<p>The <a title="System Identifier" href="#dt-sysid">system identifier</a> &quot;<code>hello.dtd</code>&quot;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version="1.0"?&gt; &lt;!DOCTYPE greeting SYSTEM "hello.dtd"&gt; &lt;greeting&gt;Hello, world!&lt;/greeting&gt; </pre></td></tr></table>
<p>The <a title="System Identifier" href="#dt-sysid">system identifier</a> "<code>hello.dtd</code>"
gives the address
(a URI reference) of a DTD for the document.</p>
<p>The declarations can also be given locally, as in this example:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version="1.0" encoding="UTF-8" ?&gt;
&lt;!DOCTYPE greeting [
&lt;!ELEMENT greeting (#PCDATA)&gt;
]&gt;
@ -581,24 +581,24 @@ them).]</p>
<h5>Standalone Document Declaration</h5><table class="scrap" summary="Scrap"><tbody>
<tr valign="baseline"><td><a name="NT-SDDecl"></a>[32]<5D><><EFBFBD></td><td><code>SDDecl</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code> <a href="#NT-S">S</a> 'standalone' <a href="#NT-Eq">Eq</a>
((&quot;'&quot; ('yes' | 'no') &quot;'&quot;) | ('&quot;' ('yes' | 'no') '&quot;')) </code></td><xsltdebug></xsltdebug><td><a href="#vc-check-rmd">[VC: Standalone Document Declaration]</a></td></tr>
(("'" ('yes' | 'no') "'") | ('"' ('yes' | 'no') '"')) </code></td><xsltdebug></xsltdebug><td><a href="#vc-check-rmd">[VC: Standalone Document Declaration]</a></td></tr>
</tbody></table>
<p>In a standalone document declaration, the value &quot;yes&quot; indicates
<p>In a standalone document declaration, the value "yes" indicates
that there are no <a title="External Markup Declaration" href="#dt-extmkpdecl">external markup declarations</a> which
affect the information passed from the XML processor to the application. The
value &quot;no&quot; indicates that there are or may be such external
value "no" indicates that there are or may be such external
markup declarations. Note that the standalone document declaration only denotes
the presence of external <em>declarations</em>; the presence, in a document,
of references to external <em>entities</em>, when those entities are internally
declared, does not change its standalone status.</p>
<p>If there are no external markup declarations, the standalone document declaration
has no meaning. If there are external markup declarations but there is no
standalone document declaration, the value &quot;no&quot; is assumed.</p>
<p>Any XML document for which <code>standalone=&quot;no&quot;</code> holds can be converted
standalone document declaration, the value "no" is assumed.</p>
<p>Any XML document for which <code>standalone="no"</code> holds can be converted
algorithmically to a standalone document, which may be desirable for some
network delivery applications.</p>
<div class="constraint"><p class="prefix"><a name="vc-check-rmd"></a><b>Validity constraint: Standalone Document Declaration</b></p><p>The
standalone document declaration must have the value &quot;no&quot; if
standalone document declaration must have the value "no" if
any external markup declarations contain declarations of:</p>
<ul>
<li><p>attributes with <a title="Attribute Default" href="#dt-default">default</a> values,
@ -618,16 +618,16 @@ if white space occurs directly within any instance of those types.</p></li>
</ul>
</div>
<p>An example XML declaration with a standalone document declaration:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version=&quot;1.0&quot; standalone='yes'?&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;?xml version="1.0" standalone='yes'?&gt;</pre></td></tr></table>
</div>
<div class="div2">
<h3><a name="sec-white-space"></a>2.10 White Space Handling</h3>
<p>In editing XML documents, it is often convenient to use &quot;white space&quot;
<p>In editing XML documents, it is often convenient to use "white space"
(spaces, tabs, and blank lines)
to set apart the markup for greater readability. Such white space is typically
not intended for inclusion in the delivered version of the document. On the
other hand, &quot;significant&quot; white space that should be preserved
other hand, "significant" white space that should be preserved
in the delivered version is common, for example in poetry and source code.</p>
<p>An <a title="XML Processor" href="#dt-xml-proc">XML processor</a> must always pass
all characters in a document that are not markup through to the application.
@ -640,14 +640,14 @@ white space should be preserved by applications. In valid documents, this
attribute, like any other, must be <a title="Attribute-List Declaration" href="#dt-attdecl">declared</a>
if it is used. When declared, it must be given as an <a title="Enumerated Attribute Values" href="#dt-enumerated">enumerated
type</a> whose values
are one or both of &quot;default&quot; and &quot;preserve&quot;.
are one or both of "default" and "preserve".
For example:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ATTLIST poem xml:space (default|preserve) 'preserve'&gt;
&lt;!-- --&gt;
&lt;!ATTLIST pre xml:space (preserve) #FIXED 'preserve'&gt;</pre></td></tr></table>
<p>The value &quot;default&quot; signals that applications' default white-space
processing modes are acceptable for this element; the value &quot;preserve&quot;
<p>The value "default" signals that applications' default white-space
processing modes are acceptable for this element; the value "preserve"
indicates the intent that applications preserve all the white space. This
declared intent is considered to apply to all elements within the content
of the element where it is specified, unless overriden with another instance
@ -700,10 +700,10 @@ languages not presently covered by <a href="#ISO639">[ISO 639]</a>.</p>
<p>For example:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;p xml:lang=&quot;en&quot;&gt;The quick brown fox jumps over the lazy dog.&lt;/p&gt;
&lt;p xml:lang=&quot;en-GB&quot;&gt;What colour is it?&lt;/p&gt;
&lt;p xml:lang=&quot;en-US&quot;&gt;What color is it?&lt;/p&gt;
&lt;sp who=&quot;Faust&quot; desc='leise' xml:lang=&quot;de&quot;&gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;p xml:lang="en"&gt;The quick brown fox jumps over the lazy dog.&lt;/p&gt;
&lt;p xml:lang="en-GB"&gt;What colour is it?&lt;/p&gt;
&lt;p xml:lang="en-US"&gt;What color is it?&lt;/p&gt;
&lt;sp who="Faust" desc='leise' xml:lang="de"&gt;
&lt;l&gt;Habe nun, ach! Philosophie,&lt;/l&gt;
&lt;l&gt;Juristerei, und Medizin&lt;/l&gt;
&lt;l&gt;und leider auch Theologie&lt;/l&gt;
@ -733,8 +733,8 @@ document</a> contains one or more <b>elements</b>, the boundaries
of which are either delimited by <a title="Start-Tag" href="#dt-stag">start-tags</a>
and <a title="End Tag" href="#dt-etag">end-tags</a>, or, for <a title="Empty" href="#dt-empty">empty</a>
elements, by an <a title="empty-element tag" href="#dt-eetag">empty-element tag</a>. Each
element has a type, identified by name, sometimes called its &quot;generic
identifier&quot; (GI), and may have a set of attribute specifications.]
element has a type, identified by name, sometimes called its "generic
identifier" (GI), and may have a set of attribute specifications.]
Each attribute specification has a <a title="Attribute Name" href="#dt-attrname">name</a>
and a <a title="Attribute Value" href="#dt-attrval">value</a>.</p>
@ -780,7 +780,7 @@ XML element is marked by a <b>start-tag</b>.]</p>
<p>The <a href="#NT-Name">Name</a> in the start- and end-tags gives the element's <b>type</b>. [<a name="dt-attr" title="Attribute">Definition</a>: The <a href="#NT-Name">Name</a>-<a href="#NT-AttValue">AttValue</a>
pairs are referred to as the <b>attribute specifications</b> of the
element], [<a name="dt-attrname" title="Attribute Name">Definition</a>: with the <a href="#NT-Name">Name</a> in each pair referred to as the <b>attribute name</b>]
and [<a name="dt-attrval" title="Attribute Value">Definition</a>: the content of the <a href="#NT-AttValue">AttValue</a> (the text between the <code>'</code> or <code>&quot;</code>
and [<a name="dt-attrval" title="Attribute Value">Definition</a>: the content of the <a href="#NT-AttValue">AttValue</a> (the text between the <code>'</code> or <code>"</code>
delimiters) as the <b>attribute value</b>.]Note
that the order of attribute specifications in a start-tag or empty-element
tag is not significant.</p>
@ -799,7 +799,7 @@ values cannot contain direct or indirect entity references to external entities.
referred to directly or indirectly in an attribute value must not contain a <code>&lt;</code>.</p>
</div>
<p>An example of a start-tag:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;termdef id=&quot;dt-dog&quot; term=&quot;dog&quot;&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;termdef id="dt-dog" term="dog"&gt;</pre></td></tr></table>
<p>[<a name="dt-etag" title="End Tag">Definition</a>: The end of every element that begins
with a start-tag must be marked by an <b>end-tag</b> containing a name
that echoes the element's type as given in the start-tag:]</p>
@ -833,8 +833,8 @@ interoperability</a>, the empty-element tag should
be used, and should only be used, for elements which are declared
EMPTY.</p>
<p>Examples of empty elements:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;IMG align=&quot;left&quot;
src=&quot;http://www.w3.org/Icons/WWW/w3c_home&quot; /&gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;IMG align="left"
src="http://www.w3.org/Icons/WWW/w3c_home" /&gt;
&lt;br&gt;&lt;/br&gt;
&lt;br/&gt;</pre></td></tr></table>
</div>
@ -938,8 +938,8 @@ but not their order or their number of occurrences:</p>
</tbody></table>
<p>where the <a href="#NT-Name">Name</a>s give the types of elements that
may appear as children. The
keyword <b>#PCDATA</b> derives historically from the term &quot;parsed
character data.&quot;</p>
keyword <b>#PCDATA</b> derives historically from the term "parsed
character data."</p>
<div class="constraint"><p class="prefix"><a name="vc-MixedChildrenUnique"></a><b>Validity constraint: No Duplicate Types</b></p><p>The
same name must not appear more than once in a single mixed-content declaration.</p>
</div>
@ -1093,9 +1093,9 @@ that attribute must match the default value.</p>
id ID #REQUIRED
name CDATA #IMPLIED&gt;
&lt;!ATTLIST list
type (bullets|ordered|glossary) &quot;ordered&quot;&gt;
type (bullets|ordered|glossary) "ordered"&gt;
&lt;!ATTLIST form
method CDATA #FIXED &quot;POST&quot;&gt;</pre></td></tr></table>
method CDATA #FIXED "POST"&gt;</pre></td></tr></table>
</div>
<div class="div3">
@ -1144,21 +1144,21 @@ by a non-validating processor
as if declared <b>CDATA</b>.</p>
<p>Following are examples of attribute normalization. Given the following
declarations:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY d &quot;&amp;#xD;&quot;&gt;
&lt;!ENTITY a &quot;&amp;#xA;&quot;&gt;
&lt;!ENTITY da &quot;&amp;#xD;&amp;#xA;&quot;&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY d "&amp;#xD;"&gt;
&lt;!ENTITY a "&amp;#xA;"&gt;
&lt;!ENTITY da "&amp;#xD;&amp;#xA;"&gt;</pre></td></tr></table>
<p>the attribute specifications in the left column below would be normalized
to the character sequences of the middle column if the attribute <code>a</code>
is declared <b>NMTOKENS</b> and to those of the right columns if <code>a</code>
is declared <b>CDATA</b>.</p>
<table border="1" frame="border"><thead><tr><th colspan="1" rowspan="1">Attribute specification</th>
<th colspan="1" rowspan="1">a is NMTOKENS</th><th colspan="1" rowspan="1">a is CDATA</th></tr></thead><tbody><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a=&quot;
<th colspan="1" rowspan="1">a is NMTOKENS</th><th colspan="1" rowspan="1">a is CDATA</th></tr></thead><tbody><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a="
xyz&quot;</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>x y z</code></td><td colspan="1" rowspan="1"><code>#x20 #x20 x y z</code></td>
</tr><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a=&quot;&amp;d;&amp;d;A&amp;a;&amp;a;B&amp;da;&quot;</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>A
xyz"</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>x y z</code></td><td colspan="1" rowspan="1"><code>#x20 #x20 x y z</code></td>
</tr><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a="&amp;d;&amp;d;A&amp;a;&amp;a;B&amp;da;"</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>A
#x20 B</code></td><td colspan="1" rowspan="1"><code>#x20 #x20 A #x20 #x20 B #x20 #x20</code></td>
</tr><tr><td colspan="1" rowspan="1"><table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>a=
&quot;&amp;#xd;&amp;#xd;A&amp;#xa;&amp;#xa;B&amp;#xd;&amp;#xa;&quot;</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>#xD
"&amp;#xd;&amp;#xd;A&amp;#xa;&amp;#xa;B&amp;#xd;&amp;#xa;"</pre></td></tr></table></td><td colspan="1" rowspan="1"><code>#xD
#xD A #xA #xA B #xD #xA</code></td><td colspan="1" rowspan="1"><code>#xD #xD A #xA #xA B #xD #xD</code></td>
</tr></tbody></table>
<p>Note that the last example is invalid (but well-formed) if <code>a</code>
@ -1186,8 +1186,8 @@ Conditional Section/PE Nesting]</a></td></tr>
('&lt;![' | ']]&gt;') <a href="#NT-Char">Char</a>*) </code></td><xsltdebug></xsltdebug></tr>
</tbody></table>
<div class="constraint"><p class="prefix"><a name="condsec-nesting"></a><b>Validity constraint: Proper
Conditional Section/PE Nesting</b></p><p>If any of the &quot;<code>&lt;![</code>&quot;,
&quot;<code>[</code>&quot;, or &quot;<code>]]&gt;</code>&quot; of a conditional section is contained
Conditional Section/PE Nesting</b></p><p>If any of the "<code>&lt;![</code>",
"<code>[</code>", or "<code>]]&gt;</code>" of a conditional section is contained
in the replacement text for a parameter-entity reference, all of them must
be contained in the same replacement text.</p>
</div>
@ -1202,8 +1202,8 @@ If a conditional section with a keyword of <b>INCLUDE</b> occurs within
a larger conditional section with a keyword of <b>IGNORE</b>, both the outer
and the inner conditional sections are ignored. The contents
of an ignored conditional section are parsed by ignoring all characters after
the &quot;<code>[</code>&quot; following the keyword, except conditional section starts
&quot;<code>&lt;![</code>&quot; and ends &quot;<code>]]&gt;</code>&quot;, until the matching conditional
the "<code>[</code>" following the keyword, except conditional section starts
"<code>&lt;![</code>" and ends "<code>]]&gt;</code>", until the matching conditional
section end is found. Parameter entity references are not recognized in this
process.</p>
<p>If the keyword of the conditional section is a parameter-entity reference,
@ -1267,10 +1267,10 @@ set, for example one not directly accessible from available input devices.]</p>
<div class="constraint"><p class="prefix"><a name="wf-Legalchar"></a><b>Well-formedness constraint: Legal Character</b></p><p>Characters referred
to using character references must match the production for <a title="" href="#NT-Char">Char</a>.</p>
</div>
<p>If the character reference begins with &quot;<code>&amp;#x</code>&quot;,
<p>If the character reference begins with "<code>&amp;#x</code>",
the digits and letters up to the terminating <code>;</code> provide a hexadecimal
representation of the character's code point in ISO/IEC 10646. If it begins
just with &quot;<code>&amp;#</code>&quot;, the digits up to the terminating <code>;</code>
just with "<code>&amp;#</code>", the digits up to the terminating <code>;</code>
provide a decimal representation of the character's code point.</p>
<p>[<a name="dt-entref" title="Entity Reference">Definition</a>: An <b>entity reference</b>
refers to the content of a named entity.] [<a name="dt-GERef" title="General Entity Reference">Definition</a>: References to parsed general entities use
@ -1280,7 +1280,7 @@ use percent-sign (<code>%</code>) and semicolon (<code>;</code>) as delimiters.]
<h5>Entity Reference</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-Reference"></a>[67]<5D><><EFBFBD></td><td><code>Reference</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-EntityRef">EntityRef</a> | <a href="#NT-CharRef">CharRef</a></code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-EntityRef"></a>[68]<5D><><EFBFBD></td><td><code>EntityRef</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'&amp;' <a href="#NT-Name">Name</a> ';'</code></td><xsltdebug></xsltdebug><td><a href="#wf-entdeclared">[WFC: Entity Declared]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#vc-entdeclared">[VC: Entity Declared]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#textent">[WFC: Parsed Entity]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#norecursion">[WFC: No Recursion]</a></td></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-PEReference"></a>[69]<5D><><EFBFBD></td><td><code>PEReference</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>'%' <a href="#NT-Name">Name</a> ';'</code></td><xsltdebug></xsltdebug><td><a href="#vc-entdeclared">[VC: Entity Declared]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#norecursion">[WFC: No Recursion]</a></td></tr><tr valign="baseline"><td></td><td></td><td></td><td></td><td><a href="#indtd">[WFC: In DTD]</a></td></tr></tbody></table>
<div class="constraint"><p class="prefix"><a name="wf-entdeclared"></a><b>Well-formedness constraint: Entity Declared</b></p><p>In a document
without any DTD, a document with only an internal DTD subset which contains
no parameter entity references, or a document with &quot;<code>standalone='yes'</code>&quot;, for
no parameter entity references, or a document with "<code>standalone='yes'</code>", for
an entity reference that does not occur within the external subset or a parameter
entity, the <a href="#NT-Name">Name</a> given in the entity reference must <a title="match" href="#dt-match">match</a> that in an <a href="#sec-entity-decl"><cite>entity
declaration</cite></a> that does not occur within the external subset or a
@ -1299,7 +1299,7 @@ the rule that an entity must be declared is a well-formedness constraint only
if <a href="#sec-rmd"><cite>standalone='yes'</cite></a>.</p>
</div>
<div class="constraint"><p class="prefix"><a name="vc-entdeclared"></a><b>Validity constraint: Entity Declared</b></p><p>In a document with
an external subset or external parameter entities with &quot;<code>standalone='no'</code>&quot;,
an external subset or external parameter entities with "<code>standalone='no'</code>",
the <a href="#NT-Name">Name</a> given in the entity reference must <a title="match" href="#dt-match">match</a> that in an <a href="#sec-entity-decl"><cite>entity
declaration</cite></a>. For interoperability, valid documents should declare
the entities <code>amp</code>,
@ -1329,9 +1329,9 @@ only appear in the <a title="Document Type Declaration" href="#dt-doctype">DTD</
This document was prepared on &amp;docdate; and
is classified &amp;security-level;.</pre></td></tr></table>
<p>Example of a parameter-entity reference:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!-- declare the parameter entity &quot;ISOLat2&quot;... --&gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!-- declare the parameter entity "ISOLat2"... --&gt;
&lt;!ENTITY % ISOLat2
SYSTEM &quot;http://www.xml.com/iso/isolat2-xml.entities&quot; &gt;
SYSTEM "http://www.xml.com/iso/isolat2-xml.entities" &gt;
&lt;!-- ... now reference it. --&gt;
%ISOLat2;</pre></td></tr></table>
</div>
@ -1366,8 +1366,8 @@ Note that some processing of entity and character references in the <a title="Li
the correct <a title="Replacement Text" href="#dt-repltext">replacement text</a>: see <a href="#intern-replacement"><b>4.5 Construction of Internal Entity Replacement Text</b></a>.</p>
<p>An internal entity is a <a title="Text Entity" href="#dt-parsedent">parsed entity</a>.</p>
<p>Example of an internal entity declaration:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY Pub-Status &quot;This is a pre-release of the
specification.&quot;&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY Pub-Status "This is a pre-release of the
specification."&gt;</pre></td></tr></table>
</div>
<div class="div3">
@ -1422,12 +1422,12 @@ single space characters (#x20), and leading and trailing white space must
be removed.</p>
<p>Examples of external entity declarations:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY open-hatch
SYSTEM &quot;http://www.textuality.com/boilerplate/OpenHatch.xml&quot;&gt;
SYSTEM "http://www.textuality.com/boilerplate/OpenHatch.xml"&gt;
&lt;!ENTITY open-hatch
PUBLIC &quot;-//Textuality//TEXT Standard open-hatch boilerplate//EN&quot;
&quot;http://www.textuality.com/boilerplate/OpenHatch.xml&quot;&gt;
PUBLIC "-//Textuality//TEXT Standard open-hatch boilerplate//EN"
"http://www.textuality.com/boilerplate/OpenHatch.xml"&gt;
&lt;!ENTITY hatch-pic
SYSTEM &quot;../grafix/OpenHatch.gif&quot;
SYSTEM "../grafix/OpenHatch.gif"
NDATA gif &gt;</pre></td></tr></table>
</div>
</div>
@ -1469,8 +1469,8 @@ can begin in one entity and end in another.</p>
<h4><a name="charencoding"></a>4.3.3 Character Encoding in Entities</h4>
<p>Each external parsed entity in an XML document may use a different encoding
for its characters. All XML processors must be able to read entities in both
the UTF-8 and UTF-16 encodings. The terms &quot;UTF-8&quot;
and &quot;UTF-16&quot; in this specification do not apply to character
the UTF-8 and UTF-16 encodings. The terms "UTF-8"
and "UTF-16" in this specification do not apply to character
encodings with any other labels, even if the encodings or labels are very
similar to UTF-8 or UTF-16.</p>
<p>Entities encoded in UTF-16 must begin with the Byte Order Mark described
@ -1491,25 +1491,25 @@ must begin with a text declaration (see <a href="#sec-TextDecl"><b>4.3.1 The Tex
an encoding declaration:</p>
<h5>Encoding Declaration</h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="NT-EncodingDecl"></a>[80]<5D><><EFBFBD></td><td><code>EncodingDecl</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code><a href="#NT-S">S</a> 'encoding' <a href="#NT-Eq">Eq</a>
('&quot;' <a href="#NT-EncName">EncName</a> '&quot;' | &quot;'&quot; <a href="#NT-EncName">EncName</a>
&quot;'&quot; ) </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-EncName"></a>[81]<5D><><EFBFBD></td><td><code>EncName</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>[A-Za-z] ([A-Za-z0-9._] | '-')*</code></td><xsltdebug></xsltdebug><td><i>/* Encoding
('"' <a href="#NT-EncName">EncName</a> '"' | "'" <a href="#NT-EncName">EncName</a>
"'" ) </code></td><xsltdebug></xsltdebug></tr></tbody><tbody><tr valign="baseline"><td><a name="NT-EncName"></a>[81]<5D><><EFBFBD></td><td><code>EncName</code></td><td><EFBFBD><EFBFBD><EFBFBD>::=<3D><><EFBFBD></td><td><code>[A-Za-z] ([A-Za-z0-9._] | '-')*</code></td><xsltdebug></xsltdebug><td><i>/* Encoding
name contains only Latin characters */</i></td></tr></tbody></table>
<p>In the <a title="Document Entity" href="#dt-docent">document entity</a>, the encoding
declaration is part of the <a title="XML Declaration" href="#dt-xmldecl">XML declaration</a>.
The <a href="#NT-EncName">EncName</a> is the name of the encoding used.</p>
<p>In an encoding declaration, the values &quot;<code>UTF-8</code>&quot;, &quot;<code>UTF-16</code>&quot;, &quot;<code>ISO-10646-UCS-2</code>&quot;, and &quot;<code>ISO-10646-UCS-4</code>&quot; should be used
<p>In an encoding declaration, the values "<code>UTF-8</code>", "<code>UTF-16</code>", "<code>ISO-10646-UCS-2</code>", and "<code>ISO-10646-UCS-4</code>" should be used
for the various encodings and transformations of Unicode / ISO/IEC 10646,
the values &quot;<code>ISO-8859-1</code>&quot;, &quot;<code>ISO-8859-2</code>&quot;,
... &quot;<code>ISO-8859-</code><var>n</var>&quot; (where <var>n</var>
the values "<code>ISO-8859-1</code>", "<code>ISO-8859-2</code>",
... "<code>ISO-8859-</code><var>n</var>" (where <var>n</var>
is the part number) should be used for the parts of ISO 8859, and
the values &quot;<code>ISO-2022-JP</code>&quot;, &quot;<code>Shift_JIS</code>&quot;,
and &quot;<code>EUC-JP</code>&quot; should be used for the various encoded
the values "<code>ISO-2022-JP</code>", "<code>Shift_JIS</code>",
and "<code>EUC-JP</code>" should be used for the various encoded
forms of JIS X-0208-1997. It
is recommended that character encodings registered (as <em>charset</em>s)
with the Internet Assigned Numbers Authority <a href="#IANA">[IANA-CHARSETS]</a>,
other than those just listed, be referred to using their registered names;
other encodings should use names starting with an &quot;x-&quot; prefix.
other encodings should use names starting with an "x-" prefix.
XML processors should match character encoding names in a case-insensitive
way and should either interpret an IANA-registered name as the encoding registered
at IANA for that name or treat it as unknown (processors are, of course, not
@ -1613,8 +1613,8 @@ and processed, in place of the reference itself, as though it were part of
the document at the location the reference was recognized.] The replacement
text may contain both <a title="Character Data" href="#dt-chardata">character data</a>
and (except for parameter entities) <a title="Markup" href="#dt-markup">markup</a>,
which must be recognized in the usual way. (The string &quot;<code>AT&amp;amp;T;</code>&quot;
expands to &quot;<code>AT&amp;T;</code>&quot; and the remaining ampersand
which must be recognized in the usual way. (The string "<code>AT&amp;amp;T;</code>"
expands to "<code>AT&amp;T;</code>" and the remaining ampersand
is not recognized as an entity-reference delimiter.) A character reference
is <b>included</b> when the indicated character is processed in place
of the reference itself. </p>
@ -1662,10 +1662,10 @@ the location the reference was recognized, except that a single or double
quote character in the replacement text is always treated as a normal data
character and will not terminate the literal. For example, this is well-formed:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!-- --&gt;
&lt;!ENTITY % YN '&quot;Yes&quot;' &gt;
&lt;!ENTITY WhatHeSaid &quot;He said %YN;&quot; &gt;</pre></td></tr></table>
&lt;!ENTITY % YN '"Yes"' &gt;
&lt;!ENTITY WhatHeSaid "He said %YN;" &gt;</pre></td></tr></table>
<p>while this is not:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY EndAttr &quot;27'&quot; &gt;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY EndAttr "27'" &gt;
&lt;element attribute='a-&amp;EndAttr;&gt;</pre></td></tr></table>
</div>
<div class="div3">
@ -1712,16 +1712,16 @@ text</em> of any parameter entities referred to, and must contain the character
referred to, in place of any character references in the literal entity value;
however, general-entity references must be left as-is, unexpanded. For example,
given the following declarations:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY % pub &quot;&amp;#xc9;ditions Gallimard&quot; &gt;
&lt;!ENTITY rights &quot;All rights reserved&quot; &gt;
&lt;!ENTITY book &quot;La Peste: Albert Camus,
&amp;#xA9; 1947 %pub;. &amp;rights;&quot; &gt;</pre></td></tr></table>
<p>then the replacement text for the entity &quot;<code>book</code>&quot;
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY % pub "&amp;#xc9;ditions Gallimard" &gt;
&lt;!ENTITY rights "All rights reserved" &gt;
&lt;!ENTITY book "La Peste: Albert Camus,
&amp;#xA9; 1947 %pub;. &amp;rights;" &gt;</pre></td></tr></table>
<p>then the replacement text for the entity "<code>book</code>"
is:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>La Peste: Albert Camus,
<EFBFBD> 1947 <20>ditions Gallimard. &amp;rights;</pre></td></tr></table>
<p>The general-entity reference &quot;<code>&amp;rights;</code>&quot; would
be expanded should the reference &quot;<code>&amp;book;</code>&quot; appear
<p>The general-entity reference "<code>&amp;rights;</code>" would
be expanded should the reference "<code>&amp;book;</code>" appear
in the document's content or an attribute value.</p>
<p>These simple rules may have complex interactions; for a detailed discussion
of a difficult example, see <a href="#sec-entexpand"><b>D Expansion of Entity and Character References</b></a>.</p>
@ -1738,7 +1738,7 @@ other delimiters. A set of general entities (<code>amp</code>,
<code>quot</code>) is specified for
this purpose. Numeric character references may also be used; they are expanded
immediately when recognized and must be treated as character data, so the
numeric character references &quot;<code>&amp;#60;</code>&quot; and &quot;<code>&amp;#38;</code>&quot;
numeric character references "<code>&amp;#60;</code>" and "<code>&amp;#38;</code>"
may be used to escape <code>&lt;</code> and <code>&amp;</code> when they occur
in character data.]</p>
<p>All XML processors must recognize these entities whether they are declared
@ -1754,11 +1754,11 @@ or <code>quot</code> are declared, they must be declared as internal entities
whose replacement text is the single character being escaped (or a character
reference to that character; the double escaping here is unnecessary but harmless).
For example:</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY lt &quot;&amp;#38;#60;&quot;&gt;
&lt;!ENTITY gt &quot;&amp;#62;&quot;&gt;
&lt;!ENTITY amp &quot;&amp;#38;#38;&quot;&gt;
&lt;!ENTITY apos &quot;&amp;#39;&quot;&gt;
&lt;!ENTITY quot &quot;&amp;#34;&quot;&gt;</pre></td></tr></table>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY lt "&amp;#38;#60;"&gt;
&lt;!ENTITY gt "&amp;#62;"&gt;
&lt;!ENTITY amp "&amp;#38;#38;"&gt;
&lt;!ENTITY apos "&amp;#39;"&gt;
&lt;!ENTITY quot "&amp;#34;"&gt;</pre></td></tr></table>
</div>
<div class="div2">
@ -1827,7 +1827,7 @@ they do <em>not</em> read; that is to say, they must use the information
in those declarations to <a href="#AVNormalize"><cite>normalize</cite></a>
attribute values, <a href="#included"><cite>include</cite></a> the replacement
text of internal entities, and supply <a href="#sec-attr-defaults"><cite>default
attribute values</cite></a>.] Except when <code>standalone=&quot;yes&quot;</code>, they
attribute values</cite></a>.] Except when <code>standalone="yes"</code>, they
must not <a title="Process Declarations" href="#dt-use-mdecl">process</a> <a title="entity declaration" href="#dt-entdecl">entity
declarations</a> or <a title="Attribute-List Declaration" href="#dt-attdecl">attribute-list declarations</a>
encountered after a reference to a parameter entity that is not read, since
@ -1901,7 +1901,7 @@ indicated.</p>
<p>matches any <a href="#NT-Char">Char</a> with a value not among the characters given. Enumerations
and ranges of forbidden values can be mixed in one set of brackets.</p>
</dd>
<dt class="label"><code>&quot;string&quot;</code></dt>
<dt class="label"><code>"string"</code></dt>
<dd>
<p>matches a literal string <a title="match" href="#dt-match">matching</a> that
given inside the double quotes.</p>
@ -2177,8 +2177,8 @@ the categories Mc, Me, Mn, Lm, or Nd.</p></li>
<li><p>Characters in the compatibility area (i.e. with character code greater
than #xF900 and less than #xFFFE) are not allowed in XML names.</p></li>
<li><p>Characters which have a font or compatibility decomposition (i.e.
those with a &quot;compatibility formatting tag&quot; in field 5 of the
database -- marked by field 5 beginning with a &quot;&lt;&quot;) are not
those with a "compatibility formatting tag" in field 5 of the
database -- marked by field 5 beginning with a "&lt;") are not
allowed.</p></li>
<li><p>The following characters are treated as name-start characters rather
than name characters, because the property file classifies them as Alphabetic:
@ -2208,16 +2208,16 @@ restrictions that XML places on documents beyond those of SGML, see <a href="#Cl
<p>This appendix contains some examples illustrating the sequence of entity-
and character-reference recognition and expansion, as specified in <a href="#entproc"><b>4.4 XML Processor Treatment of Entities and References</b></a>.</p>
<p>If the DTD contains the declaration</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY example &quot;&lt;p&gt;An ampersand (&amp;#38;#38;) may be escaped
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;!ENTITY example "&lt;p&gt;An ampersand (&amp;#38;#38;) may be escaped
numerically (&amp;#38;#38;#38;) or with a general entity
(&amp;amp;amp;).&lt;/p&gt;&quot; &gt;</pre></td></tr></table>
(&amp;amp;amp;).&lt;/p&gt;" &gt;</pre></td></tr></table>
<p>then the XML processor will recognize the character references when it
parses the entity declaration, and resolve them before storing the following
string as the value of the entity &quot;<code>example</code>&quot;:</p>
string as the value of the entity "<code>example</code>":</p>
<table class="eg" cellpadding="5" border="1" bgcolor="#99ffff" width="100%" summary="Example"><tr><td><pre>&lt;p&gt;An ampersand (&amp;#38;) may be escaped
numerically (&amp;#38;#38;) or with a general entity
(&amp;amp;amp;).&lt;/p&gt;</pre></td></tr></table>
<p>A reference in the document to &quot;<code>&amp;example;</code>&quot;
<p>A reference in the document to "<code>&amp;example;</code>"
will cause the text to be reparsed, at which time the start- and end-tags
of the <code>p</code> element will be recognized and the three references will
be recognized and expanded, resulting in a <code>p</code> element with the following
@ -2231,30 +2231,30 @@ In the following example, the line numbers are solely for reference.</p>
2 &lt;!DOCTYPE test [
3 &lt;!ELEMENT test (#PCDATA) &gt;
4 &lt;!ENTITY % xx '&amp;#37;zz;'&gt;
5 &lt;!ENTITY % zz '&amp;#60;!ENTITY tricky &quot;error-prone&quot; &gt;' &gt;
5 &lt;!ENTITY % zz '&amp;#60;!ENTITY tricky "error-prone" &gt;' &gt;
6 %xx;
7 ]&gt;
8 &lt;test&gt;This sample shows a &amp;tricky; method.&lt;/test&gt;</pre></td></tr></table>
<p>This produces the following:</p>
<ul>
<li><p>in line 4, the reference to character 37 is expanded immediately,
and the parameter entity &quot;<code>xx</code>&quot; is stored in the symbol
table with the value &quot;<code>%zz;</code>&quot;. Since the replacement
text is not rescanned, the reference to parameter entity &quot;<code>zz</code>&quot;
is not recognized. (And it would be an error if it were, since &quot;<code>zz</code>&quot;
and the parameter entity "<code>xx</code>" is stored in the symbol
table with the value "<code>%zz;</code>". Since the replacement
text is not rescanned, the reference to parameter entity "<code>zz</code>"
is not recognized. (And it would be an error if it were, since "<code>zz</code>"
is not yet declared.)</p></li>
<li><p>in line 5, the character reference &quot;<code>&amp;#60;</code>&quot;
is expanded immediately and the parameter entity &quot;<code>zz</code>&quot;
is stored with the replacement text &quot;<code>&lt;!ENTITY tricky &quot;error-prone&quot;
&gt;</code>&quot;, which is a well-formed entity declaration.</p></li>
<li><p>in line 6, the reference to &quot;<code>xx</code>&quot; is recognized,
and the replacement text of &quot;<code>xx</code>&quot; (namely &quot;<code>%zz;</code>&quot;)
is parsed. The reference to &quot;<code>zz</code>&quot; is recognized in
its turn, and its replacement text (&quot;<code>&lt;!ENTITY tricky &quot;error-prone&quot;
&gt;</code>&quot;) is parsed. The general entity &quot;<code>tricky</code>&quot;
has now been declared, with the replacement text &quot;<code>error-prone</code>&quot;.</p>
<li><p>in line 5, the character reference "<code>&amp;#60;</code>"
is expanded immediately and the parameter entity "<code>zz</code>"
is stored with the replacement text "<code>&lt;!ENTITY tricky "error-prone"
&gt;</code>", which is a well-formed entity declaration.</p></li>
<li><p>in line 6, the reference to "<code>xx</code>" is recognized,
and the replacement text of "<code>xx</code>" (namely "<code>%zz;</code>")
is parsed. The reference to "<code>zz</code>" is recognized in
its turn, and its replacement text ("<code>&lt;!ENTITY tricky "error-prone"
&gt;</code>") is parsed. The general entity "<code>tricky</code>"
has now been declared, with the replacement text "<code>error-prone</code>".</p>
</li>
<li><p>in line 8, the reference to the general entity &quot;<code>tricky</code>&quot;
<li><p>in line 8, the reference to the general entity "<code>tricky</code>"
is recognized, and it is expanded, so the full content of the <code>test</code>
element is the self-describing (and ungrammatical) string <em>This sample
shows a error-prone method.</em></p></li>
@ -2266,7 +2266,7 @@ shows a error-prone method.</em></p></li>
<p>As
noted in <a href="#sec-element-content"><b>3.2.1 Element Content</b></a>, it is required that content
models in element type declarations be deterministic. This requirement is <a title="For Compatibility" href="#dt-compat">for compatibility</a> with SGML (which calls deterministic
content models &quot;unambiguous&quot;); XML processors built
content models "unambiguous"); XML processors built
using SGML systems may flag non-deterministic content models as errors.</p>
<p>For example, the content model <code>((b, c) | (b, d))</code> is non-deterministic,
because given an initial <code>b</code> the XML processor
@ -2314,9 +2314,9 @@ encoding information and not in UTF-8 or UTF-16 encoding <em>must</em>
begin with an XML encoding declaration, in which the first characters must
be '<code>&lt;?xml</code>', any conforming processor can detect, after two
to four octets of input, which of the following cases apply. In reading this
list, it may help to know that in UCS-4, '&lt;' is &quot;<code>#x0000003C</code>&quot;
and '?' is &quot;<code>#x0000003F</code>&quot;, and the Byte Order Mark
required of UTF-16 data streams is &quot;<code>#xFEFF</code>&quot;. The notation <var>##</var> is used to denote any byte value except that two consecutive <var>##</var>s cannot be both 00.</p>
list, it may help to know that in UCS-4, '&lt;' is "<code>#x0000003C</code>"
and '?' is "<code>#x0000003F</code>", and the Byte Order Mark
required of UTF-16 data streams is "<code>#xFEFF</code>". The notation <var>##</var> is used to denote any byte value except that two consecutive <var>##</var>s cannot be both 00.</p>
<p>With a Byte Order Mark:</p>
<table border="1" frame="border"><tbody><tr><td colspan="1" rowspan="1"><code>00 00 FE
FF</code></td><td colspan="1" rowspan="1">UCS-4, big-endian machine (1234 order)</td></tr><tr><td colspan="1" rowspan="1"><code>FF
@ -2484,7 +2484,7 @@ Contact</i>) </li>
</div>
<div class="div1">
<h2><a name="id2676581"></a>I Production Notes (Non-Normative)</h2>
<h2><a name="id2681697"></a>I Production Notes (Non-Normative)</h2>
<p>This Second Edition was encoded in the <a href="http://www.w3.org/XML/1998/06/xmlspec-v21.dtd">XMLspec
DTD</a> (which has <a href="http://www.w3.org/XML/1998/06/xmlspec-report-v21.htm">documentation</a>
available). The HTML versions were produced with a combination of the <a href="http://www.w3.org/XML/1998/06/xmlspec.xsl">xmlspec.xsl</a>, <a href="http://www.w3.org/XML/1998/06/diffspec.xsl">diffspec.xsl</a>,

View File

@ -118,7 +118,7 @@ static xmlChar *strparams[MAX_PARAMETERS + 1];
static int nbstrparams = 0;
static xmlChar *paths[MAX_PATHS + 1];
static int nbpaths = 0;
static const char *output = NULL;
static char *output = NULL;
static int errorno = 0;
static const char *writesubtree = NULL;
@ -555,7 +555,7 @@ main(int argc, char **argv)
output = xmlCanonicPath(argv[i]);
if (output == NULL)
#endif
output = xmlStrdup(argv[i]);
output = (char *) xmlStrdup((xmlChar *) argv[i]);
} else if ((!strcmp(argv[i], "-V")) ||
(!strcmp(argv[i], "-version")) ||
(!strcmp(argv[i], "--version"))) {