Aller au contenu
Support

Référence XML

Cette page couvre la structure XML et les exemples de code pour l’import DDEX de LabelGrid. Pour les exigences de métadonnées, les rôles de contributeurs, les splits et les standards de formatage, consultez Métadonnées de la sortie, Métadonnées de la piste et Validation.

ERN 4.3.2 est la version d’import recommandée pour les nouvelles intégrations : voir ERN 4.3.2 ci-dessous pour son élément racine, les champs de déclaration IA qu’elle ajoute et un exemple 4.3.2 complet avec tous les champs. La plupart des exemples détaillés de cette page utilisent le format ERN 4.3 ; la structure du message est la même en 4.3.1/4.3.2, ils s’appliquent donc aux trois (changez le namespace racine et appliquez les changements de champ de 4.3.2 — DisplayGenre, la forme complexe de Role et les éléments IA). Les valeurs PartyReference dans la sortie réelle sont des identifiants haches en MD5 (par exemple, P8A1B2C3D4E5F6...). Les exemples ci-dessous utilisent des noms lisibles pour plus de clarté.


Chaque livraison DDEX est un document XML NewReleaseMessage comprenant cinq sections principales :

NewReleaseMessage
├── MessageHeader — Expediteur, destinataire et ID du message
├── PartyList — Tous les artistes, contributeurs et titulaires de droits
├── ResourceList — Fichiers audio et visuels avec details techniques
├── ReleaseList — L'album/single et les pistes individuelles
└── DealList — Conditions commerciales, territoires et dates

L’élément racine inclut le namespace et l’emplacement du schema ERN 4.3 :

<?xml version="1.0" encoding="UTF-8"?>
<NewReleaseMessage
xmlns:ern="http://ddex.net/xml/ern/43"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ddex.net/xml/ern/43 http://ddex.net/xml/ern/43/release-notification.xsd"
AvsVersionId="3"
LanguageAndScriptCode="en">
AttributDescription
xmlns:ernURI du namespace ERN 4.3
xsi:schemaLocationSchéma pour la validation
AvsVersionIdVersion du jeu de valeurs autorisées
LanguageAndScriptCodeLangue par défaut du message

ERN 4.3.2 est la version d’import recommandée pour les nouvelles intégrations LabelGrid. C’est une révision ultérieure de la famille ERN 4.3, entièrement prise en charge par l’importateur de LabelGrid. Elle utilise un espace de noms et un schema différents de 4.3, de sorte que les deux ne sont pas interchangeables au niveau XML : l’élément racine determine a lui seul la version. Si votre système peut produire l’une ou l’autre, générez du 4.3.2.

<?xml version="1.0" encoding="UTF-8"?>
<NewReleaseMessage
xmlns:ern="http://ddex.net/xml/ern/432"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ddex.net/xml/ern/432 http://ddex.net/xml/ern/432/release-notification.xsd"
AvsVersionId="4"
LanguageAndScriptCode="en">
AttributERN 4.3ERN 4.3.2
xmlns:ernhttp://ddex.net/xml/ern/43http://ddex.net/xml/ern/432
xsi:schemaLocation…/ern/43 …/ern/43/release-notification.xsd…/ern/432 …/ern/432/release-notification.xsd
AvsVersionId34

Le schema public release-notification de 4.3.2 se trouve a http://service.ddex.net/xml/ern/432/release-notification.xsd (l’equivalent 4.3 est http://service.ddex.net/xml/ern/43/release-notification.xsd). Vous pouvez valider l’un ou l’autre fichier par rapport a son schema avec le validateur en ligne DDEX.

Le corps du message a la même forme que les exemples 4.3 ci-dessous : les sections MessageHeader, PartyList, ResourceList, ReleaseList et DealList conservent la même structure. Les différences se limitent a une poignée de changements au niveau des éléments qui ont été introduits dans ERN 4.3.1 et repris sans changement dans 4.3.2. Si vous passez de 4.3 (4.3.0), voici les trois choses a modifier :

DomaineERN 4.3 (4.3.0)ERN 4.3.1 et 4.3.2
Élément de genre<Genre><DisplayGenre> — mêmes enfants GenreText + SubGenre, simplement renomme
Role de contributeurSimple : <Role>StudioProducer</Role>Complexe : <Role><Value>StudioProducer</Value></Role>
Attribution IA(non disponible)Nouveaux éléments <ContainsAI>, <AiContribution> et <SpecialContributor>

Tout le reste — MessageHeader, parties, deals, emplacement des ISRC/ISWC, détails techniques audio/visuels, titres, P-Line/C-Line, deals, dates — est identique aux exemples 4.3 du reste de cette page. Les seuls éléments spécifiques a la version sont les trois ci-dessus ; les champs de déclaration IA ont leur propre section juste après car ils constituent la principale raison d’utiliser 4.3.2.

C’est la partie de 4.3.2 qui n’existe pas en 4.3 simple. Il y a trois éléments, et ils décrivent tous la même déclaration sous-jacente : la part du contenu générée par IA. Chaque valeur est l’une de None, Partly ou All — il n’y a pas d’indicateurs booléens ni de champs en texte libre.

ÉlémentApparaît surPositionValeurs
<ContainsAI>chaque <SoundRecording> (piste)Après <ParentalWarningType>, avant <LanguageOfPerformance>None / Partly / All
<ContainsAI>la <Release> principaleAprès le bloc <ResourceGroup>None / Partly / All — la valeur la plus élevée parmi toutes les pistes et le visuel
<ContainsAI>l’<Image> de pochetteAprès <ResourceId>, avant <TechnicalDetails>None / Partly / All
<AiContribution>chaque <Contributor>Après <Role>None / Partly / All
<SpecialContributor>un <Contributor> entièrement IARemplace <ContributorPartyReference> (mutuellement exclusifs)Valeur fixe GenerativeAI

Le formulaire de piste comporte deux menus déroulants de déclaration IA (voir Ajout de pistes) — Generative AI Disclosure (l’enregistrement sonore) et Composition AI Disclosure (la chanson). Le visuel de la sortie a son propre parametre IA. Chacun correspond a une valeur DDEX comme suit :

Sélection de déclarationValeur DDEX
Aucune IA générative utiliséeNone
Assistance IA mineure uniquementPartly
Portions de contenu générées par IAPartly
Entièrement genere par IAAll
  • Le <ContainsAI> d’une piste correspond a la valeur la plus élevée entre ses déclarations Generative AI et Composition AI.
  • Le <ContainsAI> de la sortie correspond a la valeur la plus élevée parmi toutes les pistes plus le visuel.
  • L’<AiContribution> d’un <Contributor> reflete ce crédit spécifique. Les contributeurs nommes (humains) sont plafonnes a Partly — une valeur de All n’est jamais exprimée qu’au travers de <SpecialContributor>GenerativeAI</SpecialContributor>, qui ne porte aucun nom de partie.

DisplayGenre remplace l’élément Genre de 4.3 (les enfants restent inchangés) :

<!-- 4.3.2 uses DisplayGenre; 4.3.0 used Genre -->
<DisplayGenre>
<GenreText>Electronic</GenreText>
<SubGenre>Deep House</SubGenre>
</DisplayGenre>

ContainsAI sur une piste, a sa position correcte :

<SoundRecording>
<ResourceReference>A1</ResourceReference>
<!-- ... editions, titles, artists, contributors, duration ... -->
<ParentalWarningType>NotExplicit</ParentalWarningType>
<ContainsAI>Partly</ContainsAI>
<LanguageOfPerformance>en</LanguageOfPerformance>
</SoundRecording>

ContainsAI sur l’image de pochette (avant TechnicalDetails) :

<Image>
<ResourceReference>A2</ResourceReference>
<Type>FrontCoverImage</Type>
<ResourceId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:release:67890:cover</ProprietaryId>
</ResourceId>
<ContainsAI>None</ContainsAI>
<TechnicalDetails>
<!-- ... -->
</TechnicalDetails>
</Image>

Un contributeur utilisant la forme complexe de Role avec un AiContribution, aux cotes d’un contributeur entièrement IA qui utilise SpecialContributor au lieu d’une référence de partie :

<!-- Human contributor: complex Role + per-credit AiContribution -->
<Contributor SequenceNumber="1">
<ContributorPartyReference>P_CONTRIB_SARAHCHEN</ContributorPartyReference>
<Role><Value>StudioProducer</Value></Role>
<AiContribution>None</AiContribution>
</Contributor>
<!-- Fully AI-generated credit: SpecialContributor replaces ContributorPartyReference -->
<Contributor SequenceNumber="2">
<SpecialContributor>GenerativeAI</SpecialContributor>
<Role><Value>Vocalist</Value></Role>
<AiContribution>All</AiContribution>
</Contributor>

Pour confirmer qu’un message 4.3.2 est valide avant la livraison, verifiez-le par rapport au schema public release-notification de 4.3.2 (http://service.ddex.net/xml/ern/432/release-notification.xsd) avec le validateur en ligne DDEX.


Identifie l’expediteur (votre organisation), le destinataire (le DSP) et un ID de message unique.

<MessageHeader>
<MessageThreadId>20250815-neonsounds-001</MessageThreadId>
<MessageId>20250815-neonsounds-001-msg01</MessageId>
<MessageSender>
<PartyId>PADPIDA2025010100A</PartyId>
<PartyName><FullName>Neon Sounds</FullName></PartyName>
</MessageSender>
<MessageRecipient>
<PartyId>PADPIDA2014120301U</PartyId>
<PartyName><FullName>Spotify</FullName></PartyName>
</MessageRecipient>
<MessageCreatedDateTime>2025-08-01T10:30:00Z</MessageCreatedDateTime>
</MessageHeader>
ÉlémentDescription
MessageThreadIdRegroupe les messages lies (par exemple, mises a jour de la même sortie)
MessageIdIdentifiant unique pour ce message spécifique
MessageSenderLe Party ID et le nom DDEX de votre organisation
MessageRecipientLe Party ID et le nom du DSP destinataire
MessageCreatedDateTimeHorodatage ISO 8601 de la création du message

Toutes les entités référencées ailleurs dans le XML — le label, les artistes, les contributeurs et les éditeurs — sont définies ici. Chaque partie reçoit un PartyReference utilise pour les lier dans tout le document.

<Party>
<PartyReference>P_LABEL_NEONSOUNDS</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Neon Sounds LLC</FullName>
</PartyName>
<PartyId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:label:100</ProprietaryId>
</PartyId>
</Party>

Les artistes peuvent inclure des identifiants standards comme l’ISNI :

<!-- Primary Artist with ISNI -->
<Party>
<PartyReference>P_ARTIST_LUNAWAVE</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Luna Wave</FullName>
</PartyName>
<PartyId>
<ISNI>0000000012345678</ISNI>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:artist:200</ProprietaryId>
</PartyId>
</Party>
<!-- Featured Artist (no ISNI) -->
<Party>
<PartyReference>P_ARTIST_DJKODA</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>DJ Koda</FullName>
</PartyName>
<PartyId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:artist:201</ProprietaryId>
</PartyId>
</Party>

Les contributeurs (auteurs-compositeurs, producteurs, ingénieurs) peuvent inclure des identifiants IPI :

<!-- Songwriter / Composer / Producer with IPI -->
<Party>
<PartyReference>P_CONTRIB_SARAHCHEN</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Sarah Chen</FullName>
</PartyName>
<PartyId>
<IpiNameNumber>00123456789</IpiNameNumber>
</PartyId>
</Party>
<!-- Mixing Engineer (no IPI) -->
<Party>
<PartyReference>P_CONTRIB_MIXMASTER</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Mike Torres</FullName>
</PartyName>
</Party>
<Party>
<PartyReference>P_PUBLISHER_NEONSOUNDS</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Neon Sounds Publishing</FullName>
</PartyName>
</Party>

Identifiants de partie pris en charge :

IdentifiantÉlémentFormat
ISNI<ISNI>16 caractères (15 chiffres + chiffre de vérification)
IPI<IpiNameNumber>Complete avec des zéros jusqu’à 11 chiffres
Propriétaire<ProprietaryId>Référence interne LabelGrid

Contient tous les fichiers audio et visuels. Chaque ressource reçoit un ResourceReference (par exemple, A1, A2) utilise pour la lier aux sorties.

<SoundRecording>
<ResourceReference>A1</ResourceReference>
<Type>MusicalWorkSoundRecording</Type>
<!-- ISRC and P-Line inside SoundRecordingEdition -->
<SoundRecordingEdition>
<ResourceId>
<ISRC>USNS12500001</ISRC>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:track:12345</ProprietaryId>
</ResourceId>
<PLine>
<Year>2025</Year>
<PLineText>Neon Sounds LLC</PLineText>
</PLine>
<!-- Technical details of the audio file -->
<TechnicalDetails>
<TechnicalResourceDetailsReference>T1</TechnicalResourceDetailsReference>
<DeliveryFile>
<Type>AudioFile</Type>
<AudioCodecType UserDefinedValue="WAV">UserDefined</AudioCodecType>
<NumberOfChannels>2</NumberOfChannels>
<SamplingRate>44100</SamplingRate>
<BitsPerSample>16</BitsPerSample>
<File>
<URI>resources/198765432109_01_01.wav</URI>
<HashSum>
<Algorithm>MD5</Algorithm>
<HashSumValue>d41d8cd98f00b204e9800998ecf8427e</HashSumValue>
</HashSum>
</File>
</DeliveryFile>
</TechnicalDetails>
</SoundRecordingEdition>
<!-- ISWC goes on parent SoundRecording, NOT inside Edition -->
<WorkId>
<ISWC>T3351864278</ISWC>
</WorkId>
<!-- Track title -->
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Midnight Run</TitleText>
<SubTitle/>
</DisplayTitle>
<!-- Display artist string -->
<DisplayArtistName ApplicableTerritoryCode="Worldwide">Luna Wave feat. DJ Koda</DisplayArtistName>
<!-- Artist roles -->
<DisplayArtist SequenceNumber="1">
<ArtistPartyReference>P_ARTIST_LUNAWAVE</ArtistPartyReference>
<DisplayArtistRole>MainArtist</DisplayArtistRole>
</DisplayArtist>
<DisplayArtist SequenceNumber="2">
<ArtistPartyReference>P_ARTIST_DJKODA</ArtistPartyReference>
<DisplayArtistRole>FeaturedArtist</DisplayArtistRole>
</DisplayArtist>
<!-- Contributors -->
<Contributor SequenceNumber="1">
<ContributorPartyReference>P_CONTRIB_SARAHCHEN</ContributorPartyReference>
<Role>ComposerLyricist</Role>
</Contributor>
<Contributor SequenceNumber="2">
<ContributorPartyReference>P_CONTRIB_SARAHCHEN</ContributorPartyReference>
<!-- "Producer" display role maps to DDEX role "StudioProducer" -->
<Role>StudioProducer</Role>
</Contributor>
<Contributor SequenceNumber="3">
<ContributorPartyReference>P_CONTRIB_MIXMASTER</ContributorPartyReference>
<Role>MixingEngineer</Role>
</Contributor>
<Contributor SequenceNumber="4">
<ContributorPartyReference>P_PUBLISHER_NEONSOUNDS</ContributorPartyReference>
<Role>MusicPublisher</Role>
</Contributor>
<!-- Copyright ownership -->
<WorkRightsController>
<RightsControllerPartyReference>P_LABEL_NEONSOUNDS</RightsControllerPartyReference>
<RightsControlType>RightsController</RightsControlType>
<RightSharePercentage>100.00</RightSharePercentage>
<Territory>Worldwide</Territory>
</WorkRightsController>
<!-- Duration in ISO 8601 format -->
<Duration>PT00H04M32S</Duration>
<!-- Parental warning -->
<ParentalWarningType>NotExplicit</ParentalWarningType>
<!-- Language of performance -->
<LanguageOfPerformance>en</LanguageOfPerformance>
</SoundRecording>

Points clés :

  • ISRC et PLine vont a l’interieur de SoundRecordingEdition
  • ISWC va sur le SoundRecording parent via WorkId (pas a l’interieur de l’Edition)
  • DisplayTitleText contient uniquement le titre de base (sans version du mix)
  • L’élément SubTitle a l’interieur de DisplayTitle contient la version du mix (vide si aucune)
  • Le rôle d’affichage “Producer” correspond au rôle DDEX StudioProducer
  • L’URI du fichier audio suit le patron : resources/{UPC}_{disc}_{track}.{ext}
<Image>
<ResourceReference>A2</ResourceReference>
<Type>FrontCoverImage</Type>
<ResourceId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:release:67890:cover</ProprietaryId>
</ResourceId>
<TechnicalDetails>
<TechnicalResourceDetailsReference>T2</TechnicalResourceDetailsReference>
<ImageCodecType>JPEG</ImageCodecType>
<ImageHeight>3000</ImageHeight>
<ImageWidth>3000</ImageWidth>
<File>
<URI>resources/198765432109.jpg</URI>
<HashSum>
<Algorithm>MD5</Algorithm>
<HashSumValue>a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4</HashSumValue>
</HashSum>
</File>
</TechnicalDetails>
</Image>

Contient la sortie principale (l’album ou le single) et les sorties de pistes individuelles. La sortie principale est liée aux ressources via ResourceGroup.

<Release>
<ReleaseReference>R0</ReleaseReference>
<!-- ReleaseType comes before ReleaseId in ERN 4.3 -->
<ReleaseType>Single</ReleaseType>
<ReleaseId>
<ICPN>198765432109</ICPN>
<CatalogNumber Namespace="PADPIDA2025010100A">NS-2025-042</CatalogNumber>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:release:67890</ProprietaryId>
</ReleaseId>
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Midnight Run</TitleText>
<SubTitle/>
</DisplayTitle>
<DisplayArtistName ApplicableTerritoryCode="Worldwide">Luna Wave feat. DJ Koda</DisplayArtistName>
<DisplayArtist SequenceNumber="1">
<ArtistPartyReference>P_ARTIST_LUNAWAVE</ArtistPartyReference>
<DisplayArtistRole>MainArtist</DisplayArtistRole>
</DisplayArtist>
<DisplayArtist SequenceNumber="2">
<ArtistPartyReference>P_ARTIST_DJKODA</ArtistPartyReference>
<DisplayArtistRole>FeaturedArtist</DisplayArtistRole>
</DisplayArtist>
<ReleaseLabelReference>P_LABEL_NEONSOUNDS</ReleaseLabelReference>
<PLine>
<Year>2025</Year>
<PLineText>Neon Sounds LLC</PLineText>
</PLine>
<CLine>
<Year>2025</Year>
<CLineText>Neon Sounds LLC</CLineText>
</CLine>
<Genre>
<GenreText>Electronic</GenreText>
<SubGenre>Deep House</SubGenre>
</Genre>
<OriginalReleaseDate>2025-08-15</OriginalReleaseDate>
<ParentalWarningType>NotExplicit</ParentalWarningType>
<!-- ResourceGroup links tracks and artwork to the release -->
<ResourceGroup>
<SequenceNumber>1</SequenceNumber>
<ResourceGroupContentItem>
<SequenceNumber>1</SequenceNumber>
<ReleaseResourceReference>A1</ReleaseResourceReference>
</ResourceGroupContentItem>
<ResourceGroupContentItem>
<SequenceNumber>2</SequenceNumber>
<ReleaseResourceReference>A2</ReleaseResourceReference>
</ResourceGroupContentItem>
</ResourceGroup>
</Release>

Points clés :

  • ReleaseType vient avant ReleaseId dans ERN 4.3
  • L’UPC/EAN va dans <ICPN> a l’interieur de ReleaseId
  • Les ressources sont liées via ResourceGroup (pas ReleaseResourceReferenceList)
  • ReleaseLabelReference pointe vers le PartyReference du label

Chaque piste reçoit également sa propre TrackRelease pour la disponibilité individuelle de la piste sur les plateformes :

<TrackRelease>
<ReleaseReference>RT1</ReleaseReference>
<ReleaseId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:track:12345</ProprietaryId>
</ReleaseId>
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Midnight Run</TitleText>
<SubTitle/>
</DisplayTitle>
<ReleaseResourceReference>A1</ReleaseResourceReference>
<ReleaseLabelReference>P_LABEL_NEONSOUNDS</ReleaseLabelReference>
<Genre>
<GenreText>Electronic</GenreText>
<SubGenre>Deep House</SubGenre>
</Genre>
<Keywords>electronic deep house chill night</Keywords>
</TrackRelease>

Definit les conditions commerciales sous lesquelles la sortie est disponible. Chaque Deal specifie un territoire, une date de début, un modele commercial et un type d’utilisation.

<DealList>
<ReleaseDeal>
<DealReleaseReference>R0</DealReleaseReference>
<!-- Subscription streaming (e.g., Spotify Premium) -->
<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>SubscriptionModel</CommercialModelType>
<UseType>UserMakeAvailableLabelProvided</UseType>
</DealTerms>
</Deal>
<!-- Ad-supported streaming (e.g., Spotify Free) -->
<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>AdvertisementSupportedModel</CommercialModelType>
<UseType>UserMakeAvailableLabelProvided</UseType>
</DealTerms>
</Deal>
<!-- Pay-per-download (e.g., iTunes) -->
<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>PayAsYouGoModel</CommercialModelType>
<UseType>PermanentDownload</UseType>
</DealTerms>
</Deal>
</ReleaseDeal>
</DealList>

Types de modeles commerciaux :

ModeleDescriptionExemple
SubscriptionModelStreaming par abonnement payantSpotify Premium, Apple Music
AdvertisementSupportedModelStreaming gratuit avec publicitéSpotify Free, YouTube
PayAsYouGoModelAchat au téléchargementiTunes, Amazon Music

<détails open>

Sortie complete d'un single

Une sortie complete d’une seule piste avec un artiste principal, un artiste invite et des crédits de contributeurs complets.

Métadonnées d’entree :

ChampValeur
TitreMidnight Run
ArtisteLuna Wave (principal), DJ Koda (invite)
UPC198765432109
Date de sortie2025-08-15
LabelNeon Sounds
Numéro de catalogueNS-2025-042
GenreElectronic / Deep House
C-Line2025 Neon Sounds LLC
P-Line2025 Neon Sounds LLC
ISRC de la pisteUSNS12500001
ExpliciteNon explicite

XML genere :

<?xml version="1.0" encoding="UTF-8"?>
<NewReleaseMessage
xmlns:ern="http://ddex.net/xml/ern/43"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ddex.net/xml/ern/43 http://ddex.net/xml/ern/43/release-notification.xsd"
AvsVersionId="3"
LanguageAndScriptCode="en">
<MessageHeader>
<MessageThreadId>20250815-neonsounds-001</MessageThreadId>
<MessageId>20250815-neonsounds-001-msg01</MessageId>
<MessageSender>
<PartyId>PADPIDA2025010100A</PartyId>
<PartyName><FullName>Neon Sounds</FullName></PartyName>
</MessageSender>
<MessageRecipient>
<PartyId>PADPIDA2014120301U</PartyId>
<PartyName><FullName>Spotify</FullName></PartyName>
</MessageRecipient>
<MessageCreatedDateTime>2025-08-01T10:30:00Z</MessageCreatedDateTime>
</MessageHeader>
<PartyList>
<Party>
<PartyReference>P_LABEL_NEONSOUNDS</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Neon Sounds LLC</FullName>
</PartyName>
<PartyId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:label:100</ProprietaryId>
</PartyId>
</Party>
<Party>
<PartyReference>P_ARTIST_LUNAWAVE</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Luna Wave</FullName>
</PartyName>
<PartyId>
<ISNI>0000000012345678</ISNI>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:artist:200</ProprietaryId>
</PartyId>
</Party>
<Party>
<PartyReference>P_ARTIST_DJKODA</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>DJ Koda</FullName>
</PartyName>
<PartyId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:artist:201</ProprietaryId>
</PartyId>
</Party>
<Party>
<PartyReference>P_CONTRIB_SARAHCHEN</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Sarah Chen</FullName>
</PartyName>
<PartyId>
<IpiNameNumber>00123456789</IpiNameNumber>
</PartyId>
</Party>
<Party>
<PartyReference>P_CONTRIB_MIXMASTER</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Mike Torres</FullName>
</PartyName>
</Party>
<Party>
<PartyReference>P_PUBLISHER_NEONSOUNDS</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Neon Sounds Publishing</FullName>
</PartyName>
</Party>
</PartyList>
<ResourceList>
<SoundRecording>
<ResourceReference>A1</ResourceReference>
<Type>MusicalWorkSoundRecording</Type>
<SoundRecordingEdition>
<ResourceId>
<ISRC>USNS12500001</ISRC>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:track:12345</ProprietaryId>
</ResourceId>
<PLine>
<Year>2025</Year>
<PLineText>Neon Sounds LLC</PLineText>
</PLine>
<TechnicalDetails>
<TechnicalResourceDetailsReference>T1</TechnicalResourceDetailsReference>
<DeliveryFile>
<Type>AudioFile</Type>
<AudioCodecType UserDefinedValue="WAV">UserDefined</AudioCodecType>
<NumberOfChannels>2</NumberOfChannels>
<SamplingRate>44100</SamplingRate>
<BitsPerSample>16</BitsPerSample>
<File>
<URI>resources/198765432109_01_01.wav</URI>
<HashSum>
<Algorithm>MD5</Algorithm>
<HashSumValue>d41d8cd98f00b204e9800998ecf8427e</HashSumValue>
</HashSum>
</File>
</DeliveryFile>
</TechnicalDetails>
</SoundRecordingEdition>
<WorkId>
<ISWC>T3351864278</ISWC>
</WorkId>
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Midnight Run</TitleText>
<SubTitle/>
</DisplayTitle>
<DisplayArtistName ApplicableTerritoryCode="Worldwide">Luna Wave feat. DJ Koda</DisplayArtistName>
<DisplayArtist SequenceNumber="1">
<ArtistPartyReference>P_ARTIST_LUNAWAVE</ArtistPartyReference>
<DisplayArtistRole>MainArtist</DisplayArtistRole>
</DisplayArtist>
<DisplayArtist SequenceNumber="2">
<ArtistPartyReference>P_ARTIST_DJKODA</ArtistPartyReference>
<DisplayArtistRole>FeaturedArtist</DisplayArtistRole>
</DisplayArtist>
<Contributor SequenceNumber="1">
<ContributorPartyReference>P_CONTRIB_SARAHCHEN</ContributorPartyReference>
<Role>ComposerLyricist</Role>
</Contributor>
<Contributor SequenceNumber="2">
<ContributorPartyReference>P_CONTRIB_SARAHCHEN</ContributorPartyReference>
<Role>StudioProducer</Role>
</Contributor>
<Contributor SequenceNumber="3">
<ContributorPartyReference>P_CONTRIB_MIXMASTER</ContributorPartyReference>
<Role>MixingEngineer</Role>
</Contributor>
<Contributor SequenceNumber="4">
<ContributorPartyReference>P_PUBLISHER_NEONSOUNDS</ContributorPartyReference>
<Role>MusicPublisher</Role>
</Contributor>
<WorkRightsController>
<RightsControllerPartyReference>P_LABEL_NEONSOUNDS</RightsControllerPartyReference>
<RightsControlType>RightsController</RightsControlType>
<RightSharePercentage>100.00</RightSharePercentage>
<Territory>Worldwide</Territory>
</WorkRightsController>
<Duration>PT00H04M32S</Duration>
<ParentalWarningType>NotExplicit</ParentalWarningType>
<LanguageOfPerformance>en</LanguageOfPerformance>
</SoundRecording>
<Image>
<ResourceReference>A2</ResourceReference>
<Type>FrontCoverImage</Type>
<ResourceId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:release:67890:cover</ProprietaryId>
</ResourceId>
<TechnicalDetails>
<TechnicalResourceDetailsReference>T2</TechnicalResourceDetailsReference>
<ImageCodecType>JPEG</ImageCodecType>
<ImageHeight>3000</ImageHeight>
<ImageWidth>3000</ImageWidth>
<File>
<URI>resources/198765432109.jpg</URI>
<HashSum>
<Algorithm>MD5</Algorithm>
<HashSumValue>a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4</HashSumValue>
</HashSum>
</File>
</TechnicalDetails>
</Image>
</ResourceList>
<ReleaseList>
<Release>
<ReleaseReference>R0</ReleaseReference>
<ReleaseType>Single</ReleaseType>
<ReleaseId>
<ICPN>198765432109</ICPN>
<CatalogNumber Namespace="PADPIDA2025010100A">NS-2025-042</CatalogNumber>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:release:67890</ProprietaryId>
</ReleaseId>
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Midnight Run</TitleText>
<SubTitle/>
</DisplayTitle>
<DisplayArtistName ApplicableTerritoryCode="Worldwide">Luna Wave feat. DJ Koda</DisplayArtistName>
<DisplayArtist SequenceNumber="1">
<ArtistPartyReference>P_ARTIST_LUNAWAVE</ArtistPartyReference>
<DisplayArtistRole>MainArtist</DisplayArtistRole>
</DisplayArtist>
<DisplayArtist SequenceNumber="2">
<ArtistPartyReference>P_ARTIST_DJKODA</ArtistPartyReference>
<DisplayArtistRole>FeaturedArtist</DisplayArtistRole>
</DisplayArtist>
<ReleaseLabelReference>P_LABEL_NEONSOUNDS</ReleaseLabelReference>
<PLine>
<Year>2025</Year>
<PLineText>Neon Sounds LLC</PLineText>
</PLine>
<CLine>
<Year>2025</Year>
<CLineText>Neon Sounds LLC</CLineText>
</CLine>
<Genre>
<GenreText>Electronic</GenreText>
<SubGenre>Deep House</SubGenre>
</Genre>
<OriginalReleaseDate>2025-08-15</OriginalReleaseDate>
<ParentalWarningType>NotExplicit</ParentalWarningType>
<ResourceGroup>
<SequenceNumber>1</SequenceNumber>
<ResourceGroupContentItem>
<SequenceNumber>1</SequenceNumber>
<ReleaseResourceReference>A1</ReleaseResourceReference>
</ResourceGroupContentItem>
<ResourceGroupContentItem>
<SequenceNumber>2</SequenceNumber>
<ReleaseResourceReference>A2</ReleaseResourceReference>
</ResourceGroupContentItem>
</ResourceGroup>
</Release>
<TrackRelease>
<ReleaseReference>RT1</ReleaseReference>
<ReleaseId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:track:12345</ProprietaryId>
</ReleaseId>
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Midnight Run</TitleText>
<SubTitle/>
</DisplayTitle>
<ReleaseResourceReference>A1</ReleaseResourceReference>
<ReleaseLabelReference>P_LABEL_NEONSOUNDS</ReleaseLabelReference>
<Genre>
<GenreText>Electronic</GenreText>
<SubGenre>Deep House</SubGenre>
</Genre>
<Keywords>electronic deep house chill night</Keywords>
</TrackRelease>
</ReleaseList>
<DealList>
<ReleaseDeal>
<DealReleaseReference>R0</DealReleaseReference>
<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>SubscriptionModel</CommercialModelType>
<UseType>UserMakeAvailableLabelProvided</UseType>
</DealTerms>
</Deal>
<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>AdvertisementSupportedModel</CommercialModelType>
<UseType>UserMakeAvailableLabelProvided</UseType>
</DealTerms>
</Deal>
<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>PayAsYouGoModel</CommercialModelType>
<UseType>PermanentDownload</UseType>
</DealTerms>
</Deal>
</ReleaseDeal>
</DealList>
</NewReleaseMessage>

</détails>

<détails>

Sortie ERN 4.3.2 complete (tous les champs, avec déclarations IA)

La même sortie que ci-dessus, exprimée en ERN 4.3.2 avec tous les champs utilises par LabelGrid. Notez les différences par rapport a la version 4.3 : le namespace /432 et AvsVersionId="4", <DisplayGenre> au lieu de <Genre>, la forme complexe <Role><Value>…</Value></Role>, <ContainsAI> sur la piste / la sortie / l’image, un <AiContribution> sur chaque contributeur, et un chanteur entièrement IA exprime avec <SpecialContributor>GenerativeAI</SpecialContributor> (aucune entrée PartyList).

Métadonnées d’entree (mêmes que l’exemple 4.3, plus les déclarations IA) :

ChampValeur
Generative AI DisclosureAssistance IA mineure uniquement → Partly
Composition AI DisclosureAucune IA générative → None
IA du visuelAucune IA générative → None
Chanteur IACrédit entièrement genere par IA → SpecialContributor / All

XML genere :

<?xml version="1.0" encoding="UTF-8"?>
<NewReleaseMessage
xmlns:ern="http://ddex.net/xml/ern/432"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ddex.net/xml/ern/432 http://ddex.net/xml/ern/432/release-notification.xsd"
AvsVersionId="4"
LanguageAndScriptCode="en">
<MessageHeader>
<MessageThreadId>20250815-neonsounds-001</MessageThreadId>
<MessageId>20250815-neonsounds-001-msg01</MessageId>
<MessageSender>
<PartyId>PADPIDA2025010100A</PartyId>
<PartyName><FullName>Neon Sounds</FullName></PartyName>
</MessageSender>
<MessageRecipient>
<PartyId>PADPIDA2014120301U</PartyId>
<PartyName><FullName>Spotify</FullName></PartyName>
</MessageRecipient>
<MessageCreatedDateTime>2025-08-01T10:30:00Z</MessageCreatedDateTime>
</MessageHeader>
<PartyList>
<Party>
<PartyReference>P_LABEL_NEONSOUNDS</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Neon Sounds LLC</FullName>
</PartyName>
<PartyId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:label:100</ProprietaryId>
</PartyId>
</Party>
<Party>
<PartyReference>P_ARTIST_LUNAWAVE</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Luna Wave</FullName>
</PartyName>
<PartyId>
<ISNI>0000000012345678</ISNI>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:artist:200</ProprietaryId>
</PartyId>
</Party>
<Party>
<PartyReference>P_ARTIST_DJKODA</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>DJ Koda</FullName>
</PartyName>
<PartyId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:artist:201</ProprietaryId>
</PartyId>
</Party>
<Party>
<PartyReference>P_CONTRIB_SARAHCHEN</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Sarah Chen</FullName>
</PartyName>
<PartyId>
<IpiNameNumber>00123456789</IpiNameNumber>
</PartyId>
</Party>
<Party>
<PartyReference>P_CONTRIB_MIXMASTER</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Mike Torres</FullName>
</PartyName>
</Party>
<Party>
<PartyReference>P_PUBLISHER_NEONSOUNDS</PartyReference>
<PartyName LanguageAndScriptCode="en">
<FullName>Neon Sounds Publishing</FullName>
</PartyName>
</Party>
<!-- No Party entry for the AI vocalist — it is declared via SpecialContributor -->
</PartyList>
<ResourceList>
<SoundRecording>
<ResourceReference>A1</ResourceReference>
<Type>MusicalWorkSoundRecording</Type>
<SoundRecordingEdition>
<ResourceId>
<ISRC>USNS12500001</ISRC>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:track:12345</ProprietaryId>
</ResourceId>
<PLine>
<Year>2025</Year>
<PLineText>Neon Sounds LLC</PLineText>
</PLine>
<TechnicalDetails>
<TechnicalResourceDetailsReference>T1</TechnicalResourceDetailsReference>
<DeliveryFile>
<Type>AudioFile</Type>
<AudioCodecType UserDefinedValue="WAV">UserDefined</AudioCodecType>
<NumberOfChannels>2</NumberOfChannels>
<SamplingRate>44100</SamplingRate>
<BitsPerSample>16</BitsPerSample>
<File>
<URI>resources/198765432109_01_01.wav</URI>
<HashSum>
<Algorithm>MD5</Algorithm>
<HashSumValue>d41d8cd98f00b204e9800998ecf8427e</HashSumValue>
</HashSum>
</File>
</DeliveryFile>
</TechnicalDetails>
</SoundRecordingEdition>
<WorkId>
<ISWC>T3351864278</ISWC>
</WorkId>
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Midnight Run</TitleText>
<SubTitle/>
</DisplayTitle>
<DisplayArtistName ApplicableTerritoryCode="Worldwide">Luna Wave feat. DJ Koda</DisplayArtistName>
<DisplayArtist SequenceNumber="1">
<ArtistPartyReference>P_ARTIST_LUNAWAVE</ArtistPartyReference>
<DisplayArtistRole>MainArtist</DisplayArtistRole>
</DisplayArtist>
<DisplayArtist SequenceNumber="2">
<ArtistPartyReference>P_ARTIST_DJKODA</ArtistPartyReference>
<DisplayArtistRole>FeaturedArtist</DisplayArtistRole>
</DisplayArtist>
<!-- Contributors use the complex Role form and carry an AiContribution -->
<Contributor SequenceNumber="1">
<ContributorPartyReference>P_CONTRIB_SARAHCHEN</ContributorPartyReference>
<Role><Value>ComposerLyricist</Value></Role>
<AiContribution>None</AiContribution>
</Contributor>
<Contributor SequenceNumber="2">
<ContributorPartyReference>P_CONTRIB_SARAHCHEN</ContributorPartyReference>
<Role><Value>StudioProducer</Value></Role>
<AiContribution>None</AiContribution>
</Contributor>
<Contributor SequenceNumber="3">
<ContributorPartyReference>P_CONTRIB_MIXMASTER</ContributorPartyReference>
<Role><Value>MixingEngineer</Value></Role>
<AiContribution>Partly</AiContribution>
</Contributor>
<!-- Fully AI-generated vocal credit: SpecialContributor replaces the party reference -->
<Contributor SequenceNumber="4">
<SpecialContributor>GenerativeAI</SpecialContributor>
<Role><Value>Vocalist</Value></Role>
<AiContribution>All</AiContribution>
</Contributor>
<Contributor SequenceNumber="5">
<ContributorPartyReference>P_PUBLISHER_NEONSOUNDS</ContributorPartyReference>
<Role><Value>MusicPublisher</Value></Role>
<AiContribution>Partly</AiContribution>
</Contributor>
<WorkRightsController>
<RightsControllerPartyReference>P_LABEL_NEONSOUNDS</RightsControllerPartyReference>
<RightsControlType>RightsController</RightsControlType>
<RightSharePercentage>100.00</RightSharePercentage>
<Territory>Worldwide</Territory>
</WorkRightsController>
<Duration>PT00H04M32S</Duration>
<ParentalWarningType>NotExplicit</ParentalWarningType>
<!-- Track-level AI = highest of Generative AI (Partly) and Composition AI (None) -->
<ContainsAI>Partly</ContainsAI>
<LanguageOfPerformance>en</LanguageOfPerformance>
</SoundRecording>
<Image>
<ResourceReference>A2</ResourceReference>
<Type>FrontCoverImage</Type>
<ResourceId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:release:67890:cover</ProprietaryId>
</ResourceId>
<!-- Artwork AI declaration, before TechnicalDetails -->
<ContainsAI>None</ContainsAI>
<TechnicalDetails>
<TechnicalResourceDetailsReference>T2</TechnicalResourceDetailsReference>
<ImageCodecType>JPEG</ImageCodecType>
<ImageHeight>3000</ImageHeight>
<ImageWidth>3000</ImageWidth>
<File>
<URI>resources/198765432109.jpg</URI>
<HashSum>
<Algorithm>MD5</Algorithm>
<HashSumValue>a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4</HashSumValue>
</HashSum>
</File>
</TechnicalDetails>
</Image>
</ResourceList>
<ReleaseList>
<Release>
<ReleaseReference>R0</ReleaseReference>
<ReleaseType>Single</ReleaseType>
<ReleaseId>
<ICPN>198765432109</ICPN>
<CatalogNumber Namespace="PADPIDA2025010100A">NS-2025-042</CatalogNumber>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:release:67890</ProprietaryId>
</ReleaseId>
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Midnight Run</TitleText>
<SubTitle/>
</DisplayTitle>
<DisplayArtistName ApplicableTerritoryCode="Worldwide">Luna Wave feat. DJ Koda</DisplayArtistName>
<DisplayArtist SequenceNumber="1">
<ArtistPartyReference>P_ARTIST_LUNAWAVE</ArtistPartyReference>
<DisplayArtistRole>MainArtist</DisplayArtistRole>
</DisplayArtist>
<DisplayArtist SequenceNumber="2">
<ArtistPartyReference>P_ARTIST_DJKODA</ArtistPartyReference>
<DisplayArtistRole>FeaturedArtist</DisplayArtistRole>
</DisplayArtist>
<ReleaseLabelReference>P_LABEL_NEONSOUNDS</ReleaseLabelReference>
<PLine>
<Year>2025</Year>
<PLineText>Neon Sounds LLC</PLineText>
</PLine>
<CLine>
<Year>2025</Year>
<CLineText>Neon Sounds LLC</CLineText>
</CLine>
<!-- 4.3.2 uses DisplayGenre instead of Genre -->
<DisplayGenre>
<GenreText>Electronic</GenreText>
<SubGenre>Deep House</SubGenre>
</DisplayGenre>
<OriginalReleaseDate>2025-08-15</OriginalReleaseDate>
<ParentalWarningType>NotExplicit</ParentalWarningType>
<ResourceGroup>
<SequenceNumber>1</SequenceNumber>
<ResourceGroupContentItem>
<SequenceNumber>1</SequenceNumber>
<ReleaseResourceReference>A1</ReleaseResourceReference>
</ResourceGroupContentItem>
<ResourceGroupContentItem>
<SequenceNumber>2</SequenceNumber>
<ReleaseResourceReference>A2</ReleaseResourceReference>
</ResourceGroupContentItem>
</ResourceGroup>
<!-- Release-level AI = highest value across all tracks and artwork -->
<ContainsAI>Partly</ContainsAI>
</Release>
<TrackRelease>
<ReleaseReference>RT1</ReleaseReference>
<ReleaseId>
<ProprietaryId Namespace="PADPIDA2025010100A">labelgrid:track:12345</ProprietaryId>
</ReleaseId>
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Midnight Run</TitleText>
<SubTitle/>
</DisplayTitle>
<ReleaseResourceReference>A1</ReleaseResourceReference>
<ReleaseLabelReference>P_LABEL_NEONSOUNDS</ReleaseLabelReference>
<DisplayGenre>
<GenreText>Electronic</GenreText>
<SubGenre>Deep House</SubGenre>
</DisplayGenre>
<Keywords>electronic deep house chill night</Keywords>
</TrackRelease>
</ReleaseList>
<DealList>
<ReleaseDeal>
<DealReleaseReference>R0</DealReleaseReference>
<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>SubscriptionModel</CommercialModelType>
<UseType>UserMakeAvailableLabelProvided</UseType>
</DealTerms>
</Deal>
<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>AdvertisementSupportedModel</CommercialModelType>
<UseType>UserMakeAvailableLabelProvided</UseType>
</DealTerms>
</Deal>
<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>PayAsYouGoModel</CommercialModelType>
<UseType>PermanentDownload</UseType>
</DealTerms>
</Deal>
</ReleaseDeal>
</DealList>
</NewReleaseMessage>

</détails>

<détails>

Titres multilingues (japonais)

Lorsqu’une sortie a des métadonnées en anglais et en japonais. Tous les éléments DisplayTitleText viennent en premier, puis tous les éléments DisplayTitle. Les lectures phonétiques japonaises utilisent ja-Kana (mappe depuis l’interne ja-Jpan).

<!-- All DisplayTitleText elements first -->
<DisplayTitleText LanguageAndScriptCode="ja">夜明けの歌</DisplayTitleText>
<DisplayTitleText LanguageAndScriptCode="en">Song of Dawn</DisplayTitleText>
<!-- Then all DisplayTitle elements -->
<DisplayTitle LanguageAndScriptCode="ja">
<TitleText>夜明けの歌</TitleText>
<SubTitle/>
</DisplayTitle>
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Song of Dawn</TitleText>
<SubTitle/>
</DisplayTitle>
<!-- Japanese phonetic reading uses ja-Kana -->
<PartyName LanguageAndScriptCode="en">
<FullName>Yuki Tanaka</FullName>
</PartyName>
<PartyName LanguageAndScriptCode="ja-Kana">
<FullName>タナカ ユキ</FullName>
</PartyName>

Points clés :

  • Regroupez tous les éléments DisplayTitleText ensemble, puis tous les éléments DisplayTitle
  • Utilisez ja-Kana pour les lectures phonétiques japonaises (katakana) — ceci est mappe depuis le code interne ja-Jpan
  • Fournissez les titres dans chaque langue prise en charge

</détails>

<détails>

Piste remix avec version du mix

Lorsqu’une piste est un remix, la version du mix va dans SubTitle et le remixer reçoit a la fois un rôle d’affichage FeaturedArtist et un ArtisticRole de Remixer.

<SoundRecording>
<ResourceReference>A1</ResourceReference>
<Type>MusicalWorkSoundRecording</Type>
<SoundRecordingEdition>
<ResourceId>
<ISRC>GBXYZ2500042</ISRC>
</ResourceId>
<PLine>
<Year>2025</Year>
<PLineText>Deep Records</PLineText>
</PLine>
</SoundRecordingEdition>
<!-- DisplayTitleText uses base title only (NOT "Horizon (Koda Extended Mix)") -->
<DisplayTitleText LanguageAndScriptCode="en">Horizon</DisplayTitleText>
<!-- Mix version goes into SubTitle -->
<DisplayTitle LanguageAndScriptCode="en">
<TitleText>Horizon</TitleText>
<SubTitle>Koda Extended Mix</SubTitle>
</DisplayTitle>
<DisplayArtistName ApplicableTerritoryCode="Worldwide">Luna Wave</DisplayArtistName>
<!-- Primary artist -->
<DisplayArtist SequenceNumber="1">
<ArtistPartyReference>P_ARTIST_LUNAWAVE</ArtistPartyReference>
<DisplayArtistRole>MainArtist</DisplayArtistRole>
</DisplayArtist>
<!-- Remixer: uses FeaturedArtist for display + ArtisticRole=Remixer -->
<DisplayArtist SequenceNumber="2">
<ArtistPartyReference>P_ARTIST_DJKODA</ArtistPartyReference>
<DisplayArtistRole>FeaturedArtist</DisplayArtistRole>
<ArtisticRole>Remixer</ArtisticRole>
</DisplayArtist>
<Duration>PT00H06M45S</Duration>
<ParentalWarningType>NotExplicit</ParentalWarningType>
</SoundRecording>

Points clés :

  • DisplayTitleText contient uniquement le titre de base — jamais la forme concaténée comme “Horizon (Koda Extended Mix)”
  • La version du mix va dans SubTitle a l’interieur de DisplayTitle
  • Le remixer a besoin des deux DisplayArtistRole=FeaturedArtist et ArtisticRole=Remixer
  • Si des titres multilingues sont utilises, localisez la version du mix dans chaque langue

</détails>

<détails>

Dolby Atmos (stéréo + immersif)

Lorsqu’une piste a des versions stéréo et Dolby Atmos, le SoundRecording contient deux éléments SoundRecordingEdition — un NonImmersiveEdition et un ImmersiveEdition. Chacun doit avoir son propre ISRC unique.

<SoundRecording>
<ResourceReference>A1</ResourceReference>
<Type>MusicalWorkSoundRecording</Type>
<!-- Stereo edition (marked NonImmersive when Dolby also exists) -->
<SoundRecordingEdition>
<Type>NonImmersiveEdition</Type>
<ResourceId>
<ISRC>USNS12500001</ISRC>
</ResourceId>
<PLine>
<Year>2025</Year>
<PLineText>Neon Sounds LLC</PLineText>
</PLine>
<TechnicalDetails>
<TechnicalResourceDetailsReference>T1</TechnicalResourceDetailsReference>
<DeliveryFile>
<Type>AudioFile</Type>
<AudioCodecType UserDefinedValue="WAV">UserDefined</AudioCodecType>
<NumberOfChannels>2</NumberOfChannels>
<SamplingRate>44100</SamplingRate>
<BitsPerSample>16</BitsPerSample>
<File>
<URI>resources/198765432109_01_01.wav</URI>
<HashSum>
<Algorithm>MD5</Algorithm>
<HashSumValue>d41d8cd98f00b204e9800998ecf8427e</HashSumValue>
</HashSum>
</File>
</DeliveryFile>
</TechnicalDetails>
</SoundRecordingEdition>
<!-- Dolby Atmos / Immersive edition (separate ISRC required) -->
<SoundRecordingEdition>
<Type>ImmersiveEdition</Type>
<ResourceId>
<!-- Must be a different ISRC from the stereo edition -->
<ISRC>USNS12500002</ISRC>
</ResourceId>
<PLine>
<Year>2025</Year>
<PLineText>Neon Sounds LLC</PLineText>
</PLine>
<TechnicalDetails>
<!-- Technical ref suffixed with "I" for immersive -->
<TechnicalResourceDetailsReference>T1I</TechnicalResourceDetailsReference>
<DeliveryFile>
<Type>AudioFile</Type>
<AudioCodecType UserDefinedValue="DolbyAtmos">UserDefined</AudioCodecType>
<NumberOfChannels>8</NumberOfChannels>
<SamplingRate>48000</SamplingRate>
<BitsPerSample>24</BitsPerSample>
<File>
<!-- Dolby file uses "-dolby" suffix -->
<URI>resources/198765432109_01_01-dolby.wav</URI>
<HashSum>
<Algorithm>MD5</Algorithm>
<HashSumValue>f1e2d3c4b5a6f1e2d3c4b5a6f1e2d3c4</HashSumValue>
</HashSum>
</File>
</DeliveryFile>
</TechnicalDetails>
</SoundRecordingEdition>
<DisplayTitleText LanguageAndScriptCode="en">Midnight Run</DisplayTitleText>
<!-- ... titles, artists, contributors, duration, parental warning ... -->
</SoundRecording>

Points clés :

  • L’edition stéréo reçoit <Type>NonImmersiveEdition</Type> uniquement lorsqu’une édition Dolby existe aussi
  • L’edition Dolby utilise <Type>ImmersiveEdition</Type>
  • Chaque édition doit avoir un ISRC different
  • Le TechnicalResourceDetailsReference immersif est suffixe avec I (par exemple, T1I)
  • L’URI du fichier Dolby utilise un suffixe -dolby
  • Dolby Atmos necessite un minimum de 6 canaux (surround 5.1), généralement 8 canaux

</détails>

<détails>

Titulaires de droits d'auteur avec splits par territoire

Plusieurs titulaires de droits d’auteur avec des splits de pourcentage par région. L’élément par défaut est WorkRightsController. Lorsqu’aucun titulaire de droits d’auteur n’est défini, le label est utilise comme contrôleur de droits par défaut a 100 %.

<!-- Copyright owner: 60% worldwide -->
<WorkRightsController>
<RightsControllerPartyReference>P_OWNER_PUBLISHERA</RightsControllerPartyReference>
<RightsControlType>RightsController</RightsControlType>
<RightSharePercentage>60.00</RightSharePercentage>
<Territory>Worldwide</Territory>
</WorkRightsController>
<!-- Copyright owner: 40% worldwide -->
<WorkRightsController>
<RightsControllerPartyReference>P_OWNER_PUBLISHERB</RightsControllerPartyReference>
<RightsControlType>RightsController</RightsControlType>
<RightSharePercentage>40.00</RightSharePercentage>
<Territory>Worldwide</Territory>
</WorkRightsController>

Points clés :

  • Les pourcentages doivent totaliser exactement 100 % par territoire
  • Utilisez Worldwide pour une couverture globale, ou des codes de territoire ISO 3166-1 alpha-2 spécifiques
  • RightSharePercentage utilise deux décimales (par exemple, 60.00)
  • Un point de vente spécifique utilise ResourceRightsController au lieu de WorkRightsController

</détails>

<détails>

Accord spécifique par territoire

Lorsqu’une sortie n’est disponible que dans des pays spécifiques plutôt qu’à l’échelle mondiale :

<Deal>
<DealTerms>
<!-- Available only in US, GB, DE, FR, and AU -->
<TerritoryCode>US</TerritoryCode>
<TerritoryCode>GB</TerritoryCode>
<TerritoryCode>DE</TerritoryCode>
<TerritoryCode>FR</TerritoryCode>
<TerritoryCode>AU</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-08-15</StartDate>
</ValidityPeriod>
<CommercialModelType>SubscriptionModel</CommercialModelType>
<UseType>UserMakeAvailableLabelProvided</UseType>
</DealTerms>
</Deal>

Points clés :

  • Listez plusieurs éléments <TerritoryCode> au sein du même DealTerms
  • Utilisez les codes ISO 3166-1 alpha-2 (par exemple, US, GB, DE)
  • Omettez Worldwide lorsque vous spécifiez des territoires individuels

</détails>

<détails>

Retrait (supprimer une sortie)

Lorsque vous émettez un retrait, les dates de début et de fin dans la période de validité sont définies 48 heures dans le passe :

<Deal>
<DealTerms>
<TerritoryCode>Worldwide</TerritoryCode>
<ValidityPeriod>
<StartDate>2025-06-13</StartDate>
<EndDate>2025-06-13</EndDate>
</ValidityPeriod>
<CommercialModelType>SubscriptionModel</CommercialModelType>
<UseType>UserMakeAvailableLabelProvided</UseType>
</DealTerms>
</Deal>

Points clés :

  • StartDate et EndDate sont définis a la même date, 48 heures dans le passe
  • Cela signale au DSP que la sortie doit être retirée
  • Un accord de retrait est genere pour chaque type de modele commercial

</détails>


Table de correspondance rapide reliant les champs de métadonnées LabelGrid a leur représentation XML DDEX.

Champ LabelGridÉlément XML DDEXNotes
UPC/EAN<ICPN>A l’interieur de <ReleaseId>
ISRC<ISRC>A l’interieur de <ResourceId> dans <SoundRecordingEdition>
ISWC<ISWC>A l’interieur de <WorkId> sur le <SoundRecording> parent (pas dans l’Edition)
Titre<DisplayTitleText> + <DisplayTitle>Un par langue ; DisplayTitleText utilise uniquement le titre de base
Version du mix<SubTitle>A l’interieur de <DisplayTitle>
Artiste principal<DisplayArtistRole>MainArtist</DisplayArtistRole>
Artiste invite<DisplayArtistRole>FeaturedArtist</DisplayArtistRole>
RemixerFeaturedArtist + <ArtisticRole>Remixer</ArtisticRole>Les deux éléments sont nécessaires
Genre<GenreText> + <SubGenre>Mappe aux codes de genre spécifiques au DSP
P-Line<PLine> > <Year> + <PLineText>
C-Line<CLine> > <Year> + <CLineText>
Explicite<ParentalWarningType>Valeurs : NotExplicit, Explicit, ExplicitContentEdited
Date de sortie<OriginalReleaseDate> + <StartDate> de l’accordFormat : YYYY-MM-DD
Territoire<TerritoryCode>Worldwide ou ISO 3166-1 alpha-2
Contributeur (Producer)<Role>StudioProducer</Role>Le nom d’affichage “Producer” correspond au DDEX StudioProducer
Contributeur (autre)<Contributor> > <Role>Codes de rôle DDEX (par exemple, ComposerLyricist, MixingEngineer)
Éditeur<Role>MusicPublisher</Role>A l’interieur de <Contributor>
Fichier audio<File> > <URI>Patron : resources/{UPC}_{disc}_{track}.{ext}
IPI<IpiNameNumber>Complete avec des zéros jusqu’à 11 chiffres
ISNI<ISNI>16 caractères
Pochette<Image> avec <Type>FrontCoverImage</Type>
Type de sortie<ReleaseType>Apparaît avant <ReleaseId> dans ERN 4.3
Numéro de catalogue<CatalogNumber>A l’interieur de <ReleaseId>
Ressources de piste<ResourceGroup> > <ResourceGroupContentItem>Pas ReleaseResourceReferenceList
Durée<Duration>Format ISO 8601 : PT00H04M32S
Langue<LanguageOfPerformance>Code de langue ISO
Mots-cles<Keywords>A l’interieur de <TrackRelease>
Dolby stéréo<Type>NonImmersiveEdition</Type>Présent uniquement lorsque l’edition Dolby existe aussi
Dolby Atmos<Type>ImmersiveEdition</Type>ISRC separe requis ; l’URI du fichier utilise le suffixe -dolby
Titulaire de droits d’auteur<WorkRightsController>Avec <RightSharePercentage> et <Territory>

Ces éléments n’existent que dans 4.3.1 et 4.3.2 (pas dans 4.3.0). Voir Champs de déclaration IA.

Champ LabelGridÉlément XML DDEXNotes
Genre (4.3.1+)<DisplayGenre>Remplace <Genre> ; mêmes enfants GenreText + SubGenre
Role de contributeur (4.3.1+)<Role><Value>…</Value></Role>Forme complexe ; <Value UserDefinedValue="…">UserDefined</Value> pour les rôles non standards
IA sur piste/sortie/visuel<ContainsAI>Valeurs None / Partly / All ; sur SoundRecording, Release et Image
IA par contributeur<AiContribution>Valeurs None / Partly / All ; enfant de <Contributor>, après <Role>
Crédit entièrement genere par IA<SpecialContributor>GenerativeAI</SpecialContributor>Remplace <ContributorPartyReference> (aucun nom de partie)

Utilisez cette liste de vérification pour vérifier votre XML avant soumission :

  • La racine <NewReleaseMessage> inclut le namespace et l’emplacement du schema ERN 4.3
  • <MessageHeader> a un MessageThreadId, MessageId, expéditeur et destinataire valides
  • Toutes les parties (label, artistes, contributeurs, éditeurs) sont définies dans <PartyList>
  • Chaque partie a un <PartyReference> unique
  • Le type de <SoundRecording> est MusicalWorkSoundRecording
  • L’ISRC est a l’interieur de <SoundRecordingEdition> > <ResourceId>
  • L’ISWC (si présent) est sur le <SoundRecording> parent via <WorkId>, pas a l’interieur de l’Edition
  • <DisplayTitleText> contient uniquement le titre de base (sans version du mix)
  • La version du mix (le cas échéant) est dans <SubTitle> a l’interieur de <DisplayTitle>
  • Le remixer a a la fois DisplayArtistRole=FeaturedArtist et ArtisticRole=Remixer
  • L’<URI> du fichier audio suit le patron resources/{UPC}_{disc}_{track}.{ext}
  • La pochette <Image> a <Type>FrontCoverImage</Type>
  • <ReleaseType> vient avant <ReleaseId> dans le <Release> principal
  • L’UPC/EAN est dans <ICPN> a l’interieur de <ReleaseId>
  • Les ressources sont liées via <ResourceGroup> (pas ReleaseResourceReferenceList)
  • Les éditions Dolby Atmos ont des ISRCs séparés des éditions stéréo
  • Les pourcentages de <WorkRightsController> totalisent 100 % par territoire
  • Le <TerritoryCode> de l’accord utilise Worldwide ou des codes ISO 3166-1 alpha-2 valides
  • Toutes les dates utilisent le format YYYY-MM-DD
  • Les accords de retrait ont <StartDate> et <EndDate> définis 48 heures dans le passe

ERN 4.3.1 / 4.3.2 uniquement :

  • Le genre utilise <DisplayGenre> (pas <Genre>)
  • Chaque <Contributor> utilise la forme complexe <Role><Value>…</Value></Role>
  • <ContainsAI> est présent sur chaque <SoundRecording>, la <Release> et l’<Image> de pochette, avec la valeur None, Partly ou All
  • <ContainsAI> sur la piste se place après <ParentalWarningType> ; sur l’image, il se place avant <TechnicalDetails>
  • Chaque <Contributor> porte un <AiContribution> (None / Partly / All) immédiatement après <Role>
  • Les crédits entièrement générés par IA utilisent <SpecialContributor>GenerativeAI</SpecialContributor> a la place de <ContributorPartyReference>

Si vous avez besoin d’assistance pour l’intégration DDEX, contactez notre équipe de support avec vos exigences techniques.

Vous n’utilisez pas encore LabelGrid ?

Tout ce que vous venez de lire est disponible sur notre plateforme.

Découvrez ce que LabelGrid peut faire →