---
title: "Deprecations"
manual: "schema"
version: "main"
permalink: "https://docs.typo3.org/permalink/brotkrueml/schema:api-deprecations@main"
source: "Developer/Deprecations.rst"
rendered: "2026-09-25T08:33:13+00:00"
---

# Deprecations {#api-deprecations}

## Introduced in version 3 {#introduced-in-version-3}

-   **Direct instantiation of a type model**

    -   **Deprecated since version**

        3.11.0

    -   **Removed in version**

        4.0.0

    -   **Alternative**

        Get an instance of a type model via the `TypeFactory`, see
        [Types](https://docs.typo3.org/permalink/brotkrueml/schema:types@main) for details. A deprecation log entry is written with
        information about the calling class and line number.

-   **PSR-14 event RegisterAdditionalTypePropertiesEvent**

    -   **Deprecated since version**

        3.10.0

    -   **Removed in version**

        4.0.0

    -   **Alternative**

        Create a class implementing `AdditionalPropertiesInterface`, see
        [Register additional properties](https://docs.typo3.org/permalink/brotkrueml/schema:extending-register-additional-properties@main) for details.

-   **Enumeration type model / view helper classes**

    -   **Deprecated since version**

        3.9.0

    -   **Removed in version**

        4.0.0

    -   **Alternative**

        Use the specific enums and the \<f:constant> view helper instead, see
        [enumerations](https://docs.typo3.org/permalink/brotkrueml/schema:enumerations@main) for details.

-   **\\Brotkrueml\\Schema\\Type\\TypeFactory::createType()**

    -   **Deprecated since version**

        3.0.0

    -   **Removed in version**

        4.0.0

    -   **Alternative**

        Inject the `TypeFactory` into the constructor and use the
        `create()` method.
        Have a look at the [migration](https://docs.typo3.org/permalink/brotkrueml/schema:migration-type-factory@main) section.

## Introduced in version 1 {#introduced-in-version-1}

-   **\\Brotkrueml\\Schema\\Core\\Model\\AbstractType->isEmpty()**

    -   **Deprecated since version**

        1.7.0

    -   **Removed in version**

        2.0.0

    -   **Alternative**

        None. If you need it use
        `\Brotkrueml\Schema\Core\Model\AbstractType->getPropertyNames()`
        and loop over the property names with
        `\Brotkrueml\Schema\Core\Model\AbstractType->getProperty()`.

-   **\\Brotkrueml\\Schema\\Manager\\SchemaManager->setMainEntityOfWebPage()**

    -   **Deprecated since version**

        1.4.1

    -   **Removed in version**

        2.0.0

    -   **Alternative**

        Use `\Brotkrueml\Schema\Manager\SchemaManager->addMainEntityOfWebPage()`
        instead. See the [API](https://docs.typo3.org/permalink/brotkrueml/schema:api-schema-manager-addmainentityofwebpage@main).

-   **\\Brotkrueml\\Schema\\Provider\\TypesProvider**

    -   **Deprecated since version**

        1.7.0

    -   **Removed in version**

        2.0.0

    -   **Alternative**

        Use `\Brotkrueml\Schema\Type\TypeRegistry` which is a singleton
        and can be instantiated with `GeneralUtility::makeInstance()` or
        injected with dependency injection.

        Since version 3.0 there is no alternative available.
