是否可以将通用XForm文档导入Orbeon?

是否可以将通用XForm文档导入Orbeon?,orbeon,xforms,xsltforms,Orbeon,Xforms,Xsltforms,我正在做一个项目,用XForms从问卷元数据生成电子调查。虽然我能够很容易地创建符合XForms规范的XForms,但是我在通过Orbeon运行表单时遇到了困难 我试图通过Orbeon运行的表单如下: 我已经能够使用XSLTForms测试这个表单,它运行得非常好,但是当我试图通过Orbeon运行它时,没有问题文本显示出来,它甚至不存在于呈现给用户的HTML源中,如下所示: 因此,Orbeon正在对原始表单进行某种形式的翻译(这是意料之中的),根据他们的示例,我猜测它是根据一些语言信息选择文本的,

我正在做一个项目,用XForms从问卷元数据生成电子调查。虽然我能够很容易地创建符合XForms规范的XForms,但是我在通过Orbeon运行表单时遇到了困难

我试图通过Orbeon运行的表单如下:

我已经能够使用XSLTForms测试这个表单,它运行得非常好,但是当我试图通过Orbeon运行它时,没有问题文本显示出来,它甚至不存在于呈现给用户的HTML源中,如下所示:

因此,Orbeon正在对原始表单进行某种形式的翻译(这是意料之中的),根据他们的示例,我猜测它是根据一些语言信息选择文本的,然而,就我而言,我无法弄清楚如何使xf:label文本出现在表单上


有人能帮忙吗?

在运行表单时,您可能需要查看一下
orbeon.log
。我看到了以下两个问题:

  • 当我试图在这里运行此程序时,首先会出现错误,原因是
    xf:bind
    如下所示:

    <xf:bind id="bindThen-DogSurvey_IF_2"
             nodeset="//rml:if[@id='DogSurvey_IF_2']/rml:then"
             relevant="//rml:response[@id='DogSurvey_QC_30'] = '1'"
             readonly="not(//rml:response[@id='DogSurvey_QC_30'] = '1')"/>
    
    
    
    如果元素不包含数字,例如因为它是空的,那么该表达式将无法计算,因为XPath引擎试图将空字符串转换为数字。因此,除非您完全确定该值始终是一个数字(这里的情况似乎不是这样),否则编写
    …='1'
    ,从而进行字符串比较更安全。如果您确实想在整数之间进行比较,可以编写
    //rml:response[@id='DogSurvey\u QC\u 30']/(.castable为xs:integer and.=1)

  • 在使用最新的代码更改了上面#1的代码之后,我还得到了一个异常,看起来像是一个bug,因此我填写了一个,但是如果您使用的是3.9版本,您可能不会遇到这个问题


  • 抱歉,看起来我在链接的要点中输入了错误的代码。我遇到了类似的问题,并将值更改为字符串。也就是说,您提交的bug已经被更正和更新,我将把它标记为正确答案。谢谢