00:00
<Lachy>
hidden metadata should generally be avoided anyway, so I wouldn't call it a show stopper
00:01
<Lachy>
the other alternative might be to use <meta ... itemref="x">
00:01
<Lachy>
that way, at least the association isn't lost by the DOM being incorrect
00:01
<foolip>
<meta id="x"> ... <div itemscope itemref="x"> rather, but yes
00:02
<Lachy>
oh, yeah. that's what I meant
00:02
foolip
hasn't decided what to make of the "can't create cycles of blank nodes" limitation yet
00:04
Lachy
goes back to furiously scratching his broken arm. It's only been a day and a half, and this cast is already getting unbearable.
00:05
<foolip>
what happened to your arm anyway?
00:05
<Lachy>
broke it while playing Snakes and Ladders (or, as Americans apparently know it, Shoots and Ladders)
00:06
<Lachy>
er, that's probably Chutes and Laddres
00:06
<foolip>
I don't know what either is, but OK
00:06
<Lachy>
it's a board game
00:06
<foolip>
heh?
00:06
<foolip>
were you drunk?
00:06
<Lachy>
yes. A little. Considering that we had turned it into an awesome drinking game
00:07
<cardona507>
haha
00:07
<Lachy>
The rules were simple. If you climb a ladder, everyone else drinks. If you go down a snake, you drink. If you roll a 1, the the person to the left drinks. If a 6, then person to the right drinks.
00:07
<cardona507>
I hope it heals up Lachy
00:08
<Lachy>
The dice rule was particularly nasty because the dice was very wonky, and landed on 1 or 6 most of the time
00:09
<Lachy>
anyway, since it's customary here to wear socks inside when you're a guest at someone's place (even though I hate wearing socks inside), I was wearing socks on a slippery wooden floor.
00:10
<Lachy>
I then slipped over as I was coming back with the bottle of wine
00:10
<Lachy>
wacked my left elbow on the floor quite hard
00:10
<foolip>
was any of this caught on camera?
00:10
<Lachy>
no, unfortunately
00:10
<foolip>
unfortunate indeed :)
00:10
<cardona507>
broken elbow?
00:11
<Lachy>
and the other 3 who were there also didn't see me fall. They looked up when I started screaming
00:11
<Lachy>
yes
00:11
<AryehGregor>
smaug, now what do I do to get this checked in? https://bugzilla.mozilla.org/show_bug.cgi?id=535043
00:12
<cardona507>
right/left?
00:12
<Lachy>
But I didn't know it was broken till yesterday, even though it happened a week ago. I was sure I had just bruised it, but decided to get it checked after it didn't heal.
00:12
<Lachy>
I said Left
00:12
<cardona507>
ahhh - I see above now ^
00:13
<Lachy>
the only problem is that this kinda ruined my plans to go skiing this weekend :-(
00:26
<AryehGregor>
Over here some people make you take off your shoes when you visit, but those people are jerks.
00:27
<foolip>
who wears shoes inside anyway?
00:28
<cardona507>
you know what I always say http://www.surfartposters.com/wp-content/images/surf-posters-SF50.jpg :)
00:28
<cardona507>
I lived on Kauai for 6 years and there is so much mud it really helps to kick off the shoes at the door
03:37
<vices>
where is the API that javascript uses to access the canvas?
03:39
<AryehGregor>
You mean: http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#canvasrenderingcontext2d
03:40
<vices>
nice
03:41
<vices>
is that javascript or c++ ?
03:42
<vices>
okay forget that question, how can I write an API for another language besides javascript?
03:42
<vices>
^^
04:02
<vices>
or.. where can I see the javascript source that implements the canvas functions?
04:14
<TabAtkins>
vices: You can read the source for Firefox or Webkit to see the C (or C++? I forget) that underlies the javascript implementation.
04:16
<vices>
nice!
04:16
<vices>
where is that?
04:16
<vices>
;)
04:19
<jcranmer>
http://mxr.mozilla.org/mozilla-central/source/content/canvas/ is for Firefox
04:20
<vices>
jcranmer: sweet, thank you sir
06:20
<jgornick>
Hey guys, quick question. With the HTML5 spec, you can use both strict and non-strict tags right? Much like <br /> or <br> ?
06:34
<Hixie>
jgornick: they're both strict tags now
06:34
<Hixie>
jgornick: they mean the same thing -- the "/" is ignored but allowed for people who prefer the XML style
06:34
<jgornick>
Hixie, Great, thanks!
06:36
<Hixie>
np
07:09
<Hixie>
is there any way in RDF, given a blank node with various triples having it as the subject, to add a triple that gives the blank node an identifier?
07:09
<Hixie>
e.g. is there a way, given (_a, X, 1), (_a, Y, 2), (_a, Z, 3), to add some triple(s) that says that _a === A?
07:10
<Hixie>
or is the only way to go ahead and change all the triples to just use A instead of refering to the blank node?
07:23
<deltab>
Hixie: _a = A, or _a <http://www.w3.org/2002/07/owl#sameAs>; A
07:23
<Hixie>
ah, thanks
07:23
<Hixie>
so the predicate http://www.w3.org/2002/07/owl#sameAs is some sort of RDF internal magic predicate?
07:26
<deltab>
hmm, I don't know if you can call it 'internal' or 'magic', but it does have the = shortcut in Notation3: http://www.w3.org/DesignIssues/Notation3.html
07:27
<Hixie>
is there any way in RDF to say "any blank node that is the subject of a triple with the predicate B and object C is also the subject of a triple with the predicate X and the object X"?
07:27
<deltab>
sure, it can be used to change how triples are processed; but so could knowing that x is transitive in a x b; b x c
07:29
<deltab>
that'd be an implication, I guess
07:29
<Hixie>
i'm trying to work out whether i can write http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html#conversion-to-rdf by just giving some RDF that people can just load up and have it Just Work
07:29
<Hixie>
instead of (as now) requiring that they add extra magic to their code
07:30
<Hixie>
paragraphs 2, 3, and 4 can use the #sameAs thing
07:30
<Hixie>
but 1 seems harder
07:59
Hixie
looks into the itemref="" loop issue
08:05
<Hixie>
you know you're making a mistake when you start writing "x is true if the following algorithm does not terminate:"
08:05
<Dashiva>
<div id="a" itemref="a"
08:06
<Hixie>
itemscope itemprop=x></div>
08:06
<Hixie>
yeah
08:09
<Dashiva>
<div id=a itemscope itemprop=x><div itemscope itemprop=y itemref=a></div></div>
08:10
<Hixie>
my favourite case is <div itemscope itemref="a"></div> <div itemprop="p" itemscope id="a" itemref="b"></div> <div itemprop="q" itemscope id="b" itemref="a"></div>
08:11
<Dashiva>
A Q graph
08:19
<foolip>
oh yay, itemref loops
08:22
<danbri>
itemref loops?
08:23
<foolip>
Lachy: I don't think Manu has been spreading more "misinformation" about microdata than "we" have about RDFa. all misunderstandings in good faith as far as I can see
08:24
<Dashiva>
I have trouble taking talk about microdata's being unstable in good faith when RDFa 1.1 is planning incompatible changes for an ecosystem that already ignores versioning
08:25
<Hixie>
i wonder how i ended up having mark_a_morgan blocked on twitter
08:26
<Hixie>
is there some way to find out who you have blocked on twitter?
08:27
<foolip>
Hixie: owl:sameAs if for individuals, I think equivalent predicates should use owl:equivalentProperty (why OWL has several concepts of sameness I don't know)
08:28
<foolip>
where "individuals" is nodes in the graph I guess, as opposed to the relations between them
08:33
<danbri>
you use owl:sameAs when there really is just one thing you're talking about; ie. it's a strong claim
08:33
<Hixie>
so is there some way to recast http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html#conversion-to-rdf into pure RDF (no prose), and have it mean the same thing?
08:33
<danbri>
it's a way of dealing with situations where there are multiple URIs that are really just names for same thing; or mentions of same thing that don't use URIs
08:34
danbri
reads
08:34
<Hixie>
paragraph 1 being the hard one
08:35
<Hixie>
2, 3, and 4 could just be straight-forward sameAs statements
08:35
<danbri>
i was about to say, ...
08:35
<danbri>
1st one is the hard one ;) not sure what you're doing there exactly
08:35
<danbri>
and the last three, I'd suggest owl:equivalentProperty rather than owl:sameAs
08:37
<danbri>
owl:sameAs would mean that everything true of the former is true of the latter; this makes it hard to keep admin metadata, eg. html5:author might have a different properties to ccrel:attributionName (eg. their textual labels, translations etc.)
08:38
<foolip>
as long as you can dump it into a triplestore and make queries using ccrel:attributionName all is well
08:38
<danbri>
why are the initial urls so odd (ie. embedding / escaping other urls?)
08:39
<danbri>
foolip, well you have to watch out for other queries that might give bogus results, eg. if you asked for all properties that had been made by the Creative Commons, you should only find the CC ones, not the whatwg/html5 ones...
08:39
<danbri>
owl:equivalentProperty will work there; owl:sameAs will muddle things up
08:39
<Hixie>
the first one is trying to take the pattern "_ foo X" for a particular value of "foo" and make _ be X
08:39
<foolip>
owl:sameAs seems inappropriate from my reading of it, yes
08:39
<Hixie>
i guess i could say that "foo" is sameAs sameAs
08:40
<danbri>
the first one is sameAs, yeah
08:40
<danbri>
identity reasoning is a pain in the butt, but unavoidable without a URI God to compel everyone to use exactly same URIs for everything
08:41
<foolip>
but how to you capture the condition that if (bla) then x sameAs y ?
08:41
<Hixie>
(still responding to scrollback) i don't understand why sameAs is wrong for the other three. I want to make them exactly identical, so that it's like nobody ever used the one in the spec, and the other one is used everywhere
08:41
<Hixie>
the URLs are odd because they're the result of converting the short names used in microdata to the URL form used in RDF
08:42
<Hixie>
oh, i understand the owl:equivalentProperty thing now
08:42
<Hixie>
ok
08:42
<foolip>
Hixie: is the appending of # and : inspired by some RDFy scheme?
08:42
<Hixie>
no
08:42
<foolip>
I'll just let you reply to that email so everyone can see the answer :)
08:42
<Hixie>
it's needed to make it impossible to end up with the URLs in another way
08:42
<Hixie>
(i forget the details)
08:43
<danbri>
hixie, if you make them exactly identical, then all properties of the latter become properties of the former; eg. re dc:title
08:43
<danbri>
<rdf:Property rdf:about="http://purl.org/dc/elements/1.1/title">;
08:43
<danbri>
<rdfs:label xml:lang="en-US">Title</rdfs:label>
08:43
<danbri>
<rdfs:comment xml:lang="en-US">A name given to the resource.</rdfs:comment>
08:43
<danbri>
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/elements/1.1/"/>;
08:43
<danbri>
<dcterms:issued>1999-07-02</dcterms:issued>
08:43
<danbri>
<dcterms:modified>2008-01-14</dcterms:modified>
08:43
<danbri>
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>;
08:43
<danbri>
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#title-006"/>;
08:43
<danbri>
<skos:note xml:lang="en-US">A second property with the same name as this property has been declared in the dcterms: namespace (http://purl.org/dc/terms/). See the Introduction to the document "DCMI Metadata Terms" (http://dublincore.org/documents/dcmi-terms/) for an explanation.</skos:note>
08:43
<danbri>
</rdf:Property>
08:44
<danbri>
... all that from the dc namespace would also be asserted for http://www.w3.org/1999/xhtml/microdata#http%3A%2F%2Fn.whatwg.org%2Fwork%23%3Atitle
08:44
<Hixie>
ah
08:44
<danbri>
... and people running queries like 'find me property URIs from Dublin Core issued before 2000' would find your URIs; while we could find wiggleroom to justify this, it would cause general confusion I'm sure
08:44
<Hixie>
so presumably i also want equivalentProperty sameAs for the other one, not sameAs sameAs?
08:44
<foolip>
reading RDF/XML is such a thrill
08:45
<danbri>
yes please
08:45
<Hixie>
k
08:45
<Hixie>
i'll dump this in when i'm done fixing the itemref issue
08:45
<danbri>
and yes, owl:sameAs is over-used a bit. The linked data crowd liked the name but sometimes assert it between similar things...
08:45
<danbri>
oh btw -
08:46
<danbri>
I started drafting towards an rdfa tutorial. it is far from done, idea was to try to explain basic processing / structuring model without mentioning markup too much
08:46
<danbri>
perhaps it would work for microdata too? I haven't studied detailed diffs between the two
08:46
<danbri>
-> http://wiki.foaf-project.org/w/RDFaTutorial
08:47
<danbri>
i'd like to cut it down to a page that gave the basic idea: that each point in the doc can be 'about' something (= itemscope in your terms?)
08:47
<danbri>
and that the attributes either change the focus/scope, or give properties and relationships ...
08:48
<Hixie>
i think rdfa and microdata are different enough that readers would be better off not trying to learn both at once
08:48
<foolip>
we should add <http://www.w3.org/1999/xhtml/microdata#http%3A%2F%2Fmicroformats.org%2Fprofile%2Fhcard%23%3Afn>; owl:equivalentProperty foaf:name and a bunch of other triples to make hcard data more useable to RDF processors
08:48
<danbri>
Hixie, perhaps not learn both syntaxes at once, but learn what they have in common?
08:49
danbri
always reminded of http://s173.photobucket.com/albums/w57/spn_imgs/?action=view&current=blahblah.jpg&newest=1 - old larson cartoon
08:49
<Hixie>
foolip: i'd rather just make it equivalent to an existing vCard RDF vocabulary, and let the RDF guys worry about how that matches FOAF
08:49
<danbri>
the existing vCard RDFs are in flux ... the 90s one is pretty broken and a new one is 'in the works'
08:49
<foolip>
oh, I didn't know there was a vCard RDF vocab, that sounds better though
08:50
<danbri>
you could add both harmlessly enough
08:50
<Hixie>
danbri: fundamentally RDFa and microdata present the same underlying triple idea in very different ways
08:51
<Hixie>
danbri: e.g. in microdata the presentation is more about groups of name-value pairs, where values can be further groups, or strings, or urls (or dates/times)
08:51
<Hixie>
danbri: whereas in RDFa the presentation is more about graphs
08:51
<Hixie>
danbri: of URLs
08:52
<foolip>
"It provides a simplified version of the basic factual claims that a page makes, stripped of flashy colours, pretty pictures or seductive language." <- surely one can express lies just as well in RDF as in natural language?
08:52
<Hixie>
danbri: in particular, with itemref="" in microdata you can even declare a bunch of name-value pairs without saying what group they're part of, and multiple groups (itemscope="" items) can import in those name-value pairs
08:53
<danbri>
interesting, do you have an example of where that's useful?
08:54
<Hixie>
it's not really useful for multiple items to use the same properties per se, but the use case for it is the same as the use case in RDFa for having about="" listed in several places
08:54
<danbri>
sounds like a kind of inheritance mechanism (but scoped to a single document I guess?)
08:54
<Hixie>
with the same value
08:54
<foolip>
Hixie: that last part about sharing subtrees between several items seems dubious though, certainly it means the model isn't a tree any longer but a directed graph (I think)
08:55
<Hixie>
e.g. see http://damowmow.com/playground/microdata/004/review-annotated.html
08:55
<Hixie>
foolip: depends what you consider the nodes
08:55
<foolip>
if you can fix itemref loops without breaking that though, fine
08:55
<foolip>
I did break it in my solution
08:56
<Hixie>
danbri: (except, if you look at that solution, pretend that <itemref> is really an itemref="" attribute next to the itemscope="" attribute)
08:57
danbri
not quite seeing the difference
08:57
<Hixie>
as what?
08:58
<danbri>
ah maybe i misunderstood your 'can import in those name-value pairs'
08:58
<Hixie>
here's another way of showing the difference
08:58
<danbri>
they're linked by a named property/relationship, not copied directly in?
08:58
<Hixie>
in microdata, if you say <div itemscope itemtype=... itemid=X></div><div itemscope itemtype=... itemid=X></div>, there are two empty groups of name-value pairs with no properties
08:59
<Hixie>
in RDFa, if you say <div about="X"></div><div about="X"></div>, there is no data present.
08:59
<danbri>
(folip, yes, it's important to be able to lie ... I was trying to capture that these property/value language strip out a lot of the human richness from docs, to dumb them down to computer level)
08:59
danbri
nods
09:00
<Hixie>
now it happens that microdata has a (lossy) mapping to RDF, and RDF has a (lossy, implied) mapping to microdata, but it's not the point of the mechanism
09:01
<Hixie>
unlike RDFa where the conversion to RDF is lossless and is the point of the mechanism
09:01
<danbri>
what's lost when you go from microdata to rdf?
09:02
<Hixie>
you can't refer to something with no properties in a triple store
09:02
<Hixie>
there's no triple
09:03
<Hixie>
you also lose the untyped items
09:03
<Hixie>
and currently you lose some type information from <time> elements, though that could be fixed
09:04
<Hixie>
my three legged cat is climbing on top of my bike
09:04
<Hixie>
this could go very poorly
09:04
<danbri>
hmm, I could say that http://danbri.org/foaf.rdf#danbri is a foaf:Person ...
09:04
<Dashiva>
Yeah, he'll never reach the pedals
09:04
<Hixie>
she's now sitting on the seat
09:04
<danbri>
and that it has a http://example.com/fooprop of http://example.org/barvalue
09:04
<danbri>
and say nothing more about barvalue
09:05
<danbri>
is that what you mean by a thinkg with no properties? do you count "incoming" properties as its properties?
09:05
<danbri>
since often the naming/direction of a property is pretty arbitrary
09:05
<danbri>
'made' vs 'maker' etc
09:06
danbri
grins re cat
09:06
<Hixie>
ok, back. sorry, had to take a picture of the cat doing this or my girlfriend would never believe me.
09:07
<Hixie>
danbri: consider <div itemscope></div> -- it's an item, but it has no type, no properties, and no identifier.
09:07
danbri
looks for a numLegs property in http://hyperdata.org/xmlns/pets/hedwig.xml ... fails
09:08
<Hixie>
danbri: it can exist in microdata (the DOM API can reference it), but I can't see how it can exist in RDF.
09:08
<danbri>
ok, it's a placeholder piece of markup?
09:08
<Hixie>
could be, yeah
09:08
<danbri>
oh, got you
09:09
<danbri>
so i guess if we distinguish APIs to the markup, from APIs to 'what the markup tells us', we get both
09:09
<danbri>
RDF APIs won't tell you the grouping clusters that things came in, in their source graphs
09:09
<danbri>
they tend to take pride in protecting people from needing to care about that
09:09
<Hixie>
yeah
09:09
<Hixie>
i don't think this is a failure of either model
09:09
<danbri>
but markup APIs obviously need that too, eg. to make an editor
09:09
danbri
neither
09:09
<Hixie>
but it's a difference
09:10
<Hixie>
in most practical applications, these differences would likely not come up much -- you don't exactly need to express an empty item often
09:10
<Hixie>
anyway, this is one of the examples of the reason i think it's best not to try to explain microdata and RDFa models together
09:11
<danbri>
so this is more a difference between the packet of deliverables the RDFa project and the Microformats project give you; former gives you markup, triples model, and maybe eventually an API to the triples; latter gives you markup, triples model, and an API to the markup
09:11
<Hixie>
i think it might confuse people more than help, as they might try to apply one model to the other, and get confused
09:12
<danbri>
so, in both models, we are saying ... that any bit of markup can be scoped to be 'about' some specific thing of interest; and we might or might not identify that thing specifically. but regardless, it is a grouping construct for a collection of properties/links that describe it.
09:12
<Hixie>
do you mean "microformats" there or "microdata"?
09:12
<danbri>
yeah sorry
09:12
<danbri>
s/microformats/microdata/
09:13
<Hixie>
ah ok
09:13
<danbri>
mini-info, tiny-factoids, etc :)
09:13
<Hixie>
i wouldn't really say microdata is a triples model
09:13
<Hixie>
it's more a nestable name-value pair list model
09:13
<danbri>
but it does (perhaps grudgingly) give you the triples
09:13
<Hixie>
it can be converted to triples, yeah
09:13
<danbri>
so is any rdf syntax
09:13
<Hixie>
like rdf can be converted to name-value lists
09:13
<Hixie>
but it's not a perfect translation
09:14
<Hixie>
e.g. you can't express an empty list as triples sanely
09:14
<danbri>
people didn't make RDF 'cos they loved triples; they made it cos they wanted to get a big pile of name-value metadata systems talking to each other
09:14
<danbri>
yup, that's the syntax / model distinction again
09:15
<Hixie>
also, re your "in both models" statement above, it's possible to make name-value pairs in microdata without scoping it to a subject (item):
09:15
<danbri>
in RDF too, kinda
09:15
<danbri>
I can write:
09:16
<Hixie>
e.g. <div itemscope itemtype=... itemid=A itemref="q r"></div> <div id=q itemprop=Q>...</div> <div id=r itemprop=R>...</div> -- q and r could be referenced from other items also
09:16
<Hixie>
so they're not scoped to A
09:16
<Hixie>
(actually that's the case even if they _are_ scoped to A)
09:16
<danbri>
<rdf:Description><owner><Person><name>Ian Hixon</name></Person></owner><numLegs>3</numLegs></rdf:Description> ....
09:16
<danbri>
... ie. 'there is something, ... owned by hixie, ... with 3 legs'
09:17
<Hixie>
in the microdata example above, id=q doesn't say "there is something with Q=...", it only says "Q=..."
09:17
<Hixie>
if nothing references it, then nothing has Q=...
09:17
<Hixie>
(and there's a conformance error, but that's another problem)
09:17
<danbri>
and you're finding that construct useful?
09:18
<Hixie>
it proved to be a less confusing way of allowing properties of a single item to be scattered across a document than having each one be scoped to an item and for all those items to share the said itemid
09:19
<danbri>
but in that case they are properties of some item?
09:19
<Hixie>
yeah
09:19
<Hixie>
the one(s) that referenced them
09:19
<danbri>
(or item means the grouping construct, not the thing described?)
09:19
<Hixie>
item means the thing with itemscope=""
09:19
<Hixie>
the list of name-value pairs
09:20
<danbri>
beginning to think we need a testcase repository
09:20
<Hixie>
e.g. you can do <div itemscope itemref="a b"></div> ...blabla... <meta itemprop=a content="1"> ...blabla... <link itemprop=b href="2">
09:20
<danbri>
irc is a bit cramped for this sort of detailed comparison
09:21
<Hixie>
with the RDFa-style you would do just ..blabla... <meta about=X rel=a content="1"> ...blabla... <link about=X rel=b href="2">
09:21
<danbri>
for rdf/xml we used http://www.w3.org/2000/10/rdf-tests/rdfcore/ ... basically a collection of rdf/xml documents plus normalised triples extracted, and some working-group metadata
09:21
<Hixie>
(but when we did the usability tests we found people got far more confused by that than the itemref thing)
09:22
<Hixie>
(even though it seems simpler)
09:22
<Hixie>
(it is also harder to expose in the DOM, since there's no longer a single element that maps to an item)
09:22
<danbri>
i'm confused by both here! using real examples rather than 'a', 'q', 'foo' etc helps, esp as i don't know your syntax well
09:23
<danbri>
care to bash a full example into a wiki somewhere?
09:23
<Hixie>
both are intending to express the triples X,a,1 and X,b,2
09:23
<danbri>
...and the human prose wrapped around those two triples is in same bit of the doc, or different bits of the doc?
09:24
<Hixie>
different
09:24
<danbri>
(how do i get an url to this conversation btw? there's a logger bot with #-offsets somehow?)
09:24
<Hixie>
see /topic
09:26
<hsivonen>
Hixie: were you aware of IE running <script defer> specified in innerHTML when you specced defer?
09:26
<Hixie>
!
09:26
<Hixie>
no
09:26
<hsivonen>
Hixie: see https://bugzilla.mozilla.org/show_bug.cgi?id=539812#c1
09:27
<hsivonen>
I guess that partilly explains sicking's findings of defer execution in IE being sensitive to whether innerHTML setter is also used
09:28
<Hixie>
i guess so
09:28
<Hixie>
i have no intention of duplicating that
09:28
<Hixie>
far too much depends on innerHTML not running code
09:28
<Hixie>
i am very surprised to hear of this
09:29
<hsivonen>
I am, too
09:31
<smaug>
AryehGregor: I can check that in soon
09:32
<Hixie>
danbri: http://damowmow.com/temp/a.txt
09:33
<Hixie>
(reload if you already opened it)
09:34
danbri
was afk, ... back ... clicks
09:34
<Hixie>
er wait
09:34
<Hixie>
reload
09:34
<Hixie>
i had forgotten the whole point of the example
09:35
danbri
notes that 'see topic' in LimeChat shows: ' (danbri) #whatwg (100, +sn) WHATWG: http://www.whatwg... ' ...and nothing more
09:35
<danbri>
limechat--
09:35
danbri
clicks around
09:35
<Hixie>
Topic for #whatwg: WHATWG: http://www.whatwg.org/ -- logs: http://krijnhoetmer.nl/irc-logs/ -- stats: http://gavinsharp.com/irc/whatwg.html -- Please leave your sense of logic at the door, thanks!
09:35
<danbri>
thanks
09:35
Hixie
hugs irssi
09:35
<danbri>
i got it by using limechat's 'change topic' dialog, clumsy!
09:36
<workmad3>
danbri: yeah, limechat's topic bar is sucky
09:37
<workmad3>
it's only using about 1/3 of my screen width to display topic up there :(
09:38
danbri
considers filing a bug; finds a version 1.4 to try
09:38
<danbri>
bbialb
09:39
<hsivonen>
foolip: I think manu was overstating the Process status of RDFa and Aryeh was overstating the Process status of Microdata on the mediawiki list
09:40
<hsivonen>
Hixie: making children point to parent by id would fix the loop issue
09:40
danbri
waves from a shiny new limechat ... same /topic display problem
09:41
<Hixie>
hsivonen: come again?
09:41
<Philip`>
Freenode seems really quite broken
09:41
<danbri>
hixie, can i click yet?
09:42
<Philip`>
AryehGregor: Worst case is O(n^2), I think, if you have particularly carefully-chosen input
09:42
<Hixie>
danbri: sure
09:42
<hsivonen>
Hixie: if instead of itemref pointing from parent to child you have an attribute for reparenting a child, the structure is guaranteed to be a tree
09:42
<Philip`>
because the error-correcting algorithm can generate that many nodes
09:42
<Hixie>
hsivonen: we tried that
09:42
<Hixie>
hsivonen: it didn't fare well in usability testing
09:42
<Philip`>
though implementations could apply some limit to prevent that growing forever
09:42
<Hixie>
(that's what we had initially -- itemfor="")
09:43
<Philip`>
AryehGregor: Also implementations can have O(n^2) string concatenation cost unless they're very careful
09:43
<danbri>
ok http://damowmow.com/temp/a.txt makes a big diff with rdfa syntax clear
09:43
<Hixie>
Philip`: there's an attack going on in #webkit
09:43
<hsivonen>
Hixie: I guess usability doesn't need to be sensible when it comes to the coherence of the data structures
09:43
<Philip`>
AryehGregor: (For typical input it should be O(n), I believe)
09:44
<danbri>
the licensing name/value pair gets attached to all the things mentioned in the earlier items ... that suprised me
09:44
<Philip`>
Hixie: Oh, right
09:44
Philip`
parts that channel
09:44
<Hixie>
yeah taht was my solution too
09:44
<danbri>
not saying it's good-bad-wrong-right, ... just didn't realise microdata did that
09:44
<Hixie>
danbri: it's itemref="" doing that
09:45
<Hixie>
it's a bit like a #include
09:45
<jgraham>
AryehGregor: Also, the PHP implementation is very different from the python one (I only really know about the python one)
09:45
<danbri>
ah sorry, didn't see that attribute
09:45
<danbri>
thought it was some defaulting mechanism
09:46
<danbri>
id="licenses" is a bit like what we call 'bnode identifiers' ... things that don't play a role in real URIs but just serve to group things together within some document context
09:47
<Hixie>
id="" is just a regular HTML id attribute
09:47
<Hixie>
not part of microdata per se, except as a way for itemref="" to identify another element
09:59
<danbri>
hixie, thanks for the microdata chat. heading off now, but i think i learned a bit more about how you're thinking at least...
09:59
<Hixie>
cool
09:59
<Hixie>
feel free to come discuss it more :-)
10:00
<Hixie>
your feedback is very welcome
10:13
<foolip>
Hixie: http://damowmow.com/temp/a.txt was the first example I've seen that shows clearly that shared properties may actually be useful. putting this in the spec would be most helpful
10:13
<Hixie>
k
10:16
<foolip>
since allowing shared properties makes elminating itemref loops a bit more difficult, I suppose the only option is make the steps that find the subtrees to crawl very complex or to fix each algorithm modeled on top of "the properties of an item" detect recursion and fail (yuck)
10:18
<foolip>
...to detect...
10:19
<danbri>
maybe http://damowmow.com/temp/a.txt and similar could go in html wg cvs somewhere?
10:19
<Hixie>
something like it will go in the spec
10:20
<danbri>
since - for better or worse - rdfa and microdata seem in parallel development, having a set of examples with their expression in each system would be good
10:21
<gsnedders>
AryehGregor: AFAIK nobody has thought about complexity. There was talk about the AAA being O(n^2) though.
10:22
<gsnedders>
AryehGregor: As for PHP serializing, the DOM html methods just use the libxml stuff, so don't cope overly well with the new html5 stuff
10:23
<Hixie>
danbri: yeah, that could be useful.
10:23
<Hixie>
if anyone wants to volunteer to do that, that'd be awesome
10:25
<danbri>
i joined the wg formally but haven't been v involved yet
10:25
<danbri>
maybe i'll collect a few examples and see if the wg wants 'em
10:25
<danbri>
a wiki would be natural except it's tough with markup cos you never know what'll get scrambled :(
10:25
<foolip>
danbri: you could put them on the WHATWG wiki
10:25
<foolip>
lunch
10:25
<Hixie>
i can guarantee that you'll pass the chair's "three interested people to publish" bar if you want to publish a NOTE with such examples
10:26
<danbri>
if i get around to it, will probably start in foaf svn and if i get 5 useful examples, start worriying about where it sohuld really live
10:26
danbri
has a big pile of other todos this month, but it's an interesting compare/contrast to do
10:27
<Hixie>
yeah i'm swamped with stuff too
10:27
<danbri>
hixie , do you ever run into R.V.Guha around google?
10:27
<Hixie>
i fear that's a common affliction of standards wonks
10:28
<Hixie>
danbri: yeah
10:28
<Hixie>
danbri: he as one of the people i worked with when we did the microdata usability study, in fact
10:28
<Hixie>
he was, even
10:28
<Hixie>
or is
10:28
<Hixie>
just not "as" :-)
10:29
<danbri>
:)
10:29
<Hixie>
foolip: checked in the new way of doing itemref=""
10:44
<Hixie>
wow, html4 doesn't even require href="" on <link>
10:44
<Hixie>
"<link>" appears to be valid
13:01
<Hixie>
ok nn all
15:14
<TabAtkins>
Hrm. Joe Williams' latest email sort of trailed into incoherence there at the end.
15:14
<TabAtkins>
It's a strange, gradual breakdown of coherency.
15:33
<Lachy>
awesome. I just got confirmation that Selectors API 2 will be published as FPWD tomorrow
15:34
<TabAtkins>
Cool.
15:37
<Lachy>
after FPWD, I think I'm going to seriously consider dropping queryScopedSelector.
15:37
<Lachy>
Though, I'm still waiting for some additional feedback from some people
15:59
<foolip>
Lachy: what does queryScopedSelector do?
15:59
<foolip>
doesn't calling querySelector on an arbitrary element also scope the results?
16:02
<Lachy>
it implies the presence of :scope at the beginning of the selector, where :scope will match the element it's called on.
16:03
<Lachy>
but that pre-processing only works for selectors that begin with a simple selector, so the common shortcut in JS libraries like "+div" can't be used
16:04
<Lachy>
in most cases, it's functionally the same as calling document.querySelector(":scope+div", elm); where elm is some element you want to select relative to.
16:04
<foolip>
oh, so elm.querySelector doesn't work?
16:05
<foolip>
I remeber trying that many times, but can't remember if it worked or not
16:07
<Lachy>
elm.querySelector only allows you to select descendants, not siblings
16:07
<Lachy>
so while it works for the " " and ">" combinators, it doesn't work for "+" or "~"
16:08
<Lachy>
queryScopedSelector was supposed to solve that, bug since modifying the selector syntax to allow them to being with combinators is out of the question, as far as the CSSWG is concerned, it doesn't really help much
16:09
<TabAtkins>
Argh, Lachy, quit saying that. It's wrong.
16:10
<TabAtkins>
There was a specific thing that we didn't like, the ! at the beginning to indicate scoped-ness.
16:10
<TabAtkins>
Anne didn't like starting with a combinator, but the rest of us did.
16:10
<Lachy>
yeah, I know Anne hates it. I'm sure there were others in the CSSWG who said I shouldn't be modifying the selector syntax to allow selectors to begin with combinators
16:11
<TabAtkins>
Not in the thread, there weren't. I reviewed it a week or two ago.
16:11
<TabAtkins>
Parity with jQuery was an important point.
16:17
<Lachy>
there was some initially from fantasai, but looks like she might have somewhat changed her mind in her last mail in the thread
16:26
<Lachy>
anyway, TabAtkins, before I decide what to do about queryScopedSelector and whether or not to bring back support for selectors beginning with combinators, I want to get feedback from othermaciej and JS library devs like JohnResi1
16:26
<TabAtkins>
kk
16:33
<Dashiva>
It seems all the differences in expression ability between RDFa and microdata are either obscure edge cases, or things you shouldn't be doing in the first place
16:34
<Lachy>
isn't the only difference in the ability to specify the value's type in RDFa, whcih is something that should be defined by the vocabulary?
16:34
<Dashiva>
There's also stuff relating to unidentified items (only microdata), cyclical blank nodes (only RDFa) and some others
17:42
<JonathanNeal>
Goodmorning!
17:43
<cardona507>
,good morning! we really are on the same schedule - I just showed up like 2 minutes ago :)
17:43
<JonathanNeal>
haha
17:43
<JonathanNeal>
Well, cardona, allow me to show you our new website :P i kid
17:43
<cardona507>
hehe
17:44
<cardona507>
HTML5 & CSS3 goodies?! sounds so cutting edge
17:44
<JonathanNeal>
yes, oh yes, oooooh yes it's true.
17:47
<TabAtkins>
JonathanNeal: Congrats on your site launch!
17:48
<JonathanNeal>
TabAtkins, thanks, and thank you for the help along the way.
17:48
<JonathanNeal>
I'm not done learning and following HTML5, though, gotta stay on top of it now that we're officially using it.
17:52
<JonathanNeal>
Since, you never know, you guys might decide to pull <header> or something on me, I gotta be quick.
17:53
<TabAtkins>
Man, we might.
17:53
<TabAtkins>
We crazy.
17:53
<cardona507>
no doubt
17:54
<TabAtkins>
Darn, Project Euler is down right now. ;_
17:54
<TabAtkins>
s/;_/;_;/
17:55
<cardona507>
I wasn't aware of Project Euler - that looks pretty cool
17:56
<TabAtkins>
Wait, what? You can see it?
17:56
<TabAtkins>
downforeveryoneorjustme.com told me that it was everyone!
17:57
<cardona507>
no - I googled it and read the snippet :)
17:57
<TabAtkins>
Oh, ok.
17:59
<cardona507>
did you see that downforeveryoneorjustme.com was recently sold? http://www.techcrunch.com/2010/01/12/down-for-new-owner/
18:01
<TabAtkins>
No, I hadn't seen that.
18:01
<TabAtkins>
Looks like it shouldn't cause any alarm, though.
18:02
<cardona507>
I didn't realize that the site was big enough to warrant a purchase.
18:07
<TabAtkins>
Argh, I really wanna rewrite this stupid thing before I leave.
18:07
<TabAtkins>
I hate things that use old apis, especially when they're old apis that I wrote. >_<
18:07
<TabAtkins>
And this is like v1 of the api. I'm currently on v4, which is *stupidly* cleaner and easier to work with.
19:03
<cardona507>
tabatkins - you probably already knew - but projecteuler.net is live
19:04
<TabAtkins>
Ah, excellent.
19:04
<TabAtkins>
I hadn't checked it again yet.
19:09
<cardona507>
TabAtkins - I am new to this site - can I use JS?
19:10
<TabAtkins>
You can use whatever language you want. Do them by hand, if you feel like it.
19:10
<TabAtkins>
It's nothing more than an opportunity to challenge yourself and increase both your math and programming skills.
19:10
<cardona507>
very interesting...
19:14
<TabAtkins>
It's also a great way to jump into a new language and learn the efficiency paradigms underneath it.
19:17
<cardona507>
This is what i've been looking 4
19:17
<cardona507>
and I doubt i'll do them by hand :)
19:17
<gsnedders>
It won't load here
19:18
<cardona507>
yeah its actin spotty here too. Gsnedders - congrats on the opera job!
19:21
gsnedders
feels bad, thinking he ought to know who cardona507 is, especially seeming he's being congratulated
19:22
<cardona507>
:) I don't think we met @ TPAC this year - i am kinda new to WHATWG - maybe 8 months.
19:22
<TabAtkins>
He wasn't at TPAC.
19:23
<cardona507>
ahhh that explains it...
19:59
<zcorpan__>
can someone summarize what's happened on public-html the past two weeks?
20:03
<foolip>
do you ask that as a joke or do you really want to know?
20:03
<zcorpan__>
i want to know, i haven't been reading any of it for the past two weeks
20:04
<foolip>
the chairs decided on microdata
20:04
<foolip>
in a veeeery long decision it was decided to split it, as I'm sure you've noticed
20:04
<zcorpan__>
yeah
20:05
<foolip>
lots of new bugs/issues about removing various sections/elements
20:05
<foolip>
many of them filed by Shelley
20:05
<foolip>
oh, and some discussion about autobuffer
20:05
<Dashiva>
Hixie decided to accept many of the split suggestions due to the microdata precedent
20:06
<foolip>
whether or not to change the name and add more states than "on" and "off"
20:06
<zcorpan__>
i think if webkit acted as firefox, no-one would complain about the spec about autobuffer
20:06
<foolip>
there hasn't been any conclusion yet, but I mostly support renaming it and keeping the same two states we have: "auto" and "bufferitallman"
20:06
<Dashiva>
Then there was backlash from all the splits, and discussion about how the decision policy allows people to skip the mailing list completely
20:07
<Dashiva>
Most of the splits were reverted, and Shelley filed issues for them instead
20:07
<foolip>
I think the 2d context stayed split though
20:07
<Dashiva>
Yeah
20:07
<zcorpan__>
personally i'm against (non-editorial) changes to autobuffer: i think it's fine as is
20:07
<foolip>
as well as... cross-window messaging or something?
20:08
<Dashiva>
Messaging is being moved to webapps, assuming their charters can get changed to accomodate it
20:08
<Dashiva>
There's also been spillover from the mediawiki discussion about microdata vs rdfa
20:08
<foolip>
zcorpan__: it'll be impossible to implement anything like "stall before downloading anything" in the current state of affairs, which is why I somewhat support renaming it
20:09
<Dashiva>
Some talk about dumping RDFa completely now that there's no reason to pretend otherwise
20:09
<Dashiva>
*dumping microdata
20:09
<Dashiva>
Heh
20:09
<foolip>
hehe, I thought I'd missed something
20:09
<Dashiva>
Just my personal bias slipping through, I guess :P
20:09
<foolip>
well, there have been a few objections to publishing a FPWD on the basis that the W3C shouldn't compete with its own technologies
20:10
<zcorpan__>
foolip: would we want to do that on anything other than mobile/pay-per-byte anyway?
20:10
<Dashiva>
And then some people pointed out that w3c competes with itself basically every week
20:10
<foolip>
Dashiva: do you post to the lists? using another name than Dashiva ?
20:10
<Dashiva>
Oh, there was some charter discussion about what is considered extension points and not
20:11
<zcorpan__>
foolip: maybe we can get the spec to require act-like-stall if poster is present?
20:11
<Dashiva>
foolip: I do, but only a few times a year
20:11
<foolip>
zcorpan__: right, but we can't really do that with the current spec, because we couldn't go to HAVE_METADATA, which block the load event
20:12
<zcorpan__>
foolip: i thought the spec said not to block the load event if the UA chooses to stall
20:12
<foolip>
tying it to poster was of course the original idea, but poor <audio>
20:12
<zcorpan__>
oh audio
20:12
<foolip>
sure, but then we won't ever fire the load event on window, which is sure to make our browser impopular
20:12
<daedb>
Does <audio> not have poster images?
20:12
<Dashiva>
Oh, and there's been a slow but steady stream of canvas accessibility posts
20:13
<zcorpan__>
foolip: not blockign the load event means the load event gets fired...
20:13
<foolip>
Dashiva: no, they just have controls which are approximate the height of a line of text
20:13
<foolip>
(so says the spec, they're actually bigger in shipped browsers)
20:14
<foolip>
zcorpan__: my concern is that people will write scripts that assume the availability of metadata when the load event fires, which will break if the browser stalls too early (and fires the load event)
20:15
<daedb>
It would be kinda nice to have a poster-like attribute on <audio> for album art.
20:15
<zcorpan__>
foolip: i understand the concern
20:15
<foolip>
daedb: you can always use <img> :)
20:15
<daedb>
But then I have to type more!
20:16
<daedb>
:-p
20:16
<Dashiva>
daedb: Use video?
20:16
<Dashiva>
With an empty video stream :)
20:16
<foolip>
right, that works too actually
20:16
<foolip>
right, <video src="music.oga" poster="coverart.jpg"></video>
20:17
<foolip>
I don't really know if there's a good solution to the ultra-conservative bandwidth approach
20:18
<foolip>
not doing it is also a very realistic alternative
20:18
<zcorpan__>
if *authors* want to be ultra-conservative, is it too much to ask to use a bit of scripting?
20:18
<foolip>
no, it isn't
20:18
<zcorpan__>
i agree
20:19
<foolip>
and arguably the amount of data needed to download the first frame and get duration is quite acceptable
20:19
<zcorpan__>
and if a browser wants to be ultra-conservative, then it'll ignore the attribute anyway
20:19
<zcorpan__>
yeah
20:19
<zcorpan__>
so i still think the spec is fine as is :)
20:19
<foolip>
they can't be too conservative without breaking sites, probably
20:19
<foolip>
yeah, I think I wont push this, I would probably regret it in 5 years
20:20
<foolip>
what else has happened in public-html ... ?
20:20
<ATAN>
Any HTML5 talk on somehow having telephone numbers in links? Kind of like how mailto: is for e-mail, but instead to open up the telephone app on your pc?
20:21
<foolip>
cssquirrel is upset as usual, but this time there was a spin-off podcast with among other brucel which was kind of good (but too long)
20:21
<zcorpan__>
ATAN: there's tel:
20:21
<ATAN>
Oh really? :D How does one use tel: ?
20:21
<ATAN>
*googles*
20:21
<zcorpan__>
<a href="tel:012345">
20:22
<ATAN>
Hmm the doc I see is dated 2004. Is this implemented now?
20:23
<zcorpan__>
i think tel: is supported by opera, but not sure
20:24
<daedb>
yaay, <audio> crashed my browser :)
20:24
<zcorpan__>
daedb: which browser?
20:25
<daedb>
zcorpan__: Opera 10.5
20:26
<zcorpan__>
daedb: did it have controls=""?
20:26
<daedb>
yes
20:26
<foolip>
oh right, we know about this bug, all too well
20:27
<foolip>
fear not, it'll be fixed soon
20:29
<zcorpan__>
"working out all the details about how the last thing that they created is going to form a coherent standard, isn’t as much of interest to them." - http://www.sitepoint.com/blogs/2010/01/15/podcast-44-html5-is-a-beautiful-mess/
20:29
<foolip>
there's a transcript?
20:29
<zcorpan__>
yeah
20:30
<foolip>
oh, I should have skimmed that instead of listening for that whole... 40 minutes
20:34
<zcorpan__>
ok thanks for the summary
20:34
<zcorpan__>
i guess i can now mark all my email as read
20:42
<AryehGregor>
It annoys me when someone splits a thread, I respond to the earlier thread because I see it first, and then I realize I really should have read the split thread first.
20:42
<Dashiva>
"And then finally we have this ideal of consensus whatever that means on any given day, whether it’s you get 75% of people in the working group voting the same way, you call that consensus and too bad if you’re in the other 25%."
20:42
<Dashiva>
Sounds like consensus isn't what it used to be
20:44
<zcorpan__>
w3c consensus is no objections, isn't it?
20:45
<Dashiva>
Something like that
20:45
<Dashiva>
I don't think any definition of consensus lets you override 25%
20:45
<AryehGregor>
Wikipedia consensus does.
20:45
<AryehGregor>
Or, I should say: Wikipedia "consensus" does.
20:46
<AryehGregor>
A lot of groups seem to have independently realized that consensus-based decision-making is a great idea, and so adopted that, except without the consensus part.
20:46
<Dashiva>
Oh, right. Forgot about that.
20:47
<Dashiva>
Wikipedia consensus seems more like benevolent dictator, where the dictator happens to be whatever arbcom member is on duty
20:47
<AryehGregor>
No, ArbCom is totally different. That's just plain votes, but they usually only accept cases where people have been misbehaving and won't stop.
20:47
<AryehGregor>
AFAIK, the ArbCom always votes in full on any given case, barring recusals.
20:48
<AryehGregor>
ArbCom members definitely don't have much of any privileges beyond voting on ArbCom cases, last I checked.
20:48
<AryehGregor>
enwiki has Jimbo Wales as a benevolent dictator. Everyone else only has Wikimedia employees, who have been known to randomly do whatever they think is appropriate regardless of what anyone thinks.
20:49
<AryehGregor>
(although pretty rarely, and usually with good reason)
20:49
<Dashiva>
Hum, I thought arbcom handled first-line disputes
20:50
<Dashiva>
Like appeals of page deletion
20:50
<AryehGregor>
No, they typically only accept disputes that have been running for months with no resolution by other means, or sometimes one-off sysop misbehavior (since they're the only ones who can desysop).
20:50
<AryehGregor>
There are about ten ArbCom members.
20:51
<AryehGregor>
You're probably thinking of the myriad other bureaucratic processes on Wikipedia, which are mostly managed by sysops, who number one or two thousand. Yes, a request for page deletion/undeletion or such is decided by a single sysop arbitrarily.
20:51
<AryehGregor>
And it can really depend on who closes the request.
20:51
<AryehGregor>
Regardless of discussion.
20:52
<Dashiva>
Aha
20:52
<AryehGregor>
There are other procedures that have accreted over time. Like Raul654 runs the front page unilaterally last I checked, just because he's been running it for years and nobody dislikes him much.
20:53
<AryehGregor>
And promotion to sysop is handled by bureaucrats, who usually do it by strict vote (75-80% support required) but have sometimes ignored the vote.
20:53
<AryehGregor>
And of course anything that doesn't require privileges (like changes to policy pages) is decided by whoever has the most people to flood discussions and revert your edits without appearing tendentious.
20:53
<AryehGregor>
(changes to articles, too)
20:54
<AryehGregor>
All very chaotic.
20:55
<zcorpan__>
http://cristianadam.blogspot.com/2010/01/ie-tag.html - wonder if this poisons <video> for ie when they want to implement it natively
21:00
<AryehGregor>
"Next steps would be:
21:00
<AryehGregor>
Actually display a video instead of a gray rectangle"
21:01
<AryehGregor>
I think it needs to get a bit further before poisoning anything. :)
21:02
<zcorpan__>
of course
21:02
<AryehGregor>
I don't know why it would poison anything, though?
21:04
<TabAtkins>
If they do anything differently than what the plugin expects, it'll break pages that use the plugin.
21:04
<TabAtkins>
Since it can't tell them apart.
21:07
<zcorpan__>
i guess when <video> becomes a known tag, it won't talk to the plugin anymore
21:07
<zcorpan__>
since xmlns is ignored on known html tags
21:08
<zcorpan__>
still, pages could probably somehow depend on the plugin to be used
21:09
<zcorpan__>
it seems safer to use javascript object detection before invoking the plugin
21:09
<AryehGregor>
Or just use the fallback mechanism built into <video>?
21:10
<zcorpan__>
AryehGregor: with <video><object ....>? yeah
21:11
<zcorpan__>
hmm, seems using xmlns is a way to make ie8+ recognize unknown tags
21:11
<foolip>
AryehGregor: hope my RDF quirks storytelling made sense
21:12
<foolip>
about the storage, there are other graph databases than triplestores which are very performant, and for microdata something like couchdb makes sense I think
21:12
<zcorpan__>
so <section xmlns=http://www.w3.org/1999/xhtml>; if you need new elements to work in ie without scripting
21:12
<zcorpan__>
was it in ie7 or ie8 they changed the namespace thing?
21:13
<zcorpan__>
ie8
21:14
<zcorpan__>
wonder if i should make a whatwg blog post about xmlns and ie8
21:16
<zcorpan__>
i guess maybe not since it'll litter pages with useless attributes
21:17
<zcorpan__>
http://twitter.com/robin_reala/statuses/7899890739
21:19
<jgraham>
daedb: If you're using Opera 10.50 on Windows and didn't already notice there was a new snapshot build recently
21:20
<jgraham>
daedb: Also, if you find problems (including site-compat issues), please, please file bugs
21:20
<daedb>
jgraham: Yeah, I know. Already have the latest one ;)
21:20
<jgraham>
Awesome :)
21:37
<zcorpan__>
http://rebuildingtheweb.com/en/invitation-html5-team/ has comments again, wonder if he fixed the bug or just removed Philip`'s comment
21:38
<Lachy>
I think he just stripped the bogus character from Philip`s comment
21:39
<foolip>
what does clicking "I've read the changes" in the diffs actually do?
21:39
<foolip>
make you feel good?
21:40
<zcorpan__>
it sets a cookie so that the from/to fields are prefilled next time you visit
21:40
<zcorpan__>
useless feature
21:40
<zcorpan__>
feel free to replace it with a next link
21:40
<foolip>
what with userjs?
21:41
<zcorpan__>
no, js
21:41
<zcorpan__>
oh
21:42
<foolip>
I don't have any priviledges on html5.org
21:42
<foolip>
not even a subdomain like you :'(
21:42
<zcorpan__>
i mean http://code.google.com/p/html5/source/browse/#svn/trunk/web-apps-tracker
21:43
<foolip>
oh
21:43
<zcorpan__>
the forms and workers trackers can probably be removed
21:44
foolip
is hacking on microdata
21:45
<foolip>
I hope the new algorithm is better
21:46
<TabAtkins>
Argh, floating-point error ruins me yet again!
21:46
<zcorpan__>
i'll see if i can get prev/next buttons for the tracker
21:47
<Dashiva>
I'm quite impressed with people who have the tenacity to argue with people like Vlad
21:48
<foolip>
who is Vlad, apart from the guy who wrote that blog post?
21:49
<Lachy>
I gave up discussing that error message issue with Vlad. Once he suggested only allowing new elements like <video> and <canvas> to only work in error free pages and not listening to what I was saying, I gave up
21:51
<zcorpan__>
wtf i can't checkout html5 google code
21:51
<zcorpan__>
it says untrusted certificate or somehting
21:51
<foolip>
yeah, it means Hixie can't be trusted
21:52
<zcorpan__>
command line allowed me to checkout anyway
21:55
<Philip`>
zcorpan__: He changed the thing where I said 'U+FFFF ("�")' to just say "U+FFFF"
21:56
<Dashiva>
So his blog is still broken then?
21:56
<Philip`>
No
21:57
<Philip`>
Lachy: He develops the XStandard editor
21:57
<zcorpan__>
only if someone posts a funny character again
21:57
<Philip`>
Uh
21:57
<Philip`>
s/Lachy/foolip/
21:58
<Philip`>
so he's one of the few authoring tools vendors who interacts with the HTML WG in any way
21:59
<Dashiva>
Maybe I should teach myself how to break XML
21:59
<Dashiva>
For fun and profit (tm)
21:59
<zcorpan__>
we should get more authoring tool vendors in the loop
22:02
<zcorpan__>
doesn't html5 have more forbidden character ranges than xml these days?
22:02
<Philip`>
zcorpan__: But only ones whose opinions we agree with
22:02
<Philip`>
Dashiva: It's not hard
22:03
<Philip`>
Dashiva: Just stick U+FFFF (%ef%bf%bf) and U+000B (%0b) in all form inputs you can find
22:03
<Philip`>
and U+0000 too
22:04
<Dashiva>
But that's so simple. Surely there are other ways
22:04
<Philip`>
Who needs other ways when you've got those ways? :-)
22:04
<zcorpan__>
and the address bar!
22:04
<Dashiva>
Maybe someone fixes those
22:04
<Philip`>
They probably won't fix all of them
22:04
<Dashiva>
And I want to one-up him
22:04
<zcorpan__>
make a trackback
22:05
<Philip`>
Put invalid characters in an X-Forwarded-For header, and the server might blindly report that as your IP
22:05
<Dashiva>
That's more like it
22:06
<Philip`>
(Instiki didn't filter IPs at all so that was an XSS hole, not just a well-formedness hole)
22:07
<Dashiva>
I bet someone has already made an app for this
22:07
<Dashiva>
Invalidatr
22:07
<zcorpan__>
it's called "Philip`"
22:08
<Dashiva>
I can't download Philip`
22:09
<zcorpan__>
but you can interact with Philip` on irc
22:10
<Dashiva>
Not 24/6
22:10
<Dashiva>
or even 7
22:10
<Dashiva>
Anyhow, I'm going to interact with my bed
22:10
<Philip`>
Does it interact back?
22:10
<Dashiva>
Only in a third law manner
22:10
<Philip`>
How ordinary
22:11
<Dashiva>
Quite
22:11
<Dashiva>
Not even the third law of robotics
22:11
<Philip`>
Then again, talking mattresses are well documented as being irritatingly chirpy
22:12
<Philip`>
so perhaps it's best to stick with normal ones
22:19
<AryehGregor>
MediaWiki had a fun bug with X-Forwarded-For once.
22:20
<AryehGregor>
It ignores XFF except from trusted IP addresses, of course, since anything else is totally broken.
22:21
<AryehGregor>
Wikimedia routes everything through Squids, with the Apaches not on the public Internet, so the Squids' IP addresses are whitelisted.
22:21
<AryehGregor>
And they always send an XFF header, of course.
22:21
<AryehGregor>
The Squids also filter out evil X-Forwarded-For headers.
22:21
<AryehGregor>
But someone figured out that if you send an X_Forwarded_For header, Squid will ignore it, but PHP will treat it the same as X-Forwarded-For.
22:22
<AryehGregor>
So they tried to frame someone on Wikipedia for vandalism. But Tim Starling investigated and fixed the bug, and the guy was unbanned.
22:22
<Philip`>
That's quite evil
22:22
<zcorpan__>
what about X-Forwarded_For?
22:22
<AryehGregor>
zcorpan__, I assume the fix covers that too.
22:22
<Philip`>
(The header naming, not the framing)
22:22
<Philip`>
What about X#Forwarded#For?
22:22
<zcorpan__>
x-forwarded-for?
22:23
<zcorpan__>
forwarded-for?
22:23
<Philip`>
Hmm, I guess it's because CGI conventionally does s/-/_/g and prefixes HTTP_ to pass headers as environment variables
22:23
<Philip`>
so only _ would suffer from that problem
22:24
<Philip`>
(I assume PHP follows the same silly interface as CGI despite not having any of the constraints that force it to do so)
22:24
<AryehGregor>
Yes, and it also uppercases.
22:24
<AryehGregor>
That's the format of keys for $_SERVER.
22:26
<Philip`>
Seems like an instance of the general problem of blacklisting
22:26
<Philip`>
It'd be securer for the Squids to only allow a specific set of headers through
22:26
<AryehGregor>
At least when used as reverse proxies, I guess, yeah.
22:27
<AryehGregor>
I don't know what the fix was.
22:56
<zcorpan__>
ok i've checked in prev/next links to web-apps-tracker
22:57
<zcorpan__>
but not tested it
23:04
<zcorpan__>
http://rebuildingtheweb.com/en/irresponsible-to-advocate-html5/
23:05
<Hixie>
zcorpan__: i think that's what we call a "single-issue voter" (http://rebuildingtheweb.com/en/)
23:06
<TabAtkins>
Bwuh? Advocating HTML5 is irresponsible because HTMLTidy doesn't yet recognize it?
23:07
<Hixie>
he's an xhtml tool vendor
23:07
<Lachy>
his first mistake is using HTML Tidy. That has never been a good tool to encourage developers to use for general development.
23:07
<Hixie>
so pretty much anything we do in text/html is going to give him issues
23:07
<zcorpan__>
i guess those authoring tools also mangle general web content since clearly they're not parsing html in a way compatible with browsers
23:07
<Hixie>
not much we can do about that given the constraints we're working with
23:07
<daedb>
Hasn't that guy given up yet? He should just stick to XHTML and be done with it.
23:08
<Lachy>
HTML Tidy has limited utility in cleaning up markup from some other source, which is a complete mess when obtained. In that case, running through tidy as an initial clean up step us acceptable
23:08
<foolip>
oh, new blog post?
23:09
<zcorpan__>
i wonder how the authoring tools handle perfectly valid xhtml
23:09
<zcorpan__>
i guess xstandard manages
23:09
<AryehGregor>
Wikipedia uses Tidy.
23:10
<zcorpan__>
can't tidy be run with a set of parameters to make it aware of the new tags?
23:10
<AryehGregor>
If html5lib becomes more mature and adds a "kill invalid stuff through any means necessary" feature, it would be nice to switch to that, but that doesn't seem likely in the immediate future.
23:10
<zcorpan__>
not that it'll fix the doctype or <a><div> problems though
23:10
<zcorpan__>
or other general compat problems tidy has
23:11
<foolip>
haha, he put a lot of effort into that blog post anyway
23:11
<zcorpan__>
i wonder why he doesn't put the effort into making an html5 aware editor
23:13
<foolip>
perhaps he doesn't like HTML
23:13
<zcorpan__>
i wonder why he doesn't put the effort into making an xhtml5 aware editor
23:13
<Hixie>
foolip: neither do i, but i recognise a lost cause when i see one :-)
23:14
<foolip>
hehe
23:15
<zcorpan__>
where's annevk?
23:16
<foolip>
I think he's on vacation with arjan or something
23:16
<zcorpan__>
ok
23:16
<Lachy>
if there are any plans to add an HTML-Tidy-like feature to html5lib, or to base such a tool on it, then there are some things in the parsing algorithm that should be avoided, or at least be careful about them
23:17
<Lachy>
in particular, the adoption agency algorithm, that can end up creating unwanted duplicate elements just by the accidental omission of an end tag
23:17
<foolip>
hmmm, what should be done instead then?
23:17
<Lachy>
e.g. given a case like this:
23:18
<Lachy>
<p>Some paragraph containing <b>an unclosed b element.</p><p>Another paragraph...</p>
23:19
<Lachy>
The parsing algorithm says to insert a new b element into the second paragraph. But it's more likely that the actual intention is to have the b element closed somewhere before the first paragraph
23:19
<Lachy>
I've seen the problem occur many times in forums that allow markup, but which don't sanitise it well. An unclosed link or b element, or something, can screw up the rest of the page
23:20
<zcorpan__>
inducing intention and moving away from the parsing algorithm seems like moving into Tidy land of incompatibility
23:20
<zcorpan__>
<p>foo<b>bar<b>baz</p> - there the second b tag is probably intended to be an end tag
23:21
<foolip>
perhaps sanitize comments/posts one-by-one rather than sanitizing as the last step before output?
23:21
<zcorpan__>
and in <p>foo/p> there's probably a < missing
23:22
<zcorpan__>
the second example is even valid html
23:22
<Lachy>
zcorpan__, yeah, that's true too. That case might also be detectable, but I'm sure there are limits to what can reasonbly be done. But the goal of a tidy program should be to make a best effort at giving a reasonble result, and not give something that is wildly unexpected and/or require significant cleanup afterwards
23:24
<Lachy>
in the case of an unclosed inline element, choosing not to reopen it again is the least detrimental choice that won't require too much author intervention to clean up again. But inserting a bunch of new elements into subsequent paragraphs will take more time for the author to then go and strip them
23:24
<AryehGregor>
Lachy, as long as the output is parsed by browsers the same as the input would have been, is it really the sanitizer's problem?
23:25
<Lachy>
AryehGregor, if the sanitizer is supposed to help developers, then it should give a better result than what browsers are forced to do for compatibility reasons
23:25
<AryehGregor>
Lachy, not if it's being automatically run on every page save or whatever. If you're planning on editing the output manually, that's different.
23:25
<Lachy>
huh? I think you might be considering a different use case from what I am.
23:26
<AryehGregor>
Possibly.
23:26
<AryehGregor>
Wikipedia runs Tidy on the user-submitted content in every page before serving it.
23:26
<AryehGregor>
It's run as part of the wikitext parsing, toward the end.
23:27
<AryehGregor>
Basically just for the sake of validating.
23:27
<Lachy>
my use case is an author writing some content in a CMS, and submits it. The CMS then checks the input and finds unclosed elements. It could either point out the error and return the markup unchanged for the user to continue editing, or ...
23:27
<AryehGregor>
Or just silently fix it and publish.
23:27
<Lachy>
it could offer to clean it up in a sensible way
23:27
<AryehGregor>
"Offer" is bad UI, most authors don't care, just do it.
23:28
<Lachy>
yeah, whatever
23:28
<Lachy>
whether it does it automatically or as a user pref or whatever is irrelevant here.
23:28
<zcorpan__>
use wysiwyg and hide the markup from the user
23:28
<AryehGregor>
If only wikitext were simple enough to do sane WYSIWYG. :(
23:29
<Lachy>
not even HTML is simple enough in all cases to do sane wysiwig
23:29
<AryehGregor>
At least it's more likely to round-trip without massive changes throughout the source code.
23:32
<Lachy>
damn, wikipedia gets the clean up wrong :-( http://en.wikipedia.org/wiki/Wikipedia:Sandbox
23:33
<Lachy>
wow. It also leaves the source text unaltered, rather than fixing the error
23:33
<zcorpan__>
<p>Some paragraph containing <b>an unclosed b element.</b></p>
23:33
<zcorpan__>
<p><b>Another paragraph...</b></p>
23:34
<zcorpan__>
?
23:34
<Lachy>
yeah, that's the wrong way to clean it up. It should be nice to the author and not put the b in the second paragraph
23:34
<zcorpan__>
what if the author wanted the second paragraph to be bold?
23:34
<Lachy>
but I mean, click the edit link and see the source wiki text. I didn't mean in the generated page source
23:35
<zcorpan__>
it would be annoying to fix mistakes if the source was tampered with
23:35
<Lachy>
then they can put a b in the second paragraph manually. An accidentally unclosed element is more likeliy than an intentional mis-nested element
23:36
<AryehGregor>
Lachy, users mostly use wikitext for bold, which behaves as you describe.
23:36
<AryehGregor>
'''Bold text\n\nNo longer bold
23:36
<Lachy>
yeah, that's the sensible approach
23:36
<AryehGregor>
becomes: <p><b>Bold text</b></p><p>No longer bold</p>
23:36
<AryehGregor>
We don't want to tamper with the source text.
23:36
<AryehGregor>
That way madness lies.
23:37
<AryehGregor>
Because we'd have to parse it reliably, and wikitext is so complicated that we can't really parse it, we just apply a bunch of magical transformations that turn it into HTML.
23:37
<Lachy>
sure, with wikitext being as haphazardly designed as it is, I'm sure trying to automate cleaning of it would be a total nightmare
23:38
<AryehGregor>
Anything related to wikitext is a total nightmare.
23:38
<AryehGregor>
It sounded like a great idea, but it was one of the worst mistakes wikis made.
23:38
<Lachy>
I hate wikitext. I wish it was never invented.
23:38
<AryehGregor>
The idea was reasonable in the era before WYSIWYG editors were reliably available for the web.
23:38
<AryehGregor>
It's a lot easier to edit than raw HTML.
23:38
<Lachy>
surely, there would be a way to migrate away from it
23:38
<AryehGregor>
But now it's become counterproductive.
23:39
<AryehGregor>
Do you have any idea how many times this has been discussed? :)
23:39
<Lachy>
probably many times :-)
23:39
<AryehGregor>
It would require an enormous amount of work to migrate away.
23:39
<AryehGregor>
First of all, we'd need to invent some new language with all the same features, and be able to convert wikitext to that.
23:39
<TabAtkins>
I think very simple forms of wikitext, such as Markdown, are still a great idea. Going beyond should just be normal HTML, though.
23:39
<Lachy>
but generating HTML markup from the wikitext is the easy part. That's already done. You would just need to have a system that spends a lot of time generating and storing the HTML markup
23:40
<AryehGregor>
No, because wikitext contains tons of info beyond the raw HTML.
23:40
<AryehGregor>
Like template calls, for instance.
23:40
<AryehGregor>
The templates are substituted into the wikitext before parsing.
23:40
<AryehGregor>
We'd have to make up our own syntax one way or another, it can't be pure HTML.
23:40
<Lachy>
yeah, those have to be dealt with in a special way
23:40
<AryehGregor>
Also other features like that, categories and such.
23:41
<AryehGregor>
Which, by the way, can be added via template, so it's not enough to just edit them separately like most software does.
23:41
<Lachy>
but it could be based more on HTML markup, rather than crazy random wikitext syntax
23:41
<AryehGregor>
Yes, we'd probably have to do something HTML-ish. Except that would probably mean using XML, which would be seriously painful to manually edit.
23:42
<AryehGregor>
And not everyone would want to use WYSIWYG
23:42
<AryehGregor>
.
23:42
<Lachy>
editing HTML in a browser is only a pain because it lacks any kind of useful editing features, like syntax highlighting, autocompletion, etc.
23:43
<AryehGregor>
I said XML, not HTML. :)
23:43
<AryehGregor>
SYNTAX ERROR!
23:43
<AryehGregor>
(on line 479)
23:44
<AryehGregor>
But anyway, it does lack those features, so . . .
23:44
<AryehGregor>
(well, syntax errors aren't so bad with syntax highlighting, I guess)
23:45
<AryehGregor>
Man, more open-source projects need cute mascots: http://www.bugzilla.org/img/buggie.png
23:45
<AryehGregor>
Also: http://llvm.org/img/DragonMedium.png
23:46
<AryehGregor>
MediaWiki just has a stupid flower with square brackets around it. :(
23:57
<AryehGregor>
Argh, I've accomplished nothing today except arguing with people.
23:58
<Hixie>
you say that like that's a bad thing!
23:59
<Hixie>
that's my life you're dismissing like that there! :-P
23:59
<AryehGregor>
You also edit specs from time to time, I've heard?
23:59
<Hixie>
yeah but that's just the output of arguments :-P