Commit graph

162 commits

Author SHA1 Message Date
Marcel Otto
3086374a0d Fix deprecation warning with Decimal 1.6
warning: passing float to Decimal.new/1 is deprecated, use Decimal.from_float/1 instead
2019-02-15 02:30:41 +01:00
Marcel Otto
486c15631c Remove unused module attribute 2019-01-17 18:07:53 +01:00
Marcel Otto
036de6e66c Add valid?/1 on RDF.Triple, RDF.Quad and RDF.Statement 2018-11-11 13:14:48 +01:00
Marcel Otto
4336602dcc Add a values/2 variant with a custom mapping function 2018-11-04 22:27:25 +01:00
Marcel Otto
535e5b3713 Allow value equality comparisons between XSD dates and datetimes
This is required to make date-2 of the SPARQL 1.0 open-world test pass.
Strangely enough, ordering comparisons are nevertheless disallowed
according to date-3 of the same test suite. An implementation which
would allow order comparison is included but uncommented.
2018-11-04 17:27:45 +01:00
Marcel Otto
b7291c7d93 Proper handling of comparisons between date literals 2018-11-04 15:54:49 +01:00
Marcel Otto
10dc249531 Accept "-00:00" as a valid timezone offset on RDF.DateTime literals 2018-11-04 04:02:36 +01:00
Marcel Otto
1907e22c62 Add literal comparison functions 2018-11-02 22:00:48 +01:00
Marcel Otto
52933b5297 Add RDF.Data.values/1 2018-10-28 03:50:48 +01:00
Marcel Otto
defd1857e5 Add values/1 on RDF.Description, RDF.Graph and RDF.Dataset 2018-10-27 16:30:19 +02:00
Marcel Otto
9e06cea7ca Fix RDF.Date.equal_value?/2 to handle timezones correctly 2018-10-26 01:08:21 +02:00
Marcel Otto
1276f252c5 Add values/1 on RDF.Triple, RDF.Quad and RDF.Statement 2018-10-22 00:52:22 +02:00
Marcel Otto
7766a4a820 Add RDF.Term.value/1 2018-10-05 01:15:36 +02:00
Marcel Otto
f4877bbc65 Fix some issues with RDF.Term coercion in various contexts 2018-09-16 22:21:53 +02:00
Marcel Otto
1cd3a0c342 Support RDF.Term coercion on all arithmetic operations in RDF.Numeric 2018-09-16 15:11:51 +02:00
Marcel Otto
d72c5ebd1f Add Decimal implementation of RDF.Term protocol 2018-09-16 15:07:41 +02:00
Marcel Otto
edfdb186d0 Add RDF.Term.coerce/1 2018-09-16 04:02:53 +02:00
Marcel Otto
fa7e214985 Fix RDF.Time to store microseconds 2018-09-14 23:08:36 +02:00
Marcel Otto
c746706a10 Fix equality comparison of invalid literals 2018-09-14 21:31:16 +02:00
Marcel Otto
6d4c0b2a37 Add tests of equality comparison of literals with unknown datatypes 2018-09-14 21:30:48 +02:00
Marcel Otto
7847c76fc9 Change RDF.Datatype.cast implementations to return nil when not castable 2018-09-14 18:00:43 +02:00
Marcel Otto
a2cd1adeeb Fix broken test 2018-09-14 17:07:37 +02:00
Marcel Otto
a51e2a0dec Fix RDF.Datatype.cast/1 implementations when casting from strings 2018-09-14 17:02:04 +02:00
Marcel Otto
97b1cec4aa Various fixes of RDF.Datatype.cast/1 implementations 2018-09-13 00:57:57 +02:00
Marcel Otto
e0635b42ad Add implementation of RDF.Datatype.cast/1 on all time-related datatypes 2018-09-12 01:10:50 +02:00
Marcel Otto
65a08c7754 Add Elixir version conditional for test with negative year 2018-09-11 03:21:51 +02:00
Marcel Otto
45866fe30b Add implementation of RDF.Datatype.cast/1 on RDF.String 2018-09-11 03:12:58 +02:00
Marcel Otto
de25b5399b Add various utility functions on RDF.Time and RDF.DateTime 2018-09-11 03:12:15 +02:00
Marcel Otto
56c153198f Add implementation of RDF.Datatype.cast/1 on numeric datatypes 2018-09-09 15:28:35 +02:00
Marcel Otto
1e94842bc0 Add implementation of RDF.Datatype.cast/1 on RDF.Boolean 2018-09-09 15:27:27 +02:00
Marcel Otto
9c78ebeba7 Minor refactorings 2018-08-31 01:51:31 +02:00
Marcel Otto
598fd731e6 RDF.BlankNode.Generate can generate blank nodes for every value
- not just strings
2018-08-29 21:26:13 +02:00
Marcel Otto
adc1d953dc Add RDF.BlankNode.Generator 2018-08-28 01:14:44 +02:00
Marcel Otto
3549a67a12 Fix new and new! on RDF.Literal and RDF.String when language nil given 2018-08-26 05:46:18 +02:00
Marcel Otto
fbbd52d1b0 Add version-dependent tests for negative years in Dates and DateTimes 2018-08-25 00:53:37 +02:00
Marcel Otto
6bafb41cf9 Change RDF.IRI.absolute/2 to return nil if the base is not absolute 2018-08-24 01:32:54 +02:00
Marcel Otto
1c7cad39be Fix datatype and lexical form of result of various numeric functions
- to match SPARQL semantics
2018-08-21 03:27:48 +02:00
Marcel Otto
ec55b3758f Add RDF.DateTime.tz/1 2018-08-10 23:51:04 +02:00
Marcel Otto
a51e518c26 Fix RDF.DateTime to store microseconds 2018-07-20 01:49:59 +02:00
Marcel Otto
974b2c8360 Add RDF.Numeric.ceil/1 and RDF.Numeric.floor/1 2018-07-14 01:18:13 +02:00
Marcel Otto
cb9585d87a Add RDF.Numeric.round/1 and RDF.Numeric.round/2 2018-07-13 23:14:20 +02:00
Marcel Otto
ae54a8bfe2 Add RDF.Numeric.abs/1 2018-07-13 01:34:12 +02:00
Marcel Otto
34898cd696 Add RDF.LangString.match_language?/2 2018-07-10 00:18:16 +02:00
Marcel Otto
4cea91e52f Change RDF.String.new/2 to produce language strings when language given 2018-07-09 23:04:25 +02:00
Marcel Otto
978ed89164 Fix RDF.LangString to produce invalid literals when invalid languages given 2018-07-09 21:49:25 +02:00
Marcel Otto
7ad3c0acc1 Add arithmetic operations on RDF.Numeric 2018-06-22 22:03:23 +02:00
Marcel Otto
ca3c4a0104 Fix RDF.Decimal
- the canonical representation of given Decimals was not always correct,
  we now store always the canonical decimal as the Literal.value
2018-06-17 23:40:07 +02:00
Marcel Otto
2313e001fd Support value equality checks on RDF.Decimals 2018-06-16 01:48:10 +02:00
Marcel Otto
d06dcacb04 Add typed literal creation test for xsd:decimal 2018-06-16 01:42:08 +02:00
Marcel Otto
6a357229b2 Enable support for decimal literals in Turtle encoder 2018-06-15 21:35:29 +02:00