add readme

Julien LepillerThu Apr 02 04:41:12+0200 2020

7d44818

add readme

README.md unknown status 1

1+
Guile-RDF
2+
============
3+
4+
Guile RDF is an implementation of the RDF format defined by the W3C for
5+
GNU Guile.  RDF stands for Resource Description Framework and it is a way
6+
to represent information.  RDF structures include triples (facts with a
7+
subject, a predicate and an object), graphs which are sets of triples, and
8+
datasets, which are collections of graphs.
9+
10+
Each node in the graph represents a "thing", a concept or concrete object,
11+
and edges represent relations between them.  Each node and relation is either
12+
an IRI, a blank node or an RDF literal. An RDF literal itself has a type,
13+
represented by an IRI.
14+
15+
RDF specifications include the specification of concrete syntaxes and of
16+
operations on graphs.  This library is not yet complete, but already has some
17+
basic functionalities: an internal representation of RDF datasets, some
18+
predicates and an initial parser for turtle files.
19+
20+
Installing
21+
----------
22+
23+
In order to install, your best option is to use the [Guix](https://guix.gnu.org)
24+
package manager.  It can run on any existing Linux distribution, and is guaranteed
25+
to not interact with its host distribution.  Installing Guix is as simple
26+
as running the
27+
[installation script](https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh).
28+
Once installed, you can run:
29+
30+
```bash
31+
guix install guile guile-rdf
32+
```
33+
34+
Otherwise, your package manager might have guile-jsonld available.  You can also
35+
build it from source, like so:
36+
37+
```bash
38+
git clone https://framagit.org/tyreunom/guile-rdf
39+
autoreconf -fiv
40+
./configure
41+
make
42+
sudo make install
43+
```
44+
45+
You will need guile and guile-json for it to work.  Again, the best way to obtain
46+
the dependencies is to use Guix from this repository:
47+
48+
```bash
49+
guix environment -l guix.scm
50+
```
51+
52+
`guix.scm` is a file that is provided with this repository. You can use it to
53+
setup a development environment, as shown above, or to build the package, using
54+
maybe a different source, like this:
55+
56+
```bash
57+
guix build --with-sources=guile-rdf=$(PWD) -f guix.scm
58+
```
59+
60+
Testing
61+
-------
62+
63+
The tests include running the official
64+
[test suite](https://w3c.github.io/json-ld-api/tests/).  It requires network
65+
access.  To run it, use:
66+
67+
```bash
68+
make check
69+
```
70+
71+
Please [report](https://framagit.org/tyreunom/guile-jsonld/issues) any failure!