XLT_PAIR(ペア型、リスト型)
Author: 森 洋久 / joshua@globalbase.org +
PROTOTYPE
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 '>'
INTERNAL ELEMENTS
sp はスペースやタブ。
XLT_SEXP_lisp はLISP形式で記述された任意の型のデータを示す。
XLT_SEXP_xml はXML形式で記述された任意の型のデータを示す。
ATTRIBUTES
AGENT(S) BELONGS
xl
ELEMENTS PATHES
なし
EXPLANATION
XLT_PAIR は任意の型のデータへの2つのポインタcarとcdrからなるポインタのペアである。しかし、XLでは純粋なペアとして使うことはない。ペアを組み合わせたリストとして利用する。リストとは、内部データ的には、
xlt_list_ ::= ^"'('" SP XLT_SEXP_lisp[car] SP '.' SP xlt_list_ ')'
| XLT_NULL
という最後が
XLT_NULL のペアの連続と同値と考えることが出来る。
[UP]
Go To Page Top
REFERENCE
BUGS
[UP]
Go To Page Top