rdfa_parser 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (406) hide show
  1. data/.gitmodules +3 -0
  2. data/History.txt +11 -3
  3. data/VERSION +1 -1
  4. data/bin/rdfa_parser +0 -6
  5. data/lib/rdfa_parser/literal.rb +20 -9
  6. data/lib/rdfa_parser/namespace.rb +2 -2
  7. data/lib/rdfa_parser/rdfa_parser.rb +29 -8
  8. data/lib/rdfa_parser/triple.rb +2 -4
  9. data/spec/graph_spec.rb +3 -3
  10. data/spec/literal_spec.rb +12 -9
  11. data/spec/matchers.rb +6 -3
  12. data/spec/rdfa-triples/0001.nt +1 -0
  13. data/spec/rdfa-triples/0006.nt +2 -0
  14. data/spec/rdfa-triples/0007.nt +3 -0
  15. data/spec/rdfa-triples/0008.nt +1 -0
  16. data/spec/{xhtml1-testcases → rdfa-triples}/0009.nt +0 -0
  17. data/spec/{xhtml1-testcases → rdfa-triples}/0010.nt +0 -0
  18. data/spec/rdfa-triples/0011.nt +3 -0
  19. data/spec/{xhtml1-testcases → rdfa-triples}/0012.nt +0 -0
  20. data/spec/{xhtml1-testcases → rdfa-triples}/0013.nt +0 -0
  21. data/spec/{xhtml1-testcases → rdfa-triples}/0014.nt +0 -0
  22. data/spec/rdfa-triples/0015.nt +2 -0
  23. data/spec/{xhtml1-testcases → rdfa-triples}/0017.nt +0 -0
  24. data/spec/rdfa-triples/0018.nt +1 -0
  25. data/spec/{xhtml1-testcases → rdfa-triples}/0019.nt +0 -0
  26. data/spec/rdfa-triples/0020.nt +1 -0
  27. data/spec/rdfa-triples/0021.nt +1 -0
  28. data/spec/rdfa-triples/0023.nt +1 -0
  29. data/spec/rdfa-triples/0025.nt +2 -0
  30. data/spec/{xhtml1-testcases → rdfa-triples}/0026.nt +0 -0
  31. data/spec/{xhtml1-testcases → rdfa-triples}/0027.nt +0 -0
  32. data/spec/{xhtml1-testcases → rdfa-triples}/0029.nt +0 -0
  33. data/spec/rdfa-triples/0030.nt +1 -0
  34. data/spec/rdfa-triples/0031.nt +1 -0
  35. data/spec/rdfa-triples/0032.nt +1 -0
  36. data/spec/rdfa-triples/0033.nt +2 -0
  37. data/spec/{xhtml1-testcases → rdfa-triples}/0034.nt +0 -0
  38. data/spec/{xhtml1-testcases → rdfa-triples}/0035.nt +0 -0
  39. data/spec/{xhtml1-testcases → rdfa-triples}/0036.nt +0 -0
  40. data/spec/{xhtml1-testcases → rdfa-triples}/0037.nt +0 -0
  41. data/spec/{xhtml1-testcases → rdfa-triples}/0038.nt +0 -0
  42. data/spec/{xhtml1-testcases → rdfa-triples}/0039.nt +0 -0
  43. data/spec/{xhtml1-testcases → rdfa-triples}/0040.nt +0 -0
  44. data/spec/{xhtml1-testcases → rdfa-triples}/0041.nt +0 -0
  45. data/spec/{xhtml1-testcases → rdfa-triples}/0042.nt +0 -0
  46. data/spec/{xhtml1-testcases → rdfa-triples}/0046.nt +0 -0
  47. data/spec/{xhtml1-testcases → rdfa-triples}/0047.nt +0 -0
  48. data/spec/{xhtml1-testcases → rdfa-triples}/0048.nt +0 -0
  49. data/spec/{xhtml1-testcases → rdfa-triples}/0049.nt +0 -0
  50. data/spec/{xhtml1-testcases → rdfa-triples}/0050.nt +0 -0
  51. data/spec/rdfa-triples/0051.nt +2 -0
  52. data/spec/{xhtml1-testcases → rdfa-triples}/0052.nt +0 -0
  53. data/spec/{xhtml1-testcases → rdfa-triples}/0053.nt +0 -0
  54. data/spec/rdfa-triples/0054.nt +2 -0
  55. data/spec/rdfa-triples/0055.nt +2 -0
  56. data/spec/{xhtml1-testcases → rdfa-triples}/0056.nt +0 -0
  57. data/spec/{xhtml1-testcases → rdfa-triples}/0057.nt +0 -0
  58. data/spec/{xhtml1-testcases → rdfa-triples}/0058.nt +0 -0
  59. data/spec/rdfa-triples/0059.nt +6 -0
  60. data/spec/{xhtml1-testcases → rdfa-triples}/0060.nt +0 -0
  61. data/spec/rdfa-triples/0061.nt +1 -0
  62. data/spec/rdfa-triples/0062.nt +1 -0
  63. data/spec/rdfa-triples/0063.nt +1 -0
  64. data/spec/{xhtml1-testcases → rdfa-triples}/0064.nt +0 -0
  65. data/spec/{xhtml1-testcases → rdfa-triples}/0065.nt +0 -0
  66. data/spec/rdfa-triples/0066.nt +1 -0
  67. data/spec/rdfa-triples/0067.nt +1 -0
  68. data/spec/rdfa-triples/0068.nt +1 -0
  69. data/spec/rdfa-triples/0069.nt +1 -0
  70. data/spec/rdfa-triples/0070.nt +1 -0
  71. data/spec/rdfa-triples/0071.nt +1 -0
  72. data/spec/{xhtml1-testcases → rdfa-triples}/0072.nt +0 -0
  73. data/spec/{xhtml1-testcases → rdfa-triples}/0073.nt +0 -0
  74. data/spec/{xhtml1-testcases → rdfa-triples}/0074.nt +0 -0
  75. data/spec/{xhtml1-testcases → rdfa-triples}/0075.nt +0 -0
  76. data/spec/rdfa-triples/0076.nt +23 -0
  77. data/spec/rdfa-triples/0077.nt +23 -0
  78. data/spec/{xhtml1-testcases → rdfa-triples}/0078.nt +0 -0
  79. data/spec/{xhtml1-testcases → rdfa-triples}/0079.nt +0 -0
  80. data/spec/{xhtml1-testcases → rdfa-triples}/0080.nt +0 -0
  81. data/spec/{xhtml1-testcases → rdfa-triples}/0081.nt +0 -0
  82. data/spec/{xhtml1-testcases → rdfa-triples}/0082.nt +0 -0
  83. data/spec/{xhtml1-testcases → rdfa-triples}/0083.nt +0 -0
  84. data/spec/{xhtml1-testcases → rdfa-triples}/0084.nt +0 -0
  85. data/spec/{xhtml1-testcases → rdfa-triples}/0085.nt +0 -0
  86. data/spec/{xhtml1-testcases → rdfa-triples}/0086.nt +0 -0
  87. data/spec/rdfa-triples/0087.nt +23 -0
  88. data/spec/{xhtml1-testcases → rdfa-triples}/0088.nt +0 -0
  89. data/spec/{xhtml1-testcases → rdfa-triples}/0089.nt +0 -0
  90. data/spec/{xhtml1-testcases → rdfa-triples}/0090.nt +0 -0
  91. data/spec/{xhtml1-testcases → rdfa-triples}/0091.nt +0 -0
  92. data/spec/rdfa-triples/0092.nt +3 -0
  93. data/spec/rdfa-triples/0093.nt +2 -0
  94. data/spec/rdfa-triples/0094.nt +3 -0
  95. data/spec/{xhtml1-testcases → rdfa-triples}/0099.nt +0 -0
  96. data/spec/{xhtml1-testcases → rdfa-triples}/0100.nt +0 -0
  97. data/spec/{xhtml1-testcases → rdfa-triples}/0101.nt +0 -0
  98. data/spec/{xhtml1-testcases → rdfa-triples}/0102.nt +0 -0
  99. data/spec/{xhtml1-testcases → rdfa-triples}/0103.nt +0 -0
  100. data/spec/rdfa-triples/0104.nt +3 -0
  101. data/spec/rdfa-triples/0105.nt +1 -0
  102. data/spec/rdfa-triples/0106.nt +1 -0
  103. data/spec/{xhtml1-testcases → rdfa-triples}/0107.nt +0 -0
  104. data/spec/{xhtml1-testcases → rdfa-triples}/0108.nt +0 -0
  105. data/spec/rdfa-triples/0109.nt +1 -0
  106. data/spec/rdfa-triples/0110.nt +1 -0
  107. data/spec/rdfa-triples/0111.nt +2 -0
  108. data/spec/{xhtml1-testcases → rdfa-triples}/0112.nt +0 -0
  109. data/spec/rdfa-triples/0113.nt +2 -0
  110. data/spec/rdfa-triples/0114.nt +3 -0
  111. data/spec/rdfa-triples/0115.nt +4 -0
  112. data/spec/rdfa-triples/0116.nt +2 -0
  113. data/spec/{xhtml1-testcases → rdfa-triples}/0117.nt +0 -0
  114. data/spec/rdfa-triples/0118.nt +1 -0
  115. data/spec/{xhtml1-testcases → rdfa-triples}/0119.nt +0 -0
  116. data/spec/{xhtml1-testcases → rdfa-triples}/0120.nt +0 -0
  117. data/spec/{xhtml1-testcases → rdfa-triples}/0121.nt +0 -0
  118. data/spec/{xhtml1-testcases → rdfa-triples}/0122.nt +0 -0
  119. data/spec/{xhtml1-testcases → rdfa-triples}/0123.nt +0 -0
  120. data/spec/{xhtml1-testcases → rdfa-triples}/0124.nt +0 -0
  121. data/spec/{xhtml1-testcases → rdfa-triples}/0125.nt +0 -0
  122. data/spec/{xhtml1-testcases → rdfa-triples}/0126.nt +0 -0
  123. data/spec/rdfa-triples/1001.nt +6 -0
  124. data/spec/rdfa_helper.rb +131 -19
  125. data/spec/rdfa_parser_spec.rb +42 -25
  126. data/spec/triple_spec.rb +0 -19
  127. data/spec/xhtml1-testcases/9997.xhtml +11 -0
  128. metadata +116 -346
  129. data/spec/html4-testcases/0011.html +0 -13
  130. data/spec/html5-testcases/0011.html +0 -13
  131. data/spec/xhtml1-testcases/.sparql +0 -13
  132. data/spec/xhtml1-testcases/0001.nt +0 -1
  133. data/spec/xhtml1-testcases/0001.sparql +0 -3
  134. data/spec/xhtml1-testcases/0001.xhtml +0 -11
  135. data/spec/xhtml1-testcases/0002.sparql +0 -3
  136. data/spec/xhtml1-testcases/0003.sparql +0 -3
  137. data/spec/xhtml1-testcases/0006.nt +0 -2
  138. data/spec/xhtml1-testcases/0006.sparql +0 -8
  139. data/spec/xhtml1-testcases/0006.xhtml +0 -16
  140. data/spec/xhtml1-testcases/0007.nt +0 -3
  141. data/spec/xhtml1-testcases/0007.sparql +0 -5
  142. data/spec/xhtml1-testcases/0007.xhtml +0 -16
  143. data/spec/xhtml1-testcases/0008.nt +0 -1
  144. data/spec/xhtml1-testcases/0008.sparql +0 -3
  145. data/spec/xhtml1-testcases/0008.xhtml +0 -16
  146. data/spec/xhtml1-testcases/0009.sparql +0 -3
  147. data/spec/xhtml1-testcases/0009.xhtml +0 -14
  148. data/spec/xhtml1-testcases/0010.sparql +0 -4
  149. data/spec/xhtml1-testcases/0010.xhtml +0 -13
  150. data/spec/xhtml1-testcases/0011.nt +0 -3
  151. data/spec/xhtml1-testcases/0011.sparql +0 -17
  152. data/spec/xhtml1-testcases/0011.xhtml +0 -14
  153. data/spec/xhtml1-testcases/0012.sparql +0 -3
  154. data/spec/xhtml1-testcases/0012.xhtml +0 -12
  155. data/spec/xhtml1-testcases/0013.sparql +0 -3
  156. data/spec/xhtml1-testcases/0013.xhtml +0 -12
  157. data/spec/xhtml1-testcases/0014.sparql +0 -3
  158. data/spec/xhtml1-testcases/0014.xhtml +0 -15
  159. data/spec/xhtml1-testcases/0015.nt +0 -2
  160. data/spec/xhtml1-testcases/0015.sparql +0 -4
  161. data/spec/xhtml1-testcases/0015.xhtml +0 -13
  162. data/spec/xhtml1-testcases/0017.sparql +0 -6
  163. data/spec/xhtml1-testcases/0017.xhtml +0 -16
  164. data/spec/xhtml1-testcases/0018.nt +0 -1
  165. data/spec/xhtml1-testcases/0018.sparql +0 -3
  166. data/spec/xhtml1-testcases/0018.xhtml +0 -17
  167. data/spec/xhtml1-testcases/0019.sparql +0 -3
  168. data/spec/xhtml1-testcases/0019.xhtml +0 -14
  169. data/spec/xhtml1-testcases/0020.nt +0 -1
  170. data/spec/xhtml1-testcases/0020.sparql +0 -3
  171. data/spec/xhtml1-testcases/0020.xhtml +0 -17
  172. data/spec/xhtml1-testcases/0021.nt +0 -1
  173. data/spec/xhtml1-testcases/0021.sparql +0 -3
  174. data/spec/xhtml1-testcases/0021.xhtml +0 -17
  175. data/spec/xhtml1-testcases/0023.nt +0 -1
  176. data/spec/xhtml1-testcases/0023.sparql +0 -3
  177. data/spec/xhtml1-testcases/0023.xhtml +0 -16
  178. data/spec/xhtml1-testcases/0025.nt +0 -2
  179. data/spec/xhtml1-testcases/0025.sparql +0 -4
  180. data/spec/xhtml1-testcases/0025.xhtml +0 -19
  181. data/spec/xhtml1-testcases/0026.sparql +0 -3
  182. data/spec/xhtml1-testcases/0026.xhtml +0 -16
  183. data/spec/xhtml1-testcases/0027.sparql +0 -3
  184. data/spec/xhtml1-testcases/0027.xhtml +0 -17
  185. data/spec/xhtml1-testcases/0029.sparql +0 -3
  186. data/spec/xhtml1-testcases/0029.xhtml +0 -17
  187. data/spec/xhtml1-testcases/0030.nt +0 -1
  188. data/spec/xhtml1-testcases/0030.sparql +0 -3
  189. data/spec/xhtml1-testcases/0030.xhtml +0 -16
  190. data/spec/xhtml1-testcases/0031.nt +0 -1
  191. data/spec/xhtml1-testcases/0031.sparql +0 -3
  192. data/spec/xhtml1-testcases/0031.xhtml +0 -14
  193. data/spec/xhtml1-testcases/0032.nt +0 -1
  194. data/spec/xhtml1-testcases/0032.sparql +0 -3
  195. data/spec/xhtml1-testcases/0032.xhtml +0 -15
  196. data/spec/xhtml1-testcases/0033.nt +0 -2
  197. data/spec/xhtml1-testcases/0033.sparql +0 -5
  198. data/spec/xhtml1-testcases/0033.xhtml +0 -19
  199. data/spec/xhtml1-testcases/0034.sparql +0 -3
  200. data/spec/xhtml1-testcases/0034.xhtml +0 -14
  201. data/spec/xhtml1-testcases/0035.sparql +0 -3
  202. data/spec/xhtml1-testcases/0035.xhtml +0 -17
  203. data/spec/xhtml1-testcases/0036.sparql +0 -3
  204. data/spec/xhtml1-testcases/0036.xhtml +0 -17
  205. data/spec/xhtml1-testcases/0037.sparql +0 -3
  206. data/spec/xhtml1-testcases/0037.xhtml +0 -18
  207. data/spec/xhtml1-testcases/0038.sparql +0 -3
  208. data/spec/xhtml1-testcases/0038.xhtml +0 -14
  209. data/spec/xhtml1-testcases/0039.sparql +0 -3
  210. data/spec/xhtml1-testcases/0039.xhtml +0 -17
  211. data/spec/xhtml1-testcases/0040.sparql +0 -3
  212. data/spec/xhtml1-testcases/0040.xhtml +0 -16
  213. data/spec/xhtml1-testcases/0041.sparql +0 -3
  214. data/spec/xhtml1-testcases/0041.xhtml +0 -18
  215. data/spec/xhtml1-testcases/0042.sparql +0 -4
  216. data/spec/xhtml1-testcases/0042.xhtml +0 -15
  217. data/spec/xhtml1-testcases/0046.sparql +0 -6
  218. data/spec/xhtml1-testcases/0046.xhtml +0 -13
  219. data/spec/xhtml1-testcases/0047.sparql +0 -6
  220. data/spec/xhtml1-testcases/0047.xhtml +0 -13
  221. data/spec/xhtml1-testcases/0048.sparql +0 -6
  222. data/spec/xhtml1-testcases/0048.xhtml +0 -14
  223. data/spec/xhtml1-testcases/0049.sparql +0 -4
  224. data/spec/xhtml1-testcases/0049.xhtml +0 -14
  225. data/spec/xhtml1-testcases/0050.sparql +0 -5
  226. data/spec/xhtml1-testcases/0050.xhtml +0 -14
  227. data/spec/xhtml1-testcases/0051.nt +0 -2
  228. data/spec/xhtml1-testcases/0051.sparql +0 -4
  229. data/spec/xhtml1-testcases/0051.xhtml +0 -12
  230. data/spec/xhtml1-testcases/0052.sparql +0 -3
  231. data/spec/xhtml1-testcases/0052.xhtml +0 -13
  232. data/spec/xhtml1-testcases/0053.sparql +0 -4
  233. data/spec/xhtml1-testcases/0053.xhtml +0 -13
  234. data/spec/xhtml1-testcases/0054.nt +0 -2
  235. data/spec/xhtml1-testcases/0054.sparql +0 -4
  236. data/spec/xhtml1-testcases/0054.xhtml +0 -14
  237. data/spec/xhtml1-testcases/0055.nt +0 -2
  238. data/spec/xhtml1-testcases/0055.sparql +0 -4
  239. data/spec/xhtml1-testcases/0055.xhtml +0 -16
  240. data/spec/xhtml1-testcases/0056.sparql +0 -5
  241. data/spec/xhtml1-testcases/0056.xhtml +0 -13
  242. data/spec/xhtml1-testcases/0057.sparql +0 -6
  243. data/spec/xhtml1-testcases/0057.xhtml +0 -14
  244. data/spec/xhtml1-testcases/0058.sparql +0 -9
  245. data/spec/xhtml1-testcases/0058.xhtml +0 -14
  246. data/spec/xhtml1-testcases/0059.nt +0 -6
  247. data/spec/xhtml1-testcases/0059.sparql +0 -8
  248. data/spec/xhtml1-testcases/0059.xhtml +0 -16
  249. data/spec/xhtml1-testcases/0060.sparql +0 -4
  250. data/spec/xhtml1-testcases/0060.xhtml +0 -14
  251. data/spec/xhtml1-testcases/0061.nt +0 -1
  252. data/spec/xhtml1-testcases/0061.sparql +0 -3
  253. data/spec/xhtml1-testcases/0061.xhtml +0 -11
  254. data/spec/xhtml1-testcases/0062.nt +0 -1
  255. data/spec/xhtml1-testcases/0062.sparql +0 -3
  256. data/spec/xhtml1-testcases/0062.xhtml +0 -12
  257. data/spec/xhtml1-testcases/0063.nt +0 -1
  258. data/spec/xhtml1-testcases/0063.sparql +0 -3
  259. data/spec/xhtml1-testcases/0063.xhtml +0 -11
  260. data/spec/xhtml1-testcases/0064.sparql +0 -4
  261. data/spec/xhtml1-testcases/0064.xhtml +0 -13
  262. data/spec/xhtml1-testcases/0065.sparql +0 -6
  263. data/spec/xhtml1-testcases/0065.xhtml +0 -22
  264. data/spec/xhtml1-testcases/0066.nt +0 -1
  265. data/spec/xhtml1-testcases/0066.sparql +0 -3
  266. data/spec/xhtml1-testcases/0066.xhtml +0 -11
  267. data/spec/xhtml1-testcases/0067.nt +0 -1
  268. data/spec/xhtml1-testcases/0067.sparql +0 -3
  269. data/spec/xhtml1-testcases/0067.xhtml +0 -11
  270. data/spec/xhtml1-testcases/0068.nt +0 -1
  271. data/spec/xhtml1-testcases/0068.sparql +0 -3
  272. data/spec/xhtml1-testcases/0068.xhtml +0 -14
  273. data/spec/xhtml1-testcases/0069.nt +0 -1
  274. data/spec/xhtml1-testcases/0069.sparql +0 -3
  275. data/spec/xhtml1-testcases/0069.xhtml +0 -14
  276. data/spec/xhtml1-testcases/0070.nt +0 -1
  277. data/spec/xhtml1-testcases/0070.sparql +0 -3
  278. data/spec/xhtml1-testcases/0070.xhtml +0 -13
  279. data/spec/xhtml1-testcases/0071.nt +0 -1
  280. data/spec/xhtml1-testcases/0071.sparql +0 -3
  281. data/spec/xhtml1-testcases/0071.xhtml +0 -16
  282. data/spec/xhtml1-testcases/0072.sparql +0 -3
  283. data/spec/xhtml1-testcases/0072.xhtml +0 -16
  284. data/spec/xhtml1-testcases/0073.sparql +0 -3
  285. data/spec/xhtml1-testcases/0073.xhtml +0 -16
  286. data/spec/xhtml1-testcases/0074.sparql +0 -3
  287. data/spec/xhtml1-testcases/0074.xhtml +0 -16
  288. data/spec/xhtml1-testcases/0075.sparql +0 -3
  289. data/spec/xhtml1-testcases/0075.xhtml +0 -16
  290. data/spec/xhtml1-testcases/0076.nt +0 -23
  291. data/spec/xhtml1-testcases/0076.sparql +0 -70
  292. data/spec/xhtml1-testcases/0076.xhtml +0 -35
  293. data/spec/xhtml1-testcases/0077.nt +0 -23
  294. data/spec/xhtml1-testcases/0077.sparql +0 -70
  295. data/spec/xhtml1-testcases/0077.xhtml +0 -58
  296. data/spec/xhtml1-testcases/0078.sparql +0 -7
  297. data/spec/xhtml1-testcases/0078.xhtml +0 -15
  298. data/spec/xhtml1-testcases/0079.sparql +0 -6
  299. data/spec/xhtml1-testcases/0079.xhtml +0 -15
  300. data/spec/xhtml1-testcases/0080.sparql +0 -3
  301. data/spec/xhtml1-testcases/0080.xhtml +0 -13
  302. data/spec/xhtml1-testcases/0081.sparql +0 -9
  303. data/spec/xhtml1-testcases/0081.xhtml +0 -15
  304. data/spec/xhtml1-testcases/0082.sparql +0 -11
  305. data/spec/xhtml1-testcases/0082.xhtml +0 -15
  306. data/spec/xhtml1-testcases/0083.sparql +0 -9
  307. data/spec/xhtml1-testcases/0083.xhtml +0 -15
  308. data/spec/xhtml1-testcases/0084.sparql +0 -11
  309. data/spec/xhtml1-testcases/0084.xhtml +0 -18
  310. data/spec/xhtml1-testcases/0085.sparql +0 -6
  311. data/spec/xhtml1-testcases/0085.xhtml +0 -17
  312. data/spec/xhtml1-testcases/0086.sparql +0 -4
  313. data/spec/xhtml1-testcases/0086.xhtml +0 -13
  314. data/spec/xhtml1-testcases/0087.nt +0 -23
  315. data/spec/xhtml1-testcases/0087.sparql +0 -70
  316. data/spec/xhtml1-testcases/0087.xhtml +0 -35
  317. data/spec/xhtml1-testcases/0088.sparql +0 -6
  318. data/spec/xhtml1-testcases/0088.xhtml +0 -14
  319. data/spec/xhtml1-testcases/0089.sparql +0 -3
  320. data/spec/xhtml1-testcases/0089.xhtml +0 -13
  321. data/spec/xhtml1-testcases/0090.sparql +0 -3
  322. data/spec/xhtml1-testcases/0090.xhtml +0 -16
  323. data/spec/xhtml1-testcases/0091.sparql +0 -6
  324. data/spec/xhtml1-testcases/0091.xhtml +0 -16
  325. data/spec/xhtml1-testcases/0092.nt +0 -3
  326. data/spec/xhtml1-testcases/0092.sparql +0 -16
  327. data/spec/xhtml1-testcases/0092.xhtml +0 -15
  328. data/spec/xhtml1-testcases/0093.nt +0 -2
  329. data/spec/xhtml1-testcases/0093.sparql +0 -4
  330. data/spec/xhtml1-testcases/0093.xhtml +0 -15
  331. data/spec/xhtml1-testcases/0094.nt +0 -3
  332. data/spec/xhtml1-testcases/0094.sparql +0 -16
  333. data/spec/xhtml1-testcases/0094.xhtml +0 -15
  334. data/spec/xhtml1-testcases/0099.sparql +0 -3
  335. data/spec/xhtml1-testcases/0099.xhtml +0 -20
  336. data/spec/xhtml1-testcases/0100.sparql +0 -15
  337. data/spec/xhtml1-testcases/0100.xhtml +0 -16
  338. data/spec/xhtml1-testcases/0101.sparql +0 -15
  339. data/spec/xhtml1-testcases/0101.xhtml +0 -16
  340. data/spec/xhtml1-testcases/0102.sparql +0 -15
  341. data/spec/xhtml1-testcases/0102.xhtml +0 -16
  342. data/spec/xhtml1-testcases/0103.sparql +0 -15
  343. data/spec/xhtml1-testcases/0103.xhtml +0 -15
  344. data/spec/xhtml1-testcases/0104.nt +0 -3
  345. data/spec/xhtml1-testcases/0104.sparql +0 -5
  346. data/spec/xhtml1-testcases/0104.xhtml +0 -18
  347. data/spec/xhtml1-testcases/0105.nt +0 -1
  348. data/spec/xhtml1-testcases/0105.sparql +0 -7
  349. data/spec/xhtml1-testcases/0105.xhtml +0 -13
  350. data/spec/xhtml1-testcases/0106.nt +0 -1
  351. data/spec/xhtml1-testcases/0106.sparql +0 -7
  352. data/spec/xhtml1-testcases/0106.xhtml +0 -13
  353. data/spec/xhtml1-testcases/0107.sparql +0 -4
  354. data/spec/xhtml1-testcases/0107.xhtml +0 -11
  355. data/spec/xhtml1-testcases/0108.sparql +0 -3
  356. data/spec/xhtml1-testcases/0108.xhtml +0 -14
  357. data/spec/xhtml1-testcases/0109.nt +0 -1
  358. data/spec/xhtml1-testcases/0109.sparql +0 -3
  359. data/spec/xhtml1-testcases/0109.xhtml +0 -15
  360. data/spec/xhtml1-testcases/0110.nt +0 -1
  361. data/spec/xhtml1-testcases/0110.sparql +0 -4
  362. data/spec/xhtml1-testcases/0110.xhtml +0 -12
  363. data/spec/xhtml1-testcases/0111.nt +0 -2
  364. data/spec/xhtml1-testcases/0111.sparql +0 -5
  365. data/spec/xhtml1-testcases/0111.xhtml +0 -14
  366. data/spec/xhtml1-testcases/0112.sparql +0 -3
  367. data/spec/xhtml1-testcases/0112.xhtml +0 -16
  368. data/spec/xhtml1-testcases/0113.nt +0 -2
  369. data/spec/xhtml1-testcases/0113.sparql +0 -4
  370. data/spec/xhtml1-testcases/0113.xhtml +0 -12
  371. data/spec/xhtml1-testcases/0114.nt +0 -3
  372. data/spec/xhtml1-testcases/0114.sparql +0 -5
  373. data/spec/xhtml1-testcases/0114.xhtml +0 -15
  374. data/spec/xhtml1-testcases/0115.nt +0 -4
  375. data/spec/xhtml1-testcases/0115.sparql +0 -14
  376. data/spec/xhtml1-testcases/0115.xhtml +0 -17
  377. data/spec/xhtml1-testcases/0116.nt +0 -2
  378. data/spec/xhtml1-testcases/0116.sparql +0 -6
  379. data/spec/xhtml1-testcases/0116.xhtml +0 -10
  380. data/spec/xhtml1-testcases/0117.sparql +0 -4
  381. data/spec/xhtml1-testcases/0117.xhtml +0 -15
  382. data/spec/xhtml1-testcases/0118.nt +0 -1
  383. data/spec/xhtml1-testcases/0118.sparql +0 -5
  384. data/spec/xhtml1-testcases/0118.xhtml +0 -16
  385. data/spec/xhtml1-testcases/0119.sparql +0 -5
  386. data/spec/xhtml1-testcases/0119.xhtml +0 -19
  387. data/spec/xhtml1-testcases/0120.sparql +0 -5
  388. data/spec/xhtml1-testcases/0120.xhtml +0 -17
  389. data/spec/xhtml1-testcases/0121.sparql +0 -4
  390. data/spec/xhtml1-testcases/0121.xhtml +0 -24
  391. data/spec/xhtml1-testcases/0122.sparql +0 -4
  392. data/spec/xhtml1-testcases/0122.xhtml +0 -16
  393. data/spec/xhtml1-testcases/0123.sparql +0 -5
  394. data/spec/xhtml1-testcases/0123.xhtml +0 -18
  395. data/spec/xhtml1-testcases/0124.sparql +0 -6
  396. data/spec/xhtml1-testcases/0124.xhtml +0 -14
  397. data/spec/xhtml1-testcases/0125.sparql +0 -5
  398. data/spec/xhtml1-testcases/0125.xhtml +0 -16
  399. data/spec/xhtml1-testcases/0126.sparql +0 -5
  400. data/spec/xhtml1-testcases/0126.xhtml +0 -15
  401. data/spec/xhtml1-testcases/1001.nt +0 -6
  402. data/spec/xhtml1-testcases/1001.sparql +0 -8
  403. data/spec/xhtml1-testcases/1001.xhtml +0 -20
  404. data/spec/xhtml1-testcases/9998.xhtml +0 -8
  405. data/spec/xhtml1-testcases/9999.xhtml +0 -8
  406. data/spec/xhtml1-testcases/rdfa-xhtml1-test-manifest.rdf +0 -1303
