Commits

Jens Reimann committed b9aa491

added some more content

  • Participants
  • Parent commits d64044b
  • Branches 1.2

Comments (0)

Files changed (4)

File org.openscada.documentation/protocol/book/index.html

 <div class="tocentry level_3"><a href="#section_5.3.9"><span class="number">5.3.9</span><span class="title">Variant</span></a></div>
 <div class="tocentry level_3"><a href="#section_5.3.10"><span class="number">5.3.10</span><span class="title">Variant Map</span></a></div>
 <div class="tocentry level_2"><a href="#section_5.4"><span class="number">5.4</span><span class="title">Values</span></a></div>
-<div class="tocentry level_1"><a href="#section_6"><span class="number">6</span><span class="title">Appendices</span></a></div>
-<div class="tocentry level_2"><a href="#section_license"><span class="number">6.I</span><span class="title">GNU Free Documentation License</span></a></div>
+<div class="tocentry level_1"><a href="#section_6"><span class="number">6</span><span class="title">Messages</span></a></div>
+<div class="tocentry level_2"><a href="#section_protocol.ae"><span class="number">6.1</span><span class="title">ae</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.1.1"><span class="number">6.1.1</span><span class="title">Enums</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.1.1.1"><span class="number">6.1.1.1</span><span class="title">MonitorStatus</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.1.1.2"><span class="number">6.1.1.2</span><span class="title">QueryState</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.1.1.3"><span class="number">6.1.1.3</span><span class="title">Severity</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.1.1.4"><span class="number">6.1.1.4</span><span class="title">BrowserType</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.1.2"><span class="number">6.1.2</span><span class="title">Interfaces</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.1.3"><span class="number">6.1.3</span><span class="title">Structures</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.1.4"><span class="number">6.1.4</span><span class="title">Messages</span></a></div>
+<div class="tocentry level_2"><a href="#section_protocol.core"><span class="number">6.2</span><span class="title">core</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.2.1"><span class="number">6.2.1</span><span class="title">Enums</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.2.1.1"><span class="number">6.2.1.1</span><span class="title">SubscriptionState</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.2.2"><span class="number">6.2.2</span><span class="title">Interfaces</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.2.2.1"><span class="number">6.2.2.1</span><span class="title">RequestMessage</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.2.2.2"><span class="number">6.2.2.2</span><span class="title">ResponseMessage</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.2.3"><span class="number">6.2.3</span><span class="title">Structures</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.2.4"><span class="number">6.2.4</span><span class="title">Messages</span></a></div>
+<div class="tocentry level_2"><a href="#section_protocol.da"><span class="number">6.3</span><span class="title">da</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.3.1"><span class="number">6.3.1</span><span class="title">Enums</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.3.1.1"><span class="number">6.3.1.1</span><span class="title">FolderEntryType</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.3.1.2"><span class="number">6.3.1.2</span><span class="title">IODirection</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.3.2"><span class="number">6.3.2</span><span class="title">Interfaces</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.3.3"><span class="number">6.3.3</span><span class="title">Structures</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.3.4"><span class="number">6.3.4</span><span class="title">Messages</span></a></div>
+<div class="tocentry level_2"><a href="#section_protocol.ca"><span class="number">6.4</span><span class="title">ca</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.4.1"><span class="number">6.4.1</span><span class="title">Enums</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.4.1.1"><span class="number">6.4.1.1</span><span class="title">Operation</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.4.1.2"><span class="number">6.4.1.2</span><span class="title">FactoryState</span></a></div>
+<div class="tocentry level_4"><a href="#section_6.4.1.3"><span class="number">6.4.1.3</span><span class="title">ConfigurationState</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.4.2"><span class="number">6.4.2</span><span class="title">Interfaces</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.4.3"><span class="number">6.4.3</span><span class="title">Structures</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.4.4"><span class="number">6.4.4</span><span class="title">Messages</span></a></div>
+<div class="tocentry level_2"><a href="#section_protocol.hd"><span class="number">6.5</span><span class="title">hd</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.5.1"><span class="number">6.5.1</span><span class="title">Enums</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.5.2"><span class="number">6.5.2</span><span class="title">Interfaces</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.5.3"><span class="number">6.5.3</span><span class="title">Structures</span></a></div>
+<div class="tocentry level_3"><a href="#section_6.5.4"><span class="number">6.5.4</span><span class="title">Messages</span></a></div>
+<div class="tocentry level_1"><a href="#section_7"><span class="number">7</span><span class="title">Appendices</span></a></div>
+<div class="tocentry level_2"><a href="#section_license"><span class="number">7.I</span><span class="title">GNU Free Documentation License</span></a></div>
 </div>
 <div class="bodybox">
 <div class="book_title">openSCADA Protocol Description</div><div class="book_authors">Authors</div><ul class="book_author_list"><li>Jens Reimann (ctron@dentrassi.de)</li></ul><div class="book_copyright">Copyright &copy; 2013</div><p class="book_copyrightText">Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled &quot;GNU Free Documentation License&quot;.</p><div id="section_1" class="heading level_1"><span class="number">1</span><span class="title">About this document</span></div>
 </tr></thead>
 <tbody>
 <tr>
