You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+14Lines changed: 14 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,20 @@ All notable changes to this project will be documented in this file.
4
4
The format is based on [Keep a Changelog](http://keepachangelog.com/)
5
5
and this project adheres to [Semantic Versioning](http://semver.org/).
6
6
7
+
## [3.2.0] - 2022-02-28
8
+
### Added
9
+
- Support for Ruby 3
10
+
- New `resource.rendered` attribute to check if a page is rendered in the present site for this resource.
11
+
12
+
### Changed
13
+
- Repository moved from https://github.com/white-gecko/jekyll-rdf/ to https://github.com/AKSW/jekyll-rdf/
14
+
- Add possibility to specify the default graph on a SPARQL endpoint
15
+
- Update class-template selection to be straightforward
16
+
- Update dependencies
17
+
- Minor code cleanup
18
+
- Some updates in the test/build system
19
+
- Remove some warnings
20
+
7
21
## [3.1.0] - 2018-11-27
8
22
### Added
9
23
- Allow building sites from a (remote) SPARQL endpoint by setting `remote:\n endpoint: <endpointuri>` in the `_config.yml`. (Currently only querying the default default-graph ;-). Specifying the default graph, with `FROM` resp. `default-graph-uri` will come in the future, https://github.com/white-gecko/jekyll-rdf/pull/220.)
The API Documentation is available at [RubyDoc.info](http://www.rubydoc.info/gems/jekyll-rdf/).
10
10
@@ -27,15 +27,12 @@ The API Documentation is available at [RubyDoc.info](http://www.rubydoc.info/gem
27
27
As a prerequisite for *Jekyll RDF* you of course need to install [*Jekyll*](https://jekyllrb.com/).
28
28
Please take a look at the installations instructions at https://jekyllrb.com/docs/installation/.
29
29
30
-
If you already have a working Jekyll installation you can add the the Jekyll-RDF plugin.
30
+
If you already have a working Jekyll installation you can add the Jekyll-RDF plugin.
31
31
Probably you already using [Bundler](https://bundler.io/) and there is a [`Gemfile`](https://bundler.io/gemfile.html) in your Jekyll directory.
32
32
Add Jekyll-RDF to the plugins section:
33
33
34
34
```
35
-
group :jekyll_plugins do
36
-
gem "jekyll-rdf", '~> 3.0.0.pre.a'
37
-
…
38
-
end
35
+
gem "jekyll-rdf", "~> 3.2"
39
36
```
40
37
41
38
Replace the version string with the currently available stable release as listed on [rubygems.org](https://rubygems.org/gems/jekyll-rdf).
@@ -66,7 +63,7 @@ jekyll new my_page
66
63
cd my_page
67
64
```
68
65
69
-
Further there are some parameters required in your `_config.yml` for `jekyll-rdf`. I.e. the `url` and `baseurl` parameters are used for including the resource pages into the root of the site, the plug-in has to be configured, and the path to the RDF file has to be present.
66
+
Further, there are some parameters required in your `_config.yml` for `jekyll-rdf`. I.e. the `url` and `baseurl` parameters are used for including the resource pages into the root of the site, the plug-in has to be configured, and the path to the RDF file has to be present.
The `url` + `baseurl` are used by Jekyll RDF to identify relative to which URL it should build the RDF resource pages.
87
+
In the example above this means that a resource with the IRI `<http://example.org/simpsons/Bart>` is rendered to the path `/Bart.html`.
88
+
Also other features and plugins for Jekyll depend on these two parameters.
89
+
If for any case the two parameters differ from the base path that Jekyll RDF should assume, it is possible to set the parameter `baseiri` in the `jekyll_rdf` section.
90
+
91
+
```yaml
92
+
baseurl: "/simpsons"
93
+
url: "https://beispiel.com"
94
+
95
+
jekyll_rdf:
96
+
baseiri: "http://example.org/"
97
+
```
98
+
88
99
### Map resources to templates
89
100
It is possible to map a specific class (resp. RDF-type) or individual resources to a template.
90
101
```yaml
@@ -110,7 +121,7 @@ You can restrict the resources selected to be built by adding a SPARQL query as
110
121
restriction: "SELECT ?resourceUri WHERE { ?resourceUri <http://www.ifi.uio.no/INF3580/family#hasFather> <http://www.ifi.uio.no/INF3580/simpsons#Homer> }"
111
122
```
112
123
113
-
There are 3 pre-defined keywords for restrictions implemented:
124
+
There are 3 predefined keywords for restrictions implemented:
114
125
* `subjects` will load all subject URIs
115
126
* `predicates` will load all predicate URIs
116
127
* `objects` will load all object URIs
@@ -127,7 +138,7 @@ A file `_data/restriction.txt` cool have the following content:
127
138
```
128
139
129
140
In the `_config.yml` you specify the file with the key `restriction_file`.
130
-
If both, a `restriction_file` and a `restriction`, are specified JekyllRDF will build pages for the union of the both.
141
+
If both, a `restriction_file` and a `restriction`, are specified Jekyll RDF will build pages for the union of the both.
131
142
132
143
### Blank Nodes
133
144
Furthermore you can decide if you want to render blank nodes or not. You just need to add `include_blank`to `_config.yml`:
@@ -146,7 +157,7 @@ jekyll_rdf:
146
157
## Building the Jekyll Site
147
158
148
159
Running `jekyll build` will render the RDF resources to the `_site/…` directory. Running `jekyll serve` will render the RDF resources and provide you with an instant HTTP-Server usually accessible at `http://localhost:4000/`.
149
-
RDF resources whose IRIs don't start with the configured jekyll `url` and `baseurl` are rendered to the `_site/rdfsites/…` subdirectory.
160
+
RDF resources whose IRIs don't start with the configured Jekyll `url` and `baseurl` (resp. `baseiri`) are rendered to the `_site/rdfsites/…` sub directory.
150
161
151
162
## Defining Templates
152
163
To make use of the RDF data, create one or more files (e.g `rdf_index.html` or `person.html`) in the `_layouts`-directory. For each resource a page will be rendered. See example below:
@@ -271,8 +282,8 @@ The template for `ex:Resource`:
271
282
```
272
283
273
284
### Custom SPARQL Query
274
-
We implemented a liquid filter `sparql_query` to run custom SPARQL queries. Each occurence of `?resourceUri` gets replaced with the current URI.
275
-
*Caution:* You have to separate query and resultset variables because of Liquids concepts. Example:
285
+
We implemented a liquid filter `sparql_query` to run custom SPARQL queries. Each occurrence of `?resourceUri` gets replaced with the current URI.
286
+
*Caution:* You have to separate query and result set variables because of Liquids concepts. Example:
|path|Relative path to the RDF-File|no default|Specifies the path to the RDF file from where you want to render the website|```path: "rdf-data/simpsons.ttl"```|
652
-
|remote|Section to specify a remote data source|no default|Has to contain the `endpoint` key. The `remote`paramter overrides the `path` parameter.||
667
+
|remote|Section to specify a remote data source|no default|Has to contain the `endpoint` key. The `remote`parameter overrides the `path` parameter.||
653
668
|remote > endpoint|SPARQL endpoint to get the data from|no default|Specifies the URL to the SPARQL endpoint from where you want to render the website|```remote: endpoint: "http://localhost:5000/sparql/"```|
669
+
|remote > default_graph|Select a named graph on the endpoint to use in place of the endpoint default graph|no default|Specifies the IRI to the named graph to select from the SPARQL endpoint|```remote: endpoint: "http://localhost:5000/sparql/" default_graph: "http://example.org/"```|
654
670
|language|Language-Tag as String|no default|Specifies the preferred language when you select objects using our Liquid filters|```language: "en"```|
655
671
|include_blank|Boolean-Expression|false|Specifies whether blank nodes should also be rendered or not|```include_blank: true```|
656
672
|restriction|SPARQL-Query as String or subjects/objects/predicates|no default|Restricts the resource-selection with a given SPARQL-Query to the results bound to the special variable `?resourceUri` or the three keywords `subjects` (only subject URIs), `objects`, `predicates`|```restriction: "SELECT ?resourceUri WHERE { ?resourceUri <http://www.ifi.uio.no/INF3580/family#hasFather> <http://www.ifi.uio.no/INF3580/simpsons#Homer> }"```|
A folder named `jekyll-rdf` will be automatically generated. You need to switch into this folder and compile the ruby gem to finish the installation:
670
686
```
@@ -679,7 +695,7 @@ bundle exec rake test
679
695
```
680
696
681
697
## Test page
682
-
Everytime the tests are executed, the Jekyll page inside of `test/source` gets processed. Start a slim web server to watch the results in web browser, e.g. Pythons `SimpleHTTPServer` (Python 2, for Python 3 it's `http.server`):
698
+
Every time the tests are executed, the Jekyll page inside of `test/source` gets processed. Start a slim web server to watch the results in web browser, e.g. Pythons `SimpleHTTPServer` (Python 2, for Python 3 it's `http.server`):
0 commit comments