s developing mash-ups with Web 2.0 really much easier than using Semantic Web technologies? For instance, given a music style as an input, what it takes to retrieve data from online music archives (MusicBrainz, MusicBrainz D2R Server, MusicMoz) and event databases (EVDB)? What to merge them and to let the users explore the results? Are Semantic Web technologies up to this Web 2.0 challenge? This half-day tutorial shows how to realize a Semantic Web Application we named Music Event Explorer or shortly meex (try it!).
Breaking the Kubernetes Kill Chain: Host Path Mount
Realizing a Semantic Web Application - ICWE 2010 Tutorial
1.
2.
3.
4.
5.
6.
7.
8. By the way what’s the Semantic Web Computer should understand more Large number of integrations - ad hoc - pair-wise Too much information to browse, need for searching and mashing up automatically Each site is “understandable” for us Computers don’t “understand” much ? Millions of Applications Search & Mash-up Engine 010 0 1 1 0 0 1101 10100 10 0010 01 101 101 01 110 1 10 1 10 0 1 1 0 1 0 1 0 0 1 1 0 1 1 1 10 0 1 101 0 1
9.
10.
11.
12.
13.
14. By the way what’s the Semantic Web The Semantic Web 4/4 Semantic Web Fewer Integration - standard - multi-lateral […] better enabling computers and people to work in cooperation. Even More Applications Easier to understand for people More “understandable” for computers Semantic Mash-ups & Search
27. The Problem Space “Global as a View” approach Content Ontology 1 Content Ontology 2 Content Ontology N Application Ontology Bridge Ontology Content Ontology 3 Bridge Ontology
28.
29. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
30. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
31.
32.
33. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
34.
35.
36.
37.
38.
39.
40. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
41. System Design “Global as a View” approach instantiated Music Moz Ontology EVDB Ontology meex Application Ontology Bridge Ontology Music Brainz Ontology Bridge Ontology MusicMoz MusicBrainz EVDB [File XML] [DB] [REST+XML] MUSIC EVENTS EXPLORER
42. System Design The five ontologies that model meex Performer Style Event performsStyle performsEvent String When Where relatedPerformer Artist Style Event hasStyle relatedArtist fromCountry from hasWhere hasWhen hasWhere hasWhen rdfs mb evdb mm gd xsd meex subPropertyOf subPropertyOf subPropertyOf subPropertyOf subPropertyOf subClassOf subClassOf subClassOf
43.
44. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
45.
46.
47.
48. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
49.
50. System Design meex interfaces MusicBrainz database Adapter Database RDF SPARQL Server EVDB REST service MusicMoz File XML meex XML Browser Web 3) HTML and RDF 2) RDF GRDDL processor EVDB RDF MusicMoz RDF XML 2) RDF 1 ) Music style User
51.
52.
53. System Design Designing how meex works inside Ajax Web Framework GRDDL Processor For each Artist SPARQL Client MusicBrainz SPARQL Endpoint HTTP REST Client EVDB HTTP REST service GRDDL Processor EVDB RDF MusicMoz RDF Linking Artists to Events RDF Merge Extraction and Transformation Ajax Web Framework Music style Set of artist in RDF Artist SPARQL Query Events in XML Events in RDF Artists and events in RDF Artist data in RDF HTTP Query Dati RDF Artists and events in RDF
54.
55.
56.
57.
58. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
59.
60.
61.
62.
63. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
64.
65.
66. Development Back to the five ontologies that model meex Performer Style Event performsStyle performsEvent String When Where relatedPerformer Artist Style Event hasStyle relatedArtist fromCountry from hasWhere hasWhen hasWhere hasWhen mb evdb mm gd xsd meex subPropertyOf subPropertyOf subPropertyOf subPropertyOf subPropertyOf subClassOf subClassOf subClassOf
67.
68.
69. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
70.
71. Development meex interfaces (1) MusicBrainz database Adapter Database RDF SPARQL Server EVDB REST service MusicMoz File XML meex XML Browser Web 3) HTML and RDF 2) RDF GRDDL processor EVDB RDF MusicMoz RDF XML 2) RDF 1 ) Music style User
72. By the way, is this practice “orthodox”? Semantic Web Double Bus [source http://www.w3.org/DesignIssues/diagrams/sw-double-bus.png ]
73.
74.
75.
76. Development meex interfaces (2) MusicBrainz database Adapter Database RDF SPARQL Server EVDB REST service MusicMoz File XML meex XML Browser Web 3) HTML and RDF 2) RDF GRDDL processor EVDB RDF MusicMoz RDF XML 2) RDF 1 ) Music style User
77.
78.
79.
80.
81. Development So far so good! (1) MusicBrainz database Adapter Database RDF SPARQL Server EVDB REST service MusicMoz File XML meex XML Browser Web 3) HTML and RDF 2) RDF GRDDL processor EVDB RDF MusicMoz RDF XML 2) RDF 1 ) Music style User
82. Development So far so good! (2) Ajax Web Framework GRDDL Processor For each Artist SPARQL Client MusicBrainz SPARQL Endpoint HTTP REST Client EVDB HTTP REST service GRDDL Processor EVDB RDF MusicMoz RDF Linking Artists to events RDF Merge Estrazione e trasformazione Ajax Web Framework Music style Set of artist in RDF Artist SPARQL Query Events in XML Events in RDF Artists and events in RDF Artist data in RDF HTTP Query Dati RDF Artists and events in RDF
83. D.1 Model the application ontology D.2 Model the content ontology R.1 Users’ needs analysis R.3 Software requirements analysis R.4 Content requirements analysis D.3 Model sample contents Reuse Merge Extend I.1 Implement the initial Knowledge Base V.1 Validation I.3 Configure External Source Wrappers I.2 Implement the integrated model Reuse Merge Extend I.4 Implement the application R.2 Risk analysis D.4 Design Application T.1 Testing
84.
85. Development What’s left? Ajax Web Framework GRDDL Processor For each Artist SPARQL Client MusicBrainz SPARQL Endpoint HTTP REST Client EVDB HTTP REST service GRDDL Processor EVDB RDF MusicMoz RDF Linking Artists to events RDF Merge Estrazione e trasformazione Ajax Web Framework Music style Set of artist in RDF Artist SPARQL Query Events in XML Events in RDF Artists and events in RDF Artist data in RDF HTTP Query Dati RDF Artists and events in RDF