Diferencia entre revisiones de «Usuario:Lmorillas/modulo lenguajes de marcas/xml/dtd»
De WikiEducator
(Página creada con '{{MiTitulo| DTD}} == DTD == === Funciones de un DTD ===* * Validar documentos * Dar valores por defecto a atributos que no existen * Declarar y reemplazar entidades * Documentar…') |
|||
Línea 1: | Línea 1: | ||
{{MiTitulo| DTD}} | {{MiTitulo| DTD}} | ||
== DTD == | == DTD == | ||
− | === Funciones de un DTD === | + | === Funciones de un DTD === |
* Validar documentos | * Validar documentos | ||
* Dar valores por defecto a atributos que no existen | * Dar valores por defecto a atributos que no existen | ||
Línea 47: | Línea 47: | ||
<!ELEMENT name (child+)> | <!ELEMENT name (child+)> | ||
Se pueden combinar las posibilidades | Se pueden combinar las posibilidades | ||
+ | * Elección entre secuencias: | ||
+ | ((a, b) | (c, d) | ||
+ | * Secuencia de opciones | ||
+ | ((a | b), (c | d)) | ||
+ | * Secuencia opcional | ||
+ | (a, b, c)? | ||
+ | No se puede mezclar , y | en una lista. Usa paréntesis para desambiguar. | ||
+ | |||
+ | === Restricciones === | ||
+ | Un modelo mixto no puede restringir cuántas veces y el orden en que aparecen los hijos. Sólo los elementos permitidos. | ||
+ | • An element-only content model requires | ||
+ | that each child element in the instance | ||
+ | match exactly one part of the content | ||
+ | model | ||
+ | – (A?, A?) is not a legal content model |
Revisión de 05:13 12 ene 2012
Contenido
DTD
Funciones de un DTD
- Validar documentos
- Dar valores por defecto a atributos que no existen
- Declarar y reemplazar entidades
- Documentar los documentos.
¿Cómo se introduce?
- declaración DOCTYPE
¿Dónde?
- Pueden aparecer dentro del documento xml, fuera o en ambos sitios.
- Dentro del doc:
<!DOCTYPE root ... >
- Fuera del documento:
<!DOCTYPE root SYSTEM "http://...">
- Primero lee el externo, depués el interno
Declaraciones ELEMENT
- Especifican qué pueden contener los elementos
- No soporte directo de namespaces
- Los elementos pueden contener:
- Nada
<!ELEMENT name EMPTY>
- Texto
<!ELEMENT name (#PCDATA)>
- Texto y nuevos elementos (hijos)
<!ELEMENT name (#PCDATA|elem1|elem2|...)*>
- Hijos
<!ELEMENT name (elem1|elem2|...)*>
Sintaxis de declaraciones ELEMENT
- Secuencia de hijos
<!ELEMENT name (ch1, ch2)>
- Elección entre hijos
<!ELEMENT name (ch1|ch2)>
- Secuencia de hijos opcionales
<!ELEMENT name (ch?, ch2?, ch3?)>
- Cero o más ...
<!ELEMENT name (child*)>
- Uno o más
<!ELEMENT name (child+)>
Se pueden combinar las posibilidades
- Elección entre secuencias:
((a, b) | (c, d)
- Secuencia de opciones
((a | b), (c | d))
- Secuencia opcional
(a, b, c)?
No se puede mezclar , y | en una lista. Usa paréntesis para desambiguar.
Restricciones
Un modelo mixto no puede restringir cuántas veces y el orden en que aparecen los hijos. Sólo los elementos permitidos. • An element-only content model requires that each child element in the instance match exactly one part of the content model – (A?, A?) is not a legal content model