kibi-swipl-linux-x64-gnu 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (550) hide show
  1. package/README.md +29 -0
  2. package/bin/swipl +0 -0
  3. package/bin/swipl-win +0 -0
  4. package/build-manifest.json +70 -0
  5. package/lib/cmake/swipl/SWIPLConfig.cmake +21 -0
  6. package/lib/cmake/swipl/SWIPLConfigVersion.cmake +65 -0
  7. package/lib/cmake/swipl/SWIPLTargets-release.cmake +28 -0
  8. package/lib/cmake/swipl/SWIPLTargets.cmake +109 -0
  9. package/lib/swipl/ABI +1 -0
  10. package/lib/swipl/LICENSE +41 -0
  11. package/lib/swipl/README.md +116 -0
  12. package/lib/swipl/app/README.md +25 -0
  13. package/lib/swipl/app/app.pl +87 -0
  14. package/lib/swipl/app/pack.pl +350 -0
  15. package/lib/swipl/app/qlf.pl +521 -0
  16. package/lib/swipl/app/splfr.pl +177 -0
  17. package/lib/swipl/app/sys.pl +310 -0
  18. package/lib/swipl/bin/swipl.home +1 -0
  19. package/lib/swipl/boot/apply.pl +73 -0
  20. package/lib/swipl/boot/attvar.pl +344 -0
  21. package/lib/swipl/boot/autoload.pl +1226 -0
  22. package/lib/swipl/boot/bags.pl +283 -0
  23. package/lib/swipl/boot/dcg.pl +388 -0
  24. package/lib/swipl/boot/dicts.pl +193 -0
  25. package/lib/swipl/boot/dwim.pl +485 -0
  26. package/lib/swipl/boot/engines.pl +152 -0
  27. package/lib/swipl/boot/expand.pl +1628 -0
  28. package/lib/swipl/boot/gc.pl +65 -0
  29. package/lib/swipl/boot/history.pl +304 -0
  30. package/lib/swipl/boot/init.pl +4682 -0
  31. package/lib/swipl/boot/iri.pl +64 -0
  32. package/lib/swipl/boot/license.pl +390 -0
  33. package/lib/swipl/boot/load.pl +81 -0
  34. package/lib/swipl/boot/messages.pl +2521 -0
  35. package/lib/swipl/boot/packs.pl +306 -0
  36. package/lib/swipl/boot/predopts.pl +154 -0
  37. package/lib/swipl/boot/qlf.pl +141 -0
  38. package/lib/swipl/boot/rc.pl +263 -0
  39. package/lib/swipl/boot/syspred.pl +1634 -0
  40. package/lib/swipl/boot/tabling.pl +2321 -0
  41. package/lib/swipl/boot/threads.pl +42 -0
  42. package/lib/swipl/boot/toplevel.pl +2248 -0
  43. package/lib/swipl/boot/topvars.pl +261 -0
  44. package/lib/swipl/boot.prc +0 -0
  45. package/lib/swipl/cmake/swipl.cmake +131 -0
  46. package/lib/swipl/customize/README.md +23 -0
  47. package/lib/swipl/customize/edit +101 -0
  48. package/lib/swipl/customize/init.pl +164 -0
  49. package/lib/swipl/demo/README.md +33 -0
  50. package/lib/swipl/demo/likes.pl +44 -0
  51. package/lib/swipl/doc/packages/examples/chr/bool.chr +281 -0
  52. package/lib/swipl/doc/packages/examples/chr/chrdif.chr +87 -0
  53. package/lib/swipl/doc/packages/examples/chr/chrfreeze.chr +6 -0
  54. package/lib/swipl/doc/packages/examples/chr/family.chr +116 -0
  55. package/lib/swipl/doc/packages/examples/chr/fib.chr +24 -0
  56. package/lib/swipl/doc/packages/examples/chr/fibonacci.chr +31 -0
  57. package/lib/swipl/doc/packages/examples/chr/gcd.chr +28 -0
  58. package/lib/swipl/doc/packages/examples/chr/leq.chr +34 -0
  59. package/lib/swipl/doc/packages/examples/chr/listdom.chr +138 -0
  60. package/lib/swipl/doc/packages/examples/chr/primes.chr +29 -0
  61. package/lib/swipl/doc/packages/examples/http/README.md +98 -0
  62. package/lib/swipl/doc/packages/examples/http/calc.pl +92 -0
  63. package/lib/swipl/doc/packages/examples/http/demo_body.pl +232 -0
  64. package/lib/swipl/doc/packages/examples/http/demo_client.pl +165 -0
  65. package/lib/swipl/doc/packages/examples/http/demo_daemon.pl +38 -0
  66. package/lib/swipl/doc/packages/examples/http/demo_files.pl +50 -0
  67. package/lib/swipl/doc/packages/examples/http/demo_hello.pl +15 -0
  68. package/lib/swipl/doc/packages/examples/http/demo_login.pl +280 -0
  69. package/lib/swipl/doc/packages/examples/http/demo_openid.pl +177 -0
  70. package/lib/swipl/doc/packages/examples/http/demo_pwp.pl +20 -0
  71. package/lib/swipl/doc/packages/examples/http/demo_rest.pl +56 -0
  72. package/lib/swipl/doc/packages/examples/http/demo_threads.pl +52 -0
  73. package/lib/swipl/doc/packages/examples/http/linux-init-script +126 -0
  74. package/lib/swipl/doc/packages/examples/http/pwp/context.pwp +23 -0
  75. package/lib/swipl/doc/packages/examples/http/pwp/index.pwp +25 -0
  76. package/lib/swipl/doc/packages/examples/http/pwp/pwp1.pwp +12 -0
  77. package/lib/swipl/doc/packages/examples/http/pwp/pwp2.pwp +10 -0
  78. package/lib/swipl/doc/packages/examples/http/pwp/pwp3.pwp +25 -0
  79. package/lib/swipl/doc/packages/examples/http/pwp/pwp4.pwp +23 -0
  80. package/lib/swipl/doc/packages/examples/http/pwp/pwp5.pwp +11 -0
  81. package/lib/swipl/doc/packages/examples/http/pwp/pwp6.pwp +3 -0
  82. package/lib/swipl/doc/packages/examples/http/pwp/pwp7.pwp +3 -0
  83. package/lib/swipl/doc/packages/examples/http/pwp/pwp8.pwp +3 -0
  84. package/lib/swipl/doc/packages/examples/http/pwp/pwpdb.pl +12 -0
  85. package/lib/swipl/doc/packages/examples/http/systemd-script.service +18 -0
  86. package/lib/swipl/doc/packages/examples/http/upstart-script.conf +20 -0
  87. package/lib/swipl/doc/packages/examples/plunit/read.pl +17 -0
  88. package/lib/swipl/doc/packages/examples/plunit/simple.pl +33 -0
  89. package/lib/swipl/doc/packages/examples/ssl/client.pl +83 -0
  90. package/lib/swipl/doc/packages/examples/ssl/etc/README +52 -0
  91. package/lib/swipl/doc/packages/examples/ssl/etc/client/client-cert.p12 +0 -0
  92. package/lib/swipl/doc/packages/examples/ssl/etc/client/client-cert.pem +85 -0
  93. package/lib/swipl/doc/packages/examples/ssl/etc/client/client-key.pem +30 -0
  94. package/lib/swipl/doc/packages/examples/ssl/etc/demoCA/cacert.pem +82 -0
  95. package/lib/swipl/doc/packages/examples/ssl/etc/demoCA/careq.pem +18 -0
  96. package/lib/swipl/doc/packages/examples/ssl/etc/demoCA/crlnumber +1 -0
  97. package/lib/swipl/doc/packages/examples/ssl/etc/demoCA/index.txt +3 -0
  98. package/lib/swipl/doc/packages/examples/ssl/etc/demoCA/index.txt.attr +1 -0
  99. package/lib/swipl/doc/packages/examples/ssl/etc/demoCA/newcerts/9DC08797A0F63F7C.pem +85 -0
  100. package/lib/swipl/doc/packages/examples/ssl/etc/demoCA/newcerts/9DC08797A0F63F7D.pem +85 -0
  101. package/lib/swipl/doc/packages/examples/ssl/etc/demoCA/private/cakey.pem +30 -0
  102. package/lib/swipl/doc/packages/examples/ssl/etc/demoCA/serial +1 -0
  103. package/lib/swipl/doc/packages/examples/ssl/etc/server/server-cert.pem +85 -0
  104. package/lib/swipl/doc/packages/examples/ssl/etc/server/server-key.pem +30 -0
  105. package/lib/swipl/doc/packages/examples/ssl/https.pl +267 -0
  106. package/lib/swipl/doc/packages/examples/ssl/server.pl +106 -0
  107. package/lib/swipl/include/SWI-Prolog.h +1544 -0
  108. package/lib/swipl/include/SWI-Stream.h +537 -0
  109. package/lib/swipl/include/Yap/YapInterface.h +283 -0
  110. package/lib/swipl/include/sicstus/sicstus.h +452 -0
  111. package/lib/swipl/lib/x86_64-linux/cgi.so +0 -0
  112. package/lib/swipl/lib/x86_64-linux/crypt.so +0 -0
  113. package/lib/swipl/lib/x86_64-linux/crypto4pl.so +0 -0
  114. package/lib/swipl/lib/x86_64-linux/double_metaphone.so +0 -0
  115. package/lib/swipl/lib/x86_64-linux/files.so +0 -0
  116. package/lib/swipl/lib/x86_64-linux/hashstream.so +0 -0
  117. package/lib/swipl/lib/x86_64-linux/http_stream.so +0 -0
  118. package/lib/swipl/lib/x86_64-linux/isub.so +0 -0
  119. package/lib/swipl/lib/x86_64-linux/json.so +0 -0
  120. package/lib/swipl/lib/x86_64-linux/libswipl.so.10 +0 -0
  121. package/lib/swipl/lib/x86_64-linux/mallocinfo.so +0 -0
  122. package/lib/swipl/lib/x86_64-linux/md54pl.so +0 -0
  123. package/lib/swipl/lib/x86_64-linux/memfile.so +0 -0
  124. package/lib/swipl/lib/x86_64-linux/ntriples.so +0 -0
  125. package/lib/swipl/lib/x86_64-linux/pcre4pl.so +0 -0
  126. package/lib/swipl/lib/x86_64-linux/porter_stem.so +0 -0
  127. package/lib/swipl/lib/x86_64-linux/process.so +0 -0
  128. package/lib/swipl/lib/x86_64-linux/prolog_stream.so +0 -0
  129. package/lib/swipl/lib/x86_64-linux/rdf_db.so +0 -0
  130. package/lib/swipl/lib/x86_64-linux/readutil.so +0 -0
  131. package/lib/swipl/lib/x86_64-linux/rlimit.so +0 -0
  132. package/lib/swipl/lib/x86_64-linux/sched.so +0 -0
  133. package/lib/swipl/lib/x86_64-linux/sgml2pl.so +0 -0
  134. package/lib/swipl/lib/x86_64-linux/sha4pl.so +0 -0
  135. package/lib/swipl/lib/x86_64-linux/snowball.so +0 -0
  136. package/lib/swipl/lib/x86_64-linux/socket.so +0 -0
  137. package/lib/swipl/lib/x86_64-linux/ssl4pl.so +0 -0
  138. package/lib/swipl/lib/x86_64-linux/streaminfo.so +0 -0
  139. package/lib/swipl/lib/x86_64-linux/syslog.so +0 -0
  140. package/lib/swipl/lib/x86_64-linux/time.so +0 -0
  141. package/lib/swipl/lib/x86_64-linux/turtle.so +0 -0
  142. package/lib/swipl/lib/x86_64-linux/uid.so +0 -0
  143. package/lib/swipl/lib/x86_64-linux/unix.so +0 -0
  144. package/lib/swipl/lib/x86_64-linux/uri.so +0 -0
  145. package/lib/swipl/lib/x86_64-linux/websocket.so +0 -0
  146. package/lib/swipl/lib/x86_64-linux/zlib4pl.so +0 -0
  147. package/lib/swipl/library/INDEX.pl +1020 -0
  148. package/lib/swipl/library/aggregate.pl +755 -0
  149. package/lib/swipl/library/ansi_term.pl +653 -0
  150. package/lib/swipl/library/apply.pl +426 -0
  151. package/lib/swipl/library/apply_macros.pl +497 -0
  152. package/lib/swipl/library/arithmetic.pl +320 -0
  153. package/lib/swipl/library/assoc.pl +522 -0
  154. package/lib/swipl/library/atom.pl +169 -0
  155. package/lib/swipl/library/backcomp.pl +688 -0
  156. package/lib/swipl/library/base32.pl +291 -0
  157. package/lib/swipl/library/base64.pl +441 -0
  158. package/lib/swipl/library/broadcast.pl +161 -0
  159. package/lib/swipl/library/build/cmake.pl +137 -0
  160. package/lib/swipl/library/build/conan.pl +232 -0
  161. package/lib/swipl/library/build/make.pl +168 -0
  162. package/lib/swipl/library/build/tools.pl +825 -0
  163. package/lib/swipl/library/charsio.pl +195 -0
  164. package/lib/swipl/library/check.pl +1097 -0
  165. package/lib/swipl/library/check_installation.pl +912 -0
  166. package/lib/swipl/library/clp/INDEX.pl +157 -0
  167. package/lib/swipl/library/clp/bounds.pl +2036 -0
  168. package/lib/swipl/library/clp/clp_distinct.pl +263 -0
  169. package/lib/swipl/library/clp/clp_events.pl +92 -0
  170. package/lib/swipl/library/clp/clpb.pl +1896 -0
  171. package/lib/swipl/library/clp/clpfd.pl +7906 -0
  172. package/lib/swipl/library/clp/simplex.pl +1580 -0
  173. package/lib/swipl/library/codesio.pl +182 -0
  174. package/lib/swipl/library/coinduction.pl +183 -0
  175. package/lib/swipl/library/console_input.pl +289 -0
  176. package/lib/swipl/library/csv.pl +611 -0
  177. package/lib/swipl/library/ctypes.pl +161 -0
  178. package/lib/swipl/library/date.pl +370 -0
  179. package/lib/swipl/library/dcg/INDEX.pl +35 -0
  180. package/lib/swipl/library/dcg/basics.pl +514 -0
  181. package/lib/swipl/library/dcg/high_order.pl +227 -0
  182. package/lib/swipl/library/debug.pl +499 -0
  183. package/lib/swipl/library/dialect/bim.pl +186 -0
  184. package/lib/swipl/library/dialect/commons.pl +77 -0
  185. package/lib/swipl/library/dialect/eclipse/test_util_iso.pl +355 -0
  186. package/lib/swipl/library/dialect/hprolog/format.pl +44 -0
  187. package/lib/swipl/library/dialect/hprolog.pl +314 -0
  188. package/lib/swipl/library/dialect/ifprolog.pl +1317 -0
  189. package/lib/swipl/library/dialect/iso/iso_predicates.pl +277 -0
  190. package/lib/swipl/library/dialect/sicstus/README.TXT +1 -0
  191. package/lib/swipl/library/dialect/sicstus/arrays.pl +121 -0
  192. package/lib/swipl/library/dialect/sicstus/block.pl +278 -0
  193. package/lib/swipl/library/dialect/sicstus/lists.pl +167 -0
  194. package/lib/swipl/library/dialect/sicstus/ordsets.pl +52 -0
  195. package/lib/swipl/library/dialect/sicstus/sockets.pl +174 -0
  196. package/lib/swipl/library/dialect/sicstus/system.pl +262 -0
  197. package/lib/swipl/library/dialect/sicstus/terms.pl +57 -0
  198. package/lib/swipl/library/dialect/sicstus/timeout.pl +92 -0
  199. package/lib/swipl/library/dialect/sicstus.pl +582 -0
  200. package/lib/swipl/library/dialect/sicstus4/aggregate.pl +60 -0
  201. package/lib/swipl/library/dialect/sicstus4/between.pl +62 -0
  202. package/lib/swipl/library/dialect/sicstus4/clpfd.pl +75 -0
  203. package/lib/swipl/library/dialect/sicstus4/file_systems.pl +413 -0
  204. package/lib/swipl/library/dialect/sicstus4/lists.pl +274 -0
  205. package/lib/swipl/library/dialect/sicstus4/ordsets.pl +54 -0
  206. package/lib/swipl/library/dialect/sicstus4/samsort.pl +86 -0
  207. package/lib/swipl/library/dialect/sicstus4/sets.pl +124 -0
  208. package/lib/swipl/library/dialect/sicstus4/sockets.pl +164 -0
  209. package/lib/swipl/library/dialect/sicstus4/system.pl +80 -0
  210. package/lib/swipl/library/dialect/sicstus4/terms.pl +89 -0
  211. package/lib/swipl/library/dialect/sicstus4/timeout.pl +43 -0
  212. package/lib/swipl/library/dialect/sicstus4/types.pl +103 -0
  213. package/lib/swipl/library/dialect/sicstus4.pl +200 -0
  214. package/lib/swipl/library/dialect/swi/syspred_options.pl +250 -0
  215. package/lib/swipl/library/dialect/xsb/README.md +20 -0
  216. package/lib/swipl/library/dialect/xsb/basics.pl +318 -0
  217. package/lib/swipl/library/dialect/xsb/consult.pl +87 -0
  218. package/lib/swipl/library/dialect/xsb/curr_sym.pl +57 -0
  219. package/lib/swipl/library/dialect/xsb/error_handler.pl +111 -0
  220. package/lib/swipl/library/dialect/xsb/gensym.pl +53 -0
  221. package/lib/swipl/library/dialect/xsb/gpp.pl +138 -0
  222. package/lib/swipl/library/dialect/xsb/intern.pl +48 -0
  223. package/lib/swipl/library/dialect/xsb/lists.pl +47 -0
  224. package/lib/swipl/library/dialect/xsb/machine.pl +295 -0
  225. package/lib/swipl/library/dialect/xsb/ordsets.pl +53 -0
  226. package/lib/swipl/library/dialect/xsb/setof.pl +54 -0
  227. package/lib/swipl/library/dialect/xsb/source.pl +308 -0
  228. package/lib/swipl/library/dialect/xsb/standard.pl +169 -0
  229. package/lib/swipl/library/dialect/xsb/storage.pl +70 -0
  230. package/lib/swipl/library/dialect/xsb/string.pl +76 -0
  231. package/lib/swipl/library/dialect/xsb/thread.pl +62 -0
  232. package/lib/swipl/library/dialect/xsb/timed_call.pl +158 -0
  233. package/lib/swipl/library/dialect/xsb.pl +688 -0
  234. package/lib/swipl/library/dialect/yap/README.TXT +8 -0
  235. package/lib/swipl/library/dialect/yap.pl +283 -0
  236. package/lib/swipl/library/dialect.pl +123 -0
  237. package/lib/swipl/library/dicts.pl +399 -0
  238. package/lib/swipl/library/dif.pl +426 -0
  239. package/lib/swipl/library/edinburgh.pl +138 -0
  240. package/lib/swipl/library/edit.pl +783 -0
  241. package/lib/swipl/library/error.pl +495 -0
  242. package/lib/swipl/library/exceptions.pl +231 -0
  243. package/lib/swipl/library/explain.pl +543 -0
  244. package/lib/swipl/library/ext/RDF/INDEX.pl +25 -0
  245. package/lib/swipl/library/ext/RDF/rdf.pl +450 -0
  246. package/lib/swipl/library/ext/RDF/rdf_parser.pl +649 -0
  247. package/lib/swipl/library/ext/RDF/rdf_triple.pl +448 -0
  248. package/lib/swipl/library/ext/RDF/rdf_write.pl +701 -0
  249. package/lib/swipl/library/ext/RDF/rewrite_term.pl +177 -0
  250. package/lib/swipl/library/ext/chr/chr/a_star.pl +80 -0
  251. package/lib/swipl/library/ext/chr/chr/binomialheap.pl +142 -0
  252. package/lib/swipl/library/ext/chr/chr/builtins.pl +629 -0
  253. package/lib/swipl/library/ext/chr/chr/chr_compiler_errors.pl +179 -0
  254. package/lib/swipl/library/ext/chr/chr/chr_compiler_options.pl +382 -0
  255. package/lib/swipl/library/ext/chr/chr/chr_compiler_utility.pl +338 -0
  256. package/lib/swipl/library/ext/chr/chr/chr_debug.pl +59 -0
  257. package/lib/swipl/library/ext/chr/chr/chr_hashtable_store.pl +425 -0
  258. package/lib/swipl/library/ext/chr/chr/chr_integertable_store.pl +139 -0
  259. package/lib/swipl/library/ext/chr/chr/chr_messages.pl +176 -0
  260. package/lib/swipl/library/ext/chr/chr/chr_op.pl +53 -0
  261. package/lib/swipl/library/ext/chr/chr/chr_runtime.pl +1016 -0
  262. package/lib/swipl/library/ext/chr/chr/chr_translate.pl +25424 -0
  263. package/lib/swipl/library/ext/chr/chr/clean_code.pl +252 -0
  264. package/lib/swipl/library/ext/chr/chr/find.pl +78 -0
  265. package/lib/swipl/library/ext/chr/chr/guard_entailment.pl +19432 -0
  266. package/lib/swipl/library/ext/chr/chr/listmap.pl +108 -0
  267. package/lib/swipl/library/ext/chr/chr/pairlist.pl +78 -0
  268. package/lib/swipl/library/ext/chr/chr.pl +686 -0
  269. package/lib/swipl/library/ext/clib/INDEX.pl +158 -0
  270. package/lib/swipl/library/ext/clib/cgi.pl +86 -0
  271. package/lib/swipl/library/ext/clib/crypt.pl +44 -0
  272. package/lib/swipl/library/ext/clib/filesex.pl +644 -0
  273. package/lib/swipl/library/ext/clib/hash_stream.pl +119 -0
  274. package/lib/swipl/library/ext/clib/mallocinfo.pl +138 -0
  275. package/lib/swipl/library/ext/clib/md5.pl +68 -0
  276. package/lib/swipl/library/ext/clib/memfile.pl +61 -0
  277. package/lib/swipl/library/ext/clib/process.pl +573 -0
  278. package/lib/swipl/library/ext/clib/prolog_server.pl +157 -0
  279. package/lib/swipl/library/ext/clib/prolog_stream.pl +80 -0
  280. package/lib/swipl/library/ext/clib/rlimit.pl +54 -0
  281. package/lib/swipl/library/ext/clib/sched.pl +85 -0
  282. package/lib/swipl/library/ext/clib/sha.pl +162 -0
  283. package/lib/swipl/library/ext/clib/socket.pl +1102 -0
  284. package/lib/swipl/library/ext/clib/streaminfo.pl +103 -0
  285. package/lib/swipl/library/ext/clib/streampool.pl +136 -0
  286. package/lib/swipl/library/ext/clib/syslog.pl +180 -0
  287. package/lib/swipl/library/ext/clib/time.pl +194 -0
  288. package/lib/swipl/library/ext/clib/udp_broadcast.pl +975 -0
  289. package/lib/swipl/library/ext/clib/uid.pl +220 -0
  290. package/lib/swipl/library/ext/clib/unix.pl +317 -0
  291. package/lib/swipl/library/ext/clib/uri.pl +530 -0
  292. package/lib/swipl/library/ext/clib/uuid.pl +207 -0
  293. package/lib/swipl/library/ext/http/http/INDEX.pl +266 -0
  294. package/lib/swipl/library/ext/http/http/README.md +34 -0
  295. package/lib/swipl/library/ext/http/http/ax.pl +189 -0
  296. package/lib/swipl/library/ext/http/http/dcg_basics.pl +49 -0
  297. package/lib/swipl/library/ext/http/http/graphql.pl +1367 -0
  298. package/lib/swipl/library/ext/http/http/html_decl.pl +416 -0
  299. package/lib/swipl/library/ext/http/http/html_head.pl +654 -0
  300. package/lib/swipl/library/ext/http/http/html_quasiquotations.pl +120 -0
  301. package/lib/swipl/library/ext/http/http/html_write.pl +1425 -0
  302. package/lib/swipl/library/ext/http/http/htmx.pl +139 -0
  303. package/lib/swipl/library/ext/http/http/http_authenticate.pl +364 -0
  304. package/lib/swipl/library/ext/http/http/http_client.pl +412 -0
  305. package/lib/swipl/library/ext/http/http/http_cookie.pl +245 -0
  306. package/lib/swipl/library/ext/http/http/http_cors.pl +176 -0
  307. package/lib/swipl/library/ext/http/http/http_digest.pl +820 -0
  308. package/lib/swipl/library/ext/http/http/http_dirindex.pl +296 -0
  309. package/lib/swipl/library/ext/http/http/http_dispatch.pl +1552 -0
  310. package/lib/swipl/library/ext/http/http/http_dyn_workers.pl +214 -0
  311. package/lib/swipl/library/ext/http/http/http_error.pl +126 -0
  312. package/lib/swipl/library/ext/http/http/http_exception.pl +225 -0
  313. package/lib/swipl/library/ext/http/http/http_files.pl +163 -0
  314. package/lib/swipl/library/ext/http/http/http_header.pl +2820 -0
  315. package/lib/swipl/library/ext/http/http/http_hook.pl +106 -0
  316. package/lib/swipl/library/ext/http/http/http_host.pl +204 -0
  317. package/lib/swipl/library/ext/http/http/http_load.pl +113 -0
  318. package/lib/swipl/library/ext/http/http/http_log.pl +738 -0
  319. package/lib/swipl/library/ext/http/http/http_multipart_plugin.pl +232 -0
  320. package/lib/swipl/library/ext/http/http/http_open.pl +1821 -0
  321. package/lib/swipl/library/ext/http/http/http_openid.pl +1561 -0
  322. package/lib/swipl/library/ext/http/http/http_parameters.pl +504 -0
  323. package/lib/swipl/library/ext/http/http/http_path.pl +380 -0
  324. package/lib/swipl/library/ext/http/http/http_proxy.pl +80 -0
  325. package/lib/swipl/library/ext/http/http/http_pwp.pl +351 -0
  326. package/lib/swipl/library/ext/http/http/http_redis_plugin.pl +332 -0
  327. package/lib/swipl/library/ext/http/http/http_server.pl +105 -0
  328. package/lib/swipl/library/ext/http/http/http_server_files.pl +126 -0
  329. package/lib/swipl/library/ext/http/http/http_server_health.pl +186 -0
  330. package/lib/swipl/library/ext/http/http/http_session.pl +1040 -0
  331. package/lib/swipl/library/ext/http/http/http_sgml_plugin.pl +137 -0
  332. package/lib/swipl/library/ext/http/http/http_stream.pl +376 -0
  333. package/lib/swipl/library/ext/http/http/http_unix_daemon.pl +989 -0
  334. package/lib/swipl/library/ext/http/http/http_wrapper.pl +559 -0
  335. package/lib/swipl/library/ext/http/http/hub.pl +600 -0
  336. package/lib/swipl/library/ext/http/http/js_write.pl +461 -0
  337. package/lib/swipl/library/ext/http/http/mimepack.pl +224 -0
  338. package/lib/swipl/library/ext/http/http/mimetype.pl +276 -0
  339. package/lib/swipl/library/ext/http/http/term_html.pl +797 -0
  340. package/lib/swipl/library/ext/http/http/thread_httpd.pl +1181 -0
  341. package/lib/swipl/library/ext/http/http/web/css/dirindex.css +24 -0
  342. package/lib/swipl/library/ext/http/http/web/css/openid.css +57 -0
  343. package/lib/swipl/library/ext/http/http/web/icons/back.png +0 -0
  344. package/lib/swipl/library/ext/http/http/web/icons/c.png +0 -0
  345. package/lib/swipl/library/ext/http/http/web/icons/compressed.png +0 -0
  346. package/lib/swipl/library/ext/http/http/web/icons/folder.png +0 -0
  347. package/lib/swipl/library/ext/http/http/web/icons/generic.png +0 -0
  348. package/lib/swipl/library/ext/http/http/web/icons/layout.png +0 -0
  349. package/lib/swipl/library/ext/http/http/web/icons/openid-logo-square.png +0 -0
  350. package/lib/swipl/library/ext/http/http/web/icons/openid-logo-tiny.png +0 -0
  351. package/lib/swipl/library/ext/http/http/websocket.pl +729 -0
  352. package/lib/swipl/library/ext/http/http/yadis.pl +205 -0
  353. package/lib/swipl/library/ext/json/INDEX.pl +36 -0
  354. package/lib/swipl/library/ext/json/http/INDEX.pl +16 -0
  355. package/lib/swipl/library/ext/json/http/http_json.pl +490 -0
  356. package/lib/swipl/library/ext/json/http/js_grammar.pl +53 -0
  357. package/lib/swipl/library/ext/json/http/json.pl +48 -0
  358. package/lib/swipl/library/ext/json/http/json_convert.pl +48 -0
  359. package/lib/swipl/library/ext/json/json.pl +1215 -0
  360. package/lib/swipl/library/ext/json/json_convert.pl +681 -0
  361. package/lib/swipl/library/ext/json/json_grammar.pl +349 -0
  362. package/lib/swipl/library/ext/json/json_rpc_client.pl +423 -0
  363. package/lib/swipl/library/ext/json/json_rpc_common.pl +104 -0
  364. package/lib/swipl/library/ext/json/json_rpc_server.pl +489 -0
  365. package/lib/swipl/library/ext/json/json_schema.pl +2111 -0
  366. package/lib/swipl/library/ext/nlp/INDEX.pl +15 -0
  367. package/lib/swipl/library/ext/nlp/double_metaphone.pl +86 -0
  368. package/lib/swipl/library/ext/nlp/isub.pl +162 -0
  369. package/lib/swipl/library/ext/nlp/porter_stem.pl +50 -0
  370. package/lib/swipl/library/ext/nlp/snowball.pl +97 -0
  371. package/lib/swipl/library/ext/pcre/INDEX.pl +17 -0
  372. package/lib/swipl/library/ext/pcre/pcre.pl +974 -0
  373. package/lib/swipl/library/ext/plunit/INDEX.pl +20 -0
  374. package/lib/swipl/library/ext/plunit/plunit.pl +2631 -0
  375. package/lib/swipl/library/ext/plunit/test_wizard.pl +249 -0
  376. package/lib/swipl/library/ext/semweb/semweb/INDEX.pl +288 -0
  377. package/lib/swipl/library/ext/semweb/semweb/rdf11.pl +2106 -0
  378. package/lib/swipl/library/ext/semweb/semweb/rdf11_containers.pl +299 -0
  379. package/lib/swipl/library/ext/semweb/semweb/rdf_cache.pl +278 -0
  380. package/lib/swipl/library/ext/semweb/semweb/rdf_compare.pl +132 -0
  381. package/lib/swipl/library/ext/semweb/semweb/rdf_db.pl +3468 -0
  382. package/lib/swipl/library/ext/semweb/semweb/rdf_edit.pl +1145 -0
  383. package/lib/swipl/library/ext/semweb/semweb/rdf_http_plugin.pl +274 -0
  384. package/lib/swipl/library/ext/semweb/semweb/rdf_library.pl +1021 -0
  385. package/lib/swipl/library/ext/semweb/semweb/rdf_litindex.pl +1035 -0
  386. package/lib/swipl/library/ext/semweb/semweb/rdf_ntriples.pl +422 -0
  387. package/lib/swipl/library/ext/semweb/semweb/rdf_persistency.pl +1576 -0
  388. package/lib/swipl/library/ext/semweb/semweb/rdf_portray.pl +182 -0
  389. package/lib/swipl/library/ext/semweb/semweb/rdf_prefixes.pl +681 -0
  390. package/lib/swipl/library/ext/semweb/semweb/rdf_sandbox.pl +153 -0
  391. package/lib/swipl/library/ext/semweb/semweb/rdf_turtle.pl +54 -0
  392. package/lib/swipl/library/ext/semweb/semweb/rdf_turtle_write.pl +1587 -0
  393. package/lib/swipl/library/ext/semweb/semweb/rdf_zlib_plugin.pl +52 -0
  394. package/lib/swipl/library/ext/semweb/semweb/rdfa.pl +1510 -0
  395. package/lib/swipl/library/ext/semweb/semweb/rdfs.pl +475 -0
  396. package/lib/swipl/library/ext/semweb/semweb/sparql_client.pl +643 -0
  397. package/lib/swipl/library/ext/semweb/semweb/turtle.pl +455 -0
  398. package/lib/swipl/library/ext/sgml/DTD/HTML4.dcl +88 -0
  399. package/lib/swipl/library/ext/sgml/DTD/HTML4.dtd +1092 -0
  400. package/lib/swipl/library/ext/sgml/DTD/HTML4.soc +6 -0
  401. package/lib/swipl/library/ext/sgml/DTD/HTML5.dtd +906 -0
  402. package/lib/swipl/library/ext/sgml/DTD/HTMLlat1.ent +195 -0
  403. package/lib/swipl/library/ext/sgml/DTD/HTMLspec.ent +77 -0
  404. package/lib/swipl/library/ext/sgml/DTD/HTMLsym.ent +241 -0
  405. package/lib/swipl/library/ext/sgml/INDEX.pl +64 -0
  406. package/lib/swipl/library/ext/sgml/c14n2.pl +203 -0
  407. package/lib/swipl/library/ext/sgml/iso_639.pl +631 -0
  408. package/lib/swipl/library/ext/sgml/pwp.pl +705 -0
  409. package/lib/swipl/library/ext/sgml/sgml.pl +815 -0
  410. package/lib/swipl/library/ext/sgml/sgml_write.pl +1003 -0
  411. package/lib/swipl/library/ext/sgml/xpath.pl +620 -0
  412. package/lib/swipl/library/ext/sgml/xsdp_types.pl +232 -0
  413. package/lib/swipl/library/ext/ssl/INDEX.pl +60 -0
  414. package/lib/swipl/library/ext/ssl/crypto.pl +1015 -0
  415. package/lib/swipl/library/ext/ssl/http/INDEX.pl +5 -0
  416. package/lib/swipl/library/ext/ssl/http/http_ssl_plugin.pl +296 -0
  417. package/lib/swipl/library/ext/ssl/saml.pl +609 -0
  418. package/lib/swipl/library/ext/ssl/ssl.pl +647 -0
  419. package/lib/swipl/library/ext/ssl/xmldsig.pl +391 -0
  420. package/lib/swipl/library/ext/ssl/xmlenc.pl +354 -0
  421. package/lib/swipl/library/ext/zlib/INDEX.pl +8 -0
  422. package/lib/swipl/library/ext/zlib/zlib.pl +112 -0
  423. package/lib/swipl/library/fastrw.pl +105 -0
  424. package/lib/swipl/library/files.pl +80 -0
  425. package/lib/swipl/library/gensym.pl +111 -0
  426. package/lib/swipl/library/git.pl +1027 -0
  427. package/lib/swipl/library/hashtable.pl +365 -0
  428. package/lib/swipl/library/heaps.pl +252 -0
  429. package/lib/swipl/library/hotfix.pl +239 -0
  430. package/lib/swipl/library/http/jquery.pl +103 -0
  431. package/lib/swipl/library/http/web/js/jquery-3.6.0.min.js +2 -0
  432. package/lib/swipl/library/increval.pl +217 -0
  433. package/lib/swipl/library/intercept.pl +263 -0
  434. package/lib/swipl/library/iostream.pl +237 -0
  435. package/lib/swipl/library/iri_scheme/file.pl +70 -0
  436. package/lib/swipl/library/lazy_lists.pl +481 -0
  437. package/lib/swipl/library/listing.pl +1362 -0
  438. package/lib/swipl/library/lists.pl +860 -0
  439. package/lib/swipl/library/lynx/INDEX.pl +14 -0
  440. package/lib/swipl/library/lynx/format.pl +380 -0
  441. package/lib/swipl/library/lynx/html_style.pl +129 -0
  442. package/lib/swipl/library/lynx/html_text.pl +865 -0
  443. package/lib/swipl/library/lynx/pldoc_style.pl +87 -0
  444. package/lib/swipl/library/macros.pl +451 -0
  445. package/lib/swipl/library/main.pl +1200 -0
  446. package/lib/swipl/library/make.pl +197 -0
  447. package/lib/swipl/library/modules.pl +129 -0
  448. package/lib/swipl/library/nb_rbtrees.pl +267 -0
  449. package/lib/swipl/library/nb_set.pl +203 -0
  450. package/lib/swipl/library/obfuscate.pl +115 -0
  451. package/lib/swipl/library/occurs.pl +241 -0
  452. package/lib/swipl/library/operators.pl +182 -0
  453. package/lib/swipl/library/option.pl +388 -0
  454. package/lib/swipl/library/optparse.pl +966 -0
  455. package/lib/swipl/library/ordsets.pl +518 -0
  456. package/lib/swipl/library/oset.pl +160 -0
  457. package/lib/swipl/library/pairs.pl +187 -0
  458. package/lib/swipl/library/persistency.pl +713 -0
  459. package/lib/swipl/library/pio.pl +47 -0
  460. package/lib/swipl/library/portray_text.pl +277 -0
  461. package/lib/swipl/library/pprint.pl +940 -0
  462. package/lib/swipl/library/predicate_options.pl +975 -0
  463. package/lib/swipl/library/prolog_autoload.pl +233 -0
  464. package/lib/swipl/library/prolog_breakpoints.pl +396 -0
  465. package/lib/swipl/library/prolog_clause.pl +1104 -0
  466. package/lib/swipl/library/prolog_code.pl +416 -0
  467. package/lib/swipl/library/prolog_codewalk.pl +1248 -0
  468. package/lib/swipl/library/prolog_colour.pl +3301 -0
  469. package/lib/swipl/library/prolog_colour.qlf +0 -0
  470. package/lib/swipl/library/prolog_config.pl +154 -0
  471. package/lib/swipl/library/prolog_coverage.pl +1333 -0
  472. package/lib/swipl/library/prolog_debug.pl +404 -0
  473. package/lib/swipl/library/prolog_deps.pl +675 -0
  474. package/lib/swipl/library/prolog_evaluable.pl +234 -0
  475. package/lib/swipl/library/prolog_format.pl +219 -0
  476. package/lib/swipl/library/prolog_history.pl +161 -0
  477. package/lib/swipl/library/prolog_jiti.pl +333 -0
  478. package/lib/swipl/library/prolog_locale.pl +61 -0
  479. package/lib/swipl/library/prolog_metainference.pl +307 -0
  480. package/lib/swipl/library/prolog_pack.pl +3906 -0
  481. package/lib/swipl/library/prolog_profile.pl +346 -0
  482. package/lib/swipl/library/prolog_qlfmake.pl +533 -0
  483. package/lib/swipl/library/prolog_source.pl +1188 -0
  484. package/lib/swipl/library/prolog_stack.pl +794 -0
  485. package/lib/swipl/library/prolog_trace.pl +365 -0
  486. package/lib/swipl/library/prolog_versions.pl +347 -0
  487. package/lib/swipl/library/prolog_wrap.pl +164 -0
  488. package/lib/swipl/library/prolog_xref.pl +3090 -0
  489. package/lib/swipl/library/prolog_xref.qlf +0 -0
  490. package/lib/swipl/library/pure_input.pl +266 -0
  491. package/lib/swipl/library/qpforeign.pl +695 -0
  492. package/lib/swipl/library/qsave.pl +1516 -0
  493. package/lib/swipl/library/quasi_quotations.pl +300 -0
  494. package/lib/swipl/library/quintus.pl +437 -0
  495. package/lib/swipl/library/random.pl +459 -0
  496. package/lib/swipl/library/rbtrees.pl +1153 -0
  497. package/lib/swipl/library/readln.pl +256 -0
  498. package/lib/swipl/library/readutil.pl +304 -0
  499. package/lib/swipl/library/record.pl +544 -0
  500. package/lib/swipl/library/rwlocks.pl +172 -0
  501. package/lib/swipl/library/sandbox.pl +1384 -0
  502. package/lib/swipl/library/semweb/dc.rdfs +198 -0
  503. package/lib/swipl/library/semweb/eor.rdfs +95 -0
  504. package/lib/swipl/library/semweb/owl.owl +287 -0
  505. package/lib/swipl/library/semweb/rdf_library.ttl +90 -0
  506. package/lib/swipl/library/semweb/rdfs.rdfs +251 -0
  507. package/lib/swipl/library/settings.pl +755 -0
  508. package/lib/swipl/library/shell.pl +462 -0
  509. package/lib/swipl/library/shlib.pl +670 -0
  510. package/lib/swipl/library/solution_sequences.pl +439 -0
  511. package/lib/swipl/library/sort.pl +119 -0
  512. package/lib/swipl/library/statistics.pl +541 -0
  513. package/lib/swipl/library/streams.pl +118 -0
  514. package/lib/swipl/library/strings.pl +469 -0
  515. package/lib/swipl/library/system.pl +95 -0
  516. package/lib/swipl/library/tables.pl +381 -0
  517. package/lib/swipl/library/tableutil.pl +771 -0
  518. package/lib/swipl/library/tabling.pl +42 -0
  519. package/lib/swipl/library/terms.pl +457 -0
  520. package/lib/swipl/library/theme/auto.pl +61 -0
  521. package/lib/swipl/library/theme/dark.pl +455 -0
  522. package/lib/swipl/library/theme/light.pl +45 -0
  523. package/lib/swipl/library/thread.pl +810 -0
  524. package/lib/swipl/library/thread_pool.pl +508 -0
  525. package/lib/swipl/library/threadutil.pl +574 -0
  526. package/lib/swipl/library/tty.pl +316 -0
  527. package/lib/swipl/library/ugraphs.pl +644 -0
  528. package/lib/swipl/library/unicode/INDEX.pl +6 -0
  529. package/lib/swipl/library/unicode/blocks.pl +414 -0
  530. package/lib/swipl/library/url.pl +1129 -0
  531. package/lib/swipl/library/utf8.pl +145 -0
  532. package/lib/swipl/library/varnumbers.pl +221 -0
  533. package/lib/swipl/library/vm.pl +251 -0
  534. package/lib/swipl/library/wfs.pl +205 -0
  535. package/lib/swipl/library/when.pl +263 -0
  536. package/lib/swipl/library/writef.pl +278 -0
  537. package/lib/swipl/library/www_browser.pl +251 -0
  538. package/lib/swipl/library/yall.pl +574 -0
  539. package/lib/swipl/library/zip.pl +211 -0
  540. package/lib/swipl/swipl.home +1 -0
  541. package/lib/vendor/libcrypto.so.3 +0 -0
  542. package/lib/vendor/libpcre2-8.so.0 +0 -0
  543. package/lib/vendor/libssl.so.3 +0 -0
  544. package/lib/vendor/libz.so.1 +0 -0
  545. package/licenses/OpenSSL-LICENSE.txt +177 -0
  546. package/licenses/PCRE2-COPYING +5 -0
  547. package/licenses/README.md +12 -0
  548. package/licenses/SWI-Prolog-LICENSE +41 -0
  549. package/licenses/zlib-LICENSE +22 -0
  550. package/package.json +27 -0
