<?xml version="1.0"?>

<!--
	description:

		"Gexace Tasks"

	library: "Gobo Eiffel Ant"
	copyright: "Copyright (c) 2002-2008, Sven Ehrke and others"
	license: "MIT License"
	date: "$Date$"
	revision: "$Revision$"
-->

<chapter xmlns="http://www.gobosoft.com/eiffel/gobo/documentation" id="gexace_task">
<chapterinfo>
	<copyright>
		<year>2002-2008</year>
		<holder>Sven Ehrke</holder>
	</copyright>
	<author>
		<firstname>Sven</firstname><surname>Ehrke</surname>
	</author>
	<email>ericb@gobosoft.com</email>
	<date>20 April 2008</date>
</chapterinfo>

	<title>gexace</title>

	<section id="gexace_description">
		<title>Description</title>
		<para>
			Execute gexace.
		</para>
	</section>

	<section id="gexace_parameters">
		<title>Parameters</title>

		<variablelist>
			<varlistentry>
				<term>validate</term>
				<listitem>
					<para><emphasis>Description: </emphasis>Should xace file be validated?</para>
				</listitem>
				<listitem>
					<para><emphasis>Domain: </emphasis>Boolean (true|false)</para>
				</listitem>
				<listitem>
					<para><emphasis>Default: </emphasis>-</para>
				</listitem>
			</varlistentry>

			<varlistentry>
				<term>system</term>
				<listitem>
					<para><emphasis>Description: </emphasis>System</para>
				</listitem>
				<listitem>
					<para><emphasis>Domain: </emphasis>ise|ge</para>
				</listitem>
				<listitem>
					<para><emphasis>Default: </emphasis>-</para>
				</listitem>
			</varlistentry>

			<varlistentry>
				<term>library</term>
				<listitem>
					<para><emphasis>Description: </emphasis>library</para>
				</listitem>
				<listitem>
					<para><emphasis>Domain: </emphasis>ise|ge</para>
				</listitem>
				<listitem>
					<para><emphasis>Default: </emphasis>-</para>
				</listitem>
			</varlistentry>

			<varlistentry>
				<term>format</term>
				<listitem>
					<para><emphasis>Description: </emphasis>format</para>
				</listitem>
				<listitem>
					<para><emphasis>Domain: </emphasis>ace|ecf|xace</para>
				</listitem>
				<listitem>
					<para><emphasis>Default: </emphasis>-</para>
				</listitem>
			</varlistentry>

			<varlistentry>
				<term>verbose</term>
				<listitem>
					<para><emphasis>Description: </emphasis>verbose</para>
				</listitem>
				<listitem>
					<para><emphasis>Domain: </emphasis>Boolean (true|false)</para>
				</listitem>
				<listitem>
					<para><emphasis>Default: </emphasis>-</para>
				</listitem>
			</varlistentry>

			<varlistentry>
				<term>xace</term>
				<listitem>
					<para><emphasis>Description: </emphasis>Xace file</para>
				</listitem>
				<listitem>
					<para><emphasis>Domain: </emphasis>Valid filename pointing to existing file</para>
				</listitem>
				<listitem>
					<para><emphasis>Default: </emphasis>-</para>
				</listitem>
			</varlistentry>

			<varlistentry>
				<term>output</term>
				<listitem>
					<para><emphasis>Description: </emphasis>output filename</para>
				</listitem>
				<listitem>
					<para><emphasis>Domain: </emphasis>Valid filename</para>
				</listitem>
				<listitem>
					<para><emphasis>Default: </emphasis>-</para>
				</listitem>
			</varlistentry>

		</variablelist>
	</section>

	<section id="gexace_specification">
		<title>RNG Specification</title>

		<programlisting><![CDATA[
  <define name="gexace">
    <element name="gexace">
      <ref name="dir_if_unless"/>
      <choice>
        <attribute name="validate"/>
        <attribute name="system">
          <!-- runtime evaluation
          <choice>
            <value>ise</value>
            <value>ge</value>
          </choice>
          -->
        </attribute>
        <attribute name="library">
          <!-- runtime evaluation
          <choice>
            <value>ise</value>
            <value>ge</value>
          </choice>
          -->
        </attribute>
        <attribute name="format">
          <!-- runtime evaluation
          <choice>
            <value>ace</value>
            <value>ecf</value>
            <value>xace</value>
          </choice>
          -->
        </attribute>
      </choice>
      <optional>
        <attribute name="verbose"/>
      </optional>
      <optional>
        <attribute name="xace"/>
      </optional>
      <optional>
        <attribute name="output"/>
      </optional>
      <zeroOrMore>
        <ref name="define"/>
      </zeroOrMore>
    </element>
  </define>
]]>
	</programlisting>

	</section>

	<section id="gexace_examples">
		<title>Examples</title>
	<programlisting><![CDATA[
  <gexace system="ge" xace="${system}.xace"/>

  <gexace system="${eiffel}" output="${gexace_output}" xace="${system_dir}/system.xace">

  <gexace system="ise">
    <define name="DEBUG" value="true" if="$DEBUG"/>
  </gexace>
]]>
	</programlisting>
	</section>

</chapter>