-<td class="dcm_left">REQUIRED</td>
+<td class="dcm_left">SCALAR</td>
 <td class="dcm_left">Cardinality of 1</td>
 </tr>
 <tr>
 </tbody>
 </table>
 <p>
-In Java REQUIRED fields are non-null and primitive type of possible. OPTIONAL fields will become non-primitve types.
+In Java SCALAR fields are non-null and primitive type of possible. OPTIONAL fields will become non-primitve types.
 ORDERED fields become types based on List. And UNIQUE will be created as Set.   
 </p>
 <div id="section_5.3" class="heading level_2"><span class="number">5.3</span><span class="title">Encoding of fields</span></div>
 If the field is optional and the value is not set the type id is <span class="objectName">TYPE_NULL</span> independent of the type.
 </p>
 <div id="section_5.3.2" class="heading level_3"><span class="number">5.3.2</span><span class="title">Integer</span></div>
-<p>If the field is specified as OPTIONAL or REQUIRED:</p>
+<p>If the field is specified as OPTIONAL or SCALAR:</p>
 <table class="dcm_simple dcm_structure"><colgroup>
 <col class="dcm_left" />
 </colgroup>
 </tbody>
 </table>
 <div id="section_5.3.3" class="heading level_3"><span class="number">5.3.3</span><span class="title">Long</span></div>
-<p>If the field is specified as OPTIONAL or REQUIRED:</p>
+<p>If the field is specified as OPTIONAL or SCALAR:</p>
 <table class="dcm_simple dcm_structure"><colgroup>
 <col class="dcm_left" />
 </colgroup>
 </tbody>
 </table>
 <div id="section_5.3.4" class="heading level_3"><span class="number">5.3.4</span><span class="title">Double</span></div>
-<p>If the field is specified as OPTIONAL or REQUIRED:</p>
+<p>If the field is specified as OPTIONAL or SCALAR:</p>
 <table class="dcm_simple dcm_structure"><colgroup>
 <col class="dcm_left" />
 </colgroup>
 </tbody>
 </table>
 <div id="section_5.3.5" class="heading level_3"><span class="number">5.3.5</span><span class="title">Boolean</span></div>
-<p>If the field is specified as OPTIONAL or REQUIRED:</p>
+<p>If the field is specified as OPTIONAL or SCALAR:</p>
 <table class="dcm_simple dcm_structure"><colgroup>
 <col class="dcm_left" />
 </colgroup>
 only contain 2 bits maximum. Still it is possible to handle your bits directly as integer or log value instead.
 </p>
 <div id="section_5.3.6" class="heading level_3"><span class="number">5.3.6</span><span class="title">String</span></div>
-<p>If the field is specified as OPTIONAL or REQUIRED:</p>
+<p>If the field is specified as OPTIONAL or SCALAR:</p>
 <table class="dcm_simple dcm_structure"><colgroup>
 <col class="dcm_left" />
 </colgroup>
 </table>
 <div id="section_5.3.7" class="heading level_3"><span class="number">5.3.7</span><span class="title">Enum</span></div>
 <p>Enums are supposed to have a maximum number of 16 choices and do have a numeric ordinal value.</p>
-<p>If the field is specified as OPTIONAL or REQUIRED:</p>
+<p>If the field is specified as OPTIONAL or SCALAR:</p>
 <table class="dcm_simple dcm_structure"><colgroup>
 <col class="dcm_left" />
 </colgroup>
 </tbody>
 </table>
 <div id="section_5.3.8" class="heading level_3"><span class="number">5.3.8</span><span class="title">Properties map</span></div>
