Conversión dun ficheiro XML para ser ben formado

Aprende a escribir XML ben formado e válido

Ás veces, é máis doado comprender como escribir XML ben formado ao ver un exemplo. O boletín web Writer escríbese mediante unha forma de XML: chámallo AML ou About Language Markup Language (ir figura!). Aínda que este sexa un documento de traballo, en realidade non é un documento XML ben formado ou válido.

Ben formado

Existen algunhas regras específicas para crear un documento XML ben formado:

Só hai dous problemas co documento que o fan non ben formado:

O primeiro que o documento AML necesita é unha declaración de declaración XML.

O outro problema é que non hai ningún elemento que inclúa por completo todos os outros elementos. Para solucionalo, vou engadir un elemento contedor externo:

Facer eses dous cambios simples (e garantir que todos os elementos conteñan só CDATA) converterán o documento non ben formado nun documento ben formado.

Un documento XML válido é validado contra unha definición de tipo de documento (DTD) ou esquema XML. Estas son un conxunto de regras creadas polo desarrollador ou unha organización de patróns que definen a semántica do documento XML. Estes dinlle á computadora que facer co marcado.

No caso do Sobre o Markup Language, dado que este non é un idioma XML estándar, como XHTML ou SMIL, a DTD sería creada polo desarrollador. Esa DTD probablemente estea no mesmo servidor que o documento XML e referenciado na parte superior do documento.

Antes de comezar a desenvolver unha DTD ou esquema para os seus documentos, debe darnos conta de que simplemente por estar ben formado, un documento XML é auto-descritivo e, polo tanto, non precisa dunha DTD.

Por exemplo, co noso ben formado documento AML, hai as seguintes etiquetas:

Se estás familiarizado co boletín web Writer, podes recoñecer as distintas seccións do boletín informativo. Isto fai que sexa moi sinxelo crear novos documentos XML usando o mesmo formato estándar. Sei que sempre poñería o título completo na etiqueta e a primeira sección URL da etiqueta.

DTDs

Se ten que escribir un documento XML válido, xa sexa para empregar os datos ou para procesalo, incluílo no seu documento coa etiqueta. Nesta etiqueta, defina a etiqueta XML base no documento e a localización da DTD (normalmente un URI web). Por exemplo:

Unha cousa boa das declaracións DTD é que pode declarar que unha DTD é local para o sistema onde o documento XML está co "SYSTEM". Tamén pode apuntar a unha DTD pública, como por exemplo un documento HTML 4.0:

Cando usa ambos, está dicindo ao documento que use un DTD específico (o identificador público) e onde atopalo (o identificador do sistema).

Finalmente, pode incluír unha DTD interna directamente no documento, dentro da etiqueta DOCTYPE. Por exemplo (esta non é unha DTD completa para o documento AML):

< ! ENTITY meta_keywords (#PCDATA)> ]>

Esquema XML

Para crear un documento XML válido, tamén pode usar un documento de Esquema XML para definir o seu XML. XML Schema é un documento XML que describe documentos XML. Aprende a escribir un esquema.

Nota

Simplemente apuntando a unha DTD ou un esquema XML non é suficiente. O XML que está no documento debe seguir as regras da DTD ou esquema. Usar un analizador de validación é unha forma sinxela de comprobar que o seu XML está a seguir as regras DTD. Podes atopar moitos destes análogos en liña.