From f8be57253bd35ae28851d6a082e17b69f4f45519 Mon Sep 17 00:00:00 2001 From: metacontext Date: Mon, 25 Mar 2019 06:29:26 +0100 Subject: [PATCH] Version 1.4.0 --- LICENSE.txt | 4 +- README.md | 26 +++- build.xml | 3 +- changelog.html | 8 +- collection.xconf | 1 - configuration.xml | 3 +- dh.html | 130 +++++++++++++++++++ documentation.html | 26 +--- error-page.html | 1 - errors.xml | 1 - examples.html | 74 ++--------- examples/dh/correspSearchLetters.xml | 5 +- examples/dh/correspSearchPersons.xml | 5 +- examples/dh/dio.xml | 3 +- examples/dh/epidat.xml | 3 +- examples/dh/epidat/index.html | 9 +- examples/dh/epidat/js/raphael-dracula.min.js | 7 + examples/dh/epidat/js/sgvizler.js | 2 +- examples/dh/epidat/persons.rdf | 3 +- examples/dh/epidat/persons.xml | 3 +- examples/gods/1.xml | 1 - examples/gods/10.xml | 1 - examples/gods/11.xml | 1 - examples/gods/12.xml | 1 - examples/gods/13.xml | 1 - examples/gods/14.xml | 1 - examples/gods/2.xml | 1 - examples/gods/3.xml | 1 - examples/gods/4.xml | 1 - examples/gods/5.xml | 1 - examples/gods/6.xml | 1 - examples/gods/7.xml | 1 - examples/gods/8.xml | 1 - examples/gods/9.xml | 1 - examples/gods/all.xml | 1 - examples/gods/conf-01.xml | 7 +- examples/gods/conf-02.xml | 9 +- examples/gods/conf-03.xml | 15 +-- examples/gods/conf-04.xml | 5 +- examples/gods/conf-05.xml | 7 +- examples/gods/conf-06.xml | 7 +- examples/gods/conf-07.xml | 7 +- examples/gods/conf-08.xml | 7 +- examples/gods/conf-09.xml | 7 +- examples/gods/conf-10.xml | 7 +- examples/gods/conf-11.xml | 5 +- examples/gods/conf-12.xml | 5 +- examples/gods/conf-13.xml | 5 +- examples/gods/conf-14.xml | 9 +- examples/gods/conf-15.xml | 5 +- examples/gods/conf-16.xml | 5 +- examples/gods/conf-17.xml | 5 +- examples/gods/conf-18.xml | 7 +- examples/gods/conf-19.xml | 7 +- examples/gods/conf-20.xml | 7 +- examples/gods/conf-21.xml | 5 +- examples/gods/configuration.xml | 7 +- examples/gods/index.xml | 1 - expath-pkg.xml | 3 +- extract.xql | 10 +- index.html | 14 +- modules/app.xql | 4 +- modules/config.xqm | 10 +- modules/view.xql | 4 +- rdf.xsl | 3 +- repo.xml | 5 +- resources/images/structure.png | Bin 73368 -> 821497 bytes showgraph.jrule | 45 +++++++ temp/.gitkeep | 0 templates/page.html | 17 ++- xtriples.rng | 1 - 71 files changed, 341 insertions(+), 258 deletions(-) create mode 100644 dh.html create mode 100644 examples/dh/epidat/js/raphael-dracula.min.js create mode 100644 showgraph.jrule create mode 100644 temp/.gitkeep diff --git a/LICENSE.txt b/LICENSE.txt index bec65f7..3acf9a5 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,7 +1,7 @@ The MIT License (MIT) -Copyright (c) 2015 Akademie der Wissenschaften und der Literatur | Mainz - Digitale Akademie -Copyright (c) 2015 Torsten Schrade +Copyright (c) 2015-2019 Academy of Sciences and Literature | Mainz +Copyright (c) 2015-2019 Torsten Schrade Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 94fa189..756fb22 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,10 @@ # XTriples +DOI: 10.5281/zenodo.2604391 + ## A generic webservice to extract RDF statements from XML resources. -Check out the demo and documentation at http://xtriples.spatialhumanities.de +Check out the demo and documentation at https://xtriples.lod.academy With this webservice you can crawl XML repositories and extract RDF statements using a simple configuration based on XPATH expressions. @@ -13,9 +15,9 @@ This repository contains the source code of the XTriples webservice. The webservice is distributed as a single .xar file, which can be installed into an eXist-db instance via the package manager. -You can download the latest version right here: http://download.spatialhumanities.de/ibr/xtriples-1.3.0.xar +You can download the latest version from GitHub: https://github.com/digicademy/xtriples/releases/latest -Read the documentation on how to setup your own instance of XTriples: http://xtriples.spatialhumanities.de/documentation.html#setup +Read the documentation on how to setup your own instance of XTriples: http://xtriples.lod.academy/documentation.html#setup ## Building @@ -24,7 +26,7 @@ To build the .xar yourself, you need to have Apache Ant installed. Alternatively Clone this repository to a local directory: - git clone https://github.com/spatialhumanities/xtriples.git xtriples + git clone https://github.com/digicademy/xtriples.git xtriples Change into the created directory and call @@ -32,7 +34,17 @@ Change into the created directory and call This should create a .xar file in the build directory. -## Credits +## License + +This software is published under the terms of the MIT license. + +## Research Software Engineering and Development + +Copyright 2015-2019, Torsten Schrade +Copyright 2015-2019, Academy of Sciences and Literature | Mainz + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -Released under MIT license. -@author: Torsten Schrade (@metacontext) \ No newline at end of file +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/build.xml b/build.xml index faf1de3..9f96570 100644 --- a/build.xml +++ b/build.xml @@ -1,6 +1,5 @@ - - + diff --git a/changelog.html b/changelog.html index 19de5fc..11c2d18 100644 --- a/changelog.html +++ b/changelog.html @@ -1,4 +1,3 @@ -
@@ -9,6 +8,13 @@

