SlideShare una empresa de Scribd logo
1 de 33
Descargar para leer sin conexión
Apache Marmotta 
for 
Multimedia Management 
Jakob Frank, Thomas Kurz 
http://marmotta.apache.org/
Who are we? 
Jakob Frank 
• Researcher at Salzburg Research 
• Solution Architect at Redlink GmbH 
• ASF Committer of Marmotta 
Thomas Kurz 
• Researcher at Salzburg Research 
• Solution Architect at Redlink GmbH 
• ASF Committer of Marmotta 
2014-11-19 Apache Marmotta
Apache 
Marmotta
Outline 
Part I : Apache Marmotta 
● Basics of the Semantic Web 
● Apache Marmotta Linked Data Server 
● Marmotta Modules and Libraries 
Part II: Linked Media 
● What is Linked Media 
● Semantic Media Annotation 
● Extending backend to Media Storage and Retrieval 
2014-11-19 Apache Marmotta
Why we need a Semantic Web ? 
2014-11-19 Apache Marmotta 
Slide from James Hendler (Univ. Maryland)
What is RDF? 
• RDF = Resource Description Framework 
• formal language for describing web resources and 
relationships in between 
• based on a directed labeled graph, represented as 
triple model (Subject - Predicate - Object) 
• several syntaxes (RDF/XML, Turtle, ...) 
• RDFS = RDF Schema 
• formal language for describing possible instances of 
the graph (classes and predicates) 
• both specified by W3C (~ 1998) 
2014-11-19 Apache Marmotta
What is SPARQL? 
• SPARQL is an RDF Query Language specified by W3C 
(v1.1. March 2013) 
• SQL-like syntax 
PREFIX uni : <http://example.org/uni/> 
SELECT ?name 
FROM <http://example.org/personal> 
WHERE { 
?s uni:name ?name. 
?s a uni:Lecturer. 
} 
2014-11-19 Apache Marmotta
What is Linked Data? 
1. Use URIs to denote things. 
2. Use HTTP URIs so that these things can be referred to 
and looked up ("dereferenced") by people and user 
agents. 
3. Provide useful information about the thing when its URI 
is dereferenced, leveraging standards such as RDF, 
SPARQL. 
4. Include links to other related things (using their URIs) 
when publishing data on the Web. 
2014-11-19 Apache Marmotta
What is Apache Marmotta? 
● Linked Data Server 
full Linked Data stack 
incl. Content Negotiation and LDP 
● SPARQL Server 
SPARQL 1.1 query, update, protocol 
● Linked Data Development Environment 
collection of modules and libraries for building Linked Data applications 
● Community of 
Open Source Linked Data Developers 
2014-11-19 Apache Marmotta
Linked Data Server 
• easily setup to provide your (RDF-)data as Linked Data 
on the Web 
• human- and machine-readable read-write data access 
based on HTTP content negotiation 
• Query and interlink you data using SPARQL and 
LDPath 
• reference implementation of the Linked Data Platform 
2014-11-19 Apache Marmotta
SPARQL Server 
● full support of SPARQL 1.1 through HTTP web 
services 
● SPARQL 1.1 query and update endpoints 
● implements the SPARQL 1.1 protocol 
(supports any standard SPARQL client) 
● fast native translation of SPARQL to SQL in the KiWi 
triple store 
● lightweight Squebi SPARQL explorer UI 
2014-11-19 Apache Marmotta
Linked Data Development 
● modular server architecture 
○ combine exactly those features you need 
● collection of independent libraries for common Linked 
Data problems: 
○ access Linked Data resources (and even some that are not Linked 
Data): LDClient 
○ simple and intuitive query language for Linked Data: LDPath 
○ Sesame Triplestore based on a SQL database: KiWi Triplestore 
optional: Versioning & Reasoning 
2014-11-19 Apache Marmotta
Marmotta Community 
● discuss with people interested in getting-things-done in 
the Linked Data world 
● build applications that are useful without re-implementing 
the whole stack 
● thorough software engineering process under the roof 
of the Apache Software Foundation 
● Join us! 
○ users@marmotta.apache.org 
○ dev@marmotta.apache.org 
2014-11-19 Apache Marmotta
Apache Marmotta Platform 
• JavaEE web application 
• service oriented architecture using CDI 
(J2EE) 
• REST web services using JAX-RS 
(RestEasy) 
• CDI services found in the classpath are 
automatically loaded 
2014-11-19 Apache Marmotta
Platform Architecture 
2014-11-19 Apache Marmotta
Marmotta Core 
• Core functionalities: 
• Linked Data access 
• RDF import/export 
• Admin/Configuration UI 
• Platform glue code 
• Service and Dependency injection 
• Triple Store 
• System configuration 
• Logging 
2014-11-19 Apache Marmotta
Marmotta Backends 
Choose the one that fits your needs best: 
• KiWi (Marmotta) 
• based on relational database (PostgreSQL, MySQL, H2) 
• highly scaleable 
• Sesame Native 
• BigData 
• based on BigData clustered triple store 
• Titan Graph DB 
• backed by HBase, Cassandra or BerkeleyDB 
2014-11-19 Apache Marmotta
Marmotta SPARQL 
• SPARQL 1.1 HTTP endpoint 
• SPARQL 1.1 protocol 
• endpoints for query & update 
• SPARQL explorer UI (Squebi) 
with KiWi Triplestore: 
• Translation of most SPARQL constructs into 
native SQL for improved performance 
2014-11-19 Apache Marmotta
Marmotta LDPath 
• Query language designed for the Linked Data Cloud 
• path based navigation starting at a resource, following 
links across the Cloud 
• limited expressivity (c.f. SPARQL) but full Linked Data 
support 
@prefix foaf: < http://xmlns.com/foaf/0.1/ >; 
@prefix gn: < http://www.geonames.org/ontology# >; 
name = foaf:firstName :: xsd:string; 
friends = foaf:knows / fn:concat(foaf:firstName, “ “, foaf:surname) 
:: xsd:string; 
country = foaf:based_near / gn:parentCountry / gn:name :: xsd:string; 
2014-11-19 Apache Marmotta
Marmotta LDCache 
• transparently access Linked Data resources from other 
servers as if they were local 
• support for wrapping some legacy data sources (e.g. 
Facebook Graph) 
• local triple cache, honors HTTP expiry and cache 
headers 
SPARQL does not work well with LDCache, use LDPath instead! 
2014-11-19 Apache Marmotta
Marmotta Reasoner 
with KiWi Triplestore: 
• rule-based sKWRL reasoner 
• datalog-style rules over RDF triples, 
evaluated in forward-chaining procedure 
• truth maintenance 
@prefix skos: <http://www.w3.org/2004/02/skos/core#> 
($1 skos:broaderTransitive $2) -> ($1 skos:broader $2) 
($1 skos:narrowerTransitive $2) -> ($1 skos:narrower $2) 
($1 skos:broaderTransitive $2), ($2 skos:broaderTransitive $3) 
-> ($1 skos:broaderTransitive $3) 
($1 skos:narrowerTransitive $2), ($2 skos:narrowerTransitive $3) 
-> ($1 skos:narrowerTransitive $3) 
($1 skos:broader $2) -> ($2 skos:narrower $1) 
($1 skos:narrower $2) -> ($2 skos:broader $1) 
2014-11-19 Apache Marmotta
Marmotta Versioning 
with KiWi Triplestore: 
• transaction-based versioning of all changes to the triple 
store 
• implementation of Memento protocol for exploring 
changes over time 
• snapshot/wayback functionality (i.e. possibility to query 
the state of the triple store at a given time in history) 
2014-11-19 Apache Marmotta
Linked Media 
is a “Web scale layer of structured, 
interlinked media annotations (...) inspired 
by the Linked Data movement for making 
structured, interlinked descriptions of 
resources better available online.” 
Lyndon J. B. Nixon. The importance of linked media to the future web: lime 2013 keynote talk - a proposal for 
the linked media research agenda. WWW Companion Volume, page 455-456. International World Wide Web 
Conferences Steering Committee / ACM, (2013). 
2014-11-19 Apache Marmotta
Linked Media - An example 
“Give me the spatio-temporal snippet that shows Lewis 
Jones right beside Connor Macfarlane” 
2014-11-19 Apache Marmotta
Media Fragment URIs 
"... a media-format independent, standard 
means of addressing media fragments on the 
Web using Uniform Resource Identifiers." 
[W3C Recommendation: Media Fragments URI 1.0 (basic)] 
http://test.org/video.mpg?t=10,20&xywh=10,20,30,40 
the spatial range having a dimension from 30 to 40 
pixels with upper-left point (10px, 20px) from video.mpg 
on domain test.org from second 10 to 20. 
2014-11-19 Apache Marmotta
Open Annotation Model 
“The Open Annotation Core Data Model 
specifies an interoperable framework for 
creating associations between related 
resources … .“ 
http://www.openannotation.org/spec/core/ 
2014-11-19 Apache Marmotta
SPARQL-MM 
“... is a multimedia-extension for SPARQL 1.1 
implemented for Sesame. By now it supports 
relation and aggregation functions for Media 
Fragments URI 1.0 … .” 
2014-11-19 Apache Marmotta 
https://github.com/tkurz/sparql-mm 
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX mm: <http://linkedmultimedia.org/sparql-mm/ns/1.0.0/function#> 
SELECT ?f1 ?f2 (mm:boundingBox(?f1,?f2) AS ?box) WHERE { 
?f1 rdfs:label "a". 
?f2 rdfs:label "b". 
FILTER mm:rightBeside(?f1,?f2) 
}
SPARQL-MM 
Relation Function Aggregation Function 
Spatial mm:rightBeside mm:spatialIntersection 
mm:spatialOverlaps mm:spatialBoundingBox 
… … 
Temporal mm:after mm:temporalIntersection 
mm:temporalOverlaps mm:temporalIntermediate 
… … 
Combined mm:overlaps mm:boundingBox 
mm:contains mm:intersection 
2014-11-19 Apache Marmotta
Extending LDP to Media Fragments 
public class ImageWebservice extends LdpWebService { 
@GET @Produces("image/*") 
public Response GET(..., @QueryParam("xywh") Rectangle rectangle) { 
if(rectangle != null) { 
// get mimetype for uri with LdpService 
// get binary data with LdpBinaryStoreService 
// read and crop image with ImageIO 
return Response.ok().header( "Content-Type",mimetype).entity(image).build(); 
} 
return super.GET(uriInfo, type, preferHeader); 
} 
} 
2014-11-19 Apache Marmotta
You can find and download the demo example code at https://github.com/wikier/apache-marmotta-tutorial-iswc2014.
thanks! 
available under 
CreativeCommons Attribution 4.0 
International License 
http://marmotta.apache.org/ 
MICO FP7 project 
(grant no. 610480) 
Fusepool P3 project 
(grant no. 609696) 
acknowledgments to:

