Changes

Jump to navigation Jump to search
no edit summary
Line 1: Line 1:  
#defaultView:Graph
 
#defaultView:Graph
SELECT ?item1 ?item1Label ?rgb ?item2 ?item2Label ?link
+
SELECT ?item1 ?item1Label ?rgb ?item2 ?item2Label
 
WITH {
 
WITH {
 
   SELECT ?predicateFilterValue ?predicateFilterValueRGB WHERE {
 
   SELECT ?predicateFilterValue ?predicateFilterValueRGB WHERE {
Line 18: Line 18:  
AS %predicates
 
AS %predicates
 
WITH {SELECT ?node ?nodeRGB WHERE {
 
WITH {SELECT ?node ?nodeRGB WHERE {
     ?node {{{node_condition}}}.
+
     {{#if: {{{node_condition|}}}|?node {{{node_condition}}}.||}}
     ?node {{{filter_predicate}}} ?predicateFilterValue.
+
     ?node {{{predicate}}} ?predicateFilterValue.
 
     INCLUDE %predicateFilterValues.
 
     INCLUDE %predicateFilterValues.
 
     BIND(?predicateFilterValueRGB AS ?nodeRGB)
 
     BIND(?predicateFilterValueRGB AS ?nodeRGB)
Line 27: Line 27:  
WITH {SELECT ?subject ?object ?edgeRGB WHERE {
 
WITH {SELECT ?subject ?object ?edgeRGB WHERE {
 
     INCLUDE %predicates.
 
     INCLUDE %predicates.
     ?subject {{{subject_predicate}}} ?subjectValue.
+
     ?subject {{{predicate}}} ?subjectValue.
     ?object {{{object_predicate}}} ?objectValue.
+
     ?object {{{predicate}}} ?objectValue.
 
     ?subject ?predicate ?object.
 
     ?subject ?predicate ?object.
 
     # This is filtering for each edge twice, potentially a huge waste: |E|*|V| instead of |V|
 
     # This is filtering for each edge twice, potentially a huge waste: |E|*|V| instead of |V|
     ?subject {{{node_condition}}}.      
+
     {{#if: {{{node_condition|}}}|?subject {{{node_condition}}}.||}}
     ?object {{{node_condition}}}.
+
     {{#if: {{{node_condition|}}}|?object {{{node_condition}}}.||}}
 
     BIND(?predicateRGB as ?edgeRGB)
 
     BIND(?predicateRGB as ?edgeRGB)
 
   }
 
   }
 
} AS %edges
 
} AS %edges
 
WHERE {
 
WHERE {
 +
{{#ifeq:{{{legend|}}}|true|
 
   { # The caption's nodes:  
 
   { # The caption's nodes:  
 
     INCLUDE %predicateFilterValues.
 
     INCLUDE %predicateFilterValues.
Line 45: Line 46:  
   { # The caption's edges:  
 
   { # The caption's edges:  
 
     INCLUDE %predicates.
 
     INCLUDE %predicates.
     BIND(?subjectClass AS ?item1).
+
     BIND(?subjectValue AS ?item1).
     BIND(?objectClass AS ?item2).
+
     BIND(?objectValue AS ?item2).
 
     BIND(?predicateRGB AS ?rgb).
 
     BIND(?predicateRGB AS ?rgb).
 
   }
 
   }
 
   UNION
 
   UNION
 +
||}}
 
   {   
 
   {   
 
     INCLUDE %nodes.
 
     INCLUDE %nodes.
Anonymous user

Navigation menu