问题标签 [odk-xform]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 在 ODK Collect 的多项选择题中包括字符串搜索
该问题基于在 Android 平台上使用 ODK Collect:
我正在处理选择来自 .csv 文件的选择题类型。到目前为止,它是一个标准的 ODK 程序,但是,由于 .csv 中有大量选项,我想在问题中包含一个字符串搜索选项。字符串搜索是为了减少参与者必须经过的选择次数,因此需要多次执行搜索。 解决此问题的最佳方法是什么?
到目前为止我的想法:使用 ODK 收集源代码将字符串搜索选项“注入”到相应的活动窗口中。
xforms - 如何正确编写 XForm 的计算表达式
我正在使用 ODK Build 创建一个表单。我相信我的绑定语法有问题。在 Build 中,您只需在输入框中输入表达式(如下):
我已输入:${volume_environmental_sample_meters}*1000
当我导出到 xml 时,它看起来像以下代码:
但是当我验证它时出错并说:
org.javarosa.xform.parse.XFormParseException:对附加到“/data/volume_environmental_sample_liters”的绑定的计算无效:无法理解从此时开始的表达式:?${volume_enviro... in expression ${volume_environmental_sample_meters}*1000
odk - 根据选择的答案计算和更新分数
我是 ODK 和 XLSForms 的新手。
我有几个问题,根据答案,我需要计算一个分数。
我有 17 个问题,每次有人回答是,我需要在一个整数字段中添加 2 分。
所以我有:
这是分数字段:
这是我工作中的第一个任务,无法根据所选答案计算和更改值。
编辑
我添加了一个计算表达式,但不知道如何得到结果,因为它不起作用:
因此,如果问题 8、9 或 11 的回答为“是”,则在当前值上加 2 分,但该字段根本没有出现。如果第 10、12、13 和 14 题的回答为“是”,则仍需加分,每题加 1 分。
android - 从 ODK xlsform 中的多项选择中排除一个值
我正在尝试从 xlsform 中的多项选择中排除一个值。如果我们使用农业的类比想象:
我有一个问题,问农民种什么作物。列表名称“crops”中可用的多选选项包括:
受访者选择前三个。后一个问题询问农民一起种植哪些作物(间作,即在同一田地/空间种植两个毛皮)。我在列表名称 inter_crops 上使用了choice_filter "selected(${crops},crops)",生成的多选显示:
到目前为止一切都很好。
那我想知道哪些农作物和哪些间作。因此,我对种植的每种作物都有后续问题,例如:
哪些作物与...香蕉间作?(等等等等)
我可以在这里使用相同的选择过滤器,但这意味着多选仍然可以选择香蕉。用“香蕉”(即香蕉与香蕉间作)来回答上述问题是没有意义的。
那么如何在询问香蕉时排除香蕉作为选项,在询问苹果时排除苹果等,而不必为每个问题提供特定列表?
更新
回答了我自己的问题。我只需要在choice_filter 中添加一个“and not”语句。所以现在是这样写的:
选择(${crops},crops) 而不是 (crops='bananas')
odk-xform - ODK xlsform 设计,根据之前的 yes_no 响应计算下一个标签值
我正在使用 xlsform for ODK 进行调查问卷。我被困在哪里:我有这样的问题: 21. 如果提供的服务是 100 美元,你愿意为这项服务付费吗?答案可以是“是”、“否”或“不知道” 。如果被访者回答“是”,下一个问题需要在之前的 100 美元基础上增加 20美元,所以现在的问题应该是: 21. 如果提供的服务是120 美元,您是否愿意为服务付费?这应该一直持续到答辩人说“否”为止。如何使用 xlsform 设计来实现这一点?
xforms - ODK XForms format-date Hour and Minute 输出为 0000
我正在尝试使用从调查开始时为 RecorderID - ClusterID - MonthDataHourMinute 输入的值创建一个计算变量。现在我得到了除了小时和分钟之外的所有东西,所以我认为我的小时和分钟格式是错误的。有任何想法吗?
格式-日期(/data/StartTime,'%m%d%H%M')
谢谢!亚历克斯
opendata - 我们可以将 Web 应用程序连接到 ONA ODK 表单吗?
我们可以将 Web 应用程序连接到 ONA ODK 表单吗?
我需要更换一个系统,让员工去现场,收集信息,然后在他们回来时同步到数据库。
我们需要找到一个解决方案,通过创建odk调查,让员工收集数据,然后直接同步到ona和mysql数据库。我需要让他们能够直接从表单读取和编辑数据到数据库中。
我知道这个想法有点奇怪。
xforms - XForms 是如何使用的?
我最近偶然发现了 XForms(W3C 1.1,ODK XForms),我很难了解它们是如何使用的(如果它们仍在使用的话)。
SO标签页说:
XForms 是一种 XML 格式,它为 XML 数据指定数据处理模型和用户界面。例如。网络表格。
现在我查看了 W3C 示例,但没有看到任何类型的用户界面。它只是在那里显示的 XML。
我所做的
当我想在 Web 中创建一个表单时,我必须从侧面着手:前端和后端。前端要么直接使用<form> / <input> /
HTML 元素和 CSS 编写样式,要么使用flask-wtf 之类的包生成这些元素。
后端侦听 GET / POST HTTP 请求以接收表单。
问题
我有很多初学者的问题。我的主要问题是如何使用 XForms?. 一个最小的 Python 示例对我来说最有价值。也许像注册表这样简单的东西:用户名字段、密码字段和密码确认字段可以显示这一点。
我会像这样创建 HTML:
使用Flask,后端可能如下所示:
使用 XForms 会怎样?XForms 的典型用例到底在哪里?它们有什么可比性?XForms 是否只在 Java 中使用?(我见过 Python 包,但从未听说过)
odk - 如何在 external_choices 中动态加载 json 数据
社区。我是 ODK 表单的新手。我只想问如何在运行时动态加载 JSON 数据或任何其他方式而不是 JSON,在我的 external_choices 中。示例:我想根据 District_id 加载数据。我的一个区有2000个村,我州有40个区。在 external_choices 中喂养 40*2000=80000 个村庄并在运行时加载它非常消耗内存。因此,在我的情况下,我只想在查询参数中传递 District_id,属于该地区的村庄将从 JSON 中获取并加载到 external_choices 中。任何人都可以帮助我如何实现它?