turbomam / mixs-subset-examples-first

A subset of the MIxS specification that's self-documenting and DataHarmonizer compatible. Comes with valid and invalid data examples. Subset = all checklists and all environmental packages, but partial combinations.
https://turbomam.github.io/mixs-subset-examples-first/
MIT License
0 stars 0 forks source link

make test-examples -> 'Agriculture' is not defined #78

Open turbomam opened 1 year ago

turbomam commented 1 year ago

ERROR:root:Error compiling generated python code: name 'Agriculture' is not defined Traceback (most recent call last): File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/bin/linkml-run-examples", line 8, in sys.exit(cli()) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/click/core.py", line 1130, in call return self.main(args, kwargs) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/click/core.py", line 1055, in main rv = self.invoke(ctx) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/click/core.py", line 1404, in invoke return ctx.invoke(self.callback, ctx.params) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/click/core.py", line 760, in invoke return __callback(args, **kwargs) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/workspaces/example_runner.py", line 306, in cli runner.process_examples() File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/workspaces/example_runner.py", line 136, in process_examples self.process_examples_from_list(input_examples, fmt, False) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/workspaces/example_runner.py", line 195, in process_examples_from_list obj = self._load_from_dict(input_dict, target_class=tc) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/workspaces/example_runner.py", line 245, in _load_from_dict v2 = self._load_from_dict(v, target_class=islot.range) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/workspaces/example_runner.py", line 250, in _load_from_dict return [self._load_from_dict(x, target_class) for x in dict_obj] File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/workspaces/example_runner.py", line 250, in return [self._load_from_dict(x, target_class) for x in dict_obj] File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/workspaces/example_runner.py", line 247, in _load_from_dict py_target_class = getattr(self.python_module, camelcase(target_class)) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/workspaces/example_runner.py", line 99, in python_module self._python_module = pygen.compile_module() File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/generators/pythongen.py", line 82, in compile_module raise e File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml/generators/pythongen.py", line 78, in compile_module return compile_python(pycode) File "/home/mark/.cache/pypoetry/virtualenvs/mixs-subset-examples-first-1BdAgHnd-py3.9/lib/python3.9/site-packages/linkml_runtime/utils/compile_python.py", line 47, in compile_python exec(spec, module.dict) File "test", line 187, in File "test", line 195, in Database NameError: name 'Agriculture' is not defined make: *** [Makefile:159: examples/output] Error 1

turbomam commented 1 year ago

see also ?

turbomam commented 1 year ago

Wrapping the classes mentioned by the Database slots in double quotes is a temporary workaround.

Now, figure out why the generator didn't quote them.