microformats2 2.9.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (313) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +125 -25
  3. data/Rakefile +0 -60
  4. data/lib/microformats2.rb +7 -15
  5. data/lib/microformats2/absolute_uri.rb +5 -1
  6. data/lib/microformats2/format_parser.rb +321 -46
  7. data/lib/microformats2/parser.rb +86 -6
  8. data/lib/microformats2/parser_core.rb +343 -0
  9. data/lib/microformats2/property_parser.rb +104 -34
  10. data/lib/microformats2/results/collection.rb +121 -0
  11. data/lib/microformats2/results/parser_result.rb +111 -0
  12. data/lib/microformats2/results/property_set.rb +87 -0
  13. data/lib/microformats2/time_property_parser.rb +161 -0
  14. data/lib/microformats2/version.rb +1 -1
  15. data/microformats2.gemspec +2 -1
  16. data/spec/lib/microformats2/absolute_uri_spec.rb +2 -2
  17. data/spec/lib/microformats2/parser_spec.rb +36 -5
  18. data/spec/lib/microformats2_spec.rb +5 -5
  19. data/spec/spec_helper.rb +0 -1
  20. data/vendor/tests/.gitignore +25 -0
  21. data/vendor/tests/LICENSE.md +36 -0
  22. data/vendor/tests/README.md +48 -0
  23. data/vendor/tests/app.js +84 -0
  24. data/vendor/tests/composer.json +5 -0
  25. data/vendor/tests/css/testsuite.css +159 -0
  26. data/vendor/tests/interface.js +18 -0
  27. data/vendor/tests/package.json +27 -0
  28. data/vendor/tests/tests/microformats-mixed/h-card/change-log.html +63 -0
  29. data/vendor/tests/tests/microformats-mixed/h-card/mixedpropertries.html +14 -0
  30. data/vendor/tests/tests/microformats-mixed/h-card/mixedpropertries.json +22 -0
  31. data/vendor/tests/tests/microformats-mixed/h-card/tworoots.html +1 -0
  32. data/vendor/tests/tests/microformats-mixed/h-card/tworoots.json +10 -0
  33. data/vendor/tests/tests/microformats-mixed/h-entry/mixedroots.html +16 -0
  34. data/vendor/tests/tests/microformats-mixed/h-entry/mixedroots.json +38 -0
  35. data/vendor/tests/tests/microformats-mixed/h-resume/change-log.html +68 -0
  36. data/vendor/tests/tests/microformats-mixed/h-resume/mixedroots.html +16 -0
  37. data/vendor/tests/tests/microformats-mixed/h-resume/mixedroots.json +31 -0
  38. data/vendor/tests/tests/microformats-v1/adr/change-log.html +63 -0
  39. data/vendor/tests/tests/microformats-v1/adr/simpleproperties.html +8 -0
  40. data/vendor/tests/tests/microformats-v1/adr/simpleproperties.json +15 -0
  41. data/vendor/tests/tests/microformats-v1/geo/abbrpattern.html +5 -0
  42. data/vendor/tests/tests/microformats-v1/geo/abbrpattern.json +11 -0
  43. data/vendor/tests/tests/microformats-v1/geo/change-log.1.html +78 -0
  44. data/vendor/tests/tests/microformats-v1/geo/change-log.html +63 -0
  45. data/vendor/tests/tests/microformats-v1/geo/hidden.html +10 -0
  46. data/vendor/tests/tests/microformats-v1/geo/hidden.json +11 -0
  47. data/vendor/tests/tests/microformats-v1/geo/simpleproperties.html +6 -0
  48. data/vendor/tests/tests/microformats-v1/geo/simpleproperties.json +11 -0
  49. data/vendor/tests/tests/microformats-v1/geo/valuetitleclass.html +11 -0
  50. data/vendor/tests/tests/microformats-v1/geo/valuetitleclass.json +11 -0
  51. data/vendor/tests/tests/microformats-v1/hcalendar/ampm.html +41 -0
  52. data/vendor/tests/tests/microformats-v1/hcalendar/ampm.json +21 -0
  53. data/vendor/tests/tests/microformats-v1/hcalendar/attendees.html +13 -0
  54. data/vendor/tests/tests/microformats-v1/hcalendar/attendees.json +37 -0
  55. data/vendor/tests/tests/microformats-v1/hcalendar/change-log.html +68 -0
  56. data/vendor/tests/tests/microformats-v1/hcalendar/combining.html +15 -0
  57. data/vendor/tests/tests/microformats-v1/hcalendar/combining.json +31 -0
  58. data/vendor/tests/tests/microformats-v1/hcalendar/concatenate.html +7 -0
  59. data/vendor/tests/tests/microformats-v1/hcalendar/concatenate.json +12 -0
  60. data/vendor/tests/tests/microformats-v1/hcalendar/time.html +44 -0
  61. data/vendor/tests/tests/microformats-v1/hcalendar/time.json +22 -0
  62. data/vendor/tests/tests/microformats-v1/hcard/change-log.html +68 -0
  63. data/vendor/tests/tests/microformats-v1/hcard/email.html +14 -0
  64. data/vendor/tests/tests/microformats-v1/hcard/email.json +11 -0
  65. data/vendor/tests/tests/microformats-v1/hcard/format.html +6 -0
  66. data/vendor/tests/tests/microformats-v1/hcard/format.json +11 -0
  67. data/vendor/tests/tests/microformats-v1/hcard/hyperlinkedphoto.html +3 -0
  68. data/vendor/tests/tests/microformats-v1/hcard/hyperlinkedphoto.json +8 -0
  69. data/vendor/tests/tests/microformats-v1/hcard/justahyperlink.html +1 -0
  70. data/vendor/tests/tests/microformats-v1/hcard/justahyperlink.json +8 -0
  71. data/vendor/tests/tests/microformats-v1/hcard/justaname.html +1 -0
  72. data/vendor/tests/tests/microformats-v1/hcard/justaname.json +8 -0
  73. data/vendor/tests/tests/microformats-v1/hcard/multiple.html +74 -0
  74. data/vendor/tests/tests/microformats-v1/hcard/multiple.json +65 -0
  75. data/vendor/tests/tests/microformats-v1/hcard/name.html +11 -0
  76. data/vendor/tests/tests/microformats-v1/hcard/name.json +15 -0
  77. data/vendor/tests/tests/microformats-v1/hcard/single.html +14 -0
  78. data/vendor/tests/tests/microformats-v1/hcard/single.json +24 -0
  79. data/vendor/tests/tests/microformats-v1/hentry/change-log.html +73 -0
  80. data/vendor/tests/tests/microformats-v1/hentry/summarycontent.html +20 -0
  81. data/vendor/tests/tests/microformats-v1/hentry/summarycontent.json +24 -0
  82. data/vendor/tests/tests/microformats-v1/hfeed/simple.html +30 -0
  83. data/vendor/tests/tests/microformats-v1/hfeed/simple.json +49 -0
  84. data/vendor/tests/tests/microformats-v1/hnews/all.html +37 -0
  85. data/vendor/tests/tests/microformats-v1/hnews/all.json +74 -0
  86. data/vendor/tests/tests/microformats-v1/hnews/change-log.html +72 -0
  87. data/vendor/tests/tests/microformats-v1/hnews/minimum.html +25 -0
  88. data/vendor/tests/tests/microformats-v1/hnews/minimum.json +48 -0
  89. data/vendor/tests/tests/microformats-v1/hproduct/aggregate.html +26 -0
  90. data/vendor/tests/tests/microformats-v1/hproduct/aggregate.json +52 -0
  91. data/vendor/tests/tests/microformats-v1/hproduct/change-log.html +62 -0
  92. data/vendor/tests/tests/microformats-v1/hproduct/simpleproperties.html +13 -0
  93. data/vendor/tests/tests/microformats-v1/hproduct/simpleproperties.json +33 -0
  94. data/vendor/tests/tests/microformats-v1/hresume/affiliation.html +12 -0
  95. data/vendor/tests/tests/microformats-v1/hresume/affiliation.json +25 -0
  96. data/vendor/tests/tests/microformats-v1/hresume/change-log.html +73 -0
  97. data/vendor/tests/tests/microformats-v1/hresume/contact.html +18 -0
  98. data/vendor/tests/tests/microformats-v1/hresume/contact.json +32 -0
  99. data/vendor/tests/tests/microformats-v1/hresume/education.html +13 -0
  100. data/vendor/tests/tests/microformats-v1/hresume/education.json +29 -0
  101. data/vendor/tests/tests/microformats-v1/hresume/skill.html +12 -0
  102. data/vendor/tests/tests/microformats-v1/hresume/skill.json +33 -0
  103. data/vendor/tests/tests/microformats-v1/hresume/work.html +16 -0
  104. data/vendor/tests/tests/microformats-v1/hresume/work.json +30 -0
  105. data/vendor/tests/tests/microformats-v1/hreview-aggregate/change-log.html +67 -0
  106. data/vendor/tests/tests/microformats-v1/hreview-aggregate/hcard.html +18 -0
  107. data/vendor/tests/tests/microformats-v1/hreview-aggregate/hcard.json +31 -0
  108. data/vendor/tests/tests/microformats-v1/hreview-aggregate/justahyperlink.html +6 -0
  109. data/vendor/tests/tests/microformats-v1/hreview-aggregate/justahyperlink.json +19 -0
  110. data/vendor/tests/tests/microformats-v1/hreview-aggregate/vevent.html +13 -0
  111. data/vendor/tests/tests/microformats-v1/hreview-aggregate/vevent.json +22 -0
  112. data/vendor/tests/tests/microformats-v1/hreview/change-log.html +73 -0
  113. data/vendor/tests/tests/microformats-v1/hreview/item.html +8 -0
  114. data/vendor/tests/tests/microformats-v1/hreview/item.json +19 -0
  115. data/vendor/tests/tests/microformats-v1/hreview/vcard.html +23 -0
  116. data/vendor/tests/tests/microformats-v1/hreview/vcard.json +58 -0
  117. data/vendor/tests/tests/microformats-v1/includes/change-log.html +72 -0
  118. data/vendor/tests/tests/microformats-v1/includes/hcarditemref.html +16 -0
  119. data/vendor/tests/tests/microformats-v1/includes/hcarditemref.json +49 -0
  120. data/vendor/tests/tests/microformats-v1/includes/heventitemref.html +25 -0
  121. data/vendor/tests/tests/microformats-v1/includes/heventitemref.json +33 -0
  122. data/vendor/tests/tests/microformats-v1/includes/hyperlink.html +18 -0
  123. data/vendor/tests/tests/microformats-v1/includes/hyperlink.json +43 -0
  124. data/vendor/tests/tests/microformats-v1/includes/object.html +23 -0
  125. data/vendor/tests/tests/microformats-v1/includes/object.json +42 -0
  126. data/vendor/tests/tests/microformats-v1/includes/table.html +12 -0
  127. data/vendor/tests/tests/microformats-v1/includes/table.json +19 -0
  128. data/vendor/tests/tests/microformats-v2/h-adr/change-log.html +62 -0
  129. data/vendor/tests/tests/microformats-v2/h-adr/geo.html +10 -0
  130. data/vendor/tests/tests/microformats-v2/h-adr/geo.json +16 -0
  131. data/vendor/tests/tests/microformats-v2/h-adr/geourl.html +4 -0
  132. data/vendor/tests/tests/microformats-v2/h-adr/geourl.json +13 -0
  133. data/vendor/tests/tests/microformats-v2/h-adr/justaname.html +1 -0
  134. data/vendor/tests/tests/microformats-v2/h-adr/justaname.json +10 -0
  135. data/vendor/tests/tests/microformats-v2/h-adr/lettercase.html +21 -0
  136. data/vendor/tests/tests/microformats-v2/h-adr/lettercase.json +12 -0
  137. data/vendor/tests/tests/microformats-v2/h-adr/simpleproperties.html +8 -0
  138. data/vendor/tests/tests/microformats-v2/h-adr/simpleproperties.json +16 -0
  139. data/vendor/tests/tests/microformats-v2/h-as-note/note.html +56 -0
  140. data/vendor/tests/tests/microformats-v2/h-as-note/note.json +98 -0
  141. data/vendor/tests/tests/microformats-v2/h-card/baseurl.html +6 -0
  142. data/vendor/tests/tests/microformats-v2/h-card/baseurl.json +26 -0
  143. data/vendor/tests/tests/microformats-v2/h-card/change-log.html +100 -0
  144. data/vendor/tests/tests/microformats-v2/h-card/childimplied.html +7 -0
  145. data/vendor/tests/tests/microformats-v2/h-card/childimplied.json +12 -0
  146. data/vendor/tests/tests/microformats-v2/h-card/extendeddescription.html +10 -0
  147. data/vendor/tests/tests/microformats-v2/h-card/extendeddescription.json +15 -0
  148. data/vendor/tests/tests/microformats-v2/h-card/hcard.html +4 -0
  149. data/vendor/tests/tests/microformats-v2/h-card/hcard.json +19 -0
  150. data/vendor/tests/tests/microformats-v2/h-card/horghcard.html +4 -0
  151. data/vendor/tests/tests/microformats-v2/h-card/horghcard.json +19 -0
  152. data/vendor/tests/tests/microformats-v2/h-card/hyperlinkedphoto.html +3 -0
  153. data/vendor/tests/tests/microformats-v2/h-card/hyperlinkedphoto.json +12 -0
  154. data/vendor/tests/tests/microformats-v2/h-card/impliedname.html +15 -0
  155. data/vendor/tests/tests/microformats-v2/h-card/impliedname.json +90 -0
  156. data/vendor/tests/tests/microformats-v2/h-card/impliedphoto.html +11 -0
  157. data/vendor/tests/tests/microformats-v2/h-card/impliedphoto.json +72 -0
  158. data/vendor/tests/tests/microformats-v2/h-card/impliedurl.html +5 -0
  159. data/vendor/tests/tests/microformats-v2/h-card/impliedurl.json +45 -0
  160. data/vendor/tests/tests/microformats-v2/h-card/justahyperlink.html +1 -0
  161. data/vendor/tests/tests/microformats-v2/h-card/justahyperlink.json +11 -0
  162. data/vendor/tests/tests/microformats-v2/h-card/justaname.html +1 -0
  163. data/vendor/tests/tests/microformats-v2/h-card/justaname.json +10 -0
  164. data/vendor/tests/tests/microformats-v2/h-card/nested.html +4 -0
  165. data/vendor/tests/tests/microformats-v2/h-card/nested.json +18 -0
  166. data/vendor/tests/tests/microformats-v2/h-card/p-property.html +21 -0
  167. data/vendor/tests/tests/microformats-v2/h-card/p-property.json +15 -0
  168. data/vendor/tests/tests/microformats-v2/h-card/relativeurls.html +6 -0
  169. data/vendor/tests/tests/microformats-v2/h-card/relativeurls.json +29 -0
  170. data/vendor/tests/tests/microformats-v2/h-entry/change-log.html +90 -0
  171. data/vendor/tests/tests/microformats-v2/h-entry/encoding.html +3 -0
  172. data/vendor/tests/tests/microformats-v2/h-entry/encoding.json +14 -0
  173. data/vendor/tests/tests/microformats-v2/h-entry/impliedvalue-nested.html +9 -0
  174. data/vendor/tests/tests/microformats-v2/h-entry/impliedvalue-nested.json +27 -0
  175. data/vendor/tests/tests/microformats-v2/h-entry/justahyperlink.html +1 -0
  176. data/vendor/tests/tests/microformats-v2/h-entry/justahyperlink.json +11 -0
  177. data/vendor/tests/tests/microformats-v2/h-entry/justaname.html +1 -0
  178. data/vendor/tests/tests/microformats-v2/h-entry/justaname.json +10 -0
  179. data/vendor/tests/tests/microformats-v2/h-entry/scriptstyletags.html +4 -0
  180. data/vendor/tests/tests/microformats-v2/h-entry/scriptstyletags.json +14 -0
  181. data/vendor/tests/tests/microformats-v2/h-entry/summarycontent.html +20 -0
  182. data/vendor/tests/tests/microformats-v2/h-entry/summarycontent.json +25 -0
  183. data/vendor/tests/tests/microformats-v2/h-entry/u-property.html +33 -0
  184. data/vendor/tests/tests/microformats-v2/h-entry/u-property.json +12 -0
  185. data/vendor/tests/tests/microformats-v2/h-entry/urlincontent.html +13 -0
  186. data/vendor/tests/tests/microformats-v2/h-entry/urlincontent.json +14 -0
  187. data/vendor/tests/tests/microformats-v2/h-event/ampm.html +41 -0
  188. data/vendor/tests/tests/microformats-v2/h-event/ampm.json +21 -0
  189. data/vendor/tests/tests/microformats-v2/h-event/attendees.html +13 -0
  190. data/vendor/tests/tests/microformats-v2/h-event/attendees.json +37 -0
  191. data/vendor/tests/tests/microformats-v2/h-event/change-log.html +82 -0
  192. data/vendor/tests/tests/microformats-v2/h-event/combining.html +13 -0
  193. data/vendor/tests/tests/microformats-v2/h-event/combining.json +25 -0
  194. data/vendor/tests/tests/microformats-v2/h-event/concatenate.html +8 -0
  195. data/vendor/tests/tests/microformats-v2/h-event/concatenate.json +12 -0
  196. data/vendor/tests/tests/microformats-v2/h-event/dates.html +13 -0
  197. data/vendor/tests/tests/microformats-v2/h-event/dates.json +26 -0
  198. data/vendor/tests/tests/microformats-v2/h-event/dt-property.html +23 -0
  199. data/vendor/tests/tests/microformats-v2/h-event/dt-property.json +20 -0
  200. data/vendor/tests/tests/microformats-v2/h-event/justahyperlink.html +1 -0
  201. data/vendor/tests/tests/microformats-v2/h-event/justahyperlink.json +11 -0
  202. data/vendor/tests/tests/microformats-v2/h-event/justaname.html +1 -0
  203. data/vendor/tests/tests/microformats-v2/h-event/justaname.json +10 -0
  204. data/vendor/tests/tests/microformats-v2/h-event/time.html +47 -0
  205. data/vendor/tests/tests/microformats-v2/h-event/time.json +25 -0
  206. data/vendor/tests/tests/microformats-v2/h-feed/implied-title.html +30 -0
  207. data/vendor/tests/tests/microformats-v2/h-feed/implied-title.json +23 -0
  208. data/vendor/tests/tests/microformats-v2/h-feed/simple.html +26 -0
  209. data/vendor/tests/tests/microformats-v2/h-feed/simple.json +33 -0
  210. data/vendor/tests/tests/microformats-v2/h-geo/abbrpattern.html +5 -0
  211. data/vendor/tests/tests/microformats-v2/h-geo/abbrpattern.json +12 -0
  212. data/vendor/tests/tests/microformats-v2/h-geo/altitude.html +8 -0
  213. data/vendor/tests/tests/microformats-v2/h-geo/altitude.json +13 -0
  214. data/vendor/tests/tests/microformats-v2/h-geo/change-log.html +67 -0
  215. data/vendor/tests/tests/microformats-v2/h-geo/hidden.html +10 -0
  216. data/vendor/tests/tests/microformats-v2/h-geo/hidden.json +12 -0
  217. data/vendor/tests/tests/microformats-v2/h-geo/justaname.html +3 -0
  218. data/vendor/tests/tests/microformats-v2/h-geo/justaname.json +10 -0
  219. data/vendor/tests/tests/microformats-v2/h-geo/simpleproperties.html +5 -0
  220. data/vendor/tests/tests/microformats-v2/h-geo/simpleproperties.json +12 -0
  221. data/vendor/tests/tests/microformats-v2/h-geo/valuetitleclass.html +11 -0
  222. data/vendor/tests/tests/microformats-v2/h-geo/valuetitleclass.json +12 -0
  223. data/vendor/tests/tests/microformats-v2/h-news/all.html +35 -0
  224. data/vendor/tests/tests/microformats-v2/h-news/all.json +51 -0
  225. data/vendor/tests/tests/microformats-v2/h-news/change-log.html +78 -0
  226. data/vendor/tests/tests/microformats-v2/h-news/minimum.html +24 -0
  227. data/vendor/tests/tests/microformats-v2/h-news/minimum.json +40 -0
  228. data/vendor/tests/tests/microformats-v2/h-org/change-log.html +57 -0
  229. data/vendor/tests/tests/microformats-v2/h-org/hyperlink.html +1 -0
  230. data/vendor/tests/tests/microformats-v2/h-org/hyperlink.json +11 -0
  231. data/vendor/tests/tests/microformats-v2/h-org/simple.html +1 -0
  232. data/vendor/tests/tests/microformats-v2/h-org/simple.json +10 -0
  233. data/vendor/tests/tests/microformats-v2/h-org/simpleproperties.html +4 -0
  234. data/vendor/tests/tests/microformats-v2/h-org/simpleproperties.json +12 -0
  235. data/vendor/tests/tests/microformats-v2/h-product/aggregate.html +21 -0
  236. data/vendor/tests/tests/microformats-v2/h-product/aggregate.json +45 -0
  237. data/vendor/tests/tests/microformats-v2/h-product/change-log.html +62 -0
  238. data/vendor/tests/tests/microformats-v2/h-product/justahyperlink.html +1 -0
  239. data/vendor/tests/tests/microformats-v2/h-product/justahyperlink.json +11 -0
  240. data/vendor/tests/tests/microformats-v2/h-product/justaname.html +1 -0
  241. data/vendor/tests/tests/microformats-v2/h-product/justaname.json +10 -0
  242. data/vendor/tests/tests/microformats-v2/h-product/simpleproperties.html +10 -0
  243. data/vendor/tests/tests/microformats-v2/h-product/simpleproperties.json +26 -0
  244. data/vendor/tests/tests/microformats-v2/h-recipe/all.html +63 -0
  245. data/vendor/tests/tests/microformats-v2/h-recipe/all.json +54 -0
  246. data/vendor/tests/tests/microformats-v2/h-recipe/change-log.html +62 -0
  247. data/vendor/tests/tests/microformats-v2/h-recipe/minimum.html +7 -0
  248. data/vendor/tests/tests/microformats-v2/h-recipe/minimum.json +17 -0
  249. data/vendor/tests/tests/microformats-v2/h-resume/affiliation.html +12 -0
  250. data/vendor/tests/tests/microformats-v2/h-resume/affiliation.json +20 -0
  251. data/vendor/tests/tests/microformats-v2/h-resume/change-log.html +78 -0
  252. data/vendor/tests/tests/microformats-v2/h-resume/contact.html +17 -0
  253. data/vendor/tests/tests/microformats-v2/h-resume/contact.json +26 -0
  254. data/vendor/tests/tests/microformats-v2/h-resume/education.html +13 -0
  255. data/vendor/tests/tests/microformats-v2/h-resume/education.json +30 -0
  256. data/vendor/tests/tests/microformats-v2/h-resume/justaname.html +1 -0
  257. data/vendor/tests/tests/microformats-v2/h-resume/justaname.json +10 -0
  258. data/vendor/tests/tests/microformats-v2/h-resume/skill.html +12 -0
  259. data/vendor/tests/tests/microformats-v2/h-resume/skill.json +12 -0
  260. data/vendor/tests/tests/microformats-v2/h-resume/work.html +16 -0
  261. data/vendor/tests/tests/microformats-v2/h-resume/work.json +31 -0
  262. data/vendor/tests/tests/microformats-v2/h-review-aggregate/change-log.html +78 -0
  263. data/vendor/tests/tests/microformats-v2/h-review-aggregate/hevent.html +13 -0
  264. data/vendor/tests/tests/microformats-v2/h-review-aggregate/hevent.json +23 -0
  265. data/vendor/tests/tests/microformats-v2/h-review-aggregate/justahyperlink.html +8 -0
  266. data/vendor/tests/tests/microformats-v2/h-review-aggregate/justahyperlink.json +19 -0
  267. data/vendor/tests/tests/microformats-v2/h-review-aggregate/simpleproperties.html +18 -0
  268. data/vendor/tests/tests/microformats-v2/h-review-aggregate/simpleproperties.json +26 -0
  269. data/vendor/tests/tests/microformats-v2/h-review/change-log.html +84 -0
  270. data/vendor/tests/tests/microformats-v2/h-review/hyperlink.html +1 -0
  271. data/vendor/tests/tests/microformats-v2/h-review/hyperlink.json +11 -0
  272. data/vendor/tests/tests/microformats-v2/h-review/implieditem.html +4 -0
  273. data/vendor/tests/tests/microformats-v2/h-review/implieditem.json +19 -0
  274. data/vendor/tests/tests/microformats-v2/h-review/item.html +8 -0
  275. data/vendor/tests/tests/microformats-v2/h-review/item.json +20 -0
  276. data/vendor/tests/tests/microformats-v2/h-review/justaname.html +1 -0
  277. data/vendor/tests/tests/microformats-v2/h-review/justaname.json +10 -0
  278. data/vendor/tests/tests/microformats-v2/h-review/photo.html +1 -0
  279. data/vendor/tests/tests/microformats-v2/h-review/photo.json +11 -0
  280. data/vendor/tests/tests/microformats-v2/h-review/vcard.html +23 -0
  281. data/vendor/tests/tests/microformats-v2/h-review/vcard.json +48 -0
  282. data/vendor/tests/tests/microformats-v2/rel/change-log.html +67 -0
  283. data/vendor/tests/tests/microformats-v2/rel/duplicate-rels.html +10 -0
  284. data/vendor/tests/tests/microformats-v2/rel/duplicate-rels.json +75 -0
  285. data/vendor/tests/tests/microformats-v2/rel/license.html +1 -0
  286. data/vendor/tests/tests/microformats-v2/rel/license.json +12 -0
  287. data/vendor/tests/tests/microformats-v2/rel/nofollow.html +1 -0
  288. data/vendor/tests/tests/microformats-v2/rel/nofollow.json +12 -0
  289. data/vendor/tests/tests/microformats-v2/rel/rel-urls.html +8 -0
  290. data/vendor/tests/tests/microformats-v2/rel/rel-urls.json +33 -0
  291. data/vendor/tests/tests/microformats-v2/rel/varying-text-duplicate-rels.html +4 -0
  292. data/vendor/tests/tests/microformats-v2/rel/varying-text-duplicate-rels.json +20 -0
  293. data/vendor/tests/tests/microformats-v2/rel/xfn-all.html +19 -0
  294. data/vendor/tests/tests/microformats-v2/rel/xfn-all.json +92 -0
  295. data/vendor/tests/tests/microformats-v2/rel/xfn-elsewhere.html +10 -0
  296. data/vendor/tests/tests/microformats-v2/rel/xfn-elsewhere.json +40 -0
  297. metadata +285 -37
  298. data/lib/microformats2/collection.rb +0 -136
  299. data/lib/microformats2/format.rb +0 -151
  300. data/lib/microformats2/implied_property/foundation.rb +0 -59
  301. data/lib/microformats2/implied_property/name.rb +0 -34
  302. data/lib/microformats2/implied_property/photo.rb +0 -28
  303. data/lib/microformats2/implied_property/url.rb +0 -24
  304. data/lib/microformats2/property.rb +0 -21
  305. data/lib/microformats2/property/date_time.rb +0 -28
  306. data/lib/microformats2/property/embedded.rb +0 -9
  307. data/lib/microformats2/property/foundation.rb +0 -143
  308. data/lib/microformats2/property/text.rb +0 -16
  309. data/lib/microformats2/property/url.rb +0 -26
  310. data/spec/lib/microformats2/collection_spec.rb +0 -252
  311. data/spec/lib/microformats2/implied_property/name_spec.rb +0 -31
  312. data/spec/lib/microformats2/implied_property/photo_spec.rb +0 -31
  313. data/spec/lib/microformats2/implied_property/url_spec.rb +0 -58
