Generic Linked Data browser. Apache license.
JavaScript Web Ontology Language XSLT Java CSS
Latest commit 6d80344 Sep 23, 2016 @pumba-lt pumba-lt xhtml:Script fixes
ac:mode and ac:accept properties added to the AC ontology
Top-level templates like xhtml:Body now match rdf:RDF (again)

README.md

AtomGraph Web-Client is a Java client for AtomGraph Processor Linked Data applications. If you have a triplestore with RDF data that you want to publish and/or build an end-user application on it, or would like to explore Linked Open Data, Client provides the components you need. It is stable yet actively maintained software, conveniently available on Maven as a single dependency for your project.

What AWC provides for users as out-of-the-box generic features:

  • declarative control of published data using URI and SPARQL templates
  • multilingual, responsive user interface built with Twitter Bootstrap
  • multiple rendering modes (currently item/list/table)
  • pagination on container resources
  • SPARQL endpoint with interactive results
  • loading RDF data from remote Linked Data sources
  • HTTP content negotiation and caching

What GC can be quickly extended to do:

  • render custom layouts/designs by overriding XSLT templates
  • store RDF data directly from HTML forms into the triplestore
  • control RDF input quality with SPARQL-based constraints
  • search by dynamically adding filters to the query
  • faceted browsing by dynamically binding variable values in the query
  • SPARQL result visualizations using different JavaScript APIs
  • ordering pages by property columns

AtomGraph's direct use of semantic technologies results in extemely extensible and flexible design and leads the way towards declarative Web development. You can forget all about broken hyperlinks and concentrate on building great apps on quality data.

Getting started

For full documentation, see the wiki index.

Maven

AtomGraph artifacts graphity-client, graphity-processor and graphity-core are released on Maven under the org.graphity group ID.

You should choose AtomGraph Web-Client as it includes both XSLT and Linked Data functionality, making it useful for end-user as well as server applications. Dependencies to other AtomGraph artifacts will be resolved automagically during the Maven build process. GC is released as WAR by default, but the JAR with classes is attached, and you can address it as a separate artifact:

    <dependency>
        <groupId>com.atomgraph</groupId>
        <artifactId>client</artifactId>
        <version>1.1.3</version>
        <classifier>classes</classifier>
    </dependency>
    <dependency>
        <groupId>com.atomgraph</groupId>
        <artifactId>client</artifactId>
        <version>1.1.3</version>
        <type>war</type>
    </dependency>

See more about installation.

No permanent storage!

AtomGraph Client does not include permanent RDF storage. By default it is configured to read the dataset from a file, therefore creating/updating data will have no effect.

In order to store data permanently, you need to set up a triplestore and configure the webapp with its SPARQL endpoint. For open-source, we recommend trying Jena's TDB; for commercial, see Dydra.

Demonstration

AtomGraph Web-Client screenshot

An instance of AtomGraph Web-Client runs for demonstration purposes on Linked Data Hub. See the DBPedia Linked Data description of Sir Tim Berners-Lee.

Note: the server is not production-grade and DBPedia is often unstable.

Support

Please report issues if you've encountered a bug or have a feature request.

Commercial AtomGraph consulting, development, and support are available from AtomGraph.

Community

Please join the W3C Declarative Linked Data Apps Community Group to discuss and develop AtomGraph and declarative Linked Data architecture in general.