Más contenido relacionado

La actualidad más candente

Adventures in Linked Data Land (presentation by Richard Light)
Adventures in Linked Data Land (presentation by Richard Light)Adventures in Linked Data Land (presentation by Richard Light)
Adventures in Linked Data Land (presentation by Richard Light)jottevanger
 
Slides semantic web and Drupal 7 NYCCamp 2012
Slides semantic web and Drupal 7 NYCCamp 2012Slides semantic web and Drupal 7 NYCCamp 2012
Slides semantic web and Drupal 7 NYCCamp 2012scorlosquet
 
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015Sergio Fernández
 
The Semantic Web and Drupal 7 - Loja 2013
The Semantic Web and Drupal 7 - Loja 2013The Semantic Web and Drupal 7 - Loja 2013
The Semantic Web and Drupal 7 - Loja 2013scorlosquet
 
Customizing CKAN
Customizing CKANCustomizing CKAN
Customizing CKANOKCon2013
 
Virtuoso RDF Triple Store Analysis Benchmark & mapping tools RDF / OO
Virtuoso RDF Triple Store Analysis Benchmark & mapping tools RDF / OOVirtuoso RDF Triple Store Analysis Benchmark & mapping tools RDF / OO
Virtuoso RDF Triple Store Analysis Benchmark & mapping tools RDF / OOPaolo Cristofaro
 
