<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://openrtp.jp/seatsat/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://openrtp.jp/seatsat/feed.php">
        <title>SEAT,SAT: AIST-OpenRTP Project sat</title>
        <description></description>
        <link>http://openrtp.jp/seatsat/</link>
        <image rdf:resource="http://openrtp.jp/seatsat/lib/images/favicon.ico" />
       <dc:date>2012-04-27T14:26:00+09:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://openrtp.jp/seatsat/sat:about"/>
                <rdf:li rdf:resource="http://openrtp.jp/seatsat/sat:architecture"/>
                <rdf:li rdf:resource="http://openrtp.jp/seatsat/sat:document"/>
                <rdf:li rdf:resource="http://openrtp.jp/seatsat/sat:satml"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://openrtp.jp/seatsat/lib/images/favicon.ico">
        <title>SEAT,SAT: AIST-OpenRTP Project</title>
        <link>http://openrtp.jp/seatsat/</link>
        <url>http://openrtp.jp/seatsat/lib/images/favicon.ico</url>
    </image>
    <item rdf:about="http://openrtp.jp/seatsat/sat:about">
        <dc:format>text/html</dc:format>
        <dc:date>2008-09-02T18:14:36+09:00</dc:date>
        <title>SATについて</title>
        <link>http://openrtp.jp/seatsat/sat:about</link>
        <description>


&lt;h1&gt;&lt;a name=&quot;satについて&quot; id=&quot;satについて&quot;&gt;SATについて&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
SAT(Situated Action Transducer)は、ロボットとの対話を実現するためのソフトウェアフレームワークです。
プロダクションシステムモデルを採用することで高度で複雑な対話をプログラミングするために開発されました。
SATは、以下の機能をサポートします。
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; パラフレーズ生成機能&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; 複数辞書管理機能&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; プロダクションシステムモデルに基づく対話管理機能&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
</description>
    </item>
    <item rdf:about="http://openrtp.jp/seatsat/sat:architecture">
        <dc:format>text/html</dc:format>
        <dc:date>2011-04-16T14:22:32+09:00</dc:date>
        <title>SATのアーキテクチャ</title>
        <link>http://openrtp.jp/seatsat/sat:architecture</link>
        <description></description>
    </item>
    <item rdf:about="http://openrtp.jp/seatsat/sat:document">
        <dc:format>text/html</dc:format>
        <dc:date>2008-09-08T16:23:08+09:00</dc:date>
        <title>SATユーザマニュアル</title>
        <link>http://openrtp.jp/seatsat/sat:document</link>
        <description>


&lt;h1&gt;&lt;a name=&quot;satユーザマニュアル&quot; id=&quot;satユーザマニュアル&quot;&gt;SATユーザマニュアル&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;SATユーザマニュアル&quot; [1-43] --&gt;
&lt;h1&gt;&lt;a name=&quot;コマンドラインオプション&quot; id=&quot;コマンドラインオプション&quot;&gt;コマンドラインオプション&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code sh&quot;&gt;% sat [scriptfile]&lt;/pre&gt;
&lt;p&gt;

の形式で起動します。
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;例１&lt;/strong&gt;

&lt;/p&gt;
&lt;pre class=&quot;code sh&quot;&gt;% sat config.xml&lt;/pre&gt;
&lt;p&gt;

スクリプトファイルconfig.xmlを読み込んで起動します。
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;例２&lt;/strong&gt;

&lt;/p&gt;
&lt;pre class=&quot;code sh&quot;&gt;% sat adaptor.xml script1.xml script2.xml&lt;/pre&gt;
&lt;p&gt;

スクリプトファイルは任意の数に分けて読み込むことが可能です。
この例ではアダプタ定義部adaptor.xmlと２つのスクリプトファイルscript1.xmlとscript2.xmlを読み込んで起動します。
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;コマンドラインオプション&quot; [44-595] --&gt;
&lt;h1&gt;&lt;a name=&quot;アダプタ定義&quot; id=&quot;アダプタ定義&quot;&gt;アダプタ定義&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code xml&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;general&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;sample&amp;quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;adaptor&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;speechrec&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;type&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;julius&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;host&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;192.168.136.1&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;port&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;9000&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;code&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;EUC-JP&amp;quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;adaptor&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;control&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;type&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;socket&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;host&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;192.168.136.1&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;port&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;10000&amp;quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;adaptor&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;talk&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;type&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;socket&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;host&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;192.168.136.1&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;port&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;11000&amp;quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;code&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;shift-jis&amp;quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/general&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
以下のオプションが指定可能です。

&lt;/p&gt;
&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; name &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; アダプタを区別するID &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 必須 &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; type &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; アダプタの種類 &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 必須（”julius”または”socket”） &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; host &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; サーバを立ち上げたホストのIPアドレス &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 必須 &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; port &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; サーバとの通信に利用するポート &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 必須 &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row4&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; code &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; サーバとの通信に利用する文字コード &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 任意（デフォルト無変換） &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;

