Major change
[u/philim/db2osl_thesis.git] / program_functionality.tex
index e4680a0..595c385 100644 (file)
@@ -1,32 +1,40 @@
 \section{Functionality}
 \label{functionality}
-As described in the introduction, the \myprog{} software basically is a program which
-automatically derives an OBDA specification from a relational database schema,
+As described in the \hyperref[intro]{introduction} of this thesis,
+the \myprog{} software is
+a program automatically deriving an OBDA specification
+from a relational database schema,
 which then can be used by other tools to drive the actual bootstrapping process.
-Its functionality is described in the next section
-(while leaving out self-evident features) and is then listed completely
+Its functionality is described in the following section,
+leaving out self-evident features, and is then listed completely
 in the section after that.
+How this functionality is exposed to users is described in Section~\fullref{interface}.
+The bootstrapping process using direct mapping as the core functionality
+of the software is described in Section~\ref{dirm}.
 
-\subsection{Description}
+TODO: reference to OBDA topics
+
+\subsection{Function description}
 The database schema is retrieved by connecting to an \name{SQL} database
 and querying its schema information.
-Parsing \name{SQL} specifications TODO or \name{SQL} dumps currently is not supported.
+Parsing \name{SQL} scripts or \name{SQL} dumps currently is not supported.
 %Naturally, authentication on the \name{SQL} server is supported, also by
 %interactively querying for passwords while hiding the typed input.
 The databases to derive information from can be specified by regular expressions,
 while there are also options to use other databases than specified or even
 other database servers, taken from a list of hard-coded strings.
 While these features may not seem to carry real benefit at the first glance,
-they proved to be very useful for testing purposes, especially since the retrieval of a
-database schema can take some time (see TODO).
-For the same purpose, \myprog{} allows the processing of a hard-coded example database schema.
+they proved to be useful for testing purposes, especially since the retrieval of a
+database schema can take some time TODO (see Section~\fullref{stats}).
+For the same purpose, \myprog{} allows the processing of a hard-coded
+example database schema.
 
-In addition to \osl{} output, a low-level output format containing information on all fields of
-the underlying objects is supported, which is useful for debugging
+In addition to \osl{} output, a low-level output format containing information on all
+fields of the underlying objects is supported, which is useful for debugging
 (however, this feature has to be enabled via one slight change in the source code).
 To allow for some customization, the insertion of an own \osl{} header is supported
-(for more information on the \osl{} header, see the specification of the \osl{} language
-in section \ref{oslspec}).
+(for more information on the \osl{} header, see the specification of the \osllong{}
+in Section~\ref{osl_spec}).
 If the standard \osl{} header is used, it is by default loaded from a hard-coded copy,
 so bootstrapping information from a database server running locally or from the hard-coded
 example schema requires no Internet connection
@@ -46,7 +54,7 @@ are enabled, disabled or set per operation.
 Finally, a help text can be displayed which describes the usage of \myprog{} including the
 description of all command-line arguments.
 
-\subsection{Summary}
+\subsection{Function summary}
 The functionality of the \myprog{} software can be summarized as follows:
 
 \begin{itemize}
@@ -62,14 +70,13 @@ The functionality of the \myprog{} software can be summarized as follows:
        without having to specify any further details
        \item Process a hard-coded example database schema
        without having to specify any further details
-       \item Use the \osl{} format described in section \fullref{osl}
+       \item Use the \osl{} format described in Chapter~\fullref{osl}
        or a detailed low-level format for output
        (the latter is for debugging purposes and has to be enabled
        in the source code)
        \item Write to standard output or to a file
        \item Insert a custom \osl{} header
-       (see the specification of the OBDA Specification Language (\osl{})
-       in section \ref{oslspec} for details)
+       (see the specification of the \oslboth{} in Section~\ref{osl_spec} for details)
        \item Consistency check against a custom \osl{} header
        \item Consistency check against the standard \osl{} header without internet connection
        \item Act interactively or non-interactively