<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.whatwg.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Joeclark</id>
	<title>WHATWG Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.whatwg.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Joeclark"/>
	<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/wiki/Special:Contributions/Joeclark"/>
	<updated>2026-04-07T16:12:48Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Talk:Timed_tracks&amp;diff=4923</id>
		<title>Talk:Timed tracks</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Talk:Timed_tracks&amp;diff=4923"/>
		<updated>2010-06-10T19:10:03Z</updated>

		<summary type="html">&lt;p&gt;Joeclark: /* Contrary to Hixie’s claim, I didn’t make any “mistakes” */ new section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== This will not end well ==&lt;br /&gt;
&lt;br /&gt;
You’re making more than the usual number of mistakes and, given Hixie’s imperviousness to any evidence he doesn’t agree with, your spec will without question end up being so flawed it cannot and will not be used.&lt;br /&gt;
&lt;br /&gt;
== Wheel reinvention? ==&lt;br /&gt;
&lt;br /&gt;
Don&#039;t we already have the [http://www.w3.org/TR/ttaf1-dfxp/ Timed Text] spec for this sort of thing?&lt;br /&gt;
&lt;br /&gt;
== Contrary to Hixie’s claim, I didn’t make any “mistakes” ==&lt;br /&gt;
&lt;br /&gt;
My edits to this spec are based on 30 years’ experience in captioning, which is 30 years more than Hixie has. He knows next to nothing about the topic and his edits, which he glossed as “mistakes” (18:52, 21 April 2010), obliterate known use cases – known, that is, to actual captioning viewers.&lt;br /&gt;
&lt;br /&gt;
I say again: This will not end well. It’s another example of Hixie’s petty tyranny. The only upside is that petty is the only tyranny he can manage.&lt;/div&gt;</summary>
		<author><name>Joeclark</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Talk:Timed_tracks&amp;diff=4646</id>
		<title>Talk:Timed tracks</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Talk:Timed_tracks&amp;diff=4646"/>
		<updated>2010-04-21T18:26:29Z</updated>

		<summary type="html">&lt;p&gt;Joeclark: Created page with &amp;#039;== This will not end well ==  You’re making more than the usual number of mistakes and, given Hixie’s imperviousness to any evidence he doesn’t agree with, your spec will w...&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== This will not end well ==&lt;br /&gt;
&lt;br /&gt;
You’re making more than the usual number of mistakes and, given Hixie’s imperviousness to any evidence he doesn’t agree with, your spec will without question end up being so flawed it cannot and will not be used.&lt;/div&gt;</summary>
		<author><name>Joeclark</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Timed_tracks&amp;diff=4645</id>
		<title>Timed tracks</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Timed_tracks&amp;diff=4645"/>
		<updated>2010-04-21T18:25:22Z</updated>

		<summary type="html">&lt;p&gt;Joeclark: Fixing merely the most obvious errors. Fixing the whole list would take all week&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains notes for the development of the first version of timed track features in HTML.&lt;br /&gt;
&lt;br /&gt;
See also [[use cases for timed tracks rendered over video by the UA]], [[use cases for API-level access to timed tracks]].&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Subtitle/Caption/Karaoke File Format ===&lt;br /&gt;
&lt;br /&gt;
==== Structure ====&lt;br /&gt;
&lt;br /&gt;
* multiple rendered titles&lt;br /&gt;
* per-segment time in/out cues&lt;br /&gt;
* inline time cues for karaoke&lt;br /&gt;
* bidi, newlines, ruby&lt;br /&gt;
* full typographic features&lt;br /&gt;
* positioning&lt;br /&gt;
&lt;br /&gt;
==== Positioning ====&lt;br /&gt;
&lt;br /&gt;
* vertical: top/middle/bottom/absolute/relative (default bottom)&lt;br /&gt;
* horizontal: left/center/right/absolute/relative (default center for subtitles only)&lt;br /&gt;
* text alignment: horizontal text: left, right, center, at tab stop; vertical text: top, middle, bottom, at tab stop&lt;br /&gt;
* display modes: replace previous text, add to previous text, scroll previous text up and add to bottom, paint text on to create single block, clear screen&lt;br /&gt;
&lt;br /&gt;
Multiple voices placed in adjacent places would need to automatically stack so they don&#039;t overlap. Multiple segments with overlapping times would need to be stacked so they don&#039;t overlap.&lt;br /&gt;
&lt;br /&gt;
(Relative positions could work like background-position in CSS.)&lt;br /&gt;
&lt;br /&gt;
==== Typography ====&lt;br /&gt;
&lt;br /&gt;
===== Inline =====&lt;br /&gt;
* horizontal and vertical text directions, with changes of same, must be supported&lt;br /&gt;
* some cases use ruby&lt;br /&gt;
* italics and typeface changes (and, rarely, underlining and small caps) necessary&lt;br /&gt;
&lt;br /&gt;
===== Global =====&lt;br /&gt;
* color (foreground, background mask, drop shadow, outline, other)  is needed for readability on different types of video&lt;br /&gt;
* cannot ship without native ability to create and alter background mask, which is not the largest rectangle that can be drawn around all displayed text&lt;br /&gt;
* Webfonts desirable&lt;br /&gt;
* providing a classname to style each voice could likely be sufficient for authors who want overall formatting control (this would also allow user overrides conveniently)&lt;br /&gt;
&lt;br /&gt;
=== Audio Description ===&lt;br /&gt;
&lt;br /&gt;
Cannot work from the assumption that we are providing only a script for a computer to read out loud, a use case never attempted in the real world. Actual audio descriptions are prerecorded voices mixed into main audio. Redefining the spec to pretend that a script for a computer to read aloud constitutes “audio description” stands to be rejected by actual blind users.&lt;br /&gt;
&lt;br /&gt;
=== Dubbing ===&lt;br /&gt;
&lt;br /&gt;
If our spec defines audio description (added audio track), it must also define dubbing (another added audio track).&lt;br /&gt;
&lt;br /&gt;
=== Combinations ===&lt;br /&gt;
&lt;br /&gt;
All combinations of features must be possible and no combination must be banned. Common use cases include:&lt;br /&gt;
&lt;br /&gt;
* dubbing with captioning&lt;br /&gt;
* dubbing with subtitling&lt;br /&gt;
* captioning with subtitling&lt;br /&gt;
* audio description with dubbing&lt;br /&gt;
* audio description with captioning&lt;br /&gt;
* audio description with subtitling&lt;br /&gt;
&lt;br /&gt;
=== HTML ===&lt;br /&gt;
&lt;br /&gt;
* an API and UI for exposing what timed tracks exist and selectively enabling/disabling them&lt;br /&gt;
&lt;br /&gt;
* format for external subtitles/captions&lt;br /&gt;
* format for external audio description&lt;br /&gt;
* some mechanism for text in the page to be used instead of external files, for subtitles/captions or audio description&lt;br /&gt;
* an API to allow a segment to be dynamically inserted into the rendering on the fly&lt;br /&gt;
&lt;br /&gt;
* an API for exposing what the currently relevant segments of each timed track are&lt;br /&gt;
* a way to hook into this mechanism to advance slides&lt;br /&gt;
&lt;br /&gt;
* native rendering of subtitles&lt;br /&gt;
* native rendering of audio description&lt;br /&gt;
* native rendering of multiple audio or video tracks, to allow pre-recorded audio description to be mixed in and sign language video to be overlaid&lt;br /&gt;
* a way to hook into this to manually render timed tracks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Architecture ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;img src=&amp;quot;http://docs.google.com/drawings/pub?id=1GR6Pzq0GY2n1sx_ZjDfuICM2LnXxLVxzvyl4kuQy-48&amp;amp;w=640&amp;amp;h=480&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Somebody needs to write an alt text for this image.&lt;br /&gt;
&lt;br /&gt;
=== Declaring timed tracks ===&lt;br /&gt;
&lt;br /&gt;
Each timed track is either:&lt;br /&gt;
&lt;br /&gt;
*enabled, in which case it is downloaded, triggers events, and if appropriate is rendered by the user agent; or&lt;br /&gt;
*disabled, in which case it does nothing&lt;br /&gt;
&lt;br /&gt;
The enabled/disabled state is by default based on user preferences and the kind of timed track as described below, but can be overridden on a per-track basis.&lt;br /&gt;
&lt;br /&gt;
Each timed track has a kind which is one of:&lt;br /&gt;
* for visual display (subtitles, captions, translations), enabled based on user preferences, shows in video playback area&lt;br /&gt;
* for audio playback (audio description, dubbing), enabled based on user preferences, renders as audio&lt;br /&gt;
* for navigation (chapter titles), enabled by default, shows in UA UI&lt;br /&gt;
* for off-video display (lyrics), disabled by default in this version, not shown by UA&lt;br /&gt;
* for metadata (slide timings, annotation data for app-rendered annotations), enabled by default, not shown by UA&lt;br /&gt;
&lt;br /&gt;
Tracks that are for visual display or audio playback have additionally a user-facing label and a language.&lt;br /&gt;
&lt;br /&gt;
Tracks that are for visual display have an additional boolean indicating if they include sound effects and speaker identification (intended for the deaf, hard of hearing, or people with sound muted) or not (i.e. translations intended for people with audio enabled but who cannot understand the language, or karaoke lyrics).&lt;br /&gt;
&lt;br /&gt;
Each timed track associated with a media resource, like the media resource itself, can have multiple sources.&lt;br /&gt;
&lt;br /&gt;
Each source for a timed track has:&lt;br /&gt;
* URL&lt;br /&gt;
* type (if there are multiple sources)&lt;br /&gt;
* media&lt;br /&gt;
&lt;br /&gt;
The media resource can also imply certain timed tracks based on data in the media resource.&lt;br /&gt;
&lt;br /&gt;
The script can also add “virtual” timed tracks dynamically.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== CSS extensions for styling captions ===&lt;br /&gt;
&lt;br /&gt;
[TK]&lt;br /&gt;
&lt;br /&gt;
=== DOM API ===&lt;br /&gt;
&lt;br /&gt;
[TK]&lt;br /&gt;
&lt;br /&gt;
=== Other minor things ===&lt;br /&gt;
&lt;br /&gt;
We need to make sure that media playback is paused until all enabled timed tracks are locally available.&lt;br /&gt;
&lt;br /&gt;
== Open issues ==&lt;br /&gt;
&lt;br /&gt;
* How do we handle sign-language tracks?&lt;br /&gt;
* Do we handle multiple alternate audio tracks from this or is that restricted to in-band data? (in the media resource)&lt;/div&gt;</summary>
		<author><name>Joeclark</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Talk:HTML_vs._XHTML&amp;diff=2007</id>
		<title>Talk:HTML vs. XHTML</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Talk:HTML_vs._XHTML&amp;diff=2007"/>
		<updated>2006-12-05T05:07:21Z</updated>

		<summary type="html">&lt;p&gt;Joeclark: table inside p? I think not&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An often repeated assertion is that XHTML is as different from HTML as RDF/XML is from N3.  And that the proper way to tell the two apart is via MIME types.&lt;br /&gt;
&lt;br /&gt;
There are only two problems with that.  XHTML is not as different from HTML as RDF/XML is from N3.  And MIME types can&#039;t be relied on.  Let&#039;s take each in turn.&lt;br /&gt;
&lt;br /&gt;
=== Syntax ===&lt;br /&gt;
&lt;br /&gt;
* Both N3 and RDF/XML are used to express sets of RDF triples.  They are equally capable: every triple store can be dumped into either format.  The analogy here is the DOM.  It is not currently the case that every DOM tree can be dumped equally capably into either format.&lt;br /&gt;
* N3 and RDF/XML are not the same, nor do they even look similar.  They are different from top to bottom.  Not only are no N3 documents valid RDF/XML, there are no individual triples that can be expressed the same way in both formats.&lt;br /&gt;
** You need to explain how RDF/N3 is relevant! --[[User:Lachlan Hunt|Lachlan Hunt]] 04:43, 4 December 2006 (UTC)&lt;br /&gt;
*** The top of this page starts with &amp;quot;An often repeated assertion is that XHTML is as different from HTML as RDF/XML is from N3&amp;quot;.  Need I provide references? -[[User:Rubys|Rubys]] 14:08, 4 December 2006 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Mime Types ===&lt;br /&gt;
&lt;br /&gt;
* People have consistently proven that they can&#039;t be trusted to configure and set MIME types correctly.  Most aren&#039;t even aware that MIME types exist.  The default setup with Apache is to not allow overrides.  One popular use case is for documentation that is served via &amp;lt;code&amp;gt;file:///&amp;lt;/code&amp;gt; URIs directly from your hard disk.&lt;br /&gt;
** &amp;lt;code&amp;gt;file:///&amp;lt;/code&amp;gt; URIs use an OS or browser specific mechanism to determine the MIME.  On Windows, for instance (for IE), the file extension is mapped to a MIME type via a key in the registry. --[[User:Lachlan Hunt|Lachlan Hunt]] 11:16, 4 December 2006 (UTC)&lt;br /&gt;
*** and as such, can rarely be depended upon.  In addition to file extensions, content sniffing is also a common strategy. -[[User:Rubys|Rubys]] 14:12, 4 December 2006 (UTC)&lt;br /&gt;
* HTTP as specified indicates that the the &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; header is authoritative - it trumps the XML prolog.  HTTP as practiced treats the MIME type as a hint.  Whether it be feeds or WMV files, users have an expectation as to what happens when they click on these links, and are unhappy when the browser lets them down.&lt;br /&gt;
** For compatibility, those issues with several file formats do, unfortunately, have to be retained.  However, breaking Content-Type in that way for &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; to somehow allow the content to be treated as XML instead is not an option. --[[User:Lachlan Hunt|Lachlan Hunt]] 11:16, 4 December 2006 (UTC)&lt;br /&gt;
&lt;br /&gt;
It isn&#039;t clear to me (Hixie), however, how the fact that authors can&#039;t set the MIME type properly is supposed to be something we can ever solve from the point of view of the syntax of HTML. The full XML syntax isn&#039;t compatible with HTML parsers, and the full HTML syntax isn&#039;t compatible with XML parsers. The common subset is a tiny language that doesn&#039;t support widely used features like &amp;lt;style&amp;gt; or scripting. We can&#039;t parse text/html files as anything but HTML. The parser used for content sent with XML MIME types is out of scope for the WHATWG specs (it would be up to the XML guys). It isn&#039;t that we WANT the MIME type to be the only way to distinguish the two. It&#039;s that the MIME type IS the only way. It&#039;s a statement of fact, not desire. [[User:Hixie|Hixie]] 18:24, 4 December 2006 (UTC)&lt;br /&gt;
* [http://planet.intertwingly.net/ my planet] is served as &amp;lt;code&amp;gt;application/xhtml+xml&amp;lt;/code&amp;gt; to Firefox and &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; to IE.  It seems to be capable of doing both scripting and style in both modes.  -[[User:Rubys|Rubys]]&lt;br /&gt;
&lt;br /&gt;
=== Ideals ===&lt;br /&gt;
&lt;br /&gt;
In an ideal word:&lt;br /&gt;
* the syntax of XML and HTML would be either complete identical or completely different.&lt;br /&gt;
** The syntax of HTML and XHTML are completely different. The fact that they look similar on the surface is irrelevant. (see above). --[[User:Lachlan Hunt|Lachlan Hunt]] 04:43, 4 December 2006 (UTC)&lt;br /&gt;
*** Completely?  I&#039;d say that they are as different as en-us and en-au.  :-)  -[[User:Rubys|Rubys]]&lt;br /&gt;
* the set of DOM trees that could be serialized as XHTML and HTML would either be completely identical or completely different.&lt;br /&gt;
** This is not possible without breaking backwards compatibility.  These incompatibilities have existed between HTML and XHTML for a long time, and that hasn&#039;t stopped people serialising their XHTML as HTML up until now (for all practical purposes, serving XHTML as text/html is equivalent to reserialising). --[[User:Lachlan Hunt|Lachlan Hunt]] 11:16, 4 December 2006 (UTC)&lt;br /&gt;
* &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; would either always be respected, or always be ignored.&lt;br /&gt;
** &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; is always respected for for HTML and XHTML MIME types.  It&#039;s not for some others, but that&#039;s a different issue --[[User:Lachlan Hunt|Lachlan Hunt]] 11:16, 4 December 2006 (UTC)&lt;br /&gt;
*** Always?  Try serving your feed as text/html to FireFox 2.0.  -[[User:Rubys|Rubys]]&lt;br /&gt;
*** Try serving your feed as text/html to *any browser* with feed support. [[User:Sayrer|Sayrer]]&lt;br /&gt;
* there would either be a fool-proof way to &amp;quot;sniff&amp;quot; whether the a given content was HTML or XHTML; or there would be no difference between XHTML and HTML in terms of syntax and range of DOM trees that could validly be serialized would also be identical.&lt;br /&gt;
** There is a foolproof way... the MIME type. :-) -Hixie&lt;br /&gt;
&lt;br /&gt;
=== Analysis ===&lt;br /&gt;
&lt;br /&gt;
Obviously, the current situation is less than ideal.  XML and HTML evolved from a common ancestor.  XML isn&#039;t changing.  And the constraint to be as backwards compatible with HTML4 as humanly possible places practical limits on what can be done.  Neither being absolutely identical with the XML syntax nor being completely different are options.&lt;br /&gt;
&lt;br /&gt;
At the present time, the HTML5 syntax is a (near) superset of the XHTML syntax.  Yet the situation is (nearly) reversed for the set of DOM trees that can be serialized into XHTML is larger than the set of DOM trees that can be serialized into HTML5.&lt;br /&gt;
&lt;br /&gt;
Having the syntaxes being substantially similar leads to confusion in some edge cases (e.g., &amp;lt;code&amp;gt;&amp;lt;p/&amp;gt;&amp;lt;/code&amp;gt;) but also has some advantages.  Similar syntaxes would make things easier for people who have become disillusioned with XHTML and wish to migrate to HTML5.  Conversely, similar syntaxes would make incremental migration from HTML5 to XHTML5 easier for those who wish to take advantage of the greater set of DOM trees that can be represented in that syntax.&lt;br /&gt;
&lt;br /&gt;
=== Potential Strategies ===&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Note&#039;&#039;&#039;: these strategies are not necessarily mutually-exclusive.&lt;br /&gt;
&lt;br /&gt;
* Develop better tools and actively work to integrate them into products like WordPress and DreamWeaver. (We&#039;re doing this already. -Hixie)&lt;br /&gt;
* The definition of HTML5 understandably and correctly puts a higher weight on HTML4 compatibility than XHTML migration.  But as a migration aid, identify some unlikely/invalid combination (example: use of the HTML5 DOCTYPE combined with &amp;lt;code&amp;gt;xmlns&amp;lt;/code&amp;gt; attribute on the &amp;lt;code&amp;gt;html&amp;lt;/code&amp;gt; element combined with the use of a non-xml MIME type) and adjust some (as of yet undefined) set of the HTML5 parsing rules.&lt;br /&gt;
* Document these differences, either in the spec itself (as a non-normative appendix?) and/or by having a conformance checker flag these differences.  Variations:&lt;br /&gt;
** Ensure that each of these differences triggers a [http://www.whatwg.org/specs/web-apps/current-work/#parse parse error] or equivalent in HTML5; this does not (necessarily) involve changing the recovery action or the way the document is ultimately parsed.&lt;br /&gt;
** Instead of bothering people who may not care about these differences, identify some unlikely combination (such as the DOCTYPE/xmlns/MIME combination above) and have it trigger a &#039;&#039;&#039;pedantic mode&#039;&#039;&#039; which enables these additional checks.&lt;br /&gt;
&lt;br /&gt;
=== table inside p? ===&lt;br /&gt;
&lt;br /&gt;
Do you really mean the following?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
In XHTML, p elements may contain structured inline level elements including blockquote, dl, menu, ol, ul, pre and table&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In what respect are blockquote, dl, menu, ol, ul,  and table “inline,” and how are they allowed inside p?&lt;br /&gt;
– [[User:Joeclark|Joeclark]] 05:07, 5 December 2006 (UTC)&lt;/div&gt;</summary>
		<author><name>Joeclark</name></author>
	</entry>
</feed>