PYDANTIC_GUIDE.md documents a package layout the repo no longer uses. Raised by Roel Bollens (@RoelBollens-TomTom) while reviewing #598 (#598 (comment)); filing separately because the staleness predates that PR and fixing it there would be out of scope.
Entry point example is wrong on both axes
Lines 850-856 show:
[project.entry-points."overture.models"]
"transportation.connector" = "overture.schema.transportation.connector.models:Connector"
"transportation.segment" = "overture.schema.transportation.segment.models:Segment"
Real declaration in packages/overture-schema-transportation-theme/pyproject.toml:
[project.entry-points."overture.models"]
connector = "overture.schema.transportation:Connector"
segment = "overture.schema.transportation:Segment"
Keys are unqualified, not theme-prefixed, and targets resolve off the theme package root rather than a <type>.models submodule.
The models.py / type-subdirectory convention is gone
Lines 1006-1018 prescribe a type subdirectory per feature type with models.py / enums.py / types.py inside it. overture-schema-buildings-theme already contradicts this -- flat building.py, building_part.py, _common.py directly under overture/schema/buildings/, no subdirectory and no models.py. #598 does the same for transportation (connector.py, and segment/{_common,road,rail,water}.py), which removes the last models.py in a theme package; the file name survives only in overture-schema-common and overture-schema-annex.
Dead path references
Not stale
Every from overture.schema.* import in the guide resolves on main (11 distinct modules, all import cleanly), including the recent system.primitive split into system.numeric / system.geometric. The rot is confined to file layout and entry point naming, not the import surface.
Scope
Rewrite the "Module Organization" and entry point registration sections against the buildings / post-#598 transportation layout, and repoint the three path references. Best done after #598 lands so the transportation examples describe the settled structure.
PYDANTIC_GUIDE.mddocuments a package layout the repo no longer uses. Raised by Roel Bollens (@RoelBollens-TomTom) while reviewing #598 (#598 (comment)); filing separately because the staleness predates that PR and fixing it there would be out of scope.Entry point example is wrong on both axes
Lines 850-856 show:
Real declaration in
packages/overture-schema-transportation-theme/pyproject.toml:Keys are unqualified, not theme-prefixed, and targets resolve off the theme package root rather than a
<type>.modelssubmodule.The
models.py/ type-subdirectory convention is goneLines 1006-1018 prescribe a type subdirectory per feature type with
models.py/enums.py/types.pyinside it.overture-schema-buildings-themealready contradicts this -- flatbuilding.py,building_part.py,_common.pydirectly underoverture/schema/buildings/, no subdirectory and nomodels.py. #598 does the same for transportation (connector.py, andsegment/{_common,road,rail,water}.py), which removes the lastmodels.pyin a theme package; the file name survives only inoverture-schema-commonandoverture-schema-annex.Dead path references
packages/overture-schema-transportation-theme/src/overture/schema/transportation/segment/models.py-- resolves today, breaks when [REFACTOR] Organize transportation theme Pydantic package, add relationships, sync JSON Schema, and tidy docs #598 merges.# In overture-schema-buildings-theme/src/overture/schema/buildings/building/models.py-- already dead.# In buildings/models.py-- already dead.Not stale
Every
from overture.schema.*import in the guide resolves onmain(11 distinct modules, all import cleanly), including the recentsystem.primitivesplit intosystem.numeric/system.geometric. The rot is confined to file layout and entry point naming, not the import surface.Scope
Rewrite the "Module Organization" and entry point registration sections against the buildings / post-#598 transportation layout, and repoint the three path references. Best done after #598 lands so the transportation examples describe the settled structure.