.. include:: /Includes.rst.txt .. index:: Rich text editor; Transformation .. _transformations-introduction: ============ Introduction ============ Transformation of content between the database and an RTE is needed if the format of the content in the database is different than the format understood by an RTE. A simple example could be that bold-tags in the database :code:`` should be converted to :code:`` tags in the RTE or that references to images in :code:`` tags in the database should be relative while absolute in the RTE. In such cases a transformation is needed to do the conversion both ways: from database (DB) to RTE and from RTE to DB. Generally transformations are needed for two reasons: - **Data Formats:** If the agreed format of the stored content in TYPO3 is different from the HTML format the RTE produces. This could be issues like XHTML, banning of certain tags or maybe a hybrid format in the database. (See section 3 in the illustration some pages ahead) - **RTE specifics:** If the RTE has special requirements to the content before it can be edited and if that format is different from what we want to store in the database. For instance an RTE could require a full HTML document with :code:``, :code:`` and :code:`` - obviously we don't want that in the database and likewise we will have to wrap content in such a dummy-body before it can be edited. .. _transformations-hybrid-modes: Hybrid modes ============ Many of the transformations performed back and forth in the TYPO3 backend date back to when it was a challenge to incorporate a RTE in a browser. It was then sometimes needed to fall back an a simple :code:`