-<p>If the field is specified as OPTIONAL or REQUIRED:</p>
+<p>If the field is specified as OPTIONAL or SCALAR:</p>
 <table class="dcm_simple dcm_structure"><colgroup>
 <col class="dcm_left" />
 </colgroup>
 </tbody>
 </table>
 <div id="section_5.3.9" class="heading level_3"><span class="number">5.3.9</span><span class="title">Variant</span></div>
-<p>If the field is specified as OPTIONAL or REQUIRED:</p>
+<p>If the field is specified as OPTIONAL or SCALAR:</p>
 <table class="dcm_simple dcm_structure"><colgroup>
 <col class="dcm_left" />
 </colgroup>
 </table>
 <p>Each <span class="objectName">VariantEntry</span> is encoded as described in <q>Variant</q>.</p>
 <div id="section_5.3.10" class="heading level_3"><span class="number">5.3.10</span><span class="title">Variant Map</span></div>
-<p>If the field is specified as OPTIONAL or REQUIRED:</p>
+<p>If the field is specified as OPTIONAL or SCALAR:</p>
 <table class="dcm_simple dcm_structure"><colgroup>
 <col class="dcm_left" />
 </colgroup>
 </tr>
 </tbody>
 </table>
-<div id="section_6" class="heading level_1"><span class="number">6</span><span class="title">Appendices</span></div>
-<div id="section_license" class="heading level_2"><span class="number">6.I</span><span class="title">GNU Free Documentation License</span></div>
+<div id="section_6" class="heading level_1"><span class="number">6</span><span class="title">Messages</span></div>
+<div id="section_protocol.ae" class="heading level_2"><span class="number">6.1</span><span class="title">ae</span></div>
+<p>This protocol inherits from the following protocols:</p>
+<ul>
+<li><a class="xref section" href="#section_protocol.core">core</a></li>
+</ul>
+<p>The protocol version is: 1</p>
+<div id="section_6.1.1" class="heading level_3"><span class="number">6.1.1</span><span class="title">Enums</span></div>
+<p>The following enums are defined:</p>
+<div id="section_6.1.1.1" class="heading level_4"><span class="number">6.1.1.1</span><span class="title">MonitorStatus</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">INACTIVE</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">OK</td>
+</tr>
+<tr>
+<td class="dcm_left">2</td>
+<td class="dcm_left">NOT_OK</td>
+</tr>
+<tr>
+<td class="dcm_left">3</td>
+<td class="dcm_left">NOT_OK_AKN</td>
+</tr>
+<tr>
+<td class="dcm_left">4</td>
+<td class="dcm_left">NOT_AKN</td>
+</tr>
+<tr>
+<td class="dcm_left">5</td>
+<td class="dcm_left">NOT_OK_NOT_AKN</td>
+</tr>
+<tr>
+<td class="dcm_left">6</td>
+<td class="dcm_left">UNSAFE</td>
+</tr>
+<tr>
+<td class="dcm_left">7</td>
+<td class="dcm_left">INIT</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.1.1.2" class="heading level_4"><span class="number">6.1.1.2</span><span class="title">QueryState</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">DISCONNECTED</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">CONNECTED</td>
+</tr>
+<tr>
+<td class="dcm_left">2</td>
+<td class="dcm_left">CONNECTING</td>
+</tr>
+<tr>
+<td class="dcm_left">3</td>
+<td class="dcm_left">LOADING</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.1.1.3" class="heading level_4"><span class="number">6.1.1.3</span><span class="title">Severity</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">INFORMATION</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">WARNING</td>
+</tr>
+<tr>
+<td class="dcm_left">2</td>
+<td class="dcm_left">ALARM</td>
+</tr>
+<tr>
+<td class="dcm_left">3</td>
+<td class="dcm_left">ERROR</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.1.1.4" class="heading level_4"><span class="number">6.1.1.4</span><span class="title">BrowserType</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">MONITORS</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">EVENTS</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.1.2" class="heading level_3"><span class="number">6.1.2</span><span class="title">Interfaces</span></div>
+<p>No interfaces defined.</p>
+<div id="section_6.1.3" class="heading level_3"><span class="number">6.1.3</span><span class="title">Structures</span></div>
+<p>The following structures are defined:</p>
+<div id="section_6.1.4" class="heading level_3"><span class="number">6.1.4</span><span class="title">Messages</span></div>
+<p>The following messages are defined:</p>
+<div id="section_protocol.core" class="heading level_2"><span class="number">6.2</span><span class="title">core</span></div>
+<p>The protocol version is: 1</p>
+<div id="section_6.2.1" class="heading level_3"><span class="number">6.2.1</span><span class="title">Enums</span></div>
+<p>The following enums are defined:</p>
+<div id="section_6.2.1.1" class="heading level_4"><span class="number">6.2.1.1</span><span class="title">SubscriptionState</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">DISCONNECTED</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">GRANTED</td>
+</tr>
+<tr>
+<td class="dcm_left">2</td>
+<td class="dcm_left">CONNECTED</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.2.2" class="heading level_3"><span class="number">6.2.2</span><span class="title">Interfaces</span></div>
+<p>The following interfaces are defined:</p>
+<div id="section_6.2.2.1" class="heading level_4"><span class="number">6.2.2.1</span><span class="title">RequestMessage</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>#</th>
+<th>Name</th>
+<th>Type</th>
+<th>Type Modifier</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">request</td>
+<td class="dcm_left">Structure</td>
+<td class="dcm_left">SCALAR</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.2.2.2" class="heading level_4"><span class="number">6.2.2.2</span><span class="title">ResponseMessage</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>#</th>
+<th>Name</th>
+<th>Type</th>
+<th>Type Modifier</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">response</td>
+<td class="dcm_left">Structure</td>
+<td class="dcm_left">SCALAR</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.2.3" class="heading level_3"><span class="number">6.2.3</span><span class="title">Structures</span></div>
+<p>The following structures are defined:</p>
+<div id="section_6.2.4" class="heading level_3"><span class="number">6.2.4</span><span class="title">Messages</span></div>
+<p>The following messages are defined:</p>
+<div id="section_protocol.da" class="heading level_2"><span class="number">6.3</span><span class="title">da</span></div>
+<p>openSCADA DA Protocol</p>
+<p>This protocol inherits from the following protocols:</p>
+<ul>
+<li><a class="xref section" href="#section_protocol.core">core</a></li>
+</ul>
+<p>The protocol version is: 1</p>
+<div id="section_6.3.1" class="heading level_3"><span class="number">6.3.1</span><span class="title">Enums</span></div>
+<p>The following enums are defined:</p>
+<div id="section_6.3.1.1" class="heading level_4"><span class="number">6.3.1.1</span><span class="title">FolderEntryType</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">ITEM</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">FOLDER</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.3.1.2" class="heading level_4"><span class="number">6.3.1.2</span><span class="title">IODirection</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">INPUT</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">OUTPUT</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.3.2" class="heading level_3"><span class="number">6.3.2</span><span class="title">Interfaces</span></div>
+<p>No interfaces defined.</p>
+<div id="section_6.3.3" class="heading level_3"><span class="number">6.3.3</span><span class="title">Structures</span></div>
+<p>The following structures are defined:</p>
+<div id="section_6.3.4" class="heading level_3"><span class="number">6.3.4</span><span class="title">Messages</span></div>
+<p>The following messages are defined:</p>
+<div id="section_protocol.ca" class="heading level_2"><span class="number">6.4</span><span class="title">ca</span></div>
+<p>This protocol inherits from the following protocols:</p>
+<ul>
+<li><a class="xref section" href="#section_protocol.core">core</a></li>
+</ul>
+<p>The protocol version is: 1</p>
+<div id="section_6.4.1" class="heading level_3"><span class="number">6.4.1</span><span class="title">Enums</span></div>
+<p>The following enums are defined:</p>
+<div id="section_6.4.1.1" class="heading level_4"><span class="number">6.4.1.1</span><span class="title">Operation</span></div>
+<p>Operation for DiffEntry</p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">ADD</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">DELETE</td>
+</tr>
+<tr>
+<td class="dcm_left">2</td>
+<td class="dcm_left">UPDATE_SET</td>
+</tr>
+<tr>
+<td class="dcm_left">3</td>
+<td class="dcm_left">UPDATE_DIFF</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.4.1.2" class="heading level_4"><span class="number">6.4.1.2</span><span class="title">FactoryState</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">LOADED</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">BOUND</td>
+</tr>
+<tr>
+<td class="dcm_left">2</td>
+<td class="dcm_left">BINDING</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.4.1.3" class="heading level_4"><span class="number">6.4.1.3</span><span class="title">ConfigurationState</span></div>
+<p></p>
+<table class="dcm_simple"><colgroup>
+<col class="dcm_left" />
+<col class="dcm_left" />
+</colgroup>
+<thead><tr>
+<th>Ordinal</th>
+<th>Literal</th>
+</tr></thead>
+<tbody>
+<tr>
+<td class="dcm_left">0</td>
+<td class="dcm_left">AVAILABLE</td>
+</tr>
+<tr>
+<td class="dcm_left">1</td>
+<td class="dcm_left">APPLIED</td>
+</tr>
+<tr>
+<td class="dcm_left">2</td>
+<td class="dcm_left">ERROR</td>
+</tr>
+<tr>
+<td class="dcm_left">3</td>
+<td class="dcm_left">APPLYING</td>
+</tr>
+</tbody>
+</table>
+<div id="section_6.4.2" class="heading level_3"><span class="number">6.4.2</span><span class="title">Interfaces</span></div>
+<p>No interfaces defined.</p>
+<div id="section_6.4.3" class="heading level_3"><span class="number">6.4.3</span><span class="title">Structures</span></div>
+<p>The following structures are defined:</p>
+<div id="section_6.4.4" class="heading level_3"><span class="number">6.4.4</span><span class="title">Messages</span></div>
+<p>The following messages are defined:</p>
+<div id="section_protocol.hd" class="heading level_2"><span class="number">6.5</span><span class="title">hd</span></div>
+<p>This protocol inherits from the following protocols:</p>
+<ul>
+<li><a class="xref section" href="#section_protocol.core">core</a></li>
+</ul>
+<p>The protocol version is: 1</p>
+<div id="section_6.5.1" class="heading level_3"><span class="number">6.5.1</span><span class="title">Enums</span></div>
+<p>No enums defined.</p>
+<div id="section_6.5.2" class="heading level_3"><span class="number">6.5.2</span><span class="title">Interfaces</span></div>
+<p>No interfaces defined.</p>
+<div id="section_6.5.3" class="heading level_3"><span class="number">6.5.3</span><span class="title">Structures</span></div>
+<p>The following structures are defined:</p>
+<div id="section_6.5.4" class="heading level_3"><span class="number">6.5.4</span><span class="title">Messages</span></div>
+<p>The following messages are defined:</p>
+<div id="section_7" class="heading level_1"><span class="number">7</span><span class="title">Appendices</span></div>
+<div id="section_license" class="heading level_2"><span class="number">7.I</span><span class="title">GNU Free Documentation License</span></div>
 <pre>
 
                 GNU Free Documentation License

