You are looking at the HTML representation of the XML format.
HTML is good for debugging, but is unsuitable for application use.
Specify the format parameter to change the output format.
To see the non HTML representation of the XML format, set format=xml.
See the complete documentation, or API help for more information.
<?xml version="1.0"?>
<api>
  <query>
    <pages>
      <page pageid="1497" ns="0" title="Tutorial">
        <revisions>
          <rev contentformat="text/x-wiki" contentmodel="wikitext" xml:space="preserve">== Compiling the Program ==
=== C ===
 gcc &lt;input.c&gt; -o output -Wall
=== C++ ===
 g++ &lt;input.c&gt; -o output -Wall
Note that attempting to compile a C++ file with '''gcc''' will fail with ''' undefined reference to `__gxx_personality_v0''''

'''-Wall''' turns on all compiler warnings, It is not necessary, but often useful to catch silly mistakes in the code.

=== Java ===
 javac &lt;input.java&gt;

== Data Representation ==
=== Numbers ===
==== Boolean ====
==== Integers ====
===== Fixed Length =====
*'''char''': 8 bits in C/C++, 16 bits in Java
*'''int''': 32 bits
*'''long''': 32 bits in C/C++, 64 bit in Java
*'''long long''': 64 bits in C/C++, GCC only. ('''__int64''' in Microsoft C++)

An n-bit signed integer can represent values int the range [-2&lt;sup&gt;n-1&lt;/sup&gt;, 2&lt;sup&gt;n-1&lt;/sup&gt; - 1]. &lt;br&gt;
An unsigned integer can represent values in the range [0, 2&lt;sup&gt;n&lt;/sup&gt; - 1] (Not available in Java) &lt;br&gt;
Values are represented in 2's complement (mod 2&lt;sup&gt;n&lt;/sup&gt;) during overflow.

Division rounds towards 0
** (-5) / 3 = -1
** 7 / 3 = 2
** 1 / 2 = 0
===== Arbitrary Length =====
Java has '''BigInteger'''
* This is slow, but infinitely precise.
==== Floating Point ====
* [http://www.cygnus-software.com/papers/comparingfloats/comparingfloats.htm Comparing Floating Point numbers]

=== Strings ===
=== Structures ===
=== Classes ===</rev>
        </revisions>
      </page>
    </pages>
  </query>
</api>