TypeError: metaclass conflict:
Posted by Aleftina on
URL: http://owlready.306.s1.nabble.com/TypeError-metaclass-conflict-tp420.html
Hello,
I use you library to create a toll for semantically annotation and search with a web frontend.
Since last version 0.9 I get an error. Independent of which database I use, PostgreSQL or SQLite.
I create a database using your library from existing ontology, which I create with Protege. Everything's going perfectly. Databases contain all datasets. However, when I try to open it/create a World, I get the following error:
Traceback (most recent call last):
File "<input>", line 2, in <module>
File "C:\Users\...\venv\lib\site-packages\owlready2\namespace.py", line 241, in __init__
self.set_backend(backend, filename, dbname, **kargs)
File "C:\Users\...\venv\lib\site-packages\owlready2\namespace.py", line 283, in set_backend
self.get_ontology(iri) # Create all possible ontologies if not yet done
File "C:\Users\...\venv\lib\site-packages\owlready2\namespace.py", line 315, in get_ontology
return Ontology(self, base_iri)
File "C:\Users\...\venv\lib\site-packages\owlready2\namespace.py", line 445, in __init__
self._load_properties()
File "C:\Users\...\venv\lib\site-packages\owlready2\namespace.py", line 541, in _load_properties
Prop = self.world._get_by_storid(prop_storid)
File "C:\Users\...\venv\lib\site-packages\owlready2\namespace.py", line 332, in _get_by_storid
return self._get_by_storid2(storid, full_iri, main_type, main_onto)
File "C:\Users\...\venv\lib\site-packages\owlready2\namespace.py", line 396, in _get_by_storid2
entity = ObjectPropertyClass(name, tuple(types) or (ObjectProperty,), { "namespace" : namespace, "is_a" : is_a_entities, "storid" : storid } )
File "C:\Users\...\venv\lib\site-packages\owlready2\prop.py", line 51, in __new__
return EntityClass.__new__(MetaClass, name, superclasses, obj_dict)
File "C:\Users\...\venv\lib\site-packages\owlready2\entity.py", line 120, in __new__
Class = namespace.world._entities[storid] = _is_a._obj = type.__new__(MetaClass, name, superclasses, obj_dict)
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
I didn't have any errors with earlier versions.
Do you know what it could be?
Many thanks