XForms and XPath
- Previous Page XForms Example
- Next Page XForms Input
XForms 使用 XPath 对数据急性寻址。这个过程被称为绑定。
XForms 绑定
XForms 使用两个部分来定义数据:XForms 模型和 XForms 用户界面。
XForms 模型是针对数据的一个 XML 模板(实例),而 XForms 用户界面是对数据输入和显示的描述。
XForms 使用 XPath 来定义这个两个部分的连接。这被称为绑定(binding)。
XPath
XPath 用于定义 XML 文档的各部分的 W3C 标准语法。
XPath 使用路径表达式来标示 XML 文档中的节点。这些表达式与您在计算机系统中看到的文件路径表达式非常类似。
XPath ɗan ɗauɗi:
/person/fname
ka ɗauɗi ɗan ɗauɗi ɗan ɗauɗi XML ɗan ɗauɗi ɗan ɗauɗi <fname> ɗan ɗauɗi:
<person> <fname>David</fname> <lname>Smith</lname> </person>
Na XPath ɗan ɗauɗi ka ɗauɗi ɗauɗi ɗan ɗauɗi XPath ɗan ɗauɗi ɗan ɗauɗi.
Ayya Ref domin girmama
The XForms model is like this:
<instance> <person> <name> <fname/> <lname/> </name> </person> </instance>
The XForms user interface can be used ref Attribute toBinding <input> Element:
<input ref="name/fname"> <label>First Name</label> </input> <input ref="name/lname"> <label>Last Name</label> </input>
Hanyar tsohon ɗan ɗauɗi, attibuti ref="name/fname" wani ɗan ɗauɗi XPath ɗan ɗauɗi ɗan ɗauɗi ɗan ɗauɗi <fname> ɗan ɗauɗi ɗan ɗauɗi. Wannan ɗan ɗauɗi zai iya ɗan ɗauɗi gida ɗan ɗauɗiBindingsannan daga ɗan yiwa XML ɗan ɗauɗi ɗan ɗauɗi ɗan ɗauɗi (ɗan ɗauɗi) dake ɗauɗi <fname> ɗan ɗauɗi.
XForms ɗauɗiɗa ɗa iya ɗauɗi ɗan yiwa:
<input ref="/person/name/fname"> <label>First Name</label> </input>
<input ref="/person/name/lname"> <label>Last Name</label> </input>
In the above example, the forward slash (/) at the beginning of the XPath expression indicates the root of the XML document.
Binding with Bind
The XForms model is like this:
<model> <instance> <person> <name> <fname/> <lname/> </name> </person> </instance> <bind nodeset="/person/name/fname" id="firstname"/> <bind nodeset="/person/name/lname" id="lastname"/> </model>
The XForms user interface can be used bind Attribute toBinding <input> Element:
<input bind="firstname"> <label>First Name</label> </input> <input bind="lastname"> <label>Last Name</label> </input>
Why are there two ways to bind input control elements to instance data?
What can I say, when you start using XForms in complex applications, you will find that using bind for binding is a more flexible way to handle multiple form and multiple instance models.
- Previous Page XForms Example
- Next Page XForms Input