Author: veithen
Date: Tue Jun 10 16:55:43 2014
New Revision: 1601685

URL: http://svn.apache.org/r1601685
Log:
Make the user and dev guides conform to DocBook 5.

Modified:
    webservices/axiom/trunk/devguide/src/docbkx/devguide.xml
    webservices/axiom/trunk/userguide/src/docbkx/userguide.xml

Modified: webservices/axiom/trunk/devguide/src/docbkx/devguide.xml
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/devguide/src/docbkx/devguide.xml?rev=1601685&r1=1601684&r2=1601685&view=diff
==============================================================================
--- webservices/axiom/trunk/devguide/src/docbkx/devguide.xml (original)
+++ webservices/axiom/trunk/devguide/src/docbkx/devguide.xml Tue Jun 10 
16:55:43 2014
@@ -19,7 +19,7 @@
   ~ under the License.
   -->
 <book>
-    <bookinfo>
+    <info>
         <title>Axiom Developer Guide</title>
         <releaseinfo>&version;</releaseinfo>
 
@@ -31,7 +31,7 @@
                 this file except in compliance with the License. You may 
obtain a copy of the License at
             </para>
             <para>
-                <ulink url="http://www.apache.org/licenses/LICENSE-2.0"/>
+                <link xlink:href="http://www.apache.org/licenses/LICENSE-2.0"/>
             </para>
             <para>
                 Unless required by applicable law or agreed to in writing, 
software distributed under the License is
@@ -40,7 +40,7 @@
                 License.
             </para>
         </legalnotice>
-    </bookinfo>
+    </info>
 
     <toc/>
 
@@ -67,7 +67,7 @@
                     was the intention to split the 
<filename>axiom-tests</filename> project into several parts
                     and make them part of <filename>axiom-api</filename>, 
<filename>axiom-impl</filename> and
                     <filename>axiom-dom</filename>. This reorganization is not 
complete
-                    yet<footnote><para>See <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-311";>AXIOM-311</ulink>.</para></footnote>.
+                    yet<footnote><para>See <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-311";>AXIOM-311</link>.</para></footnote>.
                     For new test cases (or when refactoring existing tests), 
the following guidelines should be applied:
                 </para>
                 <orderedlist>
@@ -78,7 +78,7 @@
                             This primarily applies to tests that validate 
utility classes in <filename>axiom-api</filename>.
                         </para>
                     </listitem>
-                    <listitem id="test.category.api">
+                    <listitem xml:id="test.category.api">
                         <para>
                             The code of unit tests that apply to all Axiom 
implementations and that check conformance
                             to the specifications of the Axiom API should be 
added
@@ -134,7 +134,7 @@
                         <listitem>
                             <para>
                                 The reference implementation was written by 
BEA and is available as Maven artifact
-                                <literal>stax:stax:1.2.0</literal>. The 
homepage is <ulink url="http://stax.codehaus.org/Home"/>.
+                                <literal>stax:stax:1.2.0</literal>. The 
homepage is <link xlink:href="http://stax.codehaus.org/Home"/>.
                                 Note that the JAR doesn't contain the 
necessary files to enable service discovery.
                                 Geronimo's implementation of the StAX API 
library will not be able to locate
                                 the reference implementation unless the 
following system properties are set:
@@ -151,12 +151,12 @@ javax.xml.stream.XMLOutputFactory=com.be
                                 and is part of IBM's JRE/JDK v6. Note that due
                                 to an agreement between IBM and Sun, IBM's 
Java implementation for the Windows
                                 platform is not available as a separate 
download, but only bundled with another
-                                IBM product, e.g. <ulink 
url="http://www.ibm.com/developerworks/downloads/ws/wasdevelopers/";>WebSphere
-                                Application Server for Developers</ulink>.
+                                IBM product, e.g. <link 
xlink:href="http://www.ibm.com/developerworks/downloads/ws/wasdevelopers/";>WebSphere
+                                Application Server for Developers</link>.
                             </para>
                             <para>    
                                 On the other hand, the JDK for Linux can be 
downloaded as a separate package from the
-                                <link 
url="https://www.ibm.com/developerworks/java/jdk/linux/download.html";>developerWorks
+                                <link 
xlink:href="https://www.ibm.com/developerworks/java/jdk/linux/download.html";>developerWorks
                                 site</link>. There are versions for 32-bit x86 
(<quote>xSeries</quote>) and 64-bit AMD.
                                 They are available as RPMs and tarballs. To 
install the JDK properly on a Debian
                                 based system (including Ubuntu), follow the 
instructions given in
@@ -207,7 +207,7 @@ javax.xml.stream.XMLOutputFactory=com.be
         </section>
         <section>
             <title>Requirements</title>
-            <formalpara id="osgi-req-no-separate-bundles">
+            <formalpara xml:id="osgi-req-no-separate-bundles">
                 <title>Requirement 1</title>
                 <para>
                     The Axiom artifacts SHOULD be usable both as normal JAR 
files and as OSGi bundles.
@@ -220,7 +220,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                     It should also be noted that the Geronimo Spec artifacts 
also meet this requirement.
                 </para>
             </note>
-            <formalpara id="osgi-req-same-api">
+            <formalpara xml:id="osgi-req-same-api">
                 <title>Requirement 2</title>
                 <para>
                     All APIs defined by the <literal>axiom-api</literal> 
module, and in particular the
@@ -236,7 +236,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                     is transparent for applications that already use Axiom in 
an OSGi container.
                 </para>
             </note>
-            <formalpara id="osgi-req-same-impl-selection">
+            <formalpara xml:id="osgi-req-same-impl-selection">
                 <title>Requirement 3</title>
                 <para>
                     <classname>OMAbstractFactory</classname> MUST select the 
same implementation
@@ -246,7 +246,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                     a system property is not meaningful.
                 </para>
             </formalpara>
-            <formalpara id="osgi-ref-impl-not-exported">
+            <formalpara xml:id="osgi-ref-impl-not-exported">
                 <title>Requirement 4</title>
                 <para>
                     Only classes belonging to the public API should be 
