Públicas
Las notaciones públicas son aquellas que están recogidas en algún estándar público. Se pueden identificar mediante un identificador público.
Una notación pública tiene la siguiente sintaxis:
<!NOTATION name PUBLIC "id">
Donde:
name
es el nombre de la notación que queremos definir.PUBLIC
hace referencia a que se trata de una notación pública.id
es el identificador público del sistema encargado de procesar el tipo de fichero.
En la declaración de una notación pública se puede indicar un identificador público estándar como, por ejemplo, JPG 1.0
:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE frutas [
<!ELEMENT frutas (fruta)*>
<!ELEMENT fruta EMPTY>
<!ATTLIST fruta foto ENTITY #REQUIRED>
<!ENTITY manzana SYSTEM "manzana.jpg" NDATA jpg>
<!ENTITY naranja SYSTEM "naranja.jpg" NDATA jpg>
<!NOTATION jpg PUBLIC "JPG 1.0">
]>
<frutas>
<fruta foto="manzana"/>
<fruta foto="naranja"/>
</frutas>
Una sintaxis alternativa de la notación pública es la siguiente:
<!NOTATION name PUBLIC "id" "helper">
En esta declaración, a mayores se añade el nombre de la aplicación en el sistema. Sería la misma que indicaríamos en la notación privada.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE frutas [
<!ELEMENT frutas (fruta)*>
<!ELEMENT fruta EMPTY>
<!ATTLIST fruta foto ENTITY #REQUIRED>
<!ENTITY manzana SYSTEM "manzana.jpg" NDATA jpg>
<!ENTITY naranja SYSTEM "naranja.jpg" NDATA jpg>
<!NOTATION jpg PUBLIC "JPG 1.0" "image/jpeg">
]>
<frutas>
<fruta foto="manzana"/>
<fruta foto="naranja"/>
</frutas>
En la notación del anterior DTD:
- Se ha indicado el identificador público estándar
JPG 1.0
. - Se ha definido la aplicación local
image/jpeg
.
Por último, consideremos el siguiente documento XML:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE documentos [
<!ELEMENT documentos (documento)*>
<!ELEMENT documento (#PCDATA)>
<!ATTLIST documento version NOTATION (html4|html5) #REQUIRED>
<!NOTATION html4 PUBLIC "HTML 4.01">
<!NOTATION html5 PUBLIC "HTML 5">
]>
<documentos>
<documento version="html4"><!-- Código del documento 1. --></documento>
<documento version="html5"><!-- Código del documento 2. --></documento>
<documento version="html5"><!-- Código del documento 3. --></documento>
<documento version="html4"><!-- Código del documento 4. --></documento>
</documentos>
En el código anterior:
- Se indica que los elementos
documento
tienen que incluir obligatoriamente el atributoversion
- El valor del atributo
version
será una notación y pueden tomar como valorhtml4
ohtml5
. - Las notaciones
html4
ohtml5
están definidas y son públicas. HTML 4.01
yHTML 5
son identificadores públicos.