XML & Visual Basic

13/04/2004 - 16:31 por Montse | Informe spam
Hola a tod@s:

Estoy generando un XML con Visual Basic utilizando
DOMDocument30. Alguien sabe cómo escribir la línea
referente a la DTD? Algo como:

<!DOCTYPE myXML SYSTEM "C:\myDTD.dtd">

Gracias por adelantado.
 

Leer las respuestas

#1 Jose Marcenaro
14/04/2004 - 22:04 | Informe spam
El DocType de un DOMDocument30 es de lectura solamente, es decir que no
puede ser cambiado una vez inicializado el objeto. Esto ocurre tanto si
tratas de asignar la propiedad, como si lo haces en forma indirecta(
insertBefore de un objeto creado mediante
xmlDoc.createNode(NODE_DOCUMENT_TYPE, ...etc))

Una solucion podría ser cargarle al DOMDocument un string de XML conteniendo
la definicion del DOCTYPE, por ejemplo algo así:

Set doc=createObject("MSXML2.DomDocument.3.0")
doc.async = false
doc.loadXML("<!DOCTYPE myXML SYSTEM 'C:\myDTD.dtd'><myXML/>")
If doc.parseError.errorCode <> 0 Then
MsgBox doc.parseError.reason
End If

y recien despues agregar el resto de los elementos deseados dentro del nodo
raiz myXML

Saludos
Jose.


"Montse" escribió en el mensaje
news:1bdd001c42163$fdb36d50$

Hola a :

Estoy generando un XML con Visual Basic utilizando
DOMDocument30. Alguien sabe cómo escribir la línea
referente a la DTD? Algo como:

<!DOCTYPE myXML SYSTEM "C:\myDTD.dtd">

Gracias por adelantado.

Preguntas similares