Commit graph

36 commits

Author SHA1 Message Date
Marcel Otto
fab63e6a0d Update API documentation 2020-06-01 15:43:38 +02:00
Marcel Otto
8106f89ca0 Optimize canonical_lexical/1 implementation on RDF.XSD.Datatypes 2020-05-29 01:33:40 +02:00
Marcel Otto
df9a928802 Fix dialyzer warnings 2020-05-28 02:00:01 +02:00
Marcel Otto
98adbaf878 Handle derived datatypes on RDF.Literal.Datatype.compare/2 properly 2020-05-27 00:56:44 +02:00
Marcel Otto
162e82ed47 Handle derived datatypes on RDF.Literal.Datatype.equal_value?/2 properly 2020-05-25 23:10:50 +02:00
Marcel Otto
d247e1bf4f Support derived datatypes on RDF.Literal.Datatype.value/1 and valid?/2 2020-05-24 21:13:04 +02:00
Marcel Otto
7daf494fb9 Restore ability to cast RDF.IRIs to XSD.Strings and XSD.AnyURIs
This is needed for SPARQL.
2020-05-23 00:31:15 +02:00
Marcel Otto
c1a61c58e8 Remove coercion on RDF.Literal.Datatype.cast/1
It's not worth the effort and more explicit to do the coercion step

manually.
2020-05-21 01:58:07 +02:00
Marcel Otto
5daf32446d Fix regression in RDF.LangString.match_language?/2 2020-05-17 02:47:48 +02:00
Marcel Otto
4d3d60a5f4 Fix regression in handling of vocabulary terms as generic datatypes 2020-05-16 14:42:12 +02:00
Marcel Otto
6873ba4da1 Fix dialyzer warnings 2020-05-16 03:51:54 +02:00
Marcel Otto
0509e4cb2f Store datatype in a RDF.Literal.Generic internally as string
Besides being a bit more memory efficient this allows for
pattern matching on the datatype of generic literals.
2020-05-16 00:06:45 +02:00
Marcel Otto
25a0f7443c Rename RDF.Literal.datatype/1 and similar functions to datatype_id/1 2020-05-15 22:59:05 +02:00
Marcel Otto
fa35b65d9f Redesign datatype reflection API 2020-05-15 17:13:31 +02:00
Marcel Otto
b53d09d4f5 Add RDF.Literal.Datatype.Registry.xsd_datatype/1 2020-05-10 01:37:01 +02:00
Marcel Otto
d18c7ed475 Refactor datatype registry 2020-05-10 01:35:07 +02:00
Marcel Otto
afc6f28cf4 Always resolve datatype IRIs through the registration protocol
It's actually faster (although just slightly) than the map access!
2020-05-09 00:54:35 +02:00
Marcel Otto
d112561fa9 Fix filename of the datatype registration protocol 2020-05-08 12:27:12 +02:00
Marcel Otto
faaebb2de2 Add ProtocolEx-based custom datatype registration 2020-05-07 15:37:21 +02:00
Marcel Otto
00a6103e56 Interop between RDF.IRI and XSD.AnyURI in terms of cast and equal_value? 2020-05-06 16:48:31 +02:00
Marcel Otto
6057749d2a Move XSD.Datatype.canonical_lexical/1 up to RDF.Literal.Datatype 2020-05-06 15:19:32 +02:00
Marcel Otto
6e557a8bee Remove some higher-level functions from the datatypes
Higher-level datatype functions should be implemented on RDF.Literal only
2020-05-06 15:17:43 +02:00
Marcel Otto
5819eec0cf Re-integrate XSD.ex
It turned out that the costs of separating the XSD datatypes are too high
and probably not worth the effort, since with its limited scope
probably nobody would want to use XSD.ex outside of the RDF.ex context
anyway.
2020-05-05 23:58:44 +02:00
Marcel Otto
aed10650d8 Finish back to previous equal_value?/2 behaviour 2020-04-18 21:31:42 +02:00
Marcel Otto
733f01e6a9 Revert "Add comparable?/2 functions to RDF.Literal and RDF.Literal.Datatypes"
This reverts commit 287839740c.
2020-04-18 16:39:43 +02:00
Marcel Otto
287839740c Add comparable?/2 functions to RDF.Literal and RDF.Literal.Datatypes 2020-04-18 00:31:03 +02:00
Marcel Otto
66cc9292c9 Remove canonical/1 calls in RDF.Literal.Generic.compare/2
since generic literals don't have a canonical form
2020-04-17 23:03:13 +02:00
Marcel Otto
9e3fbde380 Add missing validity check to cast/1 functions 2020-04-17 00:50:06 +02:00
Marcel Otto
44a3ecb57a Don't support cast/1 on RDF.Literal.Generic 2020-04-16 23:42:55 +02:00
Marcel Otto
060fac4675 Add update/2 functions to RDF.Literal and the datatypes 2020-04-16 20:57:10 +02:00
Marcel Otto
238c9310be Add some XSD datatype specific delegation functions 2020-04-16 20:55:30 +02:00
Marcel Otto
2907d817ee Optimize critical RDF.Literal.Datatype.Registry.rdf_datatype/1 function 2020-04-14 02:39:09 +02:00
Marcel Otto
2be689b2a1 Various datatype fixes 2020-04-12 23:55:34 +02:00
Marcel Otto
6049798b37 Add and fix some Dialyzer typespecs 2020-04-12 21:52:25 +02:00
Marcel Otto
fa4bfdff1a Change constructor interface of RDF.LangString and RDF.Generic 2020-04-12 04:34:04 +02:00
Marcel Otto
f6146c51b0 Revision of the literal system with extracted XSD datatypes 2020-04-10 23:56:35 +02:00