GR2RSS: Publishing Linked Open Commerce Data as RSS and Atom Feeds

by   Alex Stolz, et al.

The integration of Linked Open Data (LOD) content in Web pages is a challenging and sometimes tedious task for Web developers. At the same moment, most software packages for blogs, content management systems (CMS), and shop applications support the consumption of feed formats, namely RSS and Atom. In this technical report, we demonstrate an on-line tool that fetches e-commerce data from a SPARQL endpoint and syndicates obtained results as RSS or Atom feeds. Our approach combines (1) the popularity and broad tooling support of existing feed formats, (2) the precision of queries against structured data built upon common Web vocabularies like, GoodRelations, FOAF, VCard, and WGS 84, and (3) the ease of integrating content from a large number of Web sites and other data sources in RDF in general.



There are no comments yet.


page 1

page 2

page 3

page 4


An Empirical Meta-analysis of the Life Sciences (Linked?) Open Data on the Web

While the biomedical community has published several "open data" sources...

Jekyll RDF: Template-Based Linked Data Publication with Minimized Effort and Maximum Scalability

Over the last decades the Web has evolved from a human-human communicati...

User Modeling Combining Access Logs, Page Content and Semantics

The paper proposes an approach to modeling users of large Web sites base...

A Linked Data Application Framework to Enable Rapid Prototyping

Application developers, in our experience, tend to hesitate when dealing...

The Cosmic Spiderweb and General Origami Tessellation Design

The cosmic web (the arrangement of matter in the universe), spider's web...

Path Outlines: Browsing Path-Based Summaries of Linked Open Datasets

Linked Data (LD) are structured sources of information, such as DBpedia ...

Detection of Wordpress Content Injection Vulnerability

The popularity of content management software (CMS) is growing vastly to...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Despite the growing amount of structured data on the Web, the useful integration into Web pages still lags behind opportunities. In the field of e-commerce, major retail sites like,,, and numerous smaller shops have added RDFa and Microdata markup to their page templates, exposing more than 30 million offers that are updated on a daily basis. A couple of SPARQL endpoints already collate this structured e-commerce data. However, fetching useful information typically involves contacting the right endpoints, crafting proper SPARQL queries, and eventually converting results into data formats understood by target applications. Average Web developers and site owners quickly get overwhelmed by the technical challenges imposed by these tasks. At the same time, there exist popular data formats for publishing dynamic content on the Web, namely RSS [4] and the Atom Syndication Format [3, 5]. Both feed formats have excellent tool support; i.e., most software packages for blogs, content management systems (CMS), and shopping carts provide integration capabilities for external sources using RSS or Atom.

In this technical report, we show an approach that combines the broad tooling support of established data feed standards with the precision of queries against structured data collected from multiple Web sites and RDF data sources, built upon common Web vocabularies such as schema.org111, GoodRelations [1], FOAF222, VCard333, and WGS 84444

2 GR2RSS Tool

The on-line tool555 that we have developed fetches GoodRelations e-commerce data from a SPARQL endpoint and syndicates obtained results as RSS or Atom feeds. Fig. 1 outlines the general system architecture of our tool. The generated data feeds serve as carriers to facilitate the consumption and integration of linked open commerce data in Web pages. This way site owners have a means to add relevant, dynamic content to their Web pages, thereby attracting visitors and improving search engine rankings. Conversely, product vendors gain additional visibility of their products for free, since items republished by virtue of site owners and bloggers link back to shops where the products are actually offered.

Figure 1: Conceptual architecture of the GR2RSS on-line service

