Our tables contain primary keys, such as any other table. However, some specific XML requirement we have to deliver consists of sending the client a GUID that could be later use to query one of our record. The client doesn't want to receive the primary key. They want a GUID. So, we create them a GUID. However, they expect to send that query as a record recognition back to us when required. So, the simplest approach would be to add a GUID ID field in our table. But, is that really necessary? Just because of that, I'll end up with two primary key fields, one a GUID just for that. Isn't there a way to have the GUID generated based on a primary key value and degenerate it, when such a request will be launched, in order to recognize our primary key value?