The XactSort transformation shows the advantages of XACT:
recipes = collection.select("/collection/recipe")
collection = collection.gapify("/collection/recipe", "r")
Arrays.sort(recipes, new RecipeComparator())
collection = collection.plug("r", recipes)
The tricky question:
collection.analyze("...recipes.dtd", "...")