@@ -0,0 +1,13 @@
1
+ <meta charset="utf-8">
2
+ <div class="h-event">
3
+ <span class="p-name">CPJ Online Press Freedom Summit</span>
4
+ (<time class="dt-start" datetime="2012-10-10">10 Nov 2012</time>) in
5
+ <span class="p-location">San Francisco</span>.
6
+ Attendees:
7
+ <ul>
8
+ <li class="p-attendee h-card">Brian Warner</li>
9
+ <li class="p-attendee h-card">Kyle Machulis</li>
10
+ <li class="p-attendee h-card">Tantek Çelik</li>
11
+ <li class="p-attendee h-card">Sid Sutter</li>
12
+ </ul>
13
+ </div>
@@ -0,0 +1,37 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-event"],
4
+ "properties": {
5
+ "name": ["CPJ Online Press Freedom Summit"],
6
+ "start": ["2012-10-10"],
7
+ "location": ["San Francisco"],
8
+ "attendee": [{
9
+ "value": "Brian Warner",
10
+ "type": ["h-card"],
11
+ "properties": {
12
+ "name": ["Brian Warner"]
13
+ }
14
+ }, {
15
+ "value": "Kyle Machulis",
16
+ "type": ["h-card"],
17
+ "properties": {
18
+ "name": ["Kyle Machulis"]
19
+ }
20
+ }, {
21
+ "value": "Tantek Çelik",
22
+ "type": ["h-card"],
23
+ "properties": {
24
+ "name": ["Tantek Çelik"]
25
+ }
26
+ }, {
27
+ "value": "Sid Sutter",
28
+ "type": ["h-card"],
29
+ "properties": {
30
+ "name": ["Sid Sutter"]
31
+ }
32
+ }]
33
+ }
34
+ }],
35
+ "rels": {},
36
+ "rel-urls": {}
37
+ }
@@ -0,0 +1,82 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>h-event parsing tests</title>
6
+
7
+ <link rel="stylesheet" href="../../../css/testsuite.css">
8
+ <link rel="stylesheet" href="../../../prettify.css">
9
+
10
+ <script src="../../../javascript/prettify.js"></script>
11
+ <script src="../../../javascript/testsuite.js"></script>
12
+
13
+ </head>
14
+ <body class="h-feed">
15
+
16
+ <h1 class="p-name"><span class="p-x-format">h-event</span> parsing tests &dash; change logs</h1>
17
+
18
+ <p class="p-description">The files in this directory where designed to test the parsing of h-event. </p>
19
+
20
+
21
+ <h2>Change log:</h2>
22
+ <ul>
23
+ <!-- Add change log event to the top of this list as a h-entry -->
24
+ <li class="h-entry">
25
+ <span class="p-name e-content">Remove duplicate structures from items[] in attendees and combining tests</span> &dash;
26
+ <time class="dt-published" datetime="2015-05-23">23 May 2015</time>
27
+ by <span class="p-author">Glenn Jones</span>
28
+ </li>
29
+ <li class="h-entry">
30
+ <span class="p-name e-content">Broke old HTML format into small files to aid simpler testing</span> &dash;
31
+ <time class="dt-published" datetime="2015-05-21">21 May 2015</time>
32
+ by <span class="p-author">Glenn Jones</span>
33
+ </li>
34
+ <li class="h-entry">
35
+ <span class="p-name e-content">Updated JSON examples so it always has the rel={} object as well as the items=[] array</span> &dash;
36
+ <time class="dt-published" datetime="2013-11-21">21 November 2013</time>
37
+ by <span class="p-author">Glenn Jones</span>
38
+ </li>
39
+ <li class="h-entry">
40
+ <span class="p-name e-content">Added HTML5 space delimited dt-* test</span> &dash;
41
+ <time class="dt-published" datetime="2013-07-22">22 July 2013</time>
42
+ by <span class="p-author">Glenn Jones</span>
43
+ </li>
44
+ <li class="h-entry">
45
+ <span class="p-name e-content">Added dt-proprety test</span> &dash;
46
+ <time class="dt-published" datetime="2013-01-06">6 January 2013</time>
47
+ by <span class="p-author">Glenn Jones</span>
48
+ </li>
49
+ <li class="h-entry">
50
+ <span class="p-name e-content">Added time format test</span> &dash;
51
+ <time class="dt-published" datetime="2013-01-05">5 January 2013</time>
52
+ by <span class="p-author">Glenn Jones</span>
53
+ </li>
54
+ <li class="h-entry">
55
+ <span class="p-name e-content">Reordered JSON</span> &dash;
56
+ <time class="dt-published" datetime="2012-12-22">22 December 2012</time>
57
+ by <span class="p-author">Glenn Jones</span>
58
+ </li>
59
+ <li class="h-entry">
60
+ <span class="p-name e-content">Created</span> &dash;
61
+ <time class="dt-published" datetime="2012-12-18">18 December 2012</time>
62
+ by <span class="p-author">Glenn Jones</span>
63
+ </li>
64
+ </ul>
65
+
66
+
67
+ <h2>Contributors:</h2>
68
+ <ul>
69
+ <!-- If you Contribute to the test please add yourself as an author using p-author h-card -->
70
+ <li class="p-author h-card">
71
+ <a class="u-url p-name" rel="author" href="http://www.glennjones.net/">Glenn Jones</a>
72
+ </li>
73
+ </ul>
74
+
75
+
76
+ <footer>
77
+ All content and code is released into the <a href="http://en.wikipedia.org/wiki/public_domain">public domain</a>
78
+ </footer>
79
+
80
+ </body>
81
+
82
+ </html>
@@ -0,0 +1,13 @@
1
+ <div class="h-event">
2
+ <a class="p-name u-url" href="http://indiewebcamp.com/2012">
3
+ IndieWebCamp 2012
4
+ </a>
5
+ from <time class="dt-start">2012-06-30</time>
6
+ to <time class="dt-end">2012-07-01</time> at
7
+ <span class="p-location h-card">
8
+ <a class="p-name p-org u-url" href="http://geoloqi.com/">Geoloqi</a>,
9
+ <span class="p-street-address">920 SW 3rd Ave. Suite 400</span>,
10
+ <span class="p-locality">Portland</span>,
11
+ <abbr class="p-region" title="Oregon">OR</abbr>
12
+ </span>
13
+ </div>
@@ -0,0 +1,25 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-event"],
4
+ "properties": {
5
+ "name": ["IndieWebCamp 2012"],
6
+ "url": ["http://indiewebcamp.com/2012"],
7
+ "start": ["2012-06-30"],
8
+ "end": ["2012-07-01"],
9
+ "location": [{
10
+ "value": "Geoloqi",
11
+ "type": ["h-card"],
12
+ "properties": {
13
+ "name": ["Geoloqi"],
14
+ "org": ["Geoloqi"],
15
+ "url": ["http://geoloqi.com/"],
16
+ "street-address": ["920 SW 3rd Ave. Suite 400"],
17
+ "locality": ["Portland"],
18
+ "region": ["Oregon"]
19
+ }
20
+ }]
21
+ }
22
+ }],
23
+ "rels": {},
24
+ "rel-urls": {}
25
+ }
@@ -0,0 +1,8 @@
1
+ <span class="h-event">
2
+ <span class="p-name">The 4th Microformat party</span> will be on
3
+ <span class="dt-start">
4
+ <time class="value" datetime="2009-06-26">26 July</time>, from
5
+ <time class="value">19:00-06:00</time>
6
+ </span> to
7
+ <span class="dt-end"><time class="value">22:00-06:00</time></span>.
8
+ </span>
@@ -0,0 +1,12 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-event"],
4
+ "properties": {
5
+ "name": ["The 4th Microformat party"],
6
+ "start": ["2009-06-26 19:00-0600"],
7
+ "end": ["2009-06-26 22:00-0600"]
8
+ }
9
+ }],
10
+ "rels": {},
11
+ "rel-urls": {}
12
+ }
@@ -0,0 +1,13 @@
1
+ <section class="h-event">
2
+ <p><span class="p-name">The 4th Microformat party</span> will be on:</p>
3
+ <ul>
4
+ <li><time class="dt-start" datetime="2009-06-26T19:00-08:00">26 July</time></li>
5
+ <li><time class="dt-start" datetime="2009-06-26T19:00-08">26 July</time></li>
6
+ <li><time class="dt-start" datetime="2009-06-26T19:00-0800">26 July</time></li>
7
+ <li><time class="dt-start" datetime="2009-06-26T19:00+0800">26 July</time></li>
8
+ <li><time class="dt-start" datetime="2009-06-26T19:00+08:00">26 July</time></li>
9
+ <li><time class="dt-start" datetime="2009-06-26T19:00Z">26 July</time></li>
10
+ <li><time class="dt-start" datetime="2009-06-26t19:00-08:00">26 July</time></li>
11
+ <li><time class="dt-start" datetime="2009-06-26 19:00:00-08:00">26 July</time></li>
12
+ </ul>
13
+ </section>
@@ -0,0 +1,26 @@
1
+ {
2
+ "items": [
3
+ {
4
+ "type": [
5
+ "h-event"
6
+ ],
7
+ "properties": {
8
+ "name": [
9
+ "The 4th Microformat party"
10
+ ],
11
+ "start": [
12
+ "2009-06-26 19:00-08:00",
13
+ "2009-06-26 19:00-08",
14
+ "2009-06-26 19:00-0800",
15
+ "2009-06-26 19:00+0800",
16
+ "2009-06-26 19:00+08:00",
17
+ "2009-06-26 19:00Z",
18
+ "2009-06-26 19:00-08:00",
19
+ "2009-06-26 19:00:00-08:00"
20
+ ]
21
+ }
22
+ }
23
+ ],
24
+ "rels": {},
25
+ "rel-urls": {}
26
+ }
@@ -0,0 +1,23 @@
1
+ <span class="h-event">
2
+ <span class="p-name">The party</span> will be on
3
+
4
+ <p class="dt-start">
5
+ <span class="value-title" title="2013-03-14"> </span>
6
+ March 14th 2013
7
+ </p>
8
+ <p class="dt-start">
9
+ <time class="value" datetime="2013-06-25">25 July</time>, from
10
+ <span class="value">07:00:00am
11
+ </span></p>
12
+
13
+ <p>
14
+ <time class="dt-start" datetime="2013-06-26">26 June</time>
15
+
16
+ <ins class="dt-start" datetime="2013-06-27">Just added</ins>,
17
+ <del class="dt-start" datetime="2013-06-28">Removed</del>
18
+ </p>
19
+ <abbr class="dt-start" title="2013-06-29">June 29</abbr>
20
+ <data class="dt-start" value="2013-07-01"></data>
21
+ <p class="dt-start">2013-07-02</p>
22
+
23
+ </span>
@@ -0,0 +1,20 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-event"],
4
+ "properties": {
5
+ "name": ["The party"],
6
+ "start": [
7
+ "2013-03-14",
8
+ "2013-06-25 07:00:00",
9
+ "2013-06-26",
10
+ "2013-06-27",
11
+ "2013-06-28",
12
+ "2013-06-29",
13
+ "2013-07-01",
14
+ "2013-07-02"
15
+ ]
16
+ }
17
+ }],
18
+ "rels": {},
19
+ "rel-urls": {}
20
+ }
@@ -0,0 +1 @@
1
+ <a class="h-event" href="http://indiewebcamp.com/2012">IndieWebCamp 2012</a>
@@ -0,0 +1,11 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-event"],
4
+ "properties": {
5
+ "name": ["IndieWebCamp 2012"],
6
+ "url": ["http://indiewebcamp.com/2012"]
7
+ }
8
+ }],
9
+ "rels": {},
10
+ "rel-urls": {}
11
+ }
@@ -0,0 +1 @@
1
+ <p class="h-event">IndieWebCamp 2012</p>
@@ -0,0 +1,10 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-event"],
4
+ "properties": {
5
+ "name": ["IndieWebCamp 2012"]
6
+ }
7
+ }],
8
+ "rels": {},
9
+ "rel-urls": {}
10
+ }
@@ -0,0 +1,47 @@
1
+ <span class="h-event">
2
+ <span class="p-name">The 4th Microformat party</span> will be on
3
+ <ul>
4
+ <li class="dt-start">
5
+ <time class="value" datetime="2009-06-26">26 July</time>, from
6
+ <time class="value">19:00:00-08:00</time>
7
+ </li>
8
+ <li class="dt-start">
9
+ <time class="value" datetime="2009-06-26">26 July</time>, from
10
+ <time class="value">19:00:00-0800</time>
11
+ </li>
12
+ <li class="dt-start">
13
+ <time class="value" datetime="2009-06-26">26 July</time>, from
14
+ <time class="value">19:00:00+0800</time>
15
+ </li>
16
+ <li class="dt-start">
17
+ <time class="value" datetime="2009-06-26">26 July</time>, from
18
+ <time class="value">19:00:00Z</time>
19
+ </li>
20
+ <li class="dt-start">
21
+ <time class="value" datetime="2009-06-26">26 July</time>, from
22
+ <time class="value">19:00:00</time>
23
+ </li>
24
+ <li class="dt-start">
25
+ <time class="value" datetime="2009-06-26">26 July</time>, from
26
+ <time class="value">19:00-08:00</time>
27
+ </li>
28
+ <li class="dt-start">
29
+ <time class="value" datetime="2009-06-26">26 July</time>, from
30
+ <time class="value">19:00+08:00</time>
31
+ </li>
32
+ <li class="dt-start">
33
+ <time class="value" datetime="2009-06-26">26 July</time>, from
34
+ <time class="value">19:00Z</time>
35
+ </li>
36
+ <li class="dt-start">
37
+ <time class="value" datetime="2009-06-26">26 July</time>, from
38
+ <time class="value">19:00</time>
39
+ </li>
40
+ <li>
41
+ <time class="dt-end" datetime="2013-034">3 February 2013</time>
42
+ </li>
43
+ <li>
44
+ <time class="dt-end" datetime="2013-06-27 15:34">26 July 2013</time>
45
+ </li>
46
+ </ul>
47
+ </span>
@@ -0,0 +1,25 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-event"],
4
+ "properties": {
5
+ "name": ["The 4th Microformat party"],
6
+ "start": [
7
+ "2009-06-26 19:00:00-0800",
8
+ "2009-06-26 19:00:00-0800",
9
+ "2009-06-26 19:00:00+0800",
10
+ "2009-06-26 19:00:00Z",
11
+ "2009-06-26 19:00:00",
12
+ "2009-06-26 19:00-0800",
13
+ "2009-06-26 19:00+0800",
14
+ "2009-06-26 19:00Z",
15
+ "2009-06-26 19:00"
16
+ ],
17
+ "end": [
18
+ "2013-034",
19
+ "2013-06-27 15:34"
20
+ ]
21
+ }
22
+ }],
23
+ "rels": {},
24
+ "rel-urls": {}
25
+ }
@@ -0,0 +1,30 @@
1
+
2
+ <html>
3
+ <head>
4
+ <title>microformats blog</title>
5
+ </head>
6
+ <body>
7
+ <section class="h-feed">
8
+
9
+ <div class="h-entry">
10
+ <h1><a class="p-name u-url" href="http://microformats.org/2012/06/25/microformats-org-at-7">microformats.org at 7</a></h1>
11
+ <div class="e-content">
12
+ <p class="p-summary">Last week the microformats.org community
13
+ celebrated its 7th birthday at a gathering hosted by Mozilla in
14
+ San Francisco and recognized accomplishments, challenges, and
15
+ opportunities.</p>
16
+
17
+ <p>The microformats tagline “humans first, machines second”
18
+ forms the basis of many of our
19
+ <a href="http://microformats.org/wiki/principles">principles</a>, and
20
+ in that regard, we’d like to recognize a few people and
21
+ thank them for their years of volunteer service </p>
22
+ </div>
23
+ <p>Updated
24
+ <time class="dt-updated" datetime="2012-06-25T17:08:26">June 25th, 2012</time>
25
+ </p>
26
+ </div>
27
+
28
+ </section>
29
+ </body>
30
+ </html>
@@ -0,0 +1,23 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-feed"],
4
+ "properties": {
5
+ "name": ["microformats.org at 7\n\t\t \n\t\t Last week the microformats.org community \n\t\t celebrated its 7th birthday at a gathering hosted by Mozilla in \n\t\t San Francisco and recognized accomplishments, challenges, and \n\t\t opportunities.\n\t\t\n\t\t The microformats tagline “humans first, machines second” \n\t\t forms the basis of many of our \n\t\t principles, and \n\t\t in that regard, we’d like to recognize a few people and \n\t\t thank them for their years of volunteer service \n\t\t \n\t\t Updated \n\t\t June 25th, 2012"]
6
+ },
7
+ "children": [{
8
+ "type": ["h-entry"],
9
+ "properties": {
10
+ "name": ["microformats.org at 7"],
11
+ "url": ["http://microformats.org/2012/06/25/microformats-org-at-7"],
12
+ "content": [{
13
+ "value": "Last week the microformats.org community \n\t\t celebrated its 7th birthday at a gathering hosted by Mozilla in \n\t\t San Francisco and recognized accomplishments, challenges, and \n\t\t opportunities.\n\t\t\n\t\t The microformats tagline “humans first, machines second” \n\t\t forms the basis of many of our \n\t\t principles, and \n\t\t in that regard, we’d like to recognize a few people and \n\t\t thank them for their years of volunteer service",
14
+ "html": "\n\t\t <p class=\"p-summary\">Last week the microformats.org community \n\t\t celebrated its 7th birthday at a gathering hosted by Mozilla in \n\t\t San Francisco and recognized accomplishments, challenges, and \n\t\t opportunities.</p>\n\t\t\n\t\t <p>The microformats tagline “humans first, machines second” \n\t\t forms the basis of many of our \n\t\t <a href=\"http://microformats.org/wiki/principles\">principles</a>, and \n\t\t in that regard, we’d like to recognize a few people and \n\t\t thank them for their years of volunteer service </p>\n\t\t"
15
+ }],
16
+ "summary": ["Last week the microformats.org community \n\t\t celebrated its 7th birthday at a gathering hosted by Mozilla in \n\t\t San Francisco and recognized accomplishments, challenges, and \n\t\t opportunities."],
17
+ "updated": ["2012-06-25 17:08:26"]
18
+ }
19
+ }]
20
+ }],
21
+ "rels": {},
22
+ "rel-urls": {}
23
+ }