<sect1 id="repo-convs-relbdirs">
<title>Repository Path Types</title>
<para>
In order for automation scripts to produce content inside a
working copy of &TCAR;, it is required that all work lines be
related somehow. The relation between work lines is used by
automation scripts to know where to retrive the information
they need to work with (e.g., input files, translation
messages, output locations, etc.). This kind of relation is
built using two path constructions known as <emphasis>master
paths</emphasis> and <emphasis>auxiliar paths</emphasis>.
</para>
<sect2 id="repo-convs-relbdirs-master">
<title>Master Paths</title>
<para>
A master path refers to a directory inside the repository that
contain input files required to produce output files through
automation scripts. Examples of master paths inside the
repository include:
</para>
<itemizedlist>
<listitem>
<para>
<filename class="directory">trunk/Identity/Models/Brands</filename>
</para>
</listitem>
<listitem>
<para>
<filename class="directory">trunk/Manuals/Tcar-ug</filename>
</para>
</listitem>
<listitem>
<para>
<filename class="directory">trunk/Identity/Models/Themes/Default/Distro/5/Anaconda</filename>
</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 id="repo-convs-relbdirs-auxiliar">
<title>Auxiliar Paths</title>
<para>
An auxiliar path refers to directories inside the repository
considered auxiliar for one single master path. Auxiliar path
can be either for output or localization. Assuming the master
path provides the input information, the auxiliar paths
provide the auxiliar information which describes how and where
that input information must be rendered by automation scripts.
Examples of auxiliar paths inside the repository include:
</para>
<itemizedlist>
<listitem>
<para>
<filename class="directory">trunk/Identity/Images/Brands</filename>
</para>
</listitem>
<listitem>
<para>
<filename class="directory">trunk/Manuals/Tcar-ug/es_ES</filename>
</para>
</listitem>
<listitem>
<para>
<filename class="directory">trunk/Locales/Manuals/Tcar-ug/es_ES</filename>
</para>
</listitem>
<listitem>
<para>
<filename class="directory">trunk/Identity/Images/Themes/Flame/3/Distro/5/Anaconda/es_ES</filename>
</para>
</listitem>
<listitem>
<para>
<filename class="directory">trunk/Locales/Identity/Models/Default/Distro/5/Anaconda/es_ES</filename>
</para>
</listitem>
</itemizedlist>
<para>
The relationship between master and auxiliar paths is built by
combining the second directory level of master paths with
directories in the second directory level of repository
layout. In the second directory level of repository layout,
the <filename class="directory">Identity</filename>, <filename
class="directory">Manuals</filename> and <filename
class="directory">Scripts</filename> directories are always
used to create the master paths and the output auxiliar paths.
The <filename class="directory">Locales</filename> directory,
on the other hand, is always used to create localization
auxiliar paths for all the master paths available under
<filename class="directory">Identity</filename>, <filename
class="directory">Manuals</filename> and <filename
class="directory">Scripts directories</filename>.
</para>
<para>
For example, if the <varname>LANG</varname> environment
variable is set to <quote>es_ES.UTF-8</quote> and you execute
the <function>render</function> functionality of
<command>centos-art.sh</command> script with the <filename
class="directory">trunk/Manuals/Tcar-ug</filename> master
path as argument, it will produce &TCARUG; in Spanish language
using translation messages from
<filename>trunk/Locales/Manuals/Tcar-ug/es_ES</filename>
auxiliar path and would save final documentation output files
under <filename
class="directory">trunk/Manuals/Tcar-ug/es_ES</filename>
auxiliar path.
</para>
</sect2>
</sect1>