@@ -0,0 +1,2 @@
1
+ <$TCPATH/0054.xhtml> <http://purl.org/dc/elements/1.1/creator> "Fabien Gandon" .
2
+ <$TCPATH/0054.xhtml> <http://purl.org/dc/elements/1.1/publisher> "Fabien Gandon" .
@@ -0,0 +1,2 @@
1
+ <$TCPATH/0055.xhtml> <http://purl.org/dc/elements/1.1/creator> <http://www-sop.inria.fr/acacia/fabien/> .
2
+ <$TCPATH/0055.xhtml> <http://purl.org/dc/elements/1.1/publisher> <http://www-sop.inria.fr/acacia/fabien/> .
@@ -0,0 +1,6 @@
1
+ <$TCPATH/0059.xhtml> <http://purl.org/dc/elements/1.1/creator> <http://www.example.org/#manu> .
2
+ <$TCPATH/0059.xhtml> <http://purl.org/dc/elements/1.1/publisher> <http://www.example.org/#manu> .
3
+ <$TCPATH/0059.xhtml> <http://purl.org/dc/elements/1.1/creator> <http://www.example.org/#fabien> .
4
+ <$TCPATH/0059.xhtml> <http://purl.org/dc/elements/1.1/publisher> <http://www.example.org/#fabien> .
5
+ <http://www.example.org/#manu> <http://xmlns.com/foaf/0.1/name> "Manu Sporny" .
6
+ <http://www.example.org/#fabien> <http://xmlns.com/foaf/0.1/name> "Fabien Gandon" .
@@ -0,0 +1 @@
1
+ <$TCPATH/0061.xhtml> <http://www.w3.org/1999/xhtml/vocab#next> <$TCPATH/0062.xhtml> .
@@ -0,0 +1 @@
1
+ <$TCPATH/0063.xhtml> <http://www.w3.org/1999/xhtml/vocab#prev> <$TCPATH/0062.xhtml> .
@@ -0,0 +1 @@
1
+ <$TCPATH/0063.xhtml> <http://www.w3.org/1999/xhtml/vocab#next> <$TCPATH/0064.xhtml> .
@@ -0,0 +1 @@
1
+ <$TCPATH/0066.xhtml> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Document> .
@@ -0,0 +1 @@
1
+ <$TCPATH/0067.xhtml> <http://xmlns.com/foaf/0.1/topic> "Test 0067" .
@@ -0,0 +1 @@
1
+ <$TCPATH/0067.xhtml> <http://purl.org/dc/elements/1.1/title> "Test 0067" .
@@ -0,0 +1 @@
1
+ <$TCPATH/0069.xhtml> <http://www.w3.org/1999/xhtml/vocab#next> <$TCPATH/0070.xhtml> .
@@ -0,0 +1 @@
1
+ <$TCPATH/0070.xhtml> <http://www.w3.org/1999/xhtml/vocab#prev> <$TCPATH/0069.xhtml> .
@@ -0,0 +1 @@
1
+ <$TCPATH/0071.xhtml> <http://creativecommons.org/ns#license> <http://creativecommons.org/licenses/by-nd/3.0/> .
@@ -0,0 +1,23 @@
1
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#alternate> <http://example.org/alternate> .
2
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#appendix> <http://example.org/appendix> .
3
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#bookmark> <http://example.org/bookmark> .
4
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#cite> <http://example.org/cite> .
5
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#chapter> <http://example.org/chapter> .
6
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#contents> <http://example.org/contents> .
7
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#copyright> <http://example.org/copyright> .
8
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#glossary> <http://example.org/glossary> .
9
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#help> <http://example.org/help> .
10
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#icon> <http://example.org/icon> .
11
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#index> <http://example.org/index> .
12
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#meta> <http://example.org/meta> .
13
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#next> <http://example.org/next> .
14
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#p3pv1> <http://example.org/p3pv1> .
15
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#prev> <http://example.org/prev> .
16
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#role> <http://example.org/role> .
17
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#section> <http://example.org/section> .
18
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#subsection> <http://example.org/subsection> .
19
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#start> <http://example.org/start> .
20
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#license> <http://example.org/license> .
21
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#up> <http://example.org/up> .
22
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#last> <http://example.org/last> .
23
+ <$TCPATH/0076.xhtml> <http://www.w3.org/1999/xhtml/vocab#stylesheet> <http://example.org/stylesheet> .
@@ -0,0 +1,23 @@
1
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#alternate> <http://example.org/alternate> .
2
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#appendix> <http://example.org/appendix> .
3
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#bookmark> <http://example.org/bookmark> .
4
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#cite> <http://example.org/cite> .
5
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#chapter> <http://example.org/chapter> .
6
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#contents> <http://example.org/contents> .
7
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#copyright> <http://example.org/copyright> .
8
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#glossary> <http://example.org/glossary> .
9
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#help> <http://example.org/help> .
10
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#icon> <http://example.org/icon> .
11
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#index> <http://example.org/index> .
12
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#meta> <http://example.org/meta> .
13
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#next> <http://example.org/next> .
14
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#p3pv1> <http://example.org/p3pv1> .
15
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#prev> <http://example.org/prev> .
16
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#role> <http://example.org/role> .
17
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#section> <http://example.org/section> .
18
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#subsection> <http://example.org/subsection> .
19
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#start> <http://example.org/start> .
20
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#license> <http://example.org/license> .
21
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#up> <http://example.org/up> .
22
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#last> <http://example.org/last> .
23
+ <$TCPATH/0077.xhtml> <http://www.w3.org/1999/xhtml/vocab#stylesheet> <http://example.org/stylesheet> .
@@ -0,0 +1,23 @@
1
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#alternate> <http://example.org/alternate> .
2
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#appendix> <http://example.org/appendix> .
3
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#bookmark> <http://example.org/bookmark> .
4
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#cite> <http://example.org/cite> .
5
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#chapter> <http://example.org/chapter> .
6
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#contents> <http://example.org/contents> .
7
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#copyright> <http://example.org/copyright> .
8
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#glossary> <http://example.org/glossary> .
9
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#help> <http://example.org/help> .
10
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#icon> <http://example.org/icon> .
11
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#index> <http://example.org/index> .
12
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#meta> <http://example.org/meta> .
13
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#next> <http://example.org/next> .
14
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#p3pv1> <http://example.org/p3pv1> .
15
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#prev> <http://example.org/prev> .
16
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#role> <http://example.org/role> .
17
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#section> <http://example.org/section> .
18
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#subsection> <http://example.org/subsection> .
19
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#start> <http://example.org/start> .
20
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#license> <http://example.org/license> .
21
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#up> <http://example.org/up> .
22
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#last> <http://example.org/last> .
23
+ <$TCPATH/0087.xhtml> <http://www.w3.org/1999/xhtml/vocab#stylesheet> <http://example.org/stylesheet> .
@@ -0,0 +1,3 @@
1
+ <$TCPATH/0092.xhtml> <http://purl.org/dc/elements/1.1/creator> "Albert Einstein" .
2
+ # One of the allowed results
3
+ <$TCPATH/0092.xhtml> <http://purl.org/dc/elements/1.1/title> "E = mc<sup xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">2</sup>: The Most Urgent Problem of Our Time"^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> .
@@ -0,0 +1,2 @@
1
+ <$TCPATH/0093.xhtml> <http://purl.org/dc/elements/1.1/creator> "Albert Einstein" .
2
+ <$TCPATH/0093.xhtml> <http://purl.org/dc/elements/1.1/title> "E = mc2: The Most Urgent Problem of Our Time"^^<http://www.example.org/XMLLiteral> .
@@ -0,0 +1,3 @@
1
+ <$TCPATH/0094.xhtml> <http://purl.org/dc/elements/1.1/creator> "Albert Einstein" .
2
+ # One of the allowed results
3
+ <$TCPATH/0094.xhtml> <http://purl.org/dc/elements/1.1/title> "E = mc<sup xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:bla=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">2</sup>: The Most Urgent Problem of Our Time"^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> .
@@ -0,0 +1,3 @@
1
+ <$TCPATH/0104.xhtml#interfenestration> <http://www.example.org/size> _:a .
2
+ _:a <http://www.w3.org/1999/02/22-rdf-syntax-ns#value> "17" .
3
+ _:a <http://www.example.org/unit> "character" .
@@ -0,0 +1 @@
1
+ <$TCPATH/0105.xhtml> <http://purl.org/dc/elements/1.1/creator> _:a .
@@ -0,0 +1 @@
1
+ <$TCPATH/0106.xhtml> <http://purl.org/dc/elements/1.1/creator> _:a .
@@ -0,0 +1 @@
1
+ <$TCPATH/0109.xhtml> <http://purl.org/dc/elements/1.1/title> "Test 0109" .
@@ -0,0 +1 @@
1
+ <$TCPATH/0110.xhtml> <http://www.w3.org/1999/xhtml/vocab#next> _:a .
@@ -0,0 +1,2 @@
1
+ <$TCPATH/0111.xhtml> <http://www.w3.org/1999/xhtml/vocab#next> _:a .
2
+ _:a <http://www.w3.org/1999/xhtml/vocab#next> _:b .
@@ -0,0 +1,2 @@
1
+ <$TCPATH/0113.xhtml#a> <http://purl.org/dc/elements/1.1/title> "" .
2
+ <$TCPATH/0113.xhtml#b> <http://purl.org/dc/elements/1.1/title> "" .
@@ -0,0 +1,3 @@
1
+ <$TCPATH/0114.xhtml> <http://www.w3.org/1999/xhtml/vocab#up> <$TCPATH/rdfa-xhtml1-test-manifest.rdf> .
2
+ <$TCPATH/0114.xhtml> <http://www.w3.org/1999/xhtml/vocab#prev> <$TCPATH/0113.xhtml> .
3
+ <$TCPATH/0114.xhtml> <http://creativecommons.org/ns#attributionURL> <http://www.w3.org/> .
@@ -0,0 +1,4 @@
1
+ <$TCPATH/0115.xhtml> <http://www.example.com/entity> "<string>" .
2
+ <$TCPATH/0115.xhtml> <http://www.example.com/entity> "Ben & Co." .
3
+ <$TCPATH/0115.xhtml> <http://www.example.com/entity> "@" .
4
+ <$TCPATH/0115.xhtml> <http://www.example.com/entity> "@" .
@@ -0,0 +1,2 @@
1
+ # This is a negative test case, the following triple should not be generated.
2
+ #<$TCPATH/0116.xhtml> <http://www.w3.org/1999/xhtml/vocab#next> "invalid property" .
@@ -0,0 +1 @@
1
+ <$TCPATH/0118.xhtml> <http://purl.org/dc/elements/1.1/creator> "Ben" .
@@ -0,0 +1,6 @@
1
+ <$TCPATH/1001.xhtml#event1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/12/cal/icaltzd#Vevent> .
2
+ <$TCPATH/1001.xhtml#event1> <http://www.w3.org/2002/12/cal/icaltzd#summary> "Weekend off in Iona" .
3
+ <$TCPATH/1001.xhtml#event1> <http://www.w3.org/2002/12/cal/icaltzd#dtstart> "2006-10-21"^^<http://www.w3.org/2001/XMLSchema#date> .
4
+ <$TCPATH/1001.xhtml#event1> <http://www.w3.org/2002/12/cal/icaltzd#dtend> "2006-10-23"^^<http://www.w3.org/2001/XMLSchema#date> .
5
+ <$TCPATH/1001.xhtml#event1> <http://www.w3.org/2002/12/cal/icaltzd#url> <http://freetime.example.org/> .
6
+ <$TCPATH/1001.xhtml#event1> <http://www.w3.org/2002/12/cal/icaltzd#location> "Iona, UK" .
@@ -1,42 +1,44 @@
1
1
  require 'rdf/redland'
