読みの返却値である値リストの形式は、フォーマットによって異なる。 ここでは、フォーマットをテーブル全体指定(Format=*)とした場合のみを 示す。
以下は、値リストが原始コマンドread_record/5の第4引数VLstreamの内部に現れる
場合である。
VLstream::=[]|[BufVar|VLstream]
BufVar::=Buffer| end
Buffer::=[Record]|[Record|Buffer]
Record::={RID_element, Value_list}
Value_list::={V1,V2,...,Vi,...,Vn}
Value_listの値は、スキーマが以下の場合に対応する。
すなわち、ViはAttriに対応した値である。
スキーマ={Table_name, primitive,{Attr1,Attr2,...,Attri,...,Attrn},
ネストシーケンス,水平分割情報}
Vi::=Simple属性に対応した値(Simple_value)|Group属性に対応した値 (Group_value)|Repeating_simple属性に対応した値(RS_value)| Repeating_group属性に対応した値(RG_value)
Simple_value::= INTEGER| STRING| TERM| nil| bottom
Group_value::={Child_value,...}
Child_value::=Simple_value|Group_value|RS_value|RG_value
RS_value::=[RS_occ|RS_value]
RS_occ::={Simple_value,...}
RG_value::=[RG_occ|RG_value]
RG_occ::={Child_value,...}