Server Messages

Server messages have the following form:

$ \langle$ session-init$ \rangle$  ::=  <session-init>
      <sessionID> $ \langle$ integer$ \rangle$ </sessionID>
      <setting>
      <rounds> $ \langle$ integer$ \rangle$ </rounds>
      <allowed-time> $ \langle$ integer$ \rangle$ </allowed-time>
      <allowed-turns> $ \langle$ integer$ \rangle$ </allowed-turns>
      </setting>
      </session-init>
       
$ \langle$ round-init$ \rangle$  ::=  <round-init>
      <round> $ \langle$ integer$ \rangle$ </round>
      <sessionID> $ \langle$ integer$ \rangle$ </sessionID>
      <time-left> $ \langle$ integer$ \rangle$ </time-left>
      <rounds-left> $ \langle$ integer$ \rangle$ </rounds-left>
      </round-init>
       
$ \langle$ turn-response$ \rangle$  ::=  $ \langle$ state$ \rangle$  |  $ \langle$ end-round$ \rangle$
$ \langle$ end-round$ \rangle$  ::=  <end-round>
      $ \langle$ state$ \rangle$ [<goal-reached/>]
      <time-spent> $ \langle$ integer$ \rangle$ </time-spent>
      <turns-used> $ \langle$ integer$ \rangle$ </turns-used>
      </end-round>
$ \langle$ state$ \rangle$  ::=  <state> [<is-goal/>] $ \langle$ atom$ \rangle$* $ \langle$ fluent$ \rangle$* </state>
$ \langle$ atom$ \rangle$  ::=  <atom> $ \langle$ predicate$ \rangle$ $ \langle$ term$ \rangle$* </atom>
$ \langle$ fluent$ \rangle$  ::=  <fluent> $ \langle$ function$ \rangle$ $ \langle$ term$ \rangle$* $ \langle$ value$ \rangle$ </fluent>
$ \langle$ predicate$ \rangle$  ::=  <predicate> $ \langle$ name$ \rangle$ </predicate>
$ \langle$ function$ \rangle$  ::=  <function> $ \langle$ name$ \rangle$ </function>
$ \langle$ term$ \rangle$  ::=  <term> $ \langle$ name$ \rangle$ </term>
$ \langle$ value$ \rangle$  ::=  <value> $ \langle$ number$ \rangle$ </value>
       
$ \langle$ end-session$ \rangle$  ::=  <end-session>
      <sessionID> $ \langle$ integer$ \rangle$ </sessionID>
      <problem> $ \langle$ name$ \rangle$ </problem>
      <rounds> $ \langle$ integer$ \rangle$ </rounds>
      <goals>
      <failed> $ \langle$ integer$ \rangle$ </failed>
      <reached>
      <successes> $ \langle$ integer$ \rangle$ </successes>
      [<time-average> $ \langle$ number$ \rangle$ </time-average>]
      </reached>
      </goals>
      [<metric-average> $ \langle$ number$ \rangle$ </metric-average>]
      </end-session>
       
$ \langle$ error$ \rangle$  ::=  <error> $ \langle$ message$ \rangle$ </error>

Håkan L. S. Younes
2005-12-06