Linked Open Data and DANS
Linked Open Data and DANSLinked Open Data and DANS
Linked Open Data and DANSvty
 
DataverseNL as structured data hub
DataverseNL as structured data hubDataverseNL as structured data hub
DataverseNL as structured data hubvty
 
EUDAT data architecture and interoperability aspects – Daan Broeder
EUDAT data architecture and interoperability aspects – Daan BroederEUDAT data architecture and interoperability aspects – Daan Broeder
EUDAT data architecture and interoperability aspects – Daan BroederOpenAIRE
 
Illuminating DSpace's Linked Data Support
Illuminating DSpace's Linked Data SupportIlluminating DSpace's Linked Data Support
Illuminating DSpace's Linked Data SupportPascal-Nicolas Becker
 
Linked Data, Ontologies and Inference
Linked Data, Ontologies and InferenceLinked Data, Ontologies and Inference
Linked Data, Ontologies and InferenceBarry Norton
 
Drupal 7 and RDF
Drupal 7 and RDFDrupal 7 and RDF
Drupal 7 and RDFscorlosquet
 
SWIB14 Weaving repository contents into the Semantic Web
SWIB14 Weaving repository contents into the Semantic WebSWIB14 Weaving repository contents into the Semantic Web
SWIB14 Weaving repository contents into the Semantic WebPascal-Nicolas Becker
 
