How can I define the relationship between edges?

I defined one fiber network with fiber device, and their connections. So I got vertex FiberDev, and undirected edge FiberConnection.

I Also defined one pipeline segement network with some physical devices, and their connections. So I got vertex PipePoint, and undirected edge PipeConnection.

But when I want to express the relationship ,like some fiber connection will pass through many pipe connections, and some pipe may hold a lot of fiber connections. That’s the relationship which involves edge and edge!!! So, GSQL told me that it’s not right…

Something really existed in physical world.But how can I defined the schema to replace the relational DB? Would anybody help me ? Thanks ahead.

Hi @Grant!

It sounds like you are building a very interesting graph! Would you mind sharing a screen shot of your schema and we can take a look?

In this example below, we can see a real-time energy management system expressed in a schema with TigerGraph, so taking your fiber network to graph is possible!

1 Like

One idea is to make the PipeConnection and the FiberConnection a vertex rather than an edge. I agree that it naturally makes more sense to think of them as edges, but since a Vertex can be anything, and you truly have relationships between these connections, it may work better to think of them as a vertex.

2 Likes

I thought about that solution before.

But as the edges info hide into the vertex’s attributes, would it slow down the speed of building a 6 or more hops network?There will be a lot of scenes to search in those networks.
And If I did that ,I have to use directed connection to replace the original undirected connections. That will make my GSQL more complicated.

Thanks anyway.