&lt;p&gt;

Juliusのモジュールモードでの起動については&lt;a href=&quot;http://openrtp.jp/seatsat/wiki:juliushowto&quot; class=&quot;wikilink1&quot; title=&quot;wiki:juliushowto&quot;&gt;juliushowto&lt;/a&gt;を参照。
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;アダプタ定義&quot; [596-1454] --&gt;
&lt;h1&gt;&lt;a name=&quot;ルール定義&quot; id=&quot;ルール定義&quot;&gt;ルール定義&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;

スクリプトは、複数のルールからなります。
ルールの条件部が真となるとルールのコマンド部が起動します。
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;スクリプトの例&lt;/strong&gt;

&lt;/p&gt;
&lt;pre class=&quot;code xml&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;rule&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;main&amp;quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;head&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;wordmatch&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;speechrec.sentence&amp;quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
      &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;key&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;ロボット操作モード[へ変更]&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/key&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/wordmatch&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;speechrec.update == now&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/head&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;mode = &amp;quot;control&amp;quot;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/mode&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;stream&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;talk&amp;quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
      (talk &amp;quot;ロボット操作モードへ変更&amp;quot;)
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/stream&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/rule&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;rule&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;robotcontrol&amp;quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;head&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;mode == &amp;quot;control&amp;quot;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;wordmatch&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;speechrec.sentence&amp;quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
      &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;key&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;１歩前進&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/key&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
      &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;key&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;１歩前に進んで&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/key&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
      &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;key&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;１歩前へ&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/key&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/wordmatch&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;speechrec.update == now&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/head&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;stream&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;talk&amp;quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;(talk &amp;quot;1歩前に行きます&amp;quot;) &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/stream&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;stream&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&amp;quot;control&amp;quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;(robot hwalk :set-target-pos 0.2 0 0)&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/stream&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/rule&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
このスクリプトでは、”main”と”robotcontrol”の２つのルールが定義されています。
「ロボット操作モードへ変更」という入力を受けると”main”ルールとマッチし、内部状態modeに値”control”が代入されます。
内部状態modeに値”control”が代入された状態で「一歩前に進んで」という入力を受けると”robotcontrol”ルールとマッチし、ロボット操作サーバへ一歩前へ進むコマンドを送信します。
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;ルール定義&quot; [1455-2939] --&gt;
&lt;h1&gt;&lt;a name=&quot;ルール定義1&quot; id=&quot;ルール定義1&quot;&gt;ルール定義&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;

&lt;strong&gt;オプションの説明&lt;/strong&gt;

&lt;/p&gt;
&lt;pre class=&quot;code xml&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;rule&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;head&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;[condition]&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/head&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  コマンド部
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/rule&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;

conditionはそのルールが発火する条件を記述します。以下の表現を使うことができます。
&lt;/p&gt;
&lt;pre class=&quot;code xml&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;[formula]&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;wordmatch&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;[phrases]&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/wordmatch&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; state表現 &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; ルールの一致条件を式で与える &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 式が成り立ったときにルール発火 &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; wordmatch表現 &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; phrase &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 最低一つは必須 &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;

&lt;p&gt;

state, wordmatchともに複数指定することができ、全てが成り立ったとき（AND条件）にルール全体が発火します。worsmatchは、複数のphraseを指定でき、どれかのphraseが一致すると真になるOR条件で判定されます。ルールが一致すると複数指定されたコマンドはすべて実行されます。
&lt;/p&gt;

&lt;p&gt;
phraseの指定には以下の形式が利用できます。

&lt;/p&gt;
&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; [subphrase] &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; subphraseがあってもなくても一致する &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; (subphrase1|subphrase2) &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; subphrase1かsubphrase2のどちらかがあった場合に一致する &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;

&lt;p&gt;

&lt;strong&gt;例１&lt;/strong&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;
一歩前に進んで[ください]
&lt;/pre&gt;

&lt;p&gt;

「一歩前に進んで」「一歩前に進んでください」のどちらにも一致します。
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;例２&lt;/strong&gt;

&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;
(一歩前|二歩前|三歩前)に進んで
&lt;/pre&gt;

&lt;p&gt;

「一歩前に進んで」「二歩前に進んで」「三歩前に進んで」のどちらにも一致します。
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;ルール定義&quot; [2940-4411] --&gt;
&lt;h1&gt;&lt;a name=&quot;コマンド定義&quot; id=&quot;コマンド定義&quot;&gt;コマンド定義&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;コマンド定義&quot; [4412-4445] --&gt;
&lt;h2&gt;&lt;a name=&quot;streamコマンド&quot; id=&quot;streamコマンド&quot;&gt;streamコマンド&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;

&lt;strong&gt;オプションの説明&lt;/strong&gt;

