Subject: [art] Artart Last Call review of draft-ietf-calext-jscontact-vcard-06

From: Paul Kyzivat <[email-masked]>
Date: Wed, 29 Mar 2023 14:02:23 -0400

Document: draft-ietf-calext-jscontact-vcard-06
Reviewer: Paul Kyzivat
Review Date: 2023-03-29
IETF LC End Date: 2023-04-07
IESG Telechat date: ?

Summary: This draft is on the right track but has open issues, described 
in the review.

Issues: 3
Nits:   4

1) MINOR ISSUE: Section 2.1.1 (The uid property)

Russ commented on the use of SHOULD/MAY in his GenArt review. I concur 
in his issue.

The main confusion is *how* compliance with SHOULD can be achieved. Do 
you expect that a UID can be constructed algorithmically from the 
contents of the vCard? Or by using some stable external information? 
ISTM that if compliance can be algorithmic from the vCard data then that 
should be mandated as a MUST requirement. The draft needs to be more 
specific here.

2) MINOR ISSUE: Section 2.3.6 (DERIVED)

What is the alternative to following the MAY by not converting the 
property? You might better simply say that no conversion is specified 
and implementations MAY do as they wish.

3) MINOR ISSUE: Section 2.6.5 (N and NICKNAME)

I don't understand why Figure 11 (showing John Q. Public with his full 
name, name, and nicknames) is shown twice. Is that a mistake? If not 
then please clarify what the purpose is.

4) NIT: Heading:

The name of the draft in the heading of version -06 identifies itself as 
version -05.

5) NIT: Section 2.9.2 (TZ)

Both "Etc" and "ETC" are used. Is there a reason not to be consistent?

6) NIT: Section 3.2 (New vCard Properties and Parameters)

I think there is a problem with:

"This section defines new vCard properties and parameters by which such 
JSContact properties MAY be represented in JSContact."

Shouldn't "JSContact" be "vCard"?

7) NIT:

IdNits reports the following of significance:

== There are 5 instances of lines with non-ascii characters in the document.

** There are 30 instances of too long lines in the document, the longest 
one being 18 characters in excess of 72.

You can run it yourself for the details, using the very verbose output 
option. Unfortunately while that option reports line numbers it seems to 
get them wrong. Here are some highlights for you:

The offending non-ascii characters are in uses of: "Gabriel García 
Márquez", "Écrivain", and "rock ’n’ roll". These aren't necessarily 
forbidden but you might want to change them to avoid the warnings.

The long lines are:

draft-ietf-calext-jscontact-vcard-06.txt(790): Line is too long: the 
offending characters are 'U.S.A.'
draft-ietf-calext-jscontact-vcard-06.txt(804): Line is too long: the 
offending characters are '1921-1234\nU.S.A."'
draft-ietf-calext-jscontact-vcard-06.txt(818): Line is too long: the 
offending characters are '.A."'

draft-ietf-calext-jscontact-vcard-06.txt(963): Line is too long: the 
offending characters are ','
draft-ietf-calext-jscontact-vcard-06.txt(964): Line is too long: the 
offending characters are ','
draft-ietf-calext-jscontact-vcard-06.txt(984): Line is too long: the 
offending characters are ','
draft-ietf-calext-jscontact-vcard-06.txt(985): Line is too long: the 
offending characters are ','

draft-ietf-calext-jscontact-vcard-06.txt(1131): Line is too long: the 
offending characters are ','
draft-ietf-calext-jscontact-vcard-06.txt(1132): Line is too long: the 
offending characters are '}'
draft-ietf-calext-jscontact-vcard-06.txt(1145): Line is too long: the 
offending characters are ','
draft-ietf-calext-jscontact-vcard-06.txt(1146): Line is too long: the 
offending characters are '}'

draft-ietf-calext-jscontact-vcard-06.txt(1605): Line is too long: the 
offending characters are 's.'

draft-ietf-calext-jscontact-vcard-06.txt(1838): Line is too long: the 
offending characters are 'neering'

draft-ietf-calext-jscontact-vcard-06.txt(3086): Line is too long: the 
offending characters are 'x hux"'

draft-ietf-calext-jscontact-vcard-06.txt(3167): Line is too long: the 
offending characters are '=====+==========+'
draft-ietf-calext-jscontact-vcard-06.txt(3168): Line is too long: the 
offending characters are 'til  |Change    |'
draft-ietf-calext-jscontact-vcard-06.txt(3169): Line is too long: the 
offending characters are 'rsion|Controller|'
draft-ietf-calext-jscontact-vcard-06.txt(3170): Line is too long: the 
offending characters are '     |          |'
draft-ietf-calext-jscontact-vcard-06.txt(3171): Line is too long: the 
offending characters are '=====+==========+'
draft-ietf-calext-jscontact-vcard-06.txt(3172): Line is too long: the 
offending characters are '     |IETF      |'

draft-ietf-calext-jscontact-vcard-06.txt(3173): Line is too long: the 
offending characters are '     |          |'
draft-ietf-calext-jscontact-vcard-06.txt(3174): Line is too long: the 
offending characters are '     |          |'
draft-ietf-calext-jscontact-vcard-06.txt(3175): Line is too long: the 
offending characters are '     |          |'
draft-ietf-calext-jscontact-vcard-06.txt(3176): Line is too long: the 
offending characters are '     |          |'
draft-ietf-calext-jscontact-vcard-06.txt(3177): Line is too long: the 
offending characters are '     |          |'
draft-ietf-calext-jscontact-vcard-06.txt(3178): Line is too long: the 
offending characters are '     |          |'
draft-ietf-calext-jscontact-vcard-06.txt(3179): Line is too long: the 
offending characters are '-----+----------+'
draft-ietf-calext-jscontact-vcard-06.txt(3180): Line is too long: the 
offending characters are '     |IETF      |'
draft-ietf-calext-jscontact-vcard-06.txt(3181): Line is too long: the 
offending characters are '     |          |'
draft-ietf-calext-jscontact-vcard-06.txt(3182): Line is too long: the 
offending characters are '-----+----------+'

Please try to find a way to shorten these.