7. BNF Syntax
The syntax element 'URI-reference' is as defined in [RFC3986], except
that only absolute URIs are permitted here. The syntax element
'extmap' is an attribute as defined in [RFC4566].
Extensionattributes are not defined here, but by the specification
that defines a specific extension name; there may be several.
digit = "0"/"1"/"2"/"3"/"4"/"5"/"6"/"7"/"8"/"9"
integer = 1*digit
space = " "
extensionname = URI-reference
direction = "sendonly" / "recvonly" / "sendrecv" / "inactive"
mapentry = "extmap:" integer ["/" direction]
mapattrs = [space extensionattributes]
extmap = mapentry space extensionname mapattrs
There are two serious issues with this. First RFC 4234 is not
referenced to define that your using that type of BNF.
Unless one defines the form of it this exercise is useless as no
parsers pre extension can handle and ignore the extension anyway.
I would propose to rewrite this section to the following:
7. ABNF Syntax
The below syntax definition uses ABNF according to [RFC4234]. The
syntax element 'URI' is as defined in [RFC3986]. The syntax element
'extmap' is an SDP attribute as defined in [RFC4566], i.e "a="
precede the extmap definition.
extmap = mapentry SP extensionname mapattrs
extensionname = URI
URI = <Defined in RFC 3986>
direction = "sendonly" / "recvonly" / "sendrecv" / "inactive"
mapentry = "extmap:" 1*5DIGIT ["/" direction]
mapattrs = *(SP extensionattribute)
extensionattribute = non-ws-string
non-ws-string = <Defined in RFC 4566>
SP = <Defined in RFC 4234>
DIGIT = <Defined in RFC 4234>
Some comments on this ABNF compared to the original one.
1. It limits the number of digits for the temporary identifier to 5,
i.e. up to 16 bits supported if this ever is extended.
2. The extension can now be basically any string as long as it
doesn't contain spaces. In addition there might be multiple
additions with spaces in between them. The alternative would be to
demand a space and then use byte-string (from rfc4566) to allow for
any separators.
3. Uses RFC 4234 base syntax.
4. Uses URI rule instead of URI-Reference so that relative ones are
not possible.
Cheers
Magnus Westerlund
IETF Transport Area Director & TSVWG Chair
----------------------------------------------------------------------
Multimedia Technologies, Ericsson Research EAB/TVM/M
----------------------------------------------------------------------
Ericsson AB | Phone +46 8 4048287
Torshamsgatan 23 | Fax +46 8 7575550
S-164 80 Stockholm, Sweden | mailto: magnus.westerlund at ericsson.com
----------------------------------------------------------------------