protected function _getForeignKeyData(array $referenceMap, array $pKeys) {
        $data = array();
        $foreignKeyColumns = $referenceMap['columns'];
        if (count($foreignKeyColumns) !== count($pKeys)) {
            throw new Garp_Model_Behavior_Exception(
                sprintf(
                    self::SAVE_FOREIGN_KEY_EXCEPTION,
                    count($pKeys), count($foreignKeyColumns)
                )
            );
        }
        $data = array_combine($foreignKeyColumns, $pKeys);
        return $data;
    }