%%
%% This is file `apmpspec.tex',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% stepe.dtx  (with options: `apmpspec')
%% 
%%     This work has been partially funded by the US government
%%  and is not subject to copyright.
%% 
%%     This program is provided under the terms of the
%%  LaTeX Project Public License distributed from CTAN
%%  archives in directory macros/latex/base/lppl.txt.
%% 
%%  Author: Peter Wilson (CUA and NIST)
%%          now at: peter.r.wilson@boeing.com
%% 
\ProvidesFile{apmpspec.tex}[2001/07/16 AP mapping spec boilerplate]
\typeout{apmpspec.tex [2001/07/16 STEP AP mapping spec boilerplate]}

  This clause contains the mapping specification that shows how each
UoF and application object of this part of ISO~10303
(see \cref{;sireq}) maps to one or more AIM constructs
(see \aref{;saeel}).
Each mapping specifies up to five elements.

\begin{description}
\item[Application element] The mapping for each application element
    is specified in a seperate subclause below.
    Application object names are given in title case.
    Attribute names and assertions are listed after the application
    object to which they belong and are given in lower case.

\item[AIM element] The name of one or more AIM entity data types
    (see \aref{;saeel}), the term ``IDENTICAL MAPPING'',
    or the term ``PATH''.
    AIM entity data type names are given in lower case.
    Attributes of AIM entity data types are referred to as
    $<$entity name$>$.$<$attribute name$>$.
    The mapping of an application element may involve more than
    one AIM element.
    Each of these AIM elements is presented on a seperate line
    in the mapping specification.
    The term ``IDENTICAL MAPPING'' indicates that both application
    objects involved in an application assertion map to the same
    instance of an AIM entity data type.
    The term ``PATH'' indicates that the application assertion maps
    to a collection of related AIM entity instances specified
    by the entire reference path.

\item[Source] For those AIM elements that are
    interpreted from any common resource, this is the ISO standard
    number and part number in which the resource is defined.
    For those AIM elements that are created for the purpose of this part
    of ISO~10303, this is ``ISO~10303--'' followed by the number of
    this part.

\item[Rules] One or more global rules may be specified that
    apply to the population of the AIM entity data types specified
    as the AIM element or in the reference path.
    For rules that are derived from
    relationships between application objects, the same rule
    is referred to by the mapping entries of all the involved AIM
    elements.
    A reference to a global rule may be accompanied by a reference to
    the subclause in which the rule is defined.

\item[Reference path] To describe fully the mapping
    of an application object, it may be necessary to specify a
    reference path involving several related AIM elements.
    Each line in the reference path documents the role of an AIM
    element relative to the AIM element in the line following it.
    Two or more such related AIM elements define the
    interpretation of the integrated resources that satisfies
    the requirement specified by the application object.
    For each AIM element that has been created for use within this
    part of ISO~10303, a reference path to its supertype from
    an integrated resource is specified.
    For the expression of reference paths and the relationships
    between AIM elements the following notational conventions apply:
\begin{itemize}
\item[\texttt{[]}] enclosed section constrains multiple AIM elements
    or sections of the
    reference path are required to satisfy an information
    requirement;
\item[\texttt{()}] enclosed section constrains multiple AIM elements
    or sections of the
    reference path are identified as alternatives within the
    mapping to satisfy an information requirement;
\item[\texttt{\{\}}]  enclosed section constrains the reference path
    to satisfy an information requirement;
\item[\texttt{<>}]  enclosed section constrains at one or more
     required reference path;
\item[\texttt{||}]  enclosed section constrains the supertype entity;
\item[\texttt{->}]  attribute references the entity or select type
    given in the following row;
\item[\texttt{<-}]  entity or select type is referenced by the
     attribute in the following row;
\item[\texttt{[i]}]  attribute is an aggregation of which a
     single member is given in the following row;
\item[\texttt{[n]}]  attribute is an aggregation of which
     member \texttt{n} is given in the following row;
\item[\texttt{=>}]  entity is a supertype of the entity given in the
    following row;
\item[\texttt{<=}]  entity is a subtype of the entity given in
    the following row;
\item[\texttt{=}]  the string, select, or enumeration type is
    constrained to a choice or value;
\item[\texttt{\textbackslash}]  the reference path expression continues on
    the next line;
\item[\texttt{*}] used in conjunction with braces to indicate that
     any number of relationship entity data types may be assembled
     in a relationship tree structure;
\ifmaptemplate
\item[\texttt{//}] enclosed section is an application of one of the
                mapping templates defined in \ref{;stemps} below;
\fi
\item[\texttt{--}] the text following is a comment
                (normally a clause reference).
\end{itemize}

\end{description}

\endinput
%%
%% End of file `apmpspec.tex'.
