XML

Topへ

XML文章を操作するためのビルトイン群です。これらのビルトインを有効にするためには、loadModuleを用いてxml.dllをロードする必要があります。

述語名/引数  (xml:fread *file *sexp)
要約 ファイルからXML文章をS式に変換して読み込みます。
互換性 Win
引数 *file [in] ファイル名
*sexp [out] 読み込んだXML文書を表すS式
成功/失敗 true  XML文書の読み込みに成功し、*sexpのマッチングに成功した。
false 上記以外
解説 XMLを表すS式は以下の形式になります。

<XML> ::= '('<TAG> <VAL>*')'
<TAG> ::= '('<SYM> <ATT>*')'
<SYM> ::= S式のシンボル
<ATT> ::= (<SYM> <STR>)
<STR> ::= S式の文字列
<VAL> ::= ('(' 'dd:content' <STR>')' | <XML>)*

タグの値がテキストの場合タグ名がdd:contentになります。
例:
<foo a="3" >テキスト</foo>は以下の様に変換されます。
((foo (a "3"))(dd:content "テキスト"))

 

述語名/引数  (xml:sread *str *sexp)
要約 XML文章を表す文字列をS式に変換します。
互換性 Win
引数 *str [in] 文字列、または、配列
*sexp [out] XML文書を表すS式
成功/失敗 true  XML文書の読み込みに成功し、*sexpのマッチングに成功した。
false 上記以外
解説 *strに文字列を与えて場合、ETIの文字列はwchar_t型の配列のため、文字列で表現するXMLのエンコーディングの指定はUTF-16になります。