XLT_PAIR(ペア型、リスト型)
著者: 森 洋久 / joshua@globalbase.org ※ プロトタイプ
LISP形式
XLT_PAIR_lisp ::= '(' SP XLT_SEXP_lisp[car] sp '.' sp XLT_SEXP_lisp[cdr] sp ')'
XLT_LIST_lisp ::= '(' sp xlt_list sp ')'
xlt_list ::= XLT_SEXP_lisp
| XLT_SEXP_lisp SP xlt_list;
XML形式
先頭がシンボルであるリストはXMLの要素として表現可能
cdr要素が XLT_NULL でないペアは表現出来ない.
先頭がシンボルでないリストは表現出来ない。
XLT_LIST_xml ::= TAG XLT_SEXP_xml END_TAG
TAG ::= '<' XLT_SYMBOL_lisp sp ATTRIBUTES '>'
END_TAG ::= '<' '/' XLT_SYMBOL_lisp '>'
内部要素
sp はスペースやタブ。
XLT_SEXP_lisp はLISP形式で記述された任意の型のデータを示す。
XLT_SEXP_xml はXML形式で記述された任意の型のデータを示す。
属性
所属エージェント
xl
要素パス表現
なし
説明
XLT_PAIR は任意の型のデータへの2つのポインタcarとcdrからなるポインタのペアである。しかし、XLでは純粋なペアとして使うことはない。ペアを組み合わせたリストとして利用する。リストとは、内部データ的には、
xlt_list_ ::= ^"'('" SP XLT_SEXP_lisp[car] SP '.' SP xlt_list_ ')'
| XLT_NULL
という最後が XLT_NULL のペアの連続と同値と考えることが出来る。
▲ページトップへ戻る
参考
バグ
▲ページトップへ戻る
|