XForms仍然是正在实施和开发的标准,还是有替代方案或正在开发?

Dev*_*ter 13 html php xml forms xforms

XForms是和/或是支持结构化表单数据的XML标记.它是从XML发展而来的标准,旨在轻松集成到其他当前标记语言(如XHTML,ODF或SVG)或任何"合适的标记语言"中,并提供多平台和多浏览器支持.我在下面链接的工作组页面上声明了更多项目目标.

当我正在研究使用php处理表单时,我注意到PHP Features页面提供了在php中处理XForms的支持,但是我不知道XForms是什么,所以搜索开始了.

来自W3C网站的XForms工作组页面(制定网络标准的人),写道"表格工作组于2015-04-08正式关闭".它还表示可以继续通过XForms用户社区组开展工作,但自2015年10月以来,用户社区组尚未正式发布,除了询问XForms延续的人员.

该小组似乎一直致力于XForms的2.0版本,但它似乎从未发布过,因为W3C标准页面显示自2012年8月以来的2.0版草案,而1.1版本是2009年发布的最新版本.也链接如下.

为了更好地理解替代XForms的替代方案,从W3C网站的XForms页面可以看出,除了XForms是XML之外,XForms和HTML表单之间的主要区别是"将收集的数据与标记的分离"分开.控制收集个人价值".因此,作为XForms页面上的示例,不是将HTML硬编码到表单中以呈现特定方式,而是使用XForms架构,并且设备,浏览器或应用程序检测表单中的数据类型并将数据呈现为适合于平台,例如表单数据输入类型'选择','输入','秘密','上传'以及XForms团队定义的其他类型.

有没有人知道XForms是否仍在继续工作,或者它是否已经过时或者已经死亡的标准已经过时并被未来的软件所取代?

此外,是否有人知道已经实施的任何替代方案,或者正在开发替代XForms和类似的软件?

谢谢你的帮助.我远不是XForms或其用途的专家,所以如果我有任何错误信息,请纠正我.此外,我不能在这篇文章中发布超过2个链接,所以我将在评论中留下其他相关链接.

编辑:我也觉得2011年在这个问题上提出的类似问题已经过时,而且没有能力在社区中找到软件替代品.

类似帖子:XForms仍然是现场标准吗?

PHP功能:http://php.net/manual/en/features.php

W3 XForms 2.0草案:https://www.w3.org/TR/xforms20/

ebr*_*hez 19

背景

我写的是前XForms工作组成员,以及当前的XForms社区组成员(见下文).以下是个人意见.

XForms和XForms 2.0的状态

关于W3C网站上的XForms的大量信息已经过时,所以我不会把你在那里读到的所有东西(如果有的话)都当作福音,但W3C关闭XForms工作组是正确的(他们这样做是相当的有点不尊重,我可以补充一下).

这个小组已经有一段时间未知,希望有一个改革者,但那并没有发生.我应该说,W3C的任何XML活动在这一点上对组织来说都是非常低优先级的,即使对于像XSLT和XQuery这样相对更成功的技术也是如此.

但是,截至2016年,在XForms社区小组的背景下继续开展XForms 2.0工作.这是一个小组,虽然由W3C主办,但不是官方的W3C工作组.任何人都可以加入该组.我们每周都会召开电话会议,希望今年能够完成XForms 2.0规范.您可以在此处找到当前的草案规范:

规范完成后,如果有兴趣,可能会重新制定新的工作组,但这不是给定的.这将是使XForms 2.0成为官方W3C推荐标准的必要途径.

如果没有发生,那么XForms 2.0草案仍然可供任何人查看和实施.它没有建议书的力量,但无论如何,这种力量一直非常相对.

是什么让XForms与众不同?

以下内容并不完整,但这些是我认为将XForms分开的一些主要方面:

  • 规范而不是实现
  • 使用XML作为数据模型和其他与XML相关的规范
  • 专注于表单(而不是成熟的应用程序开发)
  • 将控制外观与实现分开
  • 提供类似电子表格的数据依赖模型
  • 一般来说,它具有很强的声明性,包括提示,帮助和提醒本机概念

此外,XPath 2.0/3.x还提供了一种令人惊讶的灵活语言,可将属性,计算和控件绑定到数据模型.我认为在这一点上很难被击败.

当前的XForms实现

目前有一些XForms的实现,包括XSLTForms和Orbeon Forms(我工作).

