hdmf-dev/hdmf

[Bug]: Cannot create classes from cached extensions with references to types defined in the extension

Closed this issue · 0 comments

rly commented

What happened?

Let's say there is an extension that contains two data types A and B, and B contains an object reference to A, either in an attribute or because B is a dataset of references. When this extension is cached in a file and subsequently loaded from the file, A cannot be found when getting the class for B. This appears here: rly/ndx-structured-behavior#44 where TaskProgram contains an attribute that is an object reference to a TaskSchema, and both are defined in the ndx-structured-behavior extension.

Steps to Reproduce

Follow the steps in ndx-structured-behavior to create a file. Then read the file WITHOUT importing the extension (automatically generate all classes).

Traceback

No response

Operating System

macOS

Python Executable

Conda

Python Version

3.12

Package Versions

No response