Simple-Contacts icon indicating copy to clipboard operation
Simple-Contacts copied to clipboard

contacts v 6.18.0 Pro: export into vcard 4.0 is missing FN property (rfc6350) in output file

Open bernieEV opened this issue 3 years ago • 3 comments

extract from rfc6350 about FN property

6.2.1. FN Purpose: To specify the formatted text corresponding to the name of the object the vCard represents. Value type: A single text value. Cardinality: 1* Special notes: This property is based on the semantics of the X.520 Common Name attribute [CCITT.X520.1988]. The property MUST be present in the vCard object.

Best regards from Austria to Slovakia

bernieEV avatar Apr 07 '22 06:04 bernieEV

Hi Tibbi, the rfc6350 tells in the Special Note: "The property MUST be present in the vCard object." exporting in FORMAT vcard VERSION:4.0 MUST have a line with property "FN" as a sort_key. this is not a "feature request", this is clearly a BUG from vcard VERSION 4.0 perspective.

bernieEV avatar Apr 17 '22 14:04 bernieEV

no field is mandatory...

tibbi avatar Apr 17 '22 14:04 tibbi

Hi Tibor,

If you do not want to make this change you have to set the version information to "VERSION:2.1"

In my copy of rfc6350 I read the following;

; A vCard object MUST include the VERSION and FN properties. ; VERSION MUST come immediately after BEGIN:VCARD.******

Property cardinalities are indicated using the following notation, which is based on ABNF (see [RFC5234], Section 3.6): +-------------+--------------------------------------------------+ | Cardinality | Meaning | +-------------+--------------------------------------------------+ | 1 | Exactly one instance per vCard MUST be present. | | 1 | Exactly one instance per vCard MAY be present. | | 1 | One or more instances per vCard MUST be present. | | * | One or more instances per vCard MAY be present. | +-------------+--------------------------------------------------+

3.3. ABNF Format Definition The following ABNF uses the notation of [RFC5234], which also defines CRLF, WSP, DQUOTE, VCHAR, ALPHA, and DIGIT.

vcard-entity = 1*vcard

vcard = "BEGIN:VCARD" CRLF "VERSION:4.0" CRLF 1*contentline "END:VCARD" CRLF

; A vCard object MUST include the VERSION and FN properties. ; VERSION MUST come immediately after BEGIN:VCARD.******

bernieEV avatar Apr 18 '22 06:04 bernieEV