---
title: "Important: An uploaded profile image carries its metadata"
manual: "Academic Profiles Edit"
version: "main"
source: "Changelog/3.0/Important-UploadedProfileImageMetadata.rst"
rendered: "2026-09-30T20:17:10+00:00"
---

# Important: An uploaded profile image carries its metadata {#important-uploaded-profile-image-metadata}

## Description {#description}

A profile image uploaded in the frontend editor now arrives with its metadata
filled instead of empty. Two records are involved, and they are written for
different reasons:

-   The `sys_file_reference` row of the profile carries the composed name
    of the profile record it belongs to in `title` and `alternative`,
    and follows every later change of that name. This is the language-correct
    place for the text — a translation carries its own name, and the file may
    be shared between the languages of a profile. It is written by
    [`fgtclb/academic-persons`](https://packagist.org/packages/fgtclb/academic-persons), for a backend save as well as for a
    frontend one (changelog entry *Breaking: The profile image translates* of
    that extension).
-   The `sys_file_metadata` record of the **uploaded file** is filled
    once, by the upload that created the file, and only where it is empty:
    `title`, `alternative` and — where
    [`typo3/cms-filemetadata`](https://packagist.org/packages/typo3/cms-filemetadata) adds the column — `copyright`.
    These are what an installation running that extension or
    [`fgtclb/file-required-attributes`](https://packagist.org/packages/fgtclb/file-required-attributes) reports as missing required
    attributes, and nothing else fills them for a file that was never touched
    in the backend. A value a backend editor maintained on the record is never
    overwritten, and a later change of the profile name does not reach it.

The composed name is the ordered non-empty values of `title`,
`first_name`, `middle_name` and `last_name`, joined with single
spaces.

## Impact {#impact}

An image uploaded through the profile editor no longer shows up in
**File > Filelist** as a file with missing required attributes, and the
name of the person is rendered as `alt` and `title` text wherever the file
is used — not only where the profile's own reference is rendered.

`copyright` is a column of `sys_file_metadata` only. The relation row
`sys_file_reference` has no such column, in the core or through any system
extension, so it carries the composed name in `title` and
`alternative` and nothing else.

Nothing has to be configured for it. An installation that maintains file
metadata editorially keeps what it maintained: the upload fills empty fields
only.

What is written can be changed, and columns an installation adds itself can be
filled, through the event `ModifyProfileImageMetadataEvent` of
[`fgtclb/academic-persons`](https://packagist.org/packages/fgtclb/academic-persons) — changelog entry *Feature: Decide what a
profile image's metadata will be* of that extension.

## Affected Installations {#affected-installations}

Installations that let people upload a profile image in the frontend, in
particular those requiring file metadata through
[`typo3/cms-filemetadata`](https://packagist.org/packages/typo3/cms-filemetadata) or [`fgtclb/file-required-attributes`](https://packagist.org/packages/fgtclb/file-required-attributes).
