Thanks, Alain, The change came with 547.
I will see if I can extricate a tiny test case from my mass of xquery. Trying to make one, I noticed that Firefox (up-to-date version on up-to-date OS X) treats the attached mods.2.xml file wrongly and Chrome treats it correctly, whereas mods1.xml is treated correctly by both. The way the namespaces are set makes the difference. This does not illustrate my original problem, however, and has nothing to do with 547. Cheers, Jens
mods1.xml
Description: XML document
mods2.xml
Description: XML document
On Jul 10, 2012, at 1:01 PM, Alain Couthures wrote:
> Hello Jens,
>> I have groups for hiding/displaying a set of buttons for inserting missing
>> elements and attributes. They are at times monstrously long, such as,
>>
>> <xf:group class="show-hide" ref=".[not(@altRepGroup)] | .[not(@authority)] |
>> .[not(@authorityURI)] | .[not(@displayLabel)] | .[not(@ID)] | .[not(@lang)]
>> | .[not(@nameTitleGroup)] | .[not(mods:nonSort)] | .[not(mods:partName)] |
>> .[not(mods:partNumber)] | .[not(@script)] | .[not(mods:subTitle)] |
>> .[not(@supplied)] | .[not(mods:title)] | .[not(@transliteration)] |
>> .[not(@type)] | .[not(@usage)] | .[not(@valueURI)] | .[not(@xml:lang)] |
>> .[not(@xlink:href)]">
> First, I would try to minimize such expressions like this, if there is one
> char that should not appear in values:
> .[not(contains(concat('~',@altRepGroup,'~',@authority,'~',@authorityURI,'~',@displayLabel,'~',@ID,'~',@lang,'~',@nameTitleGroup,'~',.....,'~'),'~~'))]
>
The idea (which works before 547) is that if one of the named nodes is missing,
a panel should show up; this contains a number of buttons for inserting missing
nodes, each of which is displayed, by its own xf:group, if its node is not
present in the instance.
If I understand you correctly, you are checking the values of the elements and
attributes listed. You will catch if there is an empty value (which will bring
a '~~'). I am checking if the instance has nodes with the listed names as child
elements or attributes of the context node. I will catch a missing node.
I could condense my "or" expression if I could use not(name(.) = ('a','b','c')).
>>
>> My problem is that this works with fine with xsltforms-1.0RC, but not with
>> revisions 547-549 (the only revisions I have tested).
> In fact, many features and optimizations have been added since
> xsltforms-1.0RC and a new release candidate version should be published soon.
>>
>> This has nothing to do with the namespaced attributes. It has nothing to do
>> with elements versus attributes. Length also does not have anything to do
>> with it.
> Usually to fix bugs, the tiniest test case is the best way to locate the
> issue. Can you please send me one?
>>
>> By the way: what would be the version number of xsltforms-1.0RC (so I can
>> test when the behaviour changed)?
> xsltforms.js, line 45: fileVersionNumber: 535,
Of course!
>
> Thanks!
>
> -Alain
------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________ Xsltforms-support mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/xsltforms-support
