// Address検索要素がまだ見つかっていないことを確認します。最初のインスタンスのみが必要です
~Parties.Address,
// Organization検索要素と次のパーティキーワード検索要素を取得します。これらはAddressより前に見つかっています
t1 : Parties.Organization,
t2 : kw_PreNextParty
// 1つのNERAddress名前付きエンティティを含むトークンシーケンスを検索します
// (「same」キーワードは、複数存在する場合でも1つのNERAddressのみを一致させることを指定します)
// アドレスは組織名の後、次のパーティのキーワードの前に位置する必要があります
// +記号は、トークンシーケンスが複数の単語で構成される可能性があることを示します
// 最後の~@Parties.Address条件により
// 同じトークンで再度アドレスが一致しないことが保証されます
[ t: @NERAddress( same, right_to( t1 ), left_to( t2 ) ) ~@Parties.Address ]+
=>
Parties.Address( t );