Not sure whether or not this is done on purpose, but in rules.install there are schema definitions which define foreign keys in a way that differs from the way Schema API documentation proposes:
'foreign keys': An associative array of relations ('my_relation' => specification). Each specification is an array containing the name of the referenced table ('table'), and an array of column mappings ('columns'). Column mappings are defined by key pairs ('source_column' => 'referenced_column').
PASSED: [[SimpleTest]]: [MySQL] 328 pass(es). View