「ウィーン売買条約第II部」のプログラム
「ウィーン売買条約第II部」の Quixote プログラムを
紹介します。
但し、ここでは参考文献 1. から、
契約の成立に必須の条文だけ紹介します。
&program;;
&subsumption;;
売り主 =< 人;;
買い主 =< 人;;
口述 =< 同意する旨を示す行為;; % 追加
配達 =< 同意する旨を示す行為;; % 追加
&rule;;
% 第14条(1)
def::申込[順番=0]/[申込者=A, 被申込者=B] <=
fact:申入れ/[契約を締結せんとする提案=yes,
対象が一又は複数の特定の者に向けられている=yes,
内容が十分明確である=yes,
承諾があった場合には拘束されるとの
申込者の意思が示されている=yes,
行為者=A,
受取人=B];;
fact::申入れ/[内容が十分明確である=yes] <=
fact:申入れ/[物品を示す=yes,
数量及び代金=明示的に定めている];;
fact::申入れ/[内容が十分明確である=yes] <=
fact:申入れ/[物品を示す=yes,
数量及び代金=黙示的に定めている];;
fact::申入れ/[内容が十分明確である=yes] <=
fact:申入れ/[物品を示す=yes,
数量及び代金=決定方法を規定している];;
% 第15条(1)
effect_def::申込[順番=N]/[発生日時=S,申込者=A, 被申込者=B] <=
def:申込[順番=N]/[申込者=A, 被申込者=B],
def:到達[順番=N]/[到達日時=S];;
% 第18条(1)
def::承諾[順番=N] <=
% effect_def:申込[順番=N-1]/[被申込者=A],
arith:dif_one(N0,N),
effect_def:申込[順番=N0]/[被申込者=A],
fact:回答[順番=N]/[行為 -> 同意する旨を示す行為,
行為者=A,
変更を含んでいる=no];; % 追加
% 第18条(2)
effect_def::承諾[順番=N]/[発生日時=S] <=
def:承諾[順番=N],
def:到達[順番=N]/[kind -> 期間内, 到達日時=S];;
% 第19条(1)
def::申込[順番=N]/[申込者=A, 被申込者=B] <=
% effect_def:申込[順番=N-1]/[被申込者=A],
arith:dif_one(N0,N),
effect_def:申込[順番=N0]/[被申込者=A],
fact:回答[順番=N]/[変更を含んでいる=yes,行為者=A,受取人=B];;
% 第23条
def::契約[順番=N] <=
effect_def:承諾[順番=N];;
% 第24条
def::到達[順番=N]/[到達日時=T] <=
fact:回答[順番=N]/[行為=口述, 口述日時=T];;
def::到達[順番=N]/[到達日時=T] <=
fact:回答[順番=N]/[行為=配達[場所=個人],
配達日時=T];;
def::到達[順番=N]/[到達日時=T] <=
fact:回答[順番=N]/[受取人=R,
行為=配達[場所=営業所],
配達日時=T],
fact:R/[営業所又は郵便送付先あり=yes]||{R =< 人};;
def::到達[順番=N]/[到達日時=T] <=
fact:回答[順番=N]/[受取人=R,
行為=配達[場所=郵便送付先],
配達日時=T],
fact:R/[営業所又は郵便送付先あり=yes]||{R =< 人};;
def::到達[順番=N]/[到達日時=T] <=
fact:回答[順番=N]/[受取人=R,
行為=配達[場所=常居所],
配達日時=T],
fact:R/[営業所又は郵便送付先あり=no]||{R =< 人};;
% 申入れ
def::到達[順番=0]/[到達日時=T] <=
fact:申入れ/[行為=口述, 口述日時=T];;
def::到達[順番=0]/[到達日時=T] <=
fact:申入れ/[行為=配達[場所=個人],
配達日時=T];;
def::到達[順番=0]/[到達日時=T] <=
fact:申入れ/[受取人=R,
行為=配達[場所=営業所],
配達日時=T],
fact:R/[営業所又は郵便送付先あり=yes]||{R =< 人};;
def::到達[順番=0]/[到達日時=T] <=
fact:申入れ/[受取人=R,
行為=配達[場所=郵便送付先],
配達日時=T],
fact:R/[営業所又は郵便送付先あり=yes]||{R =< 人};;
def::到達[順番=0]/[到達日時=T] <=
fact:申入れ/[受取人=R,
行為=配達[場所=常居所],
配達日時=T],
fact:R/[営業所又は郵便送付先あり=no]||{R =< 人};;
arith::dif_one(0,1);;
arith::dif_one(1,2);;
arith::dif_one(2,3);;
arith::dif_one(3,4);;
fact::買い主;;
fact::売り主;;
fact::申入れ;;
fact::回答[順番=1];;
fact::回答[順番=2];;
fact::回答[順番=3];;
&end.