# HG changeset patch # User Tim Englich # Date 1273495997 0 # Node ID 7a8f9eb9fb040480a119e951cb975601d06f5353 # Parent 14df4bcabc3ca1692388033e75d94d673a5c3909 Do some Documentstyling. Added Typewriter-Style to mark XML-Elements and other technical Items. doc/trunk@1084 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r 14df4bcabc3c -r 7a8f9eb9fb04 doc/ChangeLog --- a/doc/ChangeLog Mon May 10 10:43:01 2010 +0000 +++ b/doc/ChangeLog Mon May 10 12:53:17 2010 +0000 @@ -1,3 +1,9 @@ +2010-05-10 Tim Englich + + * config-manual/model_of_transitions.tex: + Do some Documentstyling. Added Typewriter-Style + to mark XML-Elements and other technical Items. + 2010-05-10 Tim Englich * config-manual/model_of_transitions.tex: diff -r 14df4bcabc3c -r 7a8f9eb9fb04 doc/config-manual/model_of_transitions.tex --- a/doc/config-manual/model_of_transitions.tex Mon May 10 10:43:01 2010 +0000 +++ b/doc/config-manual/model_of_transitions.tex Mon May 10 12:53:17 2010 +0000 @@ -20,7 +20,7 @@ %% TODO: Add a Screenshot of the GNV WebClient marking GUI elements for FIS, %% product, states and transitions -Main entry point for the configuration is the file \verb+ conf/conf.xml + +Main entry point for the configuration is the file {\tt conf/conf.xml } defining the list of FIS and the according products based on the different datamodels in the datawarehouse. The provided datamodels are: @@ -37,9 +37,9 @@ \end{enumerate} Each product configuration consists of a datamodel specific configuration -organized in a product specific folder in \verb+ conf/products+ \footnote{The -special case of a "Horizontales Schnittprofil" is configured in -conf/horizontalprofile/conf\_mesh\_cross.xml }. The directory layout looks +organized in a product specific folder in {\tt conf/products} \footnote{The +special case of a {\tt Horizontales Schnittprofil} is configured in +{\tt conf/horizontalprofile/conf\_mesh\_cross.xml} }. The directory layout looks like this: \begin{verbatim} @@ -66,16 +66,16 @@ The subtypes of the ArcMarineBSH based datamodel are configured in the files below: \begin{itemize} - \item TimeSeriesPoints: conf\_timeseriespoint.xml - \item Mesh: conf\_mesh.xml - \item InstantaneousPoints: conf\_instantaneouspoint.xml + \item TimeSeriesPoints: {\tt conf\_timeseriespoint.xml} + \item Mesh: {\tt conf\_mesh.xml} + \item InstantaneousPoints: {\tt conf\_instantaneouspoint.xml} \end{itemize} Within each of these files, the steps for gathering the values for the parameterisation are configured by defining states, transitions and outputs (c.f. \ref{ref:config-a-product}). The definition of states, transitions and outputs reference the actual SQL-statements via an identifier. The SQL-statements -are gathered in the file \verb+conf/queries.properties+. +are gathered in the file {\tt conf/queries.properties}. \subsection{Explaining the background of the XML configuration} @@ -88,19 +88,19 @@ The configuration of the provided FIS are divided in three main parts. \begin{itemize} - \item Configuration of the list of FIS via artifact-factories - \item Configuration of main artifacts which will be instantiated if an - artifact-factory was called. - \item Configuration of the different artifacts which provides products which can be + \item Configuration of the list of FIS via {\tt artifact-factories} + \item Configuration of main {\tt artifacts} which will be instantiated if an + {\tt artifact-factory} was called. + \item Configuration of the different {\tt artifacts} which provides products which can be served by the FIS. \end{itemize} \subsubsection{Configuration of a FIS} -The point of entry into the system is to configure an artifact-factory. -Each artifact-factory represents one FIS. -It is possible to configure several artifact-factories. -The artifact-factories will be configured in the section -/artifact-database/artifact-factories of the configurationfile. +The point of entry into the system is to configure an {\tt artifact-factory}. +Each {\tt artifact-factory} represents one FIS. +It is possible to configure several {\tt artifact-factories}. +The {\tt artifact-factories} will be configured in the section +{\tt /artifact-database/artifact-factories} of the configurationfile. \begin{lstlisting} \end{lstlisting} -At this moment the following attributes of an artifact-factory are configurable. +At this moment the following attributes of an {\tt artifact-factory} are configurable. \begin{itemize} - \item name: The name of the artifact. Must be unique in one artifact-server - \item description: Short description which job the artifact-factory has to do. - \item ttl: The time to live: The time using milliseconds an artifact, created using this + \item {\tt name}: The name of the {\tt artifact}. Must be unique in one {\tt artifact-server} + \item {\tt description}: Short description which job the {\tt artifact-factory} has to do. + \item {\tt ttl}: The time to live: The time using milliseconds an {\tt artifact}, created using this factory, can live without any user-interaction. - \item artifact: The name of the class of the artifact which should be created. + \item {\tt artifact}: The name of the class of the {\tt artifact} which should be created. \end{itemize} The next listing shows the dependencies between the FIS and the name -of the artifact-factory which belongs to it. +of the {\tt artifact-factory} which belongs to it. \begin{itemize} - \item Marnet: fis\_marnet - \item IMIS: fis\_imis - \item STAUN: fis\_staun - \item Modeldata fis\_modeldata - \item Iceclimatology: fis\_eisklimatologie - \item Ice Station Report: fis\_icestations - \item SST: fis\_sst - \item Delphin: fis\_delphin - \item Thermosalinograph: fis\_thermosalinograph - \item Chemusurvey: fis\_chemusurvey - \item GTS: fis\_gts - \item CTD: fis\_bsh\_ctd - \item XBT: fis\_bsh\_xbt - \item SeaCat: fis\_seacat - \item Sea State: fis\_seastate - \item Current Meter: fis\_currentmeter - \item Nauthis: fis\_nauthis - \item Contis: fis\_contis - \item Marine Features: fis\_marinefeatures + \item Marnet: {\tt fis\_marnet} + \item IMIS: {\tt fis\_imis} + \item STAUN: {\tt fis\_staun} + \item Modeldata {\tt fis\_modeldata} + \item Iceclimatology: {\tt fis\_eisklimatologie} + \item Ice Station Report: {\tt fis\_icestations} + \item SST: {\tt fis\_sst} + \item Delphin: {\tt fis\_delphin} + \item Thermosalinograph: {\tt fis\_thermosalinograph} + \item Chemusurvey: {\tt fis\_chemusurvey} + \item GTS: {\tt fis\_gts} + \item CTD: {\tt fis\_bsh\_ctd} + \item XBT: {\tt fis\_bsh\_xbt} + \item SeaCat: {\tt fis\_seacat} + \item Sea State: {\tt fis\_seastate} + \item Current Meter: {\tt fis\_currentmeter} + \item Nauthis: {\tt fis\_nauthis} + \item Contis: {\tt fis\_contis} + \item Marine Features: {\tt fis\_marinefeatures} \end{itemize} \subsubsection{Configuration of main Artifact} -For each artifact-factory it is necessary to configure one artifact which will be +For each {\tt artifact-factory} it is necessary to configure one {\tt artifact} which will be created using the factory. -This artifact is the representation of the specific FIS. +This {\tt artifact} is the representation of the specific FIS. It contains the configuration which products will be served for this FIS. -The artifacts are configured in the section /artifact-database/artifacts of +The {\tt artifacts} are configured in the section {\tt /artifact-database/artifacts} of the configurationfile. \begin{lstlisting} @@ -162,15 +162,15 @@ \end{lstlisting} -The key is to use the same name for the artifact as used for the artifact-factory. +The key is to use the same name for the {\tt artifact} as used for the {\tt artifact-factory}. The name has to be unique. -In the section /artifact/products it is possible to define several products as +In the section {\tt /artifact/products} it is possible to define several products as explained in the next section. \paragraph{Products to an FIS} One FIS can provide several products. To do this it is required to configure them as shown below in the section -/artifact/products +{\tt /artifact/products} \begin{lstlisting} @@ -189,39 +189,39 @@ \end{lstlisting} -Each product is also represented by an artifact. To create this artifact we have to -use an artifact-factory which is configured in each product -(/product/artifact-factory). +Each {\tt product} is also represented by an {\tt artifact}. To create this {\tt artifact} we have to +use an {\tt artifact-factory} which is configured in each product +({\tt /product/artifact-factory}). -Each product can have several parameters /product/parameters/parameters. -The parameter named sourceid and fisname are required parameters. +Each product can have several parameters ({\tt /product/parameters/parameters}). +The {\tt parameter} named {\tt sourceid} and {\tt fisname} are required parameters. -The parameter fisname contains the key to the name of the FIS. The key must be +The parameter {\tt fisname} contains the key to the name of the FIS. The key must be unique. -The parameter sourceid contains the key to identify the FIS in the -datawarehouse. (MEDIAN.SOURCEINFO) +The parameter {\tt sourceid} contains the key to identify the FIS in the +datawarehouse. ({\tt MEDIAN.SOURCEINFO}) \subsubsection{Configuration of an Product} \label{ref:config-a-product} -The products of the different FIS are also modeled as artifact-objects. +The {\tt products} of the different FIS are also modeled as artifact-objects. The different products which are currently available are stored in separate -files in the folder project. +files in the folder {\tt project}. In those files the workflow of each product is configured. Each step which is -required to model a new diagram is represented using a state in the +required to model a new diagram is represented using a {\tt state} in the configurationfile. -To move between those states it is required to model transitions which define +To move between those {\tt states} it is required to model {\tt transitions} which define between which states it is possible to move and which conditions must be fulfilled. -The last step is called output-state. This state is responsible to generate the -output for the different formats which can be served from the product (Diagram, -CSV, ODV, WMS,...). +The last step is called {\tt output-state}. This state is responsible to generate the +output for the different formats which can be served from the product ({\tt Diagram, +CSV, ODV, WMS,..}.). \paragraph{States} -A state is one step which is required to fetch the data for generating e.g. an +A {\tt state} is one step which is required to fetch the data for generating e.g. an diagram. For example in each product it is possible to choose one or more parameters. @@ -239,26 +239,26 @@ \end{lstlisting} -At this moment the following attributes of an state are configurable. +At this moment the following attributes of an {\tt state} are configurable. \begin{itemize} - \item id: The name of the artifact. Must be unique in one artifact-server - \item description: Short description which job the artifact-factory has to do. - \item queryID: The id of the query which should be used to fetch the data + \item {\tt id}: The name of the artifact. Must be unique in one artifact-server + \item {\tt description}: Short description which job the artifact-factory has to do. + \item {\tt queryID}: The id of the query which should be used to fetch the data displayed in this state. All queries are defined in the file conf/queries.properties - \item dataname: The id of the data which will be displayed in this state. + \item {\tt dataname}: The id of the data which will be displayed in this state. The id will be use to localize the description of the data. The localization is located in module gnv-artifacts in folder src/main/resources. - \item data-multiselect: true it is possible to select 1 or more items. - false it is possible to select only one item. - \item inputvalues: The values which can be "feed" to this state and which + \item {\tt data-multiselect}: {\tt true} it is possible to select 1 or more items. + {\tt false} it is possible to select only one item. + \item {\tt inputvalues}: The values which can be "feed" to this state and which will be used as values in SQL-statements. \end{itemize} \paragraph{Input Values of a State} -At section /state/inputvalues it is possible to add definitions for inputvalues. -Those values have two meanings for the state. +At section {\tt /state/inputvalues} it is possible to add definitions for inputvalues. +Those values have two meanings for the {\tt state}. \begin{itemize} \item They were used to fill the SQL-statements to fetch the data. @@ -282,10 +282,10 @@ \end{lstlisting} \begin{itemize} - \item name: Name of the value that could be feed or should be used in SQL-statment. + \item {\tt name}: Name of the value that could be feed or should be used in SQL-statment. The name must fit to one dataname configured in this state or one other state which was visited before. - \item type: The type of the value. This is required for the validation + \item {\tt type}: The type of the value. This is required for the validation of the value. This might be String, Integer, Double, Date, Point, LineString, Polygon, Coordinate, Geometry and AttributeName. @@ -295,9 +295,9 @@ SQL-statement without surrounding with "'" in the statement. Usage is e.g. for determining the Axis (i or j) in the workflow of Horizontalprofiles. - \item multiselect: true if more than on value can be feed or put into the SQL-statement. + \item {\tt multiselect}: true if more than on value can be feed or put into the SQL-statement. false if one on value will be accepted. - \item usedinquery: Number how often the value should be put into the SQL-statement: + \item {\tt usedinquery}: Number how often the value should be put into the SQL-statement: 0: Value will not out into the statement. 1: Value will put once into the statement, 2 or more: Value will be put as often as configured @@ -332,12 +332,12 @@ If there are put the inputvalues in it it will look like this if we assume that the inputvalues has got the following values -which where feed by choosing this FIS (fisname) and the Station -(featureid: Arkona Basin Buoy ): +which where feed by choosing this FIS ({\tt fisname}) and the Station +({\tt featureid}: Arkona Basin Buoy ): \begin{itemize} - \item featureid: 100011 (Marnet ==> Arkona Basin Buoy) - \item fisname: fis\_marnet - \item parameterid: not set because it's the value that should be + \item {\tt featureid}: 100011 (Marnet ==> Arkona Basin Buoy) + \item {\tt fisname}: fis\_marnet + \item {\tt parameterid}: not set because it's the value that should be chosen in this state. \end{itemize} @@ -359,14 +359,14 @@ ORDER BY P.GERMANNAME \end{lstlisting} -The value of featureid will be inserted into the query because -the attribute usedinquery is set to "1". +The value of {\tt featureid} will be inserted into the query because +the attribute {\tt usedinquery} is set to "1". -The values of the inputvalues fisname and parameterid will be -excluded because the attribute usedinquery is set to "0" +The values of the inputvalues {\tt fisname} and {\tt parameterid} will be +excluded because the attribute {\tt usedinquery} is set to "0" -If the attribute usedinquery of the inputvalue featureid is set to "2" +If the attribute {\tt usedinquery} of the inputvalue {\tt featureid} is set to "2" this might happen. \begin{lstlisting} @@ -410,10 +410,10 @@ \end{lstlisting} \begin{itemize} - \item featureid: 100011 (Marnet ==> Arkona Basin Buoy) - \item fisname: fis\_marnet - \item parameterid: 2 (Salzgehalt [pSal]) - \item measurementid: not set because it's the value that should be + \item {\tt featureid}: 100011 (Marnet ==> Arkona Basin Buoy) + \item {\tt fisname}: fis\_marnet + \item {\tt parameterid}: 2 (Salzgehalt [pSal]) + \item {\tt measurementid}: not set because it's the value that should be chosen in this state. \end{itemize} @@ -460,9 +460,9 @@ To move between two states it is necessary to configure dependencies between the different states. -This dependencies are called transitions. +This dependencies are called {\tt transitions}. -There are different kinds of transitions which can be used. +There are different kinds of {\tt transitions} which can be used. \begin{itemize} \item Transitions which only link two states \item Transition which link two states with a additional condition. @@ -479,42 +479,42 @@ \end{lstlisting} \begin{itemize} - \item from: The id of the state which you have to come from - \item to: The id of the state which can be reached. - \item condition: The condition which have to be fulfilled. + \item {\tt from}: The {\tt id} of the {\tt state} which you have to come from + \item {\tt to}: The {\tt id} of the {\tt state} which can be reached. + \item {\tt condition}: The condition which have to be fulfilled. \end{itemize} -At this moment only EQUAL and NOTEQUAL are supported as condition for an -ValueCompareTransition. +At this moment only {\tt EQUAL} and {\tt NOTEQUAL} are supported as +{\tt condition} for an {\tt ValueCompare\-Transition}. \paragraph{Outputstate} -The outputstate is an special state which was created to define +The {\tt outputstate} is an special {\tt state} which was created to define the different possibilities of outputs for each product. -An outputstate is handled as an state which is described above. +An {\tt outputstate} is handled as an {\tt state} which is described above. Additionally you are able to configure which kind of outputs should be provided. -There are several outputstates. Each one is designed to create +There are several {\tt outputstates}. Each one is designed to create the output for one special product. \begin{itemize} - \item TimeSeries: TimeSeriesOutputState - \item Horizontalprofile: HorizontalProfileOutputState - \item Horizontalprofile on Meshes: HorizontalProfileMeshOutputState - \item Verticalcrosssection:VerticalCrossSectionOutputState - \item Verticalprofiles: VerticalProfileOutputState - \item Horizontalcrosssections: HorizontalCrossSectionMeshOutputState - \item Layer: LayerOutputState + \item TimeSeries: {\tt TimeSeriesOutputState} + \item Horizontalprofile: {\tt HorizontalProfileOutputState} + \item Horizontalprofile on Meshes: {\tt HorizontalProfileMeshOutputState} + \item Verticalcrosssection: {\tt VerticalCrossSectionOutputState} + \item Verticalprofiles: {\tt VerticalProfileOutputState} + \item Horizontalcrosssections: {\tt HorizontalCrossSectionMeshOutputState} + \item Layer: {\tt LayerOutputState} \end{itemize} -All these outputstates are implemented in package de.intevation.gnv.state -and its subpackages. +All these outputstates are implemented in {\tt package de.intevation.gnv.state} +and its {\tt sub\-packages}. -You have to put the fullqualified name of the outputstate to the attribute state -as shown below. +You have to put the fullqualified name of the {\tt outputstate} to the attribute +{\tt state} as shown below. -You can configure an outputstate as shown below: +You can configure an {\tt outputstate} as shown below: \begin{lstlisting} @@ -528,34 +528,34 @@ \end{lstlisting} -At section /state/outputsModes it is possible to add one ore more outputmodes -to one state as shown in the next paragraph. +At section {\tt /state/outputsModes} it is possible to add one ore more +{\tt outputmodes} to one state as shown in the next paragraph. \paragraph{OutputModes} -It is possible to configure several outputmodes in one outputstate. +It is possible to configure several {\tt outputmodes} in one {\tt outputstate}. Inserting or deleting the configuration of an special -outputmode will cause that the pending item will be shown or hidden -in the GUI. +{\tt outputmode} will cause that the pending item will be shown or hidden +in the {\tt GUI}. WARNING: IT MIGHT BE POSSIBLE THAT ONE OR MORE OUTPUTMODES ARE NOT SUPPORTED BY AN PRODUCT. IN THAT CASE IT IS NECESSARY TO IMPLEMENT THE REQUIRED FUNCTIONALITY BEFORE IT IS POSSIBLE TO OFFER THIS OUTPUTMODE. -Currently the following outputmodes are supported: +Currently the following {\tt outputmodes} are supported: \begin{itemize} - \item chart - \item histogram - \item csv - \item odv - \item statistics - \item wms - \item shapefile + \item {\tt chart} + \item {\tt histogram} + \item {\tt csv} + \item {\tt odv} + \item {\tt statistics} + \item {\tt wms} + \item {\tt shapefile} \end{itemize} -The following example shows how to configure an outputmode chart: +The following example shows how to configure an {\tt outputmode chart}: \begin{lstlisting} @@ -575,26 +575,26 @@ // TODO add simple OutputMode e.g. for CSV?? \begin{itemize} - \item name: The name of the mode. This must not be changed because it is used - by the program. - \item description: a short description of this outputmode. - \item parameters: one ore more parameters which will be shown in the GUI e.g. - for changing the size of an chart. - \item exportModes: one or more formats which can be served. + \item {\tt name}: The name of the mode. This must not be changed because it + is used by the program. + \item {\tt description}: a short description of this outputmode. + \item {\tt parameters}: one ore more parameters which will be shown in the + GUI e.g. for changing the size of an chart. + \item {\tt exportModes} : one or more formats which can be served. \end{itemize} \subsection{Adding a new FIS} In this section it will be explained which steps has to be done to integrate a -new FIS into the artifact-server. This will be done using the configuration for -an FIS which use data from MEDIAN.TIMESERIES section of the datawarehouse e.g. +new FIS into the {\tt artifact-server}. This will be done using the configuration for +an FIS which use data from {\tt MEDIAN.TIMESERIES} section of the datawarehouse e.g. MARNET or STAUN -Pay attention that for publishing the changes to the artifact-server you will +Pay attention that for publishing the changes to the {\tt artifact-server} you will have to restart it. \subsubsection{Adding a new Artifact-factory} -First step is to add a new artifact-factory to the configuration conf/conf.xml +First step is to add a new {\tt artifact-factory} to the configuration conf/conf.xml To do this you have to add a new XML-fragment into the section /factories/artifact-factories which look like that: @@ -607,16 +607,16 @@ \end{lstlisting} -In this XML-fragment you only have to replace the placeholder NEWFISNAME with a -unique short name for the new FIS. +In this XML-fragment you only have to replace the placeholder {\tt NEWFISNAME} +with a unique short name for the new FIS. \paragraph{Example} This example shows how to add an FIS and which effects it took to the REST-Server. -At first we add the following artifact-factory into the file conf/conf.xml -in section /artifact-database/artifact-factories which add a new -FIS called justanewfis to the server: +At first we add the following {\tt artifact-factory} into the file +{\tt conf/conf.xml} in section {\tt /artifact-database/artifact-factories} +which add a new FIS called {\tt justanewfis} to the server: \begin{lstlisting} \end{lstlisting} -Then we restart the artifact-database executing the following command: +Then we restart the {\tt artifact-database} executing the following command: \begin{lstlisting} /etc/init.d/artifactdb restart @@ -640,14 +640,15 @@ curl http://localhost:8181/factories | xmllint --format - | grep fis\_justanewfis \end{lstlisting} -If the FIS was added the new artifact-factory will be found in the generated +If the FIS was added the new {\tt artifact-factory} will be found in the generated XML-output and it will be shown. Otherwise no XML-output will be shown. \subsubsection{Adding a new Artifact for Artifact-factory} The next step is to define the artifact itself. -For this it is necessary to add an XML-fragment into the section /artifacts of -the main configurationfile /conf/conf.xml +For this it is necessary to add an XML-fragment into the section +{\tt /artifacts} of the main configurationfile {\tt /conf/conf.xml}. + \begin{lstlisting} @@ -656,10 +657,10 @@ \end{lstlisting} -In this XML-fragment it is also required to replace the placeholder NEWFISNAME -with the name which was used to configure the artifact-factory. +In this XML-fragment it is also required to replace the placeholder {\tt NEWFISNAME} +with the name which was used to configure the {\tt artifact-factory}. -Now the artifact-server can handle an additional FIS without any products yet. +Now the {\tt artifact-server} can handle an additional FIS without any products yet. To prevent needless configuration-work it is useful way to clone an artifact which handle the same kind of work as the new FIS. @@ -668,8 +669,8 @@ \paragraph{Example} Now we will configure an artifact to the FIS justanewfis. -For this we have to add the following XML-fragment to the file conf/conf.xml -in section /artifact-database/artifacts: +For this we have to add the following XML-fragment to the file +{\tt conf/conf.xml} in section {\tt /artifact-database/artifacts}: \begin{lstlisting} @@ -695,7 +696,7 @@ Now it is time to configure the different products which the FIS should be able to provide. To do this it is necessary to copy the XML-fragments of the products into the -XML-element of the previously integrated artifact. +XML-element {\tt products} of the previously integrated artifact. \begin{lstlisting} @@ -731,9 +732,9 @@ \end{lstlisting} -In this XML-fragment you have to replace the placeholders NEWFISNAME as before -and VALUEOFSOURCEID with the value for the new FIS as defined in the table -MEDIAN.SOURCEINFO. +In this XML-fragment you have to replace the placeholders {\tt NEWFISNAME} +as before and {\tt VALUEOFSOURCEID} with the value for the new FIS as defined +in the table {\tt MEDIAN.SOURCEINFO}. \paragraph{Example} Now we will add a product to the new FIS. @@ -769,7 +770,7 @@ curl -d "@sample-documents/create-artifact.xml" http://localhost:8181/create | xmllint --format - \end{lstlisting} -the product timeSeries should be available for the FIS justanewfis. +the product {\tt timeSeries} should be available for the FIS {\tt justanewfis}. Now we should be able to choose the product. This product should work and you should be able to generate even the defined @@ -777,18 +778,18 @@ \subsection{Adding a new Product} To add a new product to the system it is necessary that the required -artifact representation is implemented in the sourcecode. +artifact representation is implemented in the {\tt sourcecode}. Without doing that step it is not possible to create a new product. All products are configured in separate files that will be included into the main configuration using Xlink-references. -First step is to create a new file in the folder products and there in the -sub-folder where the product belongs to (timeseries,verticalprofile, -horizontalprofile,horizontalcrosssection,layer,...) +First step is to create a new file in the folder {\tt products} and there in the +sub-folder where the product belongs to ({\tt timeseries,verticalprofile, +horizontalprofile,horizontal\-crosssection,layer,...}) -Then you have tor reference this file in the file /conf/conf.xml in the section -/artifacts using the following XML-fragment. +Then you have tor reference this file in the file {\tt /conf/conf.xml} in the +section {\tt/artifacts} using the following XML-fragment. \begin{lstlisting} \end{lstlisting} -The placeholder PATHTOFILE has to be replaced with the relative path and the -name of the file starting in the folder products. +The placeholder {\tt PATHTOFILE} has to be replaced with the relative path and +the name of the file starting in the folder products. Then it is possible to add the product to a FIS as explained in the next section. -Please note that the defined name of the artifact-factory has to match to the +Please note that the defined name of the {\tt artifact-factory} has to match to the name of the added products which is also designed as an artifact. \subsection{Adding a additional Product to a FIS} To add a additional product to a FIS you only have to add the XML-fragment which represents the product to the artifact-configuration of the FIS in section -/artifacts/artifact/products. +{\tt /artifacts/artifact/products}. \begin{lstlisting}