File org.openscada.documentation/protocol/content/ngp/03_osbp.content

 <content:simpleTable>
 <content:column content:horizontalAlign="LEFT" content:title="Modifier"/>
 <content:column content:horizontalAlign="LEFT" content:title="Description"/>
-<content:row><content:cell>REQUIRED</content:cell><content:cell>Cardinality of 1</content:cell></content:row>
+<content:row><content:cell>SCALAR</content:cell><content:cell>Cardinality of 1</content:cell></content:row>
 <content:row><content:cell>OPTIONAL</content:cell><content:cell>Cardinality of 0…1</content:cell></content:row>
 <content:row><content:cell>ORDERED</content:cell><content:cell>Cardinality of 0…*, with a specific order, without uniqueness of items</content:cell></content:row>
 <content:row><content:cell>UNIQUE</content:cell><content:cell>Cardinality of 0…*, without a specific order, with unique items</content:cell></content:row>
 </content:simpleTable>
 
 <content:p>
-In Java REQUIRED fields are non-null and primitive type of possible. OPTIONAL fields will become non-primitve types.
+In Java SCALAR fields are non-null and primitive type of possible. OPTIONAL fields will become non-primitve types.
 ORDERED fields become types based on List. And UNIQUE will be created as Set.   
 </content:p>
 
 </content:section>
 
 <content:section content:title="Integer">
