Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
DOM Parse XML variable
|
DOM Parse XML variable ( variable {; validacion {; dtd | esquema}} ) -> Resultado | ||||||||
Parámetro | Tipo | Descripción | ||||||
variable | BLOB, Texto |
![]() |
Nombre de la variable | |||||
validacion | Booleano |
![]() |
True = Validación por la DTD, False = No validacion | |||||
dtd | esquema | Cadena |
![]() |
Ubicación de la DTD o del esquema XML | |||||
Resultado | Cadena |
![]() |
Referencia del elemento XML | |||||
El comando DOM Parse XML variable analiza una variable de tipo BLOB o Texto que contiene una estructura XML y devuelve una referencia para esta variable. El comando puede validar o no la estructura vía un DTD o un esquema XML (XML Schema Definition (XSD) document).
Pase en el parámetro variable el nombre de la variable BLOB o el Texto que contiene el objeto XML.
El parámetro booleano validacion permite indicar si validar o no la estructura utilizando la DTD.
Si pasa True en validacion y omite el tercer parámetro, el comando intentará validar la estructura XML vía una referencia DTD o XSD que se encuentra en la estructura misma. La validación puede ser indirecta: si la estructura contiene una referencia a un archivo DTD que contiene a su vez una referencia a un archivo XSD, el comando intentará efectuar ambas validaciones.
El tercer parámetro dtd, permite indicar una DTD específica o un esquema XML para el análisis del documento. Si utiliza este parámetro, el comando no tendrá en cuenta la DTD referenciada en el documento XML.
Validación por DTD
Hay dos formas de especificar un DTD:
Si no se puede efectuar la validación (no DTD o XSD, URL incorrecto, etc.), se genera un error. La variable sistema Error indica el número del error. Puede interceptar este error con la ayuda de un método instalado por el comando ON ERR CALL.
El comando devuelve una cadena de caracteres (RefElement) que constituye la referencia en memoria de la estructura virtual de la variable. Esta referencia debe utilizarse con otros comandos de análisis XML.
Importante: una vez no lo necesite más, recuerde llamar al comando DOM CLOSE XML con esta referencia para liberar memoria.
Apertura sin validación de un objeto XML ubicado en una variable Texto 4D:
C_TEXT(myTextVar)
C_TIME(vDoc)
C_TEXT($xml_Struct_Ref)
vDoc:=Open document("Document.xml")
If(OK=1)
RECEIVE PACKET(vDoc;myTextVar;32000)
CLOSE DOCUMENT(vDoc)
$xml_Struct_Ref:=DOM Parse XML variable(myTextVar)
End if
Apertura sin validación de un documento XML ubicado en un BLOB 4D:
C_BLOB(myBlobVar)
C_TEXT($ref_XML_Struct)
DOCUMENT TO BLOB(c\\import.xml;myBlobVar)
$xml_Struct_Ref:=DOM Parse XML variable(myBlobVar)
Si el comando se ejecuta correctamente, la variable sistema OK toma el valor 1. Si ocurre un error, toma el valor 0.
Producto: 4D
Tema: XML DOM
Número
720
Modificado: 4D 2004
Modificado: 4D v11 SQL
Manual de lenguaje 4D ( 4D v20 R7)