/irc-logs / freenode / #whatwg / 2008-01-13 / end

Options:

  1. # Session Start: Sun Jan 13 00:00:00 2008
  2. # Session Ident: #whatwg
  3. # [00:03] * Joins: anne-mac (n=annevk@77.163.243.203)
  4. # [00:19] * Joins: doublec (n=Chris_Do@202-74-218-144.ue.woosh.co.nz)
  5. # [00:21] * Quits: MacDome (n=eric@c-69-181-78-198.hsd1.ca.comcast.net)
  6. # [00:24] * Joins: MacDome (n=eric@c-69-181-78-198.hsd1.ca.comcast.net)
  7. # [01:23] * Quits: anne-mac (n=annevk@77.163.243.203) (Read error: 110 (Connection timed out))
  8. # [01:39] * Quits: doublec (n=Chris_Do@202-74-218-144.ue.woosh.co.nz) ("ChatZilla 0.9.79-rdmsoft [XULRunner 1.8.0.9/2006120508]")
  9. # [02:24] * Joins: doublec (n=doublec@203-211-99-90.ue.woosh.co.nz)
  10. # [03:20] * Quits: tndH (i=Rob@87.102.4.60) ("ChatZilla 0.9.79-rdmsoft [XULRunner 1.8.0.9/2006120508]")
  11. # [03:31] * Quits: Lachy (n=Lachlan@cm-84.215.54.100.getinternet.no) ("This computer has gone to sleep")
  12. # [03:36] * weinig is now known as weinig|foods
  13. # [05:02] * Parts: webben (n=benh@91.84.244.69)
  14. # [05:05] * weinig|foods is now known as weinig
  15. # [05:45] * Quits: MacDome (n=eric@c-69-181-78-198.hsd1.ca.comcast.net)
  16. # [05:48] * Joins: MacDome (n=eric@c-69-181-78-198.hsd1.ca.comcast.net)
  17. # [06:02] * Joins: kfish (n=conrad@61.194.21.25)
  18. # [06:04] * MacDome is now known as MacDomeOut
  19. # [06:43] * Quits: doublec (n=doublec@203-211-99-90.ue.woosh.co.nz) ("Leaving")
  20. # [06:59] * Quits: kfish (n=conrad@61.194.21.25) ("Pike!")
  21. # [07:05] * Joins: kfish (n=conrad@61.194.21.25)
  22. # [07:07] * Quits: kfish (n=conrad@61.194.21.25) (Client Quit)
  23. # [07:51] * Joins: doublec (n=Chris_Do@203-211-82-31.ue.woosh.co.nz)
  24. # [08:36] * Joins: aconbere|mobile (n=aconbere@c-67-171-24-45.hsd1.wa.comcast.net)
  25. # [08:37] <aconbere|mobile> hey, I'm working with html5lib in python and wondering if anyone has any advice on getting the lxml treebuilder working
  26. # [08:37] <aconbere|mobile> there don't apear to be any exmples that use it
  27. # [08:37] <aconbere|mobile> and when I do
  28. # [08:37] <aconbere|mobile> parser = html5lib.HTMLParser(tree=treebuilders.getTreeBuilder('lxml'))
  29. # [08:37] <aconbere|mobile> I get the following error
  30. # [08:38] <aconbere|mobile> File "/Users/aconbere/Projects/python/html5lib/html5parser.py", line 52, in __init__
  31. # [08:38] <aconbere|mobile> self.tree = tree()
  32. # [08:38] <aconbere|mobile> TypeError: 'NoneType' object is not callable
  33. # [08:38] <aconbere|mobile> This happens for me both in trunk and in .10
  34. # [08:38] <aconbere|mobile> so I don't know if that's how you expected lxml to be implimented and there's a bug, or if there was some other expectation :-P
  35. # [08:39] <aconbere|mobile> ahh, actually the trunks doc string helps clarify that
  36. # [08:44] <aconbere|mobile> http://dpaste.com/30872/
  37. # [08:44] <aconbere|mobile> is the new traceback
  38. # [08:44] <aconbere|mobile> for the test file
  39. # [08:44] <aconbere|mobile> http://dpaste.com/30873/
  40. # [08:54] <aconbere|mobile> hmmm
  41. # [08:54] <aconbere|mobile> known bug
  42. # [08:54] <aconbere|mobile> okay I'll be about my buisness then
  43. # [09:37] * Quits: digx (n=rick@c-76-109-201-140.hsd1.fl.comcast.net) (Read error: 110 (Connection timed out))
  44. # [09:47] * MacDomeOut is now known as MacDome
  45. # [09:52] <MacDome> kig: url of your rewrite page?
  46. # [10:00] * Joins: Lachy (n=Lachlan@cm-84.215.54.100.getinternet.no)
  47. # [10:13] * Joins: ROBOd (n=robod@89.122.216.38)
  48. # [10:43] * Joins: maikmerten (n=maikmert@Lb56a.l.pppool.de)
  49. # [10:59] * Quits: maikmerten (n=maikmert@Lb56a.l.pppool.de) ("Leaving")
  50. # [11:11] * othermaciej is now known as om_sleep
  51. # [11:33] * MacDome is now known as MacDomeSleep
  52. # [11:47] * Quits: doublec (n=Chris_Do@203-211-82-31.ue.woosh.co.nz) ("ChatZilla 0.9.79-rdmsoft [XULRunner 1.8.0.9/2006120508]")
  53. # [11:48] * Joins: doublec_ (n=ChrisDou@li5-223.members.linode.com)
  54. # [11:48] * doublec_ is now known as doublec
  55. # [11:50] * Joins: doublec_ (n=Chris_Do@203-211-82-31.ue.woosh.co.nz)
  56. # [11:50] * Parts: doublec_ (n=Chris_Do@203-211-82-31.ue.woosh.co.nz)
  57. # [11:57] <jgraham> aconbere|mobile: Yeah, there have been problems with lxml since they started validating tag names. We need to come up with a long term solution better than the magic-name based hack we were previously using.
  58. # [11:58] <jgraham> Sadly, our design assumptions are not quit the same as those made in lxml so there's a bit of an impedance mismatch.
  59. # [12:13] * Quits: doublec (n=ChrisDou@li5-223.members.linode.com) ("Terminated with extreme prejudice - dircproxy 1.0.5")
  60. # [12:13] * Joins: doublec (n=ChrisDou@li5-223.members.linode.com)
  61. # [12:14] * Quits: doublec (n=ChrisDou@li5-223.members.linode.com) (Client Quit)
  62. # [12:16] * Joins: webben (n=benh@91.84.244.69)
  63. # [12:16] * Joins: doublec (n=ChrisDou@li5-223.members.linode.com)
  64. # [12:22] <aconbere|mobile> jgraham: understood
  65. # [12:23] <aconbere|mobile> really I was looking for a way to make parsing microformats easier, which if all I was interested in was getting properly formed xml out html5lib would have been fine for (using one of the other Etree implimentations)
  66. # [12:23] <aconbere|mobile> but I /really/ wanted to be able to apply xsl transforms to the xml
  67. # [12:23] <aconbere|mobile> and lxml makes that so much easier :P
  68. # [12:33] * Quits: doublec (n=ChrisDou@li5-223.members.linode.com) ("Terminated with extreme prejudice - dircproxy 1.0.5")
  69. # [12:33] <jgraham> aconbere|mobile: Yeah, I rather like lxml myself, so there is an incentive there to find a fix :)
  70. # [12:35] <aconbere|mobile> :-D
  71. # [12:40] * Joins: doublec (n=ChrisDou@li5-223.members.linode.com)
  72. # [12:51] * Quits: virtuelv (n=virtuelv@65.80-202-82.nextgentel.com) (Remote closed the connection)
  73. # [12:52] * Joins: virtuelv (n=virtuelv@65.80-202-82.nextgentel.com)
  74. # [13:03] * Joins: tndH_ (i=Rob@87.102.16.84)
  75. # [13:03] * tndH_ is now known as tndH
  76. # [13:08] * Joins: tndH_ (i=Rob@87.102.16.84)
  77. # [13:09] * Quits: tndH (i=Rob@87.102.16.84) (Read error: 104 (Connection reset by peer))
  78. # [13:09] * tndH_ is now known as tndH
  79. # [13:48] * Joins: zcorpan (n=zcorpan@c-cb21e353.1451-1-64736c12.cust.bredbandsbolaget.se)
  80. # [13:49] <zcorpan> Hixie: hmm.... i think the layout of acid3 probably isn't mobile friendly
  81. # [13:59] <hsivonen> Whoa!
  82. # [14:00] <hsivonen> the December content model change makes the real Web so much more valid
  83. # [14:00] <hsivonen> oops. my mistake...
  84. # [14:04] <zcorpan> hsivonen: do you have any figures? :)
  85. # [14:05] <hsivonen> zcorpan: no. And I made a mistake with the start symbol in the schema, so things looked better than they were...
  86. # [14:05] <zcorpan> ok
  87. # [14:05] <Philip`> Do you have any way to automatedly run the validator on lots of pages and see how frequent various errors are?
  88. # [14:06] <hsivonen> Philip`: I don't have that kind of test harness.
  89. # [14:07] * Philip` wonders whether it would be a useful thing to have
  90. # [14:07] <gsnedders> Atom autodiscovery test suite is b0rked
  91. # [14:09] <zcorpan> hmm... opera thinks that http://s.validator.nu/html5/html5full.rnc is text/plain and that http://s.validator.nu/html5/meta.rnc is text/html
  92. # [14:09] <zcorpan> (both are application/octet-stream)
  93. # [14:10] <hsivonen> hmm. I guess I should fix that...
  94. # [14:15] <hsivonen> zcorpan: fixed
  95. # [14:16] <hsivonen> whether having a type like application/relax-ng-compact-syntax at all is between browsers, browser users and the IETF to debate...
  96. # [14:19] <hsivonen> Philip`: early on, Sean Fraser picked up the HTML WG task of testing top sites against the spec definition of validity
  97. # [14:19] <hsivonen> Philip`: I think that would be good to automate
  98. # [14:19] * Joins: maikmerten (n=maikmert@Lb56a.l.pppool.de)
  99. # [14:20] <hsivonen> Philip`: if you already have a framework that prepares an ErrorHandler and an InputSource at hand that would help
  100. # [14:21] <hsivonen> Philip`: alternatively, the Validator.nu Web service interface could be used for that kind of thing
  101. # [14:22] <zcorpan> hsivonen: can you see which errors are most common by just people using the validator?
  102. # [14:22] <hsivonen> Philip`: I could add a parameter for putting the HTML parser into the survey mode (where legacy doctypes aren't errors)
  103. # [14:22] <hsivonen> zcorpan: I think I have a log for that but have never analyzed it
  104. # [14:23] <zcorpan> ok
  105. # [14:24] <hsivonen> zcorpan: hmm. looks like I didn't enable the log in deployment after all
  106. # [14:25] <hsivonen> It might be a good idea to enable it after I land the new content model changes
  107. # [14:25] <hsivonen> I guess I should adjust the privacy policy accodingly before I do.
  108. # [14:34] * Quits: maikmerten (n=maikmert@Lb56a.l.pppool.de) (Remote closed the connection)
  109. # [14:41] * Quits: ROBOd (n=robod@89.122.216.38) (Remote closed the connection)
  110. # [14:50] * Quits: zcorpan (n=zcorpan@c-cb21e353.1451-1-64736c12.cust.bredbandsbolaget.se) (Read error: 110 (Connection timed out))
  111. # [15:07] <kig> MacDomeSleep: url> http://glimr.rubyforge.org/cake/redesign.html (just woke up myself)
  112. # [15:43] <hsivonen> Lachy: seen the blog.whatwg.org moderation queue lately?
  113. # [15:44] <hsivonen> I'm going to zap the entries from the rapidshare and ringtones users
  114. # [15:45] <hsivonen> Lachy: also, a new version of WP is available
  115. # [15:52] * Joins: maikmerten (n=maikmert@Lb56a.l.pppool.de)
  116. # [16:23] <hsivonen> Lachy: there are two Polish translations of a post of yours in the moderation queue
  117. # [16:32] <hsivonen> hmm. http://www.w3.org/TR/html/
  118. # [16:32] <hsivonen> linked from http://www.w3.org/TR/html4/
  119. # [17:04] * Quits: maikmerten (n=maikmert@Lb56a.l.pppool.de) (Remote closed the connection)
  120. # [17:15] <Lachy> hsivonen, thanks for letting me know.
  121. # [17:39] * Joins: zcorpan (n=zcorpan@c-cb21e353.1451-1-64736c12.cust.bredbandsbolaget.se)
  122. # [17:41] <zcorpan> hsivonen: yeah, that should probably be changed to point to html4/
  123. # [17:41] * Joins: ROBOd (n=robod@89.122.216.38)
  124. # [17:46] * Joins: maikmerten (n=maikmert@Lb56a.l.pppool.de)
  125. # [17:57] <zcorpan> hmm... is this valid? <figure><legend></legend></figure>
  126. # [18:00] <hsivonen> zcorpan: should be, since emptiness is valid prose
  127. # [18:00] <hsivonen> zcorpan: however, RELAX NG is unable to make this invalid: <figure>foo<legend></legend>bar</figure>
  128. # [18:00] <hsivonen> zcorpan: I'm working on fixing that in Java
  129. # [18:01] <zcorpan> ok, so you're aware of v.nu not agreeing with the spec wrt figure... :)
  130. # [18:04] <zcorpan> it seems to do the right thing when you put elements in there, but not text or nothing
  131. # [18:10] <hsivonen> zcorpan: I wasn't aware that there was a problem with nothingness
  132. # [18:13] <zcorpan> Error: Required children missing from element figure.
  133. # [18:15] <hsivonen> zcorpan: I had accidentally made it require one prose element instead of prose content
  134. # [18:17] <zcorpan> i was about to send an email about empty <tbody>, but it turns out that i had already complained about that twice
  135. # [18:17] <hsivonen> heh
  136. # [18:20] <hsivonen> zcorpan: fix for nothingness deployed. thanks
  137. # [18:21] <hsivonen> whoa. I was wrong about the expressiveness of RELAX NG in this case, apparently
  138. # [18:21] <hsivonen> which is nice
  139. # [18:21] * Quits: zcorpan (n=zcorpan@c-cb21e353.1451-1-64736c12.cust.bredbandsbolaget.se) (Read error: 104 (Connection reset by peer))
  140. # [18:22] * Joins: zcorpan (n=zcorpan@c-cb21e353.1451-1-64736c12.cust.bredbandsbolaget.se)
  141. # [18:32] * zcorpan notes that <map> now also has a friendlier content model
  142. # [18:34] <hsivonen> zcorpan: I implemented that one correctly, didn't I?
  143. # [18:34] <zcorpan> yes, afaict
  144. # [18:35] <hsivonen> ok
  145. # [18:35] <zcorpan> it was a note to self... :) i think i have sent email about that too, before
  146. # [18:35] <zcorpan> previously this was not allowed: <map><area ...></map>
  147. # [18:37] <hsivonen> I'm positively puzzled and surprised to learn that RELAX NG can deal with <figure>a<legend/>b</figure>
  148. # [18:40] <zcorpan> is text different from elements in relax ng?
  149. # [18:42] <hsivonen> zcorpan: I had thought it was different with the comma combinator, but it seems that it isn't
  150. # [18:42] <zcorpan> ok
  151. # [18:46] * Quits: aconbere|mobile (n=aconbere@c-67-171-24-45.hsd1.wa.comcast.net) (Read error: 113 (No route to host))
  152. # [18:49] <hsivonen> zcorpan: It seems I have fixed a noscript-in-head bug you reported. thanks
  153. # [18:50] <zcorpan> hsivonen: cool. can't remember what it was i reported, though :)
  154. # [18:53] * Quits: kingryan (n=kingryan@72.47.127.186)
  155. # [18:54] <zcorpan> why did html4 forbid IMG|OBJECT|BIG|SMALL|SUB|SUP from <pre>?
  156. # [18:55] <hsivonen> zcorpan: presumably they don't fit the idea of having only monospace text
  157. # [18:56] <hsivonen> zcorpan: you reported that <h1><noscript><p>... validates in HTML 4 in Validator.nu. I can't reproduce the problem.
  158. # [19:01] <zcorpan> aha. right
  159. # [19:03] <zcorpan> hsivonen: yeah. if that's a good reason then perhaps html5 should ban it as well
  160. # [19:04] <zcorpan> "The DTD fragment above indicates which elements may not appear within a PRE declaration. This is the same as in HTML 3.2, and is intended to preserve constant line spacing and column alignment for text rendered in a fixed pitch font. Authors are discouraged from altering this behavior through style sheets."
  161. # [19:10] * Quits: maikmerten (n=maikmert@Lb56a.l.pppool.de) (Remote closed the connection)
  162. # [19:26] * Joins: maikmerten (n=maikmert@Lb56a.l.pppool.de)
  163. # [19:33] * MacDomeSleep is now known as MacDome
  164. # [19:36] * Joins: csarven (n=nevrasc@modemcable130.251-202-24.mc.videotron.ca)
  165. # [19:37] * Parts: zcorpan (n=zcorpan@c-cb21e353.1451-1-64736c12.cust.bredbandsbolaget.se)
  166. # [19:43] <gsnedders> can <dl> be within <p>?
  167. # [19:43] <gsnedders> (in the text/html serialisation)
  168. # [19:44] * gsnedders looks
  169. # [19:44] <gsnedders> no.
  170. # [19:47] * Joins: zcorpan (n=zcorpan@c-cb21e353.1451-1-64736c12.cust.bredbandsbolaget.se)
  171. # [19:55] <MacDome> Hixie: this one is still wrong:
  172. # [19:55] <MacDome> style.appendChild(doc.createTextNode('@media not all and (bogus) { #f { text-transform: uppercase; } }'));
  173. # [19:55] <MacDome> Hixie: that should match (as it does in Safari)
  174. # [19:55] <MacDome> at least according to my reading of the spec
  175. # [19:56] <MacDome> the logic reads !(true and false) -> !(false) -> true
  176. # [20:14] <virtuelv> MacDome: matches in Opera as well
  177. # [20:17] <virtuelv> (and I'm reading the spec the same way as you, the not negates the entire expression
  178. # [20:19] <MacDome> virtuelv: which honestly I find kinda odd
  179. # [20:19] <MacDome> but it does make the grammar simpler
  180. # [20:20] <virtuelv> MacDome: indeed
  181. # [20:20] <virtuelv> (or rather, it isn't odd when you are aware that 'not' except at the start of a query is invalid)
  182. # [20:30] <Hixie> MacDome: surely that reads as !(true and NaN) -> !(NaN) -> NaN ?
  183. # [20:48] * Quits: zcorpan (n=zcorpan@c-cb21e353.1451-1-64736c12.cust.bredbandsbolaget.se) (Read error: 110 (Connection timed out))
  184. # [20:49] * Joins: dglazkov (n=dglazkov@adsl-074-229-248-021.sip.bhm.bellsouth.net)
  185. # [20:52] * Quits: maikmerten (n=maikmert@Lb56a.l.pppool.de) ("Leaving")
  186. # [20:54] * Joins: digx (n=rick@c-76-109-201-140.hsd1.fl.comcast.net)
  187. # [21:34] * Joins: roc (n=roc@202.0.36.64)
  188. # [21:34] * Joins: aconbere|mobile (n=aconbere@c-67-183-217-226.hsd1.wa.comcast.net)
  189. # [21:39] * Quits: om_sleep (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net) (Read error: 110 (Connection timed out))
  190. # [21:44] * Joins: othermaciej (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net)
  191. # [22:01] * Quits: ROBOd (n=robod@89.122.216.38) ("http://www.robodesign.ro")
  192. # [22:25] * Joins: weinig_ (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
  193. # [22:25] * Quits: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
  194. # [23:09] <MacDome> Hixie: I wonder if it shouldn't throw an exception
  195. # [23:09] <MacDome> I'm not sure <value> is defiene
  196. # [23:09] <MacDome> Hixie: searching media queries for "nan" was no hits
  197. # [23:10] * MacDome reads http://www.w3.org/TR/css3-values/
  198. # [23:10] <jwalden> MacDome: test 23 is fixed, right? I see the "code" thing got fixed, and the last createElementNS's arguments are now reversed correctly
  199. # [23:11] <MacDome> jwalden: I believe hixie fixed it
  200. # [23:11] <jwalden> or at least fixed as far as you'd been asking
  201. # [23:11] <MacDome> jwalden: I didn't reply to all his emails yet
  202. # [23:11] * MacDome wonders why "true and NaN" would be "NaN"
  203. # [23:12] <MacDome> that's "true and number"
  204. # [23:12] <MacDome> which is "true and ToBoolean(number)"
  205. # [23:12] <MacDome> ToBoolean(NaN) is false
  206. # [23:12] <MacDome> at least talking about ecmascript, which really has no bearing on CSS3 media queries :)
  207. # [23:12] <jruderman> && and || in ecmascript return one of their arguments, not booleans
  208. # [23:13] <MacDome> it's true, media queries do talk in terms of "1" and "0" instead of "true" and "false"
  209. # [23:14] <MacDome> "A Media Query is a logical expression that is either true or false. A Media Query is true if the media type of the Media Query matches the media type of the device where the user agent is running, and all expressions in the Media Query are true. Also, a Media Query which is otherwise false becomes true if the "not" keyword is present."
  210. # [23:14] <MacDome> Hixie: I think it actually should be a CSS3 parse error
  211. # [23:15] <MacDome> Hixie: since @media specifies a grammar, and (bogus) does not conform to that grammar
  212. # [23:15] <othermaciej> MacDome: media queries that include an invalid keyword should fail to parse
  213. # [23:15] <othermaciej> whether or not there's a "not"
  214. # [23:15] <othermaciej> so the @media rule is discarded
  215. # [23:15] <othermaciej> since that's how CSS error handling works
  216. # [23:15] <othermaciej> I think the NaN was meant to be an analogy
  217. # [23:15] <jwalden> MacDome: incidentally, it looks like the algorithm I have for determining which exception to throw is (component-)start(s)-with-colon, ends-with-colon, multiple-colons-in-createElementNS, and start-with-non-ASCII-non-starting-valid-character cause NAMESPACE_ERR with createElementNS, all others are INVALID_CHARACTER_ERR
  218. # [23:16] <MacDome> othermaciej: ok, well, that would support hixie's test then
  219. # [23:16] <MacDome> the entire rule can be thrown out
  220. # [23:16] <MacDome> and a CSS parse error raised
  221. # [23:17] <jwalden> so "a::", "a::b", ":foo", "a:b:c", and <something that matches the start-with-non-ASCII possibility> are examples of all the possible namespace errors
  222. # [23:18] <othermaciej> DOM2 and DOM3 are actually inconsistent about when NAMESPACE_ERR or INVALID_CHARACTER_ERR should be thrown
  223. # [23:19] <jwalden> ha ha ha
  224. # [23:19] <MacDome> jwalden: a test case would demonstrate this better for me
  225. # [23:19] <jwalden> I should read 3, then -- think I've been using 2
  226. # [23:20] <othermaciej> DOM2 Core generally says this:
  227. # [23:20] <othermaciej> INVALID_CHARACTER_ERR: Raised if the specified qualified name contains an illegal character.
  228. # [23:20] <othermaciej> NAMESPACE_ERR: Raised if the qualifiedName is malformed, if the qualifiedName has a prefix and the namespaceURI is null, or if the qualifiedName has a prefix that is "xml" and the namespaceURI is different from "http://www.w3.org/XML/1998/namespace" [Namespaces].
  229. # [23:20] <jwalden> actually, no, I've been using 3
  230. # [23:20] <othermaciej> but DOM3 Core says this:
  231. # [23:20] <othermaciej> INVALID_CHARACTER_ERR: Raised if the specified qualified name is not an XML name according to [XML 1.0].
  232. # [23:20] <othermaciej> NAMESPACE_ERR: Raised if the qualifiedName is malformed, if the qualifiedName has a prefix and the namespaceURI is null, or if the qualifiedName is null and the namespaceURI is different from null, or if the qualifiedName has a prefix that is "xml" and the namespaceURI is different from "http://www.w3.org/XML/1998/namespace" [XML Namespaces], or if the DOM implementation does not support the "XML" feature but a non-null namespace UR
  233. # [23:21] <jwalden> but I was fixing parsing code as opposed to namespace code, which the changes didn't affect
  234. # [23:21] <othermaciej> and there are strings which are not "an XML name", but for reasons other than containing an illegal character
  235. # [23:22] <MacDome> I can't imagine this really affects real web sites
  236. # [23:22] <othermaciej> in DOM2Core, that's a NAMESPACE_ERR ("qualifiedName is malformed"), but in DOM3Core, that's an INVALID_CHARACTER_ERR ("the specified qualified name is not an XML name")
  237. # [23:22] <othermaciej> I don't think it does
  238. # [23:22] <MacDome> jwalden: I'm most interested in us just agreeing
  239. # [23:22] <jwalden> yeah
  240. # [23:22] <othermaciej> but, oddly, the DOM2 Core test suite from the w3c tests for the DOM3 Core behavior
  241. # [23:22] <MacDome> jwalden: if we have a nice set of tests, we'll do that. there are some attached to the bug i posted
  242. # [23:22] <othermaciej> we could really use a DOM5 Core
  243. # [23:22] <jwalden> MacDome: URL again?
  244. # [23:22] <MacDome> othermaciej: like HTML5?
  245. # [23:22] <othermaciej> yes, exactly
  246. # [23:22] <othermaciej> rewrite the spec to make sense
  247. # [23:22] <jwalden> ambiguity die die die
  248. # [23:23] <MacDome> one which actually tries to describe behavior instead of make a fairytale?
  249. # [23:23] <gsnedders> ooo! I like fairytales!
  250. # [23:23] * gsnedders goes to read the DOM specs
  251. # [23:24] <MacDome> I always got the impression when reading sections of specs which say "left to the implementor" that the authors were thinking they were doing us a favor by leaving us "freedom"
  252. # [23:24] <MacDome> they sorta are,since some specs are crazy
  253. # [23:24] <MacDome> but often it just seems lazy to me
  254. # [23:24] <MacDome> or that they didn't sit down to think out what would make sense.
  255. # [23:24] <othermaciej> well, some things that were left up to the implementation are cases where, if we'd locked in the first guess at the right behavior, we'd be stuck with bad performance
  256. # [23:24] * MacDome is making poor generalizations about spec authors
  257. # [23:25] <othermaciej> like how exactly the prototype / method structure of JS DOM bindings should work
  258. # [23:25] <jruderman> speaking of specs and poor performance
  259. # [23:25] <MacDome> spec authoring is kinda a thankless job
  260. # [23:25] <othermaciej> but yeah, in most cases, interoperability is worth more than implementation freedom
  261. # [23:25] <jruderman> do DOM specs require support for "attribute nodes" and other such nonsense?
  262. # [23:25] * Quits: virtuelv (n=virtuelv@65.80-202-82.nextgentel.com) ("Leaving")
  263. # [23:25] <jruderman> or is that part optional?
  264. # [23:25] <othermaciej> they do require it, but it's possible to avoid ever making them for normal cases
  265. # [23:25] <gsnedders> MacDome: sometimes I do wonder why I try, knowing I'll be ridiculed whatever I write in the spec.
  266. # [23:26] <gsnedders> (where the spec = any spec I write)
  267. # [23:26] <othermaciej> WebKit makes real attribute nodes only on demand
  268. # [23:26] <MacDome> Hixie: I think your @media tests could be made more clear by indicating // silently fails to parse
  269. # [23:26] <othermaciej> (afaik the only demand comes from the DOM test suite)
  270. # [23:26] <MacDome> gsnedders: well, IMO Hixie (and the other whatwg participants) have done a huge service to web authors
  271. # [23:27] <othermaciej> I think WebKit passes pretty much all of the DOM1 Core and DOM2 Core w3c test suites, except for the tests that are contrary to compatibility requirements, and the tests where DOM2 and DOM3 have contradictory requirements
  272. # [23:27] <othermaciej> but the DOM working group refused to fix those things in the spec
  273. # [23:27] <gsnedders> MacDome: but still, ridiculed for trying to specify exact behaviour, and leaving nothing able to be added to the parser (like namespaces, if it is possible)
  274. # [23:28] <MacDome> othermaciej: I wonder if a public page of "we intentionally disagree" would aid in convincing them. it probably wouldnt' be worth the time
  275. # [23:28] <othermaciej> MacDome: the DOM Working Group no longer exists
  276. # [23:28] * MacDome is against making work for arguing with folks
  277. # [23:28] <MacDome> i see.
  278. # [23:29] <gsnedders> That does complicate matters, then.
  279. # [23:29] <MacDome> othermaciej: nothing more exciting to do with the DOM?
  280. # [23:29] <othermaciej> I think the Web API Working Group would be willing to host work for a realistic DOM spec
  281. # [23:29] <othermaciej> but no one has time
  282. # [23:29] <gsnedders> Some of the specs already in the Web API WG have died off for lack of time.
  283. # [23:29] <MacDome> web browsers (And more importantly web apps) have hit a layer of complexity where things like HTML5 become essential
  284. # [23:29] <othermaciej> MacDome: the DOM working group towards the end was seemingly more focused on server-side Java than browser-hosted implementations
  285. # [23:29] <MacDome> browsers are coming to another level of refinement
  286. # [23:30] * jwalden is now known as jwalden|awol
  287. # [23:30] <gsnedders> (I am, FWIW, working on a spec of dealing with HTTP data)
  288. # [23:32] <othermaciej> someone should propose that HTTP headers should use XML-like namespaces defined by URIs
  289. # [23:32] <othermaciej> just to watch the fireworks
  290. # [23:33] <gsnedders> Already been proposed.
  291. # [23:33] <othermaciej> (and hey, why only headers, maybe methods too)
  292. # [23:33] <gsnedders> I probably can't find a link to a discussion, but it's happened.
  293. # [23:33] <othermaciej> gsnedders: I underestimated the power of human stupidity
  294. # [23:33] <MacDome> oh, I totally want to namespace my headers!
  295. # [23:34] <MacDome> xmlns:FooBar="http://www.foobar.com/2007/FooBar"
  296. # [23:34] <gsnedders> Get rid of all this X-* nonsense!
  297. # [23:34] <MacDome> FooBar:ContentType = FooDelicious
  298. # [23:34] * Quits: aconbere|mobile (n=aconbere@c-67-183-217-226.hsd1.wa.comcast.net) (Connection timed out)
  299. # [23:34] * gsnedders sniffs the delicious foo
  300. # [23:35] <MacDome> gsnedders: most interesting would be someone making a locally-runable HTTP test suite
  301. # [23:35] <MacDome> with all sorts of header parsing tests
  302. # [23:36] <gsnedders> MacDome: I've made a start, but the biggest issue is testing how things like dates are parsed
  303. # [23:36] <MacDome> gsnedders: the fact that CF network still has cookie parsing errors is an indication to me of the lack of a good test suite
  304. # [23:37] <MacDome> or just a big test
  305. # [23:37] <MacDome> like Acid3
  306. # [23:37] <MacDome> which when you pass you can claim compliance
  307. # [23:37] <MacDome> something that tested for pipelining support would be preferred :)
  308. # [23:37] <gsnedders> A lot of behaviour is undefined anyway
  309. # [23:37] <othermaciej> MacDome: cookies don't even have a proper spec defining them
  310. # [23:37] <MacDome> gsnedders: well I'm totally looking forward to Base1 :)
  311. # [23:38] * gsnedders wonders where Base1 came from :)
  312. # [23:38] <othermaciej> there's the "HTTP State Management" spec which defines cookie headers that no one uses
  313. # [23:38] <MacDome> Acid2 :)
  314. # [23:38] <gsnedders> ah.
  315. # [23:38] <othermaciej> gsnedders: if you have an acid test, why not a base test?
  316. # [23:38] * MacDome bets gsnedders can mke the connection :)
  317. # [23:38] * gsnedders hasn't done chemistry is a couple of years :P
  318. # [23:38] <MacDome> gsnedders: you could be our hero!
  319. # [23:39] <MacDome> fix damn networking issues for good
  320. # [23:39] <gsnedders> <super:gsnedders>?
  321. # [23:39] <MacDome> require support for some sort of sane multi-part/mixed thing as well :
  322. # [23:39] <MacDome> )
  323. # [23:39] <gsnedders> Maybe I'll make Base1 when I'm finished with everything else :)
  324. # [23:40] * MacDome wishes the W3c would do more test suite development *alongside* their spec work
  325. # [23:40] * gsnedders hopes Hixie hasn't trademarked Acid*, Alkaline*, Base*
  326. # [23:40] <MacDome> things like SVG should have had 10000 tests
  327. # [23:40] <gsnedders> some people are questioning the need for tests for HTML 5, sadly.
  328. # [23:40] <othermaciej> the original acid test was the CSS box model acid test
  329. # [23:41] <gsnedders> was IE5/Mac not the first to pass acid?
  330. # [23:42] <Philip`> It's a bit annoying to write tests while the spec is still being developed, because any spec change could potentially invalidate anything in the test suite and you have to carefully check every one to see if it should change
  331. # [23:42] * Quits: gavin_ (n=gavin@firefox/developer/gavin)
  332. # [23:42] <gsnedders> In the case of HTML 5, I've found some bugs in some algorithms doing so though, that weren't obvious just looking at them.
  333. # [23:43] <gsnedders> MacDome: if you have any suggestions of actually finding parsed values of headers it'd be welcome
  334. # [23:43] * gsnedders finds undefined behaviour in XMLHttpRequest
  335. # [23:43] <MacDome> Philip`: I think that could be mitigated by using some sort of assert() scheme where you swapped out assert during development, and had it only print the current result, instead of actually checking
  336. # [23:43] <MacDome> then you coudl go back and fix the "expected" side of the assertr
  337. # [23:43] <MacDome> shouldBeEqual(foo, bar);
  338. # [23:44] <MacDome> develpoment : print whatever foo actually is
  339. # [23:44] <MacDome> production : check against bar
  340. # [23:44] <MacDome> I guess you can always check
  341. # [23:44] <MacDome> you just would ignore FAIL
  342. # [23:45] * MacDome didn't actually have a very useful proposal just then
  343. # [23:45] <MacDome> mostly lots of hot air
  344. # [23:45] * MacDome goes back to coding
  345. # [23:45] <othermaciej> unfortunately, serializing spec development and test suite development is also a bad thing
  346. # [23:45] <othermaciej> because applying the test suite to implementations may find bugs in the spec
  347. # [23:47] <roc> that's more of an argument for interleaving spec development with implementation
  348. # [23:48] <roc> randomized testing is also good at finding bugs in specs, but you need an implementation
  349. # [23:49] <gsnedders> MacDome, othermaciej: what would be the best way to contact the CF Network guys?
  350. # [23:49] <othermaciej> you need multiple implementations
  351. # [23:50] <roc> that too
  352. # [23:50] <othermaciej> but then you need thorough testing, not just spot tests, to make them interoperable
  353. # [23:50] <othermaciej> gsnedders: contact about what?
  354. # [23:50] * jwalden|awol is now known as jwalden
  355. # [23:50] <Philip`> I've been slightly surprised when writing tests to find bits of the spec that are undefined or ambiguous, but have been implemented multiple times and no implementor commented on them
  356. # [23:50] <roc> in super-high-integerity software development, there's this idea called "traceability", which is that you maintain a database tracking all dependencies between code, specs and testcases
  357. # [23:50] <gsnedders> othermaciej: Impl. of HTTP
  358. # [23:51] <othermaciej> gsnedders: what I'm getting at is, would this be a bug report?
  359. # [23:51] <othermaciej> if so, bugreport.apple.com is the right way
  360. # [23:51] <othermaciej> if not, I'm not sure
  361. # [23:51] <gsnedders> othermaciej: well, judging by the fact that I don't really know what yet… :D
  362. # [23:51] <roc> unfortunately that is incredibly expensive and slow
  363. # [23:51] <gsnedders> othermaciej: you need to be 18 to join the ADC, so can't really use bugreport.apple.com
  364. # [23:52] <Philip`> gsnedders: You could lie like everyone else does :-p
  365. # [23:52] <gsnedders> Philip`: already done that :P
  366. # [23:52] <gsnedders> Philip`: "can't *really*"
  367. # [23:52] <roc> Philip`: well, many times I've implemented something where the spec is just plain *wrong* yet other implementations claim to have implemented it correctly :-)
  368. # [23:53] <othermaciej> gsnedders: even for the student membership?
  369. # [23:53] <gsnedders> othermaciej: yeah
  370. # [23:53] <othermaciej> go figure
  371. # [23:53] * gsnedders sues Apple under agism laws :P
  372. # [23:54] <dglazkov> it's probably because of all the porn
  373. # [23:54] <othermaciej> gsnedders: it's probably because contracts with a minor are not enforceable, and access to ADC provides access to some info that is technically under NDA
  374. # [23:54] <othermaciej> Philip`: most implementors are not overly concerned with ambiguities or even outright wrongness in the spec
  375. # [23:54] <Philip`> What do really old people do when they go to a website with over-18-only content that requires them to select their year of birth from a drop-down list that starts at 1901?
  376. # [23:55] <gsnedders> Philip`: what if they're female, and seeming you're not meant to ask old women for their age…
  377. # [23:55] <Philip`> gsnedders: Hmm, that wouldn't work very well if it's only for old women, because that would mean if you didn't ask someone their age then you would be implying they are old
  378. # [23:56] <roc> they append the required year to the combobox by handwriting a javascript: URL
  379. # [23:57] <Philip`> Ah, cunning
  380. # [23:58] <gsnedders> or just use telnet to submit a request to the server with the correct year, and hope the server just uses inequality year less than, and copy the cookie to the browser
  381. # [23:58] * Parts: TheSheep (i=sheep@atos.wmid.amu.edu.pl)
  382. # [23:59] * weinig_ is now known as weinig
  383. # [23:59] <roc> someone could write a pointy-clicky Firefox extension for this
  384. # [23:59] <roc> thus locking up Firefox share in the 108+ demographic
  385. # Session Close: Mon Jan 14 00:00:00 2008

The end :)