3 \subsection{Libraries used}
4 \subsection{Coarse structuring}
6 TODO: overall description, modularity, extendability, ex: easy to add new in-/output formats
7 TODO: mapping profiles (maybe better in next subsection)
8 TODO: package description
9 TODO: package interaction description
11 \subsection{Fine structuring}
12 \subsubsection{Class organization}
13 TODO: Every class hierarchy has at least one interface
16 \begin{multicols}{2}\begin{itemize} %\KOMAoption{fontsize}{\smallerfontsize{}}
17 \item \code{bootstrapping}
19 \item \code{Bootstrapping}
20 \item \code{DirectMappingURIBuilder}
21 \item \code{URIBuilder}
25 \item \code{CLIDatabaseInteraction}
30 \item \code{ColumnSet}
31 \item \code{DatabaseException}
33 \item \code{ForeignKey}
36 \item \code{PrimaryKey}
37 \item \code{ReadableColumn}
38 \item \code{ReadableColumnSet}
39 \item \code{ReadableForeignKey}
40 \item \code{ReadableKey}
41 \item \code{ReadablePrimaryKey}
42 \item \code{RetrieveDBSchema}
45 \item \code{TableSchema}
49 \item \code{MapValueIterable}
50 \item \code{MapValueIterator}
51 \item \code{ReadOnlyIterable}
52 \item \code{ReadOnlyIterator}
53 \item \code{UserAbortException}
58 \item \code{ConsoleDiagnosticOutputHandler}
59 \item \code{GlobalLogger}
67 \item \code{OSLSpecification}
71 \item \code{ObjectSpecPrinter}
72 \item \code{OSLSpecPrinter}
73 \item \code{SpecPrinter}
79 \item \code{specification}
81 \item \code{AttributeMap}
82 \item \code{EntityMap}
83 \item \code{IdentifierMap}
84 \item \code{InvalidSpecificationException}
86 \item \code{OBDASpecification}
87 \item \code{RelationMap}
88 \item \code{SubtypeMap}
89 \item \code{TranslationTable}
93 \item \code{CreateTestDBSchema}
94 \item \code{GetSomeDBSchema}
96 \end{itemize}\end{multicols} %\KOMAoption{fontsize}{\myfontsize{}}
97 \caption{Class affiliation to packages in \myprog{}}
98 \label{arch_tbl_classes}
102 \begin{figure}[H]\begin{center}
104 \includegraphics[scale=0.86]{Images/inherit_graph_8.pdf}
105 \end{center}\end{figure}
107 \begin{figure}[H]\begin{center}
109 \includegraphics[scale=0.86]{Images/inherit_graph_5.pdf}
110 \end{center}\end{figure}
111 \begin{figure}[H]\begin{center}
113 \includegraphics[scale=0.86]{Images/inherit_graph_7.pdf}
114 \end{center}\end{figure}
115 \begin{figure}[H]\begin{center}
117 \includegraphics[scale=0.86]{Images/inherit_graph_19.pdf}
118 \end{center}\end{figure}
119 \begin{figure}[H]\begin{center}
121 \includegraphics[scale=0.86]{Images/inherit_graph_1.pdf}
122 \end{center}\end{figure}
123 \begin{figure}[H]\begin{center}
125 \includegraphics[scale=0.86]{Images/inherit_graph_17.pdf}
126 \end{center}\end{figure}
127 \begin{figure}[H]\begin{center}
129 \includegraphics[scale=0.86]{Images/inherit_graph_21_extended.pdf}
130 \end{center}\end{figure}
131 \begin{figure}[H]\begin{center}
133 \includegraphics[scale=0.86]{Images/inherit_graph_13.pdf}
134 \end{center}\end{figure}
135 \begin{figure}[H]\begin{center}
137 \includegraphics[scale=0.86]{Images/inherit_graph_3.pdf}
138 \end{center}\end{figure}
139 \begin{figure}[H]\begin{center}
141 \includegraphics[scale=0.86]{Images/inherit_graph_18.pdf}
142 \end{center}\end{figure}
143 \begin{figure}[H]\begin{center}
145 \includegraphics[scale=0.86]{Images/inherit_graph_12.pdf}
146 \end{center}\end{figure}
147 \begin{figure}[H]\begin{center}
149 \includegraphics[scale=0.86]{Images/inherit_graph_4.pdf}
150 \setcounter{figure}{1}
151 \caption[Class hierarchies in \myprog{}]{Class hierarchies in \myprog{}.
152 Interface names are italicized,
153 external classes or interfaces are hemmed with a gray frame.}
154 \label{arch_fig_inheritance}
155 \end{center}\end{figure}
158 \begin{table}[H]\begin{center}
160 \itm{} \code{main.Main}\\
161 \itm{} \code{database.Helpers}\\
162 \itm{} \code{database.RetrieveDBSchema}\\
163 \itm{} \code{database.SQLType}\\
164 \itm{} \code{database.Table}\\
165 \itm{} \code{specification.OBDASpecification}\\
166 \itm{} \code{osl.OSLSpecification}\\
167 \itm{} \code{bootstrapping.Bootstrapping}\\
168 \itm{} \code{cli.CLIDatabaseInteraction}\\
169 \itm{} \code{log.GlobalLogger}\\
170 \itm{} \code{test.CreateTestDBSchema}\\
171 \itm{} \code{test.GetSomeDBSchema}\\
173 \caption{Standalone classes in \myprog{}}
174 \label{arch_tbl_lone_classes}
175 \end{center}\end{table}
177 %For more information about the program structure on the class level, see section \fullref{code}.