Documentation
    Preparing search index...

    Interface IJsonSchemaAttribute

    Common attributes shared by all JSON schema types.

    IJsonSchemaAttribute defines the base set of metadata properties that can be attached to any JSON schema type. These attributes provide documentation, deprecation status, examples, and access control information.

    This interface serves as the foundation for all schema types in typia's JSON Schema generation. The namespace contains type-specific variants (e.g., IBoolean, IString) that add a type discriminator while inheriting all base attributes.

    These attributes are populated from JSDoc comments during schema generation:

    Jeongho Nam - https://github.com/samchon

    interface IJsonSchemaAttribute {
        deprecated?: boolean;
        description?: string;
        example?: any;
        examples?: Record<string, any>;
        readOnly?: boolean;
        title?: string;
        writeOnly?: boolean;
    }

    Hierarchy (View Summary)

    Index

    Properties

    deprecated?: boolean

    Whether this type is deprecated.

    When true, indicates the type should no longer be used and may be removed in future versions. Set via the @deprecated JSDoc tag.

    description?: string

    Detailed description of the schema.

    Full documentation for the type, explaining its purpose, constraints, and usage. Extracted from JSDoc comment body. Supports markdown formatting in many JSON Schema consumers.

    example?: any

    Single example value for the schema.

    A representative value that conforms to the schema, useful for documentation and testing. Set via the @example JSDoc tag.

    examples?: Record<string, any>

    Named example values for the schema.

    Multiple examples as key-value pairs, where keys are example names and values are conforming data. Useful for showing different valid states or edge cases.

    readOnly?: boolean

    Whether the property is read-only.

    When true, the property should not be modified by clients and is typically set by the server. Useful for generated IDs, timestamps, etc.

    title?: string

    Short title for the schema.

    A brief, human-readable name for the type. Typically extracted from the first line of a JSDoc comment or the @title tag.

    writeOnly?: boolean

    Whether the property is write-only.

    When true, the property is accepted on input but never returned in responses. Common for sensitive data like passwords.