Re: [Geojson] [Technical Errata Reported] RFC7946 (5069)

Martin Thomson <martin.thomson@gmail.com> Fri, 14 July 2017 17:42 UTC

Return-Path: <martin.thomson@gmail.com>
X-Original-To: geojson@ietfa.amsl.com
Delivered-To: geojson@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 54B94131709 for <geojson@ietfa.amsl.com>; Fri, 14 Jul 2017 10:42:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 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, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 lTix2iRP1FDX for <geojson@ietfa.amsl.com>; Fri, 14 Jul 2017 10:42:47 -0700 (PDT)
Received: from mail-it0-x236.google.com (mail-it0-x236.google.com [IPv6:2607:f8b0:4001:c0b::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 01B29131455 for <geojson@ietf.org>; Fri, 14 Jul 2017 10:42:39 -0700 (PDT)
Received: by mail-it0-x236.google.com with SMTP id m68so25245634ith.1 for <geojson@ietf.org>; Fri, 14 Jul 2017 10:42:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=6zHZdke3lAcHGDE3nI5/4PCIOkCn1H2Ce6E3g2G/320=; b=ozd3h92XCz5G+npMHCJGChPgrF4o0hth3t0okUCQkvyfEpPRAwa+NU+mXT3xGMrzTW WVqktgy33DZCzRntSd+nTdHry5HvqqNtS9In/eIcvk46QclmQSbLv0F3H/lxUiYeFGvz xSektTYCleVujV7HS4g+r3ItXGtRQRTXk7ZTMwoCqLAPMli0bU96LW5/SquPl3lRScGs AukyVgiZJTXkFqSZFnUfTPA1H7OvlOMW7hIMO/wE1ccXzvE6XvgWzsQyHUAYt/gLLHrR bBTWfxX+Wm+MN1UDAQFru9fX0IBqzb7EpIe1Uyrt8TIYhnFmpxTo9Wl8sZeT3A8Izivq cIjg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=6zHZdke3lAcHGDE3nI5/4PCIOkCn1H2Ce6E3g2G/320=; b=Q+glPkFH3w2TNGBTRMzO0bx1xAjgj7HnPTppc8RzWgbWiTV1Yt/ahDgpygb0cmvOa+ 1TEBKm8jNV1IUqZXwxKVV6w/ufISNOJOibBGkxFO0ylklT9XH97GdI5x3wY6HYEi4kTA DiGiLUticRJCRVGJ8ETSh1IISf0xB2r9DhqxotWRE+QTxdvpuHv9JmMP4EVII3F3Dcxv r7uihgXihj14dllFm1+RnoJ+3A+JDg+S/E/ZAYuTK9EJKdMTK5n5VdVU98t81IxSL4dU SoLyj3eYrV3o8sC4vM04678Ls4Dw2m/ZiNCScpJza5HH258Du2/Chb2EuKIg4blhEnFD gSyA==
X-Gm-Message-State: AIVw111hdw7+UqQfJahQPcU+PShh1FaWxcQfBBsYH9BDIYKQ7XR+q85y j6drmAf9OZWoluBdU4JuzMuhLfptUA==
X-Received: by 10.36.250.195 with SMTP id v186mr4798314ith.97.1500054159332; Fri, 14 Jul 2017 10:42:39 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.107.164.26 with HTTP; Fri, 14 Jul 2017 10:42:38 -0700 (PDT)
In-Reply-To: <20170714154433.DD8A3B80157@rfc-editor.org>
References: <20170714154433.DD8A3B80157@rfc-editor.org>
From: Martin Thomson <martin.thomson@gmail.com>
Date: Sat, 15 Jul 2017 03:42:38 +1000
Message-ID: <CABkgnnWZnCB0mkrxgeXE4+8KsjYTG-JcSLBDi0aNj=9=rcDxVA@mail.gmail.com>
To: RFC Errata System <rfc-editor@rfc-editor.org>
Cc: Howard Butler <howard@hobu.co>, Martin Daly <martin.daly@cadcorp.com>, Allan Doyle <adoyle@intl-interfaces.com>, Sean Gillies <sean.gillies@gmail.com>, Stefan Hagen <stefan@hagen.link>, Tim Schaub <tim.schaub@gmail.com>, Ben Campbell <ben@nostrum.com>, Alexey Melnikov <aamelnikov@fastmail.fm>, Adam Roach <adam@nostrum.com>, Erik Wilde <erik.wilde@dret.net>, carcher@drillinginfo.com, geojson@ietf.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/geojson/iXsFeC38-8bAZYD5tSsb0gAgObY>
X-Mailman-Approved-At: Fri, 14 Jul 2017 10:43:31 -0700
Subject: Re: [Geojson] [Technical Errata Reported] RFC7946 (5069)
X-BeenThere: geojson@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: IETF GeoJSON WG <geojson.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/geojson>, <mailto:geojson-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/geojson/>
List-Post: <mailto:geojson@ietf.org>
List-Help: <mailto:geojson-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/geojson>, <mailto:geojson-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 14 Jul 2017 17:42:53 -0000

My understanding is that the polygon definition follows the accepted
norms for point order. GML defines the shape this way.  Section 5.1 of
RFC 5491: https://tools.ietf.org/html/rfc5491#section-5.1 also uses
counter-clockwise point order: the upward normal points up!  See also
Appendix B of RFC 7459 https://tools.ietf.org/html/rfc7459#appendix-B

My understanding of the right hand rule being curled fingers on the
right hand follow the points and the thumb becomes the upward normal.

I think that we should reject this erratum, but can someone else
double-check that I'm not off base?

On 15 July 2017 at 01:44, RFC Errata System <rfc-editor@rfc-editor.org> wrote:
> The following errata report has been submitted for RFC7946,
> "The GeoJSON Format".
>
> --------------------------------------
> You may review the report below and at:
> http://www.rfc-editor.org/errata/eid5069
>
> --------------------------------------
> Type: Technical
> Reported by: Clark Archer <carcher@drillinginfo.com>
>
> Section: 3.1.6
>
> Original Text
> -------------
> 3.1.6.  Polygon
>
>    To specify a constraint specific to Polygons, it is useful to
>    introduce the concept of a linear ring:
>
>    o  A linear ring is a closed LineString with four or more positions.
>
>    o  The first and last positions are equivalent, and they MUST contain
>       identical values; their representation SHOULD also be identical.
>
>    o  A linear ring is the boundary of a surface or the boundary of a
>       hole in a surface.
>
>    o  A linear ring MUST follow the right-hand rule with respect to the
>       area it bounds, i.e., exterior rings are counterclockwise, and
>       holes are clockwise.
>
>    Note: the [GJ2008] specification did not discuss linear ring winding
>    order.  For backwards compatibility, parsers SHOULD NOT reject
>    Polygons that do not follow the right-hand rule.
>
>    Though a linear ring is not explicitly represented as a GeoJSON
>    geometry type, it leads to a canonical formulation of the Polygon
>    geometry type definition as follows:
>
>    o  For type "Polygon", the "coordinates" member MUST be an array of
>       linear ring coordinate arrays.
>
>    o  For Polygons with more than one of these rings, the first MUST be
>       the exterior ring, and any others MUST be interior rings.  The
>       exterior ring bounds the surface, and the interior rings (if
>       present) bound holes within the surface.
>
>
> Corrected Text
> --------------
> 3.1.6.  Polygon
>
>    To specify a constraint specific to Polygons, it is useful to
>    introduce the concept of a linear ring:
>
>    o  A linear ring is a closed LineString with four or more positions.
>
>    o  The first and last positions are equivalent, and they MUST contain
>       identical values; their representation SHOULD also be identical.
>
>    o  A linear ring is the boundary of a surface or the boundary of a
>       hole in a surface.
>
>    o  A linear ring MUST follow the right-hand rule with respect to the
>       area it bounds, i.e., exterior rings are clockwise, and holes are
>       counterclockwise.
>
>    Note: the [GJ2008] specification did not discuss linear ring winding
>    order.  For backwards compatibility, parsers SHOULD NOT reject
>    Polygons that do not follow the right-hand rule.
>
>    Though a linear ring is not explicitly represented as a GeoJSON
>    geometry type, it leads to a canonical formulation of the Polygon
>    geometry type definition as follows:
>
>    o  For type "Polygon", the "coordinates" member MUST be an array of
>       linear ring coordinate arrays.
>
>    o  For Polygons with more than one of these rings, the first MUST be
>       the exterior ring, and any others MUST be interior rings.  The
>       exterior ring bounds the surface, and the interior rings (if
>       present) bound holes within the surface.
>
>
> Notes
> -----
> This is only for the bullet point describing the right-hand rule for linear rings. It seems like the clockwise/counterclockwise descriptions are the opposite of the right-hand rule. Walking an exterior ring in a counterclockwise direction would have the exterior of the ring to the right of the observer.
>
> Instructions:
> -------------
> This erratum is currently posted as "Reported". If necessary, please
> use "Reply All" to discuss whether it should be verified or
> rejected. When a decision is reached, the verifying party
> can log in to change the status and edit the report, if necessary.
>
> --------------------------------------
> RFC7946 (draft-ietf-geojson-04)
> --------------------------------------
> Title               : The GeoJSON Format
> Publication Date    : August 2016
> Author(s)           : H. Butler, M. Daly, A. Doyle, S. Gillies, S. Hagen, T. Schaub
> Category            : PROPOSED STANDARD
> Source              : Geographic JSON
> Area                : Applications and Real-Time
> Stream              : IETF
> Verifying Party     : IESG