Swirrl/grafter


Linked Data & RDF Manufacturing Tools in Clojure

Download


Step 1. Add the JitPack repository to your build file

Add it in your root settings.gradle at the end of repositories:

	dependencyResolutionManagement {
		repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
		repositories {
			mavenCentral()
			maven { url 'https://jitpack.io' }
		}
	}

Add it in your settings.gradle.kts at the end of repositories:

	dependencyResolutionManagement {
		repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
		repositories {
			mavenCentral()
			maven { url = uri("https://jitpack.io") }
		}
	}

Add to pom.xml

	<repositories>
		<repository>
		    <id>jitpack.io</id>
		    <url>https://jitpack.io</url>
		</repository>
	</repositories>

Add it in your build.sbt at the end of resolvers:

 
    resolvers += "jitpack" at "https://jitpack.io"
        
    

Add it in your project.clj at the end of repositories:

 
    :repositories [["jitpack" "https://jitpack.io"]]
        
    

Step 2. Add the dependency

	dependencies {
		implementation 'com.github.swirrl:grafter:2.1.18'
	}
	dependencies {
		implementation("com.github.swirrl:grafter:2.1.18")
	}
	<dependency>
	    <groupId>com.github.swirrl</groupId>
	    <artifactId>grafter</artifactId>
	    <version>2.1.18</version>
	</dependency>

                            
    libraryDependencies += "com.github.swirrl" % "grafter" % "2.1.18"
        
        

                            
    :dependencies [[com.github.swirrl/grafter "2.1.18"]]
        
        

Readme


Grafter - Linked Data & RDF Processing

Clojars Project | Clojars Project | Clojars Project

"For the hard graft of linked data processing."

Grafter is a Clojure library for linked data processing. It is mature and under active development.

It provides support for all common RDF serialisations and includes a library of functions for querying and writing to SPARQL repositories.

It is split into three sub-projects with their own dependency packages

  • io.github.swirrl/grafter.repository {:mvn/version "3.0.0"} (SPARQL repositories via RDF4j)
  • io.github.swirrl/grafter.io {:mvn/version "3.0.0"} (Reading/Writing RDF formats via RDF4j)
  • io.github.swirrl/grafter.core {:mvn/version "3.0.0"} (RDF protocols - independent of RDF4j)

Prerequisites

  • Java 17
  • Clojure 1.11.1

FAQ

Where can I find the api-docs?

Legacy docs

Didn't grafter also contain tools for tabular processing?

As of 0.9.0 the grafter.tabular library has been moved into a separate repository so the core grafter library can focus on processing linked data.

This part of the library is now considered deprecated. If you depend on it you can still use it, and it may receive occasional maintainance updates.

If you're looking to start a greenfield project then you can easily wire up any capable CSV/excel parser to the RDF processing side of grafter.

License

Copyright © 2014 Swirrl IT Ltd.

Distributed under the Eclipse Public License version 1.0, the same as Clojure.