/
datatable-unittest-model.xml
101 lines (92 loc) · 5.41 KB
/
datatable-unittest-model.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<!--
Copyright (C) 2009 Orbeon, Inc.
This program is free software; you can redistribute it and/or modify it under the terms of the
GNU Lesser General Public License as published by the Free Software Foundation; either version
2.1 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details.
The full text of the license is available at http://www.gnu.org/copyleft/lesser.html
-->
<xforms:model xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:f="http://orbeon.org/oxf/xml/formatting" xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:xxforms="http://orbeon.org/oxf/xml/xforms" xmlns:widget="http://orbeon.org/oxf/xml/widget"
xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:fr="http://orbeon.org/oxf/xml/form-runner">
<xforms:instance id="lorem">
<text>
<line>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</line>
<line>Sed non risus. Suspendisse lectus tortor, dignissim sit amet, adipiscing nec,
ultricies sed, dolor</line>. <line>Cras elementum ultrices diam. Maecenas ligula
massa, varius a, semper congue, euismod non, mi.</line>
<line>Proin porttitor, orci nec nonummy molestie, enim est eleifend mi, non fermentum
diam nisl sit amet erat.</line>
<line>Duis semper.</line>
<line>Duis arcu massa, scelerisque vitae, consequat in, pretium a, enim.</line>
<line>Pellentesque congue. Ut in risus volutpat libero pharetra tempor.</line>
<line>Cras vestibulum bibendum augue.</line>
<line>Praesent egestas leo in pede. Praesent blandit odio eu enim.</line>
<line>Pellentesque sed dui ut augue blandit sodales.</line>
<line>Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia
Curae; Aliquam nibh.</line>
<line>Mauris ac mauris sed pede pellentesque fermentum.</line>
<line>Maecenas adipiscing ante non diam sodales hendrerit.</line>
<line>Ut velit mauris, egestas sed, gravida nec, ornare ut, mi.</line>
<line>Aenean ut orci vel massa suscipit pulvinar.</line>
<line>Nulla sollicitudin.</line>
<line>Fusce varius, ligula non tempus aliquam, nunc turpis ullamcorper nibh, in tempus
sapien eros vitae ligula.</line>
<line>Pellentesque rhoncus nunc et augue.</line>
<line>Integer id felis.</line>
<line>Curabitur aliquet pellentesque diam.</line>
<line>Integer quis metus vitae elit lobortis egestas.</line>
<line>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</line>
<line>Morbi vel erat non mauris convallis vehicula.</line>
<line>Nulla et sapien.</line>
<line>Integer tortor tellus, aliquam faucibus, convallis id, congue eu, quam.</line>
<line>Mauris ullamcorper felis vitae erat.</line>
<line>Proin feugiat, augue non elementum posuere, metus purus iaculis lectus, et
tristique ligula justo vitae magna.</line>
<line>Aliquam convallis sollicitudin purus.</line>
<line>Praesent aliquam, enim at fermentum mollis, ligula massa adipiscing nisl, ac
euismod nibh nisl eu lectus.</line>
<line>Fusce vulputate sem at sapien.</line>
<line>Vivamus leo.</line>
<line>Aliquam euismod libero eu enim.</line>
<line>Nulla nec felis sed leo placerat imperdiet.</line>
<line>Aenean suscipit nulla in justo.</line>
<line>Suspendisse cursus rutrum augue.</line>
<line>Nulla tincidunt tincidunt mi.</line>
<line>Curabitur iaculis, lorem vel rhoncus faucibus, felis magna fermentum augue, et
ultricies lacus lorem varius purus.</line>
<line>Curabitur eu amet.</line>
</text>
</xforms:instance>
<xforms:instance id="detailed-lorem">
<text/>
</xforms:instance>
<xforms:instance id="controls">
<controls>
<maxLength>20</maxLength>
<loading>true</loading>
<show>true</show>
</controls>
</xforms:instance>
<xforms:insert ev:event="xforms-model-construct-done" context="instance('detailed-lorem')"
origin="
for $line in instance('lorem')/line return
xxforms:element( 'line', (
xxforms:element('position', count($line/preceding-sibling::*)),
xxforms:element('text', normalize-space($line)),
xxforms:element('length', string-length(normalize-space($line))),
xxforms:element('nb-words', string-length(normalize-space($line)) - string-length(translate(normalize-space($line), ' ', '')) + 1)
))"/>
<xforms:bind nodeset="instance('detailed-lorem')/line">
<xforms:bind nodeset="position" type="xs:integer"/>
<xforms:bind nodeset="length" type="xs:integer"/>
<xforms:bind nodeset="nb-words" type="xs:integer"/>
</xforms:bind>
<xforms:bind nodeset="instance('controls')/line">
<xforms:bind nodeset="maxLength" type="xs:integer"/>
</xforms:bind>
</xforms:model>