Awesome Open Source
Awesome Open Source
Sponsorship

RDF Interfaces Extension

Build Status npm version

RDF-Ext provides a low-level JavaScript library for working with RDF & Linked Data. This module contains the core classes to handle RDF Model data. Additional modules may be required to handle data in different formats (Turtle, JSON-LD) or stores (Web, SPARQL). The module section lists the most common modules.

By including this package, you will get an implementation of:

This should be all needed for starting to work with RDF in JavaScript. If you interact with named nodes directly we recommend namespace, which gives a nice interface for creating named nodes.

If you are looking for a more high-level interaction with RDF in JavaScript you might consider the graph traversal library clownface and another abstraction on top of clownface called RDFine. RDF-Ext provides the technical foundation and is included in both projects.

Usage

In general, consult the RDFJS specification for details about how to interact with the library.

Node

RDF-Ext is available on npm, to install it run:

npm install rdf-ext

In the code, import RDF-Ext:

const rdf = require('rdf-ext')

Browser

The preferred way to use RDF-Ext in the browser is using browserify.

Distribution

It's also possible to use a prebuilt or custom distribution using the RDF-Ext distribution builder. This can be also done using the RDF-Ext distribution builder site.

Than just import the RDF-Ext distribution:

<script src="/js/rdf-ext.js"></script>

Everything is attached to the global variable rdf.

Support

Issues & feature requests should be reported on Github.

Pull requests are very welcome.

Modules

There are many modules for parsing, serializing, stores for persistence and simplified data handling. In general, all modules are available at npm and you can use the Github repository name to install them.

Parsers

If you want to get out of the box support for the most common formats, use Common Formats.

Serializers

  • JSON-LD - Outputs JSON-LD in flat document form
  • or JSON-LD - Outputs JSON-LD with prefix support and more document forms
  • N-Triples - Outputs N-Triples
  • CSV - CSV on the Web serializer that implements the RDFJS Sink interface.

If you want to get out of the box support for the most common formats, use Common Formats.

Stores

Implementations of the RDFJS Store interface.

  • Dataset - Wrapper around an in memory Dataset
  • SPARQL - Uses the SPARQL 1.1 Protocol
  • Filesystem - Filesystem based RDF Store that follows the RDF/JS: Stream interfaces specification.
  • Web - Query an external Linked Data via RESTful HTTP requests

Others

  • Common Formats - Loads parsers and serializers for the most common formats
  • Clownface - A graph traversal library inspired by Gremlin which allows querying any RDF dataset in a concise and readable way.
  • Express-Handler - Handle incoming and outgoing RDF data in Express
  • Fetch - Uses Fetch to send and receive RDF-Ext Graphs over HTTP
  • Fetch lite - Same as above but does not include common parsers and serializers so it is lightweight
  • Namespace - The package exports a factory to create builders for Named Nodes.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
javascript (66,517
rdf (76
json-ld (45
sparql (40
linked-data (36

Find Open Source By Browsing 7,000 Topics Across 59 Categories