<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
-->
<object xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="urn:xmlliterate.schema" name="object">
<description>An object in the schema.</description>
<classname>schema_object</classname>
<members>
<stringtype name="classname">
<description>The name of the "class" for the object during code generation. This name is also generally
used as the filename that this obect will be generated into.</description>
</stringtype>
<stringtype name="namespace">
<description>The namespace that will be used by this object and all nested objects. The notation
for namespaces is "x:y" which is a little different to languages like C++, so beware. If this
object is already a child of another object with a namespace, then this namespace will be
appended to the parents etc. So to collect a full namespace for an object, you need
to walk through all parent objects appending namespaces as you go.</description>
</stringtype>
<stringtype name="include">
<description>The include for this class. Often this is not needed, but "includes" will use
it if it's available. Only in C-like languages.</description>
</stringtype>
<stringtype name="imp">
<description>The import for this class. Often this is not needed, but "includes" will use
it if it's available. For java like languages.</description>
</stringtype>
<typedobjvectortype name="enumerations">
<description>All the enumerations used by members of an object.</description>
<reftype>enumeration</reftype>
</typedobjvectortype>
<typedobjvectortype name="typeimpls">
<description>All the type implementations used by the object.</description>
<reftype>typeimpl</reftype>
</typedobjvectortype>
<typedobjvectortype name="members">
<description>All the members of an object.</description>
<reftype>@typename</reftype>
</typedobjvectortype>
<typedobjvectortype name="constructors">
<description>All the constructors of an object.</description>
<reftype>constructor</reftype>
</typedobjvectortype>
<typedobjreftype name="destruct">
<description>The Destructor of an object.</description>
<reftype>destructor</reftype>
</typedobjreftype>
<typedobjvectortype name="methods">
<description>All the methods of an object.</description>
<reftype>method</reftype>
</typedobjvectortype>
<typedobjvectortype name="derived">
<description>All the derived objects of an object.</description>
<reftype>object</reftype>
</typedobjvectortype>
<typedobjvectortype name="tests">
<description>All the tests of an object.</description>
<reftype>test</reftype>
</typedobjvectortype>
</members>
<methods>
<method name="get_namespace">
<access>public</access>
<inheritance>concrete</inheritance>
<description>Get the namespace of this object.</description>
<returns>
<stringtype>
<description>Returns the namespace of this object. See "namespace" member for
the format.</description>
</stringtype>
</returns>
<implementations>
<xi:include href="cpp/get_namespace.xml"/>
<xi:include href="java/get_namespace.xml"/>
</implementations>
</method>
<method name="version">
<description>Return the internal version of the software.</description>
<inheritance>concrete</inheritance>
<access>public</access>
<scope>global</scope>
<returns>
<schema_versiontype>
<description>Return the internal software version.</description>
</schema_versiontype>
</returns>
<implementations>
<xi:include href="cpp/version.xml"/>
<xi:include href="java/version.xml"/>
</implementations>
</method>
</methods>
</object>