I'm modelling an ontology in SQL using a tree to indicate relations between concepts. My problem is how to disambiguate concepts in a graph/tree without replicating concepts.
Eg. I have the concept of courses: "karate", "sailing" (lessons one can take from instructors) and places: "gym", "boat club" where these courses can be taken. In the graph it will be:
gym         boat club
   has     has
     courses
   of        of
karate    sailing
How can I model this graph to avoid boat club having karate courses and without duplicating the concept of courses?
Thanks!
 
     
    