Integrating Drupal with a Triple Store
Integrating Drupal with a Triple StoreIntegrating Drupal with a Triple Store
Integrating Drupal with a Triple StoreBarry Norton
 
LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...Nandana Mihindukulasooriya
 
Semantics, rdf and drupal
Semantics, rdf and drupalSemantics, rdf and drupal
Semantics, rdf and drupalGokul Nk
 
Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014Sergio Fernández
 

La actualidad más candente (20)

Adventures in Linked Data Land (presentation by Richard Light)
Adventures in Linked Data Land (presentation by Richard Light)Adventures in Linked Data Land (presentation by Richard Light)
Adventures in Linked Data Land (presentation by Richard Light)
 
Slides semantic web and Drupal 7 NYCCamp 2012
Slides semantic web and Drupal 7 NYCCamp 2012Slides semantic web and Drupal 7 NYCCamp 2012
Slides semantic web and Drupal 7 NYCCamp 2012
 
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
 
The Semantic Web and Drupal 7 - Loja 2013
The Semantic Web and Drupal 7 - Loja 2013The Semantic Web and Drupal 7 - Loja 2013
The Semantic Web and Drupal 7 - Loja 2013
 
Customizing CKAN
Customizing CKANCustomizing CKAN
Customizing CKAN
 
Virtuoso RDF Triple Store Analysis Benchmark & mapping tools RDF / OO
Virtuoso RDF Triple Store Analysis Benchmark & mapping tools RDF / OOVirtuoso RDF Triple Store Analysis Benchmark & mapping tools RDF / OO
Virtuoso RDF Triple Store Analysis Benchmark & mapping tools RDF / OO
 
Linked Open Data and DANS
Linked Open Data and DANSLinked Open Data and DANS
Linked Open Data and DANS
 
Lab swe-2013intro jax-rs
Lab swe-2013intro jax-rsLab swe-2013intro jax-rs
Lab swe-2013intro jax-rs
 
DataverseNL as structured data hub
DataverseNL as structured data hubDataverseNL as structured data hub
DataverseNL as structured data hub
 
EUDAT data architecture and interoperability aspects – Daan Broeder
EUDAT data architecture and interoperability aspects – Daan BroederEUDAT data architecture and interoperability aspects – Daan Broeder
EUDAT data architecture and interoperability aspects – Daan Broeder
 
Illuminating DSpace's Linked Data Support
Illuminating DSpace's Linked Data SupportIlluminating DSpace's Linked Data Support
Illuminating DSpace's Linked Data Support
 
Linked Data, Ontologies and Inference
Linked Data, Ontologies and InferenceLinked Data, Ontologies and Inference
Linked Data, Ontologies and Inference
 
HCE project brief
HCE project briefHCE project brief
HCE project brief
 
Drupal 7 and RDF
Drupal 7 and RDFDrupal 7 and RDF
Drupal 7 and RDF
 
SWIB14 Weaving repository contents into the Semantic Web
SWIB14 Weaving repository contents into the Semantic WebSWIB14 Weaving repository contents into the Semantic Web
SWIB14 Weaving repository contents into the Semantic Web
 
Integrating Drupal with a Triple Store
Integrating Drupal with a Triple StoreIntegrating Drupal with a Triple Store
Integrating Drupal with a Triple Store
 
LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...
 
D2RQ
D2RQD2RQ
D2RQ
 
Semantics, rdf and drupal
Semantics, rdf and drupalSemantics, rdf and drupal
Semantics, rdf and drupal
 
Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014
 

Similar a Linked Media Management with Apache Marmotta

Apache Any23 - Anything to Triples
Apache Any23 - Anything to TriplesApache Any23 - Anything to Triples
Apache Any23 - Anything to TriplesMichele Mostarda
 
Stream your Operational Data with Apache Spark & Kafka into Hadoop using Couc...
Stream your Operational Data with Apache Spark & Kafka into Hadoop using Couc...Stream your Operational Data with Apache Spark & Kafka into Hadoop using Couc...
Stream your Operational Data with Apache Spark & Kafka into Hadoop using Couc...Data Con LA
 
