19 Información de referéncia SGML para HTML

Índice

  1. Validación de documentos
  2. Catálogo SGML de exemplo

As seccións que seguen conteñen a definición formal de SGML da HTML 4. Inclue a declaración SGML , a Definición de tipo de documento (DTD), e as referéncias a entidades-carácter , asi como un catálogo SGML de exemplo .

Estes ficheiros tamén están disponíbeis en formato ASCII tal e como se listan abaixo:

DTD por omisión (Default DTD):
strict.dtd
DTD transicional (Transitional DTD):
loose.dtd
DTD para grupos de molduras (Frameset DTD):
frameset.dtd
Declaración SGML:
HTML4.decl
Ficheiros de definición de entidades:
HTMLspecial.ent
HTMLsymbol.ent
HTMLlat1.ent
Un catálogo de exemplo:
HTML4.cat

19.1 Validación de documentos

Moitos autores recorren a un conxunto limitado de navegadores cando comproban os documentos que producen, asumindo que se os navegadores poden mostrar os seus documentos, estes son válidos. Infortunadamente, este é un meio pouco efectivo de verificar a validade dun documento, precisamente porque os navegadores están deseñados para tratar con documentos non válidos mostrando-os o mellor que poden para evitaren frustrar os usuários.

Para unha mellor validación, deberia comprobar o seu documento nun procesador de SGML, tal e como nsgmls (ver [SP] ), para verificar que os documentos HTML son conformes coa DTD da HTML 4. Se a declaración do tipo de documento do seu documento inclue un URI e o seu procesador de SGML aceitar este tipo de identificador de sistema, consultará a DTD directamente. De non ser asi, pode usar o seguinte catálogo de SGML de exemplo. Asume que a DTD foi gravada no ficheiro "strict.dtd" e que as entidades están nos ficheiros "HTMLlat1.ent", "HTMLsymbol.ent" e "HTMLspecial.ent". En calquer caso, asegura-se de que o seu procesador de SGML pode tratar [ISO10646]. Vexa a documentación da sua ferramenta de validación para máis detalles.

Teña presente que tal validación, ainda que útil e moi recomendada, non garante que un documento sexa plenamente conforme coa especificación da HTML 4. Isto debe-se a que un procesador de SGML confia exclusivamente na DTD de SGML que se lle dá, que non expresa todo os aspeitos dun documento HTML 4 válido. En concreto, un procesador de SGML asegura-se de que a sintaxe, a estrutura, a lista de elementos e os seus atributos son válidos. Mais, por exemplo, non pode detectar erros como dar-lle ao atributo width dun elemento IMG un valor non válido (isto é, "calquer" ou "12.5"). Ainda que a especificación limita o valor deste atributo a "un inteiro que represente unha lonxitude en pontos", a DTD só define que deba ser CDATA , o que, con efeito, permite calquer valor. Só un programa especializado poderia capturar a especificación completa da HTML 4.

Apesar de todo, este tipo de validación é moi recomendada, xa que permite a detección dunha grande cantidade de erros que fan que os documentos non sexan válidos.

19.2 Catálogo SGML de exemplo

Este catálogo inclui a directiva de anulación ("override") para asegurar-se de que a aplicación que o procese - tal e como nsgmls- use identificadores públicos de preferéncia aos identificadores de sistema. Isto significa que os usuários non teñen que estar conectados à Rede para recuperar identificadores de sistema baseados en URI.

OVERRIDE YES

PUBLIC "-//W3C//DTD HTML 4.01//EN" strict.dtd
PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" loose.dtd
PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" frameset.dtd
PUBLIC "-//W3C//ENTITIES Latin1//EN//HTML" HTMLlat1.ent
PUBLIC "-//W3C//ENTITIES Special//EN//HTML" HTMLspecial.ent
PUBLIC "-//W3C//ENTITIES Symbols//EN//HTML" HTMLsymbol.ent