Linked MovieDatabase

From BC$ MobileTV Wiki
Jump to: navigation, search

The Linked MovieDatabase (commonly abbreviated LinkedMDB) publishes the world's first open semantic web database dedicated to movie-related information.

The project submission "Linked Movie Data Base", by Oktie Hassanzadeh and Mariano P. Consens, has been awarded the first prize at the LOD Triplification Challenge.

The LinkedMDB database contains millions of RDF triples with hundreds of thousands of RDF interlinks to other existing web data sources and documents. A highlight of this project is the use of a tool, ODDLinker, employing state-of-the-art similarity join techniques for finding links between different data sources.



Components

The Linked Movie Database consists of an Apache server running an instance of the D2R (Database to RDF) Server on top of its traditional MySQL Relational Database, plus it also provides a Triplify-based N3 and RDF TripleStore.


D2R Server

D2R Server is a tool for publishing relational databases on the Semantic Web. It enables RDF and HTML browsers to navigate the content of the database, and allows applications to query the database using the SPARQL query language.

* D2R Server source: http://www4.wiwiss.fu-berlin.de/bizer/d2r-server/


Triplify

Short Story There must be something such as a Web of data, semantics or knowledge.


Long Story The vision of the Semantic Web still has not become reality even though significant research and development efforts were undertaken. The growth of semantic representations is probably still outpaced by the growth of traditional Web pages and one might be skeptic about the potential success of the Semantic Web at all. But are there alternatives? From our point of view: Not really! The missing spark for starting the Semantic Web is to overcome the chicken-and-egg dilemma of missing semantic representations and search facilities on the Web.

Triplify tackles this dilemma by leveraging relational representations behind existing Web applications. A large part of Web content is generated by database driven Web applications. The structure and semantics encoded in relational database schemes, however, unfortunately was not accessible to Web search engines, mashups etc.



API

SPARQL Endpoint

You can obtain results by utilizing the SPARQL endpoint directly or via the SNORQL explorer of that endpoint (which more easily wraps results in a basic JSON or XML format, for AJAX queries).

All Data can be accessed via the LinkedMDB Data endpoint:

http://data.linkedmdb.org/all

[1]

EXAMPLE #1 - All films (showing: title, image, link, release date, runtime) ordered by release date (newest to oldest):

 PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
 PREFIX foaf: <http://xmlns.com/foaf/0.1/>
 PREFIX dc: <http://purl.org/dc/terms/>
 PREFIX dbpedia: <http://dbpedia.org/property/>
 PREFIX movie: <http://data.linkedmdb.org/resource/movie/>

 SELECT * WHERE {
   ?film     rdfs:label          ?filmTitle.
   OPTIONAL { ?film dc:title ?title. }
   ?film dbpedia:hasPhotoCollection ?image.
   ?film     foaf:page           ?link.
   ?film     movie:initial_release_date ?date.
   ?film     movie:runtime       ?runtime.
   OPTIONAL { ?film movie:relatedBook ?book }
 }
ORDER BY DESC(?date)

[2]


EXAMPLE #2 - All films (showing: title, image, link, release date, runtime) matching a particular keyword

 PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
 PREFIX foaf: <http://xmlns.com/foaf/0.1/>
 PREFIX dc: <http://purl.org/dc/terms/>
 PREFIX dbpedia: <http://dbpedia.org/property/>
 PREFIX movie: <http://data.linkedmdb.org/resource/movie/>

 SELECT * WHERE {
   ?film  rdfs:label     ?filmTitle .
   ?film  foaf:page      ?link      .
   ?film  movie:runtime  ?runtime   .
   ?film  movie:initial_release_date ?date.
   ?film  dc:title       ?title     . 
   FILTER (regex(?title, "^Star Wars Episode")) .
 }
 ORDER BY ASC(?date)

EXAMPLE #3 - All films (runtime, title, link) by director George Lucas:

 PREFIX movie: <http://data.linkedmdb.org/resource/movie/>
 PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
 PREFIX foaf: <http://xmlns.com/foaf/0.1/>

 SELECT * WHERE {
  ?film     rdfs:label          ?filmTitle.
  ?film     foaf:page           ?link; 
  ?link     contains            "imdb"
  ?film     movie:runtime       ?runtime.
  ?film     movie:director      ?director.
  ?director movie:director_name "George Lucas".
 }

EXAMPLE #4 - This could then be augmented by IMDB, Freebase, DBpedia Data about a Film, Eventful API for Theater Showtimes:

http://www.imdbapi.com/?i=&t=Star+Wars+(1977)


EXAMPLE #5 - Movie explorer (By title or director):

http://bcmoney-mobiletv.com/widgets/movies


External Links


See Also

LOD | RDF | Movie | IMDB | RDF | SPARQL
  1. LinkedMDB - Data: http://data.linkedmdb.org/
  2. http://www.linkedmdb.org/snorql/?query=PREFIX+rdfs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0D%0A+PREFIX+foaf%3A+%3Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E%0D%0A+PREFIX+dc%3A+%3Chttp%3A%2F%2Fpurl.org%2Fdc%2Fterms%2F%3E%0D%0A+PREFIX+dbpedia%3A+%3Chttp%3A%2F%2Fdbpedia.org%2Fproperty%2F%3E%0D%0A+PREFIX+movie%3A+%3Chttp%3A%2F%2Fdata.linkedmdb.org%2Fresource%2Fmovie%2F%3E%0D%0A%0D%0A+SELECT+*+WHERE+{%0D%0A+++%3Ffilm+++++rdfs%3Alabel++++++++++%3FfilmTitle.%0D%0A+++%3Ffilm+++++dc%3Atitle++++++++++++%3Ftitle.%0D%0A+++%3Ffilm+dbpedia%3AhasPhotoCollection+%3Fimage.%0D%0A+++%3Ffilm+++++foaf%3Apage+++++++++++%3Flink.%0D%0A+++%3Ffilm+++++movie%3Ainitial_release_date+%3Fdate.%0D%0A+++%3Ffilm+++++movie%3Aruntime+++++++%3Fruntime.%0D%0AOPTIONAL+{+%3Ffilm+movie%3ArelatedBook+%3Fbook+}%0D%0A%0D%0A+}&prefixes=