Re: [apps-discuss] character repertoire for fragment identifiers

<darrel.miller@gmail.com> Mon, 12 January 2015 16:19 UTC

Return-Path: <darrel.miller@gmail.com>
X-Original-To: apps-discuss@ietfa.amsl.com
Delivered-To: apps-discuss@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 830CE1AC3BF for <apps-discuss@ietfa.amsl.com>; Mon, 12 Jan 2015 08:19:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.018
X-Spam-Level:
X-Spam-Status: No, score=-1.018 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, HTML_FONT_FACE_BAD=0.981, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=no
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 Fa4nXclsljEb for <apps-discuss@ietfa.amsl.com>; Mon, 12 Jan 2015 08:19:11 -0800 (PST)
Received: from mail-qa0-x234.google.com (mail-qa0-x234.google.com [IPv6:2607:f8b0:400d:c00::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E2B1E1AC3BA for <apps-discuss@ietf.org>; Mon, 12 Jan 2015 08:19:10 -0800 (PST)
Received: by mail-qa0-f52.google.com with SMTP id x12so11101949qac.11 for <apps-discuss@ietf.org>; Mon, 12 Jan 2015 08:19:10 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:mime-version:from:to:subject:importance:date:in-reply-to :references:content-type; bh=u1/qNhl5eEg/JyP8wuYR/qWD4yUmDZNYQbSgGZUPGQM=; b=n1wFKOYkbVZhJwQrpbMK+jSNMSfT77yC0MUlm5p0kWUvGq9tirp2AcvbwQXZzRqwzc VMa1wcPx2kXT+ZonqA0pHFccYXRzMPWMmVMO5J/VmrnSEnDB/fKF7kQKyHb493fv2ZzT 6QjWuh03OwwsUAovCoUVJPN0UM/V4LGH+ViIPPJvfY94hKLisASYWffTzpSIt1L43BnH HwW7+dUhvbW03SZxkj2JdwotOhHPeDLW3vl6wwUWdGNNCQdNbEyQe840CU/wCub3Q4TU FcjH2CvtU3D/BzxW2f+/2lBKLNnb2kGJNKrkS8d0/O60GsCLtoLw7IwcR9Q6F1PfIiNz bilA==
X-Received: by 10.224.161.81 with SMTP id q17mr44179786qax.34.1421079550091; Mon, 12 Jan 2015 08:19:10 -0800 (PST)
Received: from Pecan (MTRLPQ5031W-LP130-05-1096744000.dsl.bell.ca. [65.94.252.64]) by mx.google.com with ESMTPSA id g60sm15092752qgg.39.2015.01.12.08.19.09 for <apps-discuss@ietf.org> (version=TLSv1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 12 Jan 2015 08:19:09 -0800 (PST)
Message-ID: <54b3f3fd.42208c0a.893a.1fcb@mx.google.com>
MIME-Version: 1.0
From: darrel.miller@gmail.com
To: IETF Apps Discuss <apps-discuss@ietf.org>
Importance: Normal
Date: Mon, 12 Jan 2015 16:03:38 +0000
In-Reply-To: <54B3316B.7040909@intertwingly.net>
References: <20140926010029.26660.82167.idtracker@ietfa.amsl.com> <CACweHNBN_Bv=jeXQ_VwXi2HzHKNEwZJ1NiF-BJJo_9-mhO60gQ@mail.gmail.com> <54A557E1.6050502@intertwingly.net> <CACweHNCQZg1U1u8U=-f6h0+BPnp6Wr_T=r_wGiPAbhTbuMCGWQ@mail.gmail.com> <54A94109.5010901@intertwingly.net> <00cf01d02cc7$d5dba4c0$4001a8c0@gateway.2wire.net> <54B16C2B.9050604@seantek.com> <54B17BBE.4000900@intertwingly.net> <54B18B61.8010308@seantek.com> <54B19435.8070401@intertwingly.net> <54B1B211.3050807@seantek.com> <54B1B682.3070609@intertwingly.net> <54B28E0F.8070306@gmx.de> <54B2936B.7030805@intertwingly.net> <05AD7DE2-1C54-45CD-B33A-13766D771E57@mnot.net> <54B2A2CD.5080502@gmx.de> <1A5BBD25-FEBD-49B1-9EFB-4EF8877BF0E7@mnot.net> <54B2A4F9.2070909@gmx.de> <54B2A894.4020201@intertwingly.net> <54B2ABA8.6030205@gmx.de> <54B2C6FA.80802@intertwingly.net> <54B2EE08.9040705@gmx.de> <54B2F527.7040404@intertwingly.net> <54B2FB76.6040208@gmx.de>,<54B3316B.7040909@intertwingly.net>
Content-Type: multipart/alternative; boundary="_CEB0D8F3-BA03-404F-898A-13D691D8A873_"
Archived-At: <http://mailarchive.ietf.org/arch/msg/apps-discuss/WS_8FYHg3oub-VW_apMYuTaj6bM>
Subject: Re: [apps-discuss] character repertoire for fragment identifiers
X-BeenThere: apps-discuss@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: General discussion of application-layer protocols <apps-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/apps-discuss/>
List-Post: <mailto:apps-discuss@ietf.org>
List-Help: <mailto:apps-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 12 Jan 2015 16:19:12 -0000

> From: Sam Ruby
> 
> Again, it is my hope/expectation that by year end every single one of 
> the parsers that I have looked out (with the possible/probable exception 
> of Perl) will NOT percent encode fragments.
> … 

> 
> I have published a lot of test values that I am looking for people to 
> work through with me.  Cooperation amongst browser vendors in this 
> effort is increasing.  I have yet to find anybody on this list willing 
> to look at this data.



I have looked at the test data.  Specifically I have looked at the comparisons between the .NET framework (csharp) URI parser and the reference implementation.


I’m not sure how you ever expect to obtain a consistent result between a library that returns errors along with a parsed result and one that throws an exception and aborts parsing upon encountering an error.  Is it your expectation that the .Net framework stops throwing exceptions when URI parsing?


Also, regarding escaping of fragment identifiers, in your csharp test program you use Uri.Fragment, which is explicitly documented to return an escaped fragment.  If the developer does not wish the fragment to be escaped then they are free to use,



Uri.GetComponents(UriComponents.Fragment, UriFormat.Unescaped)


Different languages do things in different ways.  Trying get every URL parsing library to behave identically just feels like an ocean boiling exercise. 


Darrel