# Llenguatge de definició de descripció

DDL, en anglès Description Definition Language, forma part del nucli de l'estàndard MPEG-7. Proporciona un fonament descriptiu prou sòlid perquè els usuaris puguin crear els seus propis Sistemes de Descripció (DSs) i els Descriptors (Ds). DDL defineix les regles sintàctiques per expressar, combinar, estendre i refinar DSs i Ds.

## Introducció

DDL no és un llenguatge de modelatge, com el Llenguatge Unificat de Modelatge (UML), sinó un llenguatge d'esquema per representar els resultats de dades audiovisuals, que s'ha de conformar als descriptors, la descripció d'esquemes i les descripcions de MPEG-7 vàlids.
Els requisits de MPEG-7 DDL són els següents:
   * Ha de ser capaç d'expressar relacions entre elements dins d'un DS o entre DS, de caràcter estructural, herència, espacial, temporal i conceptual.
   * Ha de proporcionar un model ric d'unions i referències entre una o més descripcions i les dades que descriuen.
   * L'aplicació i la plataforma seran independents.
   * Ha de ser capaç d'especificar els tipus de dades dels descriptors, tant primaris (enters, text, dades, temps) i composts (histogrames, tipus enumerats).

## Història

En 1998 l'equip d'avaluació de MPEG-7 DDL, comparava i avaluava 10 propostes en la convenció MPEG-7 AHG Test and Evaluation. Es va concloure que MPEG-7 DDL havia d'utilitzar la sintaxi XML, sostenir la validació estructural, coaccions relacionals i de tecleig de dades així com l'expressió semàntica.
Encara que cap de les propostes no satisfeia els requeriments, es va decidir basar el DDL en la proposta de DSTC, amb la integració d'idees i components d'altres propostes i contribuents. A més, l'estratègia era continuar controlant i col·laborant amb esforços relacionats en la comunitat W3C, especialment els grups de treball del Schema de XML, XLink, i XPath.
El maig de 1999, XML Schema produïa la primera versió d'un esborrany de treball que constava de dues parts del llenguatge Schema:
    Part 1:
      * Estructures i Part Esquema XML
    Part 2:
      * Tipus de dades
      * Codificació preliminar de les DS Multimèdia
      * Demostració de conveniència com una base per al DDL
Durant la 48a Convenció de MPEG a Vancouver el juliol de 1999 sobre la dependència de MPEG-7, es va prendre la decisió per desenvolupar un llenguatge específic i propietari de MPEG-7 en paral·lel amb els avenços del llenguatge Schema XML. Una nova gramàtica basada en la proposta de DSTC però amb la utilització de terminologia MPEG-7 i amb modificacions per assegurar una senzilla representació, basat en la gramàtica Backus Naur Form (BNF).
En la 51a Convenció de MPEG el març de 2000 es va decidir adoptar el llenguatge Schema de l'XML, amb extensions específiques de MPEG-7 addicionals, com el DDL. Aquesta decisió es prenia en el reconeixement de l'estabilitat creixent i l'adopció estesa esperada de Schema.
Una avaluació detallada de Schema revelava que encara que satisfeia la majoria de requeriments de MPEG-7, havia alguns trets existents que resultaven problemàtics o no se satisfeia. Aquesta és l'explicació a què existeixin certs trets de prioritat alta, que no s'esperen que s'implementin dins de Schema, però han estat implementats, com a extensions específiques de MPEG-7.

## Components lògiques de les que consisteix
### Components Estructurals de Schema

Descripció del llenguatge Schema que pot ser utilitzat per precisar el contingut d'estructura i atributs associats amb els Sistemes de Descripció (DS) i els Descriptors (D). Existeixen tres categories:
    1. Components Primaris
      * Namespaces: s'associen elements i atributs amb Namespaces particulars identificats per una referència URI.
      * declaracions d'elements: permeten en l'aspecte del document, elements amb noms específics i tipus.
      * declaracions d'atributs: permeten en l'aspecte del document, atributs amb noms específics i tipus.
      * definicions de tipus: simple, complex anonimos, derivat
    2. Components Secundaris
      * definicions de grups d'atributs
      * definicions de grups de model
      * definicions de coacció d'identitat
      * declaracions de notació
    3. Components "d'ajut"
      * anotacions
      * grups modèlics
      * partícules
      * caràcters de substitució

### Tipus de dades Schema

S'utilitzen per a precisar els possibles valors de descriptors de MPEG-7 dins de descripcions.
   * Tipus de dades primitives incorporades
   * Tipus de dades derivades incorporades
   * Facetes
   * Llista de tipus de dades
   * Unió de tipus de dades escrites

### Extensions específiques de MPEG-7

Són essencials per satisfer els requeriments de MPEG-7 DDL.
   * Distribució i matriu de tipus de dades
   * Referències escrites
   * Tipus de dades incorporades com enumerats per a MimeType, CountryCode, RegionCode, Character-SetCode, i CurrencyCode i un conjunt de tipus de temps addicionals.

## Vegeu també

* MPEG-7
* XML Schema
* W3C

## Enllaços externs

* World Wide Web Consortium (W3C) (castelà)
* World Wide Web Consortium (W3C) (anglès)
* XML en W3C
* XML Schema en W3C