I don't think you can use the [ ] form to create cycles.
On Fri, Dec 4, 2020 at 8:53 PM Jeffrey Kenneth Tyzzer <jktyz...@ucdavis.edu.invalid> wrote: > > Hi, Group. > > Consider this small model: > > a --relates--> b > b --relates--> c > b <--relatedBy-- c > > Note that the b to c relationship is reciprocal. > > I’d like to represent b and c as blank nodes. Using the label form, it’s > seemingly straightforward (I’ve added a couple of additional rdfs:type > triples to fill-out a bit what I show next): > > a ex:relates _:b > _: b rdfs:type ex:foo > _:b ex:relates _:c > _:c rdfs:type ex:bar > _:c ex:relatedBy _:b > > Using the abbreviated form, though, doesn’t seem possible : > > a ex:relates [ rdfs:type ex:foo ; ex: relates [ rdfs:type ex:bar ; > ex:relatedBy <what would go here to refer to the first (outer) blank node?> ] > ]. > > I suppose I’m asking if something can be both the container and contained, > but perhaps there’s some syntactic sugar/legerdemain (or Jena-specific > syntax) I’m not aware of that makes this possible. > > Thanks. > > --Jeff