- From: Oliver Rath <rath@mglug.de>
- Date: Wed, 26 Jul 2006 07:02:50 +0200
- To: www-forms@w3.org
- Message-ID: <44C6F77A.3020706@mglug.de>
Hi all, my first submission here :-). At the moment Im testing some bigger xforms document, written for generating a big formular with a lot of boilerplates (>1000) witch an embedded repeat-sequence (for generating text from a list of boilerplates). The formular is running under Firefox 1.5.0.4 with the xforms-plugin 0.6. the strukture of the data is like follows: <default> <textblock> <ID>unique ID 0001> <Text>Lots of Text (about 200-500 chars)</Text> </textblock> <textblock> <ID>unique ID 0002> <Text>Lots of another Text (about 200-500 chars)</Text> <textblock> <default> .... to be repeated >1200 times Unfortunatly the formular is slowing down using the repeat-tag for cloning boilerplates. The duration getting a new clone is > 20sek (!). The repeat-code looks like following: <!-- repeating sequence --> <xforms:repeat nodeset="textblock" id="Textblock"> <xforms:label ref="ID" /> <xforms:switch> <xforms:case id="Cstart"> <xforms:trigger> <xforms:label>B0100_bis_B0600</xforms:label> <xforms:toggle ev:event="DOMActivate" case="CB0100_bis_B0600" /> </xforms:trigger> <xforms:trigger> <xforms:label>B0850_Flure</xforms:label> <xforms:toggle ev:event="DOMActivate" case="CB0850_Flure" /> </xforms:trigger> .... about 60 times, lots of other cases, running fine. .... <p nodeset="instance('B1900_Stuetzen_Unterzuege')/Textblock"> <xforms:label ref="ID" /> <xforms:select1 ref="." appearance="minimal"> <xforms:itemset nodeset="instance('B1900_Stuetzen_Unterzuege')/Textblock"> <xforms:label ref="ID" /> <xforms:copy ref="." /> </xforms:itemset> </xforms:select1> </p> </xforms:case> </xforms:switch> <hr /> </xforms:repeat> .... (here you see the later integrated division in different files, see below) For the first help, I divided the boilerplates in different files, each connected seperatley: ..... <xforms:model> <xforms:instance id="B0700_Abschluesse" src="Texte/B0700_Abschluesse.xml" /> <xforms:instance id="B0700_Einbauten" src="Texte/B0700_Einbauten.xml" /> <xforms:instance id="B0750_Rauchabzug" src="Texte/B0750_Rauchabzug.xml" /> <xforms:instance id="B0850_Abschluesse" src="Texte/B0850_Abschluesse.xml" /> <xforms:instance id="B0850_Einbauten" (sorry, the names are in German, because my Perl-Generatorscript uses the Filenames for labeling the buttons) ... and so on. So i have generated 57 instances. But this didnt speed up the repeating sequence. Not for one second! I dont know why. Could it be sensful, to use binding tag instead of the ref? Is there maybe a better solution available? The original idea is taken from the tax form example. I didnt send the whole formular, because it is > 5 MB, but if anybody interested, i will send it to him you self-evident. Do you have some ideas getting up the xforms code faster? What is the internal representation of such lists? Tfh, Oliver
Attachments
- text/xml attachment: repeat-loop.xml
Received on Thursday, 27 July 2006 12:24:55 UTC