これは私のテストコンポーネントです
<fr:mycomponent name="test">
<fr:constraint instance="myinstance" xpath="item/@id" />
</fr:mycomponent>
XBLのインスタンス属性の値を読み取る必要があります。私は次のようにしています。
<xsl:value-of select="./fr:constraint/@instance" />
また
<xxforms:variable name="instance" select="xxforms:evaluate-avt='{/*/fr:constraint/@instance}'" />
ヘルプが必要な値を読み取るには、インスタンス名とxpathを連結する必要があります。
<xxforms:variable name="instance" select="concat('instance(''', xxforms:evaluate-avt='{/*/fr:constraint/@instance}'", ''')' />
たとえば、xpathを同じ方法で読み取って、上記の変数と連結することができます。
<xxforms:variable name="xpath" select="xxforms:evaluate-avt='{/*/fr:constraint/@xpath}'" />
<xxforms:variable name="nodeset" select="concat($instance, '/', $xpath)" />
繰り返したい要素がたくさんあります
<xforms:repeat nodeset="$nodeset">
<xforms:output value="." />
<xforms:repeat/>
文字列を連結してxpathを作成し、それを繰り返し使用することが問題です。何か案は?