Weird effects again today: In an OT I want to remove a helper XML attribute before sending the doc to the shim. Works just fine in Designer's simulator but throws an exeption on the server:

[01/25/10 12:51:16.250]RV_SelfServ ST: Applying rule 'Strip helper XML attribute'.
[01/25/10 12:51:16.250]RV_SelfServ ST: Action: do-trace-message(token-xml-serialize(token-local-variable("current-op"))).
[01/25/10 12:51:16.250]RV_SelfServ ST: arg-string(token-xml-serialize(token-local-variable("current-op")))
[01/25/10 12:51:16.251]RV_SelfServ ST: token-xml-serialize(token-local-variable("current-op"))
[01/25/10 12:51:16.251]RV_SelfServ ST: token-xml-serialize(token-local-variable("current-op"))
[01/25/10 12:51:16.247]RV_SelfServ ST: token-local-variable("current-op")
[... deleted trace of building the trace message ...]
[01/25/10 12:51:16.262]RV_SelfServ ST:
<add class-name="group" event-id="server#20100125115109#3#1" src-dn="\TREE\printers\Berlin_1-23_Color" src-entry-id="43334">
<add-attr attr-name="Location">
<value timestamp="1264419761#5" type="string">Berlin</value>
</add-attr>
<add-attr attr-name="CostCentre">
<value timestamp="1264419761#8" type="string">123456</value>
</add-attr>
<add-attr attr-name="Path">
<value timestamp="1264419762#6" type="string">Berlin_1-23_Color</value>
</add-attr>
<add-attr attr-name="OwnerPersNo">
<value type="string" workforceID="7837">7837</value>
</add-attr>
</add>
[01/25/10 12:51:16.267]RV_SelfServ ST: Action: do-strip-xpath(".//value/@workforceID").
[01/25/10 12:51:16.268]RV_SelfServ ST:Processing returned document.
[01/25/10 12:51:16.268]RV_SelfServ ST:Processing operation <status> for .
[01/25/10 12:51:16.268]RV_SelfServ ST:
DirXML Log Event -------------------
Driver: \MUMMERT-META\de\mummert\hamburg\DIRXML_DRVSET01\DRV_SelfSe rv
Channel: Subscriber
Object: \MUMMERT-META\MUMMERT\de\mummert\berlin\groups_printer\Berl in_7-28_SW
Status: Error
Message: Code(-9010) An exception occurred: com.novell.xml.dom.DOMExceptionImpl
at com.novell.xml.dom.NamedNodeMapImpl.removeNamedIte m(NamedNodeMapImpl.java:182)
at com.novell.xml.dom.ElementImpl.removeAttributeNode (ElementImpl.java:242)
at com.novell.nds.dirxml.engine.rules.DoStripXPath.ap ply(DoStripXPath.java:90)
at com.novell.nds.dirxml.engine.rules.ActionSet.apply (ActionSet.java:177)
at com.novell.nds.dirxml.engine.rules.DirXMLScriptPro cessor.applyRules(DirXMLScriptProcessor.java:298)
at com.novell.nds.dirxml.engine.Transformer.applyOutp utTransformation(Transformer.java:474)
at com.novell.nds.dirxml.engine.Subscriber.execute(Su bscriber.java:422)
at com.novell.nds.dirxml.engine.Subscriber.execute(Su bscriber.java:282)
at com.novell.nds.dirxml.engine.Subscriber$AddProcess or.process(Subscriber.java:1395)
at com.novell.nds.dirxml.engine.Subscriber$SyncProces sor.process(Subscriber.java:1590)
at com.novell.nds.dirxml.engine.Subscriber.processEve nt(Subscriber.java:1054)
at com.novell.nds.dirxml.engine.Subscriber.processEve nts(Subscriber.java:898)
at com.novell.nds.dirxml.engine.Driver.submitTransact ion(Driver.java:624)
at com.novell.nds.dirxml.engine.DriverEntry.submitTra nsaction(DriverEntry.java:1050)
at com.novell.nds.dirxml.engine.DriverEntry.processCa chedTransaction(DriverEntry.java:934)
at com.novell.nds.dirxml.engine.DriverEntry.eventLoop (DriverEntry.java:756)
at com.novell.nds.dirxml.engine.DriverEntry.run(Drive rEntry.java:561)
at java.lang.Thread.run(Unknown Source)

Obvious workaround would be to just leave the @workforceID XML attribute on the operation, since the shim should ignore it anyway. But then I try to keep things clean and readable, and would really like to understand why this is not working. Any ideas?

Cheers, Lothar