\subsection{Model Storing Task}

The \textit{StoreModelTask (epsilon.storeModel)} is used to store a model
residing in the project repository. The \textit{StoreModelTask} defines three
attributes:

\begin{itemize}
\item \textit{name} (required): name of the model to be stored.
\item \textit{targetUri} (optional): URI where the model will be stored (e.g.
  ``file:/path/to/destination'').
\item \textit{target} (optional): file path where the model will be stored (e.g.
  ``file.xmi'').
\end{itemize}

\textit{targetUri} takes precedence over \textit{target}. If neither is defined,
then the model is stored in the location from which it was originally loaded.
