Hi Jodi,
Here are an example of a properly formatted xml file for the Batch compiler (SampleFile.xml) and its corresponding xsd file (CrossRefSchema.xsd). The beginning of the xml file makes reference to the xsd.
I cleaned the sample xml provided by McKesson, then built the xsd file using a popular XML editor.
Note that in Cloverleaf, you compile the xsd file (not the xml file). You can then use the Testing tool and the sample xml file to verify that the compiled xsd is working properly. The .xsd I give you compiled fine with CL version 5.4.
Using an Xlate (HL7 ORU to XML) is not necessarily the best way to generate the XML for HPF. The Xlate iterations can be tricky when you have a repeating element in the XML schema (like the Index in our case).
A simpler solution is to write a TCL script that processes the inbound ORU message, extracts the necessary indexing elements from the HL7 (like account number, medical record number, document type, etc.), and dynamically creates the xml file, using a template similar to the sample I give you. I recently built an interface to send a PDF to HPF; my situation was different from yours because no HL7 ORU was available. However, I was able to use a TCL script as described to create the xml index for HPF.
I hope this helps.