10-07-2006, 02:04 PM
[quote davemchine]addressbook cannot import anniversaries from a vcard. Yet I was able to use a 3rd party program to import anniversaries into addressbook. Very frustrating.
I created an AddressBook entry with a birthday and an anniversary. I exported a vCard. I removed the birthday and anniversary from the record in AddressBook. I imported the vCard and it imported both the birthday and anniversary perfectly.
Looking into the vCard with a text editor (BBEdit), I can see that the vCard uses the keyword "BDAY" to denote the birthday ("BDAY;value=date:1960-02-21") ; however, it uses a non-standard extension mechanism to specify the anniversary:
As far as I can tell, there is no vCard 3.0 standard for specifying the anniversary whereas there is one for specifying the birthday. This would explain why there would be incompatibiltiy between programs reading and writing vCards with anniveraries in them. Each program is left to its own devices to figure out a way to express the anniversary. You are putting the blame on AddressBook for not using some third-party convention for the expressing anniversary whereas you could have blamed the program that wrote the vCard instead for not using AddressBook's convention.
I created an AddressBook entry with a birthday and an anniversary. I exported a vCard. I removed the birthday and anniversary from the record in AddressBook. I imported the vCard and it imported both the birthday and anniversary perfectly.
Looking into the vCard with a text editor (BBEdit), I can see that the vCard uses the keyword "BDAY" to denote the birthday ("BDAY;value=date:1960-02-21") ; however, it uses a non-standard extension mechanism to specify the anniversary:
item1.X-ABDATE;type=pref:2000-04-04
item1.X-ABLabel:_$!!$_
As far as I can tell, there is no vCard 3.0 standard for specifying the anniversary whereas there is one for specifying the birthday. This would explain why there would be incompatibiltiy between programs reading and writing vCards with anniveraries in them. Each program is left to its own devices to figure out a way to express the anniversary. You are putting the blame on AddressBook for not using some third-party convention for the expressing anniversary whereas you could have blamed the program that wrote the vCard instead for not using AddressBook's convention.