Is it intentional that mindatetime/maxdatetime/now don't permit %-encoded parentheses in ABNF?

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Minor
    • V4.0_ERRATA03
    • Affects Version/s: V4.0_OS
    • Component/s: ABNF
    • None
    • Environment:

      [Applied]

    • Hide

      Redefine the maxdatetime/mindatetime/now rules to use OPEN and CLOSE thus permitting %-encoded parentheses.

      Show
      Redefine the maxdatetime/mindatetime/now rules to use OPEN and CLOSE thus permitting %-encoded parentheses.

      See ABNF for year:

      yearMethodCallExpr = 'year' OPEN BWS commonExpr BWS CLOSE

      Then see ABNF for mindatetime/maxdatetime/now:

      minDateTimeMethodCallExpr = 'mindatetime(' BWS ')'
      maxDateTimeMethodCallExpr = 'maxdatetime(' BWS ')'
      nowMethodCallExpr = 'now(' BWS ')'

      Now OPEN and CLOSE are defined as:

      OPEN = "(" / "%28"
      CLOSE = ")" / "%29"

      Thus permitting %-encoded parentheses for most functions except mindatetime/maxdatetime/now.

      If this is intentional, we should explain the rationale.

      If not intentional, then we should fix the ABNF construction rules.

      Applied:
      https://tools.oasis-open.org/version-control/browse/wsvn/odata/trunk/spec/ABNF/odata-abnf-construction-rules.txt?rev=671
      https://tools.oasis-open.org/version-control/browse/wsvn/odata/trunk/spec/ABNF/odata-abnf-testcases.xml?rev=671

            Assignee:
            handl
            Reporter:
            evan.ireland.2
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: