@comunica/utils-expression-evaluator 4.4.2-alpha.49.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/lib/expressions/Aggregate.js +3 -1
  2. package/lib/expressions/Aggregate.js.map +1 -1
  3. package/lib/expressions/Existence.js +2 -1
  4. package/lib/expressions/Existence.js.map +1 -1
  5. package/lib/expressions/Expressions.js +1 -2
  6. package/lib/expressions/Expressions.js.map +1 -1
  7. package/lib/expressions/Operator.js +4 -1
  8. package/lib/expressions/Operator.js.map +1 -1
  9. package/lib/expressions/Term.js +56 -11
  10. package/lib/expressions/Term.js.map +1 -1
  11. package/lib/expressions/Variable.js +2 -1
  12. package/lib/expressions/Variable.js.map +1 -1
  13. package/lib/functions/Helpers.js +14 -12
  14. package/lib/functions/Helpers.js.map +1 -1
  15. package/lib/functions/OverloadTree.js +8 -0
  16. package/lib/functions/OverloadTree.js.map +1 -1
  17. package/lib/transformers/TermTransformer.js +1 -0
  18. package/lib/transformers/TermTransformer.js.map +1 -1
  19. package/lib/util/Consts.js +2 -3
  20. package/lib/util/Consts.js.map +1 -1
  21. package/lib/util/Context.js +1 -2
  22. package/lib/util/Context.js.map +1 -1
  23. package/lib/util/DateTimeHelpers.js +15 -16
  24. package/lib/util/DateTimeHelpers.js.map +1 -1
  25. package/lib/util/Errors.js +20 -2
  26. package/lib/util/Errors.js.map +1 -1
  27. package/lib/util/Parsing.d.ts +0 -1
  28. package/lib/util/Parsing.js +8 -11
  29. package/lib/util/Parsing.js.map +1 -1
  30. package/lib/util/Serialization.js +4 -5
  31. package/lib/util/Serialization.js.map +1 -1
  32. package/lib/util/SpecAlgos.js +3 -4
  33. package/lib/util/SpecAlgos.js.map +1 -1
  34. package/lib/util/TypeHandling.js +10 -10
  35. package/lib/util/TypeHandling.js.map +1 -1
  36. package/package.json +6 -6
@@ -3,10 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Aggregate = void 0;
4
4
  const types_1 = require("@comunica/types");
5
5
  class Aggregate {
6
+ name;
7
+ expression;
8
+ expressionType = types_1.ExpressionType.Aggregate;
6
9
  constructor(name, expression) {
7
10
  this.name = name;
8
11
  this.expression = expression;
9
- this.expressionType = types_1.ExpressionType.Aggregate;
10
12
  }
11
13
  }
12
14
  exports.Aggregate = Aggregate;
@@ -1 +1 @@
1
- {"version":3,"file":"Aggregate.js","sourceRoot":"","sources":["Aggregate.ts"],"names":[],"mappings":";;;AACA,2CAAiD;AAGjD,MAAa,SAAS;IAGpB,YACS,IAAY,EACZ,UAAmC;QADnC,SAAI,GAAJ,IAAI,CAAQ;QACZ,eAAU,GAAV,UAAU,CAAyB;QAJrC,mBAAc,GAA6B,sBAAc,CAAC,SAAS,CAAC;IAKxE,CAAC;CACL;AAPD,8BAOC","sourcesContent":["import type { AggregateExpression } from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\nimport type { Algebra as Alg } from '@comunica/utils-algebra';\n\nexport class Aggregate implements AggregateExpression {\n public expressionType: ExpressionType.Aggregate = ExpressionType.Aggregate;\n\n public constructor(\n public name: string,\n public expression: Alg.AggregateExpression,\n ) {}\n}\n"]}
1
+ {"version":3,"file":"Aggregate.js","sourceRoot":"","sources":["Aggregate.ts"],"names":[],"mappings":";;;AACA,2CAAiD;AAGjD,MAAa,SAAS;IAIX;IACA;IAJF,cAAc,GAA6B,sBAAc,CAAC,SAAS,CAAC;IAE3E,YACS,IAAY,EACZ,UAAmC;QADnC,SAAI,GAAJ,IAAI,CAAQ;QACZ,eAAU,GAAV,UAAU,CAAyB;IACzC,CAAC;CACL;AAPD,8BAOC","sourcesContent":["import type { AggregateExpression } from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\nimport type { Algebra as Alg } from '@comunica/utils-algebra';\n\nexport class Aggregate implements AggregateExpression {\n public expressionType: ExpressionType.Aggregate = ExpressionType.Aggregate;\n\n public constructor(\n public name: string,\n public expression: Alg.AggregateExpression,\n ) {}\n}\n"]}
@@ -3,9 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Existence = void 0;
4
4
  const types_1 = require("@comunica/types");
5
5
  class Existence {
6
+ expression;
7
+ expressionType = types_1.ExpressionType.Existence;
6
8
  constructor(expression) {
7
9
  this.expression = expression;
8
- this.expressionType = types_1.ExpressionType.Existence;
9
10
  }
10
11
  }
11
12
  exports.Existence = Existence;
@@ -1 +1 @@
1
- {"version":3,"file":"Existence.js","sourceRoot":"","sources":["Existence.ts"],"names":[],"mappings":";;;AACA,2CAAiD;AAGjD,MAAa,SAAS;IAEpB,YAA0B,UAAmC;QAAnC,eAAU,GAAV,UAAU,CAAyB;QADtD,mBAAc,GAA6B,sBAAc,CAAC,SAAS,CAAC;IACX,CAAC;CAClE;AAHD,8BAGC","sourcesContent":["import type { ExistenceExpression } from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\nimport type { Algebra as Alg } from '@comunica/utils-algebra';\n\nexport class Existence implements ExistenceExpression {\n public expressionType: ExpressionType.Existence = ExpressionType.Existence;\n public constructor(public expression: Alg.ExistenceExpression) {}\n}\n"]}
1
+ {"version":3,"file":"Existence.js","sourceRoot":"","sources":["Existence.ts"],"names":[],"mappings":";;;AACA,2CAAiD;AAGjD,MAAa,SAAS;IAEM;IADnB,cAAc,GAA6B,sBAAc,CAAC,SAAS,CAAC;IAC3E,YAA0B,UAAmC;QAAnC,eAAU,GAAV,UAAU,CAAyB;IAAG,CAAC;CAClE;AAHD,8BAGC","sourcesContent":["import type { ExistenceExpression } from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\nimport type { Algebra as Alg } from '@comunica/utils-algebra';\n\nexport class Existence implements ExistenceExpression {\n public expressionType: ExpressionType.Existence = ExpressionType.Existence;\n public constructor(public expression: Alg.ExistenceExpression) {}\n}\n"]}
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.asTermType = void 0;
3
+ exports.asTermType = asTermType;
4
4
  function asTermType(type) {
5
5
  if (type === 'namedNode' || type === 'literal' || type === 'blankNode' || type === 'quad') {
6
6
  return type;
7
7
  }
8
8
  return undefined;
9
9
  }
