representing a graph

Self referential has_many :through, with the segment as the join model?

-faisal