exported by the OSGi bundles.
@@ -255,8 +255,6 @@ javax.xml.stream.XMLOutputFactory=com.be
                     This is required to keep a clean separation between the 
public API and implementation
                     specific classes and to make sure that the implementations 
can be modified without the
                     risk of breaking existing code.
-                </para>
-                <para>
                     An exception MAY be made for factory classes related to 
foreign APIs, such as the
                     <classname>DocumentBuilderFactory</classname> 
implementation for an Axiom implementation
                     supporting DOM.
@@ -274,7 +272,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                 <itemizedlist>
                     <listitem>
                         <para>
-                            As explained in <ulink 
url="https://issues.apache.org/jira/browse/AXIS2-4902";>AXIS2-4902</ulink>,
+                            As explained in <link 
xlink:href="https://issues.apache.org/jira/browse/AXIS2-4902";>AXIS2-4902</link>,
                             there used to be many places in Axis2 that still 
referred directly to Axiom implementation classes.
                             The same was true for Rampart and Sandesha2. This 
has now been fixed and all three projects
                             use <literal>axiom-impl</literal> and 
<literal>axiom-dom</literal> as dependencies in scope
@@ -291,12 +289,12 @@ javax.xml.stream.XMLOutputFactory=com.be
                     <listitem>
                         <para>
                             For Spring Web Services this issue is addressed by
-                            <ulink 
url="https://jira.springsource.org/browse/SWS-822";>SWS-822</ulink>.
+                            <link 
xlink:href="https://jira.springsource.org/browse/SWS-822";>SWS-822</link>.
                         </para>
                     </listitem>
                 </itemizedlist>
             </note>
-            <formalpara id="osgi-req-dropin">
+            <formalpara xml:id="osgi-req-dropin">
                 <title>Requirement 5</title>
                 <para>
                     It MUST be possible to use a non standard (third party) 
Axiom implementation as a drop-in replacement
@@ -354,7 +352,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                             ServiceMix also has a custom bundles for Axiom. 
However, this bundle only seem to exist to
                             support their own custom Abdera bundle, which is 
basically an incorrect repackaging of the
                             original Abdera code. See
-                            <ulink 
url="https://issues.apache.org/jira/browse/SMX4-877";>SMX4-877</ulink> for more 
details.
+                            <link 
xlink:href="https://issues.apache.org/jira/browse/SMX4-877";>SMX4-877</link> for 
more details.
                         </para>
                     </listitem>
                 </itemizedlist>
@@ -366,7 +364,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                     of these projects.
                 </para>
             </note>
-            <formalpara id="osgi-reg-no-framework">
+            <formalpara xml:id="osgi-reg-no-framework">
                 <title>Requirement 7</title>
                 <para>
                     The Axiom OSGi integration SHOULD NOT rely on any 
particular OSGi framework such
@@ -382,7 +380,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                     having such code, provided that <xref 
linkend="osgi-req-no-osgi-dep"/> is satisfied.
                 </para>
             </note>
-            <formalpara id="osgi-req-no-osgi-dep">
+            <formalpara xml:id="osgi-req-no-osgi-dep">
                 <title>Requirement 8</title>
                 <para>
                     In a non OSGi environment, Axiom MUST NOT have any OSGi 
related dependencies. That means
@@ -390,7 +388,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                     ever loaded in a non OSGi environment.
                 </para>
             </formalpara>
-            <formalpara id="osgi-req-best-practices">
+            <formalpara xml:id="osgi-req-best-practices">
                 <title>Requirement 9</title>
                 <para>
                     The OSGi integration MUST follow established best 
practices. It SHOULD be inspired by
@@ -552,7 +550,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                     DOOM is generally not considered suitable as a default 
implementation because it doesn't
                     implement the complete Axiom API (e.g. it doesn't support 
<classname>OMSourcedElement</classname>).
                     In addition, in earlier versions of Axiom, the factory 
