[EME] Bug 24673 - Provide guidance on case-sensitivity of content type string checks
authorDavid Dorwin <ddorwin@google.com>
Thu, 24 Apr 2014 17:41:30 -0700
changeset 289 15c3513a59e4
parent 288 5af732159d2e
child 290 b0bde33da46d
[EME] Bug 24673 - Provide guidance on case-sensitivity of content type string checks
encrypted-media/encrypted-media.html
encrypted-media/encrypted-media.xml
--- a/encrypted-media/encrypted-media.html	Thu Apr 24 17:40:27 2014 -0700
+++ b/encrypted-media/encrypted-media.html	Thu Apr 24 17:41:30 2014 -0700
@@ -622,9 +622,9 @@
 
       <li><p>If <var title="true">contentType</var> is an empty string or contains an invalid or unrecognized MIME type, return the <a href="#dom-istypesupportedempty">empty string</a> and abort these steps.</p></li>
       <li><p>Let <var title="true">container</var> be the container type specified by <var title="true">contentType</var>.</p></li>
-      <li><p>Let <var title="true">parameters</var> be the RFC 6381 parameters, if any, specified by <var title="true">contentType</var>.</p></li>
-      <li><p>Let <var title="true">media types</var> be the set of media types specified by <var title="true">parameters</var>. <span class="non-normative">For example, all of the codecs.</span> It may be empty.</p></li>
-      <li><p>If the user agent does not support <var title="true">container</var>, return the <a href="#dom-istypesupportedempty">empty string</a> and abort these steps.</p></li>
+      <li><p>Let <var title="true">parameters</var> be the <a href="http://tools.ietf.org/html/rfc6381">RFC 6381</a> parameters, if any, specified by <var title="true">contentType</var>.</p></li>
+      <li><p>Let <var title="true">media types</var> be the set of media types specified by <var title="true">parameters</var>. <span class="non-normative">(For example, all of the codecs.)</span> It may be empty. The case-sensitivity of string comparisons is determined by the appropriate RFC or other specification. <span class="non-normative">(Case-sensitive string comparison is recommended because <a href="http://tools.ietf.org/html/rfc6381#section-3.3">RFC 6381</a> says, "Values are case sensitive" for some formats.)</span></p></li>
+      <li><p>If the user agent does not support <var title="true">container</var>, return the <a href="#dom-istypesupportedempty">empty string</a> and abort these steps. The case-sensitivity of string comparisons is determined by the appropriate RFC. <span class="non-normative">(Per <a href="http://tools.ietf.org/html/rfc6838#section-4.2">RFC 6838</a>, "Both top-level type and subtype names are case-insensitive.")</span></p></li>
       <li><p>If the user agent and <var title="true">keySystem</var> implementation do not support playback of encrypted <a href="http://www.w3.org/TR/html5/embedded-content-0.html#media-data">media data</a> for all <var title="true">media types</var>, return the <a href="#dom-istypesupportedempty">empty string</a> and abort these steps.</p></li>
       <li>
 <p>If <var title="true">capability</var> was not provided, follow the steps for the first matching condition from the following list and abort these steps:</p>
--- a/encrypted-media/encrypted-media.xml	Thu Apr 24 17:40:27 2014 -0700
+++ b/encrypted-media/encrypted-media.xml	Thu Apr 24 17:41:30 2014 -0700
@@ -592,9 +592,9 @@
 
       <li><p>If <var title="true">contentType</var> is an empty string or contains an invalid or unrecognized MIME type, return the <a href="#dom-istypesupportedempty">empty string</a> and abort these steps.</p></li>
       <li><p>Let <var title="true">container</var> be the container type specified by <var title="true">contentType</var>.</p></li>
-      <li><p>Let <var title="true">parameters</var> be the RFC 6381 parameters, if any, specified by <var title="true">contentType</var>.</p></li>
-      <li><p>Let <var title="true">media types</var> be the set of media types specified by <var title="true">parameters</var>. <span class="non-normative">For example, all of the codecs.</span> It may be empty.</p></li>
-      <li><p>If the user agent does not support <var title="true">container</var>, return the <a href="#dom-istypesupportedempty">empty string</a> and abort these steps.</p></li>
+      <li><p>Let <var title="true">parameters</var> be the <a href="http://tools.ietf.org/html/rfc6381">RFC 6381</a> parameters, if any, specified by <var title="true">contentType</var>.</p></li>
+      <li><p>Let <var title="true">media types</var> be the set of media types specified by <var title="true">parameters</var>. <span class="non-normative">(For example, all of the codecs.)</span> It may be empty. The case-sensitivity of string comparisons is determined by the appropriate RFC or other specification. <span class="non-normative">(Case-sensitive string comparison is recommended because <a href="http://tools.ietf.org/html/rfc6381#section-3.3">RFC 6381</a> says, "Values are case sensitive" for some formats.)</span></p></li>
+      <li><p>If the user agent does not support <var title="true">container</var>, return the <a href="#dom-istypesupportedempty">empty string</a> and abort these steps. The case-sensitivity of string comparisons is determined by the appropriate RFC. <span class="non-normative">(Per <a href="http://tools.ietf.org/html/rfc6838#section-4.2">RFC 6838</a>, "Both top-level type and subtype names are case-insensitive.")</span></p></li>
       <li><p>If the user agent and <var title="true">keySystem</var> implementation do not support playback of encrypted <videoanchor name="media-data">media data</videoanchor> for all <var title="true">media types</var>, return the <a href="#dom-istypesupportedempty">empty string</a> and abort these steps.</p></li>
       <li><p>If <var title="true">capability</var> was not provided, follow the steps for the first matching condition from the following list and abort these steps:</p>
         <dl class="switch">