2
+ require 'matchers'
2
3
 
3
4
  module RdfaHelper
4
5
  # Class representing test cases in format http://www.w3.org/2006/03/test-description#
5
6
  class TestCase
6
- TEST_DIR = File.join(File.dirname(__FILE__), 'xhtml1-testcases')
7
+ include Matchers
8
+
9
+ TEST_DIR = File.join(File.dirname(__FILE__), 'rdfa-test-suite')
10
+ NT_DIR = File.join(File.dirname(__FILE__), 'rdfa-triples')
11
+ BASE_MANIFEST_URL = "http://rdfa.digitalbazaar.com/test-suite/"
12
+ BASE_TEST_CASE_URL = "#{BASE_MANIFEST_URL}test-cases/"
7
13
 
8
14
  attr_accessor :about
9
15
  attr_accessor :name
10
16
  attr_accessor :contributor
11
17
  attr_accessor :title
12
18
  attr_accessor :informationResourceInput
13
- attr_accessor :originalInformationResourceInput
14
19
  attr_accessor :informationResourceResults
15
- attr_accessor :originalInformationResourceResults
16
20
  attr_accessor :purpose
17
21
  attr_accessor :reviewStatus
22
+ attr_accessor :suite
18
23
  attr_accessor :specificationReference
19
24
  attr_accessor :expectedResults
