Skip to main content

is_subclass_schema

Returns a schema that checks if a value is a subtype of a class, equivalent to python's issubclass method, e.g.:

from pydantic_core import SchemaValidator, core_schema

class A:
pass

class B(A):
pass

schema = core_schema.is_subclass_schema(cls=A)
v = SchemaValidator(schema)
v.validate_python(B)
def is_subclass_schema(
cls: type[Any],
cls_repr: str | None = None,
ref: str | None = None,
metadata: dict[str, Any] | None = None,
serialization: SerSchema | None = None
) - > IsInstanceSchema

Returns a schema that checks if a value is a subtype of a class, equivalent to python's issubclass method.

Parameters

NameTypeDescription
clstype[Any]The class that the input value must be a subclass of.
cls_repr`strNone` = None
ref`strNone` = None
metadata`dict[str, Any]None` = None
serialization`SerSchemaNone` = None

Returns

TypeDescription
IsInstanceSchemaA schema object that validates whether a given input is a subclass of the specified class.