-<content:p>If the field is specified as OPTIONAL or REQUIRED:</content:p>
+<content:p>If the field is specified as OPTIONAL or SCALAR:</content:p>
 <content:structureTable>
 <content:entry content:name="fieldNumber" content:typeName="byte" content:size="1"><content:description>The field number</content:description></content:entry>
 <content:entry content:name="typeId" content:typeName="byte" content:size="1"><content:description>TYPE_INT</content:description></content:entry>
 </content:section>
 
 <content:section content:title="Long">
-<content:p>If the field is specified as OPTIONAL or REQUIRED:</content:p>
+<content:p>If the field is specified as OPTIONAL or SCALAR:</content:p>
 <content:structureTable>
 <content:entry content:name="fieldNumber" content:typeName="byte" content:size="1"><content:description>The field number</content:description></content:entry>
 <content:entry content:name="typeId" content:typeName="byte" content:size="1"><content:description>TYPE_LONG</content:description></content:entry>
 </content:section>
 
 <content:section content:title="Double">
-<content:p>If the field is specified as OPTIONAL or REQUIRED:</content:p>
+<content:p>If the field is specified as OPTIONAL or SCALAR:</content:p>
 <content:structureTable>
 <content:entry content:name="fieldNumber" content:typeName="byte" content:size="1"><content:description>The field number</content:description></content:entry>
 <content:entry content:name="typeId" content:typeName="byte" content:size="1"><content:description>TYPE_DOUBLE</content:description></content:entry>
 </content:section>
 
 <content:section content:title="Boolean">
