Wie ist es möglich,
xsdata für die Erzeugung des Modells (DataClass) aus einem XSD mit Auswahlelementen zu Validierungen für diese Auswahlmöglichkeiten durchzuführen, damit nur eines von ihnen eingestellt werden kann?
Ich habe das Web durchsucht und festgestellt, dass diese Anforderung mit der Methode __post_init __ validiert werden kann. Aber wäre es möglich, XSDATA einen Haken hinzuzufügen, damit es automatisch die Implementierung der Methode __post_init __ enthält, wenn das Modell mit xsdata generiert wird?
Code: Select all
@dataclass
class ThirdPartyType:
legal_entity: Optional[LegalEntityType] = None
individual: Optional[IndividualType] = None
def __post_init__(self):
filled = sum(v is not None for v in [self.legal_entity, self.individual])
if filled > 1:
raise ValueError("Only one of ['legal_entity', 'individual'] can be defined")