RDF Presentation

The parent project for RDFP - RDF Presentation: its implementation over Jersey and the demonstration website

License

License

GroupId

GroupId

com.github.thesmartenergy
ArtifactId

ArtifactId

rdfp
Last Version

Last Version

1.2.2
Release Date

Release Date

Type

Type

pom
Description

Description

RDF Presentation
The parent project for RDFP - RDF Presentation: its implementation over Jersey and the demonstration website
Project Organization

Project Organization

ITEA 12004 SEAS Project
Source Code Management

Source Code Management

https://github.com/thesmartenergy/rdfp

Download rdfp

Filename Size
rdfp-1.2.2.pom 12 KB
Browse

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.thesmartenergy/rdfp/ -->
<dependency>
    <groupId>com.github.thesmartenergy</groupId>
    <artifactId>rdfp</artifactId>
    <version>1.2.2</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/com.github.thesmartenergy/rdfp/
implementation 'com.github.thesmartenergy:rdfp:1.2.2'
// https://jarcasting.com/artifacts/com.github.thesmartenergy/rdfp/
implementation ("com.github.thesmartenergy:rdfp:1.2.2")
'com.github.thesmartenergy:rdfp:pom:1.2.2'
<dependency org="com.github.thesmartenergy" name="rdfp" rev="1.2.2">
  <artifact name="rdfp" type="pom" />
</dependency>
@Grapes(
@Grab(group='com.github.thesmartenergy', module='rdfp', version='1.2.2')
)
libraryDependencies += "com.github.thesmartenergy" % "rdfp" % "1.2.2"
[com.github.thesmartenergy/rdfp "1.2.2"]

Dependencies

test (2)

Group / Artifact Type Version
junit : junit jar 4.12
org.hamcrest : hamcrest-core jar 1.3

Project Modules

  • rdfp-core
  • rdfp-jersey-server

RDF Presentation and RDF Presentation Negotiation

An RDF graph can be presented in several ways, using different media types. Examples of RDF media types include application/rdf+xml, text/turtle, application/json+ld.

Today, most of the content consumed/produced/published, on the Web is not presented in RDF.

In the Web of Things, HTTP servers and clients would rather exchange lightweight documents, potentially binary. Currently, most existing RDF Presentations generically apply to any RDF graph, at the cost of being heavy text-based documents. Yet, lightweight HTTP servers/clients could be better satisfied with consuming/producing/publishing lightweight documents, may its structure be application-specific.

On the other hand, various formalisms have been developed:

For a given range of RDF graphs and a specific media types, an RDF Presentation is a combination of lifting, lowering, and validation rules. With these rules, one can coherently interpret a representation as RDF (lift), validate the RDF graph, and generate back the representation from the RDF graph (lower).

While sending any kind of document, potentially lightweight, an HTTP server/client may refer to the specific RDF Presentation that is used. Then, the HTTP client/server can lift the document to RDF, and validate it.

Similarly, while requesting for an RDF graph, an HTTP server/client may inform the client/server what representation it prefers. Then, the client/server can validate the RDF graph, then lower it into a document.

What this project contains

This project contains the sources for the RDF Presentation project:

  • rdfp-website contains the sources of the project website at https://w3id.org/rdfp
  • rdfp-jersey-server is an extension of Jersey that eases the development of RESTful services that produce and consume RDF. It hides the RDF Presentation description and RDF Presentation Negotiation parts, and lets the end developer focus on manipulating RDF Graphs as Apache Jena models.

Binaries, sources and documentation for rdfp-jersey-server are available for download at Maven Central. To use it in your Maven project, add the following dependency declaration to your Maven project file ( *.pom file):

<dependency>
    <groupId>com.github.thesmartenergy</groupId>
    <artifactId>rdfp-jersey-server</artifactId>
    <version>${rdfp-jersey.version}</version>
</dependency>

Contact

[email protected]

http://maxime-lefrancois.info/

com.github.thesmartenergy

The Smart Energy

The ITEA2 12004 Smart Energy Aware Systems Project - open source code projects

Versions

Version
1.2.2
1.2
1.1
1.0