---
title: "Deprecations"
manual: "schema"
version: "4.4"
permalink: "https://docs.typo3.org/permalink/brotkrueml/schema:api-deprecations@4.4"
source: "Developer/Deprecations.rst"
rendered: "2026-09-28T16:49:37+00:00"
---

# Deprecations {#api-deprecations}

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

-   **Prioritisation of mainEntityOfWebPage**

    -   **Deprecated since version**

        4.4.0

    -   **Will be removed in version**

        5.0.0

    -   **Alternative**

        None.

The [prioritisation](https://docs.typo3.org/permalink/brotkrueml/schema:main-entity-prioritisation@4.4) of `mainEntityOfWebPage` via
[SchemaManager->addMainEntityOfWebPage()](https://docs.typo3.org/permalink/brotkrueml/schema:confval-schemamanager-addmainentityofwebpage@4.4)
and the `<schema:type>` view helpers has been introduced to override the
`WebPage` type, for example to force it to a `FAQPage`. This has been claimed by
Google to be able to show rich snippets. As Google [removed the support of FAQs](https://developers.google.com/search/updates#removing-faq-rich-result)
for rich snippets in May 2026, this workaround is not necessary anymore.

## 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@4.4) 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@4.4) 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@4.4) 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@4.4) 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@4.4).

-   **\\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.