Usage of Linked Data: Introduction and Application Scenarios
Usage of Linked Data: Introduction and Application ScenariosUsage of Linked Data: Introduction and Application Scenarios
Usage of Linked Data: Introduction and Application ScenariosEUCLID project
 
Publishing Linked Data 3/5 Semtech2011
Publishing Linked Data 3/5 Semtech2011Publishing Linked Data 3/5 Semtech2011
Publishing Linked Data 3/5 Semtech2011Juan Sequeda
 
Java One 2017: Open Source Big Data in the Cloud: Hadoop, M/R, Hive, Spark an...
Java One 2017: Open Source Big Data in the Cloud: Hadoop, M/R, Hive, Spark an...Java One 2017: Open Source Big Data in the Cloud: Hadoop, M/R, Hive, Spark an...
Java One 2017: Open Source Big Data in the Cloud: Hadoop, M/R, Hive, Spark an...Frank Munz
 
Intro to Apache Spark by CTO of Twingo
Intro to Apache Spark by CTO of TwingoIntro to Apache Spark by CTO of Twingo
Intro to Apache Spark by CTO of TwingoMapR Technologies
 
Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Guido Schmutz
 
Strata NYC 2015 - Supercharging R with Apache Spark
Strata NYC 2015 - Supercharging R with Apache SparkStrata NYC 2015 - Supercharging R with Apache Spark
Strata NYC 2015 - Supercharging R with Apache SparkDatabricks
 
Spark Streaming and MLlib - Hyderabad Spark Group
Spark Streaming and MLlib - Hyderabad Spark GroupSpark Streaming and MLlib - Hyderabad Spark Group
Spark Streaming and MLlib - Hyderabad Spark GroupPhaneendra Chiruvella
 
Overview of Apache Flink: the 4G of Big Data Analytics Frameworks
Overview of Apache Flink: the 4G of Big Data Analytics FrameworksOverview of Apache Flink: the 4G of Big Data Analytics Frameworks
Overview of Apache Flink: the 4G of Big Data Analytics FrameworksDataWorks Summit/Hadoop Summit
 
Overview of Apache Fink: the 4 G of Big Data Analytics Frameworks
Overview of Apache Fink: the 4 G of Big Data Analytics FrameworksOverview of Apache Fink: the 4 G of Big Data Analytics Frameworks
Overview of Apache Fink: the 4 G of Big Data Analytics FrameworksSlim Baltagi
 
Overview of Apache Fink: The 4G of Big Data Analytics Frameworks
Overview of Apache Fink: The 4G of Big Data Analytics FrameworksOverview of Apache Fink: The 4G of Big Data Analytics Frameworks
Overview of Apache Fink: The 4G of Big Data Analytics FrameworksSlim Baltagi
 
ISWC GoodRelations Tutorial Part 2
ISWC GoodRelations Tutorial Part 2ISWC GoodRelations Tutorial Part 2
ISWC GoodRelations Tutorial Part 2Martin Hepp
 
GoodRelations Tutorial Part 2
GoodRelations Tutorial Part 2GoodRelations Tutorial Part 2
GoodRelations Tutorial Part 2guestecacad2
 
State of the Semantic Web
State of the Semantic WebState of the Semantic Web
State of the Semantic WebIvan Herman
 

Similar a Linked Media Management with Apache Marmotta (20)

Apache Any23 - Anything to Triples
Apache Any23 - Anything to TriplesApache Any23 - Anything to Triples
Apache Any23 - Anything to Triples
 
RDFauthor (EKAW)
RDFauthor (EKAW)RDFauthor (EKAW)
RDFauthor (EKAW)
 
Stream your Operational Data with Apache Spark & Kafka into Hadoop using Couc...
Stream your Operational Data with Apache Spark & Kafka into Hadoop using Couc...Stream your Operational Data with Apache Spark & Kafka into Hadoop using Couc...
Stream your Operational Data with Apache Spark & Kafka into Hadoop using Couc...
 
Usage of Linked Data: Introduction and Application Scenarios
Usage of Linked Data: Introduction and Application ScenariosUsage of Linked Data: Introduction and Application Scenarios
Usage of Linked Data: Introduction and Application Scenarios
 
Publishing Linked Data 3/5 Semtech2011
Publishing Linked Data 3/5 Semtech2011Publishing Linked Data 3/5 Semtech2011
Publishing Linked Data 3/5 Semtech2011
 
Web Topics
Web TopicsWeb Topics
Web Topics
 
