changeset 6:8c3cb5fb7843

Switch to using SPARQL CONSTRUCT, since DESCRIBE is not well-defined and is no longer producing the result we were expecting
author Chris Cannam
date Tue, 31 Oct 2017 14:29:32 +0000
parents fe9605031b11
children d100023520b4
files jamendo/urispace/jamendo_mapping.pl magnatune/urispace/magnatune_mapping.pl
diffstat 2 files changed, 52 insertions(+), 51 deletions(-) [+]
line wrap: on
line diff
--- a/jamendo/urispace/jamendo_mapping.pl	Tue Oct 31 11:48:10 2017 +0000
+++ b/jamendo/urispace/jamendo_mapping.pl	Tue Oct 31 14:29:32 2017 +0000
@@ -8,7 +8,7 @@
 :- use_module(mapping).
 
 
-sparql_end_point('http://dbtune.org/jamendo/cliopatria/sparql/').
+sparql_end_point('http://dbtune.org/jamendo/sparql/').
 html_renderer('http://dig.csail.mit.edu/2005/ajar/ajaw/tab.html?uri=').
 directory('http://dbtune.org/jamendo/all/').
 namespace('http://dbtune.org/jamendo/').
@@ -47,30 +47,30 @@
 /**
  * directories
  */
-mapping:see_other_rdf(requested_pattern([all,artist]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),	
-	Concept='%3Chttp://purl.org/ontology/mo/MusicArtist%3E'.
-mapping:see_other_rdf(requested_pattern([all,track]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/ontology/mo/Track%3E'.
-mapping:see_other_rdf(requested_pattern([all,record]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/ontology/mo/Record%3E'.
-mapping:see_other_rdf(requested_pattern([all,performance]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/ontology/mo/Performance%3E'.
-mapping:see_other_rdf(requested_pattern([all,signal]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/ontology/mo/Signal%3E'.
-mapping:see_other_rdf(requested_pattern([all,timeline]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/NET/c4dm/timeline.owl#TimeLine%3E'.
+directory_query(Concept,
+                [SparqlEndPoint,
+                 '?query=construct { %3fx a ', Concept,
+                 '} where { %3fx a ', Concept, '.}'
+                ]) :-
+    sparql_end_point(SparqlEndPoint).
+
+mapping:see_other_rdf(requested_pattern([all,artist]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/MusicArtist%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,track]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/Track%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,record]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/Record%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,performance]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/Performance%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,signal]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/Signal%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,timeline]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/NET/c4dm/timeline.owl#TimeLine%3E', Query).
 
 mapping:see_other(requested_pattern([all,Concept]),redirect_pattern([Renderer,Directory,Concept])) :-
 	html_renderer(Renderer),
--- a/magnatune/urispace/magnatune_mapping.pl	Tue Oct 31 11:48:10 2017 +0000
+++ b/magnatune/urispace/magnatune_mapping.pl	Tue Oct 31 14:29:32 2017 +0000
@@ -8,8 +8,8 @@
 :- use_module(mapping).
 
 
-sparql_end_point('http://dbtune.org/magnatune/cliopatria/sparql/').
-%html_renderer('http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html?uri=').
+sparql_end_point('http://dbtune.org/magnatune/sparql/').
+html_renderer('http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html?uri=').
 directory('http://dbtune.org/magnatune/all/').
 namespace('http://dbtune.org/magnatune/').
 
@@ -33,30 +33,31 @@
 /**
  * directories
  */
-mapping:see_other_rdf(requested_pattern([all,artist]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),	
-	Concept='%3Chttp://purl.org/ontology/mo/MusicArtist%3E'.
-mapping:see_other_rdf(requested_pattern([all,track]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/ontology/mo/Track%3E'.
-mapping:see_other_rdf(requested_pattern([all,record]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/ontology/mo/Record%3E'.
-mapping:see_other_rdf(requested_pattern([all,performance]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/ontology/mo/Performance%3E'.
-mapping:see_other_rdf(requested_pattern([all,signal]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/ontology/mo/Signal%3E'.
-mapping:see_other_rdf(requested_pattern([all,timeline]),redirect_pattern([SparqlEndPoint,'?query=',
-	'describe%20',Concept])) :-
-	sparql_end_point(SparqlEndPoint),        
-	Concept='%3Chttp://purl.org/NET/c4dm/timeline.owl#TimeLine%3E'.
+
+directory_query(Concept,
+                [SparqlEndPoint,
+                 '?query=construct{%3fx a ', Concept,
+                 '}where{%3fx a ', Concept, '.}'
+                ]) :-
+    sparql_end_point(SparqlEndPoint).
+
+mapping:see_other_rdf(requested_pattern([all,artist]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/MusicArtist%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,track]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/Track%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,record]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/Record%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,performance]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/Performance%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,signal]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/ontology/mo/Signal%3E', Query).
+
+mapping:see_other_rdf(requested_pattern([all,timeline]), redirect_pattern(Query)) :-
+    directory_query('%3Chttp://purl.org/NET/c4dm/timeline.owl#TimeLine%3E', Query).
 
 mapping:see_other(requested_pattern([all,Concept]),redirect_pattern([Renderer,Directory,Concept])) :-
 	html_renderer(Renderer),