diff --git a/org.eclipse.rmf.documentation/rmf-images/CSV_import.png b/org.eclipse.rmf.documentation/rmf-images/CSV_import.png
new file mode 100644
index 0000000..d432ebe
--- /dev/null
+++ b/org.eclipse.rmf.documentation/rmf-images/CSV_import.png
Binary files differ
diff --git a/org.eclipse.rmf.documentation/rmf-latex/overview.tex b/org.eclipse.rmf.documentation/rmf-latex/overview.tex
index 31d69bb..cf9d7d2 100644
--- a/org.eclipse.rmf.documentation/rmf-latex/overview.tex
+++ b/org.eclipse.rmf.documentation/rmf-latex/overview.tex
@@ -28,7 +28,7 @@
 \index{tools}
 % ===================================================================================
 
-There are many tools available for requirements engineering.  These include free or cheap ones, like Microsoft Word and Excel, Wikis and issue trackers.  There are expensive, professional ones available, like IBM\circledR{} Rational\circledR{} DOORS\circledR{}, PTC Integrity or Visure IRQA.  Lately, there are also web-based tools, like Polarion.
+There are many tools available for requirements engineering.  These include free or cheap ones, like Microsoft Word and Excel, Wikis and issue trackers.  There are expensive, professional ones available, like IBM\textregistered{} Rational\textregistered{} DOORS\textregistered{}, PTC Integrity or Visure IRQA.  Lately, there are also web-based tools, like Polarion.
 
 \pror{} falls into the category of free tools.  But compared to the ones mentioned, it contains important features from professional tools, including traceability and typed attributes.  Further, by taking advantage of the Eclipse ecosystem, the tool can be augmented by plug-ins for version support, model integration, and much more.
 
@@ -102,7 +102,7 @@
 % ===================================================================================
 \section{Terminology}
 \label{sec:terminology}
-\index{Terminology}
+\index{terminology}
 % ===================================================================================
 
 Working with \pror{} can be confusing, as it uses the terminology from ReqIF.  For instance, ReqIF uses \textit{SpecObject}s, rather than \term{requirements}.  In the following, we define the more important terms.  More are defined throughout the document.  You can use the index to find the definition of terms.
@@ -115,8 +115,11 @@
 
 \begin{definition}{ReqIF}
 \index{ReqIF}
+\index{ReqIF Archive}
+\index{.reqif}
+\index{.reqifz}
 \index{Requirements Interchange Format}
-ReqIF is an XML-based format for requirements, with the intention to be used as an exchange format.  It is an open OMG standard and described in detail in Section~\ref{sec:reqif}.
+ReqIF is an XML-based format for requirements, with the intention to be used as an exchange format.  It is an open OMG standard and described in detail in Section~\ref{sec:reqif}. The XML data is typically stored in a with with the extension \menu{.reqif}.  It is also possible to store the ReqIF file together with associated data (embedded objects) or other ReqIF files.  These are then stored in a ZIP archive with the extension \menu{.reqifz}.
 \end{definition}
 
 Before defining the most important elements, we will provide a brief overview with a concrete example.
@@ -231,12 +234,12 @@
 
 Figure~\ref{fig:spec_example} shows in the \menu{Outline View} a flat list of all SpecObjects.  For instance, the SpecObject \_DW2y... is not referenced in the Specification at all.  Selecting a SpecObject shows its SpecType (in the figure, it is ``Information Type'') and all attributes (in the figure, ``Description'' and ``ID'').
 
-  \item[Attribute.\index{Attribute}] (Excel-equivalent: Cell) An Attribute holds the actual content of a SpecObject.
+  \item[Attribute.\index{attribute}] (Excel-equivalent: Cell) An Attribute holds the actual content of a SpecObject.
 
 In Excel, a new attribute is simply created by putting a column header on a column.  In ReqIF, columns are created via \menu{ProR | Column Configuration}, or by clicking on \includegraphics[height=0.8em]{../rmf-images/icons/full/obj16/ProRSpecViewConfiguration.png}.  But content will only be shown if the SpecObject of that row has an Attribute of that name.
 
-\index{standard attributes}
-\index{attributes!standard}
+\index{standard attribute}
+\index{attribute!standard}
 \index{ProStep Implementor Forum}
 Besides the actual text of the requirement, typical Attributes include ID, status, etc.  Note that there are no ``standard'' attributes.  However, the ProSTEP Implementor Forum defined a recommendation for a set of standard attributes.
 
diff --git a/org.eclipse.rmf.documentation/rmf-latex/reference.tex b/org.eclipse.rmf.documentation/rmf-latex/reference.tex
index 58ad580..f1db6a2 100644
--- a/org.eclipse.rmf.documentation/rmf-latex/reference.tex
+++ b/org.eclipse.rmf.documentation/rmf-latex/reference.tex
@@ -249,7 +249,7 @@
 \end{description}
 
 % -----------------------------------------------------------------------------------
-\subsection{Project Explorer View}\index{Project Explorer View}
+\subsection{Project Explorer View}\index{project explorer}
 % -----------------------------------------------------------------------------------
 
 The \menu{Project Explorer View} is by default on the left side of the main window. Here you can inspect files and models associated with any project. If for some reason the Project Explorer View does not appear, Navigate to \menu{Window | Show View | Other | Project Explorer View}.
@@ -266,7 +266,7 @@
 
 % -----------------------------------------------------------------------------------
 \subsection{Global Preferences}
-\index{Preferences}
+\index{preferences}
 % -----------------------------------------------------------------------------------
 
 The application-wide setting of \pror{} are accessed via \menu{Window | Preferences | ProR}.  Configuration elements are:
