Coverage report: /development/source/library/org/datagraph/spocq-shard/src/core/package.lisp

KindCoveredAll%
expression38223 17.0
branch210 20.0
Key
Not instrumented
Conditionalized out
Executed
Not executed
 
Both branches taken
One branch taken
Neither branch taken
1
 ;;; -*- Mode: lisp; Syntax: ansi-common-lisp; Base: 10; Package: cl-user; -*-
2
 
3
 (in-package :cl-user)
4
 
5
 ;;;  This file is the package definition for the 'org.datagraph.spocq' core
6
 ;;;
7
 ;;;  Copyright 2010 [james anderson](mailto:james.anderson@setf.de) All Rights Reserved
8
 ;;;  Copyright 2013 [james anderson](mailto:james.anderson@setf.de) All Rights Reserved
9
 ;;;
10
 ;;; extracting term names from rdf, where the namespace name ends in '#':
11
 ;;; fgrep 'rdf:about=' xxx.rdf | fgrep <ns-prefix> | sed 's,.*#,",' | sed 's,">.*,",'
12
 ;;; fgrep 'rdf:ID=' xxx.rdf | fgrep <ns-prefix> | sed 's,.*=",",' | sed 's,">.*,",' | sort
13
 
14
 (pushnew :spocq *features*)
15
 
16
 (eval-when (:compile-toplevel :load-toplevel :execute)
17
   (export '(mime::triples
18
             mime::quads)
19
           :mime))
20
 
21
 (modpackage :rdf
22
   (:export :defclass :defproperty))
23
 
24
 
25
 ;;; need to intern in order to import below
26
 (dolist (s '(:|account|
27
              :|cast|
28
              :|reply|
29
              :|spocq|
30
              :|error|
31
              :|nil|
32
              :|true|
33
              :|false|
34
              :|bert|
35
              :|dict|
36
              :|priority|
37
              :|quota|
38
              :|<|
39
              :|:|
40
              :|?|
41
              :|@|
42
              :|^|
43
              :|"|
44
              :|quota|
45
              :|priority|
46
              :|exchange|
47
              :|routing_key|
48
              :|bgp_id|
49
              :|graphs|))
50
   (intern (string s) :keyword))
51
 
52
 