-<content:p>If the field is specified as OPTIONAL or REQUIRED:</content:p>
+<content:p>If the field is specified as OPTIONAL or SCALAR:</content:p>
 <content:structureTable>
 <content:entry content:name="fieldNumber" content:typeName="byte" content:size="1"><content:description>The field number</content:description></content:entry>
 <content:entry content:name="typeId" content:typeName="byte" content:size="1"><content:description>TYPE_BOOLEAN</content:description></content:entry>
 </content:section>
 
 <content:section content:title="String">
-<content:p>If the field is specified as OPTIONAL or REQUIRED:</content:p>
+<content:p>If the field is specified as OPTIONAL or SCALAR:</content:p>
 <content:structureTable>
 <content:entry content:name="fieldNumber" content:typeName="byte" content:size="1"><content:description>The field number</content:description></content:entry>
 <content:entry content:name="typeId" content:typeName="byte" content:size="1"><content:description>TYPE_STRING</content:description></content:entry>
 
 <content:p>Enums are supposed to have a maximum number of 16 choices and do have a numeric ordinal value.</content:p>
 
-<content:p>If the field is specified as OPTIONAL or REQUIRED:</content:p>
+<content:p>If the field is specified as OPTIONAL or SCALAR:</content:p>
 <content:structureTable>
 <content:entry content:name="fieldNumber" content:typeName="byte" content:size="1"><content:description>The field number</content:description></content:entry>
 <content:entry content:name="typeId" content:typeName="byte" content:size="1"><content:description>TYPE_ENUM</content:description></content:entry>
 </content:section>
 
 <content:section content:title="Properties map">
-<content:p>If the field is specified as OPTIONAL or REQUIRED:</content:p>
+<content:p>If the field is specified as OPTIONAL or SCALAR:</content:p>
 <content:structureTable>
 <content:entry content:name="fieldNumber" content:typeName="byte" content:size="1"><content:description>The field number</content:description></content:entry>
 <content:entry content:name="typeId" content:typeName="byte" content:size="1"><content:description>TYPE_PROPERTIES</content:description></content:entry>
 </content:section>
 
 <content:section content:title="Variant">
-<content:p>If the field is specified as OPTIONAL or REQUIRED:</content:p>
+<content:p>If the field is specified as OPTIONAL or SCALAR:</content:p>
 <content:structureTable>
 <content:entry content:name="fieldNumber" content:typeName="byte" content:size="1"><content:description>The field number</content:description></content:entry>
 <content:entry content:name="typeId" content:typeName="byte" content:size="1"><content:description>TYPE_VARIANT</content:description></content:entry>
 </content:section>
 
 <content:section content:title="Variant Map">
-<content:p>If the field is specified as OPTIONAL or REQUIRED:</content:p>
+<content:p>If the field is specified as OPTIONAL or SCALAR:</content:p>
 <content:structureTable>
 <content:entry content:name="fieldNumber" content:typeName="byte" content:size="1"><content:description>The field number</content:description></content:entry>
 <content:entry content:name="typeId" content:typeName="byte" content:size="1"><content:description>TYPE_VARIANT_MAP</content:description></content:entry>

File org.openscada.documentation/protocol/merged.book

Binary file modified.

File org.openscada.documentation/protocol/protocol.bookBuilder

   <elements xsi:type="map:MapSection" title="Serialization with OSBP">
     <elements xsi:type="map:File" path="content/ngp/03_osbp.content"/>
   </elements>
+  <elements xsi:type="map:MapSection" title="Messages">
+    <elements xsi:type="map:Feature" featureId="org.openscada.oxygen">
+      <fileNameRules xsi:type="map:IncludePatternRule" pattern=".*\.protocol"/>
+    </elements>
+  </elements>
   <elements xsi:type="map:MapSection" numberingStyle="ROMAN" title="Appendices">
     <elements xsi:type="map:MapSection" id="license"/>
   </elements>