我正在工作的CommCare m劳工应用程序,它跟踪妇女从分娩开始通过数字胎记分娩。对于收缩图,我需要编写一个实例,它过滤到收缩强度为'low'的情况。在应用程序中,这个case属性是contractions_dur = 'low'。我尝试了以下路径,并在应用程序中得到了一个xpath错误:
instance('casedb')/casedb/case[@case_type='Indicators'][index/parent=current()/@case_id][@status='open']/[contractions_dur = 'low']错误消息显示无效的xpath‘预期路径的开始’
我能找到的关于实例语法的唯一CommCare帮助站点页面是关于CommCare会话实例路径的。对于具有特定case属性值的特定情况,实例筛选的正确语法是什么?
发布于 2017-02-13 21:47:06
如果是过滤用例,则需要最终返回一组大小写的表达式。这个表达式的第一部分,instance('casedb')/casedb/case,在电话中给出了所有的情况。
方括号中的表达式然后根据案例类型、父类(限制为“当前”案例的子案例,即从案例列表中选择的案例)筛选案例,并打开/关闭。
[@case_type='Indicators']
[index/parent=current()/@case_id]
[@status='open']/[contractions_dur = 'low']是抛出错误的原因。/说要深入到另一个层次,但我怀疑您想要的只是将contractions_dur作为第四个约束添加到与其他约束相同的级别上。因此,尝试删除斜杠:instance('casedb')/casedb/case[@case_type='Indicators'][index/parent=current()/@case_id][@status='open'][contractions_dur = 'low']
发布于 2017-02-14 04:48:03
如果在实际的“筛选器”中使用此语句(即用于案例列表),则需要删除方括号并保留斜杠。因此,完整的表述应该是:
instance('casedb')/casedb/case@case_类型=“指标”@status=‘open’/contractions_dur =“低”
如果您使用该语句填充一个选择题答案或类似的内容,则可以,删除该斜杠并保留括号。
https://webapps.stackexchange.com/questions/103045
复制相似问题