早在2000年代早期,公开宣称的目标是让XForms最终取代 HTML表单,并且从这个角度来看,浏览器插件和Firefox实现已经开发出来,这个想法在长一段时间内都不是最新的.

多年来,XForms根本不依赖于本机浏览器支持.所有XForms都可以用纯JavaScript,或者客户端/服务器部件的组合,或者在本机应用程序中实现.

XForms的替代品

基于上面列出的几点,我不知道XForms有任何接近的替代品.

房间里的大象是XForms基于XML技术堆栈,并且有证据表明XML不再风靡世界(这是轻描淡写).但是XML在许多情况下仍然被广泛使用,这是需要牢记的.

如果您处理XML数据,或者至少不介意XML,XForms在2016年仍然是一个现代化的解决方案.您可能会查看现有的实现或实现自己的实现(尽管这并非完全无关紧要).

如果您根本不关心XML,或者强烈不喜欢它,那么XForms不是一个很好的解决方案(至少在它提供对其他数据模型和绑定语言(如JSON/JavaScript)的支持之前).选择当前的UI框架之一将是可行的方法,但它们在很多方面仍然存在缺陷.

有许多使用各种底层技术的UI框架(JavaScript可能在这里排名第一,但您也可以计算TypeScript,Elm,Scala等),这些技术在不断发展.这些可以被认为是替代方案,因为它们允许您构建用户界面和复杂的表单.一些框架对依赖项之类的东西有很好的支持,一些框架专注于提供漂亮的UI控件,一些框架专注于UI更新模型等.

但是我还没有找到一个像XForms一样覆盖所有基础的框架,尽管没有任何东西可以防止将来发生这种情况.


Mic*_*Kay 9

工作在制定标准时停止的事实并不意味着标准已经死亡,这意味着它是稳定的.例如,在开发XML本身方面没有积极的工作,这基本上意味着已达成共识,即当前形式的标准符合其要求.如果人们重新确定何时需要停止添加铃声和口哨声,那么更多的标准可能会受益.

XForms是由创新的少数用户非常成功地部署的标准之一,但由于某种原因,它从未与群众接触过.它当然不是死标准.令人遗憾的是,浏览器本身并不支持它,但是有很好的客户端和服务器端实现可用,并且许多用户将证明它带来的效率优势,它带来了Javascript手动编码相同的东西.


Bil*_*uez 5

如果您正在寻找工作软件,这些工具是成熟的 XForms 实现,并得到其创建者和/或社区的广泛支持:

  • XSLTForms:适用于任何支持 XML 和 JavaScript 的浏览器的 Javascript 插件
  • betterFORM:基于Java的服务器端解决方案。集成在 eXist-db 中
  • Orbeon Forms:具有开源版本的商业解决方案
  • Enketo :是Open Data Kit中包含的XForms引擎,它与XForms标准有一些差异。


小智 5

作为XForms小组的长期主席,我不需要为Erik已经说过的关于工作组和规范的内容添加更多内容.

然而,值得一提的是如何使用它以及一些优点,因为当你使用网站时,你永远不能说它正在使用XForms.

没有办法告诉公司何时使用XForms,所以我所知道的只有当组织中有人向我提及时.我听过的一些是:

几个荷兰政府部门,几个英国政府部门,美国汽车部门,英国国家卫生服务部门,英国广播公司,荷兰气象服务,荷兰土地登记处,英国保险业,EMC,NASA,CMC,美国海军,德国造船厂,施乐,雅虎.名单很长.

还有一些不错的故事.最近的一个来自英国国家卫生服务局,该服务开始了一个健康记录系统项目:

  • 它涉及70人
  • 它花费了1000万英镑.
  • 仅硬件成本为每位患者5英镑.
  • 它失败了.

然后,一个人使用XForms创建了一个替换系统:

  • 硬件成本为每位患者1便士
  • 它运行在Raspberry Pi上
  • 它现在在5家NHS医院运营.

XForms还有许多其他例子可以节省巨额资金.

有许多活跃的实现,包括:

  • CM Pro(荷兰),
  • 创意设计师(比利时),
  • BetterForm*(德国),
  • XSLTForms*(法国),
  • Jadu(英国),
  • Orbeon*(美国),
  • Enketo(美国).

XForms也是OpenOffice*和LibreOffice*的一部分

*=开源

我们在阿姆斯特丹举办了一年一度的XForms日.下一个将在五月.我将在我的主页上发布详细信息,您可以通过Google搜索我的名字找到.

史蒂文彭伯顿