@@ -282,8 +282,8 @@
 \end{info}
 
 % -----------------------------------------------------------------------------------
-\subsection{General Configuration}
-\index{Configuration!General}
+\subsection{general configuration}
+\index{configuration!general}
 \label{sec:general_configuration}
 % -----------------------------------------------------------------------------------
 
@@ -294,6 +294,8 @@
 
 % -----------------------------------------------------------------------------------
 \subsubsection{Label Configuration}
+\index{label configuration}
+\index{configuration!label}
 % -----------------------------------------------------------------------------------
 
 The \menu{Label Configuration} is used to determine what to use for the text labels of elements
@@ -321,7 +323,8 @@
 
 % -----------------------------------------------------------------------------------
 \subsection{Datatype Configuration}
-\index{Configuration!Datatype}
+\index{configuration!datatype}
+\index{datatype configuration}
 \label{sec:datatype_configuration}
 % -----------------------------------------------------------------------------------
 
@@ -371,14 +374,14 @@
 by right-clicking the Enumeration Datatype and selecting \menu{New Child |Enum Value}.  You may have to unfold the enum value to select it, so that you can provide it with a \menu{Long Name}.  Figure~\ref{fig:Enumerations} shows a correctly configured Enumeration Datatype.
 
 % -----------------------------------------------------------------------------------
-\subsection{Presentation Configuration}\index{Configuration!Presentation}
+\subsection{Presentation Configuration}\index{configuration!presentation}
 \label{sec:presentation_configuration}
 % -----------------------------------------------------------------------------------
 
 Presentations are software components that extend the functionality of \pror{}.  Chapter~\ref{sec:presentations} is dedicated to Presentations.
 
 % -----------------------------------------------------------------------------------
-\subsection{Column Configuration}\index{Configuration!Column}
+\subsection{Column Configuration}\index{configuration!column}
 \label{sec:column_configuration}
 % -----------------------------------------------------------------------------------
 
@@ -421,9 +424,59 @@
 
 \paragraph{ReqIFz Import.} This standard importer takes ReqIF archive (.reqifz) and imports it as an Eclipse project.
 
-\paragraph{CSV.} This standard importer takes comma-separated data and imports it into an existing ReqIF model.  It is described in the \href{http://formalmind.com/blog/new-stuff-new-committer-new-product-new-importer-new-release}{Formal Mind Blog}.
+\paragraph{CSV.} This standard importer takes comma-separated data and imports it into an existing ReqIF model.  It is described further below.
 
-\paragraph{Axiom.} This commercial importer supports the selective merging of exchange data with an existing ReqIF model.  More information at the \href{http://formalmind.com/axiom}{Formal Mind Product Site}.
+\paragraph{Axiom.} This commercial importer supports the selective merging of exchange data with an existing ReqIF model.  It is described in detail in Section~\ref{sec:axiom}.
+
+More information at the \href{http://formalmind.com/axiom}{Formal Mind Product Site}.
+
+% -----------------------------------------------------------------------------------
+\subsubsection{CSV Import}
+\index{import!CSV}
+% -----------------------------------------------------------------------------------
+
+The CSV import adds the content from a comma-separated file into an existing specification.  Therefore, you first need to create a ReqIF model.  Once this is done, the importer is used as follows:
+
+\begin{warning}
+The importer will create new SpecTypes, Attributes and Datatypes.  Your existing types will not be reused!  We recommend to clean up the datatypes after the import.
+\end{warning}
+
+\begin{figure}
+  \centering
+  \includegraphics[width=0.8\textwidth]{../rmf-images/CSV_import.png}
+  \caption{A complete mapping for a CSV import}
+  \label{fig:reqif_search}
+\end{figure}
+\label{sec:reqif_search}
+
+\begin{itemize}
+\item Initiate the importer via \menu{File | Import... | ReqIF | CSV}.  
+
+\item On the first dialog page, you need to select the source file containing the CSV data. The dialog defaults to comma-separated data, but other separators can be chosen as well.
+
+\item A checkbox allows to indicated whether the file contains a header row.  If it is checked, the first row will be interpreted as the labels for the columns in the file.
+
+\item Last, the destination model has to be chosen.  After this, the \menu{next} button is enabled.  
+
+\item On the next page, the columns have to be mapped.  Initially, there is just a single element, \menu{Library}.
+
+\item Right-click \menu{Library} to open the context menu that allows you to add a new mapping.  There are four options.  They all do the same, but the first three prepopulate the attribute name with a sensible value.
+
+\item You need to create a mapping for each column that you would like to import.  A mapping consists of three elements:
+
+\begin{description}
+\item[Column Mapping.] Select the column from the CSV file.  The column headings are shown if the checkbox was selected on the previous page, otherwise just the column numbers.
+\item[Attribute Name.] The name for the Attribute in the resulting ReqIF model.
+\item[Data Type.] The datatype of the resulting attribute.  The safest option is \menu{String}, for other datatypes, a conversation attempt is made.
+\end{description}
+
+\item You do not need to create a mapping for all columns.  Figure\ref{fig:csv} shows the importer dialog with one complete mapping.
+
+\item  Once all mappings are complete, hitting finish will complete the import.
+
+\end{itemize}
+
+You can read more in the \href{http://formalmind.com/blog/new-stuff-new-committer-new-product-new-importer-new-release}{Formal Mind Blog}.
 
 % -----------------------------------------------------------------------------------
 \subsection{Export}
@@ -455,7 +508,7 @@
 % -----------------------------------------------------------------------------------
 \subsection{Quicksearch}
 \label{sec:quicksearch}
-\index{searcHquicksearch}
+\index{search!quicksearch}
 \index{quicksearch}
 % -----------------------------------------------------------------------------------
 
