4D v14.3DOM Insert XML element |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
DOM Insert XML element
|
DOM Insert XML element ( tarfetElementRef ; sourceElementRef ; childIndex ) -> Resultado | ||||||||
Parâmetro | Tipo | Descrição | ||||||
tarfetElementRef | Texto |
![]() |
Elemento de referência do pai XML | |||||
sourceElementRef | Texto |
![]() |
XML element reference to insert | |||||
childIndex | Inteiro longo |
![]() |
Index of child of target element above which the new element must be inserted | |||||
Resultado | Texto |
![]() |
Reference of new XML element | |||||
O comando DOM Insert XML element se utiliza para inserir um novo elemento XML entre os filhos do elemento XML cuja referência for passada no parâmetro refElementTarget.
Passe o elemento a inserir em refElementFonte. Este elemento deve ser passado como a referência de um elemento XML existente em uma árvore DOM.
O parâmetro indiceFilho se pode utilizar para designar ao filho do elemento pai antes do qual se deve inserir o novo elemento. Passe um número de índice neste parâmetro. Se o valor não for válido (por exemplo, não há nenhum elemento filho deste índice), o novo elemento é agregado antes do primeiro filho do elemento pai.
O comando retorna a referência do elemento XML obtido.
Na estrutura abaixo, nós queremos inverter o primeiro e o segundo livro:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><BookCatalog> <Book> <Title>Open Source Web Services</Title> <Author>Collective</Author> <Date>2003</Date> <ISBN>2-7440-1507-5</ISBN> <Publisher>Wrox</Publisher> </Book> <Book> <Title>Building XML Web services</Title> <Author>Scott Short</Author> <Date>2002</Date> <ISBN>2-10-006476-2</ISBN> <Publisher>Microsoft Press</Publisher> </Book> </BookCatalog>
Para fazer isso, simplesmente execute o código abaixo:
C_TEXT($rootRef)
$rootRef:=DOM Parse XML source("") //selection of XML document
If(OK=1)
C_TEXT($newStruct)
$newStruct:=DOM Create XML Ref("BookCatalog")
$bookRef:=DOM Find XML element($rootRef;"/BookCatalog/Book[1]")
$newElementRef:=DOM Append XML element($newStruct;$bookRef)
$bookRef:=DOM Find XML element($rootRef;"/BookCatalog/Book[2]")
C_TEXT($newElementRef)
$newElementRef:=DOM Insert XML element($newStruct;$bookRef;1)
DOM CLOSE XML($newStruct)
DOM CLOSE XML($rootRef)
End if
Produto: 4D
Tema: XML DOM
Número
1083
Criado por: 4D v12
Manual de linguagem 4D ( 4D v12.4)
Manual de linguagem 4D ( 4D v14 R2)
Manual de linguagem 4D ( 4D v14 R3)
Manual de linguagem 4D ( 4D v13.5)
Manual de linguagem 4D ( 4D v14.3)
Manual de linguagem 4D ( 4D v14 R4)