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-continue>
    <allpages gapcontinue="Rect" />
  </query-continue>
  <query>
    <pages>
      <page pageid="1421" ns="0" title="ReadRequirement">
        <revisions>
          <rev contentformat="text/x-wiki" contentmodel="wikitext" xml:space="preserve">&lt;onlyinclude&gt;
Reads requirements from the given [[CBitStream]] into variables you provide.
&lt;/onlyinclude&gt;

This is primarily for use in conjunction with other requirement-handling methods.
It can be used to check the requirements set by [[AddRequirement]].

The first parameter is the [[CBitStream]] you're reading the requirements from.
The requirement string is the type of requirement - the standard ones are &quot;blob&quot;, &quot;tech&quot;, &quot;coin&quot;, &quot;shop&quot; and &quot;time&quot;, though you can define your own.
The blobName string is the name of the blob that is required, if the requirement is for a kind of blob - it will be blank (&quot;&quot;) if it is not a kind of blob, for example if it is time.
The friendlyName string is what should be displayed to the player as text.

&lt;syntaxhighlight lang=&quot;cpp&quot;&gt;
void ReadRequirement( CBitStream@ bs, std::string &amp;requirement, std::string &amp;blobName, std::string &amp;friendlyName, u16 &amp;quantity)
&lt;/syntaxhighlight&gt;

Example from Entities/Workshops/Scripts/WorkshopCommon.as:
&lt;syntaxhighlight lang=&quot;cpp&quot; highlight=&quot;7&quot;&gt;
void SetButtonRequirementsText( CGridButton @button, CBitStream@ bs, bool missing )
{
  string text, requiredType, name, friendlyName;
  u16 quantity = 0;					
  while (!bs.isBufferEnd())
  {
    ReadRequirement( bs, requiredType, name, friendlyName, quantity );

    string quantityColor;
    if (missing)
      quantityColor = &quot;$RED$&quot;;
    else
      quantityColor = &quot;$GREEN$&quot;;

    if (requiredType == &quot;blob&quot;)
    {
      text += quantityColor;
      text += quantity;
      text += quantityColor;
      text += &quot; $&quot;; text += name; text += &quot;$&quot;;
      text += &quot; &quot;;
      text += quantityColor;
      text += friendlyName;
      text += quantityColor;
      text += &quot; required.\n\n&quot;;
    }
    else if (requiredType == &quot;tech&quot;)
    {
      text += &quot; $&quot;; text += name; text += &quot;$ &quot;;
      text += quantityColor;
      text += friendlyName;
      text += quantityColor;
      text += &quot; technology required.\n\n&quot;;									
    }
    else if (requiredType == &quot;coin&quot;)
    {
      text += quantity;					
      text += &quot; $coin$ required\n\n&quot;;
    }
    else if (requiredType == &quot;shop&quot;)
    {
    }
    else
    if (requiredType == &quot;time&quot;)
    {
      text += &quot;$TIME$ &quot;;
      text += friendlyName;
      text += &quot; &quot;;
      text += quantityColor;
      text += quantity;
      text += quantityColor;
      text += &quot;\n\n&quot;;
    }
  }
button.SetHoverText( text );
}
&lt;/syntaxhighlight&gt;

[[Category:Scripting]]
[[Category:Global Functions]]</rev>
        </revisions>
      </page>
      <page pageid="3013" ns="0" title="Receiver">
        <revisions>
          <rev contentformat="text/x-wiki" contentmodel="wikitext" xml:space="preserve">{{Build|Version = }}
{{Receiver|Mechanism_overview}}</rev>
        </revisions>
      </page>
    </pages>
  </query>
</api>