Java One 2017: Open Source Big Data in the Cloud: Hadoop, M/R, Hive, Spark an...
Java One 2017: Open Source Big Data in the Cloud: Hadoop, M/R, Hive, Spark an...Java One 2017: Open Source Big Data in the Cloud: Hadoop, M/R, Hive, Spark an...
Java One 2017: Open Source Big Data in the Cloud: Hadoop, M/R, Hive, Spark an...
 
Data streaming
Data streamingData streaming
Data streaming
 
Intro to Apache Spark by CTO of Twingo
Intro to Apache Spark by CTO of TwingoIntro to Apache Spark by CTO of Twingo
Intro to Apache Spark by CTO of Twingo
 
Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !
 
Strata NYC 2015 - Supercharging R with Apache Spark
Strata NYC 2015 - Supercharging R with Apache SparkStrata NYC 2015 - Supercharging R with Apache Spark
Strata NYC 2015 - Supercharging R with Apache Spark
 
Spark Streaming and MLlib - Hyderabad Spark Group
Spark Streaming and MLlib - Hyderabad Spark GroupSpark Streaming and MLlib - Hyderabad Spark Group
Spark Streaming and MLlib - Hyderabad Spark Group
 
Overview of Apache Flink: the 4G of Big Data Analytics Frameworks
Overview of Apache Flink: the 4G of Big Data Analytics FrameworksOverview of Apache Flink: the 4G of Big Data Analytics Frameworks
Overview of Apache Flink: the 4G of Big Data Analytics Frameworks
 
Overview of Apache Fink: the 4 G of Big Data Analytics Frameworks
Overview of Apache Fink: the 4 G of Big Data Analytics FrameworksOverview of Apache Fink: the 4 G of Big Data Analytics Frameworks
Overview of Apache Fink: the 4 G of Big Data Analytics Frameworks
 
Overview of Apache Fink: The 4G of Big Data Analytics Frameworks
Overview of Apache Fink: The 4G of Big Data Analytics FrameworksOverview of Apache Fink: The 4G of Big Data Analytics Frameworks
Overview of Apache Fink: The 4G of Big Data Analytics Frameworks
 
Spark meetup TCHUG
Spark meetup TCHUGSpark meetup TCHUG
Spark meetup TCHUG
 
ISWC GoodRelations Tutorial Part 2
ISWC GoodRelations Tutorial Part 2ISWC GoodRelations Tutorial Part 2
ISWC GoodRelations Tutorial Part 2
 
GoodRelations Tutorial Part 2
GoodRelations Tutorial Part 2GoodRelations Tutorial Part 2
GoodRelations Tutorial Part 2
 
swib15 ALIADA
swib15 ALIADAswib15 ALIADA
swib15 ALIADA
 
State of the Semantic Web
State of the Semantic WebState of the Semantic Web
State of the Semantic Web
 

Último

Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITMgdsc13
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationLinaWolf1
 
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Lucknow
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一z xss
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Sonam Pathan
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Excelmac1
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作ys8omjxb
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa494f574xmv
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一Fs
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Dana Luther
 
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012rehmti665
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMartaLoveguard
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)Christopher H Felton
 

Último (20)

Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITM
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 Documentation
 
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
 
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
 
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptx
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
 

