Re: [Jcardcal] Genart LC review: draft-ietf-jcardcal-jcal-09

Philipp Kewisch <kewisch@gmail.com> Thu, 20 March 2014 20:32 UTC

Return-Path: <kewisch@gmail.com>
X-Original-To: jcardcal@ietfa.amsl.com
Delivered-To: jcardcal@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3A1471A07DC; Thu, 20 Mar 2014 13:32:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PvjHPBJ3A7jC; Thu, 20 Mar 2014 13:32:51 -0700 (PDT)
Received: from mail-bk0-x22f.google.com (mail-bk0-x22f.google.com [IPv6:2a00:1450:4008:c01::22f]) by ietfa.amsl.com (Postfix) with ESMTP id 9FEA71A073B; Thu, 20 Mar 2014 13:32:50 -0700 (PDT)
Received: by mail-bk0-f47.google.com with SMTP id w10so110748bkz.20 for <multiple recipients>; Thu, 20 Mar 2014 13:32:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=zFfPACq/1kREzUTsvOkNaPPhdKKTfKYZF8PQyNLkBzk=; b=frqKQQvJxgf5kMXnRA5I/b0vwcwtXWZZzPayEfNy1TnS6edUiTIHUcdwCHt0w1rRYa HvtFEHj/wxV8510sxcyizZpse+m/P4fKasHJVepqi5M5y/+YXKbFBTonF09X7aIqRaoC 4KN+kCpDSS4Kznc2SVFI1psTzHfvyFRGYqgDvw00Ycmusx67TdLC8mG8TupCGbsX/8fw mdl/Q3CnvKpZcN3vcqj797eIoRD85PKt9qFrmgNJ3lUAd5S/kXsSerVX6cMiWMclsLaK kGkhArSo8fm4tHrZCRGsT37XiTnR8sRIR57p9+ldpAQfvQOf/pV9/hzCk/MuAIs/yjHY Tqeg==
X-Received: by 10.204.76.137 with SMTP id c9mr1922bkk.145.1395347560861; Thu, 20 Mar 2014 13:32:40 -0700 (PDT)
Received: from [192.168.2.104] (p5DC1549E.dip0.t-ipconnect.de. [93.193.84.158]) by mx.google.com with ESMTPSA id oa10sm3142030bkb.14.2014.03.20.13.32.39 for <multiple recipients> (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 20 Mar 2014 13:32:39 -0700 (PDT)
Message-ID: <532B5066.5050803@gmail.com>
Date: Thu, 20 Mar 2014 21:32:38 +0100
From: Philipp Kewisch <kewisch@gmail.com>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:28.0) Gecko/20100101 Thunderbird/28.0
MIME-Version: 1.0
To: Robert Sparks <rjsparks@nostrum.com>, General Area Review Team <gen-art@ietf.org>, draft-ietf-jcardcal-jcal@tools.ietf.org, jcardcal@ietf.org
References: <531F5C0D.5040903@nostrum.com>
In-Reply-To: <531F5C0D.5040903@nostrum.com>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
Archived-At: http://mailarchive.ietf.org/arch/msg/jcardcal/d-CmqvLUAygfbtkC8uhblGicLss
Subject: Re: [Jcardcal] Genart LC review: draft-ietf-jcardcal-jcal-09
X-BeenThere: jcardcal@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: JSON data formats for vCard and iCalendar WG <jcardcal.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jcardcal>, <mailto:jcardcal-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/jcardcal/>
List-Post: <mailto:jcardcal@ietf.org>
List-Help: <mailto:jcardcal-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jcardcal>, <mailto:jcardcal-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 20 Mar 2014 20:32:53 -0000

Hi Robert,

Thank you for your valuable comments.
> I agree with moving the reference to RFC4627 to normative, as already
> discussed.
Done.

>
> Please consider adding a reference to clarify "JSON escaping" where it
> is mentioned in the 2nd paragraph of page 5.
> Perhaps section 2.5 of rfc4627 would be a good reference?
Sounds good. Here is my suggestion:

OLD
   When converting from iCalendar to jCal, first iCalendar lines MUST be
   unfolded.  Afterwards, any iCalendar escaping MUST be unescaped.
   Finally JSON escaping (e.g., for control characters) MUST be applied.

   The reverse order applies when converting from jCal to iCalendar.
   First, JSON escaping MUST be unescaped.  Afterwards, iCalendar
   escaping MUST be applied.  Finally, long lines SHOULD be folded as
   described in [RFC5545].
NEW
   When converting from iCalendar to jCal, first iCalendar lines MUST be
   unfolded.  Afterwards, any iCalendar escaping MUST be unescaped.
   Finally JSON escaping, as described in [RFC7195] Section 7, MUST be
   applied.

   The reverse order applies when converting from jCal to iCalendar.
   First, JSON escaping MUST be unescaped.  Afterwards, iCalendar
   escaping MUST be applied.  Finally, long lines SHOULD be folded as
   described in [RFC5545].
END


>
> The MUST in the third paragraph of 3.4.1.1 stuck out - is looks like a
> restatement of RFC5545 - that spec doesn't _allow_ anything but a
> semicolon for this particular separator. Would this be better written
> without 2119?
> Perhaps: "When converting from jCal to iCalendar, be careful to use a
> semi-colon as the separator between the two values as required by
> RFC5545."
Thanks for the suggestion, I've changed it locally.

>
> (This may be more than a nit): In the ABNF in section 3.6.5, where is
> the implementer supposed to go to find the definition of 'zone'? (Or
> the other production names?) I think _this_ chunk of ABNF (as opposed
> to that compiled in the appendix) is intended to be normative, yes?
> FWIW, it's not reflected in Appendix B.
Indeed, there are some shortcomings here. For the
year/month/day/hour/minute/second production names I can add an explicit
reference to ISO.8601.2004 Section 2.2. The zone designator is only
marginally mentioned in ISO.8601.2004 Section 4.3.2.

The exact date format is not reflected in Appendix B because the
Appendix does not intend to capture the structure of each different
property type.

As the two jcardcal drafts are my first rfc documents, I am not quite
sure when its a good idea to make the ABNF normative. I could probably
declare it informative by virtue of the reference to ISO 8601 and
RFC5545. The ABNF was added in draft 08, in alignment with the changes
we've made in jcard (rfc7095). There was a lot of discussion on the
jcardcal list on the date formats and it became clear that the specific
variations of ISO 8601 2001 and 2004 used in iCalendar and vCard make it
hard to grasp. By explicitly mentioning the date format I wanted to
counteract.

I'd appreciate some feedback on how to further handle this issue.

>
> I haven't extracted the BNF in appendix B and verified it, but it must
> fail - there is at least one typo. The expansion of param-multi
> includes "value-separtor" which should have been "value-separator".
> Where is value-separator defined?
I've fixed two typos and run it through
<http://www.apps.ietf.org/content/chris-newmans-abnf-validator>.
Validation was successful.

value-separator is defined in section 2 of rfc 7159.

>
> Just curious - has anyone tried converting a document from
> iCal->xCal->jCal->iCal? That might turn up some interesting corners
> that simple round-tripping might mask.
I haven't tried that, it might be interesting though. My library cannot
convert xCal to jCal (yet), but maybe Cyrus' library does it and he can
take a look.

Regards,
Philipp