""" Technique entity — ER Diagram §3.2.6 Attributes: Technique_ID, technique_name, tactic """ from sqlalchemy import String from sqlalchemy.orm import Mapped, mapped_column, relationship from app.db.base import Base class Technique(Base): __tablename__ = "techniques" technique_id: Mapped[str] = mapped_column(String(20), primary_key=True) technique_name: Mapped[str] = mapped_column(String(255), nullable=False) tactic: Mapped[str | None] = mapped_column(String(100), nullable=True) rule_mappings: Mapped[list["RuleTechniqueMapping"]] = relationship( back_populates="technique" ) query_templates: Mapped[list["QueryTemplate"]] = relationship( back_populates="technique" )