>Spit out the FOOD_IDs where the associated FOOD_TYPE_ID is equal to "1".
In your data a food ID can have more than one associated food type ID.
You don't actually need a join for this, you can write
//food_type[food_type_id=1]/food_id
That will give you duplicates - there is a whole literature on how to eliminate duplicates (search for "XSLT grouping") (it's easy in XPath 2.0 using distinct-values()).
A better use case for a join is to list the food names with food type id = 1, that is
//food[id = //food_type[food_type_id=1]/food_id]/name
But in XSLT you would normally use keys to do this, for readability and for performance.
Michael Kay
http://www.saxonica.com/
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference