W3C home > Mailing lists > Public > public-webapps@w3.org > July to September 2012

Re: Making <template> play nice with XML and tags-and-text

From: Adam Klein <adamk@chromium.org>
Date: Wed, 18 Jul 2012 11:29:44 -0700
Message-ID: <CAEvLGcKXtG_i26v+LAdZV3OXC+Y1zPsnyM6YGpKcREeoiNBF2g@mail.gmail.com>
To: Adam Barth <w3c@adambarth.com>
Cc: WebApps WG <public-webapps@w3.org>, Henri Sivonen <hsivonen@iki.fi>, Ian Hickson <ian@hixie.ch>, Rafael Weinstein <rafaelw@chromium.org>
On Wed, Jul 18, 2012 at 9:19 AM, Adam Barth <w3c@adambarth.com> wrote:

> Inspired by a conversation with hsivonen in #whatwg, I spend some time
> thinking about how we would design <template> for an XML world.  One idea I
> had was to put the elements inside the template into a namespace other than
> http://www.w3.org/1999/xhtml.

Interesting idea! We considered something like this back before Rafael's
initial email to WebApps but discarded it for reasons discussed below.

One question about your proposal: do the contents of <template> in an HTML
document parse as HTML or XHTML (I'm not as familiar as I should be with
how the contents of <svg> are parsed in HTML)? For example, can I omit
closing </p> tags?

> Unlike the existing "wormhole" <template> semantics, in this approach the
> tags-and-text inside <template> would translate into DOM as usual for XML.
>  We'd get the "inert" behavior for free because we'd avoid defining any
> behavior for elements in the http://www.w3.org/2012/xhtml-templatenamespace (just as no behavior is defined today).

This does get you inertness, but doesn't avoid querySelector matching
elements inside <template>.

Also, the elements inside <template>, though they appear to be HTML,
wouldn't have any of the IDL attributes one might expect, e.g., <a
href="foo"></a> would have no "href" property in JS (nor would <img> have
src, etc). They are, perhaps, too inert.

When combined with the querySelector problem, this seems especially bad,
since jQuery-style invocations would expect everything matching, say,
$('img') to behave the same way (I guess we already have this problem with
SVG <a> tags, but it seems especially weird in a document that one might
think is all-HTML).

- Adam
Received on Wednesday, 18 July 2012 18:30:14 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 18:13:37 UTC