[VCARDDAV] Questions about vCard 4.0 (draft rev-11)

Daisuke Miyakawa <d.miyakawa@gmail.com> Tue, 22 June 2010 02:27 UTC

Return-Path: <d.miyakawa@gmail.com>
X-Original-To: vcarddav@core3.amsl.com
Delivered-To: vcarddav@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 7C1A13A6919 for <vcarddav@core3.amsl.com>; Mon, 21 Jun 2010 19:27:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.755
X-Spam-Level: *
X-Spam-Status: No, score=1.755 tagged_above=-999 required=5 tests=[BAYES_50=0.001, HTML_MESSAGE=0.001, MIME_BASE64_TEXT=1.753]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MS4jna4gkRuO for <vcarddav@core3.amsl.com>; Mon, 21 Jun 2010 19:27:51 -0700 (PDT)
Received: from mail-gx0-f172.google.com (mail-gx0-f172.google.com [209.85.161.172]) by core3.amsl.com (Postfix) with ESMTP id CD8A33A6846 for <vcarddav@ietf.org>; Mon, 21 Jun 2010 19:27:50 -0700 (PDT)
Received: by gxk8 with SMTP id 8so22853gxk.31 for <vcarddav@ietf.org>; Mon, 21 Jun 2010 19:27:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=qP+yTH4bQOWPqdbMvXxt4q/UMgyxpfUqeghgwnvZQOE=; b=pckw7bUfm18g4UQGWXbuCks7KFN86C1gfLAxIPOTAKrG4evHXYTMCFDq+RcEqk1iEi g7PAkBTWoiHq7XN0ulHfnIJ4obkeCe4kKpVx6kzxyOJ1Wy3FiweoO3gYkOviGFKnXrAX cyZOLNv+bDd3Am1nzznLmNl7bV9dc5WpEps0c=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=PVb3KgQAXrLYZA9SrFGF24+rxs8tevBqti5YfkKZ9HqQWxwyoXs+H5axYAPuzTf3oC t41MtPT2klNtS6NZrljwA73fftDFCtGMPRKCLSHtQ+fwlmTtlhR7P8Gfw5S4QfmEPlzz VSonY4ZD17oY8id/Kqi1JzPY0A565b6x6YBj4=
MIME-Version: 1.0
Received: by 10.90.20.15 with SMTP id 15mr3464902agt.161.1277173674539; Mon, 21 Jun 2010 19:27:54 -0700 (PDT)
Received: by 10.90.63.13 with HTTP; Mon, 21 Jun 2010 19:27:54 -0700 (PDT)
Date: Tue, 22 Jun 2010 11:27:54 +0900
Message-ID: <AANLkTiniY60njEGixPGeKvs_m1LE_uVrvtnDQuXrP7jV@mail.gmail.com>
From: Daisuke Miyakawa <d.miyakawa@gmail.com>
To: vcarddav@ietf.org
Content-Type: multipart/alternative; boundary="001636284c722ffb040489952b01"
Subject: [VCARDDAV] Questions about vCard 4.0 (draft rev-11)
X-BeenThere: vcarddav@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: IETF vcarddav wg mailing list <vcarddav.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/vcarddav>, <mailto:vcarddav-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/vcarddav>
List-Post: <mailto:vcarddav@ietf.org>
List-Help: <mailto:vcarddav-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/vcarddav>, <mailto:vcarddav-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Jun 2010 06:30:41 -0000

Hi,

(Please tell me when I'm saying something inappropriate in this ML. I'm new
to the community)
I'm a Japanese interested in vCard 4.0, and have 3 questions for
implementing parser/composer.

1) case sensitiveness
>   Property names and parameter names are case insensitive (e.g., the
>   property name "fn" is the same as "FN" and "Fn").

1-a) Rationale
I'd like to know why this draft changed the behavior around
case-sensitiveness of property name.
My understanding is that vCard 2.1 and 3.0 implicitly preferred upper cases
(though there seems no mention).
When developing a vCard parser for some embedded devices, I found using
case-sensitive comparison was a little costly.
At least, I think it is worth mentioning that upper cases would be better,
as a lot of old vCard files (both vCard 2.1 and vCard 3.0) seem to use that
form.

1-b) How about BEGIN and END?
There's no mention about how BEGIN/END should be emitted. Is it ok to use
"begin:vcard"?

2) VERSION

> Special notes: The property MUST be present in the vCard object.
>                The value MUST be "4.0" if the vCard corresponds to this
>                specification.

When parsing vCard files, I found it should be better to have "VERSION" line
"just after" "BEGIN:VCARD" line, as parsers cannot know which version should
be used.
My understanding is vCard 2.1 even allows vCard without "VERSION:2.1" line.
When parsing some complicated text with backslash and Quoted-Printable (only
allowed in vCard 2.1),
the parser cannot determine how a target property is treated (error or not).

e.g.
BEGIN:VCARD
FN:Daisuke;Miyakawa
AGENT:BEGIN:VCARD\nFN:Cool!\nEND:VCARD
VERSION:3.0  <-- The parser found that this vCard is NOT in vCard 4.0 but in
vCard 3.0, so AGENT is valid.
END:VCARD  <-- The parser found there's no N, which is valid in vCard 4.0
but not in vCard 3.0
(error?)

I think it would be better to explicitly mention that "VERSION:4.0 MUST be
just after BEGIN:VCARD line" for better comfortability of actual
implementation.

3) SORT-STRING
Some Japanese people said that we sometimes use organization (ORG) for
sorting, but we need some sort string for it.
However, the current draft says "SORT-STRING" is just for FN or N, not for
ORG.
Is there any discussion about that kind of topic?

Thanks,

-- 
Daisuke Miyakawa (宮川大輔)
d.miyakawa@gmail.com