graflo.architecture.schema.document¶
Full graph schema document (metadata + core + DB profile).
Schema
¶
Bases: ConfigBaseModel
Graph schema (A+B): metadata, core schema, and DB profile.
Source code in graflo/architecture/schema/document.py
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | |
default_dump_filename()
¶
Return default schema dump filename:
Source code in graflo/architecture/schema/document.py
dump(path=None, *, exclude_defaults=True)
¶
Dump schema YAML to path, excluding defaults by default.
If path is omitted, writes into current working directory using
<schema_name>-<version>.yaml.
Source code in graflo/architecture/schema/document.py
resolve_db_aware(db_flavor=None)
¶
Build DB-aware runtime wrappers for db_flavor.
Non-mutating: when db_flavor differs from the authored profile, the
wrappers are built over a copy. This used to assign onto
self.db_profile, which made the schema's flavor a function of
whoever resolved it last — fine while resolution only ever happened once
per ingest, wrong as soon as two readers want two different targets from
one shared Schema.