Problem/Motivation

The current license/attribution field (license select + author/author_url + source/source_url) assumes a human creator and a licensable work. AI-generated assets break both assumptions:

  • There is no clear "author" in the copyright sense for purely AI-generated output.
  • The license select forces editors to assert a CC (or similar) rights claim that may not legally apply to AI-generated content.
  • EU AI Act Art. 50 disclosure obligations apply from 2 August 2026 and require sites to label AI-generated/-manipulated content. This is not a nice-to-have, it is an approaching compliance requirement for deployers.

Key constraint: we cannot assume existing assets are human-created just because the field predates this feature. Any migration or default must treat existing creation types as unknown.

Proposed resolution

  • Add a creation_type sub-field (human_created | ai_generated | ai_assisted) governing conditional sub-fields (ai_tool, ai_prompt, human_editor) via #states.
  • Add a distinct license option for content with no asserted/no known copyright, rather than reusing existing e.g. CC entries for this case.
  • Default new entries going forward as needed - leave unset/unknown as its own state.

Data migration / existing content

  • New column(s) require a migration path (update hook) that sets creation_type to a neutral "unknown/unspecified" default
  • Bulk-edit tooling: a View (or VBO-style bulk operation) listing assets by current attribution state, letting editors triage and bulk-assign creation_type where known, rather than requiring per-asset manual edits.
  • This should be flagged as review work for site owners post-update (changelog/release note), since it affects legal disclosure obligations and not just display.

Display/rendering considerations

  • Rendering of the attribution field is themeable/overridable per site and varies across sites using this module. For example, the OpenCulturas distribution ships a template override that renders attribution as a popover trigger styled as a © symbol - but that icon choice does not generalize to AI-generated content, since there is no copyright claim being made and reusing a © glyph could be misleading.
  • The label "Attribution" remains valid and appropriate across all creation types and should stay the constant, translatable string. Only icons/visual triggers and the populated sub-fields should vary by creation_type.
  • Provide sensible css classes. Any default icon/label for AI-disclosure should live in the template/formatter layer, not be baked into the field logic itself (let's not assume that/how any given site renders a trigger).

Remaining tasks / open questions

  • Icon/visual convention for AI-generated vs. AI-assisted vs. human-created (needs design input; the EU Commission's proposed "AI"/"KI" visual label is a reference point, not necessarily one to copy verbatim).
  • Confirm schema change strategy: new columns on existing field storage vs. a new field.
  • Decide default license option label/machine name for the "no known copyright" case.
  • Confirm whether human_editor is a separate role from the existing "author" field, or replaces it conditionally when creation_type is not human_created.

API/data model changes

  • New field storage columns: creation_type, ai_tool, ai_prompt, human_editor.
  • Widget: conditional visibility logic keyed on creation_type.
  • Formatter: template changes to render the disclosure label independent of icon choice.

Issue text created with the assistance of Claude, based on human concept ;-)

Comments

hexabinaer created an issue. See original summary.

tobiasb’s picture

Version: 1.1.x-dev » 1.2.x-dev
hexabinaer’s picture

Issue summary: View changes
hexabinaer’s picture

Reviewing ...

  1. Sorry, my bad: "AI modified" was the official criterium, not "AI assisted"
  2. Human editor: MVP: show in both "AI" cases // Better label: "Prompt editor" // for consistency, this editor should get an optional link field, too - non?

Text review:

  • This work was AI-generated - This work is AI-generated
  • This work was AI-assisted - This work is AI-modified

https://digital-strategy.ec.europa.eu/en/policies/eu-icons-labelling-ai-...

hexabinaer’s picture

Add a distinct license option for content with no asserted/no known copyright, rather than reusing existing e.g. CC entries for this case.

Thanks for the suggestion (Name: "Unknown / unasserted copyright status" - Identifier: "LicenseRef-unknown-unasserted"). I should have spend one more thought on this question with my proposal.

Since the Identifier is used in the "Icons" formatter (and with the possibility in mind that a similar formatter w/o styling is still missing) we should use a more human-friendly form.

How about:

  • Name: Uncertain copyright status
  • Identifier: Uncertain
  • (Machine name can stay IMHO)

Open for better suggestions but at least concise (not to break given theme solutions).

Quick win in the course of updating the default licenses: Remove the dashes from the "All-rights-reserved" Identifier. When using the "Icons" formatter, they lead to double spaces.

  • tobiasb committed eb48d4e6 on 3609787-ai-attribution-support
    feat: #3609787 Extend license/attribution field to support AI-generated...

  • tobiasb committed 59a4c1ec on 3609787-ai-attribution-support
    feat: #3609787 Extend license/attribution field to support AI-generated...

  • tobiasb committed e879e55b on 3609787-ai-attribution-support
    feat: #3609787 Extend license/attribution field to support AI-generated...

  • tobiasb committed e879e55b on 1.2.x
    feat: #3609787 Extend license/attribution field to support AI-generated...
tobiasb’s picture

Status: Active » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.