% Data classifications

\label{s:dataclass}
\index{classification|(}

\chapter{Common Classifications}

\label{s:dataclass:common}

% applies until first subsection
\sectiondept{it}

\incomplete
A classification---also known as a ``class'', but that term is avoided in this
specification due to ambiguities---is a set of rules performed on the ^[input
data] yielding a boolean result of the same depth as the largest depth of the
applicable ^[input data]. \todo{Include formal documentation from DSL manual.}

\begin{ex}
  Consider a classification~$c$ that has the following rules:
  \begin{itemize}
    \item $5\leq\alpha\leq10$
    \item $\beta>0$
  \end{itemize}
  Given various sets of ^[input data], we would expect the results shown in
  \fref{class-ex}.
\end{ex}

\begin{figure}
  \center
  \begin{tabular}{cc|c}
    $\alpha$ & $\beta$ & Result \\
    \hline
    1 & 2 & $\bot$ \\
    5 & 2 & $\top$ \\

    \set{4,5} & \set{10,10} & \set{\bot,\top} \\
    \set{\set{4,5},\set{5,6}} & \set{10,0}
      & \set{\set{\bot,\top},\set{\bot,\bot}} \\
  \end{tabular}

  \caption{Results of various input data some classification}
  \label{f:class-ex}
\end{figure}

A classification may treat the result of another classification as ^[input
data].

A classification may treat the result of a~^[calculation] (see \sref{premcalc}) as
^[input data].

All classifications in this section \shall apply to the ^[input data] as defined
in~\sref{indata}.

Each classification \shall have an associated character string
\dfn{classification!description} which \shall be made accessible to the caller
as ^[output data] in an \unspecified\ manner.

The point at which classifications are calculated is \unspecified; an
implementation \may choose to defer any specific classification until such a
time that it is needed by a calculation. Furthermore, an implementation \may
choose not to perform a given classification at all, so long as it is determined
that such a classification does not apply to any ^[input data].


%% user content
\dataclassout

\index{classification|)}
