The Gen3 Registry's implied dimension dependencies (e.g. visit.physical_filter, exposure.visit) are allowed to be None, which translates nicely to NULL in SQL. Unfortunately SQL NULLs and Python Nones compare differently, and we want the latter behavior in SQL queries. That means we need to either
- add special NULL-handling logic to the query-generation code
- do our own mapping from Python None to sentinal values in all fetch/insert code
- drop support for None/NULL in implied dimensions and make the associated foreign key columns in the database NOT NULL to support this.