- From: Travis Leithead <travis.leithead@microsoft.com>
- Date: Fri, 11 Nov 2016 01:07:52 +0000
- To: "Hodges, Jeff" <jeff.hodges@paypal.com>, Tab Atkins Jr. <jackalmage@gmail.com>
- CC: "spec-prod@w3.org" <spec-prod@w3.org>, Arron Eicholz <arronei@microsoft.com>
Funny, this hit the W3C HTML spec as well. My case was: https://github.com/travisleithead/html/commit/b59f37a5056dfa1875328d428bcc1ca49d198f53#diff-eb18865acfd94500fe999f8128227ed6 (in response to https://github.com/w3c/html/issues/707) Where an ancestor dfn-for='....' was inheriting down to a <dfn element>...<dfn>. However, it _is_ legitimate for an element to have a for attribute, so I don't see the problem? In the above commit, I fix the issue by moving the ancestor definition to locally-needed terms, but I don't think I should have to do that... -----Original Message----- From: Hodges, Jeff [mailto:jeff.hodges@paypal.com] Sent: Monday, November 7, 2016 4:43 PM To: Tab Atkins Jr. <jackalmage@gmail.com> Cc: spec-prod@w3.org Subject: Re: bikeshed fatal error on 'interface' dfn using 'for' attribute On 11/7/16, 4:24 PM, "Tab Atkins Jr." <jackalmage@gmail.com> wrote: >On Mon, Nov 7, 2016 at 4:19 PM, Hodges, Jeff <jeff.hodges@paypal.com> >wrote: >> oops, s/<dif/<div/g in the below... >> >> On 11/7/16, 3:34 PM, "Tab Atkins Jr." <jackalmage@gmail.com> wrote: >>>Yup, it's some new mistake-catching I put in recently. The error >>>message should be fairly self-explanatory - you probably have an >>>ancestor specifying `dfn-for=Transport` that's accidentally applying >>>to the IDL block. >> >> ok, what you are saying (?) is that we should not be using the >> pattern of... >> >> <!-- begin --> >> ## foo (interface <dfn interface>foo</dfn>) ## {#iface-foo} >> >> <pre class="idl"> >> [SecureContext] >> interface foo { >> readonly attribute USVString bar; >> }; >> </pre> >> >> <div dfn-for="foo"> >> The <dfn>bar</dfn> member specifies... >> </div> >> <!-- end --> >> >> >> ..and we should get rid of all such `<div dfn-for="...">` blocks ? >> >> i.e., the `<div dfn-for="...">` is the "ancestor" applying to the IDL >> block? > >No, I meant "ancestor" in the normal, DOM meaning of the term. Read >the error message again - it's the *interface* definition that's >causing trouble, because you're somehow declaring that it's for >"Transport". Find where in your document the `dfn-for=Transport` is, >and move it to a container that just encloses the definitions you >actually want it to apply to. (This happens a lot if you forgot to >close a <div> somewhere earlier in your document.) thanks. had actually neglected to properly close the <div> that the `dfn-for=Transport` was on. =JeffH
Received on Friday, 11 November 2016 01:08:30 UTC