@@ -159,35 +159,65 @@ db.jsonld.del(manu["@id"], function(err) {
159159### Searching with LevelGraph
160160
161161__ LevelGraph-JSONLD__ does not support searching for objects, because
162- that problem is already solved by __ LevelGraph__ itself, like these:
162+ that problem is already solved by __ LevelGraph__ itself. This example
163+ search finds friends living near Paris:
163164``` javascript
164- var nested = {
165+ var manu = {
165166 " @context" : {
166- " name" : " http://xmlns.com/foaf/0.1/name"
167- , " knows" : " http://xmlns.com/foaf/0.1/knows"
167+ " @vocab" : " http://xmlns.com/foaf/0.1/"
168+ , " homepage" : { " @type" : " @id" }
169+ , " knows" : { " @type" : " @id" }
170+ , " based_near" : { " @type" : " @id" }
168171 }
169- , " @id" : " http://matteocollina.com"
170- , " name" : " matteo"
171- , " knows" : [{
172- " name" : " daniele"
172+ , " @id" : " http://manu.sporny.org#person"
173+ , " name" : " Manu Sporny"
174+ , " homepage" : " http://manu.sporny.org/"
175+ , " knows" : [
176+ {
177+ " @id" : " https://my-profile.eu/people/deiu/card#me" ,
178+ " name" : " Andrei Vlad Sambra" ,
179+ " based_near" : " http://dbpedia.org/resource/Paris"
173180 }, {
174- " name" : " lucio"
175- }]
176- };
181+ " @id" : " http://melvincarvalho.com/#me" ,
182+ " name" : " Melvin Carvalho" ,
183+ " based_near" : " http://dbpedia.org/resource/Honolulu"
184+ }, {
185+ " @id" : " http://bblfish.net/people/henry/card#me" ,
186+ " name" : " Henry Story" ,
187+ " based_near" : " http://dbpedia.org/resource/Paris"
188+ }, {
189+ " @id" : " http://presbrey.mit.edu/foaf#presbrey" ,
190+ " name" : " Joe Presbrey" ,
191+ " based_near" : " http://dbpedia.org/resource/Cambridge"
192+ }
193+ ]
194+ }
177195
178- db .jsonld .put (nested, function (err ) {
196+ var paris = " http://dbpedia.org/resource/Paris" ;
197+
198+ db .jsonld .put (manu, function (){
179199 db .join ([{
180- subject: db .v (" person" )
181- , predicate: " http://xmlns.com/foaf/0.1/knows"
182- , object: db .v (" friend" )
200+ subject: manu[" @id" ],
201+ predicate: " http://xmlns.com/foaf/0.1/knows" ,
202+ object: db .v (" webid" )
203+ }, {
204+ subject: db .v (" webid" ),
205+ predicate: " http://xmlns.com/foaf/0.1/based_near" ,
206+ object: paris
183207 }, {
184- subject: db .v (" friend" )
185- , predicate: " http://xmlns.com/foaf/0.1/knows"
186- , object: " daniele"
187- }], function (err , solutions ) {
188- // The solutions will be:
189- // 1. { person: "http://matteocollina.com", friend: "_:abcde" }
190- // 1. { person: "http://matteocollina.com", friend: "_:efghi" }
208+ subject: db .v (" webid" ),
209+ predicate: " http://xmlns.com/foaf/0.1/name" ,
210+ object: db .v (" name" )
211+ }
212+ ], function (err , solution ) {
213+ // solution contains
214+ // [{
215+ // webid: "http://bblfish.net/people/henry/card#me",
216+ // name: "Henry Story"
217+ // }, {
218+ // webid: "https://my-profile.eu/people/deiu/card#me",
219+ // name: "Andrei Vlad Sambra"
220+ // }]
191221 });
192222});
193223```
0 commit comments