%*******************************************************************************
% Copyright (c) 2014 Formal Mind GmbH and others
% All rights reserved. This program and the accompanying materials
% are made available under the terms of the Eclipse Public License v1.0
% which accompanies this distribution, and is available at
% http://www.eclipse.org/legal/epl-v10.html
% 
% Contributors:
%     Michael Jastram - initial Copy
%     Maha Jastram - susequent improvements
%******************************************************************************/

% ===================================================================================
\section{Conventions}
% ===================================================================================

Throughout this book you'll see the following conventions:

% Formatted like remark
\begin{info}
Tips are marked with this icon.  They usually summarize how to work more effectively.  Details about the subject matter are found in the text.
\end{info}

\begin{warning}
Warnings are marked with this icon. They point out things that can go wrong, or important steps that are easily missed.
\end{warning}

\begin{example}
Examples often demonstrate how a concept is applied in practice.  They will be marked with a black square at the beginning and at the end, as shown with this text.
\end{example}

When referring to \menu{menus} or \menu{user interface elements}, they are shown like here on gray background in small capitals.

When we introduce a new \term{term} or want it to stand out, it will be marked like \term{this} in the text.  Often this is done only the first time that it appears.

Terms that represent ReqIF model elements (e.g. SpecObject) are capitalized. Sometimes, we abbreviate them, for instance ``SpecElement'' instead of the full ``SpecElementWithAttributes''.  They will still be capitalized to indicate that these are model elements.

\begin{definition}{Definition}
Definitions appear throughout the text and concisely define new terms.  They appear in the text wherever they are introduced first.  Please take advantage of the index at the end of the book to quickly find definitions.
\end{definition}
