The current algorithm to determine script type is much clearer.
Remaining comments:
(1) I would further clarify the last paragraph (of
http://www.whatwg.org/specs/web-apps/current-work/#script rule 1)
"Otherwise, the element has a language attribute"
to
"Otherwise, the element has a non-empty language attribute"
(2) Is there any meaning to @language if there is a @type present?
If not, this may be worth making explicit, even beyond just not
listing @language in the content model.
(3) I would include an explicit example of
<script type="" language="mylang">
showing that mylang is ignored, even for an empty (but present) @type.
-jJ