The hash (#) character is not allowed in search phrases per the ABNF definition

    • Type: Bug
    • Resolution: No Action
    • Priority: Major
    • None
    • Affects Version/s: V4.01_CSD02
    • Component/s: ABNF
    • None
    • Hide

      Clarify that # characters in search phrases have to be percent-encoded because the first clear-text occurrence of the hash character (#) ends the query part of a URL and starts the fragment part, see https://tools.ietf.org/html/rfc3986#section-3.5.

      Show
      Clarify that # characters in search phrases have to be percent-encoded because the first clear-text occurrence of the hash character (#) ends the query part of a URL and starts the fragment part, see https://tools.ietf.org/html/rfc3986#section-3.5 .

      The hash character (#) has meaning in both a URL and in OData so it makes sense that the hash character is not allowed in a search word. I would have expected though that the hash character could be used in a quoted search phrase, but the ABNF definition for search phrase does not include the hash character.

      searchPhrase = quotation-mark 1*qchar-no-AMP-DQUOTE quotation-mark

      qchar-no-AMP-DQUOTE = qchar-unescaped
      / escape ( escape / quotation-mark )

      qchar-unescaped = unreserved / pct-encoded-unescaped / other-delims / ":" / "@" / "/" / "?" / "$" / "'" / "="

      unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"

      other-delims = "!" / "(" / ")" / "*" / "+" / "," / ";"

      None of those definitions include the hash character. Was the hash character left out on purpose? Is the only way to include it to percent encode it?

            Assignee:
            Unassigned
            Reporter:
            Mark Biamonte (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: