PREFIX afn: PREFIX fn: WITH DELETE {?s ?pr ?g . ?g ?p ?o} USING USING USING USING WHERE {?g ?for . not exists{?for ?prop ?obj} . filter (?for!= && ?for != ) . ?s ?pr ?g . ?g ?p ?o}; WITH DELETE {?g ?for . ?g } INSERT {?g . ?g } USING WHERE {?g . ?g ?for}; WITH DELETE {?s } INSERT {?s } USING WHERE {?s }; WITH DELETE {?s } INSERT {?s } USING WHERE {?s }; WITH DELETE {?s } INSERT {?s . ?user ?g1 . ?g1 . ?g1 ?for} USING WHERE {?user ?s . ?s . ?s ?for . let(?g1 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for))))}; WITH DELETE {?s } INSERT {?s . ?user ?g1 . ?g1 . ?g1 ?for} USING WHERE {?user ?s . ?s . ?s ?for . let(?g1 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for))))}; WITH DELETE {?s } INSERT {?s } USING WHERE {?s }; WITH DELETE {?s } INSERT {?s . ?user ?g1 . ?g1 . ?g1 ?for} USING WHERE {?user ?s . ?s . ?s ?for . let(?g1 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for))))}; WITH DELETE {?s } INSERT {?s . ?user ?g1 . ?g1 . ?g1 ?for} USING WHERE {?user ?s . ?s . ?s ?for . let(?g1 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for))))}; WITH DELETE {?s } INSERT{?s . ?user ?g1 . ?g1 . ?g1 ?for . ?user ?g2 . ?g2 . ?g2 ?for . ?user ?g3 . ?g3 . ?g3 ?for . ?user ?g4 . ?g4 . ?g4 ?for . ?user ?g5 . ?g5 . ?g5 ?for . ?user ?g6 . ?g6 . ?g6 ?for . ?user ?g7 . ?g7 . ?g7 ?for} USING USING WHERE {?user ?s . ?s . ?s ?for . let(?g1 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for)))) . let(?g2 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for)))) . let(?g3 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for)))) . let(?g4 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for)))) . let(?g5 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for)))) . let(?g6 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for)))) . let(?g7 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for))))}; WITH DELETE {?s } INSERT {?s . ?user ?g1 . ?g1 . ?g1 ?for . ?user ?g2 . ?g2 . ?g2 ?for . ?user ?g3 . ?g3 . ?g3 ?for . ?user ?g4 . ?g4 . ?g4 ?for } USING USING WHERE {?user ?s . ?s . ?s ?for . let(?g1 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for)))) . let(?g2 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for)))) . let(?g3 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for)))) . let(?g4 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX',afn:sha1sum(?for))))}; WITH INSERT{?user ?g . ?g . ?g ?user . ?user ?g1 . ?g1 . ?g1 ?user . ?user ?g2 . ?g2 . ?g2 ?user . ?user ?g3 . ?g3 . ?g3 ?user . ?user ?g4 . ?g4 . ?g4 ?user} USING WHERE {?user a . let(?g := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX', afn:sha1sum(?user)))) . let(?g1 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX', afn:sha1sum(?user)))) . let(?g2 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX', afn:sha1sum(?user)))) . let(?g3 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX', afn:sha1sum(?user)))) . let(?g4 := uri(fn:concat('http://imeji.org/terms/grant/XXX_NEW_ID_XXX', afn:sha1sum(?user))))}; WITH INSERT{?user ?g . ?g . ?g } USING WHERE {?user a .let(?g:= )};