53
 (defpackage :org.datagraph.spocq.algebra
54
   (:nicknames :spocq.a)
55
   (:use )
56
   (:export "abs"
57
            "add"
58
            "agp"
59
            "and"
60
            "ask"
61
            "asc"
62
            "avg"
63
            "aggregate"
64
            "bindings"
65
            "bgp"
66
            "bind" ;; for use in bgp
67
            "bnode"
68
            "bound"
69
            "cardinality"
70
            "ceil"
71
            "clear"
72
            "concat"
73
            "construct"
74
            "contains"
75
            "corr"
76
            "count"
77
            "copy"
78
            "create"
79
            "datatype"
80
            "day"
81
            "declare"
82
            "deleteData"
83
            "deleteWhere"
84
            "describe"
85
            "desc"
86
            "diff"
87
            "distinct"
88
            "drop"
89
            "encode_for_uri"
90
            "equivalents"
91
            "exprlist"
92
            "extend"
93
            "exists"
94
            "every"
95
            "f"
96
            "false"
97
            "filter"
98
            "floor"
99
            "from"
100
            "from-named"
101
            "graph"
102
            "group_concat"
103
            "group"
104
            "hours"
105
            "id"
106
            "if"
107
            "in"
108
            "insertData"
109
            "iri"
110
            "isBlank"
111
            "isLiteral"
112
            "isIRI"
113
            "isURI"
114
            "join"
115
            "lang"
116
            "langMatches"
117
            "lcase"
118
            "leftjoin"
119
            "list"
120
            "load"
121
            "max"
122
            "md5"
123
            "merge"
124
            "min"
125
            "minus"
126
            "minutes"
127
            "modify"
128
            "month"
129
            "move"
130
            "multiset"
131
            "nil"
132
            "not"
133
            "notin"
134
            "now"
135
            "null"
136
            "opaque"
137
            "or"
138
            "order"
139
            "project"
140
            "quad"
141
            "rand"
142
            "reduced"
143
            "regex"
144
            "replace"
145
            "revision"
146
            "round"
147
            "row"
148
            "sameTerm"
149
            "sample"
150
            "seconds"
151
            "select"
152
            "service"
153
            "servicejoin"
154
            "sha1"
155
            "sha224"
156
            "sha256"
157
            "sha384"
158
            "sha512"
159
            "slice"
160
            "some"
161
            "std"
162
            "str"
163
            "strafter"
164
            "strbefore"
165
            "strends"
166
            "strdt"
167
            "strlang"
168
            "strlen"
169
            "strstarts"
170
            "struuid"
171
            "substr"
172
            "sum"
173
            "t"
174
            "table"
175
            "then"
176
            "timezone"
177
            "to-list"
178
            "triple"
179
            "true"
180
            "ucase"
181
            "unbound"
182
            "union"
183
            "unit"
184
            "update"
185
            "uri"
186
            "uuid"
187
            "xor"
188
            "year"
189
            "tz"
190
            "version-constraint"
191
            "view"
192
 
193
            "+"
194
            "!"
195
            "-"
196
            "||"
197
            "&&"
198
            "="
199
            "!="
200
            "<"
201
            ">"
202
            "<="
203
            ">="
204
            "*"
205
            "/"
206
            "_"
207
            )
208
 
209
   ;; alternatively, define a reader package which uses :spocq.a and :keyword
210
   ;; in any case, these are case-sensitive, as they emulate etf atoms
211
   (:import-from :keyword
212
                 :|account|
213
                 :|cast|
214
                 :|reply|
215
                 ;:|error|
216
                 :|spocq|
217
                 :|bert|
218
                 :|dict|
219
                 :|priority|
220
                 :|quota|
221
                 :|<|
222
                 :|:|
223
                 :|?|
224
                 :|@|
225
                 :|^|
226
                 :|"|
227
                 :|quota|
228
                 :|priority|
229
                 :|exchange|
230
                 :|routing_key|
231
                 :|bgp_id|
232
                 :|graphs|)
233
 
234
   (:documentation
235
     "The SPOCQ abstract algebra pagkage.
236
 
237
  The SPARQL Query [Algebra](http://www.w3.org/TR/rdf-sparql-query/#sparqlQuery)
238
  specifies the abstract syntax:
239
 
240
  Patterns              Modifiers       Query Forms
241
  RDF terms             DISTINCT        SELECT
242
  triple patterns       REDUCED         CONSTRUCT
243
  Basic graph patterns  PROJECT         DESCRIBE
244
  Groups                ORDER BY        ASK
245
  OPTIONAL              LIMIT         
246
  UNION                 OFFSET         
247
  GRAPH                  
248
  FILTER                  
249
 
250
  of which the triple and basic graph patterns will include
251
  triple and quad constructors, and construct expressions will include
252
  triple, quad, and graph constructors. These name abstract operators, which are
253
  defined as macros in terms of the evaluation operators."))
254
 
255
 
256
 (defpackage :spocq
257
   (:nicknames :org.datagraph.spocq)
258
   (:use :common-lisp)
259
   (:shadow :string :make-string :boolean :float :integer
260
            :time :unbound-variable :number)
261
   #+(or)
262
   (:import-from :common-lisp :in-package :defstruct :defparameter :defvar :defmacro
263
                 :print-object :format :simple-type-error :type-of :cond
264
                 :nil :t
265
                 :&optional :or :symbol :error :fixnum :null)
266
   (:import-from :spocq.a
267
                 :|true|
268
                 :|false|)
269
   (:export :|account|                   ; message keys !!! obsolete
270
            :|bgpfield|
271
            :|bgpmatch|
272
            :|error|
273
            :|false|
274
            :|plan|
275
            :|query|
276
            :|response|
277
            :|terminate|
278
            :|true|
279
            :+reference-fraction+
280
            :+reference-year+
281
            :+reference-time-year+
282
            :+reference-month+
283
            :+reference-day+
284
            :+reference-minute+
285
            :+reference-hour+
286
            :+reference-second+
287
            :+reference-zone+
288
            :account
289
            :account-name
290
            :atomic-typed-literal
291
            :atomic-typed-literal-p
292
            :atomic-typed-literal-value
293
            :bgp
294
            :blank-node
295
            :blank-node-constant-p
296
            :blank-node-label
297
            :blank-node-p
298
            :boolean
299
            :boolean-p
300
            :boolean-value
301
            :compound-typed-literal
302
            :date
303
            :date-day
304
            :date-hour
305
            :date-interval
306
            :date-interval-end
307
            :date-interval-start
308
            :date-minute
309
            :date-month
310
            :date-zone
311
            :date-p
312
            :date-time
313
            :date-time-day
314
            :date-time-fraction
315
            :date-time-interval
316
            :date-time-interval-end
317
            :date-time-interval-start
318
            :date-time-hour
319
            :date-time-minute
320
            :date-time-month
321
            :date-time-p
322
            :date-time-second
323
            :date-time-universal-time
324
            :date-time-year
325
            :date-time-zone
326
            :date-universal-time
327
            :date-year
328
            :day-time-duration
329
            :day-time-duration-day
330
            :day-time-duration-fraction
331
            :day-time-duration-hour
332
            :day-time-duration-minute
333
            :day-time-duration-month
334
            :day-time-duration-second
335
            :day-time-duration-second-location
336
            :day-time-duration-sign
337
            :day-time-duration-year
338
            :decimal
339
            :decimal-p
340
            :double
341
            :double-p
342
            :duration
343
            :duration-day
344
            :duration-fraction
345
            :duration-hour
346
            :duration-minute
347
            :duration-month
348
            :duration-month-location
349
            :duration-p
350
            :duration-second
351
            :duration-second-location
352
            :duration-sign
353
            :duration-universal-time
354
            :duration-year
355
            :file-url
356
            :file-url-lexical-form
357
            :float
358
            :float-p
359
            :format-date
360
            :format-date-time
361
            :format-day-time-duration
362
            :format-duration
363
            :format-g-day
364
            :format-g-month
365
            :format-g-month-day
366
            :format-g-year
367
            :format-g-year-month
368
            :format-zone-offset
369
            :format-time
370
            :format-year-month-duration
371
            :g-day
372
            :g-day-day
373
            :g-day-hour
374
            :g-day-minute
375
            :g-day-month
376
            :g-day-second
377
            :g-day-year
378
            :g-day-zone
379
            :g-month
380
            :g-month-day
381
            :g-month-day-day
382
            :g-month-day-hour
383
            :g-month-day-minute
384
            :g-month-day-month
385
            :g-month-day-second
386
            :g-month-day-year
387
            :g-month-day-zone
388
            :g-month-hour
389
            :g-month-minute
390
            :g-month-month
391
            :g-month-second
392
            :g-month-year
393
            :g-month-zone
394
            :g-year
395
            :g-year-day
396
            :g-year-hour
397
            :g-year-minute
398
            :g-year-month
399
            :g-year-second
400
            :g-year-year
401
            :g-year-zone
402
            :g-year-month-day
403
            :g-year-month-hour
404
            :g-year-month-minute
405
            :g-year-month-month
406
            :g-year-month-second
407
            :g-year-month-year
408
            :g-year-month-zone
409
            :graph
410
            :http-url
411
            :integer
412
            :integer-p
413
            :interval
414
            :interval-start
415
            :interval-end
416
            :iri
417
            :iri-lexical-form
418
            :iri-p
419
            :leftjoin
420
            :literal
421
            :literal-datatype-uri
422
            :literal-lexical-form
423
            :literal-p
424
            :mailto-url
425
            :make-blank-node
426
            :make-boolean
427
            :make-date
428
            :make-date-interval
429
            :make-date-time
430
            :make-date-time-interval
431
            :make-day-time-duration
432
            :make-decimal
433
            :make-decimal
434
            :make-double
435
            :make-duration
436
            :make-file-url
437
            :make-float
438
            :make-g-day
439
            :make-g-month
440
            :make-g-month-day
441
            :make-g-year
442
            :make-g-year-month
443
            :make-http-url
444
            :make-integer
445
            :make-iri
446
            :make-mailto-url
447
            :make-plain-literal
448
            :make-plain-literal
449
            :make-quad
450
            :make-revision-interval
451
            :make-sha256-urn
452
            :make-string
453
            :make-temporal-location
454
            :make-time
455
            :make-time-interval
456
            :make-triple
457
            :make-unbound-variable
458
            :make-unsupported-typed-literal
459
            :make-url
460
            :make-uuid
461
            :make-year-month-duration
462
            :non-literal
463
            :non-literal-p
464
            :number
465
            :plain-literal
466
            :plain-literal-lexical-form
467
            :plain-literal-language-tag
468
            :plain-literal-p
469
            :quad
470
            :quad-graph
471
            :quad-object
472
            :quad-predicate
473
            :quad-subject
474
            :tquad
475
            :tquad-time
476
            :revision-interval
477
            :revision-interval-end
478
            :revision-interval-start
479
            :sha256-urn
480
            :sha256-urn-lexical-form
481
            :sha256-urn-p
482
            :string
483
            :string-p
484
            :temporal
485
            :temporal-location
486
            :temporal-location-timeline-location
487
            :temporal-timeline-location
488
            :temporal-zone
489
            :term
490
            :term-id
491
            :term-p
492
            :time
493
            :time-fraction
494
            :time-hour
495
            :time-interval
496
            :time-interval-end
497
            :time-interval-start
498
            :time-minute
499
            :time-second
500
            :time-day
501
            :time-month
502
            :time-p
503
            :time-year
504
            :time-universal-time
505
            :time-zone
506
            :zone-fragment
507
            :triple
508
            :triple-object
509
            :triple-predicate
510
            :triple-subject
511
            :typed-literal
512
            :typed-literal-p
513
            :unbound-variable
514
            :unbound-variable-name
515
            :unbound-variable-p
516
            :unsupported-typed-literal
517
            :unsupported-typed-literal-condition
518
            :unsupported-typed-literal-datatype-uri
519
            :unsupported-typed-literal-p
520
            :url
521
            :url-lexical-form
522
            :url-p
523
            :uuid
524
            :uuid-lexical-form
525
            :uuid-p
526
            :year-month-duration
527
            :year-month-duration-day
528
            :year-month-duration-fraction
529
            :year-month-duration-hour
530
            :year-month-duration-minute
531
            :year-month-duration-month
532
            :year-month-duration-month-location
533
            :year-month-duration-year
534
            :year-month-duration-second
535
            :year-month-duration-sign
536
            )
537
   (:documentation "The SPOCQ term model package.
538
 
539
    It exports the names for term classes and aperators for boxed terms."))
540
 
541
 
542
 (defpackage :org.datagraph.spocq.evaluation
543
   (:nicknames :spocq.e)
544
   (:use )
545
   (:import-from :spocq
546
                 :make-quad
547
                 :make-triple
548
                 :triple
549
                 :triple-object
550
                 :triple-predicate
551
                 :triple-subject
552
                 :quad
553
                 :quad-graph
554
                 :quad-object
555
                 :quad-predicate
556
                 :quad-subject)
557
   (:export "+"  "!"  "-"  "||"  "&&"  "="  "!="  "<"  ">"  "<="  ">="  "*"  "/"
558
            :*dydra-cli-path*
559
            :*response-limit*
560
            :*response-offset*
561
            :abort-error
562
            :abs
563
            :account
564
            :add-graph
565
            :aggregate
566
            :aggregate-projection-error
567
            :api-authorization-error
568
            :authorization-error
569
            :argument-type-error
570
            :ask
571
            :cached-class
572
            :cached-object
573
            :cached-persistent-class
574
            :cached-persistent-object
575
            :call-in-transaction
576
            :call-with-open-repository
577
            :call-with-new-task
578
            :call-with-task
579
            :call-with-task-environment
580
            :clear-graph
581
            :compatible?
582
            :compilation-error
583
            :constraint-violation
584
            :base-dimensions
585
            :bgp
586
            :binary-exists
587
            :bindings
588
            :blank-node-p
589
            :blank-p
590
            :bnode
591
            :boolean
592
            :boolean-p
593
            :bound
594
            :cached-persistent-class
595
            :cardinality
596
            :ceil
597
            :class-cache
598
            :clear
599
            :compilation-error
600
            :constantp
601
            :construct
602
            :contains
603
            :contexts
604
            :copy-graph
605
            :count
606
            :create-graph
607
            :data-type
608
            :date
609
            :date-time
610
            :day
611
            :day-time-duration
612
            :decimal
613
            :delete-data
614
            :describe
615
            :described-object
616
            :diff
617
            :dimensions
618
            :distinct
619
            :double
620
            :drop-graph
621
            :duration
622
            :elementary-select
623
            :encode-for-uri
624
            :equal
625
            :error
626
            :eval
627
            :exists
628
            :extend
629
            :filter
630
            :float
631
            :floor
632
            :funcall  ;; isolated from cl:funcall
633
            :g-day
634
            :g-day-day
635
            :g-month
636
            :g-month-day
637
            :g-year
638
            :g-year-month
639
            :graph
640
            :graph-found-error
641
            :graph-management-error
642
            :graph-not-found-error
643
            :greaterp
644
            :group
645
            :hours
646
            :import-limit
647
            :identity
648
            :in
649
            :insert-data
650
            :instance-identifier
651
            :instance-state
652
            :instance-store-repository-id
653
            :instance-store-revision
654
            :instance-store-graph
655
            :integer
656
            :invalid-graph-error
657
            :iri
658
            :iri-equal
659
            :iri-lexical-form
660
            :iri-p
661
            :join
662
            :join-dimensions
663
            :lang
664
            :lang-matches
665
            :lcase
666
            :leftjoin
667
            :lessp
668
            :library-resource-not-found
669
            :literalp
670
            :load-graph
671
            :make-literal
672
            :make-quad
673
            :make-sha1-digest
674
            :make-triple
675
            :max
676
            :md5
677
            :merge
678
            :message-syntax-error
679
            :min
680
            :minus
681
            :minutes
682
            :modify
683
            :month
684
            :move-graph
685
            :multiset
686
            :now
687
            :null-exists
688
            :numeric-p
689
            :objects
690
            :order
691
            :persistent-class
692
            :persistent-object
693
            :predicates
694
            :project
695
            :projection-dimensions
696
            :quad
697
            :quad-graph
698
            :quad-object
699
            :quad-predicate
700
            :quad-subject
701
            :quota-error
702
            :rand
703
            :redefined-variable-error
704
            :reduced
705
            :reference-dimensions
706
            :regex
707
            :replace
708
            :report-condition
709
            :repository
710
            :repository-clear-graph
711
            :repository-id
712
            :repository-identifier
713
            :repository-is-revisioned
714
            :repository-not-found-error
715
            :repository-revision-id
716
            :repository-revision-write-date
717
            :repository-statement-count
718
            :repository-statistics
719
            :repository-write-date
720
            :request-error
721
            :resource-error
722
            :resource-found-error
723
            :resource-not-found-error
724
            :revision
725
            :revision-invalid-error
726
            :revision-join
727
            :revision-not-found-error
728
            :round
729
            :run-program
730
            :run-program-exit-code
731
            :run-program-output
732
            :run-sparql
733
            :runtime-error
734
            :same-term
735
            :seconds
736
            :select
737
            :sequence-uri
738
            :service
739
            :service-join
740
            :sha1
741
            :sha224
742
            :sha256
743
            :sha384
744
            :sha512
745
            :slice
746
            :str
747
            :strafter
748
            :strbefore
749
            :stream-aggregate
750
            :stream-ask
751
            :stream-bindings
752
            :stream-construct
753
            :stream-describe
754
            :stream-diff
755
            :stream-distinct
756
            :stream-elementary-select
757
            :stream-exists
758
            :stream-extend
759
            :stream-filter
760
            :stream-group
761
            :stream-join
762
            :stream-leftjoin
763
            :stream-minus
764
            :stream-modify
765
            :stream-order
766
            :stream-project
767
            :stream-slice
768
            :string
769
            :string-concatenate
770
            :string-ends
771
            :string-length
772
            :string-starts
773
            :subjects
774
            :substring
775
            :substring-after
776
            :substring-before
777
            :task-authorization-error
778
            :table
779
            :temporal-attribute
780
            :then
781
            :time
782
            :time-zone
783
            :timeout-error
784
            :to-list
785
            :triple
786
            :triple-object
787
            :triple-predicate
788
            :triple-subject
789
            :tz
790
            :ucase
791
            :unary-exists
792
            :unary-minus
793
            :unary-plus
794
            :unix-now
795
            :unbound-prefix-error
796
            :undefined-variable-error
797
            :union
798
            :update
799
            :uuid
800
            :uuid-string
801
            :version-constraint
802
            :view-not-found-error
803
            :with-join-scope
804
            :with-task
805
            :with-open-repository
806
            :with-reference-dimensions
807
            :with-repository
808
            :with-task-environment
809
            :with-transaction
810
            :with-version-constraint
811
            :year
812
            :year-month-duration)
813
   (:documentation
814
     "This package comprises the names for SPARQL evaluation operators.
815
  These are the base operators to which spocq.a macro forms expand."))
816
 
817
 (defpackage :org.datagraph.spocq.implementation
818
   (:use :common-lisp
819
         :de.setf.utility
820
         :de.setf.utility.codecs
821
         #+sbcl :sb-cltl2)
822
   (:nicknames :spocq.i)
823
   ;; import the outpot operators to support delegating writer streams
824
   #+:amqp
825
   (:import-from :amqp.u
826
                 #:stream-file-position)
827
   (:import-from :spocq.e
828
                 :*dydra-cli-path*
829
                 :account
830
                 :cached-class
831
                 :cached-object
832
                 :cached-persistent-class
833
                 :cached-persistent-object
834
                 :call-with-new-task
835
                 :call-with-task
836
                 :call-with-task-environment
837
                 :class-cache
838
                 :import-limit
839
                 :instance-identifier
840
                 :instance-state
841
                 :instance-store-repository-id
842
                 :instance-store-revision
843
                 :instance-store-graph
844
                 :iri
845
                 :iri-lexical-form
846
                 :iri-equal
847
                 :make-quad
848
                 :make-sha1-digest
849
                 :make-triple
850
                 :persistent-class
851
                 :persistent-object
852
                 :quad
853
                 :quad-graph
854
                 :quad-object
855
                 :quad-predicate
856
                 :quad-subject
857
                 :repository
858
                 :repository-clear-graph
859
                 :repository-id
860
                 :repository-identifier
861
                 :repository-revision-id
862
                 :repository-revision-write-date
863
                 :repository-statement-count
864
                 :repository-statistics
865
                 :repository-write-date
866
                 :revision
867
                 :run-sparql
868
                 :triple
869
                 :triple-object
870
                 :triple-predicate
871
                 :triple-subject
872
                 :view-not-found-error
873
                 :with-open-repository
874
                 :with-repository
875
                 :with-task
876
                 :with-task-environment
877
                 :with-transaction)
878
 
879
   (:export "IS-Var"
880
            :%copy-quad
881
            :%copy-tquad
882
            :%copy-tsiquad
883
            :%copy-tsoquad
884
            :%copy-tstquad
885
            :%print-quad
886
            :%quad-context
887
            :%quad-object
888
            :%quad-predicate
889
            :%quad-subject
890
            :%tquad-context
891
            :%tquad-object
892
            :%tquad-predicate
893
            :%tquad-subject
894
            :%tquad-time
895
            :%tsiquad-context
896
            :%tsiquad-object
897
            :%tsiquad-predicate
898
            :%tsiquad-subject
899
            :%tsiquad-uuid
900
            :%tsoquad-context
901
            :%tsoquad-object
902
            :%tsoquad-ordinal
903
            :%tsoquad-predicate
904
            :%tsoquad-subject
905
            :%tstquad-context
906
            :%tstquad-object
907
            :%tstquad-predicate
908
            :%tstquad-subject
909
            :%tstquad-time
910
            :*accounting-destination*
911
            :*agent*
912
            :*allow-blank-node-verb*
913
            :*base-iri*
914
            :*blank-node-package*
915
            :*build-revision*
916
            :*build-timestamp*
917
            :*catalog-root-pathname*
918
            :*configuration-pathname*
919
            :*construct-dimensions*
920
            :*dataset-graphs*
921
            :*dataset-source*
922
            :*disabled-repositories*
923
            :*dydra-cli-path*
924
            :*error-condition-channel*
925
            :*host-name*
926
            :*import-root-pathname*
927
            :*iri-package-names*
928
            :*iri-packages*
929
            :*management-thread*
930
            :*management-thread-interval*
931
            :*metadata*
932
            :*nondistinguished-marker-type*
933
            :*output-format.jsonld*
934
            :*pidfile-pathname*
935
            :*query*
936
            :*query-parser*
937
            :*rdf-string-length-maximum*
938
            :*repository*
939
            :*repository-id*
940
            :*request-content-type*
941
            :*response-content-type*
942
            :*response-header-types*
943
            :*run-state*
944
            :*service-name*
945
            :*service-request-count-limit*
946
            :*site-name*
947
            :*start-timestamp*
948
            :*store->spocq-term-registry*
949
            :*spocq->store-term-registry*
950
            :*syntax-package*
951
            :*task*
952
            :*task-id*
953
            :*task-indices*
954
            :*transaction*
955
            :*variable-package*
956
            :*variables*
957
            :*version*
958
            :*view-identifier*
959
            :access-authorized-p
960
            :account
961
            :agent-identifier
962
            :and-form-p
963
            :api-key
964
            :ask-form-p
965
            :base-iri
966
            :bgp-form-p
967
            :blank-node-prefix
968
            :blank-node-skolemize
969
            :cached-class
970
            :cached-object
971
            :cached-persistent-class
972
            :cached-persistent-object
973
            :call-with-new-task
974
            :call-with-task
975
            :call-with-task-environment
976
            :channel-get
977
            :channel-get-all
978
            :channel-put
979
            :class-cache
980
            :complete-output
981
            :compute-instance-model
982
            :compute-repository-id
983
            :compute-repository-revision
984
            :COMPUTE-REVISION-PREDICATE
985
            :compute-timemap
986
            :conditional-delete-file
987
            :configuration-parameter
988
            :cons-blank-node
989
            :cons-variable
990
            :constrain-resources
991
            :constrain-string-length
992
            :construct-form-p
993
            :construct-iri
994
            :construct-prefixed-name
995
            :construct-term
996
            :construct-uri-term
997
            :context
998
            :create-repository
999
            :default-context-term
1000
            :default-context-term-number-p
1001
            :delete-repository
1002
            :delete-uuid-p
1003
            :delete-view-definition
1004
            :describe-form
1005
            :describe-form-p
1006
            :describe-object-depth
1007
            :describe-sibject-depth
1008
            :distinguished-variable-p
1009
            :enable-interrupt
1010
            :exit-lisp
1011
            :expression-pattern-statements
1012
            :expression-projected-variables
1013
            :expression-triples
1014
            :expression-variables
1015
            :exprlist-form-p
1016
            :extend-form-p
1017
            :federation-mode
1018
            :filter-form-p
1019
            :filter-solution-field
1020
            :find-builtin-operator
1021
            :format-sparql-sse
1022
            :format-sparql-sse-expression
1023
            :format-sparql-sse-order
1024
            :format-sparql-sse-term
1025
            :generate-accounting-note
1026
            :get-registry
1027
            :get-timeline-location
1028
            :getarg
1029
            :graph
1030
            :graph-form-p
1031
            :identified-object
1032
            :import-limit
1033
            :initialize-spocq
1034
            :input-eof?
1035
            :input-reference
1036
            :insert-uuid-p
1037
            :instance-identifier
1038
            :instance-repository
1039
            :instance-state
1040
            :instance-store-graph
1041
            :instance-store-repository-id
1042
            :instance-store-revision
1043
            :intern-blank-node
1044
            :intern-iri
1045
            :intern-literal
1046
            :intern-plain-literal
1047
            :intern-spocq-term
1048
            :intern-uuid
1049
            :internal-view-repository
1050
            :iri
1051
            :iri-equal
1052
            :iri-lexical-form
1053
            :iri-p
1054
            :is-local-host
1055
            :is-STRING_LITERAL1
1056
            :is-STRING_LITERAL2
1057
            :is-STRING_LITERAL_LONG1
1058
            :is-STRING_LITERAL_LONG2
1059
            :is-arithmetic_aggregate_operator
1060
            :is-blank_node_label
1061
            :is-decimal
1062
            :is-decimal-string
1063
            :is-decimal_negative
1064
            :is-decimal_positive
1065
            :is-double
1066
            :is-double_negative
1067
            :is-double_positive
1068
            :is-file-url-namestring
1069
            :is-float-string
1070
            :is-http-url-namestring
1071
            :is-integer
1072
            :is-integer_negative
1073
            :is-integer_positive
1074
            :is-intger-string
1075
            :is-iri_namestring
1076
            :is-langtag
1077
            :is-pn_local
1078
            :is-pname_ln
1079
            :is-pname_ns
1080
            :is-uuid-string
1081
            :is-varname
1082
            :join-form-p
1083
            :json-member-value
1084
            :leftjoin-form-p
1085
            :library-path
1086
            :lmdb-quad-repository
1087
            :LMDB-BITEMPORAL-REPOSITORY
1088
            :lmdb-replicable-repository
1089
            :lmdb-repository
1090
            :lmdb-repository-revision
1091
            :lmdb-revisioned-repository
1092
            :lmdb-revisioned-revision
1093
            :LMDB-TEMPORAL-REPOSITORY
1094
            :lmdb-time-series-bitemporal-repository
1095
            :lmdb-time-series-quad-repository
1096
            :lmdb-time-series-temporal-repository
1097
            :lmdb-transaction
1098
            :lmdb-transaction-revision
1099
            :log-debug
1100
            :log-error
1101
            :log-info
1102
            :log-memory-usage
1103
            :log-notice
1104
            :log-stacktrace
1105
            :log-trace
1106
            :log-warn
1107
            :lookup-object-term-number
1108
            :make-and-property-path
1109
            :make-bounded-property-path
1110
            :make-inverted-property-path
1111
            :make-list-solution-field
1112
            :make-negated-property-path
1113
            :make-or-property-path
1114
            :make-plain-literal
1115
            :make-pool
1116
            :make-sequence-property-path
1117
            :make-sha1-digest
1118
            :make-uuid-vector
1119
            :make-v1-uuid-array
1120
            :make-v1-uuid-string
1121
            :make-view
1122
            :make-zero-length-property-path
1123
            :management-idle-handler
1124
            :map-registry
1125
            :map-tree
1126
            :materialized-repository-view
1127
            :maybe-exit-on-error
1128
            :memory-limit
1129
            :minus-form-p
1130
            :named-contexts-term
1131
            :namespace-bindings
1132
            :next-blank-node-index
1133
            :next-sequence-index
1134
            :next-variable-index
1135
            :not-form-p
1136
            :object
1137
            :object-term-number
1138
            :operation-read-only-p
1139
            :or-form-p
1140
            :parse-file-url-host-and-path
1141
            :parse-nquads
1142
            :parse-sparql
1143
            :parse-uri-scheme
1144
            :parse-view
1145
            :parse-view-identifier
1146
            :persistent-class
1147
            :persistent-object
1148
            :pipe-task
1149
            :position-uuid-vector
1150
            :position-uuid-vector-next
1151
            :position-uuid-vector-previous
1152
            :predicate
1153
            :prefix-namespace
1154
            :print-error-conditions
1155
            :project-form-p
1156
            :quad
1157
            :quad-form-p
1158
            :quad-graph
1159
            :quad-object
1160
            :quad-predicate
1161
            :quad-subject
1162
            :query
1163
            :query-graphs
1164
            :query-id
1165
            :query-patterns
1166
            :query-result-generator
1167
            :query-sparql-expression
1168
            :query-sse-expression
1169
            :query-threads
1170
            :query-transaction
1171
            :query-user-id
1172
            :query-variables
1173
            :rdfcache-lmdb-repository
1174
            :read-date-time ;; make #@ available to using packages                                                                   
1175
            :read-revision-identifier ;; make #! available to using packages                                                         
1176
            :read-view-definition
1177
            :rem-registry
1178
            :repository
1179
            :repository-clear-graph
1180
            :repository-hdt-pathname
1181
            :repository-id
1182
            :repository-identifier
1183
            :repository-is-revisioned
1184
            :repository-lmdb-repository
1185
            :repository-lookup-object-term-number
1186
            :repository-object-term-number
1187
            :repository-pathname
1188
            :repository-pattern-match-p
1189
            :repository-revision-id
1190
            :repository-service-description
1191
            :repository-source-repository
1192
            :repository-statement-count
1193
            :repository-statistics
1194
            :repository-term-is-blank-node
1195
            :repository-term-is-iri
1196
            :repository-term-number-lang
1197
            :repository-term-number-object
1198
            :repository-term-number-object-list
1199
            :repository-view
1200
            :repository-write-date
1201
            :request-argument
1202
            :response-limit
1203
            :response-offset
1204
            :revision
1205
            :revision-after-p
1206
            :revision-before-p
1207
            :revision-coincident-p
1208
            :revision-id
1209
            :revision-ordinal
1210
            :REVISION-MAX-REVISION-ORDINAL
1211
            :revision-set-end
1212
            :revision-set-start
1213
            :revision-signature
1214
            :revision-transition-next
1215
            :revision-transition-previous
1216
            :revision-uri
1217
            :run-processing-threads
1218
            :run-program
1219
            :run-program-close
1220
            :run-program-exit-code
1221
            :run-program-input
1222
            :run-program-output
1223
            :run-program-wait
1224
            :run-sparql
1225
            :run-toplevel-loop
1226
            :select-form-p
1227
            :set-pragma
1228
            :set-uuid-state
1229
            :sigterm-handler
1230
            :solution-field-solutions
1231
            :solution-limit
1232
            :sparql-query-description
1233
            :statement-object
1234
            :statement-predicate
1235
            :statement-subject
1236
            :statement-terms
1237
            :stop-threads
1238
            :string-to-uuid
1239
            :string-to-uuid-vector
1240
            :subject
1241
            :sum-form-p
1242
            :system-agent
1243
            :task
1244
            :task-base-iri
1245
            :task-property
1246
            :task-repository
1247
            :task-revision
1248
            :temporal-timeline-location
1249
            :term-id
1250
            :term-lexical-form
1251
            :term-number-object
1252
            :time-limit
1253
            :timeline-location-date
1254
            :timeline-location-date-time
1255
            :timeline-location-day-time-duration
1256
            :timeline-location-time
1257
            :tmp-export-pathname
1258
            :tmp-import-pathname
1259
            :tokenize-sparql
1260
            :tquad
1261
            :transaction-revision
1262
            :transaction-timestamp
1263
            :triple-form-p
1264
            :tsiquad
1265
            :tsoquad
1266
            :tstquad
1267
            :undistinguished-variable
1268
            :union-form-p
1269
            :universal-time-date-time
1270
            :untokenize-sparql
1271
            :update-dataset-graphs
1272
            :uuid-vector
1273
            :uuid-vector-p
1274
            :v1-uuid-timestamp
1275
            :validate-storage-class
1276
            :variable-p
1277
            :view-dimensions
1278
            :view-identifier
1279
            :view-not-found-error
1280
            :view-query
1281
            :wild-quad-pattern-p
1282
            :with-command-line-configuration
1283
            :with-new-task
1284
            :with-open-repository
1285
            :with-open-transaction
1286
            :with-repository
1287
            :with-task
1288
            :with-task-environment
1289
            :with-transaction
1290
            :write-pid-file
1291
            :write-view-definition)
1292
   (:documentation
1293
    "The SPOCQ implementation package.
1294
 
1295
     It imports operators from the run-time (spocq.e), in particular for streams.
1296
     It also exports various operators and variables for use by other
1297
     implementation packages, such as the sparql parsers, the server and the lmdb
1298
     interface."))
1299
 
1300
 
1301
 ;; make these available for use in format control strings
1302
 (import '(spocq.i::format-sparql-sse
1303
           spocq.i::format-sparql-sse-term
1304
           spocq.i::format-sparql-sse-expression
1305
           spocq.i::format-sparql-sse-order)
1306
         :cl-user)
1307
 
1308
 (defpackage :org.datagraph.presentation-codec
1309
   (:nicknames :pre-codec)
1310
   (:documentation "The _home_ package for names of accessors to be active
1311
    in the resource presentation interface"))
1312
 
1313
 (defpackage :org.datagraph.store-codec
1314
   ;(:nicknames :per-codec)
1315
   (:documentation "The _home_ package for names of accessors to be active
1316
    in the resource persistence interface"))
1317
 
1318
 
1319
 (defpackage :spocq.s (:use )
1320
   (:documentation "The home package for constant SPARQL terminals."))
1321
 
1322
 (defpackage "?" (:use)
1323
   (:documentation "The package for query variable names.")
1324
   (:export "boolean"))
1325
 
1326
 ;;; support loading into cores with alternative naming
1327
 ;;; (rename-package :bgp :bgp (list :org.datagraph.spocq.bgp))
1328
 (defpackage :bgp
1329
   (:use )
1330
   (:nicknames :org.datagraph.spocq.bgp)
1331
   (:export :aggregate
1332
            :and
1333
            :and-sum-left
1334
            :ask
1335
            :bgp
1336
            :bindings
1337
            :construct
1338
            :describe
1339
            :diff
1340
            :distinct
1341
            :extend
1342
            :filter
1343
            :group
1344
            :index-match
1345
            :not
1346
            :null
1347
            :or
1348
            :order
1349
            :project
1350
            :quad
1351
            :quad-call
1352
            :quad-entail
1353
            :quad-path
1354
            :slice
1355
            :sum
1356
            :union
1357
            :xor))
1358
 
1359
 (defpackage :org.datagraph.spocq.output
1360
   (:nicknames :spocq.output)
1361
   (:use ))
1362
 
1363
 (loop for symbol being each external-symbol in :spocq.a
1364
   do (import symbol :spocq.output) (export symbol :spocq.output))
1365
 (loop for symbol being each external-symbol in :spocq.e
1366
   unless (find-symbol (string symbol) :spocq.output)
1367
   do (import symbol :spocq.output) (export symbol :spocq.output))
1368
 
1369
 ;;; eliminate dependency on de.setf.resource
1370
 
1371
 (unless (find-package :de.setf.resource)
1372
   (defpackage :de.setf.resource
1373
     (:use )
1374
     (:export :map-statments*
1375
              :add-statemnt*)))
1376
 
1377
 ;;; lmdb-based store
1378
 
1379
 (defpackage :org.datagraph.rdf.lmdb.implementation
1380
   (:nicknames :rlmdb.i)
1381
   (:use :common-lisp
1382
         :de.setf.utility
1383
         :de.setf.utility.codecs
1384
         #+sbcl :sb-cltl2
1385
         :spocq.i)
1386
   )
1387
 
1388
 (defpackage :org.datagraph.rdf.lmdb
1389
   (:nicknames :rlmdb :shard)
1390
   (:use )
1391
   (:import-from :lmdb
1392
                 :transaction-flags
1393
                 )
1394
   (:import-from :spocq.i
1395
                 :is-uuid-string
1396
                 :temporal-timeline-location
1397
                 :timeline-location-date-time
1398
                 :timeline-location-day-time-duration
1399
                 :graph
1400
                 :object
1401
                 :predicate
1402
                 :subject
1403
                 )
1404
   (:import-from :spocq
1405
                 :date
1406
                 :date-time
1407
                 :duration
1408
                 :make-uuid
1409
                 :make-temporal-location
1410
                 :temporal-location
1411
                 :uuid)
1412
   (:import-from :rlmdb.i
1413
                 rlmdb.i::+quad-database-names+
1414
                 rlmdb.i::%shard-term-type
1415
                 rlmdb.i::%shard-term-options
1416
                 rlmdb.i::%shard-term-data
1417
                 rlmdb.i::%shard-term-subtype-node-subtype
1418
                 rlmdb.i::%shard-term-data-node-genid
1419
                 rlmdb.i::%shard-term-data-node-gensym-prefix
1420
                 rlmdb.i::%shard-term-data-node-gensym-suffix
1421
                 rlmdb.i::%shard-term-data-node-label
1422
                 rlmdb.i::%shard-term-data-node-label-offset
1423
                 rlmdb.i::%shard-term-data-uri-string-offset
1424
                 rlmdb.i::%shard-term-subtype-string-subtype
1425
                 rlmdb.i::%shard-term-data-string-value-offset
1426
                 rlmdb.i::%shard-term-data-string-language-offset
1427
                 rlmdb.i::%shard-term-data-literal-value-offset
1428
                 rlmdb.i::%shard-term-data-literal-datatype-offset
1429
                 rlmdb.i::%shard-term-subtype-decimal-subtype
1430
                 rlmdb.i::%shard-term-data-decimal-integer
1431
                 rlmdb.i::%shard-term-data-decimal-fraction
1432
                 rlmdb.i::%shard-term-data-boolean
1433
                 rlmdb.i::%shard-term-data-integer
1434
                 rlmdb.i::%shard-term-data-double
1435
                 rlmdb.i::%shard-term-data-float
1436
                 rlmdb.i::%shard-term-data-time
1437
                 rlmdb.i::bitemporal-revision-log-record-timestamp-valid
1438
                 rlmdb.i::database
1439
                 rlmdb.i::foreign-nstring-to-lisp
1440
                 rlmdb.i::quad
1441
                 rlmdb.i::subject
1442
                 rlmdb.i::predicate
1443
                 rlmdb.i::object
1444
                 rlmdb.i::context
1445
                 rlmdb.i::get-metadata-property
1446
                 rlmdb.i::is-revisioned
1447
                 rlmdb.i::make-revision-record
1448
                 rlmdb.i::make-metadata-record
1449
                 rlmdb.i::make-revision-log-record
1450
                 rlmdb.i::metadata-record-class
1451
                 rlmdb.i::metadata-record-ordinal
1452
                 rlmdb.i::metadata-record-timestamp
1453
                 rlmdb.i::metadata-record-uuid
1454
                 rlmdb.i::put-metadata-property
1455
                 rlmdb.i::repository-environment
1456
                 rlmdb.i::repository-temporal-predicates
1457
                 rlmdb.i::repository-time-series-predicates
1458
                 rlmdb.i::revision-log-record-flags
1459
                 rlmdb.i::revision-log-record-inserted-count
1460
                 rlmdb.i::revision-log-record-ordinal
1461
                 rlmdb.i::revision-log-record-removed-count
1462
                 rlmdb.i::revision-log-record-timestamp
1463
                 rlmdb.i::revision-log-record-timestamp-begun
1464
                 rlmdb.i::revision-log-record-uuid
1465
                 rlmdb.i::revision-log-record-version
1466
                 rlmdb.i::revision-log-record-visible-count
1467
                 rlmdb.i::revision-record-ordinal
1468
                 rlmdb.i::revision-record-timestamp
1469
                 rlmdb.i::revision-record-timestamp-begun
1470
                 rlmdb.i::revision-record-uuid
1471
                 rlmdb.i::shard-term
1472
                 rlmdb.i::shard-term-fetch
1473
                 rlmdb.i::shard-term-node
1474
                 rlmdb.i::term-id
1475
                 rlmdb.i::term-record-value
1476
                 rlmdb.i::transaction-repository)
1477
   (:export :+quad-database-names+
1478
            :*environment-class*
1479
            :*mapsize*
1480
            :*maxdbs*
1481
            :*max-readers*
1482
            :*repository-class*
1483
            :*all-context-number*
1484
            :*default-context-number*
1485
            :*named-context-number*
1486
            :*wildcard-term-number*
1487
            :%shard-term-type
1488
            :%shard-term-data
1489
            :%shard-term-options
1490
            :%shard-term-subtype-node-subtype
1491
            :%shard-term-data-node-genid
1492
            :%shard-term-data-node-gensym-prefix
1493
            :%shard-term-data-node-gensym-suffix
1494
            :%shard-term-data-node-label
1495
            :%shard-term-data-node-label-offset
1496
            :%shard-term-data-uri-string-offset
1497
            :%shard-term-subtype-string-subtype
1498
            :%shard-term-data-string-value-offset
1499
            :%shard-term-data-string-language-offset
1500
            :%shard-term-data-literal-value-offset
1501
            :%shard-term-data-literal-datatype-offset
1502
            :%shard-term-subtype-decimal-subtype
1503
            :%shard-term-data-decimal-integer
1504
            :%shard-term-data-decimal-fraction
1505
            :%shard-term-data-boolean
1506
            :%shard-term-data-integer
1507
            :%shard-term-data-double
1508
            :%shard-term-data-float
1509
            :%shard-term-data-time
1510
            :bitemporal-repository
1511
            :bitemporal-revision
1512
            :bitemporal-revision-log-record
1513
            :bitemporal-revision-log-record-timestamp-valid
1514
            :bitemporal-time-series-repository
1515
            :bitemporal-time-series-transaction
1516
            :bitemporal-transaction
1517
            :close-repository
1518
            :clear-repository
1519
            :context
1520
            :database
1521
            :date
1522
            :date-time
1523
            :decode-metadata
1524
            :diachronic-repository
1525
            :duration
1526
            :encode-metadata
1527
            :enter-transaction
1528
            :environment
1529
            :find-first-ordinal
1530
            :find-last-ordinal
1531
            :find-revision-info
1532
            :find-revision-ordinal
1533
            :find-revision-ordinal-interval
1534
            :find-revision-record
1535
            :find-revision-timestamp
1536
            :find-revision-uuid
1537
            :foreign-nstring-to-lisp
1538
            :get-metadata
1539
            :get-metadata-class
1540
            :get-metadata-ordinal
1541
            :get-metadata-record
1542
            :get-metadata-property
1543
            :get-metadata-storage-class
1544
            :get-metadata-timestamp
1545
            :get-metadata-uuid
1546
            :get-revision-list
1547
            :get-revision-log-record
1548
            :get-revision-ordinal
1549
            :get-revision-ordinals
1550
            :get-revision-record
1551
            :get-revision-records
1552
            :get-revision-timestamp
1553
            :get-revision-timestamps
1554
            :get-revision-uuid
1555
            :get-revision-uuids
1556
            :get-revision-records
1557
            :get-revision-log-records
1558
            :graph
1559
            :graph-term-number
1560
            :index-database
1561
            :intern-field
1562
            :intern-term
1563
            :intern-property-path
1564
            :is-revisioned
1565
            :is-uuid-string
1566
            :is-valid-revision-record
1567
            :lmdb-transaction
1568
            :map-bitemporal-statements
1569
            :map-context-numbers
1570
            :map-object-numbers
1571
            :map-predicate-numbers
1572
            :map-repository-events
1573
            :map-repository-statements
1574
            :map-repository-statements-filtered
1575
            :map-subject-numbers
1576
            :make-uuid
1577
            :meta-database
1578
            :make-temporal-location
1579
            :metadata-record
1580
            :metadata-record-class
1581
            :metadata-record-ordinal
1582
            :metadata-record-timestamp
1583
            :metadata-record-uuid
1584
            :object
1585
            :open-environment
1586
            :open-environment-databases
1587
            :open-repository
1588
            :parse-compound-revision-designator
1589
            :predicate
1590
            :put-metadata-class
1591
            :put-metadata-ordinal
1592
            :put-metadata-record
1593
            :put-metadata-property
1594
            :put-metadata
1595
            :put-metadata-storage-class
1596
            :put-metadata-timestamp
1597
            :put-metadata-uuid
1598
            :put-repository-metadata
1599
            :put-revision-record
1600
            :put-revision-ordinal
1601
            :quad
1602
            :quad-repository
1603
            :quad-transaction
1604
            :rdfcache-quad-repository
1605
            :rdfcache-revisioned-transaction
1606
            :rdfcache-quad-transaction
1607
            :rdfcache-transaction
1608
            :replicable-index-database
1609
            :replicable-repository
1610
            :replicable-repository-update-field
1611
            :repository
1612
            :repository-environment
1613
            :repository-database-names
1614
            :repository-databases
1615
            :repository-insert-field
1616
            :repository-insert-graph
1617
            :repository-insert-statement
1618
            :repository-metadata
1619
            :repository-metadata-ordinal
1620
            :repository-metadata-record
1621
            :repository-metadata-timestamp
1622
            :repository-metadata-uuid
1623
            :repository-mutate-field
1624
            :repository-temporal-predicate-p
1625
            :repository-temporal-predicate-id-p
1626
            :repository-temporal-predicates
1627
            :repository-time-series-predicate-p
1628
            :repository-time-series-predicate-id-p
1629
            :repository-time-series-predicates
1630
            :repository-write-graph
1631
            :replicable-database
1632
            :replicable-repository
1633
            :replicable-transaction
1634
            :revision-information
1635
            :revision-graph-database
1636
            :revision-ordinal-database
1637
            :revision-log-record
1638
            :revision-log-record-flags
1639
            :revision-log-record-inserted-count
1640
            :revision-log-record-ordinal
1641
            :revision-log-record-removed-count
1642
            :revision-log-record-timestamp
1643
            :revision-log-record-timestamp-begun
1644
            :revision-log-record-uuid
1645
            :revision-log-record-version
1646
            :revision-log-record-visible-count
1647
            :revision-metadata
1648
            :revision-record
1649
            :revision-record-begun-date-time
1650
            :revision-record-database
1651
            :revision-record-date-time
1652
            :revision-record-ordinal
1653
            :revision-record-timestamp
1654
            :revision-record-timestamp-begun
1655
            :revision-record-timestamp-valid
1656
            :revision-record-uuid
1657
            :revision-record-valid-date-time
1658
            :revision-records
1659
            :revision-sequence-database
1660
            :revisioned-rdfcache-quad-repository
1661
            :revisioned-repository
1662
            :revisioned-transaction
1663
            :shard-string-fetch
1664
            :shard-term-fetch
1665
            :shard-term-node
1666
            :string-database
1667
            :subject
1668
            :synchronic-repository
1669
            :temporal-index-database
1670
            :temporal-location
1671
            :temporal-repository
1672
            :temporal-timeline-location
1673
            :temporal-transaction
1674
            :term-id
1675
            :term-compare
1676
            :term-datatype-id
1677
            :term-elements
1678
            :term-iri-namestring
1679
            :term-is-blank-node
1680
            :term-is-iri
1681
            :term-is-literal
1682
            :term-language
1683
            :term-string
1684
            :term-timeline-location
1685
            :term-timestamp
1686
            :term-type
1687
            :term-number-value
1688
            :term-record-value
1689
            :term-value
1690
            :timeline-location-date-time
1691
            :timeline-location-day-time-duration
1692
            :time-series-bitemporal-repository
1693
            :time-series-quad-repository
1694
            :time-series-predicate-p
1695
            :time-series-predicate-id-p
1696
            :time-series-repository
1697
            :time-series-temporal-repository
1698
            :time-series-repository
1699
            :time-series-transaction
1700
            :transaction
1701
            :transaction-default-context-term-id
1702
            :transaction-end
1703
            :transaction-flags
1704
            :transaction-start
1705
            :transaction-timeout
1706
            :transaction-uuid
1707
            :uuid
1708
            :value-term-number
1709
            :with-open-repository
1710
            :with-string-database
1711
            )
1712
   )
1713
 ;;; extensions
1714
 
1715
 ;;; support loading into cores with alternative naming
1716
 ;;; (rename-package "http://dydra.com/sparql-functions#" "http://dydra.com/sparql-functions#" '("dydra" "http://dydra.com#"))
1717
 (defpackage "http://dydra.com/sparql-functions#"
1718
   (:nicknames "dydra" "http://dydra.com#")
1719
   (:use )
1720
   (:export "account-name"
1721
            "agent-id"
1722
            "agent-location"
1723
            "build-date-time"
1724
            "build-revision"
1725
            "build-timestamp"
1726
            "client-request-id"
1727
            "contains"
1728
            "date-time-timestamp"
1729
            "documentation"
1730
            "format"
1731
            "event-ordinal"
1732
            "event-timestamp"
1733
            "event-uuid"
1734
            "round"
1735
            "st_distance"
1736
            "st_point"
1737
            "st_x"
1738
            "st_y"
1739
            "iri-authority"
1740
            "iri-fragment"
1741
            "iri-host"
1742
            "iri-path"
1743
            "iri-password"
1744
            "iri-port"
1745
            "iri-query"
1746
            "iri-scheme"
1747
            "iri-user"
1748
            "iri-userinfo"
1749
            "query-uri"
1750
            "request-id"
1751
            "repository-name"
1752
            "repository-url"
1753
            "repository-revision-url"
1754
            "repository-revision-count"
1755
            "resolve-revision"
1756
            "revision"
1757
            "revision-date-time"
1758
            "revision-ordinal"
1759
            "revision-commit-timestamp"
1760
            "revision-begin-timestamp"
1761
            "revision-uri"
1762
            "revision-uuid"
1763
            "revision-uuid-node"
1764
            "revision-uuid-timestamp"
1765
            "revision-parent-uri"
1766
            "revision-predecessor"
1767
            "revision-successor"
1768
            "revision-signature"
1769
            "rewrite-mode"
1770
            "statement-id"
1771
            "statement-graph"
1772
            "statement-object"
1773
            "statement-predicate"
1774
            "statement-subject"
1775
            "term-number"
1776
            "timestamp-date-time"
1777
            "transaction-uri"
1778
            "transaction-uuid"
1779
            "urn-uuid-string"
1780
            "user-tag"
1781
            "version"
1782
            "version-end"
1783
            "version-end-date-time"
1784
            "version-end-ordinal"
1785
            "version-end-uuid"
1786
            "version-start"
1787
            "version-start-date-time"
1788
            "version-start-ordinal"
1789
            "version-start-uuid")
1790
   (:documentation "The home package for the names for extension functions"))
1791
 
1792
 (defpackage "http://www.w3.org/2005/xpath-functions#"
1793
   (:nicknames "xpath" "fn")
1794
   (:use )
1795
   (:export "abs"
1796
            "ceil"
1797
            "concat"
1798
            "contains"
1799
            "compare"
1800
            "dateTime"
1801
            "day-from-date"
1802
            "day-from-dateTime"
1803
            "days-from-duration"
1804
            "duration-in-seconds"
1805
            "duration-in-minutes"
1806
            "duration-in-hours"
1807
            "duration-in-days"
1808
            "duration-in-months"
1809
            "duration-in-years"
1810
            "encode-for-uri"
1811
            "ends-with"
1812
            "floor"
1813
            "format-date"
1814
            "format-dateTime"
1815
            "format-duration"
1816
            "format-time"
1817
            "hours-from-dateTime"
1818
            "hours-from-duration"
1819
            "hours-from-time"
1820
            "lower-case"
1821
            "matches"
1822
            "max"
1823
            "min"
1824
            "minutes-from-dateTime"
1825
            "minutes-from-duration"
1826
            "minutes-from-time"
1827
            "month-from-date"
1828
            "month-from-dateTime"
1829
            "months-from-duration"
1830
            "not"
1831
            "replace"
1832
            "round"
1833
            "seconds-from-dateTime"
1834
            "seconds-from-duration"
1835
            "seconds-from-time"
1836
            "starts-with"
1837
            "string-length"
1838
            "substring"
1839
            "substring-after"
1840
            "substring-before"
1841
            "timezone-from-date"
1842
            "timezone-from-dateTime"
1843
            "timezone-from-time"
1844
            "upper-case"
1845
            "year-from-date"
1846
            "year-from-dateTime"
1847
            "years-from-duration"
1848
            ))
1849
 
1850
 
1851
 (defpackage "http://jena.hpl.hp.com/ARQ/list#"
1852
   (:nicknames "arq")
1853
   (:use )
1854
   (:export "member"
1855
            ;; declaration only
1856
            "index"
1857
            "length")
1858
   (:documentation "declares Jena function properties.
1859
    Most are not defined.
1860
    See https://jena.apache.org/documentation/query/library-propfunc.html"))
1861
 (defpackage "http://jena.hpl.hp.com/ARQ/property#"
1862
   (:nicknames "apf")
1863
   (:export "textMatch"
1864
            ;; declaration only
1865
            "alt"
1866
            "assign"
1867
            "bag"
1868
            "blank"
1869
            "concat"
1870
            "seq"
1871
            "splitIRI"
1872
            "str"
1873
            "strSPlit"
1874
            "versionAQRQ" ; does not apply
1875
            "container"
1876
            "list"
1877
            )
1878
   (:documentation "declares Jena function properties.
1879
    Most are not defined.
1880
    See https://jena.apache.org/documentation/query/library-propfunc.html"))
1881
 ;;; (cl-user::add-iri-package "http://jena.hpl.hp.com/ARQ/property#")
1882
 
1883
 (defpackage arq.i
1884
   (:export :member))
1885
 
1886
 (defpackage arq.e
1887
   (:export :member))
1888
 
1889
 (defpackage "urn:dydra"
1890
   (:use )
1891
   ;; no, as it inteferes with store round tripe
1892
   ;; (:nicknames "rdfcache" "urn:rdfcache")
1893
   ;; '_' terms reproduce the column names already present in the mysql table
1894
   (:export "accessToken"
1895
            "accounts"
1896
            "agent_id"
1897
            "agent_location"
1898
            "algebra_operations"
1899
            "all"
1900
            "asynchronous"
1901
            "baseIRI"
1902
            "bytes_allocated"
1903
            "bytes_read"
1904
            "bytes_written"
1905
            "compact"
1906
            "context"
1907
            "default"
1908
            "defaultContextTerm"
1909
            "describeForm"
1910
            "describeObjectDepth"
1911
            "describeProperties"
1912
            "describeSubjectDepth"
1913
            "dynamicBinding"
1914
            "embed"
1915
            "encryptedPassword"
1916
            "error"
1917
            "explicit"
1918
            "external"
1919
            "event"
1920
            "false"
1921
            "federationMode"
1922
            "fragmentMetadata"
1923
            "host"
1924
            "ignore"
1925
            "internal"
1926
            "iri"
1927
            "keep"
1928
            "location"
1929
            "libraryPath"
1930
            "match_requests"
1931
            "match_responses"
1932
            "name"
1933
            "named"
1934
            "namedContextsTerm"
1935
            "none"
1936
            "parent-revision-id"
1937
            "parse_run_time"
1938
            "prefixes"
1939
            "privacySetting"
1940
            "provenanceRepositoryId"
1941
            "provenanceRepository"
1942
            "query_time"
1943
            "real_time"
1944
            "region"
1945
            "replace"
1946
            "repository"
1947
            "repositoryClass"
1948
            "requestContent"
1949
            "requestMemoryLimit"
1950
            "requestSolutionLimit"
1951
            "requestTimeLimit"
1952
            "responseContent"
1953
            "revisionId"
1954
            "run_time"
1955
            "service-description"
1956
            "service-functions"
1957
            "session_data"
1958
            "session_id"
1959
            "session_user"
1960
            "sessions"
1961
            "signature"
1962
            "simple-concise-bounded-description"
1963
            "simple-symmetric-concise-bounded-description"
1964
            "simple-inverse-concise-bounded-description"
1965
            "skolemize"
1966
            "skolemizePrefix"
1967
            "skolemize-insert"
1968
            "skolemize-export"
1969
            "solutions_constructed"
1970
            "solutions_processed"
1971
            "solutions_returned"
1972
            "some"
1973
            "strictVocabularyTerms"
1974
            "state"
1975
            "synchronous"
1976
            "timebundle"
1977
            "timemap"
1978
            "timestamp"
1979
            "true"
1980
            "undefinedVariableBehavior"
1981
            "user_id"
1982
            "users"
1983
            "warning"
1984
            "Account"
1985
            "Administrator"
1986
            "COMPLETE"
1987
            "Graph"
1988
            "Group"
1989
            "LocatedAgent"
1990
            "Manager"
1991
            "Query"
1992
            "Revision"
1993
            "Repository"
1994
            "RIFCore"
1995
            "SemanticAuthorization"
1996
            "TERMINATED"
1997
            "Transaction"
1998
            "User"
1999
            "View")
2000
   (:documentation "The home package for identifiers internal to the spocq-rdfcache operations.
2001
  These include graph designators for dataset specifications, provenance terms,
2002
  describe mode indicators, and accounting properties."))
2003
 
2004
 (defpackage "http://multimedialab.elis.ugent.be/users/samcoppe/ontologies/Premis/premis.owl#"
2005
   (:nicknames "premis")
2006
   (:use )
2007
   (:export "hasObjectRightsStatement"
2008
            "License"
2009
            "LicenseInformation"
2010
            "identifier"
2011
            "rightsGranted"
2012
            "startDate"
2013
            "termOfGrant"
2014
            "TermOfGrant"))
2015
 
2016
 (defpackage "http://www.w3.org/ns/prov#"
2017
   ;; rapper  -o ntriples -i turtle ~/imports/prov-o.ttl - | fgrep 'http://www.w3.org/2000/01/rdf-schema#isDefinedBy' | fgrep 'http://www.w3.org/ns/prov#' | sed -e 's/>.*/"/' | sed -e 's/.*#/"/' | sort > prov-o-ttl.terms
2018
   ;; rapper  -o ntriples -i rdfxml ~/imports/prov-o.rdf - | fgrep 'http://www.w3.org/2000/01/rdf-schema#isDefinedBy' | fgrep 'http://www.w3.org/ns/prov#' | sed -e 's/>.*/"/' | sed -e 's/.*#/"/' | sort > prov-o-rdf.terms
2019
   ;; this is based on the latter, BUT
2020
   ;; - remove duplicates
2021
   ;; removed spurios label, comment, n symbols
2022
   ;; added inverses, which did not appear as autonomous entries int he rdf documents
2023
   (:nicknames "prov")
2024
   (:use )
2025
   (:export "Activity"
2026
            "ActivityInfluence"
2027
            "Agent"
2028
            "AgentInfluence"
2029
            "Association"
2030
            "Attribution"
2031
            "Bundle"
2032
            "Collection"
2033
            "Communication"
2034
            "Delegation"
2035
            "Derivation"
2036
            "EmptyCollection"
2037
            "End"
2038
            "Entity"
2039
            "EntityInfluence"
2040
            "Generation"
2041
            "Influence"
2042
            "InstantaneousEvent"
2043
            "Invalidation"
2044
            "Location"
2045
            "Organization"
2046
            "Person"
2047
            "Plan"
2048
            "PrimarySource"
2049
            "Quotation"
2050
            "Revision"
2051
            "Role"
2052
            "SoftwareAgent"
2053
            "Start"
2054
            "Usage"
2055
            "actedOnBehalfOf"
2056
            "activity"
2057
            "activityOfInfluence"
2058
            "agent"
2059
            "agentOfInfluence"
2060
            "alternateOf"
2061
            "aq"
2062
            "atLocation"
2063
            "atTime"
2064
            "category"
2065
            "component"
2066
            "constraints"
2067
            "contributed"
2068
            "definition"
2069
            "dm"
2070
            "editorialNote"
2071
            "editorsDefinition"
2072
            "ended"
2073
            "endedAtTime"
2074
            "entity"
2075
            "entityOfInfluence"
2076
            "generalizationOf"
2077
            "generated"
2078
            "generatedAsDerivation"
2079
            "generatedAtTime"
2080
            "hadActivity"
2081
            "hadDelegate"
2082
            "hadDerivation"
2083
            "hadGeneration"
2084
            "hadInfluence"
2085
            "hadMember"
2086
            "hadPlan"
2087
            "hadPrimarySource"
2088
            "hadRevision"
2089
            "hadRole"
2090
            "hadUsage"
2091
            "hasAnchor"
2092
            "hasProvenance"
2093
            "hasProvenanceService"
2094
            "influenced"
2095
            "influencer"
2096
            "informed"
2097
            "invalidated"
2098
            "invalidatedAtTime"
2099
            "inverse"
2100
            "isDefinedBy"
2101
            "locationOf"
2102
            "order"
2103
            "qualifiedAssociation"
2104
            "qualifiedAssociationOf"
2105
            "qualifiedAttribution"
2106
            "qualifiedAttributionOf"
2107
            "qualifiedCommunication"
2108
            "qualifiedCommunicationOf"
2109
            "qualifiedDelegation"
2110
            "qualifiedDelegationOf"
2111
            "qualifiedDerivation"
2112
            "qualifiedDerivationOf"
2113
            "qualifiedEnd"
2114
            "qualifiedEndOf"
2115
            "qualifiedForm"
2116
            "qualifiedGeneration"
2117
            "qualifiedGenerationOf"
2118
            "qualifiedInfluence"
2119
            "qualifiedInfluenceOf"
2120
            "qualifiedInvalidation"
2121
            "qualifiedInvalidationOf"
2122
            "qualifiedPrimarySource"
2123
            "qualifiedQuotation"
2124
            "qualifiedQuotationOf"
2125
            "qualifiedRevision"
2126
            "qualifiedSourceOf"
2127
            "qualifiedStart"
2128
            "qualifiedUsage"
2129
            "qualifiedUsingActivity"
2130
            "quotedAs"
2131
            "revisedEntity"
2132
            "sharesDefinitionWith"
2133
            "specializationOf"
2134
            "started"
2135
            "startedAtTime"
2136
            "unqualifiedForm"
2137
            "used"
2138
            "value"
2139
            "wasActivityOfInfluence"
2140
            "wasAssociateFor"
2141
            "wasAssociatedWith"
2142
            "wasAttributedTo"
2143
            "wasDerivedFrom"
2144
            "wasEndedBy"
2145
            "wasGeneratedBy"
2146
            "wasInfluencedBy"
2147
            "wasInformedBy"
2148
            "wasInvalidatedBy"
2149
            "wasMemberOf"
2150
            "wasPlanOf"
2151
            "wasPrimarySourceOf"
2152
            "wasQuotedFrom"
2153
            "wasRevisionOf"
2154
            "wasRoleIn"
2155
            "wasStartedBy"
2156
            "wasUsedInDerivation"
2157
            "wasUsedBy"
2158
            ))
2159
 
2160
 (defpackage "http://www.w3.org/ns/sparql-service-description#"
2161
   (:use )
2162
   (:nicknames "sd")
2163
   (:export "endpoint"
2164
            "feature"
2165
            "defaultEntailmentRegime"
2166
            "entailmentRegime"
2167
            "defaultSupportedEntailmentProfile"
2168
            "supportedEntailmentProfile"
2169
            "extensionFunction"
2170
            "extensionAggregate"
2171
            "languageExtension"
2172
            "supportedLanguage"
2173
            "propertyFeature"
2174
            "defaultDataset"
2175
            "availableGraphs"
2176
            "resultFormat"
2177
            "inputFormat"
2178
            "defaultGraph"
2179
            "namedGraph"
2180
            "name"
2181
            "graph"
2182
            "server" ; sparqlscore
2183
            "testedDate" ; sparqlscore
2184
            "testedBy" ; sparqlscore
2185
            "Service"
2186
            "Feature"
2187
            "Language"
2188
            "Function"
2189
            "Index" ; added for internal statistics
2190
            "Aggregate"
2191
            "EntailmentRegime"
2192
            "EntailmentProfile"
2193
            "GraphCollection"
2194
            "Dataset"
2195
            "Graph"
2196
            "NamedGraph"
2197
            "SPARQL10Query"
2198
            "SPARQL11Query"
2199
            "SPARQL11Update"
2200
            "DereferencesURIs"
2201
            "UnionDefaultGraph"
2202
            "RequiresDataset"
2203
            "EmptyGraphs"
2204
            "BasicFederatedQuery"
2205
            "TextIndex"))
2206
 
2207
 (defpackage "http://rdfs.org/ns/void#"
2208
   (:use )
2209
   (:nicknames "void")
2210
   (:documentation "http://www.w3.org/TR/void/ and https://github.com/cygri/void/blob/master/rdfs/void.ttl")
2211
   (:export "Dataset"
2212
            "DatasetDescription"
2213
            "Linkset"
2214
            "TechnicalFeature"
2215
            "class"
2216
            "classes"
2217
            "classPartition"
2218
            "dataDump"
2219
            "distinctObjects"
2220
            "distinctSubjects"
2221
            "documents"
2222
            "entities"
2223
            "exampleResource"
2224
            "feature"
2225
            "inDataset"
2226
            "linkPredicate"
2227
            "Linkset"
2228
            "objectsTarget"
2229
            "openSearchDescription"
2230
            "properties"
2231
            "property"
2232
            "propertyPartition"
2233
            "rootResource"
2234
            "sparqlEndpoint"
2235
            "subjectsTarget"
2236
            "subset"
2237
            "target"
2238
            "TechnicalFeature"
2239
            "triples"
2240
            "uriLookupEndpoint"
2241
            "uriRegexPattern"
2242
            "uriSpace"
2243
            "vocabulary"))
2244
 
2245
 (defpackage "http://xmlns.com/foaf/0.1/"
2246
   (:use )
2247
   (:nicknames "foaf")
2248
   (:documentation 
2249
     "see http://xmlns.com/foaf/spec/20100809.html")
2250
   (:export "LabelProperty"
2251
            "Person"
2252
            "Agent"
2253
            "Document"
2254
            "Organization"
2255
            "Group"
2256
            "Agent"
2257
            "Project"
2258
            "Image"
2259
            "Document"
2260
            "PersonalProfileDocument"
2261
            "OnlineAccount"
2262
            "OnlineGamingAccount"
2263
            "OnlineEcommerceAccount"
2264
            "OnlineChatAccount"
2265
            "mbox"
2266
            "mbox_sha1sum"
2267
            "gender"
2268
            "geekcode"
2269
            "dnaChecksum"
2270
            "sha1"
2271
            "based_near"
2272
            "title"
2273
            "nick"
2274
            "jabberID"
2275
            "aimChatID"
2276
            "skypeID"
2277
            "icqChatID"
2278
            "yahooChatID"
2279
            "msnChatID"
2280
            "name"
2281
            "firstName"
2282
            "lastName"
2283
            "givenName"
2284
            "givenname"
2285
            "surname"
2286
            "family_name"
2287
            "familyName"
2288
            "phone"
2289
            "homepage"
2290
            "weblog"
2291
            "openid"
2292
            "tipjar"
2293
            "plan"
2294
            "made"
2295
            "maker"
2296
            "img"
2297
            "depiction"
2298
            "depicts"
2299
            "thumbnail"
2300
            "myersBriggs"
2301
            "workplaceHomepage"
2302
            "workInfoHomepage"
2303
            "schoolHomepage"
2304
            "knows"
2305
            "interest"
2306
            "topic_interest"
2307
            "publications"
2308
            "currentProject"
2309
            "pastProject"
2310
            "fundedBy"
2311
            "logo"
2312
            "topic"
2313
            "primaryTopic"
2314
            "focus"
2315
            "isPrimaryTopicOf"
2316
            "page"
2317
            "theme"
2318
            "account"
2319
            "holdsAccount"
2320
            "accountServiceHomepage"
2321
            "accountName"
2322
            "member"
2323
            "membershipClass"
2324
            "birthday"
2325
            "age"
2326
            "status"
2327
            ))
2328
 
2329
 (defpackage "http://rdfs.org/sioc/ns#"
2330
   (:use )
2331
   (:nicknames "sioc")
2332
   (:documentation
2333
     "The SIOC core ontology vocabulary terms.
2334
      see http://rdfs.org/sioc/ns
2335
      see http://rdfs.org/sioc/spec/")
2336
   (:export "Community"
2337
            "Container"
2338
            "Forum"
2339
            "Item"
2340
            "Post"
2341
            "Role"
2342
            "Space"
2343
            "Site"
2344
            "Thread"
2345
            "UserAccount"
2346
            "Usergroup"
2347
            "about"
2348
            "account_of"
2349
            "addressed_to"
2350
            "administrator_of"
2351
            "attachment"
2352
            "avatar"
2353
            "container_of"
2354
            "content"
2355
            "creator_of"
2356
            "earlier_version"
2357
            "email"
2358
            "email_sha1"
2359
            "embeds_knowledge"
2360
            "feed"
2361
            "follows"
2362
            "function_of"
2363
            "has_administrator"
2364
            "has_container"
2365
            "has_creator"
2366
            "has_discussion"
2367
            "has_function"
2368
            "has_host"
2369
            "has_member"
2370
            "has_moderator"
2371
            "has_modifier"
2372
            "has_owner"
2373
            "has_parent"
2374
            "has_reply"
2375
            "has_scope"
2376
            "has_space"
2377
            "has_subscriber"
2378
            "has_usergroup"
2379
            "host_of"
2380
            "id"
2381
            "ip_address"
2382
            "last_activity_date"
2383
            "last_item_date"
2384
            "last_reply_date"
2385
            "later_version"
2386
            "latest_version"
2387
            "link"
2388
            "links_to"
2389
            "member_of"
2390
            "moderator_of"
2391
            "modifier_of"
2392
            "name"
2393
            "next_by_date"
2394
            "next_version"
2395
            "note"
2396
            "num_authors"
2397
            "num_items"
2398
            "num_replies"
2399
            "num_threads"
2400
            "num_views"
2401
            "owner_of"
2402
            "parent_of"
2403
            "previous_by_date"
2404
            "previous_version"
2405
            "related_to"
2406
            "reply_of"
2407
            "scope_of"
2408
            "sibling"
2409
            "space_of"
2410
            "subscriber_of"
2411
            "topic"
2412
            "usergroup_of"
2413
            "User"
2414
            "title"
2415
            "content_encoded"
2416
            "created_at"
2417
            "description"
2418
            "first_name"
2419
            "group_of"
2420
            "has_group"
2421
            "has_part"
2422
            "last_name"
2423
            "modified_at"
2424
            "part_of"
2425
            "reference"
2426
            "subject"))
2427
 
2428
 (defpackage "http://www.w3.org/2002/07/owl#"
2429
   (:use )
2430
   (:nicknames "owl")
2431
   (:export "AllDifferent"
2432
            "AllDisjointClasses"
2433
            "AllDisjointProperties"
2434
            "allValuesFrom"
2435
            "annotatedProperty"
2436
            "annotatedSource"
2437
            "annotatedTarget"
2438
            "Annotation"
2439
            "AnnotationProperty"
2440
            "assertionProperty"
2441
            "AsymmetricProperty"
2442
            "Axiom"
2443
            "backwardCompatibleWith"
2444
            "bottomDataProperty"
2445
            "bottomObjectProperty"
2446
            "cardinality"
2447
            "Class"
2448
            "complementOf"
2449
            "DataRange"
2450
            "datatypeComplementOf"
2451
            "DatatypeProperty"
2452
            "deprecated"
2453
            "DeprecatedClass"
2454
            "DeprecatedProperty"
2455
            "differentFrom"
2456
            "disjointUnionOf"
2457
            "disjointWith"
2458
            "distinctMembers"
2459
            "equivalentClass"
2460
            "equivalentProperty"
2461
            "FunctionalProperty"
2462
            "hasKey"
2463
            "hasSelf"
2464
            "hasValue"
2465
            "imports"
2466
            "incompatibleWith"
2467
            "intersectionOf"
2468
            "InverseFunctionalProperty"
2469
            "inverseOf"
2470
            "IrreflexiveProperty"
2471
            "maxCardinality"
2472
            "maxQualifiedCardinality"
2473
            "members"
2474
            "minCardinality"
2475
            "minQualifiedCardinality"
2476
            "NamedIndividual"
2477
            "NegativePropertyAssertion"
2478
            "Nothing"
2479
            "ObjectProperty"
2480
            "onClass"
2481
            "onDataRange"
2482
            "onDatatype"
2483
            "oneOf"
2484
            "onProperty"
2485
            "onProperties"
2486
            "Ontology"
2487
            "OntologyProperty"
2488
            "priorVersion"
2489
            "propertyChainAxiom"
2490
            "propertyDisjointWith"
2491
            "qualifiedCardinality"
2492
            "ReflexiveProperty"
2493
            "Restriction"
2494
            "sameAs"
2495
            "someValuesFrom"
2496
            "sourceIndividual"
2497
            "SymmetricProperty"
2498
            "targetIndividual"
2499
            "targetValue"
2500
            "Thing"
2501
            "topDataProperty"
2502
            "topObjectProperty"
2503
            "TransitiveProperty"
2504
            "unionOf"
2505
            "versionInfo"
2506
            "versionIRI"
2507
            "withRestrictions"))
2508
 
2509
 (defpackage "http://www.w3.org/ns/auth/acl#"
2510
   ;; curl -s http://www.w3.org/ns/auth/acl | fgrep 'rdf:about=' | fgrep 'auth' | sed 's,.*#,",' | sed 's,">.*,",'
2511
   ;; alternatively
2512
   ;; curl -s http://www.w3.org/ns/auth/acl | egrep -o 'acl:\w+' | sort | uniq | sed 's/acl://'
2513
   (:use)
2514
   (:nicknames "acl")
2515
   (:documentation "see http://www.w3.org/wiki/WebAccessControl")
2516
   (:export "Access"
2517
            "Append"
2518
            "AuthenticatedAgent"
2519
            "Authorization"
2520
            "Control"
2521
            "Execute"
2522
            "Origin"
2523
            "Read"
2524
            "Write"
2525
            "accessControl"
2526
            "accessTo"
2527
            "accessToClass"
2528
            "agent"
2529
            "agentClass"
2530
            "agentGroup"
2531
            "default"
2532
            "defaultForNew"
2533
            "delegates"
2534
            "label"
2535
            "mode"
2536
            "noAccessTo"
2537
            "origin"
2538
            "owner"))
2539
 
2540
 (defpackage "http://www.mementoweb.org/terms/tb/"
2541
   (:use )
2542
   (:nicknames "memento")
2543
   (:export "covers"
2544
            "end"
2545
            "Memento"
2546
            "mementoFor"
2547
            "OriginalResource"
2548
            "Period"
2549
            "start"
2550
            "TimeBundle"
2551
            "TimeGate"
2552
            "timeGateFor"
2553
            "TimeMap"
2554
            "validOver"
2555
            ))
2556
 
2557
 (defpackage "http://www.openarchives.org/ore/terms/"
2558
   (:use )
2559
   (:nicknames "ore")
2560
   (:export "aggregates"
2561
            "AggregatedResource"
2562
            "Aggregation"
2563
            "describes"
2564
            "isAggregatedBy"
2565
            "isDescribedBy"
2566
            "lineage"
2567
            "Proxy"
2568
            "proxyFor"
2569
            "proxyIn"
2570
            "ResourceMap"
2571
            "similarTo"
2572
            ))
2573
 
2574
   
2575
 
2576
 (defpackage "http://lucene.apache.org"
2577
   (:use )
2578
   (:nicknames :lucene)
2579
   (:export "strends"
2580
            "strstarts"
2581
            "||"
2582
            "&&"
2583
            "="
2584
            "!="
2585
            "<"
2586
            ">"
2587
            "<="
2588
            ">="
2589
            ))
2590
 
2591
 (defpackage "http://www.w3.org/2003/01/geo/wgs84_pos#"
2592
   (:use )
2593
   (:nicknames "geo")
2594
   (:export "lat"
2595
            "long"
2596
            "SpatialThing"
2597
            "TemporalThing"
2598
            "Event"
2599
            "Point"
2600
            "time"
2601
            "location"
2602
            "alt"
2603
            "lat_long"))
2604
 
2605
 
2606
 (defpackage "http://www.w3.org/2005/xpath-functions/math#"
2607
   (:use )
2608
   (:nicknames "math.xpath")
2609
   (:documentation
2610
    "as per
2611
     http://www.w3.org/2005/xpath-functions/math/
2612
     http://www.w3.org/TR/xpath-functions-30/")
2613
   (:export "acos"
2614
            "asin"
2615
            "atan"
2616
            "atan2"
2617
            "cos"
2618
            "exp"
2619
            "exp10"
2620
            "log"
2621
            "log10"
2622
            "max"
2623
            "min"
2624
            "pi"
2625
            "pow"
2626
            "sin"
2627
            "sqrt"
2628
            "tan"))
2629
 
2630
 (defpackage "http://purl.org/dc/elements/1.1/"
2631
   (:use )
2632
   (:nicknames "dc")
2633
   (:export "contributor"
2634
            "coverage"
2635
            "creator"
2636
            "date"
2637
            "description"
2638
            "format"
2639
            "identifier"
2640
            "language"
2641
            "publisher"
2642
            "relation"
2643
            "rights"
2644
            "source"
2645
            "subject"
2646
            "title"
2647
            "type"))
2648
 
2649
 (defpackage "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
2650
   (:use )
2651
   (:nicknames "xul")
2652
   (:export ))
2653
 
2654
 (defpackage "http://creativecommons.org/ns#"
2655
   (:use )
2656
   (:nicknames "cc")
2657
   (:export "legalcode"
2658
            "jurisdiction"
2659
            "useGuidelines"
2660
            "LesserCopyleft"
2661
            "attributionURL"
2662
            "morePermissions"           
2663
            "attributionName"
2664
            "HighIncomeNationUse"
2665
            "Sharing"
2666
            "Copyleft"
2667
            "deprecatedOn"
2668
            "Permission"
2669
            "SourceCode"
2670
            "permits"
2671
            "ShareAlike"
2672
            "Notice"
2673
            "Jurisdiction"
2674
            "DerivativeWorks"
2675
            "Work"
2676
            "Reproduction"
2677
            "Distribution"
2678
            "requires"
2679
            "CommercialUse"
2680
            "prohibits"
2681
            "Requirement"
2682
            "Prohibition"
2683
            "License"
2684
            "license"
2685
            "Attribution"))
2686
 
2687
 (defpackage "http://www.w3.org/2011/http-statusCodes#"
2688
   (:use)
2689
   (:nicknames "httpsc")
2690
   (:export "StatusCode1xx"
2691
            "StatusCode2xx"
2692
            "StatusCode3xx"
2693
            "StatusCode4xx"
2694
            "StatusCode5xx"
2695
            "Continue"
2696
            "SwitchingProtocols"
2697
            "Processing"
2698
            "OK"
2699
            "Created"
2700
            "Accepted"
2701
            "NonAuthoritativeInformation"
2702
            "NoContent"
2703
            "ResetContent"
2704
            "PartialContent"
2705
            "MultiStatus"
2706
            "IMUsed"
2707
            "MultipleChoices"
2708
            "MovedPermanently"
2709
            "Found"
2710
            "SeeOther"
2711
            "NotModified"
2712
            "UseProxy"
2713
            "Reserved"
2714
            "TemporaryRedirect"
2715
            "BadRequest"
2716
            "Unauthorized"
2717
            "PaymentRequired"
2718
            "Forbidden"
2719
            "NotFound"
2720
            "MethodNotAllowed"
2721
            "NotAcceptable"
2722
            "ProxyAuthenticationRequired"
2723
            "RequestTimeout"
2724
            "Conflict"
2725
            "Gone"
2726
            "LengthRequired"
2727
            "PreconditionFailed"
2728
            "RequestEntityTooLarge"
2729
            "RequestURITooLong"
2730
            "UnsupportedMediaType"
2731
            "RequestedRangeNotSatisfiable"
2732
            "ExpectationFailed"
2733
            "UnprocessableEntity"
2734
            "Locked"
2735
            "FailedDependency"
2736
            "UpgradeRequired"
2737
            "InternalServerError"
2738
            "NotImplemented"
2739
            "BadGateway"
2740
            "ServiceUnavailable"
2741
            "GatewayTimeout"
2742
            "HTTPVersionNotSupported"
2743
            "VariantAlsoNegotiates"
2744
            "InsufficientStorage"
2745
            "NotExtended"))
2746
 
2747
 
2748
 ;;; dawg manifest test packages
2749
 
2750
 (defpackage "http://www.w3.org/ns/earl#"
2751
   (:use )
2752
   (:nicknames "earl")
2753
   (:export "Assertion"
2754
            "assertedBy"
2755
            "automatic"
2756
            "cantTell"
2757
            "test"
2758
            "outcome"
2759
            "passed"
2760
            "failed"
2761
            "mode"
2762
            "inapplicable"
2763
            "result"
2764
            "subject"
2765
            "TestResult"
2766
            "untested"))
2767
 
2768
 (defpackage "http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#"
2769
   (:use )
2770
   (:nicknames "mf")
2771
   (:export "ArithmeticTypeConservation"
2772
            "ArithmeticTypePromotion"
2773
            "ClosedModel"
2774
            "CSVResultFormatTest"
2775
            "BlankNodeLabelScopeIsDocument"
2776
            "BlankNodeLabelScopeIsGraph"
2777
            "DereferenceGraphURI"
2778
            "GraphStoreProtocolTest"
2779
            "IllFormedLiterals"
2780
            "KnownTypesDefault2Neq"
2781
            "LangTagAwareness"
2782
            "LaxCardinality"
2783
            "LiteralLexicalForms"
2784
            "LiteralValues"
2785
            "Manifest"
2786
            "ManifestEntry"
2787
            "NegativeSyntaxTest"
2788
            "NegativeSyntaxTest11"
2789
            "NegativeUpdateSyntaxTest11"
2790
            "Notable"
2791
            "PartialModel"
2792
            "ParserEnforcesSemantics"
2793
            "PositiveSyntaxTest"
2794
            "PositiveSyntaxTest11"
2795
            "PositiveUpdateSyntaxTest11"
2796
            "ProtocolTest"
2797
            "Requirement"
2798
            "ResultCardinality"
2799
            "QueryEvaluationTest"
2800
            "UpdateEvaluationTest"
2801
            "ServiceDescriptionTest"
2802
            "SPARQLScriptingTest"
2803
            "StringSimpleLiteralCmp"
2804
            "TestStatus"
2805
            "UndefinedVariablesAreInvalid"
2806
            "UndefinedVariablesAreUnbound"
2807
            "XsdDateOperations"
2808
            "accepted"
2809
            "action"
2810
            "conformanceRequirement"
2811
            "description"
2812
            "entries"
2813
            "feature"
2814
            "include"
2815
            "includedSpecifications"
2816
            "name"
2817
            "notable"
2818
            "proposed"
2819
            "rejected"
2820
            "requires"
2821
            "result"
2822
            "resultCardinality"))
2823
 
2824
 (defpackage "http://www.w3.org/2001/sw/DataAccess/tests/test-dawg#"
2825
   (:use )
2826
   (:nicknames "dawgt")
2827
   (:export "Approved"
2828
            "NotClassified"
2829
            "Obsoleted"
2830
            "Pending"
2831
            "Proposed"
2832
            "Rejected"
2833
            "ResultBoolean"
2834
            "ResultForm"
2835
            "ResultGraph"
2836
            "ResultSet"
2837
            "Status"
2838
            "Withdrawn"
2839
            "approval"
2840
            "approvedBy"
2841
            "description"
2842
            "issue"
2843
            "proposedBy"
2844
            "resultForm"
2845
            "status"
2846
            "warning"
2847
            ))
2848
 
2849
 (defpackage "http://www.w3.org/2001/sw/DataAccess/tests/test-query#"
2850
   (:use )
2851
   (:nicknames "qt")
2852
   (:export "QueryAsk"
2853
            "QueryConstruct"
2854
            "QueryDescribe"
2855
            "QueryForm"
2856
            "QuerySelect"
2857
            "QueryTest"
2858
            "data"
2859
            "endpoint"
2860
            "graphData"
2861
            "query"
2862
            "queryForm"
2863
            "repository"
2864
            "serviceData"))
2865
 
2866
 (defpackage "http://www.w3.org/2009/sparql/tests/test-update#"
2867
   (:use )
2868
   (:nicknames "ut")
2869
   (:export "arguments"
2870
            "data"
2871
            "graph"
2872
            "graphData"
2873
            "query"
2874
            "repository"
2875
            "request"
2876
            "result"
2877
            "success"))
2878
 
2879
            
2880
 
2881
 ;;;
2882
 ;;; ssl packages
2883
 
2884
 (eval-when (:compile-toplevel :load-toplevel :execute)
2885
 
2886
  (loop for symbol in '(_::request-content _::request-content-type _::request-repository
2887
                                           _::response-content _::response-content-type
2888
                        _::ontology-repository)
2889
    do (export symbol "_"))
2890
   )
2891
 
2892
 (defpackage "http://dydra.com/schema/ssl#"
2893
   (:use )
2894
   (:nicknames "ssl")
2895
   (:export "alternative" "configuration" "consequent" "dataset" "destination"
2896
            "location" "media-type" "method" "mode" "name" "projection"
2897
            "request-media-type" "response-media-type"
2898
            "source" "steps" "task" "transaction" "value"
2899
            "Abort"
2900
            "Begin"
2901
            "Bind"
2902
            "Commit"
2903
            "Compose"
2904
            "Composition"
2905
            "Conditional"
2906
            "Constrain"
2907
            "Dataset"
2908
            "Decode"
2909
            "Encode"
2910
            "End"
2911
            "For"
2912
            "Loop"
2913
            "Matcher"
2914
            "Notify"
2915
            "Operation"
2916
            "Project"
2917
            "Request"
2918
            "Query"
2919
            "Update"
2920
            "Task"
2921
            "Return")
2922
   (:documentation "The SPOCQ package comprises the API operators for the execution plan interpreter."))
2923
 
2924
 
2925
   (defpackage "http://www.iana.org/assignments/media-types/"
2926
     (:use )
2927
     (:nicknames "mime")
2928
     (:export "application/json"
2929
              "application/pdf"
2930
              "application/rtf"
2931
              "application/sgml"
2932
              "application/sparql-query"
2933
              "application/sparql-results"
2934
              "application/sparql-results+json"
2935
              "application/sparql-results+xml"
2936
              "application/sql"
2937
              "application/xml"
2938
              "image/jpeg"
2939
              "image/png"
2940
              "image/tiff"
2941
              "text/csv"
2942
              "text/html"
2943
              "text/plain"
2944
              "text/tab-separated-values"
2945
              ))
2946
   
2947
 
2948
   (defpackage "http://www.w3.org/2011/http#"
2949
     (:nicknames "http")
2950
     (:export "absolutePath"
2951
              "absoluteURI"
2952
              "authority"
2953
              "body"
2954
              "Connection"
2955
              "connectionAuthority"
2956
              "elementName"
2957
              "elementValue"
2958
              "EntityHeader"
2959
              "fieldName"
2960
              "fieldValue"
2961
              "GeneralHeader"
2962
              "hdrName"
2963
              "HeaderElement"
2964
              "HeaderName"
2965
              "headerElements"
2966
              "headers"
2967
              "httpVersion"
2968
              "Message"
2969
              "MessageHeader"
2970
              "Method"
2971
              "methodName"
2972
              "mthd"
2973
              "Parameter"
2974
              "paramName"
2975
              "params"
2976
              "paramValue"
2977
              "reasonPhrase"
2978
              "Request"
2979
              "RequestHeader"
2980
              "requestURI"
2981
              "requests"
2982
              "Response"
2983
              "ResponseHeader"
2984
              "resp"
2985
              "sc"
2986
              "StatusCode"
2987
              "statusCodeNumber"
2988
              "statusCodeValue")
2989
     (:documentation "See http://www.w3.org/TR/HTTP-in-RDF10/"))
2990
 
2991
 
2992
   (defpackage "http://www.w3.org/2011/http-headers#"
2993
     (:nicknames "http-headers")
2994
     (:export "accept"
2995
              "content-length"
2996
              "content-type"
2997
              "host"
2998
              "transfer-encoding"
2999
              "user-agent"
3000
              "vary"))
3001
 
3002
 
3003
 (defpackage :org.datagraph.sparql-scripting-language.runtime
3004
   (:use )
3005
   (:nicknames :sslr)
3006
   (:export :*class.function-signature*
3007
            :*code*
3008
            :*stack*
3009
            :*environment*
3010
            :bind
3011
            :boundp
3012
            :call
3013
            :closure
3014
            :code
3015
            :continuation
3016
            :do-field
3017
            :environment
3018
            :eval
3019
            :execute
3020
            :first
3021
            :function
3022
            :function-code-parameter-count
3023
            :function-code-parameters
3024
            :function-definition
3025
            :function-designator
3026
            :function-designator-p
3027
            :function-keyword-parameter-count
3028
            :function-keyword-parameters
3029
            :function-required-parameter-count
3030
            :function-required-parameters
3031
            :function-signature
3032
            :function-value-count
3033
            :function-values
3034
            :make-function-signature
3035
            :map-field
3036
            :pop
3037
            :pop-code
3038
            :push
3039
            :push-code
3040
            :rest
3041
            :run
3042
            :set
3043
            :stack
3044
            :symbol-value
3045
            :true
3046
            ))
3047
 
3048
 (defpackage :org.datagraph.sparql-scripting-language
3049
   (:use )
3050
   (:nicknames :ssl)
3051
   (:import-from :sslr
3052
                 :*code*
3053
                 :*environment*
3054
                 :*stack*)
3055
   (:import-from :spocq.i
3056
                 :*transaction*
3057
                 :*task*
3058
                 :*repository*)
3059
   (:export :*code*
3060
            :*transaction*
3061
            :*task*
3062
            :*repository*
3063
            :*stack*
3064
            :*environment*
3065
            :and
3066
            :apply
3067
            :bind
3068
            :call
3069
            :call-with-state
3070
            :code
3071
            :configure
3072
            :cons
3073
            :continue
3074
            :continuation
3075
            :defword
3076
            :drop
3077
            :dup
3078
            :environment
3079
            :execute
3080
            :eval
3081
            :first
3082
            :for
3083
            :for-every
3084
            :for-some
3085
            :if
3086
            :nip
3087
            :not
3088
            :or
3089
            :project
3090
            :pop
3091
            :push
3092
            :rest
3093
            :run
3094
            :set
3095
            :stack
3096
            :state
3097
            :state-stack
3098
            :state-code
3099
            :state-environment
3100
            :swap
3101
            :thread
3102
            :true
3103
            :while
3104
            :with-state
3105
            :word
3106
            :xword
3107
            ))
3108
 
3109
 (defpackage "%"
3110
   (:use )
3111
   (:export "http://www.w3.org/2001/XMLSchema#string"
3112
            "http://www.w3.org/2001/XMLSchema#boolean"
3113
            "http://www.w3.org/2001/XMLSchema#byte"
3114
            "http://www.w3.org/2001/XMLSchema#decimal"
3115
            "http://www.w3.org/2001/XMLSchema#double"
3116
            "http://www.w3.org/2001/XMLSchema#float"
3117
            "http://www.w3.org/2001/XMLSchema#int"
3118
            "http://www.w3.org/2001/XMLSchema#integer"
3119
            "http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
3120
            "http://www.w3.org/2001/XMLSchema#nonPositiveInteger"
3121
            "http://www.w3.org/2001/XMLSchema#negativeInteger"
3122
            "http://www.w3.org/2001/XMLSchema#positiveInteger"
3123
            "http://www.w3.org/2001/XMLSchema#short"
3124
            "http://www.w3.org/2001/XMLSchema#unsignedByte"
3125
            "http://www.w3.org/2001/XMLSchema#unsignedInt"
3126
            "http://www.w3.org/2001/XMLSchema#unsignedShort"
3127
            "http://www.w3.org/2001/XMLSchema#unsignedLong"))
3128
 (loop for var being each external-symbol of (find-package "%")
3129
   do (proclaim `(special ,var)))
3130
 
3131
 (defpackage "http://www.w3.org/ns/hydra/core#"
3132
   (:use )
3133
   (:nicknames :hydra)
3134
   (:export
3135
    "ApiDescription"
3136
 "ApiDocumentation"
3137
 "BasicRepresentation"
3138
 "Class"
3139
 "Collection"
3140
 "Error"
3141
 "ExplicitRepresentation"
3142
 "IriTemplate"
3143
 "IriTemplateMapping"
3144
 "Link"
3145
 "Operation"
3146
 "PartialCollectionView"
3147
 "Resource"
3148
 "Rfc6570Template"
3149
 "Status"
3150
 "SupportedProperty"
3151
 "TemplatedLink"
3152
 "VariableRepresentation"
3153
 "apiDocumentation"
3154
 "cc"
3155
 "cc:attributionURL"
3156
 "cc:license"
3157
 "collection"
3158
 "comment"
3159
 "dc"
3160
 "defines"
3161
 "description"
3162
 "domain"
3163
 "domainIncludes"
3164
 "entrypoint"
3165
 "expects"
3166
 "expectsHeader"
3167
 "first"
3168
 "freetextQuery"
3169
 "hydra"
3170
 "label"
3171
 "last"
3172
 "limit"
3173
 "manages"
3174
 "mapping"
3175
 "member"
3176
 "method"
3177
 "next"
3178
 "object"
3179
 "offset"
3180
 "operation"
3181
 "owl"
3182
 "pageIndex"
3183
 "pageReference"
3184
 "possibleStatus"
3185
 "preferredPrefix"
3186
 "previous"
3187
 "property"
3188
 "range"
3189
 "rdf"
3190
 "rdfs"
3191
 "readable"
3192
 "required"
3193
 "returns"
3194
 "returnsHeader"
3195
 "schema"
3196
 "search"
3197
 "seeAlso"
3198
 "statusCode"
3199
 "subClassOf"
3200
 "subPropertyOf"
3201
 "subject"
3202
 "supportedClass"
3203
 "supportedOperation"
3204
 "supportedProperty"
3205
 "template"
3206
 "title"
3207
 "totalItems"
3208
 "variable"
3209
 "variableRepresentation"
3210
 "view"
3211
 "vs"
3212
 "writeable"
3213
 "xsd"
3214
 
3215
  ;; additions
3216
            "DydraHTTPView"
3217
            "HTTPView"
3218
            "HydraHTTPView"
3219
            "ODBCView"
3220
            "PostgresView"))
3221
 
3222
 (DEFPACKAGE "http://www.w3.org/ns/activitystreams#"
3223
   (:use )
3224
   (:nicknames "as")
3225
   (:EXPORT "Accept"
3226
            "Activity"
3227
            "Add"
3228
            "Announce"
3229
            "Application"
3230
            "Arrive"
3231
            "Article"
3232
            "Audio"
3233
            "Block"
3234
            "Collection"
3235
            "CollectionPage"
3236
            "Create"
3237
            "Delete"
3238
            "Dislike"
3239
            "Document"
3240
            "Event"
3241
            "Flag"
3242
            "Follow"
3243
            "Group"
3244
            "Ignore"
3245
            "Image"
3246
            "IntransitiveActivity"
3247
            "Invite"
3248
            "Join"
3249
            "Leave"
3250
            "Like"
3251
            "Link"
3252
            "Listen"
3253
            "Mention"
3254
            "Move"
3255
            "Note"
3256
            "Object"
3257
            "Offer"
3258
            "OrderedCollection"
3259
            "OrderedCollectionPage"
3260
            "OrderedItems"
3261
            "Organization"
3262
            "Page"
3263
            "Person"
3264
            "Place"
3265
            "Profile"
3266
            "Question"
3267
            "Read"
3268
            "Reject"
3269
            "Relationship"
3270
            "Remove"
3271
            "Service"
3272
            "TentativeAccept"
3273
            "TentativeReject"
3274
            "Tombstone"
3275
            "Travel"
3276
            "Undo"
3277
            "Update"
3278
            "Video"
3279
            "View"
3280
            "accuracy"
3281
            "actor"
3282
            "altitude"
3283
            "anyOf"
3284
            "attachment"
3285
            "attachments"
3286
            "attributedTo"
3287
            "audience"
3288
            "author"
3289
            "bcc"
3290
            "bto"
3291
            "cc"
3292
            "content"
3293
            "context"
3294
            "current"
3295
            "deleted"
3296
            "describes"
3297
            "downstreamDuplicates"
3298
            "duration"
3299
            "endTime"
3300
            "first"
3301
            "formerType"
3302
            "generator"
3303
            "height"
3304
            "href"
3305
            "hreflang"
3306
            "icon"
3307
            "id"
3308
            "image"
3309
            "inReplyTo"
3310
            "instrument"
3311
            "items"
3312
            "last"
3313
            "latitude"
3314
            "location"
3315
            "longitude"
3316
            "mediaType"
3317
            "name"
3318
            "next"
3319
            "object"
3320
            "objectType"
3321
            "oneOf"
3322
            "origin"
3323
            "partOf"
3324
            "prev"
3325
            "preview"
3326
            "provider"
3327
            "published"
3328
            "radius"
3329
            "rating"
3330
            "rel"
3331
            "relationship"
3332
            "replies"
3333
            "result"
3334
            "startIndex"
3335
            "startTime"
3336
            "subject"
3337
            "summary"
3338
            "tag"
3339
            "tags"
3340
            "target"
3341
            "to"
3342
            "totalItems"
3343
            "units"
3344
            "updated"
3345
            "upstreamDuplicates"
3346
            "url"
3347
            "verb"
3348
            "width"))
3349
 
3350
 (DEFPACKAGE "http://www.w3.org/2011/http-methods#"
3351
   (:use )
3352
   (:nicknames "mthd")
3353
   (:EXPORT "CONNECT"
3354
            "DELETE"
3355
            "GET"
3356
            "HEAD"
3357
            "OPTIONS"
3358
            "PATCH"
3359
            "POST"
3360
            "PUT"
3361
            "TRACE"))
3362
 
3363
 (modpackage "http://www.w3.org/2006/time#"
3364
   (:export "intervalIncludedBy"
3365
            "intervalIncludes"))
3366
 
3367
 
3368
 (defpackage "http://www.w3.org/ns/dcat#"
3369
   (:nicknames "dcat")
3370
   (:export "Catalog"
3371
            "Dataset"
3372
            "Distribution"
3373
            "Feed"
3374
            "WebService"
3375
            "CatalogRecord"
3376
            "Download"
3377
            "dataset"
3378
            "distribution"
3379
            "landingPage"
3380
            "mediaType"
3381
            "byteSize"
3382
            "accessURL"
3383
            "theme"
3384
            "downloadURL"
3385
            "bytes"
3386
            "keyword"
3387
            "themeTaxonomy"
3388
            "record"
3389
            "contactPoint"
3390
            "granularity"
3391
            "dataQuality"
3392
            "size"
3393
            "dataDictionary"))
3394
 ;;; (cl-user::add-iri-package "http://www.w3.org/ns/dcat#")
3395
 
3396
 
3397
 ;; n3 minimal
3398
 (defpackage "http://www.w3.org/2000/10/swap/log"
3399
   (:nicknames "log")
3400
   (:export "implies"
3401
            "antecedent"
3402
            "consequent"))
3403
 
3404
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3405
 
3406
 (eval-when (:compile-toplevel :load-toplevel :execute)
3407
   (defparameter spocq.i:*iri-package-names*
3408
     '("http://www.w3.org/2001/XMLSchema"
3409
       "http://www.w3.org/2001/XMLSchema-datatypes"
3410
       "http://www.w3.org/2003/01/geo/wgs84_pos#"
3411
       "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
3412
       "http://www.w3.org/2000/01/rdf-schema#"
3413
       "http://www.w3.org/2006/time#" ; add for temporal intervals
3414
       "http://xmlns.com/foaf/0.1/"
3415
       "http://www.w3.org/ns/auth/acl#"
3416
       "http://www.w3.org/ns/dcat#"
3417
       "http://rdfs.org/sioc/ns#"
3418
       "http://dydra.com#"
3419
       ;; ssl extensions
3420
       "http://dydra.com/schema/ssl#"
3421
       "http://www.iana.org/assignments/media-types/"
3422
       ;; ARQ extensions
3423
       "http://jena.hpl.hp.com/ARQ/list#"
3424
       "http://jena.hpl.hp.com/ARQ/property#"
3425
       ;; rdfcache terms
3426
       "urn:dydra"
3427
       ;; service-description terms
3428
       "http://www.w3.org/ns/sparql-service-description#"
3429
       "http://rdfs.org/ns/void#"
3430
       ;; provenance
3431
       "http://www.w3.org/ns/prov#"
3432
       "http://multimedialab.elis.ugent.be/users/samcoppe/ontologies/Premis/premis.owl#"
3433
       "http://www.w3.org/2002/07/owl#"
3434
       "http://www.mementoweb.org/terms/tb/"
3435
       "http://www.openarchives.org/ore/terms/"
3436
       "http://www.w3.org/2005/xpath-functions#"
3437
       "http://www.w3.org/2005/xpath-functions/math#"
3438
       "http://purl.org/dc/elements/1.1/"
3439
       "http://creativecommons.org/ns#"
3440
       "http://www.w3.org/2011/http-statusCodes#"
3441
       "http://www.w3.org/ns/earl#"
3442
       "http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#"
3443
       "http://www.w3.org/2001/sw/DataAccess/tests/test-dawg#"
3444
       "http://www.w3.org/2001/sw/DataAccess/tests/test-query#"
3445
       "http://www.w3.org/2009/sparql/tests/test-update#"
3446
       "http://www.w3.org/2011/http#"
3447
       "http://www.w3.org/2011/http-headers#"
3448
       "http://www.w3.org/ns/hydra/core#"
3449
       "http://www.w3.org/ns/activitystreams#"
3450
       "http://www.w3.org/2011/http-methods#"
3451
       )))
3452
 
3453
 (eval-when (:compile-toplevel :load-toplevel :execute)
3454
   (dolist (name '("IRI" "blankNode"))
3455
     (export (intern name '"rdf") '"rdf")))
3456
 
3457
 (eval-when (:compile-toplevel :load-toplevel :execute)
3458
   (setq spocq.i:*iri-package-names* (sort spocq.i:*iri-package-names* #'>  :key 'length))
3459
   (defparameter spocq.i:*iri-packages* 
3460
     (mapcar #'(lambda (name) (or (find-package name)
3461
                                  (cerror "continue without it" "IRI package not found: ~s." name)))
3462
             spocq.i:*iri-package-names*)
3463
     "A list of the packages which represent RDF vocabularies. Each symbol in such a package
3464
  represents a respective IRI in the vocabulary. The SPARQL parser recognizes such cases
3465
  and interns them as symbols rather than as spocq:iri instances. This permits to implement
3466
  built-in and extension operations as native function calls and to represent the expressions as simple
3467
  s-expressions."))
3468
 
3469
   
3470
 (eval-when (:compile-toplevel :load-toplevel :execute)
3471
   (flet ((define-package-keywords (package)
3472
            (eval `(progn ,@(loop for key being each symbol of package
3473
                                  unless (keywordp key)
3474
                                  collect `(defconstant ,key ',key))))))
3475
     (loop for package in spocq.i:*iri-packages* do (define-package-keywords package))))
3476
 
3477
 
3478
 (defun sort-iri-package-names ()
3479
   (setq spocq.i:*iri-package-names* (sort spocq.i:*iri-package-names* #'>  :key 'length))
3480
   (setq spocq.i:*iri-packages*
3481
         (mapcar #'(lambda (name) (or (find-package name)
3482
                                      (cerror "continue without it" "IRI package not found: ~s." name)))
3483
                 spocq.i:*iri-package-names*)))
3484
 
3485
 (defun add-iri-package (package-name)
3486
   (flet ((define-package-keywords (package)
3487
                                   (eval `(progn ,@(loop for key being each symbol of package
3488
                                                     unless (keywordp key)
3489
                                                     collect `(defconstant ,key ',key))))))
3490
     (pushnew package-name spocq.i:*iri-package-names* :test 'equalp)
3491
     (sort-iri-package-names)
3492
     (setq spocq.i:*iri-packages* 
3493
           (mapcar #'(lambda (name) (or (find-package name)
3494
                                        (cerror "continue without it" "IRI package not found: ~s." name)))
3495
                   spocq.i:*iri-package-names*))
3496
     (let ((package (find-package package-name)))
3497
       (define-package-keywords package)
3498
       package)))
3499
 ;;; (initialize-interned-terms )
3500
 
3501
 #|
3502
 extracting a package from an owl document:
3503
 - import it into a repository
3504
 - extract the subjects
3505
 (test-sparql "select distinct ?s
3506
 where {
3507
  ?s ?p ?o .
3508
  filter (datatype(?s) = <http://www.w3.org/2001/XMLSchema#anyURI>)
3509
 }
3510
 " :repository-id "schema/activitystreams")
3511
 - transform them into keywords
3512
 - construct the package definition
3513
 |#
3514
 
3515
 (defun derive-package-definition (repository namespace-name)
3516
   (let* ((subjects (spocq.i::test-sparql "select distinct ?s
3517
 where {
3518
  ?s ?p ?o .
3519
  filter (datatype(?s) = <http://www.w3.org/2001/XMLSchema#anyURI>)
3520
 }
3521
                                        " :repository-id repository))
3522
          (names (loop with prefix-length = (length namespace-name)
3523
                   for (iri) in subjects
3524
                   for lexical-form = (spocq.i::iri-lexical-form iri)
3525
                   when (and (> (length lexical-form) prefix-length)
3526
                             (string-equal namespace-name lexical-form :end2 prefix-length))
3527
                   collect (subseq lexical-form prefix-length))))
3528
     `(defpackage ,namespace-name
3529
        (:export ,@(sort names #'string<)))))
3530
 ;;; (derive-package-definition "schema/activitystreams" "http://www.w3.org/ns/activitystreams#")
3531
 ;;; (derive-package-definition "schema/httpmethods" "http://www.w3.org/2011/http-methods#")
3532
 
3533
 
3534
 (defun compute-owl-package-definition (repository-id namespace-name)
3535
   "extract a package definition from a an owl description"
3536
   (let* ((subjects (spocq.i::test-sparql "select distinct ?s
3537
 where {
3538
  { ?s a rdfs:Class . }
3539
  union
3540
  { ?s a rdf:Property . }
3541
  union
3542
  { ?s a rdf:Property . }
3543
 }"
3544
                                          :repository-id repository-id
3545
                                          )))
3546
     `(defpackage ,namespace-name
3547
        (:export ,@(loop with length = (length namespace-name)
3548
                     for (subject) in subjects
3549
                     for subject-lexical-form = (spocq.i::iri-lexical-form subject)
3550
                     for local-part = (subseq subject-lexical-form length)
3551
                     collect local-part)))))
3552
 ;;; (compute-owl-package-definition "schema/dcat" "http://www.w3.org/ns/dcat#")
3553
 #+(or)
3554
 (
3555
 (test-sparql "select * from <urn:dydra:all> where {?s ?P <https://spec.edmcouncil.org/fibo/ontology/FBC/FinancialInstruments/InstrumentPricing/BidPrice>}"
3556
              :repository-id "schema/fibo")
3557
 (test-sparql "select * from <urn:dydra:all> where {<https://spec.edmcouncil.org/fibo/ontology/FBC/FinancialInstruments/InstrumentPricing/BidPrice> ?P ?o}"
3558
              :repository-id "schema/fibo")
3559
 )
3560
 
3561
 (defun compute-owl-package-definitions (repository-id &key (separator #\/) (namespace-bindings ()))
3562
   "extract multiple package definitions from a an owl description.
3563
  use the given separator to separate the namespace name from the local part.
3564
  return a list of package definitions"
3565
   (let* ((subjects (spocq.i::test-sparql "select distinct ?s
3566
 from <urn:dydra:all>
3567
 where {
3568
  { ?s a rdfs:Class . }
3569
  union
3570
  { ?s a rdf:Property . }
3571
  union
3572
  { ?s a <http://www.w3.org/2002/07/owl#Class> }
3573
  union
3574
  { ?s a <http://www.w3.org/2002/07/owl#DatatypeProperty> }
3575
  union
3576
  { ?s a <http://www.w3.org/2002/07/owl#ObjectProperty> }
3577
 }"
3578
                                          :repository-id repository-id
3579
                                          ))
3580
          (collections (make-hash-table :test 'equal)))
3581
     ;(print (length subjects))
3582
     (loop for (subject) in (remove-if #'SPOCQ:BLANK-NODE-P subjects :key #'first) ;; skip anonymous owl composite classes
3583
       for subject-lexical-form = (spocq.i::iri-lexical-form subject)
3584
       for split-position = (position separator subject-lexical-form :from-end t)
3585
       when split-position
3586
       do (push (subseq subject-lexical-form (1+ split-position))
3587
                (gethash (subseq subject-lexical-form  0 (1+ split-position))
3588
                         collections)))
3589
     `(progn
3590
        ,@(sort (loop for namespace-name being each hash-key of collections
3591
                  using (hash-value names)
3592
                  for nickname = (first (rassoc namespace-name namespace-bindings :test #'string-equal))
3593
                  collect `(defpackage ,namespace-name
3594
                             ,@(when nickname `((:nicknames ,nickname)))
3595
                             (:export ,@(sort names #'string-lessp))))
3596
                #'string-lessp
3597
                :key #'second))))
3598
 
3599
 
3600
 (defun write-jsonld-context (package &key (prefix (or (first (package-nicknames package))
3601
                                                       (error "prefix is required")))
3602
                                      (stream *standard-output*))
3603
   (let* ((package-name (package-name package))
3604
         (entries (loop for symbol being each external-symbol of package
3605
                        for symbol-name = (symbol-name symbol)
3606
                        collect `(,(concatenate 'string prefix ":" symbol-name) .
3607
                                  (("@type" . "@id")
3608
                                   ("@id" . ,(concatenate 'string package-name symbol-name))))))
3609
         (definition `((,prefix . ,package-name) ,@entries)))
3610
     (pprint definition)
3611
     (format-json stream definition)))
3612
 #+(or)
3613
 (
3614
  (test-sparql "describe <_:f50c20a6-6aee-4302-a55b-27edefbb654cb5> from <urn:dydra:all>"  :repository-id "schema/fibo")
3615
  (defparameter *fibo-namespaces*
3616
    '(("fibo-be-fct-pub" . "https://spec.edmcouncil.org/fibo/ontology/BE/FunctionalEntities/Publishers/")
3617
      ("fibo-fbc-fct-mkt" . "https://spec.edmcouncil.org/fibo/ontology/FBC/FunctionalEntities/Markets/")
3618
      ("fibo-fbc-fi-fi" . "https://spec.edmcouncil.org/fibo/ontology/FBC/FinancialInstruments/FinancialInstruments/")
3619
      ("fibo-fbc-fi-ip" . "https://spec.edmcouncil.org/fibo/ontology/FBC/FinancialInstruments/InstrumentPricing/")
3620
      ("fibo-fbc-pas-fpas" . "https://spec.edmcouncil.org/fibo/ontology/FBC/ProductsAndServices/FinancialProductsAndServices/")
3621
      ("fibo-fnd-acc-cur" . "https://spec.edmcouncil.org/fibo/ontology/FND/Accounting/CurrencyAmount/")
3622
      ("fibo-fnd-arr-arr" . "https://spec.edmcouncil.org/fibo/ontology/FND/Arrangements/Arrangements/")
3623
      ("fibo-fnd-arr-cls" . "https://spec.edmcouncil.org/fibo/ontology/FND/Arrangements/ClassificationSchemes/")
3624
      ("fibo-fnd-arr-doc" . "https://spec.edmcouncil.org/fibo/ontology/FND/Arrangements/Documents/")
3625
      ("fibo-fnd-dt-fd" . "https://spec.edmcouncil.org/fibo/ontology/FND/DatesAndTimes/FinancialDates/")
3626
      ("fibo-fnd-gao-obj" . "https://spec.edmcouncil.org/fibo/ontology/FND/GoalsAndObjectives/Objectives/")
3627
      ("fibo-fnd-oac-own" . "https://spec.edmcouncil.org/fibo/ontology/FND/OwnershipAndControl/Ownership/")
3628
      ("fibo-fnd-qt-qtu" . "https://spec.edmcouncil.org/fibo/ontology/FND/Quantities/QuantitiesAndUnits/")
3629
      ("fibo-fnd-rel-rel" . "https://spec.edmcouncil.org/fibo/ontology/FND/Relations/Relations/")
3630
      ("fibo-fnd-utl-alx" . "https://spec.edmcouncil.org/fibo/ontology/FND/Utilities/Analytics/")))
3631
  ("fibo-fnd-utl-av" . "https://spec.edmcouncil.org/fibo/ontology/FND/Utilities/AnnotationVocabulary/")
3632
  (defparameter *defs* (compute-owl-package-definitions "schema/fibo"
3633
                                                        :namespace-bindings *fibo-namespace-bindings*))
3634
  (with-open-file (output "/opt/spocq/fibo-package.lisp" :direction :output
3635
                          :if-does-not-exist :create
3636
                          :if-exists :supersede)
3637
    (pprint *defs* output))
3638
  (load "/opt/spocq/fibo-package.lisp")
3639
  (with-open-file (output "/opt/spocq/fibo-context.json" :direction :output
3640
                          :if-does-not-exist :create
3641
                          :if-exists :supersede)
3642
    (write-jsonld-context (find-package "https://spec.edmcouncil.org/fibo/ontology/FBC/FinancialInstruments/InstrumentPricing/")
3643
                          :stream output))
3644
 
3645
  (test-sparql "select count(*) from <urn:dydra:all> where {?s ?p ?o}" :repository-id "schema/fibo")
3646
  (test-sparql "select (count(distinct ?g) as ?graphs) where {graph ?g {?s ?p ?o}}" :repository-id "schema/fibo")
3647
 )
3648
 
3649