2016-09-27 5 views
0

페이지에 인스턴스가 있습니다. 그러나이 인스턴스의 콘텐츠에 다른 인스턴스의 일부인 콘텐츠가 있어야합니다.인스턴스의 값을 다른 인스턴스에서 어떻게 설정할 수 있습니까?

<xf:instance id="subInstance"> 
    <data xmlns=""> 
     <xsl:choose> 
      <xsl:when test="$newType= 'false' "> 
       ??? 
       <xsl:copy-of select="????"/> 
      </xsl:when> 
      <xsl:otherwise> 
       <!-- add a new type --> 
       <type> 
        <name/> 
        <base/> 
       </type> 
      </xsl:otherwise> 
     </xsl:choose> 
    </data> 
</xf:instance> 

다른 인스턴스에서 형식을 가져올 수 있도록 물음표 대신 표시되어야하는 것은 무엇입니까?

xforms-model-construct-done 이벤트에서 인스턴스를 설정하려면 xf:setvalue을 사용해야합니까? 그러나 이것이 모델 자체의 건설이 아닌가? 다른 인스턴스의 값을 사용하는 방법이 혼란 스럽습니다.

xf : insert somehow?

<xf:action ev:event="xforms-model-construct"> 
      <xf:insert nodeset="instance('subInstance')" origin="instance('defaultType')/type"/> 
     </xf:action> 

이것은 작동하지 않습니다. 사건이 맞습니까? 인스턴스 생성은 모델 생성의 일부이기 때문에 'xforms-model-construct'를 사용하려고 생각했습니다. 그러나 아직도 행운이 없다!

+0

이 Orbeon 양식과 함께인가? 모든 구현이 XSLT와 XForms를 지원하는 것은 아닙니다. – ebruchez

+0

This is XSLTForms – Crusaderpyro

+0

그렇다면 확실하지는 않지만 XSLT 처리는 XForms 처리 전에 발생합니다. 한 인스턴스에서 다른 인스턴스로 컨텐츠를 복사하려면 XForms''액션을 사용하는 것이 좋습니다. – ebruchez

답변

0

예. xf : insert가 작동합니다. 'xforms-model-construct'이벤트가 진행되지 않아서 작동하지 않는다고 느꼈습니다. 이벤트를 'xforms-model-construct-done'으로 변경하면 효과가있었습니다.

<xf:action ev:event="xforms-model-construct"> 
 
    <xf:insert nodeset="instance('subInstance')" origin="instance('defaultType')/type"/> 
 
</xf:action>

관련 문제