There is a difference of behaviour in \xmlfilter between (1) \xmlfilter{#1}{node/command(xmlsetup)} and (2) \xmlfilter{#1}{*/command(xmlsetup)} (3) \xmlfilter{#1}{*/*/command(xmlsetup)} In case (1) the lpath ‘node’ results in processing of the nodes in all child nodes. In case (2) and (3) no more than the corresponding level is searched. Thus there is a difference in behaviour between node and * as an lpath. Very unfortunate for me, because I need to process all nodes regardless of theeir node name, but selected on the basis of an attribute: \xmlfilter{#1}{*[@attribute==“yes”]. The difference in behaviour makes this impossible, because a general proceudre is impossible and doing a search with * and */* and */*/* etc. always will be one level too short, I expect. Is this intended behaviour, and if so, is there a general solution? dr. Hans van der Meer