Generated page

Changelog

+

1.4.0

+
    +
  • CHANGE: Move XTriples to new namespace and home (LOD.ACADEMY)
  • +
  • INFO: Start official releases on GitHub and ZENODO. You can get older versions from here
  • +
  • INFO: New page for documenting the Digital Humanities use cases, papers and presentations
  • +
  • BUGFIX: Evaluation of <condition> tag should be forced to boolean
  • +

1.3.0

  • FEATURE: Allow XPATH/XQuery expressions in <statement repeat="{XPATH}"> to dynamically generate an integer count for $repeatIndex
  • diff --git a/collection.xconf b/collection.xconf index a871791..f8cbe19 100644 --- a/collection.xconf +++ b/collection.xconf @@ -1,4 +1,3 @@ - diff --git a/configuration.xml b/configuration.xml index 4bef6f6..39bd719 100644 --- a/configuration.xml +++ b/configuration.xml @@ -1,8 +1,7 @@ - - + diff --git a/dh.html b/dh.html new file mode 100644 index 0000000..61a4b52 --- /dev/null +++ b/dh.html @@ -0,0 +1,130 @@ +
    +
    +
    + +
    +
    +

    Digital Humanities

    +

    + XTriples has been a topic in the following papers, workshops and conference presentations: +

    +

    2019

    +
      +
    • + Julian Jarosch, Andreas Kuczera, Torsten Schrade and Tariq Youssef, Graphentechnologien in den Digital Humanities: + Methoden und Instrumente zur Modellierung, Transformation, Annotation und Analyse. Workshop and conference paper for the 6th DHd conference, 26.03.2019, + Mainz/Frankfurt, DOI 10.5281/zenodo.2596095, p.33-36. +
    • +
    +

    2018

    +
      +
    • + Max Grüntgens and Thomas Kollatz, Two become one. Lifting TEI EpiDoc encoded corpora to RDF. The case of DIO and EPIDAT. + Poster presentation at the Linked Pasts IV conference, 12.12.2018, Mainz. (Poster) +
    • +
    • + Max Grüntgens and Thomas Kollatz, Repositorien mergen, analysieren und visualisieren. Presentation at the DARIAH Grand Tour, + 20.09.2018, Darmstadt. (Slides) +
    • +
    +

    2017

    +
      +
    • + Torsten Schrade, Semantische Technologien und Fragen des Raums. Presentation at the workshop on 'Digitale Raumdarstellungen. + Barocke Kunst im Kontext aktueller Zugriffe der Spatial Humanities' at the Phillips-Universität Marburg, 04.04.2017. + (Slides) +
    • +
    +

    2016

    +
      +
    • + Torsten Schrade, Grundlagen von Linked Open Data (LOD) für die Nachnutzung von Forschungsdaten. Workshop at the conference of the working group + on eHumanities of the Union of the German Academies of Sciences, 11.11.2016, Düsseldorf. + (Slides) +
    • +
    • + Torsten Schrade, CIDOC-CRM Modellierung epigraphischer Fachdaten mit dem XTriples Webservice. Presentation at the DARIAH-DE workshop on + 'Research infrastructures for the Humanities and CIDOC-CRM', 25.07.2016, Darmstadt. (Slides) +
    • +
    • + Max Grüntgens and Torsten Schrade: Data Repositories in the Humanities and the Semantic Web. Modelling, Linking, Visualising. Conference + paper and presentation at the 1st WHiSe Workshop / ESWC 2016, 29.05.2016, Anissaras - Crete, URN urn:nbn:de:0074-1608-8, p. 53-63. + (Slides) +
    • +
    • + Torsten Schrade, Geisteswissenschaftliche Fachdatenrepositorien im Semantic Web. Modellierung, Vernetzung, Visualisierung. Conference + paper and presentation at the 3rd DHd conference in Leipzig, 07.-12.03.2016, ISBN 978-3-941379-05-3, + p. 215-218. (Slides) +
    • +
    +

    2015

    +
      +
    • + Torsten Schrade, Digitale Briefeditionen im Semantic Web. Der XTriples Webservice – Semantische Aussagen aus XML. + Presentation at the conference of the working group on eHumanities of the Union of the German Academies of Sciences, + Heidelberg, 15.09.2015. (Slides) +
    • +
    +
    +
    +

    Project examples

    +

    XTriples is used in many Digital Humanities projects:

    +
    +

    correspSearch

    +

    + correspSearch, an inventory and search service for scholarly letter editions by the Berlin-Brandenburg Academy of Sciences and Humanities +

    +

    + Example 1: Extract the correspondence of Johann Wolfgang von Goethe with several others as a network of letters. TEI XML basis.

    +

    + XML + Configuration + Result + SVG +

    +

    + Example 2: Correspondence of Johann Wolfgang von Goethe: Who wrote to whom. TEI XML basis.

    +

    + XML + Configuration + Result + SVG +

    +
    +

    Epidat

    +

    + Epidat, the database of Jewish epigraphy by the Steinheim-Institute of German-Jewish history +

    +

    + Example 1: Extraction of a database record for a gravestone and combination with external XML resources. TEI/Epidoc XML and custom XML basis. RDF modelled with CIDOC-CRM.

    +

    + XML + Configuration + Result + SVG +

    +

    Extraction and visualization of family relations from the Hamburg Altona gravestone corpus using FOAF, BIO and REL.

    +

    + View +

    +
    +

    German Inscriptions Online

    +

    + German Inscriptions Online, an epigraphic research project of six German Academies of Sciences +

    +

    + Example 1: Extraction of some catalogue numbers. TEI/Epidoc XML basis.

    +

    + XML + Configuration + Result + SVG +

    +
    +
    +
    +
    +
    \ No newline at end of file diff --git a/documentation.html b/documentation.html index 8616748..1f687b0 100644 --- a/documentation.html +++ b/documentation.html @@ -1,4 +1,3 @@ -
    @@ -29,11 +28,11 @@

    Background

    and a number of XPATH/XQuery based statement patterns to apply on the data.

    - The webservice accepts POST or GET request to http://xtriples.spatialhumanities.de/extract.xql. + The webservice accepts POST or GET request to https://xtriples.lod.academy/extract.xql.

    Requests

    POST requests

    -

    You can submit POST requests to http://xtriples.spatialhumanities.de/extract.xql +

    You can submit POST requests to https://xtriples.lod.academy/extract.xql

    The request body should contain your XTriples configuration. Additionally, you need to send the Content-Type HTTP header with a value of application/xml and the format HTTP header with one of the following values:

    Reference
    @@ -83,7 +82,7 @@
    Reference

    GET requests

    The most compact way to use the webservice is via HTTP GET requests. This is the URL scheme:

    - http://xtriples.spatialhumanities.de/extract.xql?configuration=###YOUR_URI###&format=###FORMAT_KEYWORD### + https://xtriples.lod.academy/extract.xql?configuration=###YOUR_URI###&format=###FORMAT_KEYWORD###

    The keywords for the format parameter are the same as for direct POST requests (see above).

    Basic configuration

    @@ -185,14 +184,12 @@
    Example 1: XPATH based resource crawling with resources all in one single fi XML Configuration Result - Graph

    Example 2: XPATH based resource crawling with resources spread over multiple files

    XML Configuration Result - Graph

    Link based resource crawling

    @@ -220,7 +217,6 @@

    Example 3: Link based resource crawling with fixed resources in the configur

    Configuration Result - Graph

    Literal resource crawling

    @@ -246,7 +242,6 @@

    Example 4: Literal resource crawling with XML resources

    Configuration Result - Graph

    The <vocabularies> tag

    @@ -353,7 +348,6 @@

    Example 5: FOAF statement for one resource
    XML Configuration Result - Graph

    The <subject> tag

    @@ -440,25 +434,21 @@

    Example 6: Extracting a subject URI

    Configuration Result - Graph

    Example 7: Creating a subject blank node

    Configuration Result - Graph

    Example 8: Including a value from an external XML resource in the subject

    Configuration Result - Graph

    Example 9: Prepend and append values to the subject result

    Configuration Result - Graph

    The <predicate> tag

    @@ -633,25 +623,21 @@

    Example 10: Creating an object URI

    Configuration Result - Graph

    Example 11: Creating a typed object literal

    Configuration Result - Graph

    Example 12: Creating a language tagged literal

    Configuration Result - Graph

    Example 13: Including a value from an external resource in the object

    Configuration Result - Graph

    The <condition> tag

    @@ -675,7 +661,6 @@

    Example 14: Applying a <condition> to a statement pattern

    Configuration Result - Graph

    Advanced configuration

    Context variables

    @@ -727,13 +712,11 @@
    Example 15: Using the $currentResource variable in statement patterns

    Configuration Result - Graph

    Example 16: Using the $repeatIndex variable in statement patterns

    Configuration Result - Graph

    1:n statements

    @@ -746,7 +729,6 @@

    Example 17: Creating a 1:n statement with an object node set
    Configuration Result SVG - Graph

    n:1 statements

    Example 18: Creating a n:1 statement with a subject node sets
    @@ -759,7 +741,6 @@
    Example 18: Creating a n:1 statement with a subject node sets
    Configuration Result SVG - Graph

    n:m statements

    @@ -772,7 +753,6 @@

    Example 19: Creating n:m statements in a single statement pattern
    Configuration Result SVG - Graph

    Error handling and debugging

    diff --git a/error-page.html b/error-page.html index 236071b..6f61a17 100644 --- a/error-page.html +++ b/error-page.html @@ -1,4 +1,3 @@ -

    An error has occurred

    An error has been generated by the application.

    diff --git a/errors.xml b/errors.xml index 9f59ae6..ffac983 100644 --- a/errors.xml +++ b/errors.xml @@ -1,4 +1,3 @@ - Resource contains no content diff --git a/examples.html b/examples.html index 4abeafb..2340ff0 100644 --- a/examples.html +++ b/examples.html @@ -1,4 +1,3 @@ -
    @@ -7,12 +6,17 @@

    Generated page

    A generic webservice to extract RDF statements from XML resources.

    -
    -

    Basic examples

    -

    - The following examples demonstrate the basic functionality of XTriples. Use the buttons to see the underlying XML of the examples, the configuration files - and the results of each extraction. -

    +

    Basic examples

    +

    + The following examples demonstrate the basic functionality of XTriples. Use the buttons to see the underlying XML of the examples, the configuration files + and the results of each extraction. + XTriples is used in many Digital Humanities research projects. Please have a look at + this page for some papers, conference presentations and + project examples. +

    +
    +
    +
    Example 1: XPATH based resource crawling with resources all in one single file

    XML @@ -66,6 +70,8 @@

    Example 10: Creating an object URI
    Configuration Result

    +
    +
    Example 11: Creating a typed object literal

    Configuration @@ -101,21 +107,18 @@

    Example 17: Creating a 1:n statement with an object node set
    Configuration Result SVG - Graph

    Example 18: Creating a n:1 statement with a subject node sets

    Configuration Result SVG - Graph

    Example 19: Creating n:m statements in a single statement pattern

    Configuration Result SVG - Graph

    Example 20: Using the internal xtriples result format for debugging purposes

    @@ -123,57 +126,6 @@

    Example 20: Using the internal xtriples result format for debugging purposes Result

    -
    -

    Digital Humanities examples

    -

    XTriples is employed in several Digital Humanities projects, namely

    -
      -
    • - German Inscriptions Online, an epigraphic research project of six German Academies of Sciences
    • -
    • - Epidat, the database of Jewish epigraphy by the Steinheim-Institute of German-Jewish history
    • -
    • - correspSearch, an inventory and search service for scholarly letter editions by the Berlin-Brandenburg Academy of Sciences and Humanities
    • -
    -

    Example from German Inscriptions Online

    -

    Extraction of some catalogue numbers. TEI/Epidoc XML basis.

    -

    - XML - Configuration - Result - SVG - Graph -

    -

    Examples from Epidat

    -

    Extraction of a database record for a gravestone and combination with external XML resources. TEI/Epidoc XML and custom XML basis. RDF modelled with CIDOC-CRM.

    -

    - XML - Configuration - Result - SVG - Graph -

    -

    Extraction and visualization of family relations from the Hamburg Altona gravestone corpus using FOAF, BIO and REL.

    -

    - View -

    -

    Examples from correspSearch

    -

    Extract the correspondence of Johann Wolfgang von Goethe with several others as a network of letters. TEI XML basis.

    -

    - XML - Configuration - Result - SVG - Graph -

    -

    Correspondence of Johann Wolfgang von Goethe: Who wrote to whom. TEI XML basis.

    -

    - XML - Configuration - Result - SVG - Graph -

    -
    diff --git a/examples/dh/correspSearchLetters.xml b/examples/dh/correspSearchLetters.xml index 0afecd0..f653b8d 100644 --- a/examples/dh/correspSearchLetters.xml +++ b/examples/dh/correspSearchLetters.xml @@ -1,5 +1,4 @@ - - + @@ -163,7 +162,7 @@ - + \ No newline at end of file diff --git a/examples/dh/correspSearchPersons.xml b/examples/dh/correspSearchPersons.xml index baa50b6..edc8c44 100644 --- a/examples/dh/correspSearchPersons.xml +++ b/examples/dh/correspSearchPersons.xml @@ -1,5 +1,4 @@ - - + @@ -49,7 +48,7 @@ - + \ No newline at end of file diff --git a/examples/dh/dio.xml b/examples/dh/dio.xml index 84afbe0..cea56d3 100644 --- a/examples/dh/dio.xml +++ b/examples/dh/dio.xml @@ -1,5 +1,4 @@ - - + diff --git a/examples/dh/epidat.xml b/examples/dh/epidat.xml index a71139e..213d07a 100644 --- a/examples/dh/epidat.xml +++ b/examples/dh/epidat.xml @@ -1,5 +1,4 @@ - - + diff --git a/examples/dh/epidat/index.html b/examples/dh/epidat/index.html index ad17f77..556ab59 100644 --- a/examples/dh/epidat/index.html +++ b/examples/dh/epidat/index.html @@ -1,4 +1,3 @@ - Epidat: Family relations in the Hamburg-Altona Epidat gravestone corpus @@ -15,7 +14,7 @@