教えてエライ人!

コンパイルの際、ActivityのParameterをどういう形にすればいいのかよく分からないので、UMLのスペックを読み直したのだが、余計分からなくなってきた。
ActivityはToken Flowという形をとるので、それに合わせるためにParameterの値を流すためのNodeとして、ActivityParameterNodeというのがあるというのは分かった。が、それとStructuredActivityNodeとの組み合わせがうまくいかないのではないかという気がしてきた。
StructuredActivityNodeは、他のNodeやEdgeをグループ化するためのNodeである。このNodeにはEdgeについて次のようなルールがある。それは、あるStructuredActivityNodeに含まれたEdgeは、その両端につながるNodeも同じStructuredActivityNode内になければならないというものである。これをそのままの意味で考えると、ActivityParameterNodeからのStructuredActivityNode内のNodeへEdgeを結べないことになり、Activityに渡されたParameterの値を渡せないということになる。これは、一般的なプログラムに置き換えると、あるブロック(forとかifとか)の中では、その関数の引数にアクセスできないことになる。これは明らかにおかしいことである。
うーむ、ここら辺は謎だらけだ…。