All Projects β†’ albertmeronyo β†’ pyldn

albertmeronyo / pyldn

Licence: Apache-2.0 license
A pythonic Linked Data Notifications (LDN) receiver

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to pyldn

mayktso
🌌 mayktso: encounters at an endpoint
Stars: ✭ 19 (+46.15%)
Mutual labels:  linked-data, semantic-web, linked-data-notifications
Hypergraphql
GraphQL interface for querying and serving linked data on the Web.
Stars: ✭ 120 (+823.08%)
Mutual labels:  linked-data, semantic-web
Hypergraphql
GraphQL interface for querying and serving linked data on the Web.
Stars: ✭ 112 (+761.54%)
Mutual labels:  linked-data, semantic-web
Rdf4j
Eclipse RDF4J: scalable RDF for Java
Stars: ✭ 242 (+1761.54%)
Mutual labels:  linked-data, semantic-web
grlc
grlc builds Web APIs using shared SPARQL queries
Stars: ✭ 118 (+807.69%)
Mutual labels:  linked-data, semantic-web
Web Client
Generic Linked Data browser and UX component framework. Apache license.
Stars: ✭ 105 (+707.69%)
Mutual labels:  linked-data, semantic-web
Grafter
Linked Data & RDF Manufacturing Tools in Clojure
Stars: ✭ 174 (+1238.46%)
Mutual labels:  linked-data, semantic-web
Dokieli
πŸ’‘ dokieli is a clientside editor for decentralised article publishing, annotations and social interactions
Stars: ✭ 582 (+4376.92%)
Mutual labels:  linked-data, semantic-web
LDWizard
A generic framework for simplifying the creation of linked data.
Stars: ✭ 17 (+30.77%)
Mutual labels:  linked-data, semantic-web
Processor
Ontology-driven Linked Data processor and server for SPARQL backends. Apache License.
Stars: ✭ 54 (+315.38%)
Mutual labels:  linked-data, semantic-web
linked-connections-server
Express based server that exposes Linked Connections.
Stars: ✭ 12 (-7.69%)
Mutual labels:  linked-data, semantic-web
Limes
Link Discovery Framework for Metric Spaces.
Stars: ✭ 94 (+623.08%)
Mutual labels:  linked-data, semantic-web
Jsonld.js
A JSON-LD Processor and API implementation in JavaScript
Stars: ✭ 1,212 (+9223.08%)
Mutual labels:  linked-data, semantic-web
Rdflib
RDFLib is a Python library for working with RDF, a simple yet powerful language for representing information.
Stars: ✭ 1,584 (+12084.62%)
Mutual labels:  linked-data, semantic-web
Informationmodel
The Information Model of the International Data Spaces implements the IDS reference architecture as an extensible, machine readable and technology independent data model.
Stars: ✭ 27 (+107.69%)
Mutual labels:  linked-data, semantic-web
Topic Db
TopicDB is a topic maps-based semantic graph store (using PostgreSQL for persistence)
Stars: ✭ 164 (+1161.54%)
Mutual labels:  linked-data, semantic-web
Semanticmediawiki
πŸ”— Semantic MediaWiki turns MediaWiki into a knowledge management platform with query and export capabilities
Stars: ✭ 359 (+2661.54%)
Mutual labels:  linked-data, semantic-web
Pyld
JSON-LD processor written in Python
Stars: ✭ 413 (+3076.92%)
Mutual labels:  linked-data, semantic-web
Php Json Ld
PHP implementation of a JSON-LD Processor and API
Stars: ✭ 246 (+1792.31%)
Mutual labels:  linked-data, semantic-web
jsonld-context-parser.js
Parses JSON-LD contexts
Stars: ✭ 20 (+53.85%)
Mutual labels:  linked-data, semantic-web

pyldn

A python Linked Data Notifications (LDN) receiver

Author: Albert MeroΓ±o
Copyright: Albert MeroΓ±o, VU University Amsterdam
License: Apache 2 (see license.txt)

Features

pyldn is a lightweight receiver for LDN. This means you can set up an inbox to receive notifications as Linked Data in seconds!

Install

git clone https://github.com/albertmeronyo/pyldn
cd pyldn
virtualenv .
source bin/activate
pip install -r requirements.txt

Usage

python pyldn.py

Then, from a client you can discover an inbox

curl -I -X GET http://pyldn.amp.ops.labs.vu.nl/

HTTP/1.1 200 OK
Link: <http://pyldn.amp.ops.labs.vu.nl:8088/inbox/>;

You can request a list of the notification URLs it contains:

curl -X GET -H'Accept: text/turtle' http://pyldn.amp.ops.labs.vu.nl/inbox/

HTTP/1.1 200 OK

@prefix ldp: <http://www.w3.org/ns/ldp#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<http://pyldn.amp.ops.labs.vu.nl:8088/inbox/> a ldp:BasicContainer,
        ldp:Container,
        ldp:RDFSource,
        ldp:Resource ;
    ldp:contains <http://pyldn.amp.ops.labs.vu.nl:8088/inbox/1>,
        <http://pyldn.amp.ops.labs.vu.nl:8088/inbox/2> .

You can even post new notifications to this inbox! You'll get the URL for your notification in the response headers:

curl -i -X POST -d '<foo> <bar> <foobar> .' -H'Content-Type: text/turtle' http://pyldn.amp.ops.labs.vu.nl/inbox/

HTTP/1.1 201 CREATED
Location: http://pyldn.amp.ops.labs.vu.nl:8088/inbox/3

If you want to retrieve the content of your brand new notification:

curl -i -X GET -H'Accept: text/turtle' http://pyldn.amp.ops.labs.vu.nl/inbox/3

HTTP/1.1 200 OK

@prefix ns1: <file:///home/amp/src/pyldn/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

ns1:foo ns1:bar ns1:foobar .

See the latest LDN draft for a complete and concise description of all you can do with LDN!

Configuration

You'll find a sample config.ini file you can customize according to your needs (mostly base path, inbox path, and port).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].