In the following, we summarize the core technical contributions of our on-line service:

  1. Query builder: The tool supports three different levels of expertise. Depending on the selected search mode, a more or less sophisticated query builder is presented to the user. The following three search modes are available:

    • Basic: Single input field for keyword searches.

    • Extended: Query builder with support for filtering and sorting results, price currency conversion for products, and location-aware store searches.

    • Expert: Input field for entering raw SPARQL queries and a set of possible variables which bindings can be processed by the feed templates.

  2. Prefetching and caching: In order to limit load at the SPARQL endpoints, we implemented server-side caching of the generated feeds. Our caching mechanism stores records of successfully executed queries in a local database management system for serving future requests and creates corresponding cache files. After a given cache period (e.g. a day), future requests trigger cache invalidations whereby the cached files are replaced by freshly generated feed content.

  3. Geo information: RSS and Atom feed formats provide extension mechanisms to support custom vocabularies. We used the GeoRSS666 vocabulary to include positional data in data feeds. These annotations allow, for instance, to extract and display location data on a map, e.g. on Google Maps.

  4. Viral use of RDFa: Based on the idea of embedding RSS and Atom feeds in blog systems and CMS, we decided to piggyback RDFa statements as entity-encoded HTML in feed entries [7]. Thereby we can obtain a viral publication effect, because RDFa preserves the URIs of the original entities and thus prevents the proliferation of identifiers. In other words, any Web page integration of feed content contributes to the promotion of the product offers at the origin. Moreover, we employ foaf:page links to provide a means for tracking the document URI at which the particular content reappears.

  5. Currency conversion: The currency conversion at the endpoint is realized using a materialization of exchange rates based on the Exchange Rate Ontology777 (XRO). These currency exchange rates need to be available before any currency conversion task in SPARQL can take place. A service based on XRO that provides regularly updated exchange rates in RDF is available at [6].

Our on-line tool was written in PHP and uses Javascript for user interaction. It runs over Linked Open Commerce data stores, and is compatible with Virtuoso SPARQL endpoints that support the bif:contains feature, a built-in function that executes over a full-text search index. For the future, we are planning to rewrite parts of the code in order to make the tool SPARQL-1.1-compliant.

3 Demonstration

In the following, we demonstrate an example of integrating a generated feed into a Web page. Suppose that we are looking for products within a price range of and dollars that contain the keyword “camcorder” and include product pictures. The populated form fields of the query builder are depicted in Fig. 2. The figure also shows a single camcorder item after integrating the feed into a Web page.

Figure 2: Query builder for camcorder search and Web page integration of the feed

Similar examples can be found in the tool documentation888 and example page999

4 Related Work

We compared our work with existing approaches, namely (1) single feed definition dialogs, as offered by major sites (e.g. eBay and Amazon), and (2) feed aggregation services, i.e. Yahoo Pipes101010 and DERI Pipes [2]. The former approaches typically fail at integrating different data sources (e.g. list five cheapest offers among Amazon and eBay feeds), whereas aggregation services are limited to filter results by brittle regex-based expressions (e.g. show only shops in New York) and lack simple unit conversion (e.g. display all prices in euros) (cf. [7]).

5 Conclusions

The presented on-line service aims to address the issue of Linked Open Data (LOD) content integration in Web pages. For this purpose, it generates RSS and Atom feeds from structured e-commerce data fetched from a SPARQL endpoint, thereby exploiting the excellent tool support for content syndication formats. The service allows for different levels of query building assistance, implements caching, incorporates geo-location data and RDFa annotations, and employs currency conversion at the endpoint. We consider our approach to be of similar use for other fields of Linked Open Data outside the narrow scope of e-commerce.


  • [1]

    Hepp, M.: GoodRelations: An Ontology for Describing Products and Services Offers on the Web. In: Proceedings of the 16th International Conference on Knowledge Engineering (EKAW 2008). pp. 329–346. Acritezza, Italy (2008)

  • [2] Le-Phuoc, D., Polleres, A., Hauswirth, M., Tummarello, G., Morbidoni, C.: Rapid Prototyping of Semantic Mash-ups through Semantic Web Pipes. In: Proceedings of the 18th International World Wide Web Conference (WWW 2009). pp. 581–590. Madrid, Spain (2009)
  • [3] Nottingham, M., Sayre, R.: The Atom Syndication Format (2005),
  • [4] RSS Advisory Board: RSS 2.0 Specification,
  • [5] Sayre, R.: Atom: The Standard in Syndication. IEEE Internet Computing 9(4), 71–78 (2005)
  • [6] Stolz, A., Hepp, M.: Currency Conversion the Linked Data Way. In: Proceedings of the First Workshop on Services and Applications over Linked APIs and Data (SALAD2013). pp. 44–55. CEUR Workshop Proceedings, Montpellier, France (2013)
  • [7] Stolz, A., Hepp, M.: From RDF to RSS and Atom: Content Syndication with Linked Data. In: Proceedings of the 24th ACM Conference on Hypertext and Social Media (Hypertext 2013). pp. 236–241. ACM, Paris, France (2013)