# File lib/tapkit/access/entity.rb, line 162
                def primary_key( gid_or_row )
                        values = key_values = nil

                        case gid_or_row
                        when KeyGlobalID
                                key_values = gid_or_row.key_values
                        when Hash
                                key_values = gid_or_row
                        end

                        if key_values then
                                values = {}
                                key_values.each do |key, value|
                                        if primary_key_attribute? key then
                                                values[key] = value
                                        end
                                end
                        end
        
                        values
                end