A little quick note, when needing composite keys in your relationship in SQL XML Bulk Load the syntax is as follow:
<sql:relationship name="Detail"
parent="Import.Product"
parent-KEY="ProductID FileID"
child="Import.ProductDetails"
child-KEY="ProductID FileID"/>
meaning they’re simply space separated in the relationship annotation. The composite key in this aspect are the columns ProductID and FileID.
As can also be seen in this annotation, I'm using a schema qualifiaction with Import, so if you have other schemas, you can simply write them in the parent/child.
For more syntax, please refer to the blog post SQL XML Bulk Load - basic XSD syntax