Re: [Evolution] Problems Splitting a Contact



On Sat, 2021-08-14 at 11:15 -0700, Jonathan Ryshpan wrote:
I used to have a single contact for Bob and Wendy Doe, but now need
two contacts, since they have different email addresses.  (Is this
really necessary?  Comments welcome.) 

I don't understand what you are attempting to accomplish.  Why not
simply create a new contact and revise the old one?

 I thought I'd duplicate the contact for "Bob & Wendy Doe); but this
doesn't seem to be possible; file systems allow making copies of
files to other files with similar names like say
$ cp -a foo foo.bk

An addressbook is not a file system.

So I thought I'd copy the contact for Bob&Wendy from my Personal
contact list into another list called KeyNames, then edit the two
copies so that the one in Personal is for Bob Doe and the one in
KeyNames is for Wendy Doe; then copy the one in KeyNames (for Wendy
Doe)  back to Personal.  This fails; I get a message warning of a UID
conflict. 

Expected;  there's no event involved which would trigger reconstituting
the UID.  Frankly, as a WebDAV/CardDAV/CalDAV developer, this is a flaw
in vCard/vEvent/vToDo; there really is not a fully working scheme for
id'ing an object.

 Well, thought I, I'll export the contact for Wendy Doe from KeyNames
as a vcard and import this back into Personal.  This also fails for
the same reason, but silently; if I edit the vcard to remove the
line:
UID:pas-id-419866BF000000A3
everything works.


Expected.  If there is no UID one is created.

I can't be the only person who has needed to do this kind of thing.
Questions:  
Would it be practical to allow contacts to be duplicated within the
same list?

Sure, but the use case is very narrow.  This is easily enough
accomplished by the composite action of creating a new contact and
editing the old one.

Also, again, as a WedDAV/CardDAV, et al developer - don't create
compound contacts.  When you do so you are violating the object model,
which will eventually always have side effects.

What is the function of the UID in a vcard?  Is it necessary?

It is the Unique ID of the vCard.  Yes it is necessary. And the vCard
is a 'dumb' object; it expects the client to manage the UID (which
sometimes isn't really possible).




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]