classes for DOOM were not stateless
-                    (see <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-412";>AXIOM-412</ulink>).
+                    (see <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-412";>AXIOM-412</link>).
                 </para>
             </note>
             <para>
@@ -738,7 +736,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                             <para>
                                 Relocation not only modifies the classes in 
<literal>axiom-common-impl</literal>, but
                                 also the classes in 
<literal>axiom-impl</literal> and <literal>axiom-dom</literal>
-                                that use them. JaCoCo <ulink 
url="https://github.com/jacoco/jacoco/issues/51";>detects this</ulink>
+                                that use them. JaCoCo <link 
xlink:href="https://github.com/jacoco/jacoco/issues/51";>detects this</link>
                                 and excludes the data from the coverage 
analysis. This means that the
                                 reported code coverage will also be inaccurate 
for classes in
                                 <literal>axiom-impl</literal> and 
<literal>axiom-dom</literal>.
@@ -784,17 +782,17 @@ javax.xml.stream.XMLOutputFactory=com.be
                 </listitem>
                 <listitem>
                     <para>
-                        One of the stated design goals (see <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-192";>AXIOM-192</ulink>)
+                        One of the stated design goals (see <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-192";>AXIOM-192</link>)
                         of the <classname>LifecycleManager</classname> API was 
to wrap the files in <classname>FileAccessor</classname> objects to
                         <quote>keep track of activity that occurs on the 
files</quote>. However, as pointed out in
-                        <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-185";>AXIOM-185</ulink>, since
+                        <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-185";>AXIOM-185</link>, 
since
                         <classname>FileAccessor</classname> has a method that 
returns the corresponding <classname>File</classname>
                         object, this goal has not been reached.
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        As noted in <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-382";>AXIOM-382</ulink>, the 
fact
+                        As noted in <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-382";>AXIOM-382</link>, 
the fact
                         that <classname>LifecycleManagerImpl</classname> 
registers a shutdown hook which is never unregistered
                         causes a class loader leak in J2EE environments.
                     </para>
@@ -802,7 +800,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                 <listitem>
                     <para>
                         In an attempt to work around the issues related to 
<classname>LifecycleManager</classname> (in particular
-                        the first item above), <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-185";>AXIOM-185</ulink>
+                        the first item above), <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-185";>AXIOM-185</link>
                         introduced another class called 
<classname>AttachmentCacheMonitor</classname> that implements a timer
                         based mechanism to clean up temporary files. However, 
this change causes other issues:
                     </para>
@@ -825,7 +823,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                     </itemizedlist>
                     <para>
                         Fortunately, that change was only meant as a 
workaround to solve a particular issue in WebSphere
-                        (see APAR <ulink 
url="http://www-01.ibm.com/support/docview.wss?rs=180&amp;uid=swg1PK91497";>PK91497</ulink>),
+                        (see APAR <link 
xlink:href="http://www-01.ibm.com/support/docview.wss?rs=180&amp;uid=swg1PK91497";>PK91497</link>),
                         and once the <classname>LifecycleManager</classname> 
API is redesigned to solve that issue,
                         <classname>AttachmentCacheMonitor</classname> no 
longer has a reason to exist.
                     </para>
@@ -899,7 +897,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                 To satisfy the second condition, one may want to use 
<methodname>File#deleteOnExit</methodname>.
                 However, this method causes a native memory leak, especially 
when used with temporary files,
                 which are expected to have unique names (see
-                <ulink 
url="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4513817";>bug 
4513817</ulink>).
+                <link 
xlink:href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4513817";>bug 
4513817</link>).
                 Therefore this can only be implemented using a shutdown hook. 
However, a shutdown hook will
                 cause a class loader leak if it is used improperly, e.g. if it 
is registered by an application deployed
                 into a J2EE container and not unregistered when that 
application is stopped. For this
@@ -950,7 +948,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                         to contain utility classes that don't depend on higher 
level APIs. More precisely,
                         <package>org.apache.axiom.util</package> should only 
have dependencies on
                         <package>org.apache.axiom.ext</package>, but not e.g. 
on <package>org.apache.axiom.om</package>.
-                        <ulink 
url="http://www.hello2morrow.com/products/sonarj";>SonarJ</ulink> can be used
+                        <link 
xlink:href="http://www.hello2morrow.com/products/sonarj";>SonarJ</link> can be 
used
                         to check these dependencies. The following figure 
shows the expected structure:
                     </para>
                     <figure>
@@ -974,7 +972,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                         </mediaobject>
                     </figure>
                     <para>
-                        The check can also be done using <ulink 
url="http://mojo.codehaus.org/jdepend-maven-plugin/";>jdepend-maven-plugin</ulink>.
+                        The check can also be done using <link 
xlink:href="http://mojo.codehaus.org/jdepend-maven-plugin/";>jdepend-maven-plugin</link>.
                         To do this, execute the following command in the 
<filename>axiom-api</filename> module:
                     </para>
                     <screen>mvn jdepend:generate</screen>
@@ -1008,8 +1006,8 @@ javax.xml.stream.XMLOutputFactory=com.be
                 <listitem>
                     <para>
                         Check that the Maven site conforms to the latest 
version of the
-                        <ulink 
url="http://apache.org/foundation/marks/pmcs";>Apache Project
-                        Branding Guidelines</ulink>.
+                        <link 
xlink:href="http://apache.org/foundation/marks/pmcs";>Apache Project
+                        Branding Guidelines</link>.
                     </para>
                 </listitem>
                 <listitem>
@@ -1059,8 +1057,8 @@ javax.xml.stream.XMLOutputFactory=com.be
             <itemizedlist>
                 <listitem>
                     <para>
-                        A PGP key that conforms to the <ulink 
url="http://www.apache.org/dev/release-signing.html";>requirement
-                        for Apache release signing</ulink>. To make the 
release process easier, the passphrase for the
+                        A PGP key that conforms to the <link 
xlink:href="http://www.apache.org/dev/release-signing.html";>requirement
+                        for Apache release signing</link>. To make the release 
process easier, the passphrase for the
                         code signing key should be configured in 
<filename>${user.home}/.m2/settings.xml</filename>:
                     </para>
 <screen><![CDATA[<settings>
@@ -1100,7 +1098,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                         On Unix systems this will work out of the box if you 
have SSH installed, a public key installed
                         on <literal>people.apache.org</literal> and your user 
name is the same on your local system and
                         <literal>people.apache.org</literal>. If this is not 
the case, some additional configuration will be
-                        required, as described in <ulink 
url="http://maven.apache.org/plugins/maven-deploy-plugin/examples/deploy-ssh-external.html"/>.
+                        required, as described in <link 
xlink:href="http://maven.apache.org/plugins/maven-deploy-plugin/examples/deploy-ssh-external.html"/>.
                     </para>
                 </listitem>
             </itemizedlist>
@@ -1152,9 +1150,9 @@ javax.xml.stream.XMLOutputFactory=com.be
                 </step>
                 <step>
                     <para>
-                        Log in to the Nexus repository (<ulink 
url="https://repository.apache.org/"/>
+                        Log in to the Nexus repository (<link 
xlink:href="https://repository.apache.org/"/>
                         and close the staging repository. The name of the 
staging profile is
-                        <literal>org.apache.ws</literal>. See <ulink 
url="http://maven.apache.org/developers/release/apache-release.html"/>
+                        <literal>org.apache.ws</literal>. See <link 
xlink:href="http://maven.apache.org/developers/release/apache-release.html"/>
                         for a more thorough description of this step.
                     </para>
                 </step>
@@ -1224,7 +1222,7 @@ javax.xml.stream.XMLOutputFactory=com.be
                 <step>
                     <para>
                         Promote the artifacts in the staging repository. See
-                        <ulink 
url="http://maven.apache.org/developers/release/apache-release.html"/>
+                        <link 
xlink:href="http://maven.apache.org/developers/release/apache-release.html"/>
                         for detailed instructions for this step.
                     </para>
                 </step>
@@ -1277,12 +1275,12 @@ python <replaceable>path_to_etc</replace
                 </listitem>
                 <listitem>
                     <para>
-                        the Maven site has been synchronized to <ulink 
url="http://ws.apache.org/axiom/"/>;
+                        the Maven site has been synchronized to <link 
xlink:href="http://ws.apache.org/axiom/"/>;
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        the binary and source distributions can be downloaded 
from <ulink url="http://ws.apache.org/axiom/download.cgi"/>.
+                        the binary and source distributions can be downloaded 
from <link xlink:href="http://ws.apache.org/axiom/download.cgi"/>.
                     </para>
                 </listitem>
             </itemizedlist>
@@ -1382,22 +1380,22 @@ python <replaceable>path_to_etc</replace
             <itemizedlist>
                 <listitem>
                     <para>
-                        <ulink 
url="http://www.apache.org/legal/src-headers.html";>ASF Source Header and 
Copyright Notice Policy</ulink>
+                        <link 
xlink:href="http://www.apache.org/legal/src-headers.html";>ASF Source Header and 
Copyright Notice Policy</link>
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <ulink 
url="http://apache.org/foundation/marks/pmcs";>Apache Project Branding 
Guidelines</ulink>
+                        <link 
xlink:href="http://apache.org/foundation/marks/pmcs";>Apache Project Branding 
Guidelines</link>
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <ulink url="http://projects.apache.org/doap.html";>DOAP 
Files</ulink>
+                        <link 
xlink:href="http://projects.apache.org/doap.html";>DOAP Files</link>
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <ulink 
url="http://www.apache.org/dev/release-publishing.html";>Publishing 
Releases</ulink>
+                        <link 
xlink:href="http://www.apache.org/dev/release-publishing.html";>Publishing 
Releases</link>
                     </para>
                 </listitem>
             </itemizedlist>
@@ -1406,7 +1404,7 @@ python <replaceable>path_to_etc</replace
     
     <appendix>
         <title>Appendix</title>
-        <section id="install.ibm.jdk">
+        <section xml:id="install.ibm.jdk">
             <title>Installing IBM's JDK on Debian Linux</title>
             <procedure>
                 <step>
@@ -1419,7 +1417,7 @@ python <replaceable>path_to_etc</replace
                 <step>
                     <para>
                         Download the <filename>.tgz</filename> version of the 
JDK from
-                        <ulink 
url="http://www.ibm.com/developerworks/java/jdk/linux/download.html"/>.
+                        <link 
xlink:href="http://www.ibm.com/developerworks/java/jdk/linux/download.html"/>.
                     </para>
                 </step>
                 <step>

Modified: webservices/axiom/trunk/userguide/src/docbkx/userguide.xml
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/userguide/src/docbkx/userguide.xml?rev=1601685&r1=1601684&r2=1601685&view=diff
==============================================================================
--- webservices/axiom/trunk/userguide/src/docbkx/userguide.xml (original)
+++ webservices/axiom/trunk/userguide/src/docbkx/userguide.xml Tue Jun 10 
16:55:43 2014
@@ -19,7 +19,7 @@
   ~ under the License.
   -->
 <book>
-    <bookinfo>
+    <info>
         <title>Axiom User Guide</title>
         <releaseinfo>&version;
         </releaseinfo>
@@ -32,7 +32,7 @@
                 this file except in compliance with the License. You may 
obtain a copy of the License at
             </para>
             <para>
-                <ulink url="http://www.apache.org/licenses/LICENSE-2.0"/>
+                <link xlink:href="http://www.apache.org/licenses/LICENSE-2.0"/>
             </para>
             <para>
                 Unless required by applicable law or agreed to in writing, 
software distributed under the License is
@@ -41,7 +41,7 @@
                 License.
             </para>
         </legalnotice>
-    </bookinfo>
+    </info>
 
     <toc/>
 
@@ -54,7 +54,7 @@
                 that is initially developed for Apache Axis2. XML infoset 
refers to the information included inside the
                 XML, and for programmatic manipulation it is convenient to 
have a representation of this XML infoset in
                 a language specific manner. For an object oriented language 
the obvious choice is a model made up of
-                objects. <ulink url="http://www.w3.org/DOM/";>DOM</ulink> and 
<ulink url="http://www.jdom.org/";>JDOM</ulink>
+                objects. <link xlink:href="http://www.w3.org/DOM/";>DOM</link> 
and <link xlink:href="http://www.jdom.org/";>JDOM</link>
                 are two such XML models. Axiom is conceptually similar to such 
an XML model by its external behavior but
                 deep down it is very much different. The objective of this 
tutorial is to introduce the basics of Axiom and
                 explain the best practices to be followed while using Axiom. 
However, before diving in to the deep end of
@@ -67,8 +67,8 @@
                 This tutorial can be used by anyone who is interested in Axiom 
and needs to
                 gain a deeper knowledge about the model. However, it is 
assumed that the
                 reader has a basic understanding of the concepts of XML (such 
as
-                <ulink 
src="http://www.w3.org/TR/REC-xml-names/";>Namespaces</ulink>) and a working
-                knowledge of tools such as <ulink 
href="http://ant.apache.org/";>Ant</ulink>.
+                <link 
xlink:href="http://www.w3.org/TR/REC-xml-names/";>Namespaces</link>) and a 
working
+                knowledge of tools such as <link 
xlink:href="http://ant.apache.org/";>Ant</link>.
                 Knowledge in similar object models such as DOM will be quite 
helpful in
                 understanding Axiom, mainly to highlight the differences and 
similarities
                 between the two, but such knowledge is not assumed. Several 
links are listed
@@ -81,8 +81,8 @@
             <para>
                 Pull parsing is a recent trend in XML processing. The 
previously popular XML
                 processing frameworks such as
-                <ulink 
url="http://en.wikipedia.org/wiki/Simple_API_for_XML";>SAX</ulink> and
-                <ulink 
url="http://en.wikipedia.org/wiki/Document_Object_Model";>DOM</ulink> were
+                <link 
xlink:href="http://en.wikipedia.org/wiki/Simple_API_for_XML";>SAX</link> and
+                <link 
xlink:href="http://en.wikipedia.org/wiki/Document_Object_Model";>DOM</link> were
                 "push-based" which means the control of the parsing was in the 
hands of the
                 parser itself. This approach is fine and easy to use, but it 
was not
                 efficient in handling large XML documents since a complete 
memory model will
@@ -90,8 +90,8 @@
                 parser only proceeds at the users command. The user can decide 
to store or
                 discard events generated from the parser. Axiom is based on 
pull parsing. To
                 learn more about XML pull parsing see the
-                <ulink 
url="http://www.bearcave.com/software/java/xml/xmlpull.html";>XML pull
-                parsing introduction</ulink>.
+                <link 
xlink:href="http://www.bearcave.com/software/java/xml/xmlpull.html";>XML pull
+                parsing introduction</link>.
             </para>
         </section>
         <section>
@@ -102,7 +102,7 @@
                 The original OM was proposed as a store for the pull parser 
events for
                 later processing, at the Axis summit held in Colombo, Sri 
Lanka, in September
                 2004. However, this approach was soon improved and OM was 
pursued as a
-                complete <ulink url="http://dret.net/glossary/xmlinfoset";>XML 
infoset</ulink> model
+                complete <link 
xlink:href="http://dret.net/glossary/xmlinfoset";>XML infoset</link> model
                 due to its flexibility. Several implementation techniques were 
attempted
                 during the initial phases. The two most promising techniques 
were the table
                 based technique and the link list based technique. During the 
intermediate
@@ -116,7 +116,7 @@
                 tight integration was evident at this stage and this resulted 
in having SOAP
                 specific interfaces as part of OM rather than a layer on top 
of it. OM was
                 deliberately made
-                <ulink 
url="http://en.wikipedia.org/wiki/Application_programming_interface";>API</ulink>
+                <link 
xlink:href="http://en.wikipedia.org/wiki/Application_programming_interface";>API</link>
                 centric. It allows the implementations to take place 
independently and
                 swapped without affecting the program later.
             </para>
@@ -127,7 +127,7 @@
                 Axiom is a lightweight XML infoset representation that 
supports deferred building
                 That means that the object model can be
                 manipulated as flexibly as any other object model (Such as
-                <ulink url="http://www.jdom.org/";>JDOM</ulink>), but 
underneath, the objects will be
+                <link xlink:href="http://www.jdom.org/";>JDOM</link>), but 
underneath, the objects will be
                 created only when they are absolutely required. This leads to 
much less
                 memory intensive programming. Following is a short feature 
overview of OM.
             </para>
@@ -170,8 +170,8 @@
         <section>
             <title>Relation with StAX</title>
             <para>
-                <ulink 
url="http://today.java.net/pub/a/today/2006/07/20/introduction-to-stax.html";>StAX</ulink>
-                (<ulink url="http://www.jcp.org/en/jsr/detail?id=173";>JSR 
173</ulink>) is the standard pull parser API for Java.            
+                <link 
xlink:href="http://today.java.net/pub/a/today/2006/07/20/introduction-to-stax.html";>StAX</link>
+                (<link 
xlink:href="http://www.jcp.org/en/jsr/detail?id=173";>JSR 173</link>) is the 
standard pull parser API for Java.            
                 Axiom makes use of the StAX API to allow application code to 
access the object model in streaming mode, which means
                 that application code can request an 
<classname>XMLStreamReader</classname> for any document or element information 
item.
                 In addition, support for deferred building relies on the usage 
of a pull parser. The two standard implementations
@@ -196,7 +196,7 @@
         <section>
             <title>Where Does SOAP Come into Play?</title>
             <para>
-                In a nutshell <ulink 
url="http://www.w3schools.com/SOAP/soap_intro.asp";>SOAP</ulink> is an
+                In a nutshell <link 
xlink:href="http://www.w3schools.com/SOAP/soap_intro.asp";>SOAP</link> is an
                 information exchange protocol based on XML. SOAP has a defined 
set of XML
                 elements that should be used in messages. Since Axis2 is a 
"SOAP Engine" and
                 Axiom is built for Axis2, a set of SOAP specific objects were 
also defined along
@@ -224,7 +224,7 @@
                 <listitem>
                     <para>
                         A prebuilt binary distribution can be
-                        <ulink 
url="http://ws.apache.org/axiom/download.cgi";>downloaded</ulink>
+                        <link 
xlink:href="http://ws.apache.org/axiom/download.cgi";>downloaded</link>
                         from the site. Source distributions are also 
available. They can be built
                         using Maven 2, by executing <command>mvn 
install</command> in the root
                         directory of the distribution.
@@ -236,7 +236,7 @@
                         version (trunk) or previous releases from the 
Subversion repository and build it
                         using Maven 2. Detailed information on getting the 
source code
                         from the Subversion repository is found
-                        <ulink 
url="http://ws.apache.org/axiom/source-repository.html";>here</ulink>.
+                        <link 
xlink:href="http://ws.apache.org/axiom/source-repository.html";>here</link>.
                     </para>
                 </listitem>
             </orderedlist>
@@ -261,7 +261,7 @@
                 The reason for this is to cater for different implementations 
of the Axiom API,
                 as shown in <xref linkend="fig_api"/>.
             </para>
-            <figure id="fig_api">
+            <figure xml:id="fig_api">
                 <title>The Axiom API with different implementations</title>
                 <mediaobject>
                     <imageobject>
@@ -293,7 +293,7 @@
                 factory for plain XML. <xref linkend="list2"/> shows how this 
factory is used to create
                 several <classname>OMElement</classname> instances.
             </para>
-            <example id="list2">
+            <example xml:id="list2">
                 <title>Creating an object model programmatically</title>
 <programlisting>//create a factory
 OMFactory factory = OMAbstractFactory.getOMFactory();
@@ -317,7 +317,7 @@ public void addAttribute(OMAttribute att
                 <xref linkend="ex-addChild"/> shows how this method is used to 
assemble the three elements
                 created in <xref linkend="list2"/> into a tree structure.
             </para>
-            <example id="ex-addChild">
+            <example xml:id="ex-addChild">
                 <title>Usage of <methodname>addChild</methodname></title>
 <programlisting>//set the children
 elt11.addChild(elt21);
@@ -357,7 +357,7 @@ root.addChild(elt12);</programlisting>
                     This approach is still supported as well.
                 </para>
             </note>
-            <example id="list1">
+            <example xml:id="list1">
                 <title>Creating an object model from an input stream</title>
 <programlisting>//create the input stream
 InputStream in = new FileInputStream(file);
@@ -439,7 +439,7 @@ public OMNamespace findNamespace(String 
             <para>
                 The following simple code segment shows how the namespaces are 
dealt in OM
             </para>
-            <example id="list6">
+            <example xml:id="list6">
                 <title>Creating an OM document with namespaces</title>
 <programlisting>OMFactory factory = OMAbstractFactory.getOMFactory();
 OMNamespace ns1 = factory.createOMNamespace("bar","x");
@@ -492,7 +492,7 @@ while(children.hasNext()){
                 </para>
             </important>
         </section>
-        <section id="serializer">
+        <section xml:id="serializer">
             <title>Serializer</title>
             <para>
                 An Axiom tree can be serialized either as the pure object 
model or the pull event
@@ -588,7 +588,7 @@ OMElement documentElement = builder.getD
 //dump the out put to console with caching
 System.out.println(documentElement.toStringWithConsume());</programlisting>
         </section>
-        <section id="StAXUtils">
+        <section xml:id="StAXUtils">
             <title>Creating stream readers and writers using 
<classname>StAXUtils</classname></title>
             <para>
                 The normal way to create 
<classname>XMLStreamReader</classname> and
@@ -621,7 +621,7 @@ System.out.println(documentElement.toStr
                     Therefore, when using Axiom versions prior to 1.2.9, you 
should avoid using <classname>StAXUtils</classname>
                     together with a StAX implementation other than Woodstox, 
especially in a highly
                     concurrent environment. The issue has been fixed in Axiom 
1.2.9. See
-                    <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-74";>AXIOM-74</ulink>
+                    <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-74";>AXIOM-74</link>
                     for more details.
                 </para>
             </caution>
@@ -763,7 +763,7 @@ try {
                     sequence of events. Starting with Axiom 1.2.8, the object 
model builder
                     will never attempt to read new events from a parser that 
has previously reported
                     an I/O or parsing error. These versions of Axiom are 
therefore safe; see
-                    <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-34";>AXIOM-34</ulink>
+                    <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-34";>AXIOM-34</link>
                     for more details.
                 </para>
             </caution>
@@ -780,7 +780,7 @@ try {
         </section>
     </chapter>
 
-    <chapter id="advanced">
+    <chapter xml:id="advanced">
         <title>Advanced Operations with Axiom</title>
         <section>
             <title>Accessing the Pull Parser</title>
@@ -819,13 +819,13 @@ try {
 
     <chapter>
         <title>Integrating Axiom into your project</title>
-        <section id="using-maven2">
+        <section xml:id="using-maven2">
             <title>Using Axiom in a Maven 2 project</title>
             <section>
                 <title>Adding Axiom as a dependency</title>
                 <para>
                     If your project uses Maven 2, it is fairly easy to add 
Axiom to your project.
-                    Simply add the following entries to the <sgmltag 
class="element">dependencies</sgmltag>
+                    Simply add the following entries to the <tag 
class="element">dependencies</tag>
                     section of <filename>pom.xml</filename>:
                 </para>
 <programlisting><![CDATA[<dependency>
@@ -840,7 +840,7 @@ try {
 </dependency>]]></programlisting>
                 <para>
                     All Axiom releases are deployed to the Maven central 
repository and there is no need
-                    to add an entry to the <sgmltag 
class="element">repositories</sgmltag> section.
+                    to add an entry to the <tag 
class="element">repositories</tag> section.
                     However, if you want to work with the development 
(snapshot) version of Axiom, it
                     is necessary to add the Apache Snapshot Repository:
                 </para>
@@ -865,9 +865,9 @@ try {
                 <para>
                     Axiom requires the Java Activation Framework (JAF) and the 
JavaMail API to work. There are two
                     commonly used incarnations of these libraries: one is 
Sun's reference implementation, the other
-                    is part of the <ulink 
url="http://geronimo.apache.org/";>Geronimo</ulink> project. Axiom declares
+                    is part of the <link 
xlink:href="http://geronimo.apache.org/";>Geronimo</link> project. Axiom declares
                     dependencies on the Geronimo versions (though that might
-                    <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-319";>change</ulink> in the 
future).
+                    <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-319";>change</link> in 
the future).
                     If your project uses another library that depends on JAF 
and/or JavaMail, but that refers
                     to Sun's implementation, your project will end up with 
dependencies on two different
                     artifacts implementing the same API.
@@ -917,7 +917,7 @@ try {
                 and/or property files. This is also important when using third 
party applications or
                 libraries that depend on Axiom.
             </para>
-            <section id="factory.properties">
+            <section xml:id="factory.properties">
                 <title>Changing the default StAX factory settings</title>
                 <note>
                     <para>
@@ -964,7 +964,7 @@ try {
                     </para>
                     <para>
                         The only way to strictly preserve CR characters is to 
serialize them as
-                        character entities, i.e. <sgmltag 
class="genentity">#xD</sgmltag>. This is the default
+                        character entities, i.e. <tag 
class="genentity">#xD</tag>. This is the default
                         behavior of Woodstox. This can be easily checked using 
the following Java snippet:
                     </para>
 <programlisting>OMFactory factory = OMAbstractFactory.getOMFactory();
@@ -991,7 +991,7 @@ with CRLF</root>]]></screen>
                     </note>
                     <para>
                         In some cases this behavior may be 
undesirable<footnote><para>See
-                        <ulink 
url="http://jira.codehaus.org/browse/WSTX-94";>WSTX-94</ulink> for a discussion
+                        <link 
xlink:href="http://jira.codehaus.org/browse/WSTX-94";>WSTX-94</link> for a 
discussion
                         about this.</para></footnote>. Fortunately Woodstox 
allows to modify this behavior
                         by changing the value of the 
<varname>com.ctc.wstx.outputEscapeCr</varname> property
                         on the <classname>XMLOutputFactory</classname>. If 
Axiom is used (and in particular
@@ -1131,8 +1131,8 @@ with CRLF</root>]]></screen>
                         </listitem>
                     </orderedlist>
                     <para>
-                        As explained in <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-255";>AXIOM-255</ulink>
-                        and <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-122";>AXIOM-122</ulink>,
+                        As explained in <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-255";>AXIOM-255</link>
+                        and <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-122";>AXIOM-122</link>,
                         in Axiom 1.2.8, the type of stream reader provided by 
the API was not always well defined.
                         Sometimes the type of the stream reader even depended 
on the state of the Axiom tree
                         (i.e. whether some part of it has been accessed or 
not).
@@ -1147,9 +1147,9 @@ with CRLF</root>]]></screen>
                     </para>
                 </section>
             </section>
-            <section id="changes-1.2.11">
+            <section xml:id="changes-1.2.11">
                 <title>Changes in Axiom 1.2.11</title>
-                <section id="OMXMLBuilderFactory">
+                <section xml:id="OMXMLBuilderFactory">
                     <title>Resurrection of the 
<classname>OMXMLBuilderFactory</classname> API</title>
                     <para>
                         Historically, 
<classname>org.apache.axiom.om.impl.llom.factory.OMXMLBuilderFactory</classname>
 was used to
@@ -1182,7 +1182,7 @@ with CRLF</root>]]></screen>
                         migration should be easy.
                     </para>
                 </section>
-                <section id="iterator-changes">
+                <section xml:id="iterator-changes">
                     <title>Changes in the behavior of certain iterators</title>
                     <para>
                         In Axiom 1.2.10 and previous versions, iterators 
returned by methods such as <methodname>OMIterator#getChildren()</methodname>
@@ -1235,7 +1235,7 @@ while (iterator.hasNext()) {
                     </para>
                 </section>
             </section>
-            <section id="changes-1.2.13">
+            <section xml:id="changes-1.2.13">
                 <title>Changes in Axiom 1.2.13</title>
                 <section>
                     <title>Handling of illegal namespace declarations</title>
@@ -1354,8 +1354,8 @@ while (iterator.hasNext()) {
                 <section>
                     <title>Usage of Apache James Mime4J as MIME parser</title>
                     <para>
-                        Starting with version 1.2.13, Axiom uses <ulink 
url="http://james.apache.org/mime4j/";>Apache
-                        James Mime4J</ulink> as MIME parser implementation 
instead of its own custom parser
+                        Starting with version 1.2.13, Axiom uses <link 
xlink:href="http://james.apache.org/mime4j/";>Apache
+                        James Mime4J</link> as MIME parser implementation 
instead of its own custom parser
                         implementation. The public API as defined by the 
<classname>Attachments</classname> class
                         remains unchanged, with the following exceptions:
                     </para>
@@ -1440,7 +1440,7 @@ while (iterator.hasNext()) {
                     </itemizedlist>
                 </section>
             </section>
-            <section id="changes-1.2.14">
+            <section xml:id="changes-1.2.14">
                 <title>Changes in Axiom 1.2.14</title>
                 <section>
                     <title>Upgrade of Woodstox</title>
@@ -1464,7 +1464,7 @@ while (iterator.hasNext()) {
                     </para>
                     <para>
                         For more information about the new semantics, refer to 
the Javadoc of <classname>DOMMetaFactory</classname>
-                        and to <ulink 
url="https://issues.apache.org/jira/browse/AXIOM-412";>AXIOM-412</ulink>.
+                        and to <link 
xlink:href="https://issues.apache.org/jira/browse/AXIOM-412";>AXIOM-412</link>.
                     </para>
                 </section>
                 <section>
@@ -1477,7 +1477,7 @@ while (iterator.hasNext()) {
                     </para>
                 </section>
             </section>
-            <section id="changes-1.2.15">
+            <section xml:id="changes-1.2.15">
                 <title>Changes in Axiom 1.2.15</title>
                 <section>
                     <title>Removal of the JavaMail dependency</title>
@@ -1526,11 +1526,11 @@ public InputStream getInputStream() thro
                 <methodname>getInputStream</methodname> 
<quote>destructive</quote>. Consider
                 the implementation shown in <xref 
linkend="InputStreamDataSource"/><footnote><para>The example
                 shown is actually a simplified version of code that is 
-                <ulink 
url="http://svn.apache.org/repos/asf/axis/axis2/java/core/tags/v1.5/modules/kernel/src/org/apache/axis2/builder/unknowncontent/InputStreamDataSource.java";>part
 of Axis2 1.5</ulink>.</para></footnote>.
+                <link 
xlink:href="http://svn.apache.org/repos/asf/axis/axis2/java/core/tags/v1.5/modules/kernel/src/org/apache/axis2/builder/unknowncontent/InputStreamDataSource.java";>part
 of Axis2 1.5</link>.</para></footnote>.
                 It is clear that this data source can only be read once and 
that any subsequent call to
                 <methodname>getInputStream</methodname> will return an already 
closed input stream.
             </para>
-            <example id="InputStreamDataSource">
+            <example xml:id="InputStreamDataSource">
                 <title><classname>DataSource</classname> implementation that 
violates the interface contract</title>
 <programlisting>public class InputStreamDataSource implements DataSource {
     private final InputStream is;
@@ -1566,7 +1566,7 @@ public InputStream getInputStream() thro
             </para>
             <para>
                 Imagine for example<footnote><para>For another example, see
-                <ulink 
url="http://markmail.org/thread/omx7umk5fnpb6dnc"/>.</para></footnote>
+                <link 
xlink:href="http://markmail.org/thread/omx7umk5fnpb6dnc"/>.</para></footnote>
                 that the implementation shown above is used to produce an
                 MTOM message. At first this will work without any problems 
because the data
                 source is read only once when serializing the message. If 
later on the MTOM
@@ -1664,9 +1664,9 @@ public InputStream getInputStream() thro
                     <classname>XMLStreamReader</classname> provided by
                     <methodname>OMElement#getXMLStreamReader()</methodname>. 
For example, older versions of ADB
                     (Axis2 Data Binding) used the following 
code<footnote><para>For the complete
-                    code, see <ulink 
url="http://svn.apache.org/repos/asf/axis/axis2/java/core/tags/v1.5/modules/adb/src/org/apache/axis2/databinding/ADBDataSource.java"/>.</para></footnote>:
+                    code, see <link 
xlink:href="http://svn.apache.org/repos/asf/axis/axis2/java/core/tags/v1.5/modules/adb/src/org/apache/axis2/databinding/ADBDataSource.java"/>.</para></footnote>:
                 </para>
-                <example id="adb-getReader">
+                <example xml:id="adb-getReader">
                     <title><methodname>OMDataSource#getReader()</methodname> 
implementation used in older ADB versions</title>
 <programlisting>public XMLStreamReader getReader() throws XMLStreamException {
     MTOMAwareOMBuilder mtomAwareOMBuilder = new MTOMAwareOMBuilder();
@@ -1728,7 +1728,7 @@ public InputStream getInputStream() thro
                         <para>
                             The <methodname>getReader</methodname> method also 
uses an intermediary
                             Axiom tree<footnote><para>See e.g.
-                            <ulink 
url="http://svn.apache.org/repos/asf/axis/axis2/java/core/tags/v1.5/modules/kernel/src/org/apache/axis2/builder/unknowncontent/UnknownContentOMDataSource.java"/>.</para></footnote>.
+                            <link 
xlink:href="http://svn.apache.org/repos/asf/axis/axis2/java/core/tags/v1.5/modules/kernel/src/org/apache/axis2/builder/unknowncontent/UnknownContentOMDataSource.java"/>.</para></footnote>.
                             In that case it doesn't make sense to use an 
<classname>OMSourcedElement</classname>
                             in the first place! At least it doesn't make sense 
if one assumes that
                             in general the 
<classname>OMSourcedElement</classname> will either be
@@ -1754,7 +1754,7 @@ public InputStream getInputStream() thro
         </section>
     </chapter>
 
-    <chapter id="appendix">
+    <chapter xml:id="appendix">
         <title>Appendix</title>
         <section>
             <title>Program Listing for Build and Serialize</title>
@@ -1793,7 +1793,7 @@ public class TestOMBuilder {
     }
 }</programlisting>
         </section>
-        <section id="links">
+        <section xml:id="links">
             <title>Links</title>
             <para>
                 For basics in XML
@@ -1801,27 +1801,27 @@ public class TestOMBuilder {
             <itemizedlist>
                 <listitem>
                     <para>
-                        <ulink 
url="http://www-128.ibm.com/developerworks/xml/newto/index.html";>Developerworks 
Introduction to XML</ulink>
+                        <link 
xlink:href="http://www-128.ibm.com/developerworks/xml/newto/index.html";>Developerworks
 Introduction to XML</link>
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <ulink 
url="http://www.bearcave.com/software/java/xml/xmlpull.html";>Introduction to 
Pull parsing</ulink>
+                        <link 
xlink:href="http://www.bearcave.com/software/java/xml/xmlpull.html";>Introduction
 to Pull parsing</link>
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <ulink 
url="http://today.java.net/pub/a/today/2006/07/20/introduction-to-stax.html";>Introduction
 to StAX</ulink>
+                        <link 
xlink:href="http://today.java.net/pub/a/today/2006/07/20/introduction-to-stax.html";>Introduction
 to StAX</link>
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <ulink 
url="http://www.jaxmag.com/itr/online_artikel/psecom,id,726,nodeid,147.html";>Fast
 and Lightweight Object Model for XML</ulink>
+                        <link 
xlink:href="http://www.jaxmag.com/itr/online_artikel/psecom,id,726,nodeid,147.html";>Fast
 and Lightweight Object Model for XML</link>
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <ulink 
url="http://www-128.ibm.com/developerworks/library/x-axiom/";>Get the most out 
of XML processing with AXIOM</ulink>
+                        <link 
xlink:href="http://www-128.ibm.com/developerworks/library/x-axiom/";>Get the 
most out of XML processing with AXIOM</link>
                     </para>
                 </listitem>
             </itemizedlist>
@@ -1832,21 +1832,21 @@ public class TestOMBuilder {
         <title>References</title>
         <bibliodiv>
             <title>Specifications</title>
-            <biblioentry id="bib.xml">
+            <biblioentry xml:id="bib.xml">
                 <abbrev>XML</abbrev>
-                <title><ulink 
url="http://www.w3.org/TR/2008/REC-xml-20081126/";>Extensible Markup Language 
(XML) 1.0 (Fifth Edition)</ulink></title>
+                <title><link 
xlink:href="http://www.w3.org/TR/2008/REC-xml-20081126/";>Extensible Markup 
Language (XML) 1.0 (Fifth Edition)</link></title>
                 <publishername>W3C Recommendation</publishername>
                 <pubdate>26 November 2008</pubdate>
             </biblioentry>
-            <biblioentry id="bib.xmlns">
+            <biblioentry xml:id="bib.xmlns">
                 <abbrev>XMLNS</abbrev>
-                <title><ulink 
url="http://www.w3.org/TR/2009/REC-xml-names-20091208/";>Namespaces in XML 1.0 
(Third Edition)</ulink></title>
+                <title><link 
xlink:href="http://www.w3.org/TR/2009/REC-xml-names-20091208/";>Namespaces in 
XML 1.0 (Third Edition)</link></title>
                 <publishername>W3C Recommendation</publishername>
                 <pubdate>8 December 2009</pubdate>
             </biblioentry>
-            <biblioentry id="bib.xmlns11">
+            <biblioentry xml:id="bib.xmlns11">
                 <abbrev>XMLNS11</abbrev>
-                <title><ulink 
url="http://www.w3.org/TR/2006/REC-xml-names11-20060816/";>Namespaces in XML 1.1 
(Second Edition)</ulink></title>
+                <title><link 
xlink:href="http://www.w3.org/TR/2006/REC-xml-names11-20060816/";>Namespaces in 
XML 1.1 (Second Edition)</link></title>
                 <publishername>W3C Recommendation</publishername>
                 <pubdate>16 August 2006</pubdate>
             </biblioentry>


Reply via email to