Commit graph

424 commits

Author SHA1 Message Date
Marcel Otto b67db534dd Add RDF-star support on the BGP query engine RDF.Query.BGP.Stream 2021-12-11 22:34:17 +01:00
Marcel Otto 20934ef0ec Add RDF-star support on the BGP query engine RDF.Query.BGP.Simple 2021-12-10 02:01:55 +01:00
Marcel Otto 601ebf54a0 Rename RDF.Graph.without_quoted_triples/1 to without_star_statements/1
and RDF.Description.without_quoted_triples/1 to
    RDF.Description.without_quoted_triple_objects/1
2021-11-20 21:40:35 +01:00
Marcel Otto a1bc6b7dd4 Add tests for triples/1 alias with filter_star opt 2021-11-20 21:30:29 +01:00
Marcel Otto 8cfe0ee6cc Drop support for Elixir versions < 1.10 2021-11-19 21:10:47 +01:00
Marcel Otto b0cdb62598 Fix bad naming in some test functions 2021-11-16 23:05:09 +01:00
Marcel Otto 5bbd1409bb Add :filter_star opt to RDF.Dataset.statements/1 2021-11-15 22:01:22 +01:00
Marcel Otto 9695e137ce Add functions to remove all triples with annotations or quoted triples 2021-11-14 14:30:30 +01:00
Marcel Otto 58127cf37c Add tests for N-Quads-star encoding 2021-11-11 00:25:53 +01:00
Marcel Otto 7859c4e46d Add :default_graph_name option to RDF.NQuads.Encoder
and use the graph name of an RDF.Graph as its default
2021-11-11 00:24:28 +01:00
Marcel Otto c753a7a30e Add support for N-Quads-star decoding 2021-11-10 00:48:33 +01:00
Marcel Otto 89947590cb Add some test for RDF-star datasets 2021-11-09 00:59:45 +01:00
Marcel Otto e9e2855d7b Extract RDF-star graph annotation functions into dedicated module 2021-11-08 00:07:10 +01:00
Marcel Otto 722aa2e124 Add more ways to annotate deleted statements 2021-11-07 22:52:00 +01:00
Marcel Otto aee8c96ff6 Add delete_annotations opt on RDF.Graph.put/3 and put_properties/3 2021-11-01 04:05:31 +01:00
Marcel Otto afd44088c0 Add more complete and uniform API for RDF-star annotations on RDF.Graph 2021-10-31 22:02:02 +01:00
Marcel Otto d0a1106b5d Add RDF.Graph.annotations/1 2021-10-28 21:29:25 +02:00
Marcel Otto 8469be877d Add RDF.Graph.delete_annotations/3 and delete_annotations opts 2021-10-27 13:11:53 +02:00
Marcel Otto 36a51cc7a2 Add annotate option on RDF.Graph.add/3, put/3 and put_properties/3 2021-10-25 21:54:32 +02:00
Marcel Otto e9102252ae Add support for Turtle-star encoding 2021-10-09 16:40:07 +02:00
Marcel Otto c3556bf79e Add tests for nested quoted triples in N-Triples-star 2021-10-05 01:09:29 +02:00
Marcel Otto e95c5c685d Add support for Turtle-star decoding 2021-10-01 23:33:00 +02:00
Marcel Otto 8b609233fa Add support for N-Triples-star encoding 2021-09-29 22:43:01 +02:00
Marcel Otto f835f6611e Add support for N-Triples-star decoding 2021-09-28 22:02:09 +02:00
Marcel Otto 2819092586 Add RDF-star support on RDF.Description and RDF.Graph 2021-09-27 20:57:17 +02:00
Marcel Otto 4f57fda00f Add RDF.Star.Triple, RDF.Star.Quad and RDF.Star.Statement 2021-09-04 19:12:00 +02:00
Marcel Otto 7645ce5fc6 Fix conditional in check for new -0.0 behaviour 2021-05-23 00:29:41 +02:00
Marcel Otto 3b16a76ccd Format code with Elixir 1.12 2021-05-22 16:08:19 +02:00
Marcel Otto fc6ee4555f Fix wrong tests regarding handling of -0.0 floats, doubles and decimals
The old tests were just mirroring the wrong behaviour in Elixir, which
was fixed in Elixir 1.12.
2021-05-22 16:04:29 +02:00
Marcel Otto 2afc2edda8 Add missing escaping of literals in N-Triples and N-Quads encoder 2021-05-09 21:43:10 +02:00
Marcel Otto 3480c254c3 Add missing escaping of language-tagged literals in Turtle encoder 2021-05-09 11:58:36 +02:00
Marcel Otto 967f81ad5a Don't Turtle-encode IRIs as prefixed names when they will be non-conform 2021-05-09 03:06:20 +02:00
Marcel Otto 589d2939b5 Fix bug in Inspect protocol implementation of RDF.Diff 2021-03-15 20:06:02 +01:00
Marcel Otto 84b71d2b50 Fix failing CI on Elixir 1.9 2021-03-06 02:38:20 +01:00
Marcel Otto e1680ffa95 Improve performance of the Enumerable impls of the RDF data structures 2021-03-05 23:23:06 +01:00
Marcel Otto f9bd3b9476 Handle base URIs without trailing slash or hash in Turtle encoder properly 2021-03-04 15:07:28 +01:00
Marcel Otto b86392763e Improvements of the Inspect form of the RDF data structures 2021-02-28 13:29:10 +01:00
Marcel Otto 32a59916f6 Add :indent option on RDF.Turtle.Encoder 2021-02-28 13:02:05 +01:00
Marcel Otto e04b960557 Fix recognition of float and double literals of the form ".0" and "0." 2021-02-26 16:26:22 +01:00
Marcel Otto ed403d9175 Allow initialization of dates and times with timezones from tuples 2020-12-20 02:55:24 +01:00
pukkamustard e143a960e0 Add XSD.Base64Binary 2020-12-06 18:07:57 +01:00
Marcel Otto 96f3e46638 Handle conflicts of RDF.Vocabulary.Namespace terms with Kernel functions 2020-11-13 22:51:41 +01:00
Marcel Otto 42d5dfc5a6 Add RDF.IRI.in_namespace?/2 2020-11-10 10:56:38 +01:00
Marcel Otto 3806269d3e Add read_stream!/2 functions 2020-11-06 13:03:01 +01:00
Marcel Otto 8b8c3feef7 Allow setting the stream mode via the new :stream opt on file writers 2020-11-05 22:06:10 +01:00
Marcel Otto 41a299e122 Add :gzip opt on all read and write file serialization functions 2020-11-05 21:09:36 +01:00
Marcel Otto d3f66bd5d9 Support for streaming on file read and write serialization functions 2020-11-05 15:41:06 +01:00
Marcel Otto 2bff651276 Add RDF.Serialization tests for new stream functions 2020-11-05 11:53:35 +01:00
Marcel Otto a361a018a0 Add RDF.NQuads.Encoder.stream/2 2020-11-04 21:21:08 +01:00
Marcel Otto 426b6d832c Add RDF.NTriples.Encoder.stream/2 2020-11-04 20:43:19 +01:00
Marcel Otto 25b7239843 Add RDF.NQuads.Decoder.decode_from_stream/2 2020-11-04 16:51:24 +01:00
Marcel Otto b4f0ae074c Add RDF.NTriples.Decoder.decode_from_stream/2 2020-11-04 16:32:17 +01:00
Marcel Otto e3454f73ce Fix dialyzer warning 2020-11-02 15:59:14 +01:00
Marcel Otto 8d98461e0b Change Inspect form for RDF data structures to be Turtle-based 2020-11-02 15:17:18 +01:00
Marcel Otto 929e2a8c81 Use RDF.PrefixMap.prefixed_name/2 in Turtle encoder 2020-11-02 02:05:23 +01:00
Marcel Otto 8e74e9a9d2 Fix some of the BlankNode representations to be Turtle-serializable 2020-11-01 04:14:30 +01:00
Marcel Otto 3ca4207a14 Add test of RDF.IRI.merge/2 with fragments 2020-11-01 04:03:02 +01:00
Marcel Otto ddb3d365bc Add tests for RDF.BlankNode.new/1 2020-11-01 02:25:25 +01:00
Marcel Otto 15002a0bbb Add RDF.Dataset.prefixes/1 2020-10-28 11:51:00 +01:00
Marcel Otto 29a860d969 Allow vocabulary namespace modules as base for Turtle encoder 2020-10-28 11:36:43 +01:00
Marcel Otto 4f095b8d47 Add RDF.PrefixMap.put/3 2020-10-21 12:59:20 +02:00
Marcel Otto 352b8ef1a8 Use also the :context opt and implicit PropertyMap formats in values/2 2020-10-13 11:50:02 +02:00
Marcel Otto cafba9f61f Add support for RDF.PropertyMaps in BGP and path queries 2020-10-13 10:43:05 +02:00
Marcel Otto d3c6336782 Fix bug with BGP queries provided as maps 2020-10-12 23:02:56 +02:00
Marcel Otto eef64b9253 Add support for adding terms of a vocab namespace to RDF.PropertyMap
For now only with RDF.PropertyMap.add/2 on purpose, since we want to
enforce a conscious usage of this feature, as put/2 would silently
overwrite terms.
2020-10-11 11:42:30 +02:00
Marcel Otto 5d9ddeb7fe Add tests for merging RDF.PropertyMaps
Implementation wasn't needed, since the merge already works via the
Enumerable protocol implementation.
2020-10-11 02:48:35 +02:00
Marcel Otto 875908eb39 Handle conflicting terms for the same IRI in a PropertyMap 2020-10-11 02:35:58 +02:00
Marcel Otto 95a69d9007 Add Enumerable protocol implementation for RDF.PropertyMap 2020-10-11 01:07:53 +02:00
Marcel Otto a49229384e Extract map/2 function from values/2 on all RDF data structures
and add support for RDF.PropertyMaps on values/2 instead
2020-10-10 15:45:25 +02:00
Marcel Otto 5f16b9837c Fix RDF.Literal.new/1 test with custom datatypes 2020-10-09 16:39:59 +02:00
Marcel Otto d0e5b625fd Support for RDF.PropertyMaps as :context opt on functions with input data 2020-10-09 16:32:24 +02:00
Marcel Otto e681733652 Add RDF.PropertyMap 2020-10-08 22:49:45 +02:00
Marcel Otto 71292b721c Add :init option to RDF.Graph.new/2 and RDF.Dataset.new/2 2020-10-07 16:08:22 +02:00
Marcel Otto 9880fd7be3 Handle structs in the input of RDF data structure functions properly 2020-10-05 12:41:55 +02:00
Marcel Otto 08a97ff2dc Add support for quads in input data of RDF.Description functions 2020-10-05 01:28:24 +02:00
Marcel Otto 1a7ffe58c4 Change behaviour of put and add put_properties on RDF.Graph and Dataset 2020-10-04 16:31:41 +02:00
Marcel Otto 4408a04103 Adapt RDF.Dataset.put/3 to new forms of input 2020-10-04 13:25:24 +02:00
Marcel Otto 42f787836f Improve implementation of RDF.Graph.put/3
- fixes bugs with some combinations of possible inputs
- simplify implementation
- add opts
2020-10-04 03:07:27 +02:00
Marcel Otto 4dfc16a55a Improve tests of RDF.Description.put/3 2020-10-04 02:52:56 +02:00
Marcel Otto 9b1600c863 Fix bug in RDF.Graph.put/2 with quad input 2020-10-01 15:53:44 +02:00
Marcel Otto 7fda16a40e Change format for BGP queries to be inline with the common input formats 2020-10-01 15:50:52 +02:00
Marcel Otto 96bb678ffc Fix RDF.Graph.put/2 to ignore empty RDF.Descriptions 2020-09-30 10:47:02 +02:00
Marcel Otto f83ac494fc Rename RDF.Graph.delete_subjects/2 to RDF.Graph.delete_descriptions/2 2020-09-30 10:20:13 +02:00
Marcel Otto 6315b85edf Add RDF.Dataset.name/1 and RDF.Dataset.change_name/2 2020-09-28 20:48:10 +02:00
Marcel Otto 8b723286c5 Limit and unify the forms of input on RDF.Dataset functions 2020-09-28 17:39:31 +02:00
Marcel Otto 2a44765631 Add support for list of descriptions to RDF.Graph.put/2 2020-09-28 12:36:25 +02:00
Marcel Otto 69fbdd60b3 Add RDF.Graph.base_iri/1 and RDF.Graph.prefixes/1 2020-09-28 11:22:46 +02:00
Marcel Otto c306700991 Add RDF.Graph.name/1 and RDF.Graph.change_name/2 2020-09-28 11:09:35 +02:00
Marcel Otto a8c71df20b Limit and unify the forms of input on RDF.Graph functions 2020-09-28 02:49:41 +02:00
Marcel Otto 20a69964c7 Change RDF.Description.new/2 to take initial data via the :init option 2020-09-25 16:07:37 +02:00
Marcel Otto bcf024647e Merge branch 'master' into rdf-star 2020-09-24 12:05:41 +02:00
Marcel Otto a4b71b3f9d Add prefixed_name/2 and prefixed_name_to_iri/2 to RDF.PrefixMap 2020-09-16 00:38:56 +02:00
Marcel Otto bee5e3a81b Fix typo in RDF.PrefixMap test 2020-09-15 17:02:20 +02:00
Marcel Otto 081a78c692 Use prefixes of the graphs of a RDF.Dataset when serializing to Turtle 2020-09-14 16:41:41 +02:00
Marcel Otto 6e9889c1bd Add atoms for most common conflict resolvers on RDF.PrefixMap.merge/3 2020-09-14 15:50:32 +02:00
Marcel Otto 092db587b6 Add :only option to Turtle encoder for partial documents 2020-09-14 01:09:46 +02:00
Marcel Otto d9ab8b5804 Add :directive_style option to Turtle encoder 2020-09-13 22:16:12 +02:00
Marcel Otto 58c5772011 Add RDF.Description.subject/1 and RDF.Description.change_subject/2 2020-07-28 14:45:12 +02:00
Marcel Otto e9432ef556 Limit the forms of input on RDF.Description functions 2020-07-27 23:09:23 +02:00
Marcel Otto 909e2bde18 Rename the :id field of RDF.BlankNode to :value for consistency reasons 2020-07-08 22:02:58 +02:00