[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [OASIS Issue Tracker] Issue Comment Edited: (ODATA-127) Whitespace in URLs must be percent-encoded
[ http://tools.oasis-open.org/issues/browse/ODATA-127?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=31260#action_31260 ] Stefan Drees edited comment on ODATA-127 at 9/26/12 5:13 AM: ------------------------------------------------------------- I second to use the latter approach of defining a separate rule for pct-encoded whitespace. Motivation to **not** change the existing whitespace rule from SP = %x20 HTAB = %x09 WSP = SP / HTAB to SP = %20 HTAB = %09 WSP = SP / HTAB is for me to 1. not irritate by mixing eg. DIGIT = %x30-39 and SP = %20 in one grammar 2. not modify widely used convention for WSP 3. carefully separate character from transport encoding perspectives. I initially proposed (in the former revision of this comment) to amend the resolution by naming the rule ueWS instead of peWS. Reason was: The percentage sign is only a symptom and not the core of the url encoding transformation scenario and I still "feel" better with ueWSP than peWSP but also have to confess, that when I "read the source" in http://tools.ietf.org/html/rfc3986 there is: 2.1. Percent-Encoding A percent-encoding mechanism is used to represent a data octet in a component when that octet's corresponding character is outside the allowed set or is being used as a delimiter of, or within, the component. A percent-encoded octet is encoded as a character triplet, consisting of the percent character "%" followed by the two hexadecimal digits representing that octet's numeric value. For example, "%20" is the percent-encoding for the binary octet "00100000" (ABNF: %x20), which in US-ASCII corresponds to the space character (SP). Section 2.4 describes when percent-encoding and decoding is applied. pct-encoded = "%" HEXDIG HEXDIG The uppercase hexadecimal digits 'A' through 'F' are equivalent to the lowercase digits 'a' through 'f', respectively. If two URIs differ only in the case of hexadecimal digits used in percent-encoded octets, they are equivalent. For consistency, URI producers and normalizers should use uppercase hexadecimal digits for all percent- encodings. End of citation. So naming the new rule peWSP should be perfectly well. was (Author: sdrees): I second to use the latter approach of defining a separate rule for pct-encoded whitespace. Motivation to **not** change the existing whitespace rule from SP = %x20 HTAB = %x09 WSP = SP / HTAB to SP = %20 HTAB = %09 WSP = SP / HTAB is for me to 1. not irritate by mixing eg. DIGIT = %x30-39 and SP = %20 in one grammar 2. not modify widely used convention for WSP 3. carefully separate character from transport encoding perspectives. I initially proposed (in the former revision of this comment) to amend the resolution by naming the rule ueWS instead of peWS. Reason was: The percentage sign is only a symptom and not the core of the url encoding transformation scenario and I still "feel" better with ueWSP than peWSP but also have to confess, that when I "read the source" in http://tools.ietf.org/html/rfc3986 there is: 2.1. Percent-Encoding A percent-encoding mechanism is used to represent a data octet in a component when that octet's corresponding character is outside the allowed set or is being used as a delimiter of, or within, the component. A percent-encoded octet is encoded as a character triplet, consisting of the percent character "%" followed by the two hexadecimal digits representing that octet's numeric value. For example, "%20" is the percent-encoding for the binary octet "00100000" (ABNF: %x20), which in US-ASCII corresponds to the space character (SP). Section 2.4 describes when percent-encoding and decoding is applied. pct-encoded = "%" HEXDIG HEXDIG The uppercase hexadecimal digits 'A' through 'F' are equivalent to the lowercase digits 'a' through 'f', respectively. If two URIs differ only in the case of hexadecimal digits used in percent-encoded octets, they are equivalent. For consistency, URI producers and normalizers should use uppercase hexadecimal digits for all percent- encodings. End of citation. So naming the naming the new rule peWSP should be perfectly well. > Whitespace in URLs must be percent-encoded > ------------------------------------------ > > Key: ODATA-127 > URL: http://tools.oasis-open.org/issues/browse/ODATA-127 > Project: OASIS Open Data Protocol (OData) TC > Issue Type: Sub-task > Components: OData ABNF Construction Rules v1.0 > Affects Versions: WD01 > Environment: [Proposed] > Reporter: Ralf Handl > Priority: Minor > Fix For: WD01 > > > Some ABNF construction rules for URL constituents allow whitespace, e.g. rules contributing to the $filter system query option. Currently these rules use the WSP sub-rule which allows the space and horizontal-tab character. These characters are not allowed in URLs and must be percent-encoded. > So we need to either > - redefine the whitespace rule to > WSP = "%20" / "%09" > or > - define a rule for precent-encoded whitespace > peWS = "%20" / "%09" > and use it in URL-relevant rules. > The latter approach is more explicit and less misleading as the current definition of WSP is a widely used convention -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://tools.oasis-open.org/issues/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]