&lt;/p&gt;
&lt;pre class=&quot;code xml&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;stream&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;option&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;[command]&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/stream&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;

オプションは以下のものがあります。

&lt;/p&gt;
&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; name &lt;/th&gt;&lt;td class=&quot;col1&quot;&gt; コマンドを書き込むワーキングメモリID &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 必須 &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;

&lt;p&gt;

書き込む先のワーキングメモリIDがソケットアダプタに関連づけられている場合、[command]で指定される内容が、ソケットアダプタで指定されるサーバに対して送信されます。
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;streamコマンド&quot; [4446-4924] --&gt;
&lt;h2&gt;&lt;a name=&quot;stateコマンド&quot; id=&quot;stateコマンド&quot;&gt;stateコマンド&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;

&lt;strong&gt;オプションの説明&lt;/strong&gt;

&lt;/p&gt;
&lt;pre class=&quot;code xml&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;[command]&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/state&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
[command]で指定される内容が、式評価されます。
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;stateコマンド&quot; [4925-] --&gt;</description>
    </item>
    <item rdf:about="http://openrtp.jp/seatsat/sat:satml">
        <dc:format>text/html</dc:format>
        <dc:date>2008-09-02T00:57:37+09:00</dc:date>
        <title>SATMLとは</title>
        <link>http://openrtp.jp/seatsat/sat:satml</link>
        <description>


&lt;h1&gt;&lt;a name=&quot;satmlとは&quot; id=&quot;satmlとは&quot;&gt;SATMLとは&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
SATによるスクリプトを記述するための記述形式です。
以下のように定義されています。
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;SATMLとは&quot; [1-146] --&gt;
&lt;h1&gt;&lt;a name=&quot;bnfによる定義&quot; id=&quot;bnfによる定義&quot;&gt;BNFによる定義&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;
script ::= xmlfile+
xmlfile ::= xmlheader xmlcontent
xmlheader ::= &amp;#039;&amp;lt;?xml&amp;#039; (sp xmlheaderopt)* sp? &amp;#039;?&amp;gt;&amp;#039;
xmlheaderopt ::= xmlversion | xmlencoding
xmlversion ::= &amp;#039;version&amp;#039; sp? eq sp? number
xmlencoding ::= &amp;#039;encoding&amp;#039; sp? eq sp? string
xmlcontent ::= &amp;#039;&amp;lt;satml&amp;gt;&amp;#039; satgeneral? | satrule* &amp;#039;&amp;lt;/satml&amp;gt;&amp;#039;
satgeneral ::= &amp;#039;&amp;lt;general&amp;gt;&amp;#039; adaptorsetting+ &amp;#039;&amp;lt;/general&amp;gt;&amp;#039;
adaptorsetting ::= &amp;#039;&amp;lt;adaptor&amp;#039; (sp adaptoropt)* sp? &amp;#039;/&amp;gt;&amp;#039;
adaptoropt ::= typesetting | namesetting | hostsetting | portsetting | codesetting
typesetting ::= &amp;#039;type&amp;#039; sp? eq sp? adaptortype
adaptortype ::= &amp;#039;julius&amp;#039; | &amp;#039;socket&amp;#039; | &amp;#039;process&amp;#039;
hostsetting ::= &amp;#039;host&amp;#039; sp? eq sp? string
portsetting ::= &amp;#039;port&amp;#039; sp? eq sp? number
codesetting ::= &amp;#039;code&amp;#039; sp? eq sp? string
satrule ::= &amp;#039;&amp;lt;rule&amp;#039; (sp ruleopt)* &amp;#039;&amp;gt;&amp;#039; pattern command+ &amp;#039;&amp;lt;/rule&amp;gt;&amp;#039;
ruleopt ::= namesetting
namesetting ::= &amp;#039;name&amp;#039; sp? eq sp? string
pattern ::= &amp;#039;&amp;lt;head&amp;gt;&amp;#039; state+ &amp;#039;&amp;lt;/head&amp;gt;&amp;#039;
state ::= &amp;#039;&amp;lt;state&amp;gt;&amp;#039; string &amp;#039;&amp;lt;/state&amp;gt;&amp;#039;
command ::= &amp;#039;&amp;lt;&amp;#039;commandtype (sp commandopt)* &amp;#039;&amp;gt;&amp;#039; string &amp;#039;&amp;lt;/command&amp;gt;&amp;#039;
commandtype ::= &amp;#039;state&amp;#039; | &amp;#039;stream&amp;#039; | &amp;#039;trace&amp;#039;
commandopt ::= &amp;#039;name&amp;#039; sp? eq sp? string
eq ::= &amp;#039;=&amp;#039;
string ::= [a-zA-z][0-9a-zA-z]*
number ::= -?[0-9]+
&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;BNFによる定義&quot; [147-] --&gt;</description>
    </item>
</rdf:RDF>

