4D v16.3

DOM Append XML child node

Inicio

 
4D v16.3
DOM Append XML child node

DOM Append XML child node 


 

DOM Append XML child node ( refElement ; tipoHijo ; valorHijo ) -> Resultado 
Parámetro Tipo   Descripción
refElement  Texto in Referencia del elemento XML
tipoHijo  Entero largo in Tipo de hijo a añadir
valorHijo  Texto, BLOB in Texto o variable (Texto o BLOB)cuyo valor debe insertarse como nodo hijo
Resultado  Texto in Referencia del elemento XML hijo

El comando DOM Append XML child node se utiliza para anexar el valor valorHijo al nodo XML designado por refElement.

El tipo de nodo creado es especificado por el parámetro tipoHijo. En este parámetro se puede pasar una de las siguientes constantes, del tema "":

Constante Tipo Valor
XML CDATA Entero largo 7
XML comment Entero largo 2
XML DATA Entero largo 6
XML DOCTYPE Entero largo 10
XML ELEMENT Entero largo 11
XML processing instruction Entero largo 3


En valorHijo, pase los datos a insertar. Pase una cadena o una variable 4D (cadena o BLOB). El contenido de este parámetro siempre se convertirá en texto.

Nota: si el parámetro refElement designa el nodo Document (nodo de nivel superior), el comando inserta un nodo "Doctype"  antes de cualquier otro nodo. Lo mismo ocurre con las instrucciones de procesamiento y los comentarios, que siempre se insertan antes del nodo raíz (pero después del nodo Doctype).

Adición de un nodo de tipo texto:

 Reference:=DOM Create XML element(refElement;"myElement")
 DOM SET XML ELEMENT VALUE(Reference;"Hola")
 temp:=DOM Create XML element(Reference;"br")
 temp:=DOM Append XML child node(Reference;XML DATA;"Nueva")
 temp:=DOM Create XML element(Reference;"br")
 temp:=DOM Append XML child node(Reference;XML DATA;"York")

Resultado:

<myElement>Hola<br/>Nueva<br/>York</myElement>

Adición de un nodo de tipo instrucción de proceso:

 $Txt_instruction:="xml-stylesheet type = \"text/xsl\" href=\"style.xsl\""
 Reference:=DOM Append XML child node(elementRef;XML Processing Instruction;$Txt_instruction)

Resultado (insertado antes del primer elemento):

<?xml-stylesheet type="text/xsl" href="style.xsl"?>

Adición de un nodo de tipo comentario:

 Reference:=DOM Append XML child node(elementRef;XML Comment;"Hola mundo")

Resultado:

<!--Hola mundo-->

Adición de un nodo de tipo CDATA:

 Reference:=DOM Append XML child node(elementRef;XML CDATA;"12 < 18")

Resultado:

<element><![CDATA[12 < 18]]></element>

Adición o reemplazo de un nodo de tipo declaración Doctype:

 Reference:=DOM Append XML child node(elementRef;XML DOCTYPE;"Books SYSTEM \"Book.DTD\"")

Resultado (insertado antes del primer elemento):

<!DOCTYPE Books SYSTEM  "Book.DTD">

 

Adición o reemplazo de un nodo de tipo Element.

  • si el parámetro valorHijo es un fragmento XML, se inserta como nodos hijos:
     Reference:=DOM Append XML child node(refElement;XML ELEMENT;"<child>simon</child><child>eva</child>")

    Resultado:
    <parent>
        <child>simon</child>
        <child>eva</child>
    </parent>
  • de lo contrario, se añade un nuevo elemento hijo vacío:
     Reference:=DOM Append XML child node(elementRef;XML ELEMENT;"tbreak")

    Resultado:
    <parent>
         <tbreak/>
     </parent>

Si el contenido de valorHijo no es valido, se devuelve un error.



Ver también 

DOM GET XML CHILD NODES
DOM Get XML document ref

 
PROPIEDADES 

Producto: 4D
Tema: XML DOM
Número 1080

This command can be run in preemptive processes

 
HISTORIA 

Creado por: 4D v12

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v16)
Manual de lenguaje 4D ( 4D v16.1)
Manual de lenguaje 4D ( 4D v16.2)
Manual de lenguaje 4D ( 4D v16.3)