my $out := create "TestCode" ; set $out/TestCode/@version "10.0" ; set $out/TestCode/TestCategory/@name "SmokeTest" ; open file.xml ; cp //Test[starts-with(@name, "CheckType_")][context/value = "XYZ"] into $out/TestCode/TestCategory ; save :f output.xml $out ; #### open 1.xml ; delete ( //Test[not(starts-with(@name, "CheckType_"))] | //Test[starts-with(@name, "CheckType_")][not(context/value = "XYZ")] ) ; save :f 1.out ;