seatmlファイルの読み込みと構文解析
Simple Wiki Based Contents Management System
ソフトウェア関連 >> RTコンポーネント関連 >> eSEAT2 >> eSEATの詳細 >> seatmlファイルの読み込みと構文解析

SEATML_Managerによるseatmlファイルの読み込みと構文解析

eSEATの初期化プロセスの中で、seatmlファイルが読み込まれ、そこに定義された項目に従って処理が進められます。seatmlのファイル読込とその処理は、eSEAT_Coreクラスの loadSEATMLメソッドに定義されています。
このメソッド内では、self.parserにセットされている SEATML_Parserのインスタンス(eSEATの初期化時に生成されています)のload()メソッドをコールしています。
loadメソッドでは、次のような処理を順に行います。
  • loggerのセット
  • seatmlのベースディレクトリ(self.seatml_base_dir)を引数で与えられたseatmlのファイルがあるディレクトリにセット
  • lxml.etree.parseをコールし、seatml.xsdに定義されたスキーマに従ってseatmlファイルの構文解析を行いElementTreeを取得し、その結果をdocという局所変数にセット
  • generalタグの解釈
    • 各種ポートの生成
    • 初期化スクリプトの実行
    • onExecuteで実行するコード定義を登録
  • stateタグの解釈
    • stateの生成とルールの定義
    • stateの遷移時に実行する振舞いの定義を登録
    • onExecuteで実行するコード定義を登録
  • self.parent.initStartState("start")をコール。self.parantは、eSEATコンポーネントがセットされています。