@@ -0,0 +1,455 @@
1
+ /* Part of SWI-Prolog
2
+
3
+ Author: Jan Wielemaker
4
+ E-mail: J.Wielemaker@vu.nl
5
+ WWW: http://www.swi-prolog.org
6
+ Copyright (c) 2013-2022, University of Amsterdam
7
+ VU University Amsterdam
8
+ SWI-Prolog Solutions b.v.
9
+ All rights reserved.
10
+
11
+ Redistribution and use in source and binary forms, with or without
12
+ modification, are permitted provided that the following conditions
13
+ are met:
14
+
15
+ 1. Redistributions of source code must retain the above copyright
16
+ notice, this list of conditions and the following disclaimer.
17
+
18
+ 2. Redistributions in binary form must reproduce the above copyright
19
+ notice, this list of conditions and the following disclaimer in
20
+ the documentation and/or other materials provided with the
21
+ distribution.
22
+
23
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
26
+ FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
27
+ COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
28
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
29
+ BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
30
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
31
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32
+ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
33
+ ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34
+ POSSIBILITY OF SUCH DAMAGE.
35
+ */
36
+
37
+ :- module(turtle,
38
+ [ rdf_load_turtle/3, % +Input, -Triples, +Options
39
+ rdf_read_turtle/3, % +Input, -Triples, +Options
40
+ rdf_process_turtle/3, % +Input, :OnObject, +Options
41
+ % re-exports
42
+ rdf_save_turtle/2, % +File, +Options
43
+ rdf_save_canonical_turtle/2, % +File, +Options
44
+ rdf_save_trig/2, % +File, +Options
45
+ rdf_save_canonical_trig/2, % +File, +Options
46
+ rdf_save_ntriples/2 % +File, +Options
47
+ ]).
48
+ :- use_module(library(semweb/rdf_turtle_write)). % re-exports
49
+ :- if(exists_source(library(semweb/rdf_db))).
50
+ :- use_module(library(semweb/rdf_db),
51
+ [rdf_transaction/2,rdf_set_graph/2,rdf_assert/4]).
52
+ :- endif.
53
+
54
+ :- autoload(library(memfile),
55
+ [atom_to_memory_file/2,open_memory_file/4]).
56
+ :- autoload(library(option),[option/3,option/2]).
57
+ :- autoload(library(uri),
58
+ [uri_file_name/2,uri_is_global/1,uri_normalized/2]).
59
+ :- autoload(library(http/http_open),[http_open/3]).
60
+
61
+ % re-exports
62
+ :- meta_predicate
63
+ rdf_process_turtle(+,2,+).
64
+
65
+ :- predicate_options(rdf_load_turtle/3, 3,
66
+ [pass_to(rdf_read_turtle/3, 3)]).
67
+ :- predicate_options(rdf_process_turtle/3, 3,
68
+ [ anon_prefix(atom),
69
+ base_uri(atom),
70
+ base_used(-atom),
71
+ db(atom),
72
+ error_count(-integer),
73
+ namespaces(-list),
74
+ on_error(oneof([warning,error])),
75
+ prefixes(-list),
76
+ resources(oneof([uri,iri]))
77
+ ]).
78
+ :- predicate_options(rdf_read_turtle/3, 3,
79
+ [ anon_prefix(atom),
80
+ base_uri(atom),
81
+ base_used(-atom),
82
+ db(atom),
83
+ error_count(-integer),
84
+ namespaces(-list),
85
+ on_error(oneof([warning,error])),
86
+ prefixes(-list),
87
+ resources(oneof([uri,iri]))
88
+ ]).
89
+
90
+ :- use_foreign_library(foreign(turtle)).
91
+ :- public % used by the writer
92
+ turtle_pn_local/1,
93
+ turtle_write_quoted_string/2,
94
+ turtle_write_uri/2.
95
+
96
+ /** <module> Turtle: Terse RDF Triple Language
97
+
98
+ This module implements the Turtle language for representing the RDF
99
+ triple model as defined by Dave Beckett from the Institute for Learning
100
+ and Research Technology University of Bristol and later standardized by
101
+ the W3C RDF working group.
102
+
103
+ This module acts as a plugin to rdf_load/2, for processing files with
104
+ one of the extensions =|.ttl|= or =|.n3|=.
105
+
106
+ @see http://www.w3.org/TR/turtle/ (used W3C Recommendation 25
107
+ February 2014)
108
+ */
109
+
110
+ %! rdf_read_turtle(+Input, -Triples, +Options)
111
+ %
112
+ % Read a stream or file into a set of triples or quadruples (if
113
+ % faced with TriG input) of the format
114
+ %
115
+ % rdf(Subject, Predicate, Object [, Graph])
116
+ %
117
+ % The representation is consistent with the SWI-Prolog RDF/XML
118
+ % and ntriples parsers. Provided options are:
119
+ %
120
+ % * base_uri(+BaseURI)
121
+ % Initial base URI. Defaults to file://<file> for loading
122
+ % files.
123
+ %
124
+ % * anon_prefix(+Prefix)
125
+ % Blank nodes are generated as <Prefix>1, <Prefix>2, etc.
126
+ % If Prefix is not an atom blank nodes are generated as
127
+ % node(1), node(2), ...
128
+ %
129
+ % * format(+Format)
130
+ % One of =auto= (default), =turtle= or =trig=. The
131
+ % auto mode switches to TriG format of there is a
132
+ % =|{|= before the first triple. Finally, of the
133
+ % format is explicitly stated as =turtle= and the
134
+ % file appears to be a TriG file, a warning is printed
135
+ % and the data is loaded while ignoring the graphs.
136
+ %
137
+ % * resources(URIorIRI)
138
+ % Officially, Turtle resources are IRIs. Quite a
139
+ % few applications however send URIs. By default we
140
+ % do URI->IRI mapping because this rarely causes errors.
141
+ % To force strictly conforming mode, pass =iri=.
142
+ %
143
+ % * prefixes(-Pairs)
144
+ % Return encountered prefix declarations as a
145
+ % list of Alias-URI
146
+ %
147
+ % * namespaces(-Pairs)
148
+ % Same as prefixes(Pairs). Compatibility to rdf_load/2.
149
+ %
150
+ % * base_used(-Base)
151
+ % Base URI used for processing the data. Unified to
152
+ % [] if there is no base-uri.
153
+ %
154
+ % * on_error(+ErrorMode)
155
+ % In =warning= (default), print the error and continue
156
+ % parsing the remainder of the file. If =error=, abort
157
+ % with an exception on the first error encountered.
158
+ %
159
+ % * error_count(-Count)
160
+ % If on_error(warning) is active, this option cane be
161
+ % used to retrieve the number of generated errors.
162
+ %
163
+ % @param Input is one of stream(Stream), atom(Atom), a =http=,
164
+ % =https= or =file= url or a filename specification as
165
+ % accepted by absolute_file_name/3.
166
+
167
+ rdf_read_turtle(In, Triples, Options) :-
168
+ base_uri(In, BaseURI, Options),
169
+ setup_call_cleanup(
170
+ ( open_input(In, Stream, Close),
171
+ create_turtle_parser(Parser, Stream,
172
+ [ base_uri(BaseURI)
173
+ | Options
174
+ ])
175
+ ),
176
+ ( turtle_parse(Parser, Triples,
177
+ [ parse(document)
178
+ | Options
179
+ ]),
180
+ post_options(Parser, Options)
181
+ ),
182
+ ( destroy_turtle_parser(Parser),
183
+ call(Close)
184
+ )).
185
+
186
+ %! rdf_load_turtle(+Input, -Triples, +Options)
187
+ %
188
+ % @deprecated Use rdf_read_turtle/3
189
+
190
+ rdf_load_turtle(Input, Triples, Options) :-
191
+ rdf_read_turtle(Input, Triples, Options).
192
+
193
+
194
+ %! rdf_process_turtle(+Input, :OnObject, +Options) is det.
195
+ %
196
+ % Streaming Turtle parser. The predicate rdf_process_turtle/3
197
+ % processes Turtle data from Input, calling OnObject with a list
198
+ % of triples for every Turtle _statement_ found in Input. OnObject
199
+ % is called as below, where `ListOfTriples` is a list of
200
+ % rdf(S,P,O) terms for a normal Turtle file or rdf(S,P,O,G) terms
201
+ % if the =GRAPH= keyword is used to associate a set of triples in
202
+ % the document with a particular graph. The `Graph` argument
203
+ % provides the default graph for storing the triples and _Line_ is
204
+ % the line number where the statement started.
205
+ %
206
+ % ==
207
+ % call(OnObject, ListOfTriples, Graph:Line)
208
+ % ==
209
+ %
210
+ % This predicate supports the same Options as rdf_load_turtle/3.
211
+ %
212
+ % Errors encountered are sent to print_message/2, after which the
213
+ % parser tries to recover and parse the remainder of the data.
214
+ %
215
+ % @see This predicate is normally used by load_rdf/2 for
216
+ % processing RDF data.
217
+
218
+ rdf_process_turtle(In, OnObject, Options) :-
219
+ base_uri(In, BaseURI, Options),
220
+ option(graph(Graph), Options, BaseURI),
221
+ setup_call_cleanup(
222
+ ( open_input(In, Stream, Close),
223
+ create_turtle_parser(Parser, Stream, Options)
224
+ ),
225
+ ( process_turtle(Parser, Stream, OnObject, Graph,
226
+ [ parse(statement)
227
+ ]),
228
+ post_options(Parser, Options)
229
+ ),
230
+ ( destroy_turtle_parser(Parser),
231
+ call(Close)
232
+ )).
233
+
234
+ post_options(Parser, Options) :-
235
+ prefix_option(Parser, Options),
236
+ namespace_option(Parser, Options),
237
+ base_option(Parser, Options),
238
+ error_option(Parser, Options).
239
+
240
+ prefix_option(Parser, Options) :-
241
+ ( option(prefixes(Pairs), Options)
242
+ -> turtle_prefixes(Parser, Pairs)
243
+ ; true
244
+ ).
245
+ namespace_option(Parser, Options) :-
246
+ ( option(namespaces(Pairs), Options)
247
+ -> turtle_prefixes(Parser, Pairs)
248
+ ; true
249
+ ).
250
+ base_option(Parser, Options) :-
251
+ ( option(base_used(Base), Options)
252
+ -> turtle_base(Parser, Base)
253
+ ; true
254
+ ).
255
+ error_option(Parser, Options) :-
256
+ ( option(error_count(Count), Options)
257
+ -> turtle_error_count(Parser, Count)
258
+ ; true
259
+ ).
260
+
261
+
262
+ process_turtle(_Parser, Stream, _OnObject, _Graph, _Options) :-
263
+ at_end_of_stream(Stream),
264
+ !.
265
+ process_turtle(Parser, Stream, OnObject, Graph, Options) :-
266
+ stream_pair(Stream, In, _),
267
+ line_count(In, LineNo),
268
+ turtle_parse(Parser, Triples,
269
+ [ parse(statement)
270
+ | Options
271
+ ]),
272
+ call(OnObject, Triples, Graph:LineNo),
273
+ process_turtle(Parser, Stream, OnObject, Graph, Options).
274
+
275
+
276
+ %! open_input(+Input, -Stream, -Close) is det.
277
+ %
278
+ % Open given input.
279
+ %
280
+ % @param Close goal to undo the open action
281
+ % @tbd Synchronize with input handling of rdf_db.pl.
282
+ % @error existence_error, permission_error
283
+
284
+ open_input(stream(Stream), Stream, Close) :-
285
+ !,
286
+ stream_property(Stream, encoding(Old)),
287
+ ( ( unicode_encoding(Old)
288
+ ; stream_property(Stream, type(text))
289
+ )
290
+ -> Close = true
291
+ ; set_stream(Stream, encoding(utf8)),
292
+ Close = set_stream(Stream, encoding(Old))
293
+ ).
294
+ open_input(Stream, Stream, Close) :-
295
+ is_stream(Stream),
296
+ !,
297
+ open_input(stream(Stream), Stream, Close).
298
+ open_input(atom(Atom), Stream, close(Stream)) :-
299
+ !,
300
+ atom_to_memory_file(Atom, MF),
301
+ open_memory_file(MF, read, Stream, [free_on_close(true)]).
302
+ open_input(URL, Stream, close(Stream)) :-
303
+ ( sub_atom(URL, 0, _, _, 'http://')
304
+ ; sub_atom(URL, 0, _, _, 'https://')
305
+ ),
306
+ !,
307
+ http_open(URL, Stream, []),
308
+ set_stream(Stream, encoding(utf8)).
309
+ open_input(URL, Stream, close(Stream)) :-
310
+ uri_file_name(URL, Path),
311
+ !,
312
+ open(Path, read, Stream, [encoding(utf8)]).
313
+ open_input(File, Stream, close(Stream)) :-
314
+ absolute_file_name(File, Path,
315
+ [ access(read),
316
+ extensions([ttl, ''])
317
+ ]),
318
+ open(Path, read, Stream, [encoding(utf8)]).
319
+
320
+ unicode_encoding(utf8).
321
+ unicode_encoding(wchar_t).
322
+ unicode_encoding(unicode_be).
323
+ unicode_encoding(unicode_le).
324
+
325
+ %! base_uri(+Input, -BaseURI, +Options)
326
+ %
327
+ % Determine the base uri to use for processing.
328
+
329
+ base_uri(_Input, BaseURI, Options) :-
330
+ option(base_uri(BaseURI), Options),
331
+ !.
332
+ base_uri(_Input, BaseURI, Options) :-
333
+ option(graph(BaseURI), Options),
334
+ !.
335
+ base_uri(stream(Input), BaseURI, _Options) :-
336
+ stream_property(Input, file_name(Name)),
337
+ !,
338
+ name_uri(Name, BaseURI).
339
+ base_uri(Stream, BaseURI, Options) :-
340
+ is_stream(Stream),
341
+ !,
342
+ base_uri(stream(Stream), BaseURI, Options).
343
+ base_uri(Name, BaseURI, _Options) :-
344
+ atom(Name),
345
+ !,
346
+ name_uri(Name, BaseURI).
347
+ base_uri(_, 'http://www.example.com/', _).
348
+
349
+ name_uri(Name, BaseURI) :-
350
+ uri_is_global(Name),
351
+ !,
352
+ uri_normalized(Name, BaseURI).
353
+ name_uri(Name, BaseURI) :-
354
+ uri_file_name(BaseURI, Name).
355
+
356
+
357
+ /*******************************
358
+ * WRITE SUPPORT *
359
+ *******************************/
360
+
361
+ %! turtle_pn_local(+Atom:atom) is semidet.
362
+ %
363
+ % True if Atom is a valid Turtle _PN_LOCAL_ name. The PN_LOCAL
364
+ % name is what can follow the : in a resource. In the new Turtle,
365
+ % this can be anything and this function becomes meaningless. In
366
+ % the old turtle, PN_LOCAL is defined similar (but not equal) to
367
+ % an XML name. This predicate is used by rdf_save_turtle/2 to
368
+ % write files such that can be read by old parsers.
369
+ %
370
+ % @see xml_name/2.
371
+
372
+ %! turtle_write_quoted_string(+Out, +Value, ?WriteLong) is det.
373
+ %
374
+ % Write Value (an atom) as a valid Turtle string. WriteLong
375
+ % determines whether the string is written as a _short_ or _long_
376
+ % string. It takes the following values:
377
+ %
378
+ % * true
379
+ % Use Turtle's long string syntax. Embedded newlines and
380
+ % single or double quotes are are emitted verbatim.
381
+ % * false
382
+ % Use Turtle's short string syntax.
383
+ % * Var
384
+ % If WriteLong is unbound, this predicate uses long syntax
385
+ % if newlines appear in the string and short otherwise. WriteLong
386
+ % is unified with the decision taken.
387
+
388
+ %! turtle_write_quoted_string(+Out, +Value) is det.
389
+ %
390
+ % Same as turtle_write_quoted_string(Out, Value, false), writing a
391
+ % string with only a single =|"|=. Embedded newlines are escapes
392
+ % as =|\n|=.
393
+
394
+ turtle_write_quoted_string(Out, Text) :-
395
+ turtle_write_quoted_string(Out, Text, false).
396
+
397
+ %! turtle_write_uri(+Out, +Value) is det.
398
+ %
399
+ % Write a URI as =|<...>|=
400
+
401
+
402
+ /*******************************
403
+ * RDF-DB HOOK *
404
+ *******************************/
405
+
406
+ :- if(current_predicate(rdf_transaction/2)).
407
+ :- multifile
408
+ rdf_db:rdf_load_stream/3,
409
+ rdf_db:rdf_file_type/2.
410
+
411
+ %! rdf_db:rdf_load_stream(+Format, +Stream, :Options)
412
+ %
413
+ % (Turtle clauses)
414
+
415
+ rdf_db:rdf_load_stream(turtle, Stream, Options) :-
416
+ load_turtle_stream(Stream, Options).
417
+ rdf_db:rdf_load_stream(trig, Stream, Options) :-
418
+ load_turtle_stream(Stream, Options).
419
+
420
+ load_turtle_stream(Stream, _Module:Options) :-
421
+ rdf_db:graph(Options, Graph),
422
+ atom_concat('_:', Graph, BNodePrefix),
423
+ rdf_transaction(( rdf_process_turtle(Stream, assert_triples,
424
+ [ anon_prefix(BNodePrefix)
425
+ | Options
426
+ ]),
427
+ rdf_set_graph(Graph, modified(false))
428
+ ),
429
+ parse(Graph)).
430
+
431
+ assert_triples([], _).
432
+ assert_triples([H|T], Location) :-
433
+ assert_triple(H, Location),
434
+ assert_triples(T, Location).
435
+
436
+ assert_triple(rdf(S,P,O), Location) :-
437
+ rdf_assert(S,P,O,Location).
438
+ assert_triple(rdf(S,P,O,G), _) :-
439
+ rdf_assert(S,P,O,G).
440
+
441
+
442
+ rdf_db:rdf_file_type(ttl, turtle).
443
+ rdf_db:rdf_file_type(n3, turtle). % not really, but good enough
444
+ rdf_db:rdf_file_type(trig, trig).
445
+ :- endif.
446
+
447
+
448
+ /*******************************
449
+ * MESSAGES *
450
+ *******************************/
451
+
452
+ :- multifile prolog:error_message//1.
453
+
454
+ prolog:error_message(existence_error(turtle_prefix, '')) -->
455
+ [ 'Turtle empty prefix (:) is not defined' ].
@@ -0,0 +1,88 @@
1
+ <!SGML "ISO 8879:1986 (WWW)"
2
+ --
3
+ SGML Declaration for HyperText Markup Language version 4.0
4
+
5
+ With support for the first 17 planes of ISO 10646 and
6
+ increased limits for tag and literal lengths etc.
7
+
8
+ Modified by jjc to work around SP's 16-bit character limit.
9
+ Modified by jjc to support hex character references.
10
+ --
11
+
12
+ CHARSET
13
+ BASESET "ISO Registration Number 177//CHARSET
14
+ ISO/IEC 10646-1:1993 UCS-4 with
15
+ implementation level 3//ESC 2/5 2/15 4/6"
16
+ DESCSET 0 9 UNUSED
17
+ 9 2 9
18
+ 11 2 UNUSED
19
+ 13 1 13
20
+ 14 18 UNUSED
21
+ 32 95 32
22
+ 127 1 UNUSED
23
+ 128 32 UNUSED
24
+ -- jjc: changed the rest of the DESCSET.
25
+ Note that surrogates are not declared UNUSED;
26
+ this allows non-BMP characters to be parsed. --
27
+ 160 65376 160
28
+ -- 160 55136 160
29
+ 55296 2048 UNUSED
30
+ 57344 1056768 57344 --
31
+
32
+ CAPACITY SGMLREF
33
+ TOTALCAP 150000
34
+ GRPCAP 150000
35
+ ENTCAP 150000
36
+
37
+ SCOPE DOCUMENT
38
+ SYNTAX
39
+ SHUNCHAR CONTROLS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
40
+ 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 127
41
+ BASESET "ISO 646IRV:1991//CHARSET
42
+ International Reference Version
43
+ (IRV)//ESC 2/8 4/2"
44
+ DESCSET 0 128 0
45
+
46
+ FUNCTION
47
+ RE 13
48
+ RS 10
49
+ SPACE 32
50
+ TAB SEPCHAR 9
51
+
52
+ NAMING LCNMSTRT ""
53
+ UCNMSTRT ""
54
+ LCNMCHAR ".-_:"
55
+ UCNMCHAR ".-_:"
56
+ NAMECASE GENERAL YES
57
+ ENTITY NO
58
+ DELIM GENERAL SGMLREF
59
+ HCRO "&#38;#X" -- added by jjc --
60
+ SHORTREF SGMLREF
61
+ NAMES SGMLREF
62
+ QUANTITY SGMLREF
63
+ ATTCNT 60 -- increased --
64
+ ATTSPLEN 65536 -- These are the largest values --
65
+ LITLEN 65536 -- permitted in the declaration --
66
+ NAMELEN 65536 -- Avoid fixed limits in actual --
67
+ PILEN 65536 -- implementations of HTML UA's --
68
+ TAGLVL 100
69
+ TAGLEN 65536
70
+ GRPGTCNT 150
71
+ GRPCNT 64
72
+
73
+ FEATURES
74
+ MINIMIZE
75
+ DATATAG NO
76
+ OMITTAG YES
77
+ RANK NO
78
+ SHORTTAG YES
79
+ LINK
80
+ SIMPLE NO
81
+ IMPLICIT NO
82
+ EXPLICIT NO
83
+ OTHER
84
+ CONCUR NO
85
+ SUBDOC NO
86
+ FORMAL YES
87
+ APPINFO NONE
88
+ >