Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com

Página Inicial

 
4D v20 R7
DOM Append XML child node

DOM Append XML child node 


 

DOM Append XML child node ( refElemento ; tipoFilho ; valorFilho ) -> Resultado 
Parâmetro Tipo   Descrição
refElemento  Texto in elemento de referência XML
tipoFilho  Inteiro longo in Tipo de filho a anexar
valorFilho  Texto, BLOB in Texto ou variável (texto ou BLOB) cujo valor deve ser inserido como um nodo filho
Resultado  Texto in Refência do elemento filho XML

O comando DOM Append XML child node se utiliza para anexar o valor valorFilho ao nodo XML designado por refElement.

O tipo de nodo criado é especificado pelo parâmetro tipoFilho. Neste parâmetro se pode passar uma das seguintes constantes, do tema "XML":

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


Em valorFilho, passe os dados a inserir. Passe uma string ou uma variável 4D (string ou BLOB). O conteúdo deste parâmetro sempre será convertido em texto.

Nota: se o parâmetro refElement determina o nodo Document (nodo de nivel superior), o comando insere um nodo "Doctype"  antes de qualquer outro nodo. O mesmo ocurre com as instruções de processamento e os comentários, que sempre são inseridos antes do nodo raiz (mas depois do nodo Doctype).

Adição de um 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>Olá<br/>Nova<br/>York</myElement>

Adição de um nodo de tipo instrução de processo:

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

Resultado (inserido antes do primeiro elemento):

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

Adição de um nodo de tipo comentário:

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

Resultado:

<!--Olá mundo-->

Adição de um nodo de tipo CDATA:

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

Resultado:

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

Adição ou substituição de um nodo de tipo declaração Doctype:

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

Resultado (insido antes do primeiro elemento):

<!DOCTYPE Books SYSTEM  "Book.DTD">

Adição ou substituição de um nodo de tipo Element.

  • se o parâmetro valorHijo é um fragmento XML, se insere como nodos filhos:
     Reference:=DOM Append XML child node(refElement;XML ELEMENT;"<child>simon</child><child>eva</child>")

    Resultado:
    <parent>
        <child>simon</child>
        <child>eva</child>
    </parent>
  • do contrário, se adicionar um novo elemento filho vazio:
     Reference:=DOM Append XML child node(elementRef;XML ELEMENT;"tbreak")

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

Se o conteúdo de valorFilho não é válido, se devolve um erro.



Ver também 

DOM GET XML CHILD NODES
DOM Get XML document ref

 
PROPRIEDADES 

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

This command can be run in preemptive processes

 
CONTEÚDO DA PÁGINA 
 
HISTÓRIA 

Criado por: 4D v12

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v20 R7)