PhoenixAgent / app /models /metadata.py
alessandro-ai's picture
First commit
daf58ef
Raw
History Blame Contribute Delete
789 Bytes
"""Pydantic models for SAS file metadata."""
from pydantic import BaseModel
class ColumnMetadata(BaseModel):
"""Metadata for a single SAS dataset column. Never contains raw data values."""
name: str
label: str | None = None
dtype: str # pandas dtype string, e.g. "float64", "object"
sas_format: str | None = None
sas_informat: str | None = None
length: int = 0
position: int # 0-based column ordinal
class DatasetMetadata(BaseModel):
"""Metadata for an entire SAS dataset. Row count is included but no row data."""
filename: str
dataset_label: str | None = None
num_rows: int
num_columns: int
columns: list[ColumnMetadata]
encoding: str | None = None
created_at: str | None = None
modified_at: str | None = None