25
+ attr_accessor :rdfa_parser
20
26
 
21
27
  @@test_cases = []
28
+ @@suite = ""
22
29
 
23
- def initialize(statements)
30
+ def initialize(statements, suite)
31
+ self.suite = suite
24
32
  self.expectedResults = true
25
33
  statements.each do |statement|
26
34
  next if statement.subject.is_a?(Redland::BNode)
27
- #next unless statement.subject.uri.short_name == "Test0122"
35
+ #next unless statement.subject.uri.to_s.match(/0001/)
28
36
  unless self.about
29
37
  self.about = URI.parse(statement.subject.uri.to_s)
30
38
  self.name = statement.subject.uri.short_name
31
39
  end
32
40
 
33
- if statement.predicate.uri.short_name == "informationResourceInput"
34
- self.informationResourceInput = statement.object.uri.to_s.sub!(/^.*xhtml1-testcases/, TEST_DIR)
35
- self.originalInformationResourceInput = statement.object.uri.to_s
36
- elsif statement.predicate.uri.short_name == "informationResourceResults"
37
- self.informationResourceResults = statement.object.uri.to_s.sub!(/^.*xhtml1-testcases/, TEST_DIR)
38
- self.originalInformationResourceResults = statement.object.uri.to_s
39
- elsif statement.predicate.uri.short_name == "expectedResults"
41
+ if statement.predicate.uri.short_name == "expectedResults"
40
42
  self.expectedResults = statement.object.literal.value == "true"
41
43
  #puts "expectedResults = #{statement.object.literal.value}"
42
44
  elsif self.respond_to?("#{statement.predicate.uri.short_name}=")
@@ -47,10 +49,27 @@ module RdfaHelper
47
49
  else false
48
50
  end
49
51
  self.send("#{statement.predicate.uri.short_name}=", s.to_s)
52
+ #puts "#{statement.predicate.uri.short_name} = #{s.to_s}"
50
53
  end
51
54
  end
52
55
  end
53
56
 
57
+ def inspect
58
+ "[Test Case " + %w(
59
+ about
60
+ name
61
+ contributor
62
+ title
63
+ informationResourceInput
64
+ informationResourceResults
65
+ purpose
66
+ reviewStatus
67
+ specificationReference
68
+ expectedResults
69
+ ).map {|a| v = self.send(a); "#{a}='#{v}'" if v}.compact.join(", ") +
70
+ "]"
71
+ end
72
+
54
73
  def status
55
74
  reviewStatus.to_s.split("#").last
56
75
  end
@@ -59,20 +78,113 @@ module RdfaHelper
59
78
  %w(purpose specificationReference).map {|a| v = self.send(a); "#{a}: #{v}" if v}.compact.join("\n")
60
79
  end
61
80
 
62
- def self.test_cases
81
+ def tcpath
82
+ BASE_TEST_CASE_URL + (suite == "xhtml" ? "xhtml1" : suite)
83
+ end
84
+
85
+ # Read in file, and apply modifications to create a properly formatted HTML
86
+ def input
87
+ f = self.name + ".txt"
88
+ found_head = false
89
+ namespaces = ""
90
+ body = File.readlines(File.join(TEST_DIR, "tests", f)).map do |line|
91
+ found_head ||= line.match(/<head/)
92
+ if found_head
93
+ line.chop
94
+ else
95
+ namespaces << line
96
+ nil
97
+ end
98
+ end.compact.join("\n")
99
+
100
+ namespaces.chop! # Remove trailing newline
101
+ htmlre = Regexp.new('([0-9]{4,4})\.xhtml')
102
+ tcpathre = Regexp.compile('\$TCPATH')
103
+
104
+ case suite
105
+ when "xhtml"
106
+ head = "" +
107
+ %(<?xml version="1.0" encoding="UTF-8"?>\n) +
108
+ %(<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">\n) +
109
+ %(<html xmlns="http://www.w3.org/1999/xhtml" version="XHTML+RDFa 1.0"\n)
110
+ head + "#{namespaces}>\n#{body.gsub(tcpathre, tcpath)}\n</html>"
111
+ when "html4"
112
+ head ="" +
113
+ %(<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\n) +
114
+ %(<html version="XHTML+RDFa 1.0"\n)
115
+ head + "#{namespaces}>\n#{body.gsub(tcpathre, tcpath).gsub(htmlre, '\1.html')}\n</html>"
116
+ when "html5"
117
+ head = "<!DOCTYPE html>\n"
118
+ head += namespaces.empty? ? %(<html version="HTML+RDFa 1.0">) : "<html\n#{namespaces}>"
119
+ head + "\n#{body.gsub(tcpathre, tcpath).gsub(htmlre, '\1.html')}\n</html>"
120
+ else
121
+ nil
122
+ end
123
+ end
124
+
125
+ # Read in file, and apply modifications reference either .html or .xhtml
126
+ def results
127
+ htmlre = Regexp.new('([0-9]{4,4})\.xhtml')
128
+ tcpathre = Regexp.compile('\$TCPATH')
129
+
130
+ f = self.name + ".sparql"
131
+ body = File.read(File.join(TEST_DIR, "tests", f)).gsub(tcpathre, tcpath)
132
+
133
+ suite == "xhtml" ? body : body.gsub(htmlre, '\1.html')
134
+ end
135
+
136
+ def triples
137
+ tcpathre = Regexp.compile('\$TCPATH')
138
+ f = self.name + ".nt"
139
+ File.read(File.join(NT_DIR, f)).gsub(tcpathre, tcpath)
140
+ end
141
+
142
+ # Run test case, yields input for parser to create triples
143
+ def run_test
144
+ rdfa_string = input
145
+
146
+ # Run
147
+ @rdfa_parser = RdfaParser::RdfaParser.new
148
+ yield(rdfa_string, rdfa_parser)
149
+
150
+ query_string = results
151
+
152
+ triples = self.triples rescue nil
153
+
154
+ if (query_string.match(/UNION|OPTIONAL/) || title.match(/XML/)) && triples
155
+ # Check triples, as Rasql doesn't implement UNION
156
+ parser = NTriplesParser.new(triples, tcpath)
157
+ @rdfa_parser.graph.should be_equivalent_graph(parser.graph, self)
158
+ else
159
+ # Run SPARQL query
160
+ @rdfa_parser.graph.should pass_query(query_string, self)
161
+ end
162
+
163
+ @rdfa_parser.graph.to_rdfxml.should be_valid_xml
164
+ end
165
+
166
+ def trace
167
+ rdfa_parser.debug.join("\n")
168
+ end
169
+
170
+ def self.test_cases(suite)
171
+ @@test_cases = [] unless @@suite == suite
63
172
  return @@test_cases unless @@test_cases.empty?
64
173
 
65
- manifest = File.read(File.join(TEST_DIR, "rdfa-xhtml1-test-manifest.rdf"))
174
+ @@suite = suite # Process the given test suite
175
+ @@manifest_url = "#{BASE_MANIFEST_URL}#{suite}-manifest.rdf"
176
+
177
+ manifest_str = File.read(File.join(TEST_DIR, "#{suite}-manifest.rdf"))
66
178
  rdfxml_parser = Redland::Parser.new
67
179
  test_hash = {}
68
- rdfxml_parser.parse_string_as_stream(manifest, "http://www.w3.org/2006/07/SWD/RDFa/testsuite/xhtml1-testcases/rdfa-xhtml1-test-manifest.rdf") do |st|
180
+ # Replace with different logic for URI
181
+ rdfxml_parser.parse_string_as_stream(manifest_str, @@manifest_url) do |st|
69
182
  a = test_hash[st.subject.uri.to_s] ||= []
70
183
  a << st
71
184
  end
72
185
 
73
- @@test_cases = test_hash.values.map {|statements| TestCase.new(statements)}.
186
+ @@test_cases = test_hash.values.map {|statements| TestCase.new(statements, suite)}.
74
187
  compact.
75
- select{|t| t.status != "rejected"}.
76
188
  sort_by{|t| t.about.is_a?(URI) ? t.about.to_s : "zzz"}
77
189
  end
78
190
  end
@@ -96,12 +208,12 @@ end
96
208
  class NTriplesParser
97
209
  attr_reader :graph
98
210
 
99
- def initialize(string)
211
+ def initialize(string, uri)
100
212
  @graph = RdfaParser::Graph.new
101
213
  RdfaParser::BNode.reset
102
214
 
103
215
  ntriples_parser = Redland::Parser.ntriples
104
- ntriples_parser.parse_string_as_stream(string, "http://www.w3.org/2006/07/SWD/RDFa/testsuite/xhtml1-testcases/") do |st|
216
+ ntriples_parser.parse_string_as_stream(string, uri) do |st|
105
217
  s = redland_to_native(st.subject)
106
218
  p = redland_to_native(st.predicate)
107
219
  o = redland_to_native(st.object)