IRC Log for #microformats on 2010-03-05

Timestamps are in UTC.

  1. [00:27:58] * ethicaljunction (~ethicalju@cpc1-rdng20-2-0-cust417.15-3.cable.virginmedia.com) Quit (Quit: ethicaljunction)
  2. [00:36:34] * dglazkov (~dglazkov@nat/google/x-zpujutylfdkqrnhq) Quit (Quit: dglazkov)
  3. [00:38:44] * tantek (~tantek@70-36-139-7.dsl.dynamic.sonic.net) Quit (Quit: tantek)
  4. [00:43:19] * BobJonkman (~BobJonkma@206-248-137-186.dsl.teksavvy.com) has joined #microformats
  5. [01:01:25] * shigeta (~shigeta@sakkgw2.sixapart.jp) has joined #microformats
  6. [01:05:28] * tantek (~tantek@c-67-180-202-79.hsd1.ca.comcast.net) has joined #microformats
  7. [01:05:29] * ChanServ sets mode +o tantek
  8. [01:08:34] * benward (~benward@nat/yahoo/x-fkftnxybhnyxuser) has joined #microformats
  9. [01:08:35] * ChanServ sets mode +o benward
  10. [01:38:41] * benward (~benward@nat/yahoo/x-fkftnxybhnyxuser) Quit (Quit: Sleep)
  11. [01:48:55] * KevinMarks (~KevinMark@157.22.22.46) Quit (Ping timeout: 245 seconds)
  12. [02:22:59] * tantek (~tantek@c-67-180-202-79.hsd1.ca.comcast.net) Quit (Quit: tantek)
  13. [03:08:52] * KevinMarks (~KevinMark@204.9.180.30) has joined #microformats
  14. [04:14:51] * dehuman (dehuman@2001:5c0:1103:8d00::cafe) Quit (Ping timeout: 268 seconds)
  15. [05:23:00] * BobJonkman (~BobJonkma@206-248-137-186.dsl.teksavvy.com) Quit (Quit: Leaving.)
  16. [06:29:06] * csarven (~csarven@dhcp-0-18-f8-35-d5-97.cpe.quickclic.net) Quit (Quit: Leaving.)
  17. [06:41:52] * danbri (~danbri@unaffiliated/danbri) has joined #microformats
  18. [07:54:02] * besbes (~besbes@188-23-178-132.adsl.highway.telekom.at) has joined #microformats
  19. [08:40:59] * tantek (~tantek@70-36-139-7.dsl.dynamic.sonic.net) has joined #microformats
  20. [08:41:00] * ChanServ sets mode +o tantek
  21. [08:51:25] * tantek_ (~tantek@70-36-139-7.dsl.dynamic.sonic.net) has joined #microformats
  22. [08:51:25] * tantek (~tantek@70-36-139-7.dsl.dynamic.sonic.net) Quit (Read error: Connection reset by peer)
  23. [08:51:25] * ChanServ sets mode +o tantek_
  24. [08:51:25] * tantek_ is now known as tantek
  25. [08:56:28] * besbes (~besbes@188-23-178-132.adsl.highway.telekom.at) Quit (Quit: besbes)
  26. [09:00:09] * Atamido_ (~atamido@76-205-170-42.lightspeed.austtx.sbcglobal.net) has joined #microformats
  27. [09:00:16] * Atamido (~atamido@76-205-170-42.lightspeed.austtx.sbcglobal.net) Quit (Ping timeout: 245 seconds)
  28. [09:00:25] * Atamido_ is now known as Atamido
  29. [09:25:31] * Phae (~phaeness@cpc2-acto9-0-0-cust364.brnt.cable.ntl.com) has joined #microformats
  30. [09:25:31] * ChanServ sets mode +o Phae
  31. [09:33:28] * besbes (~besbes@mercury.mminf.univie.ac.at) has joined #microformats
  32. [09:38:57] * ntoll (~ntoll@88-110-171-9.dynamic.dsl.as9105.com) has joined #microformats
  33. [10:27:12] * KevinMarks (~KevinMark@204.9.180.30) Quit (Quit: The computer fell asleep)
  34. [10:44:04] * benward (~benward@70-36-139-40.dsl.dynamic.sonic.net) has joined #microformats
  35. [10:44:05] * ChanServ sets mode +o benward
  36. [11:08:09] * benward (~benward@70-36-139-40.dsl.dynamic.sonic.net) Quit (Quit: Sleep)
  37. [11:24:01] * tantek (~tantek@70-36-139-7.dsl.dynamic.sonic.net) Quit (Quit: tantek)
  38. [11:34:09] * dehuman (dehuman@undead.superuser.su) has joined #microformats
  39. [11:41:08] * emrojo (~emrojo@2001:720:410:100f:212:3fff:fe22:bbaf) has joined #microformats
  40. [12:41:20] * ntoll (~ntoll@88-110-171-9.dynamic.dsl.as9105.com) Quit (*.net *.split)
  41. [12:45:19] * jiing_ (~jiing@59-120-12-62.HINET-IP.hinet.net) has joined #microformats
  42. [12:49:53] * krijnh (~krijnhoet@ktk.xs4all.nl) Quit (*.net *.split)
  43. [12:49:53] * jiing (~jiing@59-120-12-62.HINET-IP.hinet.net) Quit (*.net *.split)
  44. [12:58:26] * dehuman (dehuman@undead.superuser.su) Quit (Ping timeout: 268 seconds)
  45. [12:58:45] * shigeta (~shigeta@sakkgw2.sixapart.jp) Quit (Quit: Leaving...)
  46. [13:36:40] * csarven (~csarven@dhcp-0-18-f8-35-d5-97.cpe.quickclic.net) has joined #microformats
  47. [13:52:04] * ntoll (~ntoll@88-110-171-9.dynamic.dsl.as9105.com) has joined #microformats
  48. [13:58:09] * ITrace (~ITrace@216.81.188.2) has joined #microformats
  49. [14:30:25] * mwunsch (~mwunsch@38.105.146.82) has joined #microformats
  50. [14:42:15] * krijnh (~krijnhoet@ktk.xs4all.nl) has joined #microformats
  51. [16:00:42] * dehuman (dehuman@undead.superuser.su) has joined #microformats
  52. [16:17:50] * besbes (~besbes@mercury.mminf.univie.ac.at) Quit (Ping timeout: 265 seconds)
  53. [17:11:50] * tantek (~tantek@70-36-139-7.dsl.dynamic.sonic.net) has joined #microformats
  54. [17:11:50] * ChanServ sets mode +o tantek
  55. [17:14:08] <georgebrock> asked this yesterday, but there were fewer people around... http://krijnhoetmer.nl/irc-logs/microformats/20100304#l-71
  56. [17:15:40] <tantek> do you have an example URL of the content you are trying to mark up?
  57. [17:16:08] <georgebrock> tantek: http://www.reevoo.com/p/samsung-le32b450
  58. [17:22:05] <tantek> so a couple of things
  59. [17:22:42] <tantek> first, class="hreview-aggregate" (note should be all lowercase) can be placed on a more specific (deeper nested) div
  60. [17:23:30] <tantek> ...
  61. [17:23:41] <tantek> on the first <div class="summary-row"> in particular
  62. [17:23:51] <tantek> that way it won't include so much of the markup
  63. [17:24:28] <georgebrock> that makes sense
  64. [17:27:24] <georgebrock> I was going to make the div with class=product into an hProduct, and it would make sense for that to be the aggregate review's item
  65. [17:27:59] <georgebrock> do you think the include pattern would make sense for this? I'm nervous about the review including its own ancestor
  66. [17:29:43] <tantek> btw from the include-pattern page: "To prevent infinite loops, if a class="include" refers to itself or to an ancestor in the parse tree, then it is ignored and has no effect on the parser."
  67. [17:29:56] <tantek> http://microformats.org/wiki/include-pattern#in_general
  68. [17:30:34] <georgebrock> excellent, I had missed that, thank you
  69. [17:32:07] <tobyink> Using pseudomarkup... <hreview include="hproduct"></hreview><hproduct include="hreview"></hproduct> ought to work.
  70. [17:32:33] <tobyink> But... <hreview><hproduct include="hreview"></hproduct></hreview> will not.
  71. [17:35:22] <georgebrock> hProduct can contain reviews (one of the properties is review, which should be marked up as an hReview), but if <hproduct><hreview><item include="hproduct" /></hreview></hproduct> doesn't work I'm unsure how to construct that
  72. [17:38:14] <tobyink> <hproduct id="p"><include include="#r1"/><include include="#r2"/><include include="#r3"/></hproduct><hreview id="r1"><item include="#p"></hproduct><hreview id="r2"><item include="#p"></hproduct>, etc.
  73. [17:39:42] <georgebrock> tobyink: ah yes, as per your previous example, was being a little slow on the uptake, thanks
  74. [17:45:14] <tantek> tobyink - I'm not sure that makes sense or is necessary because the hProduct in this case already contains hReviews
  75. [17:45:23] <tantek> they don't need to be included
  76. [17:45:27] <tantek> in the current markup
  77. [17:45:42] <tantek> the problem is that each hReview must still have an "item"
  78. [17:45:47] <tantek> which describes the product
  79. [17:47:04] <tantek> georgebrock it sounds like what is needed is something slightly different than the include pattern
  80. [17:47:18] <tantek> something more like itemref in microdata: http://www.w3.org/TR/microdata/#attr-itemref
  81. [17:47:49] <tantek> which is a way of referencing for crawling but not actually including
  82. [17:48:20] <tobyink> Yes, I've implemented Microdata - it's inclusion method is a lot cleaner.
  83. [17:48:21] <tantek> of course microdata's itemref doesn't say what to do if an itemref refers to an ancestor element
  84. [17:48:48] <tantek> tobyink - I should hope so, microdata has learned from the experience we have with microformats :)
  85. [17:49:04] <tobyink> If itemref refers to an ancestor, you don't get recursion, because itemref on child elements is ignored IIRC.
  86. [17:49:53] <tantek> the recursion case requires two microdata objects
  87. [17:50:34] <tantek> a ancestor which has property which itself is an object b which has an itemref that references a
  88. [17:51:26] <tobyink> Ah, I've only implemented parsing Microdata into RDF, where the above doesn't cause any problems. Parsing into JSON this will probably cause nastiness.
  89. [17:51:35] <tobyink> JSON doesn't support cycles; RDF does.
  90. [17:52:56] <tantek> something like: <span itemscope id=a><span itemprop="p" itemscope id=b itemref=a></span></span> should do the trick
  91. [17:54:10] <tantek> or to accentuate the point: <span itemscope id=a><span itemprop=turtle itemscope id=b itemref=a></span></span>
  92. [17:54:32] <tantek> infinitely nested items, each of which has a "turtle" property whose value is the next nested item
  93. [17:54:39] <tantek> turtles all the way down :)
  94. [17:54:52] * emrojo (~emrojo@2001:720:410:100f:212:3fff:fe22:bbaf) Quit (Quit: Leaving.)
  95. [17:56:31] <georgebrock> I'll read up on microdata
  96. [18:00:45] * dglazkov (~dglazkov@nat/google/x-zxcqovrrjxvknprn) has joined #microformats
  97. [18:00:45] * ChanServ sets mode +o dglazkov
  98. [18:00:57] <tantek> georgebrock - yup I just did
  99. [18:01:07] <tantek> and asked in #whatwg and got an answer
  100. [18:01:11] <tantek> per http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html#associating-names-with-items
  101. [18:01:18] <tantek> "If root is in memory, then the algorithm fails; abort these steps."
  102. [18:01:47] <tobyink> This: <span itemscope id=a itemtype="http://example.net/A"><span itemprop=turtle itemscope id=b itemref=a></span></span>
  103. [18:02:33] <tobyink> Successfully parses using the Microdata-to-RDF algorithm.
  104. [18:02:37] <tantek> therefore microdata effectively makes referencing an id of an ancestor a NOP
  105. [18:02:51] <tantek> tobyink it has nothing to do with RDF
  106. [18:03:08] <tantek> step one of the "associating names with items" algorithm breaks the itemref to an ancestor
  107. [18:03:20] <tantek> as cited above
  108. [18:03:36] <tantek> itemrefs to ancestors are effectively ignored
  109. [18:04:37] <georgebrock> given that the hProduct spec encourages nesting of hReviews within hProducts, and that in general microformats can be expressed as valid HTML4.01, does this need capturing on the hproduct-issues page?
  110. [18:05:08] <tantek> georgebrock yes
  111. [18:05:30] <tantek> hProduct's "review" property is insufficiently defined to describe how to make it work
  112. [18:05:47] <tantek> because it doesn't describe how to embed a valid hReview
  113. [18:05:54] <tantek> with item that points back to the hProduct
  114. [18:06:29] * georgebrock is adding an issue
  115. [18:07:53] <tantek> tobyink - your successful parse probably includes a "turtle" property with an empty item
  116. [18:08:08] <tantek> rather than actually indicating a cycle
  117. [18:08:22] <tantek> assuming you're following the associating names with items algorithm
  118. [18:08:40] <tobyink> Ah yes - you are right.
  119. [18:10:35] <tantek> thus itemref has the same limitation as the include pattern
  120. [18:14:55] <georgebrock> done: http://microformats.org/wiki/hproduct-issues#HP8_-_No_clear_way_of_including_a_valid_hReview_that_refers_back_to_the_hProduct_as_its_item
  121. [18:15:40] <tantek> thanks georgebrock
  122. [18:16:25] <tantek> tobyink - how would you represent the turtle example above with RDF?
  123. [18:16:44] <tantek> (which presumably would actually encode the infinite recursion)
  124. [18:24:04] <tantek> georgebrock I think this might have a simple solution that very much relates to the recent item-license work I've been doing
  125. [18:24:32] <tantek> http://microformats.org/wiki/item-license
  126. [18:25:26] <tantek> it may be possible to extend the "item-url" property in that proposal to refer to a local hypertext fragment
  127. [18:26:13] <tantek> then in hProduct, you could simply *drop* the "review" property altogether
  128. [18:26:34] <tantek> because the nested hReviews themselves would simple *reference* the hProduct by id (rather than including it)
  129. [18:28:59] <georgebrock> that would certainly get around the nesting issue
  130. [18:32:22] <georgebrock> I've added the suggestion to the wiki
  131. [18:33:41] <georgebrock> I need to go, thanks for your help tantek, tobyink
  132. [18:33:51] * Hey_neken (~kaxero@215.Red-213-96-129.staticIP.rima-tde.net) has joined #microformats
  133. [18:43:16] * benward (~benward@nat/yahoo/x-zwtmukwruvhoxqjw) has joined #microformats
  134. [18:43:16] * ChanServ sets mode +o benward
  135. [18:43:29] <tobyink> sorry, diappeared for 45 minutes.
  136. [18:44:31] <tobyink> Turtle example in RDF (using the aptly named turtle serialisation) would be something like: _:a <http://example.com/turtle> _:b . _:b <http://example.com/turtle> _:a .
  137. [18:45:09] <tobyink> i.e. the property is called <http://example.com/turtle> as properties must be URIs.
  138. [18:46:05] <tantek> ah yes, of course
  139. [18:46:08] <tobyink> The two resources are given identifiers _:a and _:b. Normally RDF identifies things using URIs, but can identify them using throwaway identifiers called blank nodes.
  140. [18:46:15] <tantek> right
  141. [18:46:17] <tobyink> And that's what I've used.
  142. [18:47:08] <tantek> tobyink - that structure does not appear to be representable in microdata, per the discussion we had above.
  143. [18:47:54] <tobyink> If you create URIs for a and b though, you could use itemid to represent cycles.
  144. [18:53:54] <tantek> no itemid is only for the item/object itself, cannot be used on properties
  145. [18:53:59] <tantek> http://www.w3.org/TR/microdata/#attr-itemid
  146. [18:54:40] <tantek> it doesn't actually help in this case
  147. [18:54:48] <tantek> itemid is more like "uid"
  148. [18:55:02] <tantek> (e.g. from hCard, hCalendar)
  149. [18:55:17] <tobyink> <span itemid="http://example.com/throwaway/a"><a property="turtle" href="http://example.com/throwaway/b"></a> <span itemid="http://example.com/throwaway/b"><a property="turtle" href="http://example.com/throwaway/a"></a></span></span>
  150. [18:55:26] <tantek> except that itemid requires duplication of data, whereas "uid" can be placed on an element with class name "url" as well.
  151. [18:56:51] <tantek> except that those two references won't find each other
  152. [18:56:54] <tantek> the links break
  153. [19:03:07] <tobyink> I don't think it works in the Microdata DOM API, but it works in the Microdata-to-RDF output.
  154. [19:03:59] <tobyink> Creates: <http://example.com/throwaway/a> <http://example.com/turtle> <http://example.com/throwaway/b> . <http://example.com/throwaway/b> <http://example.com/turtle> <http://example.com/throwaway/a> .
  155. [19:04:53] <tobyink> (Having added itemscope attributes and changes property="turtle" to itemprop="http://example.com/turtle".)
  156. [19:14:45] * trovster (~trovster@cpc3-staf1-0-0-cust950.sol2.cable.ntl.com) has joined #microformats
  157. [19:48:18] * Phae (~phaeness@cpc2-acto9-0-0-cust364.brnt.cable.ntl.com) Quit ()
  158. [20:36:42] * tantek (~tantek@70-36-139-7.dsl.dynamic.sonic.net) Quit (Quit: tantek)
  159. [21:02:16] * tantek (~tantek@70-36-139-7.dsl.dynamic.sonic.net) has joined #microformats
  160. [21:02:16] * ChanServ sets mode +o tantek
  161. [21:10:44] * mwunsch (~mwunsch@38.105.146.82) Quit (Quit: mwunsch)
  162. [21:26:10] * trovster (~trovster@cpc3-staf1-0-0-cust950.sol2.cable.ntl.com) Quit ()
  163. [22:16:41] * tantek (~tantek@70-36-139-7.dsl.dynamic.sonic.net) Quit (Quit: tantek)
  164. [22:19:25] * Hey_neken (~kaxero@215.Red-213-96-129.staticIP.rima-tde.net) Quit (Remote host closed the connection)
  165. [22:19:34] * abernier (~abernier@nor75-28-88-183-29-231.fbx.proxad.net) has joined #microformats
  166. [22:19:49] * abernier (~abernier@nor75-28-88-183-29-231.fbx.proxad.net) Quit (Client Quit)
  167. [23:35:21] * Amorphous (jan@unaffiliated/amorphous) Quit (Ping timeout: 260 seconds)
  168. [23:40:39] * ntoll (~ntoll@88-110-171-9.dynamic.dsl.as9105.com) Quit (Quit: this is not a quit message)
  169. [23:49:35] * BobJonkman (~BobJonkma@206-248-137-186.dsl.teksavvy.com) has joined #microformats
  170. [23:50:33] * Amorphous (jan@unaffiliated/amorphous) has joined #microformats
  171. [23:56:25] * ITrace (~ITrace@216.81.188.2) Quit (Ping timeout: 240 seconds)

These logs were automatically created by mflogbot on chat.freenode.net using a modified version of the Java IRC LogBot.

See http://microformats.org/wiki/mflogbot for more information.