Linked Media Management with Apache Marmotta

  • 1. Apache Marmotta for Multimedia Management Jakob Frank, Thomas Kurz http://marmotta.apache.org/
  • 2. Who are we? Jakob Frank • Researcher at Salzburg Research • Solution Architect at Redlink GmbH • ASF Committer of Marmotta Thomas Kurz • Researcher at Salzburg Research • Solution Architect at Redlink GmbH • ASF Committer of Marmotta 2014-11-19 Apache Marmotta
  • 3.
  • 5.
  • 6. Outline Part I : Apache Marmotta ● Basics of the Semantic Web ● Apache Marmotta Linked Data Server ● Marmotta Modules and Libraries Part II: Linked Media ● What is Linked Media ● Semantic Media Annotation ● Extending backend to Media Storage and Retrieval 2014-11-19 Apache Marmotta
  • 7. Why we need a Semantic Web ? 2014-11-19 Apache Marmotta Slide from James Hendler (Univ. Maryland)
  • 8. What is RDF? • RDF = Resource Description Framework • formal language for describing web resources and relationships in between • based on a directed labeled graph, represented as triple model (Subject - Predicate - Object) • several syntaxes (RDF/XML, Turtle, ...) • RDFS = RDF Schema • formal language for describing possible instances of the graph (classes and predicates) • both specified by W3C (~ 1998) 2014-11-19 Apache Marmotta
  • 9. What is SPARQL? • SPARQL is an RDF Query Language specified by W3C (v1.1. March 2013) • SQL-like syntax PREFIX uni : <http://example.org/uni/> SELECT ?name FROM <http://example.org/personal> WHERE { ?s uni:name ?name. ?s a uni:Lecturer. } 2014-11-19 Apache Marmotta
  • 10. What is Linked Data? 1. Use URIs to denote things. 2. Use HTTP URIs so that these things can be referred to and looked up ("dereferenced") by people and user agents. 3. Provide useful information about the thing when its URI is dereferenced, leveraging standards such as RDF, SPARQL. 4. Include links to other related things (using their URIs) when publishing data on the Web. 2014-11-19 Apache Marmotta
  • 11. What is Apache Marmotta? ● Linked Data Server full Linked Data stack incl. Content Negotiation and LDP ● SPARQL Server SPARQL 1.1 query, update, protocol ● Linked Data Development Environment collection of modules and libraries for building Linked Data applications ● Community of Open Source Linked Data Developers 2014-11-19 Apache Marmotta
  • 12. Linked Data Server • easily setup to provide your (RDF-)data as Linked Data on the Web • human- and machine-readable read-write data access based on HTTP content negotiation • Query and interlink you data using SPARQL and LDPath • reference implementation of the Linked Data Platform 2014-11-19 Apache Marmotta
  • 13. SPARQL Server ● full support of SPARQL 1.1 through HTTP web services ● SPARQL 1.1 query and update endpoints ● implements the SPARQL 1.1 protocol (supports any standard SPARQL client) ● fast native translation of SPARQL to SQL in the KiWi triple store ● lightweight Squebi SPARQL explorer UI 2014-11-19 Apache Marmotta
  • 14. Linked Data Development ● modular server architecture ○ combine exactly those features you need ● collection of independent libraries for common Linked Data problems: ○ access Linked Data resources (and even some that are not Linked Data): LDClient ○ simple and intuitive query language for Linked Data: LDPath ○ Sesame Triplestore based on a SQL database: KiWi Triplestore optional: Versioning & Reasoning 2014-11-19 Apache Marmotta
  • 15. Marmotta Community ● discuss with people interested in getting-things-done in the Linked Data world ● build applications that are useful without re-implementing the whole stack ● thorough software engineering process under the roof of the Apache Software Foundation ● Join us! ○ users@marmotta.apache.org ○ dev@marmotta.apache.org 2014-11-19 Apache Marmotta
  • 16. Apache Marmotta Platform • JavaEE web application • service oriented architecture using CDI (J2EE) • REST web services using JAX-RS (RestEasy) • CDI services found in the classpath are automatically loaded 2014-11-19 Apache Marmotta
  • 18. Marmotta Core • Core functionalities: • Linked Data access • RDF import/export • Admin/Configuration UI • Platform glue code • Service and Dependency injection • Triple Store • System configuration • Logging 2014-11-19 Apache Marmotta
  • 19. Marmotta Backends Choose the one that fits your needs best: • KiWi (Marmotta) • based on relational database (PostgreSQL, MySQL, H2) • highly scaleable • Sesame Native • BigData • based on BigData clustered triple store • Titan Graph DB • backed by HBase, Cassandra or BerkeleyDB 2014-11-19 Apache Marmotta
  • 20. Marmotta SPARQL • SPARQL 1.1 HTTP endpoint • SPARQL 1.1 protocol • endpoints for query & update • SPARQL explorer UI (Squebi) with KiWi Triplestore: • Translation of most SPARQL constructs into native SQL for improved performance 2014-11-19 Apache Marmotta
  • 21. Marmotta LDPath • Query language designed for the Linked Data Cloud • path based navigation starting at a resource, following links across the Cloud • limited expressivity (c.f. SPARQL) but full Linked Data support @prefix foaf: < http://xmlns.com/foaf/0.1/ >; @prefix gn: < http://www.geonames.org/ontology# >; name = foaf:firstName :: xsd:string; friends = foaf:knows / fn:concat(foaf:firstName, “ “, foaf:surname) :: xsd:string; country = foaf:based_near / gn:parentCountry / gn:name :: xsd:string; 2014-11-19 Apache Marmotta
  • 22. Marmotta LDCache • transparently access Linked Data resources from other servers as if they were local • support for wrapping some legacy data sources (e.g. Facebook Graph) • local triple cache, honors HTTP expiry and cache headers SPARQL does not work well with LDCache, use LDPath instead! 2014-11-19 Apache Marmotta
  • 23. Marmotta Reasoner with KiWi Triplestore: • rule-based sKWRL reasoner • datalog-style rules over RDF triples, evaluated in forward-chaining procedure • truth maintenance @prefix skos: <http://www.w3.org/2004/02/skos/core#> ($1 skos:broaderTransitive $2) -> ($1 skos:broader $2) ($1 skos:narrowerTransitive $2) -> ($1 skos:narrower $2) ($1 skos:broaderTransitive $2), ($2 skos:broaderTransitive $3) -> ($1 skos:broaderTransitive $3) ($1 skos:narrowerTransitive $2), ($2 skos:narrowerTransitive $3) -> ($1 skos:narrowerTransitive $3) ($1 skos:broader $2) -> ($2 skos:narrower $1) ($1 skos:narrower $2) -> ($2 skos:broader $1) 2014-11-19 Apache Marmotta
  • 24. Marmotta Versioning with KiWi Triplestore: • transaction-based versioning of all changes to the triple store • implementation of Memento protocol for exploring changes over time • snapshot/wayback functionality (i.e. possibility to query the state of the triple store at a given time in history) 2014-11-19 Apache Marmotta
  • 25. Linked Media is a “Web scale layer of structured, interlinked media annotations (...) inspired by the Linked Data movement for making structured, interlinked descriptions of resources better available online.” Lyndon J. B. Nixon. The importance of linked media to the future web: lime 2013 keynote talk - a proposal for the linked media research agenda. WWW Companion Volume, page 455-456. International World Wide Web Conferences Steering Committee / ACM, (2013). 2014-11-19 Apache Marmotta
  • 26. Linked Media - An example “Give me the spatio-temporal snippet that shows Lewis Jones right beside Connor Macfarlane” 2014-11-19 Apache Marmotta
  • 27. Media Fragment URIs "... a media-format independent, standard means of addressing media fragments on the Web using Uniform Resource Identifiers." [W3C Recommendation: Media Fragments URI 1.0 (basic)] http://test.org/video.mpg?t=10,20&xywh=10,20,30,40 the spatial range having a dimension from 30 to 40 pixels with upper-left point (10px, 20px) from video.mpg on domain test.org from second 10 to 20. 2014-11-19 Apache Marmotta
  • 28. Open Annotation Model “The Open Annotation Core Data Model specifies an interoperable framework for creating associations between related resources … .“ http://www.openannotation.org/spec/core/ 2014-11-19 Apache Marmotta
  • 29. SPARQL-MM “... is a multimedia-extension for SPARQL 1.1 implemented for Sesame. By now it supports relation and aggregation functions for Media Fragments URI 1.0 … .” 2014-11-19 Apache Marmotta https://github.com/tkurz/sparql-mm PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX mm: <http://linkedmultimedia.org/sparql-mm/ns/1.0.0/function#> SELECT ?f1 ?f2 (mm:boundingBox(?f1,?f2) AS ?box) WHERE { ?f1 rdfs:label "a". ?f2 rdfs:label "b". FILTER mm:rightBeside(?f1,?f2) }
  • 30. SPARQL-MM Relation Function Aggregation Function Spatial mm:rightBeside mm:spatialIntersection mm:spatialOverlaps mm:spatialBoundingBox … … Temporal mm:after mm:temporalIntersection mm:temporalOverlaps mm:temporalIntermediate … … Combined mm:overlaps mm:boundingBox mm:contains mm:intersection 2014-11-19 Apache Marmotta
  • 31. Extending LDP to Media Fragments public class ImageWebservice extends LdpWebService { @GET @Produces("image/*") public Response GET(..., @QueryParam("xywh") Rectangle rectangle) { if(rectangle != null) { // get mimetype for uri with LdpService // get binary data with LdpBinaryStoreService // read and crop image with ImageIO return Response.ok().header( "Content-Type",mimetype).entity(image).build(); } return super.GET(uriInfo, type, preferHeader); } } 2014-11-19 Apache Marmotta
  • 32. You can find and download the demo example code at https://github.com/wikier/apache-marmotta-tutorial-iswc2014.
  • 33. thanks! available under CreativeCommons Attribution 4.0 International License http://marmotta.apache.org/ MICO FP7 project (grant no. 610480) Fusepool P3 project (grant no. 609696) acknowledgments to: