'A semantic network of commonsense, using different relation types:
- is-a,
- is-part-of,
- is-opposite-of,
- is-property-of,
- is-related-to,
- is-same-as,
- is-effect-of.'

def __init__(self, data=os.path.join(MODULE, 'commonsense.csv'), **kwargs):

    Graph.__init__(self, **kwargs)
    self._properties = None
    if (data is not None):
        s = open(data).read()
        s = s.strip(BOM_UTF8)
        s = s.decode('utf-8')
        s = ((v.strip('"') for v in r.split(',')) for r in s.splitlines())
        for (concept1, relation, concept2, context, weight) in s:
            self.add_edge(concept1, concept2, type=relation, context=context, weight=min((int(weight) * 0.1), 1.0))
