LSST Applications g0603fd7c41+501e3db9f9,g0aad566f14+23d8574c86,g0dd44d6229+a1a4c8b791,g2079a07aa2+86d27d4dc4,g2305ad1205+a62672bbc1,g2bbee38e9b+047b288a59,g337abbeb29+047b288a59,g33d1c0ed96+047b288a59,g3a166c0a6a+047b288a59,g3d1719c13e+23d8574c86,g487adcacf7+cb7fd919b2,g4be5004598+23d8574c86,g50ff169b8f+96c6868917,g52b1c1532d+585e252eca,g591dd9f2cf+4a9e435310,g63cd9335cc+585e252eca,g858d7b2824+23d8574c86,g88963caddf+0cb8e002cc,g99cad8db69+43388bcaec,g9ddcbc5298+9a081db1e4,ga1e77700b3+a912195c07,gae0086650b+585e252eca,gb0e22166c9+60f28cb32d,gb2522980b2+793639e996,gb3a676b8dc+b4feba26a1,gb4b16eec92+63f8520565,gba4ed39666+c2a2e4ac27,gbb8dafda3b+a5d255a82e,gc120e1dc64+d820f8acdb,gc28159a63d+047b288a59,gc3e9b769f7+f4f1cc6b50,gcf0d15dbbd+a1a4c8b791,gdaeeff99f8+f9a426f77a,gdb0af172c8+b6d5496702,ge79ae78c31+047b288a59,w.2024.19
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | List of all members
lsst.dax.apdb.schema_model.Schema Class Reference

Public Member Functions

Schema from_felis (cls, felis.datamodel.Schema dm_schema)
 

Static Public Attributes

str name
 
str id
 
list tables [Table]
 
felis version = None
 
str description = None
 
Mapping annotations = dataclasses.field(default_factory=dict)
 

Detailed Description

Complete schema description, collection of tables.

Definition at line 408 of file schema_model.py.

Member Function Documentation

◆ from_felis()

Schema lsst.dax.apdb.schema_model.Schema.from_felis ( cls,
felis.datamodel.Schema dm_schema )
Convert felis schema definition to instance of this class.

Parameters
----------
dm_schema : `felis.datamodel.Schema`
    Felis schema definition.

Returns
-------
schema : `Schema`
    Converted schema definition.

Definition at line 430 of file schema_model.py.

430 def from_felis(cls, dm_schema: felis.datamodel.Schema) -> Schema:
431 """Convert felis schema definition to instance of this class.
432
433 Parameters
434 ----------
435 dm_schema : `felis.datamodel.Schema`
436 Felis schema definition.
437
438 Returns
439 -------
440 schema : `Schema`
441 Converted schema definition.
442 """
443 # Convert all columns first.
444 columns: MutableMapping[str, Column] = {}
445 for dm_table in dm_schema.tables:
446 for dm_column in dm_table.columns:
447 column = Column.from_felis(dm_column)
448 columns[column.id] = column
449
450 tables = [Table.from_felis(dm_table, columns) for dm_table in dm_schema.tables]
451
452 version: felis.datamodel.SchemaVersion | None
453 if isinstance(dm_schema.version, str):
454 version = felis.datamodel.SchemaVersion(current=dm_schema.version)
455 else:
456 version = dm_schema.version
457
458 schema = cls(
459 name=dm_schema.name,
460 id=dm_schema.id,
461 tables=tables,
462 version=version,
463 description=dm_schema.description,
464 annotations=_strip_keys(dict(dm_schema), ["name", "id", "tables", "description"]),
465 )
466 return schema

Member Data Documentation

◆ annotations

Mapping lsst.dax.apdb.schema_model.Schema.annotations = dataclasses.field(default_factory=dict)
static

Definition at line 426 of file schema_model.py.

◆ description

str lsst.dax.apdb.schema_model.Schema.description = None
static

Definition at line 423 of file schema_model.py.

◆ id

str lsst.dax.apdb.schema_model.Schema.id
static

Definition at line 414 of file schema_model.py.

◆ name

str lsst.dax.apdb.schema_model.Schema.name
static

Definition at line 411 of file schema_model.py.

◆ tables

list lsst.dax.apdb.schema_model.Schema.tables [Table]
static

Definition at line 417 of file schema_model.py.

◆ version

felis lsst.dax.apdb.schema_model.Schema.version = None
static

Definition at line 420 of file schema_model.py.


The documentation for this class was generated from the following file: