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,72 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>hnews 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">hnews</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 hnews. </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">Update text output to be textContent non-trimmed</span> &dash;
26
+ <time class="dt-published" datetime="2015-05-29">29 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">Added missing properties to all test</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">Broke old HTML format into small files to aid simpler testing</span> &dash;
36
+ <time class="dt-published" datetime="2015-05-21">21 May 2015</time>
37
+ by <span class="p-author">Glenn Jones</span>
38
+ </li>
39
+ <li class="h-entry">
40
+ <span class="p-name e-content">Updated JSON examples so it always has the rel={} object as well as the items=[] array</span> &dash;
41
+ <time class="dt-published" datetime="2013-11-21">21 November 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">Updated encoding issue on e-*</span> &dash;
46
+ <time class="dt-published" datetime="2013-09-19">19 September 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">Created</span> &dash;
51
+ <time class="dt-published" datetime="2013-01-14">14 January 2013</time>
52
+ by <span class="p-author">Glenn Jones</span>
53
+ </li>
54
+ </ul>
55
+
56
+
57
+ <h2>Contributors:</h2>
58
+ <ul>
59
+ <!-- If you Contribute to the test please add yourself as an author using p-author h-card -->
60
+ <li class="p-author h-card">
61
+ <a class="u-url p-name" rel="author" href="http://www.glennjones.net/">Glenn Jones</a>
62
+ </li>
63
+ </ul>
64
+
65
+
66
+ <footer>
67
+ All content and code is released into the <a href="http://en.wikipedia.org/wiki/public_domain">public domain</a>
68
+ </footer>
69
+
70
+ </body>
71
+
72
+ </html>
@@ -0,0 +1,25 @@
1
+ <div class="hnews">
2
+ <div class="entry hentry">
3
+ <h1><a class="entry-title" rel="bookmark" href="http://microformats.org/2012/06/25/microformats-org-at-7">microformats.org at 7</a></h1>
4
+ <div class="entry-content">
5
+ <p class="entry-summary">Last week the microformats.org community
6
+ celebrated its 7th birthday at a gathering hosted by Mozilla in
7
+ San Francisco and recognized accomplishments, challenges, and
8
+ opportunities.</p>
9
+
10
+ <p>The microformats tagline “humans first, machines second”
11
+ forms the basis of many of our
12
+ <a href="http://microformats.org/wiki/principles">principles</a>, and
13
+ in that regard, we’d like to recognize a few people and
14
+ thank them for their years of volunteer service </p>
15
+ </div>
16
+ <p>Updated
17
+ <time class="updated" datetime="2012-06-25T17:08:26">June 25th, 2012</time> by
18
+ <span class="author vcard"><a class="fn url" href="http://tantek.com/">Tantek</a></span>
19
+ </p>
20
+ </div>
21
+
22
+ <p class="source-org vcard">
23
+ <a class="fn org url" href="http://microformats.org/">microformats.org</a>
24
+ </p>
25
+ </div>
@@ -0,0 +1,48 @@
1
+
2
+ {
3
+ "items": [{
4
+ "type": ["h-news"],
5
+ "properties": {
6
+ "entry": [{
7
+ "value": "microformats.org at 7",
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 celebrated its 7th birthday at a gathering hosted by Mozilla in \n San Francisco and recognized accomplishments, challenges, and \n opportunities.\n\n The microformats tagline “humans first, machines second” \n forms the basis of many of our \n principles, and \n in that regard, we’d like to recognize a few people and \n thank them for their years of volunteer service",
14
+ "html": "\n <p class=\"entry-summary\">Last week the microformats.org community \n celebrated its 7th birthday at a gathering hosted by Mozilla in \n San Francisco and recognized accomplishments, challenges, and \n opportunities.</p>\n\n <p>The microformats tagline “humans first, machines second” \n forms the basis of many of our \n <a href=\"http://microformats.org/wiki/principles\">principles</a>, and \n in that regard, we’d like to recognize a few people and \n thank them for their years of volunteer service </p>\n"
15
+ }],
16
+ "summary": ["Last week the microformats.org community \n celebrated its 7th birthday at a gathering hosted by Mozilla in \n San Francisco and recognized accomplishments, challenges, and \n opportunities."],
17
+ "updated": ["2012-06-25 17:08:26"],
18
+ "author": [{
19
+ "value": "Tantek",
20
+ "type": ["h-card"],
21
+ "properties": {
22
+ "name": ["Tantek"],
23
+ "url": ["http://tantek.com/"]
24
+ }
25
+ }]
26
+ }
27
+ }],
28
+ "source-org": [{
29
+ "value": "microformats.org",
30
+ "type": ["h-card"],
31
+ "properties": {
32
+ "name": ["microformats.org"],
33
+ "org": ["microformats.org"],
34
+ "url": ["http://microformats.org/"]
35
+ }
36
+ }]
37
+ }
38
+ }],
39
+ "rels": {
40
+ "bookmark": ["http://microformats.org/2012/06/25/microformats-org-at-7"]
41
+ },
42
+ "rel-urls": {
43
+ "http://microformats.org/2012/06/25/microformats-org-at-7": {
44
+ "text": "microformats.org at 7",
45
+ "rels": ["bookmark"]
46
+ }
47
+ }
48
+ }
@@ -0,0 +1,26 @@
1
+ <meta charset="utf-8">
2
+ <div class="hproduct">
3
+ <h2 class="fn">Raspberry Pi</h2>
4
+ <img class="photo" src="http://upload.wikimedia.org/wikipedia/commons/thumb/3/3d/RaspberryPi.jpg/320px-RaspberryPi.jpg" />
5
+ <p class="description">The Raspberry Pi is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video. We want to see it being used by kids all over the world to learn programming.</p>
6
+ <a class="url" href="http://www.raspberrypi.org/">More info about the Raspberry Pi</a>
7
+ <p class="price">£29.95</p>
8
+ <p class="review hreview-aggregate">
9
+ <span class="rating">
10
+ <span class="average value">9.2</span> out of
11
+ <span class="best">10</span>
12
+ based on <span class="count">178</span> reviews
13
+ </span>
14
+ </p>
15
+ <p>Categories:
16
+ <a rel="tag" href="http://en.wikipedia.org/wiki/computer" class="category">Computer</a>,
17
+ <a rel="tag" href="http://en.wikipedia.org/wiki/education" class="category">Education</a>
18
+ </p>
19
+ <p class="brand vcard">From:
20
+ <span class="fn org">The Raspberry Pi Foundation</span> -
21
+ <span class="adr">
22
+ <span class="locality">Cambridge</span>
23
+ <span class="country-name">UK</span>
24
+ </span>
25
+ </p>
26
+ </div>
@@ -0,0 +1,52 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-product"],
4
+ "properties": {
5
+ "name": ["Raspberry Pi"],
6
+ "photo": ["http://upload.wikimedia.org/wikipedia/commons/thumb/3/3d/RaspberryPi.jpg/320px-RaspberryPi.jpg"],
7
+ "description": [ "The Raspberry Pi is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video. We want to see it being used by kids all over the world to learn programming." ],
8
+ "url": ["http://www.raspberrypi.org/"],
9
+ "price": ["£29.95"],
10
+ "review": [{
11
+ "value": "9.2",
12
+ "type": ["h-review", "h-review-aggregate"],
13
+ "properties": {
14
+ "rating": ["9.2"],
15
+ "average": ["9.2"],
16
+ "best": ["10"],
17
+ "count": ["178"]
18
+ }
19
+ }],
20
+ "category": ["Computer", "Education"],
21
+ "brand": [{
22
+ "value": "The Raspberry Pi Foundation",
23
+ "type": ["h-card"],
24
+ "properties": {
25
+ "name": ["The Raspberry Pi Foundation"],
26
+ "org": ["The Raspberry Pi Foundation"],
27
+ "adr": [{
28
+ "value": "Cambridge \n UK",
29
+ "type": ["h-adr"],
30
+ "properties": {
31
+ "locality": ["Cambridge"],
32
+ "country-name": ["UK"]
33
+ }
34
+ }]
35
+ }
36
+ }]
37
+ }
38
+ }],
39
+ "rels": {
40
+ "tag": ["http://en.wikipedia.org/wiki/computer", "http://en.wikipedia.org/wiki/education"]
41
+ },
42
+ "rel-urls": {
43
+ "http://en.wikipedia.org/wiki/computer": {
44
+ "text": "Computer",
45
+ "rels": ["tag"]
46
+ },
47
+ "http://en.wikipedia.org/wiki/education": {
48
+ "text": "Education",
49
+ "rels": ["tag"]
50
+ }
51
+ }
52
+ }
@@ -0,0 +1,62 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>hproduct 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">hproduct</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 hproduct. </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">Update text output to be textContent non-trimmed</span> &dash;
26
+ <time class="dt-published" datetime="2015-05-29">29 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">Created</span> &dash;
41
+ <time class="dt-published" datetime="2013-01-14">14 January 2013</time>
42
+ by <span class="p-author">Glenn Jones</span>
43
+ </li>
44
+ </ul>
45
+
46
+
47
+ <h2>Contributors:</h2>
48
+ <ul>
49
+ <!-- If you Contribute to the test please add yourself as an author using p-author h-card -->
50
+ <li class="p-author h-card">
51
+ <a class="u-url p-name" rel="author" href="http://www.glennjones.net/">Glenn Jones</a>
52
+ </li>
53
+ </ul>
54
+
55
+
56
+ <footer>
57
+ All content and code is released into the <a href="http://en.wikipedia.org/wiki/public_domain">public domain</a>
58
+ </footer>
59
+
60
+ </body>
61
+
62
+ </html>
@@ -0,0 +1,13 @@
1
+ <meta charset="utf-8">
2
+ <div class="hproduct">
3
+ <h2 class="fn">Raspberry Pi</h2>
4
+ <img class="photo" src="http://upload.wikimedia.org/wikipedia/commons/thumb/3/3d/RaspberryPi.jpg/320px-RaspberryPi.jpg" />
5
+ <p class="description">The Raspberry Pi is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video. We want to see it being used by kids all over the world to learn programming.</p>
6
+ <a class="url" href="http://www.raspberrypi.org/">More info about the Raspberry Pi</a>
7
+ <p class="price">£29.95</p>
8
+ <p class="review hreview"><span class="rating">4.5</span> out of 5</p>
9
+ <p>Categories:
10
+ <a rel="tag" href="http://en.wikipedia.org/wiki/computer" class="category">Computer</a>,
11
+ <a rel="tag" href="http://en.wikipedia.org/wiki/education" class="category">Education</a>
12
+ </p>
13
+ </div>
@@ -0,0 +1,33 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-product"],
4
+ "properties": {
5
+ "name": ["Raspberry Pi"],
6
+ "photo": ["http://upload.wikimedia.org/wikipedia/commons/thumb/3/3d/RaspberryPi.jpg/320px-RaspberryPi.jpg"],
7
+ "description": [ "The Raspberry Pi is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video. We want to see it being used by kids all over the world to learn programming." ],
8
+ "url": ["http://www.raspberrypi.org/"],
9
+ "price": ["£29.95"],
10
+ "category": ["Computer", "Education"],
11
+ "review": [{
12
+ "value": "4.5 out of 5",
13
+ "type": ["h-review"],
14
+ "properties": {
15
+ "rating": ["4.5"]
16
+ }
17
+ }]
18
+ }
19
+ }],
20
+ "rels": {
21
+ "tag": ["http://en.wikipedia.org/wiki/computer", "http://en.wikipedia.org/wiki/education"]
22
+ },
23
+ "rel-urls": {
24
+ "http://en.wikipedia.org/wiki/computer": {
25
+ "text": "Computer",
26
+ "rels": ["tag"]
27
+ },
28
+ "http://en.wikipedia.org/wiki/education": {
29
+ "text": "Education",
30
+ "rels": ["tag"]
31
+ }
32
+ }
33
+ }
@@ -0,0 +1,12 @@
1
+ <div class="hresume">
2
+ <p>
3
+ <span class="contact vcard"><span class="fn">Tim Berners-Lee</span></span>,
4
+ <span class="summary">invented the World Wide Web</span>.
5
+ </p>
6
+ Belongs to following groups:
7
+ <p>
8
+ <a class="affiliation vcard" href="http://www.w3.org/">
9
+ <img class="fn photo" alt="W3C" src="http://www.w3.org/Icons/WWW/w3c_home_nb.png" />
10
+ </a>
11
+ </p>
12
+ </div>
@@ -0,0 +1,25 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-resume"],
4
+ "properties": {
5
+ "contact": [{
6
+ "value": "Tim Berners-Lee",
7
+ "type": ["h-card"],
8
+ "properties": {
9
+ "name": ["Tim Berners-Lee"]
10
+ }
11
+ }],
12
+ "summary": ["invented the World Wide Web"],
13
+ "affiliation": [{
14
+ "value": "W3C",
15
+ "type": ["h-card"],
16
+ "properties": {
17
+ "name": ["W3C"],
18
+ "photo": ["http://www.w3.org/Icons/WWW/w3c_home_nb.png"]
19
+ }
20
+ }]
21
+ }
22
+ }],
23
+ "rels": {},
24
+ "rel-urls": {}
25
+ }
@@ -0,0 +1,73 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>h-resume 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-resume</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 hresume and its output to the newer JSON structure of micorformats 2. </p>
19
+ <p class="p-description">Theses are backwards compatibility tests for the older version 1 microformats specification. Please do not use this as a reference for authoring microformats.</p>
20
+
21
+
22
+ <h2>Change log:</h2>
23
+ <ul>
24
+ <!-- Add change log event to the top of this list as a h-entry -->
25
+ <li class="h-entry">
26
+ <span class="p-name e-content">Remove empty value property in the JSON of affiliation test</span> &dash;
27
+ <time class="dt-published" datetime="2015-06-01">1 June 2015</time>
28
+ by <span class="p-author">Glenn Jones</span>
29
+ </li>
30
+ <li class="h-entry">
31
+ <span class="p-name e-content">Update text output to be textContent non-trimmed</span> &dash;
32
+ <time class="dt-published" datetime="2015-05-29">29 May 2015</time>
33
+ by <span class="p-author">Glenn Jones</span>
34
+ </li>
35
+ <li class="h-entry">
36
+ <span class="p-name e-content">Broke old HTML format into small files to aid simpler testing</span> &dash;
37
+ <time class="dt-published" datetime="2015-05-21">21 May 2015</time>
38
+ by <span class="p-author">Glenn Jones</span>
39
+ </li>
40
+ <li class="h-entry">
41
+ <span class="p-name e-content">Updated JSON examples so it always has the rel={} object as well as the items=[] array</span> &dash;
42
+ <time class="dt-published" datetime="2013-11-21">21 November 2013</time>
43
+ by <span class="p-author">Glenn Jones</span>
44
+ </li>
45
+ <li class="h-entry">
46
+ <span class="p-name e-content">Removed competency tests</span> &dash;
47
+ <time class="dt-published" datetime="2013-01-11">11 January 2013</time>
48
+ by <span class="p-author">Glenn Jones</span>
49
+ </li>
50
+ <li class="h-entry">
51
+ <span class="p-name e-content">Copied from version 1 test suite</span> &dash;
52
+ <time class="dt-published" datetime="2013-01-07">7 January 2013</time>
53
+ by <span class="p-author">Glenn Jones</span>
54
+ </li>
55
+ </ul>
56
+
57
+
58
+ <h2>Contributors:</h2>
59
+ <ul>
60
+ <!-- If you Contribute to the test please add yourself as an author using p-author h-card -->
61
+ <li class="p-author h-card">
62
+ <a class="u-url p-name" rel="author" href="http://www.glennjones.net/">Glenn Jones</a>
63
+ </li>
64
+ </ul>
65
+
66
+
67
+ <footer>
68
+ All content and code is released into the <a href="http://en.wikipedia.org/wiki/public_domain">public domain</a>
69
+ </footer>
70
+
71
+ </body>
72
+
73
+ </html>