10
- exports.asTermType = asTermType;
11
10
  //# sourceMappingURL=Expressions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Expressions.js","sourceRoot":"","sources":["Expressions.ts"],"names":[],"mappings":";;;AAGA,SAAgB,UAAU,CAAC,IAAY;IACrC,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AALD,gCAKC","sourcesContent":["// TODO: Create alias Term = TermExpression\nimport type { TermType } from '@comunica/types';\n\nexport function asTermType(type: string): TermType | undefined {\n if (type === 'namedNode' || type === 'literal' || type === 'blankNode' || type === 'quad') {\n return type;\n }\n return undefined;\n}\n"]}
1
+ {"version":3,"file":"Expressions.js","sourceRoot":"","sources":["Expressions.ts"],"names":[],"mappings":";;AAEA,gCAKC;AALD,SAAgB,UAAU,CAAC,IAAY;IACrC,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["import type { TermType } from '@comunica/types';\n\nexport function asTermType(type: string): TermType | undefined {\n if (type === 'namedNode' || type === 'literal' || type === 'blankNode' || type === 'quad') {\n return type;\n }\n return undefined;\n}\n"]}
@@ -3,11 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Operator = void 0;
4
4
  const types_1 = require("@comunica/types");
5
5
  class Operator {
6
+ name;
7
+ args;
8
+ apply;
9
+ expressionType = types_1.ExpressionType.Operator;
6
10
  constructor(name, args, apply) {
7
11
  this.name = name;
8
12
  this.args = args;
9
13
  this.apply = apply;
10
- this.expressionType = types_1.ExpressionType.Operator;
11
14
  }
12
15
  }
13
16
  exports.Operator = Operator;
@@ -1 +1 @@
1
- {"version":3,"file":"Operator.js","sourceRoot":"","sources":["Operator.ts"],"names":[],"mappings":";;;AACA,2CAAiD;AAEjD,MAAa,QAAQ;IAGnB,YAA0B,IAAY,EAAS,IAAkB,EAAS,KAA0B;QAA1E,SAAI,GAAJ,IAAI,CAAQ;QAAS,SAAI,GAAJ,IAAI,CAAc;QAAS,UAAK,GAAL,KAAK,CAAqB;QAF7F,mBAAc,GAA4B,sBAAc,CAAC,QAAQ,CAAC;IAE8B,CAAC;CACzG;AAJD,4BAIC","sourcesContent":["import type { Expression, FunctionApplication, OperatorExpression } from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\n\nexport class Operator implements OperatorExpression {\n public expressionType: ExpressionType.Operator = ExpressionType.Operator;\n\n public constructor(public name: string, public args: Expression[], public apply: FunctionApplication) {}\n}\n"]}
1
+ {"version":3,"file":"Operator.js","sourceRoot":"","sources":["Operator.ts"],"names":[],"mappings":";;;AACA,2CAAiD;AAEjD,MAAa,QAAQ;IAGO;IAAqB;IAA2B;IAFnE,cAAc,GAA4B,sBAAc,CAAC,QAAQ,CAAC;IAEzE,YAA0B,IAAY,EAAS,IAAkB,EAAS,KAA0B;QAA1E,SAAI,GAAJ,IAAI,CAAQ;QAAS,SAAI,GAAJ,IAAI,CAAc;QAAS,UAAK,GAAL,KAAK,CAAqB;IAAG,CAAC;CACzG;AAJD,4BAIC","sourcesContent":["import type { Expression, FunctionApplication, OperatorExpression } from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\n\nexport class Operator implements OperatorExpression {\n public expressionType: ExpressionType.Operator = ExpressionType.Operator;\n\n public constructor(public name: string, public args: Expression[], public apply: FunctionApplication) {}\n}\n"]}
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isNonLexicalLiteral = exports.NonLexicalLiteral = exports.YearMonthDurationLiteral = exports.DayTimeDurationLiteral = exports.DurationLiteral = exports.DateLiteral = exports.TimeLiteral = exports.DateTimeLiteral = exports.StringLiteral = exports.DirLangStringLiteral = exports.LangStringLiteral = exports.BooleanLiteral = exports.DoubleLiteral = exports.FloatLiteral = exports.DecimalLiteral = exports.IntegerLiteral = exports.NumericLiteral = exports.Literal = exports.isLiteralTermExpression = exports.DefaultGraph = exports.Quad = exports.BlankNode = exports.NamedNode = exports.Term = void 0;
3
+ exports.NonLexicalLiteral = exports.YearMonthDurationLiteral = exports.DayTimeDurationLiteral = exports.DurationLiteral = exports.DateLiteral = exports.TimeLiteral = exports.DateTimeLiteral = exports.StringLiteral = exports.DirLangStringLiteral = exports.LangStringLiteral = exports.BooleanLiteral = exports.DoubleLiteral = exports.FloatLiteral = exports.DecimalLiteral = exports.IntegerLiteral = exports.NumericLiteral = exports.Literal = exports.DefaultGraph = exports.Quad = exports.BlankNode = exports.NamedNode = exports.Term = void 0;
4
+ exports.isLiteralTermExpression = isLiteralTermExpression;
5
+ exports.isNonLexicalLiteral = isNonLexicalLiteral;
4
6
  const types_1 = require("@comunica/types");
5
7
  const C = require("../util/Consts");
6
8
  const Consts_1 = require("../util/Consts");
7
9
  const Err = require("../util/Errors");
8
10
  const Serialization_1 = require("../util/Serialization");
9
11
  class Term {
10
- constructor() {
11
- this.expressionType = types_1.ExpressionType.Term;
12
- }
12
+ expressionType = types_1.ExpressionType.Term;
13
13
  str() {
14
14
  throw new Err.InvalidArgumentTypes([this], C.SparqlOperator.STR);
15
15
  }
@@ -20,10 +20,11 @@ class Term {
20
20
  exports.Term = Term;
21
21
  // NamedNodes -----------------------------------------------------------------
22
22
  class NamedNode extends Term {
23
+ value;
24
+ termType = 'namedNode';
23
25
  constructor(value) {
24
26
  super();
25
27
  this.value = value;
26
- this.termType = 'namedNode';
27
28
  }
28
29
  toRDF(dataFactory) {
29
30
  return dataFactory.namedNode(this.value);
@@ -35,9 +36,10 @@ class NamedNode extends Term {
35
36
  exports.NamedNode = NamedNode;
36
37
  // BlankNodes -----------------------------------------------------------------
37
38
  class BlankNode extends Term {
39
+ value;
40
+ termType = 'blankNode';
38
41
  constructor(value) {
39
42
  super();
40
- this.termType = 'blankNode';
41
43
  this.value = value;
42
44
  }
43
45
  toRDF(dataFactory) {
@@ -47,13 +49,17 @@ class BlankNode extends Term {
47
49
  exports.BlankNode = BlankNode;
48
50
  // Quads -----------------------------------------------------------------
49
51
  class Quad extends Term {
52
+ subject;
53
+ predicate;
54
+ object;
55
+ graph;
56
+ termType = 'quad';
50
57
  constructor(subject, predicate, object, graph) {
51
58
  super();
52
59
  this.subject = subject;
53
60
  this.predicate = predicate;
54
61
  this.object = object;
55
62
  this.graph = graph;
56
- this.termType = 'quad';
57
63
  }
58
64
  toRDF(dataFactory) {
59
65
  return dataFactory.quad(this.subject.toRDF(dataFactory), this.predicate.toRDF(dataFactory), this.object.toRDF(dataFactory), this.graph.toRDF(dataFactory));
@@ -64,9 +70,9 @@ class Quad extends Term {
64
70
  }
65
71
  exports.Quad = Quad;
66
72
  class DefaultGraph extends Term {
73
+ termType = 'defaultGraph';
67
74
  constructor() {
68
75
  super();
69
- this.termType = 'defaultGraph';
70
76
  }
71
77
  toRDF(dataFactory) {
72
78
  return dataFactory.defaultGraph();
@@ -83,8 +89,13 @@ function isLiteralTermExpression(expr) {
83
89
  }
84
90
  return undefined;
85
91
  }
86
- exports.isLiteralTermExpression = isLiteralTermExpression;
87
92
  class Literal extends Term {
93
+ typedValue;
94
+ dataType;
95
+ strValue;
96
+ language;
97
+ direction;
98
+ termType = 'literal';
88
99
  /**
89
100
  * @param typedValue internal representation of this literal's value
90
101
  * @param dataType a string representing the datatype. Can be of type @see LiteralTypes or any URI
@@ -99,7 +110,6 @@ class Literal extends Term {
99
110
  this.strValue = strValue;
100
111
  this.language = language;
101
112
  this.direction = direction;
102
- this.termType = 'literal';
103
113
  }
104
114
  toRDF(dataFactory) {
105
115
  return dataFactory.literal(this.strValue ?? this.str(), this.direction && this.language ?
@@ -112,6 +122,9 @@ class Literal extends Term {
112
122
  }
113
123
  exports.Literal = Literal;
114
124
  class NumericLiteral extends Literal {
125
+ typedValue;
126
+ strValue;
127
+ language;
115
128
  constructor(typedValue, dataType, strValue, language) {
116
129
  super(typedValue, dataType, strValue, language);
117
130
  this.typedValue = typedValue;
@@ -135,6 +148,9 @@ class NumericLiteral extends Literal {
135
148
  }
136
149
  exports.NumericLiteral = NumericLiteral;
137
150
  class IntegerLiteral extends NumericLiteral {
151
+ typedValue;
152
+ strValue;
153
+ language;
138
154
  constructor(typedValue, dataType, strValue, language) {
139
155
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_INTEGER, strValue, language);
140
156
  this.typedValue = typedValue;
@@ -147,6 +163,9 @@ class IntegerLiteral extends NumericLiteral {
147
163
  }
148
164
  exports.IntegerLiteral = IntegerLiteral;
149
165
  class DecimalLiteral extends NumericLiteral {
166
+ typedValue;
167
+ strValue;
168
+ language;
150
169
  constructor(typedValue, dataType, strValue, language) {
151
170
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_DECIMAL, strValue, language);
152
171
  this.typedValue = typedValue;
@@ -159,6 +178,9 @@ class DecimalLiteral extends NumericLiteral {
159
178
  }
160
179
  exports.DecimalLiteral = DecimalLiteral;
161
180
  class FloatLiteral extends NumericLiteral {
181
+ typedValue;
182
+ strValue;
183
+ language;
162
184
  constructor(typedValue, dataType, strValue, language) {
163
185
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_FLOAT, strValue, language);
164
186
  this.typedValue = typedValue;
@@ -171,6 +193,9 @@ class FloatLiteral extends NumericLiteral {
171
193
  }
172
194
  exports.FloatLiteral = FloatLiteral;
173
195
  class DoubleLiteral extends NumericLiteral {
196
+ typedValue;
197
+ strValue;
198
+ language;
174
199
  constructor(typedValue, dataType, strValue, language) {
175
200
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_DOUBLE, strValue, language);
176
201
  this.typedValue = typedValue;
@@ -201,6 +226,8 @@ class DoubleLiteral extends NumericLiteral {
201
226
  }
202
227
  exports.DoubleLiteral = DoubleLiteral;
203
228
  class BooleanLiteral extends Literal {
229
+ typedValue;
230
+ strValue;
204
231
  constructor(typedValue, strValue, dataType) {
205
232
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_BOOLEAN, strValue);
206
233
  this.typedValue = typedValue;
@@ -212,6 +239,8 @@ class BooleanLiteral extends Literal {
212
239
  }
213
240
  exports.BooleanLiteral = BooleanLiteral;
214
241
  class LangStringLiteral extends Literal {
242
+ typedValue;
243
+ language;
215
244
  constructor(typedValue, language, dataType) {
216
245
  super(typedValue, dataType ?? Consts_1.TypeURL.RDF_LANG_STRING, typedValue, language);
217
246
  this.typedValue = typedValue;
@@ -224,6 +253,9 @@ class LangStringLiteral extends Literal {
224
253
  }
225
254
  exports.LangStringLiteral = LangStringLiteral;
226
255
  class DirLangStringLiteral extends Literal {
256
+ typedValue;
257
+ language;
258
+ direction;
227
259
  constructor(typedValue, language, direction, dataType) {
228
260
  super(typedValue, dataType ?? Consts_1.TypeURL.RDF_DIR_LANG_STRING, typedValue, language, direction);
229
261
  this.typedValue = typedValue;
@@ -237,6 +269,7 @@ exports.DirLangStringLiteral = DirLangStringLiteral;
237
269
  // https://www.w3.org/TR/sparql11-query/#func-strings
238
270
  // This does not include language tagged literals
239
271
  class StringLiteral extends Literal {
272
+ typedValue;
240
273
  /**
241
274
  * @param typedValue
242
275
  * @param dataType Should be type that implements XSD_STRING
@@ -251,6 +284,8 @@ class StringLiteral extends Literal {
251
284
  }
252
285
  exports.StringLiteral = StringLiteral;
253
286
  class DateTimeLiteral extends Literal {
287
+ typedValue;
288
+ strValue;
254
289
  constructor(typedValue, strValue, dataType) {
255
290
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_DATE_TIME, strValue);
256
291
  this.typedValue = typedValue;
@@ -262,6 +297,8 @@ class DateTimeLiteral extends Literal {
262
297
  }
263
298
  exports.DateTimeLiteral = DateTimeLiteral;
264
299
  class TimeLiteral extends Literal {
300
+ typedValue;
301
+ strValue;
265
302
  constructor(typedValue, strValue, dataType) {
266
303
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_TIME, strValue);
267
304
  this.typedValue = typedValue;
@@ -273,6 +310,8 @@ class TimeLiteral extends Literal {
273
310
  }
274
311
  exports.TimeLiteral = TimeLiteral;
275
312
  class DateLiteral extends Literal {
313
+ typedValue;
314
+ strValue;
276
315
  constructor(typedValue, strValue, dataType) {
277
316
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_DATE, strValue);
278
317
  this.typedValue = typedValue;
@@ -284,6 +323,8 @@ class DateLiteral extends Literal {
284
323
  }
285
324
  exports.DateLiteral = DateLiteral;
286
325
  class DurationLiteral extends Literal {
326
+ typedValue;
327
+ strValue;
287
328
  constructor(typedValue, strValue, dataType) {
288
329
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_DURATION, strValue);
289
330
  this.typedValue = typedValue;
@@ -295,6 +336,8 @@ class DurationLiteral extends Literal {
295
336
  }
296
337
  exports.DurationLiteral = DurationLiteral;
297
338
  class DayTimeDurationLiteral extends DurationLiteral {
339
+ typedValue;
340
+ strValue;
298
341
  constructor(typedValue, strValue, dataType) {
299
342
  super(typedValue, strValue, dataType ?? Consts_1.TypeURL.XSD_DAY_TIME_DURATION);
300
343
  this.typedValue = typedValue;
@@ -303,6 +346,8 @@ class DayTimeDurationLiteral extends DurationLiteral {
303
346
  }
304
347
  exports.DayTimeDurationLiteral = DayTimeDurationLiteral;
305
348
  class YearMonthDurationLiteral extends Literal {
349
+ typedValue;
350
+ strValue;
306
351
  constructor(typedValue, strValue, dataType) {
307
352
  super(typedValue, dataType ?? Consts_1.TypeURL.XSD_YEAR_MONTH_DURATION, strValue);
308
353
  this.typedValue = typedValue;
@@ -331,6 +376,7 @@ exports.YearMonthDurationLiteral = YearMonthDurationLiteral;
331
376
  * - ... some other more precise thing i can't find...
332
377
  */
333
378
  class NonLexicalLiteral extends Literal {
379
+ openWorldType;
334
380
  constructor(typedValue, dataType, openWorldType, strValue, language) {
335
381
  super({ toString: () => 'undefined' }, dataType, strValue, language);
336
382
  this.openWorldType = openWorldType;
@@ -354,5 +400,4 @@ function isNonLexicalLiteral(lit) {
354
400
  }
355
401
  return undefined;
356
402
  }
357
- exports.isNonLexicalLiteral = isNonLexicalLiteral;
358
403
  //# sourceMappingURL=Term.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Term.js","sourceRoot":"","sources":["Term.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n ComunicaDataFactory,\n IDateRepresentation,\n IDateTimeRepresentation,\n IDurationRepresentation,\n ISuperTypeProvider,\n ITimeRepresentation,\n IYearMonthDurationRepresentation,\n TermExpression,\n TermType,\n} from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport * as C from '../util/Consts';\nimport { TypeURL } from '../util/Consts';\nimport * as Err from '../util/Errors';\nimport { serializeDate, serializeDateTime, serializeDuration, serializeTime } from '../util/Serialization';\n\nexport abstract class Term implements TermExpression {\n public expressionType: ExpressionType.Term = ExpressionType.Term;\n public abstract termType: TermType;\n\n public abstract toRDF(dataFactory: ComunicaDataFactory): RDF.Term;\n\n public str(): string {\n throw new Err.InvalidArgumentTypes([ this ], C.SparqlOperator.STR);\n }\n\n public coerceEBV(): boolean {\n throw new Err.EBVCoercionError(this);\n }\n}\n\n// NamedNodes -----------------------------------------------------------------\nexport class NamedNode extends Term {\n public termType: TermType = 'namedNode';\n public constructor(public value: string) {\n super();\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.Term {\n return dataFactory.namedNode(this.value);\n }\n\n public override str(): string {\n return this.value;\n }\n}\n\n// BlankNodes -----------------------------------------------------------------\n\nexport class BlankNode extends Term {\n public value: RDF.BlankNode | string;\n public termType: TermType = 'blankNode';\n\n public constructor(value: RDF.BlankNode | string) {\n super();\n this.value = value;\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.Term {\n return typeof this.value === 'string' ? dataFactory.blankNode(this.value) : this.value;\n }\n}\n\n// Quads -----------------------------------------------------------------\nexport class Quad extends Term {\n public termType: TermType = 'quad';\n\n public constructor(\n public readonly subject: Term,\n public readonly predicate: Term,\n public readonly object: Term,\n public readonly graph: Term,\n ) {\n super();\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.BaseQuad {\n return dataFactory.quad(\n <RDF.Quad_Subject> this.subject.toRDF(dataFactory),\n <RDF.Quad_Predicate> this.predicate.toRDF(dataFactory),\n <RDF.Quad_Object> this.object.toRDF(dataFactory),\n <RDF.Quad_Graph> this.graph.toRDF(dataFactory),\n );\n }\n\n public override str(): string {\n return `Quad: [${this.subject.str()}, ${this.predicate.str()}, ${this.object.str()}, ${this.graph.str()}]`;\n }\n}\n\nexport class DefaultGraph extends Term {\n public termType: TermType = 'defaultGraph';\n\n public constructor() {\n super();\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.DefaultGraph {\n return dataFactory.defaultGraph();\n }\n\n public override str(): string {\n return 'DefaultGraph';\n }\n}\n\n// Literals-- -----------------------------------------------------------------\nexport function isLiteralTermExpression(expr: TermExpression): Literal<any> | undefined {\n if (expr.termType === 'literal') {\n return <Literal<any>> expr;\n }\n return undefined;\n}\n\nexport interface ISerializable {\n toString: () => string;\n}\n\nexport class Literal<T extends ISerializable> extends Term {\n public termType = <const> 'literal';\n /**\n * @param typedValue internal representation of this literal's value\n * @param dataType a string representing the datatype. Can be of type @see LiteralTypes or any URI\n * @param strValue the string value of this literal. In other words, the string representing the RDF.literal value.\n * @param language the language, mainly for language enabled strings like RDF_LANG_STRING\n * @param direction the base direction, mainly for directional language enabled strings like RDF_DIR_LANG_STRING\n */\n public constructor(\n public typedValue: T,\n public dataType: string,\n public strValue?: string,\n public language?: string,\n public direction?: 'ltr' | 'rtl',\n ) {\n super();\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.Literal {\n return dataFactory.literal(\n this.strValue ?? this.str(),\n this.direction && this.language ?\n { language: this.language, direction: this.direction } :\n this.language ?? dataFactory.namedNode(this.dataType),\n );\n }\n\n public override str(): string {\n return this.strValue ?? this.typedValue.toString();\n }\n}\n\nexport abstract class NumericLiteral extends Literal<number> {\n protected constructor(\n public override typedValue: number,\n dataType: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType, strValue, language);\n }\n\n protected abstract specificFormatter(val: number): string;\n\n public override coerceEBV(): boolean {\n return Boolean(this.typedValue);\n }\n\n public override toRDF(dataFactory: ComunicaDataFactory): RDF.Literal {\n const term = super.toRDF(dataFactory);\n if (!Number.isFinite(this.typedValue)) {\n term.value = term.value.replace('Infinity', 'INF');\n }\n return term;\n }\n\n public override str(): string {\n return this.strValue ??\n this.specificFormatter(this.typedValue);\n }\n}\n\nexport class IntegerLiteral extends NumericLiteral {\n public constructor(\n public override typedValue: number,\n dataType?: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_INTEGER, strValue, language);\n }\n\n protected specificFormatter(val: number): string {\n return val.toFixed(0);\n }\n}\n\nexport class DecimalLiteral extends NumericLiteral {\n public constructor(\n public override typedValue: number,\n dataType?: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DECIMAL, strValue, language);\n }\n\n protected specificFormatter(val: number): string {\n return val.toString();\n }\n}\n\nexport class FloatLiteral extends NumericLiteral {\n public constructor(\n public override typedValue: number,\n dataType?: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_FLOAT, strValue, language);\n }\n\n protected specificFormatter(val: number): string {\n return val.toString();\n }\n}\n\nexport class DoubleLiteral extends NumericLiteral {\n public constructor(\n public override typedValue: number,\n dataType?: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DOUBLE, strValue, language);\n }\n\n protected specificFormatter(val: number): string {\n if (!Number.isFinite(val)) {\n if (val > 0) {\n return 'INF';\n }\n if (val < 0) {\n return '-INF';\n }\n return 'NaN';\n }\n\n const jsExponential = val.toExponential();\n const [ jsMantisse, jsExponent ] = jsExponential.split('e');\n\n // Leading + must be removed for integer\n // https://www.w3.org/TR/xmlschema-2/#integer\n const exponent = jsExponent.replace(/\\+/u, '');\n\n // SPARQL test suite prefers trailing zero's\n const mantisse = jsMantisse.includes('.') ?\n jsMantisse :\n `${jsMantisse}.0`;\n\n return `${mantisse}E${exponent}`;\n }\n}\n\nexport class BooleanLiteral extends Literal<boolean> {\n public constructor(public override typedValue: boolean, public override strValue?: string, dataType?: string) {\n super(typedValue, dataType ?? TypeURL.XSD_BOOLEAN, strValue);\n }\n\n public override coerceEBV(): boolean {\n return this.typedValue;\n }\n}\n\nexport class LangStringLiteral extends Literal<string> {\n public constructor(public override typedValue: string, public override language: string, dataType?: string) {\n super(typedValue, dataType ?? TypeURL.RDF_LANG_STRING, typedValue, language);\n }\n\n public override coerceEBV(): boolean {\n // Throws in [SPARQL 1.2](https://www.w3.org/TR/sparql12-query/#ebv), and [1.1](https://www.w3.org/TR/sparql11-query/#ebv)\n return super.coerceEBV();\n }\n}\n\nexport class DirLangStringLiteral extends Literal<string> {\n public constructor(\n public override typedValue: string,\n public override language: string,\n public override direction: 'ltr' | 'rtl',\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.RDF_DIR_LANG_STRING, typedValue, language, direction);\n }\n}\n\n// https://www.w3.org/TR/2004/REC-rdf-concepts-20040210/#dfn-plain-literal\n// https://www.w3.org/TR/sparql11-query/#defn_SimpleLiteral\n// https://www.w3.org/TR/sparql11-query/#func-strings\n// This does not include language tagged literals\nexport class StringLiteral extends Literal<string> {\n /**\n * @param typedValue\n * @param dataType Should be type that implements XSD_STRING\n */\n public constructor(public override typedValue: string, dataType?: string) {\n super(typedValue, dataType ?? TypeURL.XSD_STRING, typedValue);\n }\n\n public override coerceEBV(): boolean {\n return this.str().length > 0;\n }\n}\n\nexport class DateTimeLiteral extends Literal<IDateTimeRepresentation> {\n public constructor(\n public override typedValue: IDateTimeRepresentation,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DATE_TIME, strValue);\n }\n\n public override str(): string {\n return serializeDateTime(this.typedValue);\n }\n}\n\nexport class TimeLiteral extends Literal<ITimeRepresentation> {\n public constructor(\n public override typedValue: ITimeRepresentation,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_TIME, strValue);\n }\n\n public override str(): string {\n return serializeTime(this.typedValue);\n }\n}\n\nexport class DateLiteral extends Literal<IDateRepresentation> {\n public constructor(\n public override typedValue: IDateRepresentation,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DATE, strValue);\n }\n\n public override str(): string {\n return serializeDate(this.typedValue);\n }\n}\n\nexport class DurationLiteral extends Literal<Partial<IDurationRepresentation>> {\n public constructor(\n public override typedValue: Partial<IDurationRepresentation>,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DURATION, strValue);\n }\n\n public override str(): string {\n return serializeDuration(this.typedValue);\n }\n}\n\nexport class DayTimeDurationLiteral extends DurationLiteral {\n public constructor(\n public override typedValue: Partial<IDurationRepresentation>,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, strValue, dataType ?? TypeURL.XSD_DAY_TIME_DURATION);\n }\n}\n\nexport class YearMonthDurationLiteral extends Literal<Partial<IYearMonthDurationRepresentation>> {\n public constructor(\n public override typedValue: Partial<IYearMonthDurationRepresentation>,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_YEAR_MONTH_DURATION, strValue);\n }\n\n public override str(): string {\n return serializeDuration(this.typedValue, 'P0M');\n }\n}\n\n/**\n * This class is used when a literal is parsed, and it's value is\n * an invalid lexical form for it's datatype. The spec defines value with\n * invalid lexical form are still valid terms, and as such we can not error\n * immediately. This class makes sure that the typedValue will remain undefined,\n * and the category 'nonlexical'. This way, only when operators apply to the\n * 'nonlexical' category, they will keep working, otherwise they will throw a\n * type error.\n * This seems to match the spec, except maybe for functions that accept\n * non-lexical values for their datatype.\n *\n * See:\n * - https://www.w3.org/TR/xquery/#dt-type-error\n * - https://www.w3.org/TR/rdf-concepts/#section-Literal-Value\n * - https://www.w3.org/TR/xquery/#dt-ebv\n * - ... some other more precise thing i can't find...\n */\nexport class NonLexicalLiteral extends Literal<{ toString: () => 'undefined' }> {\n public constructor(\n typedValue: undefined,\n dataType: string,\n private readonly openWorldType: ISuperTypeProvider,\n strValue?: string,\n language?: string,\n ) {\n super({ toString: () => 'undefined' }, dataType, strValue, language);\n }\n\n public override coerceEBV(): boolean {\n // Always throws in [SPARQL 1.2](https://www.w3.org/TR/sparql12-query/#ebv),\n // and sometimes throws in [1.1](https://www.w3.org/TR/sparql11-query/#ebv)\n return super.coerceEBV();\n }\n\n public override toRDF(dataFactory: ComunicaDataFactory): RDF.Literal {\n return dataFactory.literal(\n this.str(),\n this.language ?? dataFactory.namedNode(this.dataType),\n );\n }\n\n public override str(): string {\n return this.strValue ?? '';\n }\n}\n\nexport function isNonLexicalLiteral(lit: Literal<any>): NonLexicalLiteral | undefined {\n if (lit instanceof NonLexicalLiteral) {\n return lit;\n }\n return undefined;\n}\n"]}
1
+ {"version":3,"file":"Term.js","sourceRoot":"","sources":["Term.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n ComunicaDataFactory,\n IDateRepresentation,\n IDateTimeRepresentation,\n IDurationRepresentation,\n ISuperTypeProvider,\n ITimeRepresentation,\n IYearMonthDurationRepresentation,\n TermExpression,\n TermType,\n} from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport * as C from '../util/Consts';\nimport { TypeURL } from '../util/Consts';\nimport * as Err from '../util/Errors';\nimport { serializeDate, serializeDateTime, serializeDuration, serializeTime } from '../util/Serialization';\n\nexport abstract class Term implements TermExpression {\n public expressionType: ExpressionType.Term = ExpressionType.Term;\n public abstract termType: TermType;\n\n public abstract toRDF(dataFactory: ComunicaDataFactory): RDF.Term;\n\n public str(): string {\n throw new Err.InvalidArgumentTypes([ this ], C.SparqlOperator.STR);\n }\n\n public coerceEBV(): boolean {\n throw new Err.EBVCoercionError(this);\n }\n}\n\n// NamedNodes -----------------------------------------------------------------\nexport class NamedNode extends Term {\n public termType: TermType = 'namedNode';\n public constructor(public value: string) {\n super();\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.Term {\n return dataFactory.namedNode(this.value);\n }\n\n public override str(): string {\n return this.value;\n }\n}\n\n// BlankNodes -----------------------------------------------------------------\n\nexport class BlankNode extends Term {\n public value: RDF.BlankNode | string;\n public termType: TermType = 'blankNode';\n\n public constructor(value: RDF.BlankNode | string) {\n super();\n this.value = value;\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.Term {\n return typeof this.value === 'string' ? dataFactory.blankNode(this.value) : this.value;\n }\n}\n\n// Quads -----------------------------------------------------------------\nexport class Quad extends Term {\n public termType: TermType = 'quad';\n\n public constructor(\n public readonly subject: Term,\n public readonly predicate: Term,\n public readonly object: Term,\n public readonly graph: Term,\n ) {\n super();\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.BaseQuad {\n return dataFactory.quad(\n <RDF.Quad_Subject> this.subject.toRDF(dataFactory),\n <RDF.Quad_Predicate> this.predicate.toRDF(dataFactory),\n <RDF.Quad_Object> this.object.toRDF(dataFactory),\n <RDF.Quad_Graph> this.graph.toRDF(dataFactory),\n );\n }\n\n public override str(): string {\n return `Quad: [${this.subject.str()}, ${this.predicate.str()}, ${this.object.str()}, ${this.graph.str()}]`;\n }\n}\n\nexport class DefaultGraph extends Term {\n public termType: TermType = 'defaultGraph';\n\n public constructor() {\n super();\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.DefaultGraph {\n return dataFactory.defaultGraph();\n }\n\n public override str(): string {\n return 'DefaultGraph';\n }\n}\n\n// Literals-- -----------------------------------------------------------------\nexport function isLiteralTermExpression(expr: TermExpression): Literal<any> | undefined {\n if (expr.termType === 'literal') {\n return <Literal<any>> expr;\n }\n return undefined;\n}\n\nexport interface ISerializable {\n toString: () => string;\n}\n\nexport class Literal<T extends ISerializable> extends Term {\n public termType = <const> 'literal';\n /**\n * @param typedValue internal representation of this literal's value\n * @param dataType a string representing the datatype. Can be of type @see LiteralTypes or any URI\n * @param strValue the string value of this literal. In other words, the string representing the RDF.literal value.\n * @param language the language, mainly for language enabled strings like RDF_LANG_STRING\n * @param direction the base direction, mainly for directional language enabled strings like RDF_DIR_LANG_STRING\n */\n public constructor(\n public typedValue: T,\n public dataType: string,\n public strValue?: string,\n public language?: string,\n public direction?: 'ltr' | 'rtl',\n ) {\n super();\n }\n\n public toRDF(dataFactory: ComunicaDataFactory): RDF.Literal {\n return dataFactory.literal(\n this.strValue ?? this.str(),\n this.direction && this.language ?\n { language: this.language, direction: this.direction } :\n this.language ?? dataFactory.namedNode(this.dataType),\n );\n }\n\n public override str(): string {\n return this.strValue ?? this.typedValue.toString();\n }\n}\n\nexport abstract class NumericLiteral extends Literal<number> {\n protected constructor(\n public override typedValue: number,\n dataType: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType, strValue, language);\n }\n\n protected abstract specificFormatter(val: number): string;\n\n public override coerceEBV(): boolean {\n return Boolean(this.typedValue);\n }\n\n public override toRDF(dataFactory: ComunicaDataFactory): RDF.Literal {\n const term = super.toRDF(dataFactory);\n if (!Number.isFinite(this.typedValue)) {\n term.value = term.value.replace('Infinity', 'INF');\n }\n return term;\n }\n\n public override str(): string {\n return this.strValue ??\n this.specificFormatter(this.typedValue);\n }\n}\n\nexport class IntegerLiteral extends NumericLiteral {\n public constructor(\n public override typedValue: number,\n dataType?: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_INTEGER, strValue, language);\n }\n\n protected specificFormatter(val: number): string {\n return val.toFixed(0);\n }\n}\n\nexport class DecimalLiteral extends NumericLiteral {\n public constructor(\n public override typedValue: number,\n dataType?: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DECIMAL, strValue, language);\n }\n\n protected specificFormatter(val: number): string {\n return val.toString();\n }\n}\n\nexport class FloatLiteral extends NumericLiteral {\n public constructor(\n public override typedValue: number,\n dataType?: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_FLOAT, strValue, language);\n }\n\n protected specificFormatter(val: number): string {\n return val.toString();\n }\n}\n\nexport class DoubleLiteral extends NumericLiteral {\n public constructor(\n public override typedValue: number,\n dataType?: string,\n public override strValue?: string,\n public override language?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DOUBLE, strValue, language);\n }\n\n protected specificFormatter(val: number): string {\n if (!Number.isFinite(val)) {\n if (val > 0) {\n return 'INF';\n }\n if (val < 0) {\n return '-INF';\n }\n return 'NaN';\n }\n\n const jsExponential = val.toExponential();\n const [ jsMantisse, jsExponent ] = jsExponential.split('e');\n\n // Leading + must be removed for integer\n // https://www.w3.org/TR/xmlschema-2/#integer\n const exponent = jsExponent.replace(/\\+/u, '');\n\n // SPARQL test suite prefers trailing zero's\n const mantisse = jsMantisse.includes('.') ?\n jsMantisse :\n `${jsMantisse}.0`;\n\n return `${mantisse}E${exponent}`;\n }\n}\n\nexport class BooleanLiteral extends Literal<boolean> {\n public constructor(public override typedValue: boolean, public override strValue?: string, dataType?: string) {\n super(typedValue, dataType ?? TypeURL.XSD_BOOLEAN, strValue);\n }\n\n public override coerceEBV(): boolean {\n return this.typedValue;\n }\n}\n\nexport class LangStringLiteral extends Literal<string> {\n public constructor(public override typedValue: string, public override language: string, dataType?: string) {\n super(typedValue, dataType ?? TypeURL.RDF_LANG_STRING, typedValue, language);\n }\n\n public override coerceEBV(): boolean {\n // Throws in [SPARQL 1.2](https://www.w3.org/TR/sparql12-query/#ebv), and [1.1](https://www.w3.org/TR/sparql11-query/#ebv)\n return super.coerceEBV();\n }\n}\n\nexport class DirLangStringLiteral extends Literal<string> {\n public constructor(\n public override typedValue: string,\n public override language: string,\n public override direction: 'ltr' | 'rtl',\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.RDF_DIR_LANG_STRING, typedValue, language, direction);\n }\n}\n\n// https://www.w3.org/TR/2004/REC-rdf-concepts-20040210/#dfn-plain-literal\n// https://www.w3.org/TR/sparql11-query/#defn_SimpleLiteral\n// https://www.w3.org/TR/sparql11-query/#func-strings\n// This does not include language tagged literals\nexport class StringLiteral extends Literal<string> {\n /**\n * @param typedValue\n * @param dataType Should be type that implements XSD_STRING\n */\n public constructor(public override typedValue: string, dataType?: string) {\n super(typedValue, dataType ?? TypeURL.XSD_STRING, typedValue);\n }\n\n public override coerceEBV(): boolean {\n return this.str().length > 0;\n }\n}\n\nexport class DateTimeLiteral extends Literal<IDateTimeRepresentation> {\n public constructor(\n public override typedValue: IDateTimeRepresentation,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DATE_TIME, strValue);\n }\n\n public override str(): string {\n return serializeDateTime(this.typedValue);\n }\n}\n\nexport class TimeLiteral extends Literal<ITimeRepresentation> {\n public constructor(\n public override typedValue: ITimeRepresentation,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_TIME, strValue);\n }\n\n public override str(): string {\n return serializeTime(this.typedValue);\n }\n}\n\nexport class DateLiteral extends Literal<IDateRepresentation> {\n public constructor(\n public override typedValue: IDateRepresentation,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DATE, strValue);\n }\n\n public override str(): string {\n return serializeDate(this.typedValue);\n }\n}\n\nexport class DurationLiteral extends Literal<Partial<IDurationRepresentation>> {\n public constructor(\n public override typedValue: Partial<IDurationRepresentation>,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_DURATION, strValue);\n }\n\n public override str(): string {\n return serializeDuration(this.typedValue);\n }\n}\n\nexport class DayTimeDurationLiteral extends DurationLiteral {\n public constructor(\n public override typedValue: Partial<IDurationRepresentation>,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, strValue, dataType ?? TypeURL.XSD_DAY_TIME_DURATION);\n }\n}\n\nexport class YearMonthDurationLiteral extends Literal<Partial<IYearMonthDurationRepresentation>> {\n public constructor(\n public override typedValue: Partial<IYearMonthDurationRepresentation>,\n public override strValue?: string,\n dataType?: string,\n ) {\n super(typedValue, dataType ?? TypeURL.XSD_YEAR_MONTH_DURATION, strValue);\n }\n\n public override str(): string {\n return serializeDuration(this.typedValue, 'P0M');\n }\n}\n\n/**\n * This class is used when a literal is parsed, and it's value is\n * an invalid lexical form for it's datatype. The spec defines value with\n * invalid lexical form are still valid terms, and as such we can not error\n * immediately. This class makes sure that the typedValue will remain undefined,\n * and the category 'nonlexical'. This way, only when operators apply to the\n * 'nonlexical' category, they will keep working, otherwise they will throw a\n * type error.\n * This seems to match the spec, except maybe for functions that accept\n * non-lexical values for their datatype.\n *\n * See:\n * - https://www.w3.org/TR/xquery/#dt-type-error\n * - https://www.w3.org/TR/rdf-concepts/#section-Literal-Value\n * - https://www.w3.org/TR/xquery/#dt-ebv\n * - ... some other more precise thing i can't find...\n */\nexport class NonLexicalLiteral extends Literal<{ toString: () => 'undefined' }> {\n public constructor(\n typedValue: undefined,\n dataType: string,\n private readonly openWorldType: ISuperTypeProvider,\n strValue?: string,\n language?: string,\n ) {\n super({ toString: () => 'undefined' }, dataType, strValue, language);\n }\n\n public override coerceEBV(): boolean {\n // Always throws in [SPARQL 1.2](https://www.w3.org/TR/sparql12-query/#ebv),\n // and sometimes throws in [1.1](https://www.w3.org/TR/sparql11-query/#ebv)\n return super.coerceEBV();\n }\n\n public override toRDF(dataFactory: ComunicaDataFactory): RDF.Literal {\n return dataFactory.literal(\n this.str(),\n this.language ?? dataFactory.namedNode(this.dataType),\n );\n }\n\n public override str(): string {\n return this.strValue ?? '';\n }\n}\n\nexport function isNonLexicalLiteral(lit: Literal<any>): NonLexicalLiteral | undefined {\n if (lit instanceof NonLexicalLiteral) {\n return lit;\n }\n return undefined;\n}\n"]}
@@ -3,8 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Variable = void 0;
4
4
  const types_1 = require("@comunica/types");
5
5
  class Variable {
6
+ expressionType = types_1.ExpressionType.Variable;
7
+ name;
6
8
  constructor(name) {
7
- this.expressionType = types_1.ExpressionType.Variable;
8
9
  this.name = name;
9
10
  }
10
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Variable.js","sourceRoot":"","sources":["Variable.ts"],"names":[],"mappings":";;;AACA,2CAAiD;AAEjD,MAAa,QAAQ;IAGnB,YAAmB,IAAY;QAFxB,mBAAc,GAA4B,sBAAc,CAAC,QAAQ,CAAC;QAGvE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAND,4BAMC","sourcesContent":["import type { VariableExpression } from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\n\nexport class Variable implements VariableExpression {\n public expressionType: ExpressionType.Variable = ExpressionType.Variable;\n public name: string;\n public constructor(name: string) {\n this.name = name;\n }\n}\n"]}
1
+ {"version":3,"file":"Variable.js","sourceRoot":"","sources":["Variable.ts"],"names":[],"mappings":";;;AACA,2CAAiD;AAEjD,MAAa,QAAQ;IACZ,cAAc,GAA4B,sBAAc,CAAC,QAAQ,CAAC;IAClE,IAAI,CAAS;IACpB,YAAmB,IAAY;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAND,4BAMC","sourcesContent":["import type { VariableExpression } from '@comunica/types';\nimport { ExpressionType } from '@comunica/types';\n\nexport class Variable implements VariableExpression {\n public expressionType: ExpressionType.Variable = ExpressionType.Variable;\n public name: string;\n public constructor(name: string) {\n this.name = name;\n }\n}\n"]}
@@ -1,6 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.expressionToVar = exports.dateTime = exports.dirLangString = exports.langString = exports.string = exports.double = exports.float = exports.decimal = exports.integer = exports.bool = exports.Builder = exports.declare = void 0;
3
+ exports.Builder = void 0;
4
+ exports.declare = declare;
5
+ exports.bool = bool;
6
+ exports.integer = integer;
7
+ exports.decimal = decimal;
8
+ exports.float = float;
9
+ exports.double = double;
10
+ exports.string = string;
11
+ exports.langString = langString;
12
+ exports.dirLangString = dirLangString;
13
+ exports.dateTime = dateTime;
14
+ exports.expressionToVar = expressionToVar;
4
15
  /**
5
16
  * These helpers provide a (albeit inflexible) DSL for writing function
6
17
  * definitions for the SPARQL functions.
@@ -15,8 +26,9 @@ const OverloadTree_1 = require("./OverloadTree");
15
26
  function declare(identifier) {
16
27
  return new Builder(identifier);
17
28
  }
18
- exports.declare = declare;
19
29
  class Builder {
30
+ overloadTree;
31
+ collected;
20
32
  constructor(identifier) {
21
33
  this.overloadTree = new OverloadTree_1.OverloadTree(identifier);
22
34
  this.collected = false;
@@ -185,41 +197,31 @@ exports.Builder = Builder;
185
197
  function bool(val) {
186
198
  return new E.BooleanLiteral(val);
187
199
  }
188
- exports.bool = bool;
189
200
  function integer(num) {
190
201
  return new E.IntegerLiteral(num);
191
202
  }
192
- exports.integer = integer;
193
203
  function decimal(num) {
194
204
  return new E.DecimalLiteral(num);
195
205
  }
196
- exports.decimal = decimal;
197
206
  function float(num) {
198
207
  return new E.FloatLiteral(num);
199
208
  }
200
- exports.float = float;
201
209
  function double(num) {
202
210
  return new E.DoubleLiteral(num);
203
211
  }
204
- exports.double = double;
205
212
  function string(str) {
206
213
  return new E.StringLiteral(str);
207
214
  }
208
- exports.string = string;
209
215
  function langString(str, lang) {
210
216
  return new E.LangStringLiteral(str, lang);
211
217
  }
212
- exports.langString = langString;
213
218
  function dirLangString(str, lang, direction) {
214
219
  return new E.DirLangStringLiteral(str, lang, direction);
215
220
  }
216
- exports.dirLangString = dirLangString;
217
221
  function dateTime(date, str) {
218
222
  return new E.DateTimeLiteral(date, str);
219
223
  }
220
- exports.dateTime = dateTime;
221
224
  function expressionToVar(dataFactory, variableExpression) {
222
225
  return dataFactory.variable(variableExpression.name.slice(1));
223
226
  }
224
- exports.expressionToVar = expressionToVar;
225
227
  //# sourceMappingURL=Helpers.js.map