Commit graph

345 commits

Author SHA1 Message Date
Marcel Otto 76b6f69613 Fix raised BEAM error warning when namespace resolving top-level modules 2020-05-17 00:01:18 +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 c22bab6c74 Change Namespace.resolve_term to return ok tuples and add resolve_term! 2020-05-09 00:26:29 +02:00
Marcel Otto d112561fa9 Fix filename of the datatype registration protocol 2020-05-08 12:27:12 +02:00
Marcel Otto 2b46bb8f23 Restore casting of IRIs to strings 2020-05-07 21:18:05 +02:00
Marcel Otto faaebb2de2 Add ProtocolEx-based custom datatype registration 2020-05-07 15:37:21 +02:00
Marcel Otto 24051c6153 Add RDF.Guards.maybe_ns_term/1 2020-05-06 18:04:19 +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
Marcel Otto 611ada00a2 Don't print "Compiling vocabulary namespace" message during tests 2020-04-05 01:29:24 +02:00
Marcel Otto 7858ff77c4 Minor changes on RDF.Boolean specs 2020-03-11 00:39:18 +01:00
rustra 8115554847 Minor changes in specs 2020-03-10 22:44:54 +01:00
rustra 91dc078763 Improve specs for serialization 2020-03-10 01:37:53 +01:00
rustra bd52920e7c Improve specs for datatypes 2020-03-10 01:37:14 +01:00
Marcel Otto 2244c36b78 Fix warning 2020-03-04 01:31:48 +01:00
Marcel Otto a047697f70 Fix deprecation warning for Code.ensure_compiled?/1 on Elixir 1.10 2020-03-04 01:30:19 +01:00
rustra 08b4a44b13 Add value type specs for RDF.Datatype 2020-03-03 22:36:11 +01:00
rustra 3da72f9e6a Specs improvements and fixes 2020-03-03 22:02:35 +01:00
rustra 8345e101d3 Add function signatures 2020-03-02 18:23:34 +01:00
rustra 83f62335b3 Fix type specs for structs 2020-02-28 18:51:48 +01:00
Marcel Otto ef55979f31 Fix incorrect handling of 24h overflows with an offset on RDF.XSD.Time 2020-02-14 08:56:14 +01:00
Marcel Otto 0f42c462ab Add RDF.Diff to module overview 2019-11-27 09:10:57 +01:00
Marcel Otto 092a9c60d1 Change write_file functions to no longer use :utf8 file mode option 2019-11-21 22:06:09 +01:00
Marcel Otto a77fe7c56e Add RDF.Diff.empty?/1 2019-11-20 01:56:43 +01:00
Marcel Otto a1cbbd24b6 Add RDF.Diff.apply/2 2019-11-20 01:45:34 +01:00
Marcel Otto b6438b1c41 Add RDF.diff/2 alias 2019-11-20 01:45:18 +01:00
Marcel Otto 4e38080774 Add RDF.Diff 2019-11-19 22:49:00 +01:00
Marcel Otto 30bde1acc2 Add RDF.Graph.clear/1 2019-11-02 01:35:09 +01:00