Skip to content

Highly performant streaming linked data processing. RDFa, RDF/XML, Turtle, NTriples support. No external dependencies, runs on Android and GAE. Jena, Sesame and Clerezza integration.

License

Notifications You must be signed in to change notification settings

terrypan/semargl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

119 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to the home of Semargl!

Semargl is a modular framework for crawling linked data from structured documents. The main goal of the project is to provide lightweight and performant tool without excess dependencies.

At this moment Semargl offers high-performant streaming parsers for RDF/XML, RDFa, N-Triples, streaming serializer for Turtle and integration with Jena, Clerezza and Sesame.

Small memory footprint, and CPU requirements allow framework to be embedded in any system. It runs seamlessly on Android and GAE.

You can check some framework capabilities via RDFa parser demo.

Why use Semargl?

Lightweight

Semargl’s code is small and simple to understand. It has no external dependencies and it will never read a mail. Internally it operates with a raw strings and creates as few objects as possible, so your Android or GAE applications will be happy.

Standard conformant

All parsers and serializers fully support corresponding W3C specifications and test suites.

Dead Simple

No jokes!

// just init triple store you want
MGraph graph = ... // Clerezza calls
// create processing pipe
StreamProcessor sp = new StreamProcessor(NTriplesParser.connect(ClerezzaSink.connect(graph));
// and run it
sp.process(file, docUri);

If you want to use Semargl as a standalone framework, you can find useful internal serializers and easily extendable API. See more info and usage examples at project's page.

Build

To build framework just run mvn install.

About

Highly performant streaming linked data processing. RDFa, RDF/XML, Turtle, NTriples support. No external dependencies, runs on Android and GAE. Jena, Sesame and Clerezza integration.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 100.0%