/irc-logs / freenode / #whatwg / 2007-05-08 / end

Options:

  1. # Session Start: Tue May 08 00:00:00 2007
  2. # Session Ident: #whatwg
  3. # [00:01] * Quits: _Toolskyn (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl) (Connection timed out)
  4. # [00:17] <zcorpan> i'm wondering... to whom are the de jure semantics useful? to those who are writing markup by hand? those who create wysiwyg tools? markup consumers?
  5. # [00:18] * Parts: bewest (n=ben@httpcraft/bewest)
  6. # [00:19] <zcorpan> the two former seem to have ignored de jure semantics to some degree in the past. the third has to operate on how markup is used in the wild in order to get good results (e.g. a definition search with google would have to look at <b> elements and possibly <strong> as well as <dfn>, and perhaps look at just words without markup at all too)
  7. # [00:20] * Joins: bewest (n=ben@httpcraft/bewest)
  8. # [00:21] <zcorpan> in any case, those who write markup by hand are wasting their time if they use spend time on choosing what markup to use if no-one benefits from the distinction in practice
  9. # [00:23] <zcorpan> but catering 100% to markup consumers would probably mean we have to define when a <table> represents tabular data and when it does not
  10. # [00:24] <Philip`> What people are there that make use of semantic markup in HTML already, and are they involved with the HTML WG or could they be invited? It seems hard to discuss use cases when nobody can suggest any that are not totally hypothetical
  11. # [00:26] <zcorpan> hmm, google extracts definitions from the web
  12. # [00:26] <zcorpan> screen readers and browsers in general probably make use of semantic html
  13. # [00:26] <zcorpan> to some extent
  14. # [00:27] <zcorpan> dunno if we have screen reader manufacturers in the wg
  15. # [00:28] <zcorpan> wow, i really have a hard time coming up with who benefits from semantic markup
  16. # [00:28] <othermaciej> Apple makes a screen reader
  17. # [00:28] <othermaciej> (included with the OS)
  18. # [00:28] <jgraham> This is a real problem. Lots of people *really believe* in semantics but don't have convincing use cases that will ever actually be implemented
  19. # [00:29] <zcorpan> othermaciej: ah, right
  20. # [00:29] <jdandrea> Perhaps tbl has a weigh-in? (The semantic web.)
  21. # [00:29] <jgraham> either because the feature is too esoteric or because it requires ~100% of sites to use the markup correctly in order to work
  22. # [00:30] <zcorpan> othermaciej: you know about how it benefits from semantics in html? or whether it differentiates between when an element is what it's supposed to be or not (e.g. table for layout vs data)?
  23. # [00:31] <zcorpan> it seems to me that if we define e.g. how to differentiate between when a table is used for layout or not, it would be easier for screen reader vendors to enter the market
  24. # [00:31] <jdandrea> http://www.w3.org/2001/sw/EO/usecases/byProject.html
  25. # [00:31] <zcorpan> pretty much like defining how to parse broken markup
  26. # [00:31] * jdandrea points to the previous link ... (Does that count?)
  27. # [00:33] * jdandrea realizes it's not about "semantic html" per se
  28. # [00:33] <zcorpan> jdandrea: hmm, looking at the first product description, i can't extract any use-cases
  29. # [00:33] * jdandrea ... and starts wondering if RDF is being confused with HTML (when discussing semantics in the "semantic web" sense)
  30. # [00:34] <jgraham> in general I strongly suspect "serendipitous semantics" work better in the real world e.g. pagerank's use of links
  31. # [00:34] <zcorpan> just that it's increasingly important, but not why it is
  32. # [00:34] <jdandrea> Here's another one: http://tantek.com/presentations/2004etech/realworldsemanticspres.html
  33. # [00:35] <jgraham> jdandrea: your first link seems to be mostly about walled garden content
  34. # [00:35] <zcorpan> i think karl provided some use-cases for metadata before
  35. # [00:35] <jdandrea> jgraham: agreed
  36. # [00:35] * Parts: hasather (n=hasather@81-235-209-174-no62.tbcn.telia.com)
  37. # [00:36] <othermaciej> zcorpan: I don't think it does that much deep analysis if the content - mainly it tried to represent what is on the screen
  38. # [00:37] <jdandrea> Hmm ... what else ... microformats, perhaps?
  39. # [00:37] <zcorpan> othermaciej: ok. thanks
  40. # [00:37] <othermaciej> zcorpan: it works more from the render tree than the DOM
  41. # [00:38] <zcorpan> othermaciej: but does it have a "table navigation" mode like e.g. jaws?
  42. # [00:38] <jgraham> I guess some simple things work e.g. authors who use headings at-all seem to get them right more often than they get them wrong
  43. # [00:39] <othermaciej> however, a way to succinctly describe the purpose of an element would be useful
  44. # [00:39] <jgraham> So you can build a useful tool that works with heading elements
  45. # [00:39] <othermaciej> I thought that was what "role" was for when I first heard about it
  46. # [00:39] <zcorpan> jgraham: depends on what you mean with get them right... if you look at the document outline then most don't get headers right afaict
  47. # [00:39] <othermaciej> we have a concept of "AXRole" in our accessibility API
  48. # [00:39] <othermaciej> I don't think our screen reader does table navigation
  49. # [00:39] <zcorpan> ok
  50. # [00:40] <jgraham> zcorpan: Well that depends on how strictly you interpret the 0 conformance requirements in the HTML4 spec
  51. # [00:40] <zcorpan> jgraham: true, but if you use the implementation that is in the w3c validator for instance
  52. # [00:41] <jgraham> In general you can get some sort of rough tree structure out but there's often problems like all the sidebar headings as a subtree under a content heading
  53. # [00:41] <zcorpan> jgraham: yeah, exactly
  54. # [00:41] <jgraham> because HTML4 used the word "important" and noone understood
  55. # [00:42] * jgraham wonders what would happen if he mentioned that on public-html
  56. # [00:42] <zcorpan> http://sitesurgeon.co.uk/articles/using-heading-numbers.html
  57. # [00:44] <zcorpan> good thing is that if the new sectioning elements are used in a correct way, the document outline will be more or less "correct" regardless of which number you use
  58. # [00:44] <jgraham> Yeah, that article is basically exactly in line with my experience
  59. # [00:45] <jgraham> zcorpan: Indeed, the algorithm was carefully design to have that property iirc
  60. # [00:45] * jgraham must get around to implementing that soon
  61. # [00:46] <jgraham> Anyway the point is heading markup is rarely perfect but it's just-about good enough for simple purposes like providing an in-browser outline of the page
  62. # [00:48] <zcorpan> unless the page uses <h1> for all text on the page...
  63. # [00:48] <zcorpan> ...because keywords in <h1> gives higher ranking in SEs
  64. # [00:48] <jgraham> zcorpan: Not so many pages do that
  65. # [00:48] * jgraham fears the SEOs
  66. # [00:48] <zcorpan> jgraham: i've seen a couple
  67. # [00:48] <zcorpan> they're not that uncommon
  68. # [00:49] <jgraham> Well then a user trying to auto-build a outline would have a very bad experience and probably stop using the site
  69. # [00:49] <jgraham> So perhaps that would be enough incentive to do something sensible
  70. # [00:50] <jgraham> I wonder if google et. al. reject pages with more than x% of the text in headings? It seems like it might be useful
  71. # [00:50] <zcorpan> yeah. same could be said about tables for layout and screen readers, but those are far more common
  72. # [00:51] <zcorpan> jgraham: probably not reject but they might not apply the normal heading processing for heading elements
  73. # [00:52] <jgraham> Ironically according to hsivonen tables for layout works better on small-screen devices than CSS. Small screens are more common than screen readers...
  74. # [00:52] <jgraham> (this is a problem with CSS of course)
  75. # [00:53] <zcorpan> jgraham: yeah, but aiui hsivonen's experience is based on medium-screen devices that use screen media
  76. # [00:53] <zcorpan> jgraham: on mobiles that don't apply css at all or only support a subset of css, divs+css is a better experience than tables
  77. # [00:54] <zcorpan> because on such devices you get columns that are 2-3 characters wide
  78. # [00:54] <zcorpan> with tables
  79. # [00:54] <jgraham> Of course
  80. # [00:55] <jgraham> I can't imagine browsing the web on a phone is anything less than painful
  81. # [00:56] <zcorpan> it can be more or less painful
  82. # [00:56] <jgraham> Anyway, time to sleep, I think :)
  83. # [00:56] <bewest> jgraham: there's no way search engines are going to make features that make the web harder to use
  84. # [00:56] <jgraham> bewest: ?
  85. # [00:56] <bewest> re: (15:47:20) jgraham: I wonder if google et. al. reject pages with more than x% of the text in headings? It seems like it might be useful
  86. # [00:57] <bewest> ie, they won't make pages harder to find because of poor authorship
  87. # [00:57] <jgraham> Oh, I meant as spam filtering. It's a pretty obvious technique to make your page look more important
  88. # [00:58] <zcorpan> jgraham: they're not filtered out
  89. # [00:58] <jgraham> and the search engines compete on quality of results
  90. # [00:58] <bewest> afaik, no one is using compositional techniques as a metric for spam
  91. # [00:58] <bewest> it's way too expensive with not enough benefit, relative to other techniques
  92. # [00:59] <Philip`> There are people who misguidedly put spam-like SEO features on non-spam sites, so you'd want to still include those in the results (but ignore the attempts to artificially increase ranking), rather than just filtering them out
  93. # [01:00] <zcorpan> Philip`: indeed
  94. # [01:01] <jgraham> Sure. Ignoring the obvious spamming techniques but indexing the page would do as well (though it would presumably have _lower_ pagerank than a page that had been "honestly" authored with the same content)
  95. # [01:08] <bewest> best way to combat spam is to never crawl it to begin with
  96. # [01:21] * Quits: billmason (n=billmaso@ip156.unival.com) (".")
  97. # [01:26] * Quits: KevinMarks (i=KevinMar@nat/google/x-be9a4d61c153178d) ("The computer fell asleep")
  98. # [01:43] * Joins: KevinMarks (i=KevinMar@nat/google/x-9210b312909b5c8f)
  99. # [01:52] * tantek_ is now known as tantek
  100. # [01:55] * Quits: mpt (n=mpt@canonical/launchpad/mpt) ("Leaving")
  101. # [01:55] * Quits: dbaron (n=dbaron@banff-72-29-239-177.mycanopy.net) ("8403864 bytes have been tenured, next gc will be global.")
  102. # [01:55] * Quits: MikeSmith (n=MikeSmit@banff-72-29-239-177.mycanopy.net) ("Get thee behind me, satan.")
  103. # [02:09] * Quits: bzed (n=bzed@dslb-084-059-125-008.pools.arcor-ip.net) ("Leaving")
  104. # [02:18] * Joins: karlUshi (n=karl@dhcp-247-62.mag.keio.ac.jp)
  105. # [02:33] * Joins: ajnewbold (n=fax_mach@74-129-102-1.dhcp.insightbb.com)
  106. # [02:56] * Joins: jcgregorio (n=chatzill@adsl-072-148-043-048.sip.rmo.bellsouth.net)
  107. # [03:00] * Parts: zcorpan (n=zcorpan@84-216-41-43.sprayadsl.telenor.se)
  108. # [03:30] * Quits: KevinMarks (i=KevinMar@nat/google/x-9210b312909b5c8f) ("The computer fell asleep")
  109. # [03:37] * Quits: gavin_ (n=gavin@firefox/developer/gavin) ("leaving")
  110. # [03:37] * Joins: gavin_ (n=gavin@people.mozilla.com)
  111. # [03:45] * Quits: othermaciej (i=mjs@nat/apple/x-01269849afcbf8b8)
  112. # [03:47] * Joins: othermaciej (i=mjs@nat/apple/x-e91678feca2778e4)
  113. # [03:50] * Quits: othermaciej (i=mjs@nat/apple/x-e91678feca2778e4) (Read error: 104 (Connection reset by peer))
  114. # [03:50] * Joins: othermaciej_ (i=mjs@nat/apple/x-d46e33fce489b155)
  115. # [04:01] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
  116. # [04:12] * Quits: othermaciej_ (i=mjs@nat/apple/x-d46e33fce489b155) (Read error: 110 (Connection timed out))
  117. # [04:23] * Quits: jruderman (n=jruderma@corp-242.mountainview.mozilla.com)
  118. # [04:32] * Quits: tantek (n=tantek@dsl092-187-033.sfo1.dsl.speakeasy.net)
  119. # [04:35] * Quits: gavin_ (n=gavin@firefox/developer/gavin) (Remote closed the connection)
  120. # [04:35] * Joins: gavin_ (n=gavin@people.mozilla.com)
  121. # [04:43] * Quits: gavin_ (n=gavin@people.mozilla.com) ("leaving")
  122. # [04:43] * Joins: gavin_ (n=gavin@people.mozilla.com)
  123. # [05:07] * Joins: jruderman (n=jruderma@c-67-169-183-228.hsd1.ca.comcast.net)
  124. # [05:48] * Joins: tantek (n=tantek@adsl-69-236-72-64.dsl.pltn13.pacbell.net)
  125. # [05:52] * Quits: tantek (n=tantek@adsl-69-236-72-64.dsl.pltn13.pacbell.net) (Client Quit)
  126. # [05:53] * Quits: ajnewbold (n=fax_mach@unaffiliated/chuangtzu) (Read error: 113 (No route to host))
  127. # [05:54] * Hixie sends his reply to the 76 e-mails in his "INBOX.input-for-whatwg-box-of-sand" folder
  128. # [05:55] <Hixie> annevk: i got a bounce to your mail address:
  129. # [05:55] <Hixie> <fora@annevankesteren.nl>: mail for annevankesteren.nl loops back to myself
  130. # [05:56] * Quits: jdandrea (n=jdandrea@ool-44c0a1fe.dyn.optonline.net)
  131. # [05:58] * Joins: othermaciej (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net)
  132. # [05:59] <Hixie> ok, what's next.?
  133. # [05:59] <Hixie> <datatemplate>, <font>, class=?
  134. # [06:00] <Lachy> what's <datatemplate>?
  135. # [06:00] <Hixie> an idea hyatt and i came up with this afternoon
  136. # [06:01] <othermaciej> my personal requests would be DOMTokenList.toggle() and defining behavior for NaN and +/- Inf for canvas methods that take floats
  137. # [06:01] <Hixie> so class="" then <canvas>
  138. # [06:01] <Hixie> Lachy: basically, xul templates for html, as a replacement for wf2 repetition blocks
  139. # [06:01] <othermaciej> actually any refinements/cleanups to <canvas> would be great for WebKit currently
  140. # [06:02] <Hixie> k i'll look at <canvas> next then
  141. # [06:03] <Lachy> Hixie, Thunderbird thinks your "Sandboxing ideas" email is a scam! :-) (because it contains a URL with an IP address)
  142. # [06:03] <Hixie> hh
  143. # [06:03] <Hixie> hah even
  144. # [06:03] <Hixie> wait, it does?
  145. # [06:03] <Hixie> which one?
  146. # [06:03] <Lachy> <http://209.85.129.104/custom?q=cache:0s8ftW8HviQJ:en.wikipedia.org/wiki/Web_Hypertext_Application_Technology_Working_Group>
  147. # [06:04] <Hixie> oh
  148. # [06:04] <othermaciej> predefined classes have been a point of controversy
  149. # [06:05] <Lachy> yeah, using an _ prefix will resolve the comlaints about clashing
  150. # [06:05] <Hixie> a _ prefix looks dumb
  151. # [06:05] <Hixie> i'm tempted to yank the whole idea
  152. # [06:05] <othermaciej> Hixie: I have a different idea for a sandboxing model but it requires a parsing hack of some sort for HTML (but not XML)
  153. # [06:05] <Lachy> fair enough
  154. # [06:06] <Hixie> othermaciej: oh?
  155. # [06:06] <Hixie> othermaciej: so long as you clearly define the problem you're solving first...
  156. # [06:06] <Hixie> othermaciej: 90% of the proposals were "i have this idea for sandboxing" without even saying what they were trying to solve
  157. # [06:06] <othermaciej> Hixie: I know what problem I'm trying to solve
  158. # [06:06] <othermaciej> I should probably write it up in email
  159. # [06:07] <Hixie> i mean, fixing things without knowing what you're trying to solve is bad enough, but doing that when the issue is a security issue is just stupid
  160. # [06:07] * Hixie grumbles
  161. # [06:07] <Hixie> othermaciej: cool
  162. # [06:07] <Hixie> othermaciej: be sure to read the stuff i wrote at the bottom of the mail
  163. # [06:07] <othermaciej> the problem is allowing sites to embed user-generated content and preventing script, without relying on their checks for script or plugins or the like exactly matching what the UA does
  164. # [06:07] <Hixie> othermaciej: i listed a bunch of things i considered
  165. # [06:07] <othermaciej> yeah, gonna read it first
  166. # [06:07] <Hixie> as well as the attack vectors they fail
  167. # [06:09] <othermaciej> my idea would not remove the need for server-side processing for legacy UAs, but it would allow better security in UAs that implement the feature without breaking legacy UAs
  168. # [06:11] <Hixie> oh look, only 143 e-mails pending for <canvas>
  169. # [06:11] <othermaciej> hmm actually I think your MD5 idea may be more workable than you think
  170. # [06:12] <othermaciej> (although MD5 would not be the best choice of hash)
  171. # [06:12] <Hixie> yeah i just used md5 cos it was easy for me to generate the hashes
  172. # [06:13] <othermaciej> you compute hash incrementally while parsing, and stop at the first instance of </sandbox> where the hash so far matches the open tag
  173. # [06:13] <othermaciej> so there's no DOS attack
  174. # [06:13] <Hixie> that's doomed
  175. # [06:14] <Hixie> you just need to find ONE case where foo</sandbox> has the same hash as foo
  176. # [06:14] <othermaciej> I don't think a brute force attack is feasible, since you need not just an arbitrary collision, but self-prefix collision
  177. # [06:14] <Hixie> er, what i just wrote isn't quite right
  178. # [06:14] <Hixie> but yes
  179. # [06:15] <othermaciej> no, you need one where foo</sandbox>attack-payload has the same hash as foo
  180. # [06:15] <Hixie> the point is, you can generate these up the wazoo
  181. # [06:15] <Hixie> right
  182. # [06:15] <Hixie> it's not like your collision has to be a tough one to find
  183. # [06:15] <othermaciej> I don't think anyone knows how to generate a hash collision for even MD5, meeting those constraints
  184. # [06:15] <Hixie> you need foo</sandbox>bar-baz to collide with foo</sandbox>, where both "foo" and "baz" can be completely controlled
  185. # [06:16] <othermaciej> where foo and foo + FIXED-SUFFIX collide
  186. # [06:16] <othermaciej> actually you need it to collide with just "foo"
  187. # [06:16] <Hixie> er right
  188. # [06:16] <othermaciej> hmm
  189. # [06:16] <Hixie> so "foo" has to collide with "foo"+x+"bar" where foo and bar are arbitrary
  190. # [06:17] <Hixie> and you only ever need to find ONE collision for EVERYONE to be compromised
  191. # [06:17] <othermaciej> I'll have to do the math to see if it's computationally feasible even for a relatively strong hash like SHA-256 or SHA-512
  192. # [06:17] <othermaciej> having both client and server checks is still likely stronger than only a server check
  193. # [06:17] <othermaciej> since then you have to compromise both
  194. # [06:17] <Hixie> when you do that, bear in mind there are upwards of 100,000,000 machines at the disposal of the bad guys to do the work to find the collision
  195. # [06:17] <othermaciej> that would require your hash to also pass server-side sniffing
  196. # [06:18] <Hixie> you know that in due course people will rely on the UAs
  197. # [06:18] <Hixie> wow, a lot of these <canvas> comments are about painting text to the canvas
  198. # [06:21] <othermaciej> so given your estimate of 2^30 machines, to break SHA-512 you'd still need each machine to generate and compute the hash of on average 2^482 random payloads
  199. # [06:21] <Hixie> how do you figure?
  200. # [06:22] <othermaciej> because there are 2^512 different possible SHA-512 hash values
  201. # [06:22] <othermaciej> and there's no known way to generate a collision faster than brute force
  202. # [06:22] <othermaciej> (let alone a collision with chosen plaintext embedded)
  203. # [06:22] <othermaciej> if each compromised machine could generate and hash one message per plack time...
  204. # [06:22] <Hixie> you're not looking for one hash value
  205. # [06:23] <othermaciej> it would take 2^438 seconds to break
  206. # [06:23] <Hixie> you're doing a birthday paradox attack here
  207. # [06:23] <Hixie> it'll be way lower than that
  208. # [06:23] <othermaciej> it's not the case that any hash will do, you need a known plaintext embedded
  209. # [06:24] <othermaciej> you can't use a random collision pair to generate a collision pair with your attack vector embedded
  210. # [06:24] <othermaciej> where one of the pair is a prefix of the other
  211. # [06:25] <Hixie> still seems dodgy to me
  212. # [06:25] <othermaciej> but let's assume a birthday attack will do, arguendo
  213. # [06:26] <othermaciej> birthday attack for N outputs requires 1.2 * sqrt(N) steps on average
  214. # [06:26] <othermaciej> I don't believe a birthday attack is efficiently parallelizable
  215. # [06:28] <Hixie> it's a simple map-reduce, where the map is to generate the hashes given arbitrary input prefixes and suffixes, and the reduce is looking for pairs
  216. # [06:28] <othermaciej> but that would be 2^256 time units, over 2^30 machines generating one per planck time, 2^182 seconds
  217. # [06:28] <Hixie> fair enough
  218. # [06:29] <othermaciej> approximately 10^54 sec
  219. # [06:29] <Hixie> that's a long time
  220. # [06:29] <othermaciej> age of the universe is about 10^17 seconds
  221. # [06:30] <Hixie> fair enough
  222. # [06:30] <othermaciej> I believe you'd need more machines than atoms in the universe, each testing one possibility per planck time, to do it in under the age of the universe
  223. # [06:30] <Hixie> so the question becomes, is calculating the hash one byte or character at a time a perf hit?
  224. # [06:30] <othermaciej> no, I'm wrong, one machine per atom in the galaxy might do it
  225. # [06:30] * Quits: othermaciej (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net)
  226. # [06:31] * Quits: jcgregorio (n=chatzill@adsl-072-148-043-048.sip.rmo.bellsouth.net) ("ChatZilla 0.9.78.1 [Firefox 2.0.0.3/0000000000]")
  227. # [06:32] * Joins: othermaciej (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net)
  228. # [06:33] <othermaciej> one byte at a time might be, but you only need to do the computation when you hit </sandbox>, otherwise you can feed it to the hasher one block at a time (for whatever its block size is)
  229. # [06:33] * Hixie finds a problem with SHA-512
  230. # [06:33] <Hixie> this is what the markup would look like to embed nothing:
  231. # [06:33] <Hixie> <sandbox hash=cf83e135 7eefb8bd f1542850 d66d8007 d620e405 0b5715dc 83f4a921 d36ce9ce 47d0d13c 5d85f2b0 ff8318d2 877eec2f 63b931bd 47417a81 a538327a f927da3e"></sandbox>
  232. # [06:33] <Hixie> that's long.
  233. # [06:34] <Hixie> ah yes, very true
  234. # [06:35] <othermaciej> sha-512 block size is 1024 bits, so 128 characters
  235. # [06:35] <othermaciej> you could fit </sandbox> 12 times in a block if you wanted to maximally hurt parsing speed
  236. # [06:35] <othermaciej> it would probably be something of a speed hit
  237. # [06:35] <Hixie> if you want to DOS there are plenty of ways to do it
  238. # [06:36] <Hixie> that's not really the concern
  239. # [06:37] <othermaciej> using a digital signature might be more effective w/ a smaller hash, since that increases the requirements on the hash, but then the feature would require a public/private keypair to use
  240. # [06:37] <othermaciej> *increases the requirements on the collision
  241. # [06:41] <jruderman> i think it would be saner for sites to switch to tag+attribute whitelists
  242. # [06:41] <Hixie> tag+attribute+value whitelists
  243. # [06:42] <deltab> what if the contained HTML is modified in transit? for instance, PHP adding session IDs to links, or a proxy automatically adding links or translating?
  244. # [06:42] <othermaciej> it doe seem like whitelists obviate the need for this, though you need to in that case parse and re-serialize the content
  245. # [06:42] <othermaciej> *does
  246. # [06:42] <Hixie> deltab: then everything from the <sandbox> to the end of the page gets hidden
  247. # [06:42] <jruderman> othermaciej: yeah
  248. # [06:43] <jruderman> what is <sandbox> supposed to mean? if it's just "no scripts" it leaves spoofing with abs pos open
  249. # [06:43] <othermaciej> now how can we convince myspace to switch to parse-whitelist-reserialize?
  250. # [06:44] <jruderman> othermaciej: by boycotting them
  251. # [06:44] <Hixie> hah
  252. # [06:44] <Hixie> good luck with that
  253. # [06:44] <Hixie> the people you need to have boycott them are the most impressionable and least security-conscious part of society
  254. # [06:44] * othermaciej considers the unique challenges of writing a security treatise for 13-year-olds
  255. # [06:44] <jruderman> we'll start by having geeks boycott them
  256. # [06:45] <jruderman> (i'm joking)
  257. # [06:48] <Hixie> so the problems i see with <sandbox> are that the markup becomes really ugly looking (long hash), the page becomes extremely brittle (even minor changes to the markup can cause the entire rest of the page to become unusable), and that, if it just kills scripts, it doesn't solve a whole bunch of problems like phishing (with forms and css), embedding things like flash which have their own scripting problems, and linking to pages that themselves aren't sandboxes (e.g
  258. # [06:49] <othermaciej> it would have to restrict CSS, form controls, and plugins
  259. # [06:49] <othermaciej> which would possibly make it less than useful
  260. # [06:50] <othermaciej> the iframe solution could get away with not restricting CSS or plugins but does have the ugly markup problem
  261. # [06:50] <Hixie> yeah
  262. # [06:51] <Hixie> maybe we need a way of taking the <iframe>'s contents and putting them in the iframe
  263. # [06:51] <Hixie> <iframe sandbox><p>Hello!</iframe>
  264. # [06:51] <Hixie> (then the contents can't contain the string "</iframe")
  265. # [06:52] <othermaciej> yeah that has the same early close issue
  266. # [06:53] <othermaciej> so btw the idea I had for <sandbox> would not be vulnerable to creating an offline hash collision
  267. # [06:53] <othermaciej> it basically comes down to having a funky close tag syntax
  268. # [06:53] <Hixie> <sandbox tag="ntehoi"> </sandbox tag="ntehoi"> ?
  269. # [06:53] <othermaciej> <sandbox tag="long-random-string-generated-each-time-by-server"> ... </sandbox tag="long-random-string-generated-each-time-by-server">
  270. # [06:53] <othermaciej> yeah
  271. # [06:53] <Hixie> i considered that. figured people wouldn't like that kind of screwing with the parser. i guess i didn't end up putting it in the mail.
  272. # [06:53] <othermaciej> I believe this would fall back as desired in legacy UAs
  273. # [06:54] <Hixie> yeah
  274. # [06:54] <Hixie> in terms of the parsing
  275. # [06:55] * Hixie notes this is the second conversation i've had today with apple employees where they have suggested the parser be hacked to support new stuff :-P
  276. # [06:55] <Hixie> you guys should hear what the other vendors say when i suggest parser changes
  277. # [06:55] <Hixie> sheesh
  278. # [06:56] <othermaciej> what was the other one?
  279. # [06:56] <othermaciej> I guess their parsers are even scarier than ours
  280. # [06:56] <Hixie> hyatt was suggesting a new parse mode for the <datatemplate> idea
  281. # [06:56] <Hixie> probably will take that idea
  282. # [06:57] <Hixie> once i've dealt with the 83 e-mails about <canvas> that aren't asking for text output functions
  283. # [06:57] <Hixie> on another note, fips180-2 is a remarkably well-written spec
  284. # [06:57] <Hixie> (the sha spec)
  285. # [06:59] <othermaciej> cryptographers know how to be precise
  286. # [06:59] <Hixie> apparently
  287. # [07:01] <Hixie> hm, a request for dashed lines.
  288. # [07:01] <Hixie> in canvas.
  289. # [07:04] * Hixie says no based on the lack of demand
  290. # [07:07] * jruderman wonders if it's dangerous to say "no based on lack of demand"
  291. # [07:07] <jruderman> are his friends suddenly going to all demand it?
  292. # [07:07] <Hixie> i say "no" to almost everything
  293. # [07:07] <othermaciej> having dashed lines requires the means to define a dash pattern
  294. # [07:07] <Hixie> it's one of the things i wish other spec authors would do :-)
  295. # [07:08] * Hixie looks at svg
  296. # [07:08] <othermaciej> they say yes to things that they afterwords can't explain the use case for
  297. # [07:08] <othermaciej> *afterwards
  298. # [07:10] <jruderman> if they can remember a use case, they include it in the "tiny" profile, right?
  299. # [07:12] <othermaciej> no, the "tiny" profile includes things where they can't
  300. # [07:12] <othermaciej> like the network API
  301. # [07:12] <Hixie> the network API has lots of use cases
  302. # [07:12] <Hixie> they just don't match the API...
  303. # [07:12] <othermaciej> someone asked if a different network API satisfied the same use cases, and they couldn't name what the use cases were
  304. # [07:13] <Hixie> oh hah
  305. # [07:13] <Hixie> that's funny as heck
  306. # [07:13] <Hixie> anyway gotta go home
  307. # [07:13] <othermaciej> laters
  308. # [07:14] <Hixie> while i'm cycling home, consideer: should isPointInPath(x, y) convert x,y to the CTM before comparing it to the path? or should it convert the path via the CTM? or neither? and why?
  309. # [07:14] <Hixie> later
  310. # [08:25] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  311. # [08:31] * Quits: Lachy (n=Lachlan@203-214-143-196.perm.iinet.net.au) (Read error: 60 (Operation timed out))
  312. # [08:32] * Joins: Lachy (n=Lachlan@203-214-143-196.perm.iinet.net.au)
  313. # [08:49] * Joins: icaaq_ (n=icaaaq@c-a237e455.231-7-64736c10.cust.bredbandsbolaget.se)
  314. # [08:53] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  315. # [08:57] * Parts: icaaq_ (n=icaaaq@c-a237e455.231-7-64736c10.cust.bredbandsbolaget.se)
  316. # [09:23] <annevk> Hixie, yes, that address is made dead by my hosting provider...
  317. # [09:23] * annevk will at some point switch to dreamhost for that domain
  318. # [09:25] <jruderman> annevk: if i remove a <link> element that's a titled stylesheet from a document and then put it back in (perhaps by removing the entire head and then putting the entire head back in), is it treated as a "new" stylesheet that goes through the algorithm for determining whether it's enabled, or does it remember whether it was enabled from before?
  319. # [09:26] <jruderman> annevk: i'd kinda prefer it remembering, because i like it when removing a node from a document and putting it back doesn't cause any visual changes
  320. # [09:26] * Joins: bzed (n=bzed@dslb-084-059-104-005.pools.arcor-ip.net)
  321. # [09:26] <jruderman> annevk: but i figured your spec should say and it doesn't seem to say
  322. # [09:26] <annevk> I think it would be "new"
  323. # [09:26] <annevk> you might have made some changes in between or such
  324. # [09:26] <jruderman> hmm
  325. # [09:26] <annevk> but yeah, the spec doesn't say
  326. # [09:27] * annevk has too many specs to edit :(
  327. # [09:27] <jruderman> yeah, making changes to the <link> node while it's out of the document that would complicate things
  328. # [09:27] <annevk> and then there's public-html... I should stop reading that
  329. # [09:27] <jruderman> hehe
  330. # [09:27] <jruderman> +1
  331. # [09:28] <jruderman> ok, i'll just update my "remove node, put it back, see if there are any visual changes" testing thingie to skip files that have scripts tweaking .disabled
  332. # [09:28] <othermaciej> which spec is this?
  333. # [09:29] * Joins: hendry (n=hendry@openmanage.navisite-europe.com)
  334. # [09:29] <jruderman> http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html?rev=1.35#dynamically (i'm not sure how to link to that spec properly)
  335. # [09:30] <othermaciej> CSSOM rides again!
  336. # [09:32] * Joins: MichaelMH (n=Michael@87.254.67.30)
  337. # [09:33] <annevk> the "proper" link is http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html?content-type=text/html;%20charset=utf-8
  338. # [09:33] <annevk> (without the version number but with the cruft that forces it to be UTF-8 as opposed to the default of ISO-8859-1)
  339. # [09:34] <othermaciej> annevk: looks pretty promising just based on what interfaces you put in so far
  340. # [09:35] <annevk> thanks
  341. # [09:43] <Hixie> anne, did you get the feedback from boris about that spec?
  342. # [09:45] <annevk> there's some stuff on www-style I've to look at
  343. # [09:45] <annevk> that you forwarded
  344. # [09:45] <annevk> I integrated changes to method names when they made those in Mozilla's implementation (on my recommendation), apart from that, not yet
  345. # [09:46] <Hixie> it was about changing attributes and how it affects .disabled, iirc
  346. # [09:46] <Hixie> would be nice for the mozilla guys if you could address that relatively soon, i think they're trying to implement it
  347. # [09:50] <annevk> k, on the list
  348. # [09:50] * annevk wonders why the **** he doesn't receive e-mail from W3C lists
  349. # [09:51] * annevk uses lists.w3.org to find about a small continued thread on XHR
  350. # [09:51] <Hixie> heh
  351. # [09:52] * Joins: met_ (n=Hassman@r5bx220.net.upc.cz)
  352. # [09:53] * Quits: karlUshi (n=karl@dhcp-247-62.mag.keio.ac.jp) ("Where dwelt Ymir, or wherein did he find sustenance?")
  353. # [09:54] * Joins: peepo (n=Jay@host81-132-186-246.range81-132.btcentralplus.com)
  354. # [09:55] * Quits: MichaelMH (n=Michael@87.254.67.30) ("Leaving")
  355. # [09:57] <annevk> http://lists.whatwg.org/pipermail/help-whatwg.org/2007-May/000040.html
  356. # [10:00] * Quits: peepo (n=Jay@host81-132-186-246.range81-132.btcentralplus.com) ("later")
  357. # [10:00] <Hixie> yeah, saw that
  358. # [10:01] <Hixie> how unfortunate for them that they didn't send it to the list that i promised to reply to all feedback for
  359. # [10:01] <Lachy> heh
  360. # [10:02] <annevk> :p
  361. # [10:02] <Lachy> just reply and say the web ontology RDF/OWL stuff is planned for HTML6 :-)
  362. # [10:02] <annevk> now you said that I'll threaten to forward it anyway if you don't include the brilliant <di> element :p
  363. # [10:05] <Lachy> does anyone know of any real world, practical use cases for RDF? (except for one of the obsolete versions of RSS)
  364. # [10:07] <Hixie> annevk: oh i wouldn't mind replying to them
  365. # [10:07] * annevk was kidding there :)
  366. # [10:07] <Hixie> i mean, they didn't actually propose anything as far as i can tell
  367. # [10:07] <Hixie> and i don't understand their use case
  368. # [10:07] <Hixie> so it'd be a pretty standard "Thanks for your feedback, I don't understand exactly what problem it is you are trying to solve, could you elaborate?"
  369. # [10:08] <Hixie> anyway i should go to sleep
  370. # [10:08] <Hixie> nn all
  371. # [10:08] <Lachy> good night Hixie
  372. # [10:10] <othermaciej> I think I should find out what an "information architect" does exactly, then I will understand why you might want "an ontology"
  373. # [10:10] <annevk> night
  374. # [10:11] <Lachy> an information architect works on how to organise and structure information on a web stie to make it easy to find, use and access.
  375. # [10:12] <Lachy> I'm not sure how that helps figure out why they would want an ontology though
  376. # [10:13] <annevk> othermaciej, your comments on XHR make sense, I'll add a Conforming XML user agent
  377. # [10:14] <othermaciej> annevk: thanks
  378. # [10:31] * Quits: virtuelv (n=virtuelv@pat-tdc.opera.com) (Read error: 110 (Connection timed out))
  379. # [10:31] * Joins: virtuelv (n=virtuelv@pat-tdc.opera.com)
  380. # [10:32] * Quits: annevk (n=annevk@pat-tdc.opera.com) (Read error: 110 (Connection timed out))
  381. # [10:34] * Joins: ROBOd (n=robod@86.34.246.154)
  382. # [10:50] <virtuelv> heh, http://www.456bereastreet.com/archive/200705/help_keep_accessibility_and_semantics_in_html/
  383. # [10:51] <othermaciej> do it for the kids
  384. # [10:54] <othermaciej> I think there needs to be some pro-HTML5 advocacy action
  385. # [10:55] <virtuelv> "The new spec sounds like "If we make theft legal, crime rates will drop""
  386. # [10:55] <virtuelv> ( http://www.456bereastreet.com/archive/200705/help_keep_accessibility_and_semantics_in_html/#comment29 )
  387. # [10:56] <virtuelv> dunno, but I find 'helpful' suggestions like "Insist that browser vendors implement some kind of error logging for HTML, like iCab does." to be somewhat unintentionally funny
  388. # [10:56] <virtuelv> as a user, I couldn't care less
  389. # [10:56] <virtuelv> and "Insist that error handling for browsers is mentioned far away from the parts of the spec that web developers will read."
  390. # [10:56] <othermaciej> unfortunately few self-styled web standards advocates have moved beyond the smug superiority stage
  391. # [10:56] <virtuelv> no, what those people need is a best practices-document, not a spec
  392. # [10:57] <virtuelv> I almost feel like responding
  393. # [11:15] <jgraham> I liked Roger's comment "I would like draconian error handling" on a page served as text/html...
  394. # [11:18] <othermaciej> heh
  395. # [11:26] * Joins: zcorpan (n=zcorpan@84-216-40-131.sprayadsl.telenor.se)
  396. # [11:28] * Joins: annevk (n=annevk@pat-tdc.opera.com)
  397. # [11:28] <annevk> zcorpan, no need for a reminder
  398. # [11:28] <annevk> I will leave SHOULD level requirements in tact though
  399. # [11:28] <annevk> and have noted at the start that they must follow the steps (unless otherwise noted)
  400. # [11:28] <annevk> which should cover that
  401. # [11:29] <zcorpan> annevk: ok, great
  402. # [11:32] <zcorpan> is Brad "[whatwg] Proposal: Allow block content inside label element" Fults talking through his hat?
  403. # [11:47] * annevk starts receiving fragments of e-mail
  404. # [11:47] * annevk updates XHR meanwhile to beat the comments he already saw in the archives!
  405. # [12:02] * mpt couldn't resist commenting
  406. # [12:04] <mpt> ah, and Lachy talked about all the things I didn't, yay
  407. # [12:05] * annevk thought for a moment that mpt meant commenting on XHR
  408. # [12:05] <mpt> I am (blissfully?) unaware of what XHR is
  409. # [12:05] <mpt> It sounds like some sort of security vulnerability
  410. # [12:06] <annevk> short for XMLHttpRequest
  411. # [12:08] <mpt> ah
  412. # [12:09] <Lachy> mpt, are you refering to my comment on 456bereastreet?
  413. # [12:09] <mpt> yes
  414. # [12:09] <mpt> ("all the things I didn't" was quite a lot, in retrospect;-)
  415. # [12:10] <Lachy> my comment ended up longer than the actual article :-)
  416. # [12:10] <mpt> If it's worth being wrong, it's worth being wrong in such a way that requires much longer to rebut than to state
  417. # [12:11] <annevk> HTML is quite a waste of everyone's time
  418. # [12:11] <mpt> annevk, you'll earn the right to say that *after* XML5 reaches REC
  419. # [12:11] <othermaciej> the WG or the langauge?
  420. # [12:12] <Lachy> the WG
  421. # [12:13] <met_> articles like 456bereastreet explains to mee, why is more and more spam in html wg mailing list
  422. # [12:14] <Lachy> I'm going to try and avoid posting to the list for a few days, which should help reduce the volume of mail since there won't be any arguing with me :-)
  423. # [12:17] <annevk> yeah, I'm sort of doing that too
  424. # [12:17] <annevk> mpt, heh
  425. # [12:18] <annevk> I'll wait until the chairs do something useful
  426. # [12:18] <mpt> which ones?
  427. # [12:18] <othermaciej> htmlwg chairs
  428. # [12:18] <othermaciej> Chris Wilson and Dan Connolly
  429. # [12:19] <mpt> How would that be relevant to XML5?
  430. # [12:19] <othermaciej> I don't think anyone else here is talking about XML5
  431. # [12:20] <mpt> I said "you'll earn the right to say that *after* XML5 reaches REC", and annevk replied "I'll wait until the chairs do something useful"
  432. # [12:21] <annevk> (My reply to mpt was unrelated to the other two sentences which were.)
  433. # [12:21] <annevk> (Sorry for the confusion.)
  434. # [12:21] <mpt> oh.
  435. # [12:21] <annevk> my IRC replying is not often in sync
  436. # [12:31] <Lachy> Philip`, yt?
  437. # [12:50] * Joins: jdandrea (n=jdandrea@ool-44c0a1fe.dyn.optonline.net)
  438. # [12:54] <jdandrea> annevk: Wild pitch here ... WRT standardizing class values (let's say w/o scoping for a moment), would it make any sense to recognize said values _only_ when <!DOCTYPE html> is specified?
  439. # [12:56] * Joins: karlUshi (n=karl@124-144-94-185.rev.home.ne.jp)
  440. # [12:57] <othermaciej> jdandrea: tehnically, what you do when that doctype is not specified is undefined (though the spec is meant to be usable in such cases)
  441. # [12:57] <Dashiva> jdandrea: Intuitively, no. That's basically the same as using a prefix, in either case no existing pages benefit
  442. # [12:57] <othermaciej> it really depends on your use case
  443. # [12:57] <othermaciej> I can see a UI use for class=search
  444. # [12:57] <annevk> jdandrea, I suggested we use that as argument to convince the non-believers
  445. # [12:57] <jdandrea> annevk: ah, ok
  446. # [12:57] <othermaciej> browsers could use it to identify a search form and have a keyboard shortcut to jump to it for instance
  447. # [12:57] <jdandrea> Dashiva: good point
  448. # [12:58] <othermaciej> but I'm not sure what the use case for class="copyright" would be
  449. # [12:58] <annevk> stylistic hook
  450. # [12:58] <jdandrea> othermaciej: understood - in fact that's what we did at my former employer - we even used (drum roll please) ... copyright ... and search ...
  451. # [12:58] <annevk> finding and maybe exposing copyright information for the site
  452. # [12:59] <othermaciej> stylistic hook can exist w/ no help from the spec
  453. # [12:59] <jdandrea> annevk: yes, we used it primarily as a stylistic hook. We also standardized various bits of markup ("containers" if you will) using class names, sometimes on paragraphs, or divs, and so on.
  454. # [12:59] <othermaciej> unless you imagine UAs would hav a default style for it
  455. # [13:00] <othermaciej> I'm not sure about finding copyright info, would that be a browser feature, or something search engines do?
  456. # [13:00] <jdandrea> So in that sense it was for authors - to give them a point of reference when editing other people's markup.
  457. # [13:00] <othermaciej> would class="copyright" do better than heuristics?
  458. # [13:00] <othermaciej> can heuristics check validity of the found data?
  459. # [13:00] <othermaciej> etc
  460. # [13:00] * jdandrea thinks about heuristics ...
  461. # [13:00] <othermaciej> (like checking for the string "Copyright"
  462. # [13:00] <othermaciej> )
  463. # [13:00] <jdandrea> Wouldn't finding &copy; (or the numeric equiv) - exactly ...
  464. # [13:01] <annevk> heuristics is not exactly language neutral
  465. # [13:01] <othermaciej> proper copyright notices have a pretty standard textual form and can readily be identified without markup
  466. # [13:01] <annevk> well, it complicates that
  467. # [13:01] <jdandrea> I might not use the word Copyright though.
  468. # [13:01] <jdandrea> (Copyleft?)
  469. # [13:01] <annevk> but that goes for currently used class names too, I suppose
  470. # [13:01] <jdandrea> CC?
  471. # [13:01] <othermaciej> actually, the standard for how to note a copyright is international
  472. # [13:02] <annevk> the &copy;?
  473. # [13:04] <jdandrea> Or is CC more of a "License" than a copyright (hmm, license ... :) )
  474. # [13:04] <jdandrea> <a rel="license" href="http://creativecommons.org/licenses/by/3.0/">
  475. # [13:04] <jdandrea> (spotted within http://creativecommons.org/about/licenses )
  476. # [13:14] <othermaciej> creative commons licenses are a type of license
  477. # [13:14] <othermaciej> a copyright notice may mention a license
  478. # [13:14] <othermaciej> but they are not really the same thing
  479. # [13:14] <jdandrea> aye
  480. # [13:14] <jdandrea> but they can be mentioned within a copyright - ack
  481. # [13:15] <jdandrea> s/ack/ack'd/
  482. # [13:16] * Parts: annevk (n=annevk@pat-tdc.opera.com)
  483. # [13:18] * Joins: annevk (n=annevk@213.236.208.247)
  484. # [13:20] <annevk> 'Molly Asks You: HTML, hasLayout and The Meaning of “Framework”' you'd think working for MSFT she would get the answer to the second one pretty easily...
  485. # [13:22] <annevk> oh, I should've read the comments
  486. # [13:22] <annevk> she hasn't found the person who knows yet :)
  487. # [13:23] <mpt> The Flickr photo is fantastic though
  488. # [13:25] <Lachy> I think I gave a reasonably accurate answer for the hasLayout question
  489. # [13:25] <Lachy> mpt, what flickr photo?
  490. # [13:26] <Lachy> ah, found it in the comments
  491. # [13:26] <annevk> http://flickr.com/photos/retrocactus/489377466/
  492. # [13:35] <Dashiva> some of the browser vendors have no interest whatsoever in doing anything to make the lives of developers easier (...) pandering to people who can't be bothered to learn how to write HTML properly
  493. # [13:36] <Dashiva> Would be nice if people tried to at least wait with contradicting themselves until the next paragraph
  494. # [13:37] <Lachy> where did that quote come from?
  495. # [13:37] <mpt> Perhaps they mean, "the kind of developers who fetishize validity"
  496. # [13:40] <Lachy> I don't know what could possibly make lives of developers easier, than by being more lenient in what they accept
  497. # [13:41] <mpt> oh, there's lots of things
  498. # [13:41] <Lachy> it makes thier lives too easy, which is why they can get away with mistakes
  499. # [13:41] <mpt> parsimony
  500. # [13:41] <mpt> clarity
  501. # [13:41] <mpt> tools
  502. # [13:41] <Lachy> tools that do what authors want can be provided regardless of what browsers support
  503. # [13:42] <Dashiva> Lachy: It's from the author comment on http://www.456bereastreet.com/archive/200705/browsers_will_treat_all_versions_of_html_as_html_5/
  504. # [13:42] <mpt> Sorry, I confused "than by" with "other than"
  505. # [13:43] <Lachy> ah, no woder I couldn't find it on the maling list :-)
  506. # [13:46] <Lachy> I spoke to Roger on MSN about the issues he has. I think it's just a matter of making people feel more welcomed into the group, watching the tone of our emails, and and trying to clearly explain why some things have to be done the way they are
  507. # [13:46] <Lachy> anyway, I gotta go, back later
  508. # [14:10] * Joins: csarven (n=nevrasc@modemcable081.152-201-24.mc.videotron.ca)
  509. # [14:12] * Joins: _Toolskyn (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl)
  510. # [14:15] <annevk> We need something alongside RFC2119 that defines common web spec terminology
  511. # [14:15] <annevk> such as ascii case-insensitive, case-insensitive, link, etc.
  512. # [14:16] <annevk> (not my idea, btw)
  513. # [14:21] * _Toolskyn is now known as Toolskyn
  514. # [14:21] * Joins: annevk2 (n=annevk@pat-tdc.opera.com)
  515. # [14:29] * Quits: annevk (n=annevk@213.236.208.247) (Read error: 145 (Connection timed out))
  516. # [14:30] * annevk2 totally missed Ian's e-mail on sandboxing between all the other stuff
  517. # [14:30] <annevk2> or maybe I just received it later
  518. # [14:41] <Philip`> Incremental SHA-512 sounds quite unpleasantly slow - you'd have to do a computation (with 80 rounds of stuff) on 1024 bits for every byte you parse, because you can't incrementally compute the 1024-bit blocks. I guess you could fix that by copying rsync and having a cheap incremental checksum (e.g. CRC32) to find a probable end position, and use the strong checksum to verify it, which wouldn't be much harder for people writing server-side code.
  519. # [14:41] <Philip`> Lachy: Good morning
  520. # [14:41] * Joins: jcgregorio (n=chatzill@adsl-072-148-043-048.sip.rmo.bellsouth.net)
  521. # [14:41] <annevk2> having some new attributes on <iframe> seems sort of sane
  522. # [14:41] <annevk2> but it doesn't appear to be entirely backwards compatible
  523. # [14:42] <annevk2> besides that, if implementation have bugs...
  524. # [14:42] <Philip`> <iframe src="data:..."> isn't compatible with IE6/IE7 at all, so it doesn't seem very useful from that perspective
  525. # [14:44] <Philip`> (See e.g. http://canvex.lazyilluminati.com/misc/copyright.html and someone complaining it didn't work in IE)
  526. # [14:45] <annevk2> well, that it's incompatible is actually a good thing here, I think
  527. # [14:45] * Parts: annevk2 (n=annevk@pat-tdc.opera.com)
  528. # [14:45] * Joins: annevk2 (n=annevk@pat-tdc.opera.com)
  529. # [14:46] <annevk2> oops
  530. # [14:46] <annevk2> if backcompat is not a requirement having <sandbox src=>download something better</sandbox> might be better
  531. # [14:47] <Philip`> Apparently it's incompatible in a way that makes download boxes pop up when you try visiting the site in IE7, which means you'd have to do browser-sniffing in order to degrade less ungracefully
  532. # [14:48] <annevk2> i see
  533. # [14:48] <Philip`> though I guess you could also do <iframe src="getadvert.cgi" let-style-through></iframe> and then it'd work alright - it's only the data: that's a problem
  534. # [14:49] <annevk2> yeah, except you don't want the script to access the parent doc
  535. # [14:52] <Lachy> Philip`, can you send me the code you used to run those surveys for the class attribute, and brief instructions on how to use it?
  536. # [14:53] <Lachy> I've got html5lib, just the additional code
  537. # [14:54] <annevk2> maybe that should go into p/html5/ as well?
  538. # [14:54] <annevk2> in some survey directory?
  539. # [14:56] <Philip`> I don't think it'd be entirely trivial to send, since some of it involved manually editing the database to work around broken pages, and the current version ignores a fifth of the pages since they don't serialise to well-formed XML; but I'd be willing to fix it up so the whole process works straightforwardly
  540. # [14:58] <Lachy> yeah, sure, whatever you can do to make it easier to run surveys when we need to
  541. # [14:58] <annevk2> someone should just sit down for a few days and write the C version of html5lib
  542. # [14:59] <annevk2> (someone with actual knowledge of C; I believe it would take me much longer)
  543. # [14:59] <annevk2> then we no longer need silly XML parsers for speed afterwards I hope...
  544. # [15:01] <Philip`> What data structure would the C version parse into? Should it fit onto the end of something like libxml2 so you can use the standard APIs and wrappers and extra features (like XPath and whatever)?
  545. # [15:02] <annevk2> yeah
  546. # [15:03] <annevk2> and hopefully easily usable from Python too...
  547. # [15:10] <met_> annevk2 what about IronPython? and compile html5lib into .NET?
  548. # [15:11] <annevk2> That stuff should speed it up, but I don't think it would do as doing all the hard work in C
  549. # [15:11] * met_ tried to run html5lib under IronPython and it partlyworks
  550. # [15:11] <virtuelv> http://www.intertwingly.net/blog/2007/05/08/Dont-Break-The-Web
  551. # [15:11] <virtuelv> What's up with the html4 example being valid?
  552. # [15:12] * Quits: syp_ (n=syp@lasigpc9.epfl.ch) (Remote closed the connection)
  553. # [15:13] <annevk2> Doesn't <body> require some children?
  554. # [15:13] <annevk2> Doesn't have much to do with breaking the web though
  555. # [15:14] <met_> <html><body /></html> looks nice 8-)
  556. # [15:14] <met_> even with onload="writeSomeBodyContent()"'
  557. # [15:15] <annevk2> oh wait
  558. # [15:15] <annevk2> the .diff files don't show the whole file, duh
  559. # [15:15] <Philip`> It's more "making the web non-conforming" rather than "breaking the web", but seeing as the web is non-conforming anyway that doesn't seem to make much difference
  560. # [15:16] * annevk2 tries to reply from a flaky network
  561. # [15:31] * Quits: dolphinling (n=chatzill@rbpool1-119.shoreham.net) (Read error: 110 (Connection timed out))
  562. # [15:44] * Joins: briansuda (n=briansud@bokd003.rhi.hi.is)
  563. # [15:59] * Joins: met__ (n=Hassman@r5bx220.net.upc.cz)
  564. # [16:18] * Quits: met_ (n=Hassman@r5bx220.net.upc.cz) (Read error: 110 (Connection timed out))
  565. # [16:37] * Joins: dbaron (n=dbaron@banff-72-29-239-177.mycanopy.net)
  566. # [16:38] <annevk2> So his point is that <input size=2> should be conforming?
  567. # [16:38] <annevk2> Whatever...
  568. # [16:41] <wilhelm> I agree with that. <input name='postnummer' size='4'> makes perfect sense..(c:
  569. # [16:42] <annevk2> pattern=[0-9]{4}
  570. # [16:42] <annevk2> and maxlength=4 maybe
  571. # [16:42] * Joins: hasather (n=hasather@81-235-209-174-no62.tbcn.telia.com)
  572. # [16:42] <Philip`> and style="width:4em"?
  573. # [16:43] <Philip`> (but I don't know what CSS unit would match the size attribute)
  574. # [16:43] <Lfe> parsing html5lib into same data structures as libxml2 uses would be neat; then lxml might as well be used as python "frontend"
  575. # [16:43] <annevk2> maybe ch
  576. # [16:44] * Joins: billmason (n=billmaso@ip156.unival.com)
  577. # [16:47] <annevk2> (as in, style=width:4ch}
  578. # [16:47] <mpt> ugh, Safari sniffs those diffs as HTML
  579. # [16:48] <Philip`> Looks like size = em > ch in FF3, and size < em (and ch doesn't exist) in O9
  580. # [16:49] <annevk2> yeah, em is the font-size and ch is the average character width
  581. # [16:49] <annevk2> part of some CSS3 spec
  582. # [16:49] <mpt> I remember the Gecko hackers struggling to figure out what size= meant in IE4 so they could copy it
  583. # [16:50] <Philip`> and size > em in IE6
  584. # [16:51] <Philip`> Oh, actually, it depends on the font
  585. # [16:53] <Philip`> ...and depends in different ways in different browsers
  586. # [16:53] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  587. # [16:53] <Philip`> and size=4 doesn't guarantee that four characters will fit in the box, in any of them
  588. # [16:53] <Philip`> so I guess switching to em would generally work no worse than using size
  589. # [17:00] <annevk2> Apparently there's no specification that defines what happens with <!-- in a script block
  590. # [17:00] <annevk2> bah
  591. # [17:00] <mpt> iirc it was the width of an "e" character or something weird
  592. # [17:00] <mpt> or an "a"
  593. # [17:01] <Philip`> (Links/Lynx don't do very well with CSS-sized input boxes, though)
  594. # [17:02] <Lachy> In IE, it appears that size=n is calculated as: (size=1) + n * increment
  595. # [17:03] <Lachy> where 'increment' is some yet to be determined value
  596. # [17:03] * mpt goes spelunking
  597. # [17:03] <mpt> I think it's the width of an "a" character in MS Sans Serif
  598. # [17:03] <mpt> or in Arial
  599. # [17:04] <mpt> at the relevant size
  600. # [17:07] <Philip`> I get a much wider box if I use size=4 and set the font to Arial compared to setting it to Verdana
  601. # [17:08] <Philip`> which doesn't actually make sense since Verdana's characters are wider than Arial's
  602. # [17:08] <zcorpan> annevk2: yeah, i found out recently too. ecmascript262 should define <!-- to be equivalent to //
  603. # [17:11] <Philip`> What happens when you use some other scripting language and put <!-- in it?
  604. # [17:11] <mpt> https://bugzilla.mozilla.org/show_bug.cgi?id=25657 is somewhat relevant
  605. # [17:12] <Philip`> (VBScript, PerlScript, etc)
  606. # [17:12] * Quits: hendry (n=hendry@openmanage.navisite-europe.com) ("leaving")
  607. # [17:13] <zcorpan> Philip`: if <!-- is a one-liner comment in those languages (like in JS) then it's a one-liner comment... otherwise it's a syntax error or means something else?
  608. # [17:13] <annevk2> zcorpan, is that actually how <!-- works?
  609. # [17:13] <zcorpan> annevk2: yes
  610. # [17:14] <annevk2> except when it's used in some special way?
  611. # [17:14] <zcorpan> what do you mean?
  612. # [17:14] <zcorpan> it's equivalent to //
  613. # [17:14] <annevk2> sorry, what about --> ?
  614. # [17:14] <zcorpan> that's nothing
  615. # [17:14] <zcorpan> syntax error
  616. # [17:15] <mpt> "The solution for this now until a spec decides how buttons must be sized is to have buttons always size in NavQuirks mode." -- https://bugzilla.mozilla.org/show_bug.cgi?id=96630
  617. # [17:15] <zcorpan> that's why you need to use //-->
  618. # [17:15] <zcorpan> CSS has both <!-- and --> though
  619. # [17:19] * mpt can't find the money quote
  620. # [17:20] <mpt> Relatedly, size= can be somewhat semantic
  621. # [17:20] <mpt> e.g. a short account name field, a long passphrase field
  622. # [17:21] <mpt> they hint at the desired length of the input
  623. # [17:21] <zcorpan> mpt: yeah, it says the length of the *expected* input, without putting a restriction
  624. # [17:22] <annevk2> zcorpan, so <!-- alert(1) does not work?
  625. # [17:22] <annevk2> zcorpan, what about the <!-- document.write(1) --> sample in the HTML5 parsing spec?
  626. # [17:23] <zcorpan> annevk2: correct
  627. # [17:23] <zcorpan> the sample also doesn't do anything
  628. # [17:23] <Philip`> Ah, VBScript in IE does seem to treat <!-- always like ' (except when it's in a string) and also does the same for --> when on a line preceded only by whitespace
  629. # [17:24] <zcorpan> you can also use <!-- anywhere where you can use //
  630. # [17:24] <zcorpan> Philip`: cool
  631. # [17:24] * Philip` wonders how it works in PerlScript where you can't even tell what's a string without being a whole Perl interpreter
  632. # [17:24] <zcorpan> didn't think any scripting language treated --> specially
  633. # [17:25] * annevk2 wonders if what zcorpan says actually matches any impl
  634. # [17:25] <zcorpan> annevk2: why don't you try it :)
  635. # [17:25] <zcorpan> this is not specced anywhere
  636. # [17:25] <zcorpan> what i say is what i've found in imps
  637. # [17:26] <annevk2> for instance <script><!--\n<!--\nalert(1)\n-->\n//--></script> does not execute in Opera where it does in other browsers
  638. # [17:26] <annevk2> \n is a newline
  639. # [17:27] <zcorpan> probably because of the --> being a syntax error?
  640. # [17:27] <annevk2> I'm pretty sure Firefox has even more complicated tokenizing to make E4X sort of work for type=text/javascript
  641. # [17:28] <zcorpan> could be, i didn't test it througly
  642. # [17:28] <Philip`> Oh, that's a VBS/JS inconsistency
  643. # [17:28] <zcorpan> just did some alerts with <!-- in different places
  644. # [17:29] <annevk2> hmm
  645. # [17:29] <Philip`> "<!-- alert(1)\nalert(2)\n--> alert(3)" is a syntax error in JS, but runs the alert(2) in VBScript
  646. # [17:29] * annevk2 is now known as annevk
  647. # [17:30] <zcorpan> iirc Hixie and mjs confirmed that <!-- was the same as //
  648. # [17:31] <Philip`> (so I guess in IE's implementation it's up to the scripting engine to fix the HTML-mangled code into something valid for their language, and they don't all quite do it the same)
  649. # [17:31] <annevk> alert(2) runs in Firefox
  650. # [17:31] <annevk> doesn't in Opera and IE7
  651. # [17:31] <annevk> (Firefox2)
  652. # [17:31] <annevk> got to love browsers
  653. # [17:31] <Philip`> Should just make HTML comments in <script> be non-conforming :-)
  654. # [17:32] <annevk> that definitely solves the implementation problem
  655. # [17:32] <annevk> oh, wait!
  656. # [17:32] <zcorpan> leave it undefined!
  657. # [17:33] * Joins: MichaelMH (n=Michael@87.254.67.30)
  658. # [17:33] <MichaelMH> yo
  659. # [17:33] <Philip`> It could help solve the problem for future scripting languages, because those will only be supported in new browsers, and they could just not implement the <!-- stuff for those languages (because there's no content to be compatible with, and because the spec doesn't suggest it's a good thing to do)
  660. # [17:34] <annevk> argh
  661. # [17:36] <MichaelMH> yo phill, you know how you talked about creating a canvas tutorial..?
  662. # [17:36] <annevk> <!--\n<!--\nalert("PASS")\n-->\n-->
  663. # [17:36] <annevk> works in IE and Firefox
  664. # [17:36] <annevk> <!--\n<!--\nalert("PASS")\n-->x\n-->
  665. # [17:36] <annevk> works only in Firefox
  666. # [17:37] <zcorpan> annevk: you should save these tests somewhere... i think mjs were going to bug the ecmascript262 maintainers about defining <!--
  667. # [17:37] <Philip`> MichaelMH: Indeed
  668. # [17:38] <annevk> Someone from Opera will bug the ECMA comittee
  669. # [17:38] <MichaelMH> so.. I was just thinking, today is a fine day for tutorial making
  670. # [17:38] <annevk> It's just not clear they'll accept it
  671. # [17:39] <annevk> It's also not clear what exactly needs to happen
  672. # [17:39] <annevk> but yes, how about /ecmascript/html-comments/ ?
  673. # [17:41] <zcorpan> annevk: that's a good place to put them
  674. # [17:41] * Joins: MikeSmith (n=MikeSmit@banff-72-29-239-177.mycanopy.net)
  675. # [17:42] <MichaelMH> I tryed to write a flash tutorial once. It was a bit ambitious and didn't really happen
  676. # [17:43] * Joins: JonT (n=10hahaha@ti221110a080-12117.bb.online.no)
  677. # [17:44] * Philip` has too much work at the moment to do anything useful, unfortunately :-(
  678. # [17:44] <MichaelMH> also I lacked understanding in several key parts and didn't know the name of stuff. I think I called the color picker the magical color box
  679. # [17:45] * Parts: JonT (n=10hahaha@ti221110a080-12117.bb.online.no)
  680. # [17:46] * Joins: JonT (n=10hahaha@ti221110a080-12117.bb.online.no)
  681. # [17:46] <MichaelMH> Oh ok. I was just wondering about it.
  682. # [17:46] <JonT> Hey
  683. # [17:47] <JonT> that was a test
  684. # [17:47] <MichaelMH> I'm actually have trouble with animations. every part of the mozilla tut is quite simple and easy to follow for newbs but when it comes to the animation bit the code isnt really explained there is just two examples
  685. # [17:50] <annevk> http://tc.labs.opera.com/ecmascript/html-comments/
  686. # [17:50] <JonT> Anne: "Not Found"
  687. # [17:52] <annevk> oh, my initial svn commit failed
  688. # [17:52] <annevk> try again
  689. # [17:52] <Philip`> MichaelMH: Is it the general animation system that's confusing (i.e. having a function to draw one frame, and using setInterval to call it repeatedly) or the bits it's doing inside the drawing function (i.e. changing some values so it draws something different each frame)?
  690. # [17:54] <MichaelMH> well, you see here http://developer.mozilla.org/en/docs/Canvas_tutorial:Basic_animations
  691. # [17:54] <MichaelMH> theres two examples and I just thought a break down of code which says whats going on would be helpful
  692. # [17:56] <MichaelMH> is it supposed to move only on refresh..?
  693. # [17:57] <Philip`> The setInterval('draw()',100); line makes it repeat the draw() function every 100ms, so it'll constantly redraw the image
  694. # [18:00] * Joins: inkbase (i=Miranda@nat/ibm/x-516d56997acee53e)
  695. # [18:01] * Dashiva points out the evil of 'draw()'
  696. # [18:01] * Philip` points out the Edit button on the wiki ;-)
  697. # [18:03] <MichaelMH> um..
  698. # [18:03] <MichaelMH> could somebody make like a really really simple example of like a rectangle being moving or something
  699. # [18:05] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 54 (Connection reset by peer))
  700. # [18:05] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  701. # [18:06] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 104 (Connection reset by peer))
  702. # [18:06] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  703. # [18:08] <Philip`> MichaelMH: Maybe something like <canvas id="c"></canvas><script>var t = 0; function draw() { var ctx = document.getElementById('c').getContext('2d'); t++; if (t > 100) t = 0; var x = t*2; ctx.clearRect(0, 0, 300, 150); ctx.fillRect(x,0,50,50) }; setInterval(draw, 50)</script>
  704. # [18:08] <Philip`> though it's probably better on multiple lines
  705. # [18:08] * Dashiva points out "You have to login to edit pages."
  706. # [18:09] <Philip`> Dashiva: That's why I haven't bothered editing it myself :-)
  707. # [18:09] <Dashiva> :
  708. # [18:09] <Dashiva> )
  709. # [18:11] <MichaelMH> aww brilliant phill. thank you so much
  710. # [18:12] * Parts: JonT (n=10hahaha@ti221110a080-12117.bb.online.no)
  711. # [18:12] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 104 (Connection reset by peer))
  712. # [18:13] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  713. # [18:14] <Philip`> <canvas id="c"></canvas><script>var t = 0; function draw() { var ctx=document.getElementById('c').getContext('2d'); t++; if (t > 100) t = 0; var x = t*2; ctx.save(); ctx.fillStyle = 'white'; ctx.globalAlpha = 0.2; ctx.fillRect(0, 0, 300, 150); ctx.restore(); ctx.fillRect(x, 0, 50, 50)} setInterval(draw, 50)</script> - motion blur
  714. # [18:14] <Philip`> ...and a bug in Opera because the white background turns (250,250,250)
  715. # [18:15] <MichaelMH> I'm a bit confused how you wrote the if statment
  716. # [18:16] * annevk wonders how many issues will be resolved once Kestrel is out
  717. # [18:16] <MichaelMH> its got no curley bits
  718. # [18:16] <Dashiva> annevk: Having to be quiet about it is a drain :)
  719. # [18:17] * Joins: icaaq_ (i=icaaaq@c-a237e455.231-7-64736c10.cust.bredbandsbolaget.se)
  720. # [18:17] <Philip`> MichaelMH: If you only have one statement in the block, then "if (c) s;" is equivalent to "if (c) { s; }"
  721. # [18:18] <Philip`> (but "if (c) s; t;" is equivalent to "if (c) { s; } t;")
  722. # [18:18] <MichaelMH> ah right. I was googling different ways of writing if statements but I couldnt find anything
  723. # [18:19] <MichaelMH> yeah I got that.
  724. # [18:19] <Philip`> It's probably better to keep the braces in so it's less confusing and less likely to go wrong, except when you're trying to write a web page inside the location bar and you want to save some characters
  725. # [18:20] <MichaelMH> but it takes too long. to write a whole extra character. not worth the effor
  726. # [18:22] <MichaelMH> so clear rectangle nukes the canvas? and ctx.fillRect(x,0,50,50) is the new rectangle and x is the new position?
  727. # [18:23] <Philip`> Yep, clearRect makes the area transparent
  728. # [18:23] <MichaelMH> thats wierd. cus if it is clear wouldnt It just mean nothing at all would happen
  729. # [18:23] <Philip`> and fillRect does the drawing like normal, but x is calculated from t, and t is incremented every time draw() is called
  730. # [18:24] <Dashiva> It's important to remember there are no objects on the canvas, just a lot of pixels
  731. # [18:24] <Philip`> clearRect deletes whatever is currently drawn in that area, instead of drawing a new transparent rectangle on top
  732. # [18:25] <Philip`> (You could do the latter via "ctx.fillStyle = 'transparent'; ctx.fillRect(...)", and it would do nothing at all)
  733. # [18:25] <Philip`> (...except I think Opera doesn't do 'transparent' either)
  734. # [18:25] * Parts: icaaq_ (i=icaaaq@c-a237e455.231-7-64736c10.cust.bredbandsbolaget.se)
  735. # [18:28] <MichaelMH> Uh oh! Browser crashed. bad bad things happen if you forget to use clearRect
  736. # [18:29] <Philip`> Uh, that shouldn't happen
  737. # [18:29] <MichaelMH> why?
  738. # [18:29] <Philip`> Could you post an example that breaks?
  739. # [18:29] <Philip`> Browsers are never meant to crash
  740. # [18:30] <MichaelMH> yeah it just crashed again
  741. # [18:30] <MichaelMH> http://www.michaelmh.com/stuff/newbie/Mbad.html
  742. # [18:30] <annevk> Philip`, if you have a list of Opera bugs...
  743. # [18:31] <MichaelMH> it just keeps increasin the M without clearing the old one
  744. # [18:32] <MichaelMH> oh wait
  745. # [18:32] <MichaelMH> it still crashes. I must be doing something else wrong
  746. # [18:33] <MichaelMH> :S
  747. # [18:33] <Philip`> MichaelMH: Ah, it seems to just freeze Firefox rather than actually crashing
  748. # [18:34] <Philip`> The problem is that you're calling ctx.scale() in the first call to draw(), and then you're calling it again in the second draw() without having reset the context back to its original state
  749. # [18:34] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 104 (Connection reset by peer))
  750. # [18:34] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  751. # [18:34] <Philip`> so it's scaling larger and larger every frame, and so the drawn shape keeps getting larger and taking longer to draw
  752. # [18:35] <MichaelMH> ah ic
  753. # [18:35] <Philip`> You should call ctx.save() at the top of draw (just after getting ctx), and then ctx.restore() at the end of it, which will reset everything back to normal
  754. # [18:35] <MichaelMH> so I should set it back to ctx.scale(1,1);?
  755. # [18:36] <MichaelMH> oh ok
  756. # [18:36] <Philip`> scale() is always relative to the current scale, so scale(1,2);scale(1,2) will make it four times as large, and scale(1,1) will never do anything
  757. # [18:38] <Philip`> annevk: I've just got the list at http://canvex.lazyilluminati.com/tests/tests/results.html but they're not all legitimate bugs (since some depend on things the spec doesn't define yet) and I'm trying to add more bits, but then I'm intending to clean up the list and find the actual bugs to report
  758. # [18:39] <annevk> ok, cool
  759. # [18:40] * Quits: Lachy (n=Lachlan@203-214-143-196.perm.iinet.net.au) (Read error: 104 (Connection reset by peer))
  760. # [18:40] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 104 (Connection reset by peer))
  761. # [18:40] <Philip`> (I don't know when I'll have time, but hopefully it'll be before any browser has another major release which entrenches more bugs :-) )
  762. # [18:40] * Joins: Lachy (n=Lachlan@203-214-143-196.perm.iinet.net.au)
  763. # [18:40] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  764. # [18:40] <annevk> your 2d.fillStyle.get.transparent seems to strict
  765. # [18:41] <MichaelMH> alright check out these crazy animation skills: http://www.michaelmh.com/stuff/newbie/M.html
  766. # [18:41] <annevk> rgba(0, 0, 0, 0) is not conforming where rgba(0, 0, 0, 0.0) is...
  767. # [18:41] <annevk> as long as the last argument is zero it should be ok i think
  768. # [18:41] <Philip`> annevk: I'm fairly certain the spec says it has to be 0.0
  769. # [18:41] <annevk> that'd be a bug in the spec
  770. # [18:42] <Philip`> http://canvex.lazyilluminati.com/tests/tests/spec.html#testrefs.2d.colours.getcolour.transparent - "a U+0030 DIGIT ZERO, a U+002E FULL STOP (representing the decimal point), one or more digits in the range 0-9 (U+0030 to U+0039) representing the fractional part of the alpha value"
  771. # [18:42] <Philip`> (so I suppose I should accept 0.00 and 0.000 etc too, but that'd be silly)
  772. # [18:43] <annevk> I don't think accepting those too would be silly...
  773. # [18:44] <MichaelMH> you know what would be cool. if there was a program that you could create wysiwyg canvas stuff then export the code
  774. # [18:44] <Philip`> http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2007-April/010939.html has some comments about how colours are returned
  775. # [18:45] <Philip`> (Opera, Firefox, Safari and the spec all disagree)
  776. # [18:45] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Client Quit)
  777. # [18:46] <Philip`> so I don't think it would hurt at all to fix the spec, if there's a suggestion of what behaviour is best
  778. # [18:46] <annevk> returning an 4-value array makes sense to me
  779. # [18:46] <annevk> i'm pretty sure return values are parsed though
  780. # [18:46] * annevk goes to ask someone
  781. # [18:47] <Philip`> I can't imagine why anyone would parse the return values - those values have to have come from the program in the first place, and then the program can do its own thing to easily access the original data instead of adding a dozen lines with regexps and stuff to parse the values
  782. # [18:48] * Quits: Lachy (n=Lachlan@203-214-143-196.perm.iinet.net.au) ("Leaving")
  783. # [18:48] <Philip`> (except for opera-2dgame's getPixel which you do want to parse, but I think that's not relevant here)
  784. # [18:48] * Joins: Lachy (n=Lachlan@203-214-143-196.perm.iinet.net.au)
  785. # [18:49] <Philip`> ((or at least I want to parse getPixel, so I can use it in the tests, and I guess other people might want to too))
  786. # [18:50] <MichaelMH> yo, you know the little bump in the corner of the M is that my fault or the browsers?
  787. # [18:51] <annevk> as far as our internal usage goes it would be fine to change it
  788. # [18:51] <annevk> people would much prefer a four-value array
  789. # [18:52] <Philip`> MichaelMH: Do you mean in the bottom left corner?
  790. # [18:52] <Philip`> Looks like it might just be too close to the edge, so it gets cut off a bit
  791. # [18:54] * Quits: briansuda (n=briansud@bokd003.rhi.hi.is)
  792. # [18:54] <MichaelMH> top left one
  793. # [18:56] <Philip`> Do you mean the tiny (less than one pixel) bit sticking out the flat top in the top left?
  794. # [18:57] <Philip`> I think that's be because you have a square lineCap, so a little bit of that square sticks out in that corner where you start/end the path
  795. # [18:57] <MichaelMH> ic.
  796. # [18:57] <MichaelMH> I'm not fussed by it. I was just wondering
  797. # [18:58] <MichaelMH> and how can something be less than a pixel
  798. # [18:58] <Philip`> Antialiasing :-)
  799. # [18:58] <MichaelMH> um ic
  800. # [18:59] <Philip`> It's never drawn as solid black - it just adds some grey to the nearest pixel
  801. # [18:59] <MichaelMH> does it?
  802. # [18:59] <Philip`> Look in Opera and zoom in, and you can see the pixels moving between different shades of grey
  803. # [19:00] * Quits: zcorpan (n=zcorpan@84-216-40-131.sprayadsl.telenor.se) (Read error: 104 (Connection reset by peer))
  804. # [19:00] * Joins: zcorpan (n=zcorpan@84-216-40-131.sprayadsl.telenor.se)
  805. # [19:00] <Philip`> (By the way, I think your gradient doesn't work properly in Opera - radial gradients are implemented (and specced) very inconsistently)
  806. # [19:02] * Joins: Toolskyn88 (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl)
  807. # [19:05] <Philip`> (http://canvex.lazyilluminati.com/misc/radial/examples.html)
  808. # [19:07] <Philip`> (At least it works consistently if the start circle has radius 0 and the same centre as the end circle and you don't try to draw anything outside the end circle. Otherwise it's a bit dodgy.)
  809. # [19:08] * Joins: _Toolskyn (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl)
  810. # [19:10] * Joins: ddfreyne (n=ddfreyne@d51A5CE12.access.telenet.be)
  811. # [19:11] * Joins: Toolskyn_ (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl)
  812. # [19:19] * Quits: Toolskyn (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl) (Connection timed out)
  813. # [19:20] * Joins: tantek (n=tantek@dsl092-187-033.sfo1.dsl.speakeasy.net)
  814. # [19:21] * Joins: Tlskyn (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl)
  815. # [19:24] * Joins: dolphinling (n=chatzill@rbpool5-3.shoreham.net)
  816. # [19:25] * Quits: Toolskyn88 (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl) (Connection timed out)
  817. # [19:25] * Joins: Toolskyn88 (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl)
  818. # [19:26] * Quits: Toolskyn88 (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl) (Read error: 104 (Connection reset by peer))
  819. # [19:28] * Quits: _Toolskyn (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl) (Connection timed out)
  820. # [19:29] * Quits: Toolskyn_ (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl) (Connection timed out)
  821. # [19:41] * Quits: Tlskyn (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl) (Connection timed out)
  822. # [19:58] * Joins: KevinMarks (i=KevinMar@nat/google/x-48e59e6efe4c6565)
  823. # [20:09] * Quits: dbaron (n=dbaron@banff-72-29-239-177.mycanopy.net) ("8403864 bytes have been tenured, next gc will be global.")
  824. # [20:22] <annevk> awesome
  825. # [20:22] <annevk> I finally implemented entities
  826. # [20:22] <Dashiva> crongratulation
  827. # [20:23] <jdandrea> huzzah
  828. # [20:23] <annevk> it even handles funny stuff like: '"test":"&test;x"'
  829. # [20:23] <annevk> the result of that is that 16 x characters
  830. # [20:23] <annevk> (as 16 is the recursion limit at the moment, I think it can be a little higher)
  831. # [20:24] <Lachy> annevk, implemented in html5lib?
  832. # [20:24] <annevk> in xml5lib
  833. # [20:24] <Lachy> cool
  834. # [20:24] <annevk> which needs to cope with XML entities which are a tad more complicated than HTML entities
  835. # [20:25] <Hixie> thought you were dropping doctypes?
  836. # [20:25] <annevk> in the end implementing it took like 10 minutes, but I've been thinking about it for a long time
  837. # [20:25] <annevk> Hixie, for conformance I think; I'm not sure if we can drop them completely
  838. # [20:25] * Lachy made some test cases http://lachy.id.au/dev/markup/tests/html5/autofocus/
  839. # [20:26] * Lachy found bug in Opera :-)
  840. # [20:26] <annevk> Hixie, just dropping them would be cool as it would safe us over 42 states in the tokenizer phase :)
  841. # [20:26] <annevk> (and those states even drop some of the things that are no longer relevant such as external references etc.)
  842. # [20:27] <Hixie> ah, you want XML5 to still be used even with content that uses doctypes?
  843. # [20:27] <Hixie> interesting
  844. # [20:27] <Hixie> i guess i don't really know what problem you're trying to solve
  845. # [20:27] <Lachy> there's a lot of XML on the web that uses internal subsets, so it's kind of requred
  846. # [20:28] <Hixie> but is that xml for which we want fallback behaviour?
  847. # [20:28] <annevk> Hixie, I would like to remove namespace well-formedness, but not require yet another parser
  848. # [20:28] <Hixie> for many uses, the draconian handling of xml is mostly the whole point
  849. # [20:28] <Hixie> (e.g. for anything involving financial transactions)
  850. # [20:28] <Hixie> "remove namespace well-formedness"?
  851. # [20:28] <Lachy> for RSS, draconian is bad
  852. # [20:29] <Hixie> xml 1.0 doesn't have namespace well-formedness
  853. # [20:29] <Hixie> and rss doesn't use doctypes and internal subsets
  854. # [20:29] <annevk> Hixie, for financial transations you want to do content validation
  855. # [20:29] * Quits: MikeSmith (n=MikeSmit@banff-72-29-239-177.mycanopy.net) (Read error: 113 (No route to host))
  856. # [20:29] <annevk> Hixie, well-formedness doesn't really matter
  857. # [20:29] <annevk> (given you have a deterministic parser)
  858. # [20:30] <Hixie> depends what you're trying to do
  859. # [20:30] <annevk> XML 1.0 doesn't have namespace well-formedness?
  860. # [20:30] * annevk ponders
  861. # [20:30] <Hixie> xml 1.0 doesn't have namespaces.
  862. # [20:30] <Hixie> nor does xml 1.1 for that matter.
  863. # [20:30] <Lachy> I'm not so sure if liberal parsing would be good for real XHTML. The people who like using it, generally like it for the draconian error handling
  864. # [20:30] <annevk> oh, this would be a superset for XML 1.0, 1.1, Namespaces for XML 1.0, 1.1 and RFC3023
  865. # [20:31] <annevk> and at the moment it's mostly a research project to see how much effort it takes
  866. # [20:31] <Hixie> Lachy: yeah, for xhtml the draconian error handling is half the point
  867. # [20:31] <annevk> so far, not much
  868. # [20:31] <Hixie> annevk: ah
  869. # [20:31] <annevk> XHTML is mostly about integrating with other XML dialects in my mind
  870. # [20:31] * Joins: briansuda (n=briansud@bokd003.rhi.hi.is)
  871. # [20:31] * annevk doesn't really give much about the fussy parsing rules
  872. # [20:32] <Lachy> liberal parsing would be useful for CMSs that accept XHTML markup from users, so that it could clean it up on the back end before it gets sent to the end user
  873. # [20:33] <Philip`> Is someone going to fix JSON too? I assume most implementations have draconian parsing, but the RFC allows parsers to handle non-conforming input in whatever way they fancy
  874. # [20:33] <Lachy> ... and without subjecting users to complicated error messages
  875. # [20:33] <Lachy> RFC for JSON?
  876. # [20:33] <Philip`> Lachy: Shouldn't they use HTML for that?
  877. # [20:33] <annevk> there's an RFC, yes
  878. # [20:34] <Philip`> http://www.ietf.org/rfc/rfc4627.txt
  879. # [20:34] <Hixie> JSON is another example of where i don't see the value of error handling
  880. # [20:34] <Hixie> but anyway
  881. # [20:34] * Hixie goes for lunch
  882. # [20:34] <Lachy> Philip`, it depends on their needs. I want a CMS that uses XML on the back end, and can serialise to HTML on the front
  883. # [20:34] * Quits: briansuda (n=briansud@bokd003.rhi.hi.is) (Client Quit)
  884. # [20:34] * Joins: briansuda (n=briansud@bokd003.rhi.hi.is)
  885. # [20:38] <Philip`> (By the way, it's fun how the standard JS JSON parser lets malicious JSON data modify some variables when you parse it, e.g. with {a:a++} )
  886. # [20:39] <Philip`> Lachy: Couldn't it accept HTML from users, then parse it and serialise as XML to store and process in the back end, then serialise to HTML again later?
  887. # [20:39] <Lachy> it could, but it depends on what the users want
  888. # [20:40] <Philip`> Oh, okay - I suppose if users want liberal XHTML parsing, then support for liberal XHTML parsing would be useful
  889. # [20:41] <Lachy> the problem with using html like that, is that things like this: <p>the is <b>bold<b> but this shouldn't be</p><p>this paragraph will be bold too</p>
  890. # [20:41] <Lachy> if that were to be parsed as HTML, it would be reserialised with many more <b> elements in all subsequent blocks of text, just becuase the user typed <b> instead of </b>
  891. # [20:42] <Philip`> Ah, that makes sense
  892. # [20:43] <MichaelMH> yo.. is canvas competeing with svg?
  893. # [20:43] <Lachy> no
  894. # [20:44] <Lachy> I'm sure there's some articles somewhere that explain what each are good for
  895. # [20:44] <Philip`> Only in a small number of cases
  896. # [20:44] <Philip`> (e.g. PlotKit uses both)
  897. # [20:45] <MichaelMH> Is there any point in knowing how to use both?
  898. # [20:45] <MichaelMH> oh ic
  899. # [20:45] <Philip`> (which isn't really competition but is a situation where they overlap)
  900. # [20:45] <Lachy> in some ways, SVG is better for graphs at the moment, becuase it can include text, whereas canvas needs to have HTML positioned over the top
  901. # [20:46] <Philip`> It's kind of like PNG vs JPEG - depending on what you want, one or the other or both could be useful
  902. # [20:46] <Lachy> there are even some cases where GIF is better than PNG (though, rarely)
  903. # [20:46] <MichaelMH> for what? file size?
  904. # [20:47] <MichaelMH> will text ever be supported in canvas?
  905. # [20:47] <Lachy> yeah, spacer.gif turns out to be much smaller than the equivalent spacer.png :-)
  906. # [20:47] <Lachy> MichaelMH, maybe
  907. # [20:47] <Philip`> It seems quite a few people want text
  908. # [20:47] <MichaelMH> if text was added would it be selectable?
  909. # [20:47] <Lachy> there have even been people hack support for text into it using what they have available, so there seems tob e some use cases
  910. # [20:48] <Lachy> probably not
  911. # [20:48] <Lachy> it would be like txt in a PNG
  912. # [20:48] <MichaelMH> ah ic.
  913. # [20:49] * Philip` hacked in support for text by writing that part of his page with SVG instead
  914. # [20:49] <MichaelMH> whats your site phill?
  915. # [20:49] <Philip`> (Actually, I don't think I would have used canvas text anyway because I wanted control over the font)
  916. # [20:50] <Philip`> (unless canvas text let you download a font to use...)
  917. # [20:50] <Philip`> MichaelMH: http://canvex.lazyilluminati.com/
  918. # [20:50] <MichaelMH> maybe it would be better just to posistion text over the canvas for things like graphs
  919. # [20:52] <MichaelMH> that game looks like it took quite a wee while
  920. # [20:53] <MichaelMH> is that proper 3D? or that "2.5D" stuff?
  921. # [20:54] <Philip`> http://forums.whatwg.org/viewtopic.php?p=138#138 has a suggestion of a forthcoming proposal for drawString, though I'm not sure how much trust should be put into Vlad's schedule estimates given the 3d canvas delays :-)
  922. # [20:54] <Philip`> It's 2.5D, like Duke Nukem 3D and slightly like Doom
  923. # [20:55] <Philip`> (because true 3D is impossibly slow)
  924. # [20:56] <Philip`> (at least without a true 3D canvas :-) )
  925. # [20:58] <Philip`> http://canvex.lazyilluminati.com/misc/photos.html - true 3D, but it won't work unless you compile the web browser yourself
  926. # [20:58] <MichaelMH> is there gonna be a 3d canvas. I remember when reading the tutorial that theres only a 2d part now but 3d may come
  927. # [20:59] * Quits: jruderman (n=jruderma@c-67-169-183-228.hsd1.ca.comcast.net)
  928. # [20:59] <Philip`> There's some experimental work by Mozilla and Opera, both (I believe) based on the OpenGL ES API, so hopefully that'll be worked on and standardised at some point in the future
  929. # [21:00] <hasather> MichaelMH: see http://my.opera.com/WebApplications/blog/show.dml/261474
  930. # [21:00] <MichaelMH> that would be pretty damn cool. Cant see what it would be used for other than games tho
  931. # [21:00] <Philip`> (http://lxr.mozilla.org/mozilla/source/extensions/canvas3d/public/nsICanvasRenderingContextGLES11.idl is the kind of interface it provides)
  932. # [21:02] <MichaelMH> that looks so damn cool
  933. # [21:02] <Philip`> http://canvex.lazyilluminati.com/misc/giraffes.png - that (showing a stream of Flickr photos on a rotating plain) is arguably totally pointless, but at least it's not a game and it benefits from being inside a web browser
  934. # [21:02] <Philip`> *plane
  935. # [21:03] <Philip`> (since the browser provides web access and image downloads, and a user interface)
  936. # [21:04] <Philip`> (and I really wouldn't want to try writing that as a standalone C++ application)
  937. # [21:04] <jgraham> Philip`: So why does your markup analyser thing use .toxml() anyway?
  938. # [21:04] * Quits: ddfreyne (n=ddfreyne@unaffiliated/ddfreyne) ("k lol plz thx bai")
  939. # [21:05] <Philip`> jgraham: So I can parse with html5lib once, save as XML, and then repeatedly re-parse the XML to do analysis stuff without it taking as long to parse each time
  940. # [21:06] <MichaelMH> you can have a music store site with a rip off of that album flick through thing in itunes too
  941. # [21:06] <jgraham> Philip`: could you satisfy that use case by using Pickles?
  942. # [21:08] * jgraham is wondering if some setup involving python, html5lib and XPath would work
  943. # [21:08] <Philip`> jgraham: It sounds like that could work; but also I'm currently 4Suite's XPath to do the analysis, for no exceptionally good reason, and serialising/parsing through XML seems the easiest way to load the tree into 4Suite
  944. # [21:08] <Philip`> (ElementTree's XPath support is far too limited to be of much use)
  945. # [21:09] <MichaelMH> this could be potentially bad.. I don't wanna go to a website in the future for it to say "Sorry this website is for people with the latest graphics cards only, people go buy one here for £££"
  946. # [21:09] <jgraham> Yeah, I've just started looking at XPath modules for python. Maybe I'll see how easy it is to produce 4suite trees from html5lib
  947. # [21:10] <Philip`> http://www.oreillynet.com/onlamp/blog/2005/01/code_respecting_xpath_xml_pyth.html points out some of the modules
  948. # [21:10] <jgraham> Does http://cheeseshop.python.org/pypi/PDIS-XPath/0.3 sound like it would cover enough XPath to meet your needs?
  949. # [21:10] * Quits: briansuda (n=briansud@bokd003.rhi.hi.is)
  950. # [21:10] <Philip`> "pure-Python" makes me worry a little bit about performance :-(
  951. # [21:11] * Quits: othermaciej (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net)
  952. # [21:11] <jgraham> Presumably most of the perf issues will come from the speed of the underlying tree
  953. # [21:11] <zcorpan> someone should figure out how headers="" is implemented in commonly used screen readers
  954. # [21:12] <Philip`> Also it sounds like it doesn't support e.g. following-sibling, which I had been using to look for //*[p/following-sibling::table]
  955. # [21:12] <jgraham> OK that's a good enough reason to look at html5lib->4suite
  956. # [21:13] <Philip`> (given that page says it's limited to self/attribute/child axes, and apparently following-sibling is an axis, whatever that means)
  957. # [21:13] * jgraham finds XPath surprisingly complex
  958. # [21:14] <Philip`> It sounds like libxml2 does XPath but the Python API is rubbish, in which case it wouldn't be great
  959. # [21:15] <Philip`> ...but on that oreillynet page, someone points out lxml.etree which might be nice
  960. # [21:17] * Joins: rubys (n=rubys@cpe-066-057-030-044.nc.res.rr.com)
  961. # [21:17] <Philip`> (I don't really know anything, I've just been messing around with whatever has short enough examples that I can copy and paste :-p )
  962. # [21:18] <rubys> q: (for Hixie or whomever) why is input/@size deprecated?
  963. # [21:19] <Hixie> same reason <table width> is obsolete
  964. # [21:22] <rubys> Is that reason documented somewhere?
  965. # [21:23] <rubys> After a quick scan, I don't see table width mentioned at all.
  966. # [21:26] * Joins: dbaron (n=dbaron@banff-72-29-239-177.mycanopy.net)
  967. # [21:26] <zcorpan> Hixie: as i said earlier in here, i think <input size> is a pragmatic way or saying what the expected input length is, without putting a restriction on the input length
  968. # [21:27] * Joins: MikeSmith (n=MikeSmit@banff-72-29-239-177.mycanopy.net)
  969. # [21:28] <zcorpan> Hixie: so i don't think <input size> should be deprecated/removed/discouraged
  970. # [21:28] <Lachy> I wouldn't mind size being included, it's sometimes easier to use than giving each control an id or class just to set it's size in the CSS
  971. # [21:28] <rubys> alternative to id or class would be a style attribute
  972. # [21:29] <jgraham> I don't mind deprecating size as long as we get the style attribute
  973. # [21:29] <zcorpan> Lachy: i don't see it being purely presentational, i see it as a hint of the expected input length
  974. # [21:29] <Hixie> rubys: no, i don't think the reasons are documented anywhere (other than the mailing list) -- if someone wants to write a design rationale page or set of pages on the wiki, i'd be more than happy to help them
  975. # [21:29] <Lachy> zcorpan, yeah
  976. # [21:29] <jgraham> zcorpan: What type of UA would make use of that feature?
  977. # [21:30] <rubys> i would prefer to keep both size and style. To me the primary benefit of WHATWG is accepting and documenting the web as it exists rather than trying to change it.
  978. # [21:30] <Lachy> jgraham, the information would be conveyed visually to the end user by the length or the control
  979. # [21:30] <zcorpan> jgraham: visual interactive comes to mind, but speech UAs might say "expected input length: 4 characters" or something
  980. # [21:30] <Philip`> jgraham: Links and Lynx use it
  981. # [21:30] <Hixie> rubys: certainly so far there has been a lot of emphasis on making the language better at the same time, and anything that reduces media-dependent coding is imho a good thing
  982. # [21:31] <Hixie> size="" and style="" are both very media-specific
  983. # [21:31] <Hixie> an <input> element might want one size on a phone and another on the desktop, and media-specific css is where that distinction should be
  984. # [21:31] <Hixie> the markup itself, imho, shouldn't try to dictate the presentation
  985. # [21:31] <Lachy> size is the textbox equivalent to rows/cols in textarea.
  986. # [21:32] <jgraham> Philip`: Fair enough. zcorpan: In a visual graphical UA that supports CSS it has no big advantage over style and the disadvantage that the units aren't specified
  987. # [21:32] * Joins: jruderman (n=jruderma@corp-242.mountainview.mozilla.com)
  988. # [21:32] <zcorpan> Hixie: you don't think size="" can be considered a hint of the expected input length?
  989. # [21:32] <jgraham> Do speech browsers use it?
  990. # [21:32] <zcorpan> jgraham: i don't follow about the units part
  991. # [21:33] <zcorpan> jgraham: don't know if they use it, but they could use it
  992. # [21:33] <jgraham> What are the units of size?
  993. # [21:33] <zcorpan> characters
  994. # [21:33] <jgraham> How wide is a character?
  995. # [21:33] <Philip`> That's a reason to specify it, rather than to remove it
  996. # [21:33] * Joins: timblair (n=timblair@host-87-74-129-183.bulldogdsl.com)
  997. # [21:34] <jgraham> Well I agree it should be specified but CSS gives you multiple choices for units
  998. # [21:34] <zcorpan> jgraham: dunno, a graphical UA would probably make it wide enough so that one character fits nicely
  999. # [21:34] <zcorpan> jgraham: or reverse engineer what IE does
  1000. # [21:34] <rubys> zcorpan: good point.
  1001. # [21:34] <jgraham> So one character == The width of a textbox with <input size="1"> in IE ;)
  1002. # [21:34] <zcorpan> jgraham: if you want a width for presentational purposes then sure use css, i'm talking about useful hints to the user
  1003. # [21:35] <zcorpan> jgraham: for the purposes of determinating how wide <input>s with a size attribute should be in graphical UAs, yes
  1004. # [21:35] <jgraham> zcorpan: I'm not sure I come across that many textboxes where I want a hint of the expected length but the input doesn't fit some fixed pattern
  1005. # [21:36] <jgraham> Also, the graphical size has to be well defined for rendering interop
  1006. # [21:36] <jgraham> Er... you just said that. Ignore me :)
  1007. # [21:37] <zcorpan> jgraham: here's one example: http://ln.hixie.ch/
  1008. # [21:37] * rubys notes that input/@size is present on both google.com and ln.hixie.ch
  1009. # [21:39] <zcorpan> rubys: google.com should probably use type="search" instead ;) and css
  1010. # [21:40] * Joins: weinig (n=weinig@cpe-66-108-205-3.nyc.res.rr.com)
  1011. # [21:42] * Quits: mpt (n=mpt@canonical/launchpad/mpt) ("This computer has gone to sleep")
  1012. # [21:42] <Hixie> zcorpan: i don't see the use case for a hint of the expected input length. what's the problem we're trying to solve?
  1013. # [21:42] * Quits: timblair (n=timblair@host-87-74-129-183.bulldogdsl.com)
  1014. # [21:42] <Hixie> Lachy: cols actually matters, since it sets the wrap width for submission wrapping
  1015. # [21:43] <rubys> In my opinion, the only way to make the web "better" is to get browser vendors to agree to no longer implement a feature, simply documenting it as deprecated or getting a conformance checker to flag it will have little benefit.
  1016. # [21:43] * Quits: KevinMarks (i=KevinMar@nat/google/x-48e59e6efe4c6565) ("The computer fell asleep")
  1017. # [21:44] <rubys> Not documenting the behavior will leave the status quo: vendors will reverse engineer each others behavior.
  1018. # [21:44] * Hixie better get cracking on putting <frameset>, <font>, <wbr>, and friends, back into html5 then
  1019. # [21:44] <Hixie> documenting != part of the language
  1020. # [21:44] <Hixie> e.g. the behaviour for <i><b></i></b> is now documented, but it's still non-compliant.
  1021. # [21:44] <Lachy> has <font> been removed?
  1022. # [21:45] <Lachy> ah, not yet
  1023. # [21:45] <Hixie> Lachy: right now it's only allowed for wysiwyg editors. but that's not a stable equilibrium
  1024. # [21:45] <Hixie> i'm thinking we should drop it and put style="" everywhere, i just want to find a way to do that that doesn't make pages full of <div>s with style="" conformant.
  1025. # [21:45] <rubys> documented but non-compliant is a very VERY subtle distinction, and won't likely have much of an affect on the web.
  1026. # [21:46] <Lachy> rubys, by that argument, we should just make everything conformant
  1027. # [21:46] <jgraham> rubys: Depends on how you document it... <plaintext> is documented but non-compliant and most people don't know it even exists
  1028. # [21:46] <Lachy> that would do more harm than good
  1029. # [21:47] <Philip`> Even if something isn't documented in the spec, it will be documented in tutorials and examples and existing content that people copy from, so undocumenting may not have much effect on the web either
  1030. # [21:47] <Lachy> at least documenting in the spec will improve interop
  1031. # [21:48] <rubys> I would be in favor of marking as non-conformant things that actively are known to cause problems. <plaintext> *MIGHT* be in that category, as would nested <b> elements (the one case where <i><b></i></b>actually causes unexpected results).
  1032. # [21:48] * met__ is now known as met_
  1033. # [21:49] <rubys> but declaring things as non-conformant that are widely interoperable and widely used merely causes people to get annoyed and will inhibit adoption.
  1034. # [21:49] <zcorpan> Hixie: the use-case is that the user can easier fill in a form if he knows approximately how much each text field expects
  1035. # [21:50] <Lachy> zcorpan, that use case is already solved with CSS
  1036. # [21:50] <Hixie> rubys: HTML4 already made <font> and <frameset> non-compliant ("deprecated" as they called it) while documenting it -- for authors, even, not implementors
  1037. # [21:50] <Hixie> rubys: how is this different?
  1038. # [21:50] <Philip`> I believe the plan is for everything to be handled the same way by new browsers (by specifying and testing and fixing), in which case nothing would be left that causes problems, and then nothing would be non-conformant
  1039. # [21:50] <zcorpan> Lachy: but size="" could well be exposed in aural UAs too
  1040. # [21:51] <rubys> XHTML2 went further and marked a number of elements as non-conformant, but do we (really* want to continue down that path?
  1041. # [21:51] <Lachy> rubys, look at the recent argument on public-html about <b> and <i>. Can you imagine what would happen if we allowed even more presentational stuff?
  1042. # [21:51] <Lachy> zcorpan, I'd be tempted to believe that if that's what they do already
  1043. # [21:51] <rubys> Lachy: it is *exactly* that discussion which spawned this question.
  1044. # [21:51] <Lachy> but, otherwise, it's just a hypothetical use case
  1045. # [21:51] <zcorpan> Lachy: true
  1046. # [21:52] <rubys> "Let's pick and chose where we want to be picky and choosy" isn't a defensible strategy.
  1047. # [21:52] <Lachy> rubys, why would a discussion with people abusing us for making HTML5 a presentational language, give you the idea for adding more presentational stuff?
  1048. # [21:53] <Lachy> I don't think we're being picky and choosy just where we want to be. We're including features that have actual use cases
  1049. # [21:53] <Lachy> (though, I'm not totally convinced by the use case for <small>)
  1050. # [21:54] <rubys> Either they are right (in which case, lets get rid of <b> and <i>) or they are wrong (in which case, let's keep input/size), but abusing the people who are asking this question (it goes both ways, after all) merely because they came up with a different balance than HTML5 isn't right either.
  1051. # [21:54] <Hixie> there's a mindset problem here
  1052. # [21:54] <Hixie> the whatwg isn't starting from html4 and deciding what should stay and what shouldn't
  1053. # [21:54] <rubys> If it is in use on google.com's front page, no amount of specs or conformance checkers will convince browser vendors otherwise.
  1054. # [21:55] <Hixie> from the start we've had a blank slate, and we're designing the language based on use cases and requirements
  1055. # [21:55] <Hixie> "it's in html4" is not an argument
  1056. # [21:55] <Hixie> rubys: the use of size="" on google.com's home page is far from the greatest standards compliance problem on a google site.
  1057. # [21:55] <rubys> use case: a browser vendor would like to display the page found at http://google.com/.
  1058. # [21:55] <Lachy> google uses a lot of old-style coding, just like a lot of other sites. I don't see how their use of size is particularly relevant
  1059. # [21:56] <jgraham> I believe <i> and <b> have convincing use cases.
  1060. # [21:56] <Hixie> that's a use case for specifying its behaviour, which we will do
  1061. # [21:56] * Joins: othermaciej (n=mjs@netblock-66-245-248-74.dslextreme.com)
  1062. # [21:56] <Hixie> jgraham: and they're in the spec
  1063. # [21:56] <jgraham> I think @size has a semi-convincing use case
  1064. # [21:56] <Hixie> semi-convincing isn't good enough
  1065. # [21:56] <jgraham> Hixie: I know.
  1066. # [21:56] <Hixie> :-)
  1067. # [21:56] <jgraham> Hixie: That's basically my point
  1068. # [21:56] <othermaciej> size attribute on what?
  1069. # [21:57] <Lachy> <input size="">
  1070. # [21:57] <jgraham> If @size is to be included it should have a convincing use case. If there are lots of forms where people need a hint on the length of an input that's a convincing use case
  1071. # [21:57] <jgraham> (to me)
  1072. # [21:57] <jgraham> But I don't think that is the case
  1073. # [22:09] * Quits: weinig (n=weinig@cpe-66-108-205-3.nyc.res.rr.com)
  1074. # [22:14] <jgraham> Gah. lxml.etree doesn't seem to quite work as a drop-in ElementTree replacement :(
  1075. # [22:22] * Joins: Toolskyn (n=toolskyn@adsl-dc-266ef.adsl.wanadoo.nl)
  1076. # [22:23] * Quits: MichaelMH (n=Michael@87.254.67.30) ("Leaving")
  1077. # [22:24] * Quits: othermaciej (n=mjs@netblock-66-245-248-74.dslextreme.com) (Read error: 110 (Connection timed out))
  1078. # [22:26] * Joins: markp (n=mark@adsl-221-79-235.rmo.bellsouth.net)
  1079. # [22:27] * Joins: KevinMarks (i=KevinMar@nat/google/x-01795a98dc4b5191)
  1080. # [22:29] * Joins: graouts (n=antoine@nor75-18-82-241-236-122.fbx.proxad.net)
  1081. # [22:29] <graouts> hi
  1082. # [22:29] <graouts> anyone out here knows what event is fired while the knob of an <input type="range"> is being dragged around?
  1083. # [22:29] * Joins: iMagne (n=magne@ti231210a080-8240.bb.online.no)
  1084. # [22:30] * Quits: dolphinling (n=chatzill@rbpool5-3.shoreham.net) (Read error: 110 (Connection timed out))
  1085. # [22:33] <Hixie> graouts: input, in theory
  1086. # [22:34] * Joins: timblair (n=timblair@host-87-74-129-183.bulldogdsl.com)
  1087. # [22:34] <graouts> right, thanks
  1088. # [22:47] * Quits: ROBOd (n=robod@86.34.246.154) ("http://www.robodesign.ro")
  1089. # [23:02] * Joins: yod (n=ot@banff-72-29-239-177.mycanopy.net)
  1090. # [23:20] * Quits: graouts (n=antoine@nor75-18-82-241-236-122.fbx.proxad.net)
  1091. # [23:26] * Quits: met_ (n=Hassman@r5bx220.net.upc.cz) ("Chemists never die, they just stop reacting.")
  1092. # [23:29] * Joins: weinig (n=weinig@cpe-66-108-205-3.nyc.res.rr.com)
  1093. # [23:35] <Philip`> http://erik.eae.net/archives/2007/05/04/18.42.16/ - ooh, a new ExCanvas
  1094. # [23:37] * Joins: jgraham_ (n=jgraham@85-210-7-238.dsl.pipex.com)
  1095. # [23:42] * Quits: timblair (n=timblair@host-87-74-129-183.bulldogdsl.com)
  1096. # [23:45] <Hixie> this is a funny comment
  1097. # [23:45] <Hixie> http://news.com.com/5208-1045_3-0.html?forumID=1&threadID=24527&messageID=232071&start=0
  1098. # [23:46] <jgraham_> My cluelessness meter just exploded ;)
  1099. # [23:49] * jgraham_ wonders how to fake doctypes and document elements in lxml
  1100. # [23:51] * Joins: othermaciej (i=mjs@nat/apple/x-af9f839b2956ee44)
  1101. # [23:51] * Quits: jgraham (n=jgraham@81-179-116-206.dsl.pipex.com) (Read error: 110 (Connection timed out))
  1102. # [23:52] * Parts: rubys (n=rubys@cpe-066-057-030-044.nc.res.rr.com)
  1103. # Session Close: Wed May 09 00:00:00 2007

The end :)