Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-02-2007
mia mia is offline
Registrado
 
Registrado: jul 2005
Posts: 6
Poder: 0
mia Va por buen camino
Question Attributos fantasmas en nodos XML

Hola a tod@s,
(working with BDS 2006 Upg1, XPProf SP2, P4 1GBRAM.)

Tengo problemas con un documento XML que estoy contruyendo.
Hasta ahora nunca habia tenido problemas, pero ahora me esta apareciendo algo un poco raro.
Al ponerle el atributo mslns en el nodo principal del documento, a la que añado más nodos a ese nodo, automaticamente a los nuevos nodos le inserta ese artibuto, aunque en blanco.

Código:
----------------------------------------------------------
Código Delphi [-]
  xmlDoc := TXMLDocument.Create(tblConfig.Owner);
  try
    xmlDoc.Version = '1.0';
    xmlDoc.Active := TRUE;
    xmlElement := xmlDoc.CreateNode('FunctionCallRequest ');
    xmlElement.SetAttribute('xmlns:xsd','String1');
    xmlElement.SetAttribute('xmlns:xsi','String2');
    xmlElement.SetAttribute('xmlns','String3');
    xmlDoc.DocumentElement := xmlElement;
    xmlNode := xmlElement.AddChild('TimeStamp');
    ...
----------------------------------------------------
The result:
-----------------------------------------------------
<FunctionCallRequest xmlns:xsd="String1" xmlns:xsi="String2" xmlns="String3">
<Timestamp xmlns="">
....
---------------------------------------------------
<Timestamp xmlns=""> es el problema, ya que debería ser <TimeStamp>

¿Alguien sabe a que puede ser debido esto?
Muchas gracias.

Última edición por roman fecha: 11-05-2007 a las 19:02:33.
Responder Con Cita
  #2  
Antiguo 16-02-2007
mia mia is offline
Registrado
 
Registrado: jul 2005
Posts: 6
Poder: 0
mia Va por buen camino
Arreglado

Hola de nuevo,
Ya está arreglado. Tenia dos problemas. El primero era establecer los parametros de NameSpace de la forma:

Código Delphi [-]
xmlElement.SetAttribute('xmlns:xsd','String1');
xmlElement.SetAttribute('xmlns:xsi','String2');
xmlElement.SetAttribute('xmlns','String3');

cuando se deberia hacer así:

Código Delphi [-]
xmlElement.DeclareNamespace('xsd', 'String1');
xmlElement.DeclareNamespace('xsi', 'String2');
xmlElement.DeclareNamespace('', 'String3');

El siguiente problema era que si se crean nodos "hijos" sobre un elemento (o nodo) de un NameSpace, los nodos hijos se deberian crear en el mismo NameSpace por lo que la creación de los nodos hijos se debería hacer de la siguiente forma:

Código Delphi [-]
var
  xmlDoc: TXMLDocument;
  xmlElement,
  xmlNode,
  xmlNode1 : IXMLNode;
  strNameSpace: string;
begin
  xmlDoc := TXMLDocument.Create(Self.Owner);
  try
    xmlDoc.Active := TRUE;
    xmlDoc.Version := '1.0';
    xmlElement := xmlDoc.CreateNode(xmlTC_FunctionCallRequest);
    xmlElement.DeclareNamespace('xsd', 'myXSD');
    xmlElement.DeclareNamespace('xsi', 'myXSI');
    xmlElement.DeclareNamespace('', 'myNameSpace');
    xmlDoc.DocumentElement := xmlElement;
    // Creación de los nodos "hijos" en el mismo namespace
    xmlNode := xmlElement.AddChild('Nodo_1','myNameSpace');  
    xmlNode1 := xmlElement.AddChild('Nodo_2','myNameSpace');
...

Bueno, al siguiente que le pase ya sabe como resolverlo...
saludos...

Última edición por roman fecha: 11-05-2007 a las 19:03:32.
Responder Con Cita
  #3  
Antiguo 11-05-2007
Avatar de juangiron
juangiron juangiron is offline
Miembro
 
Registrado: ene 2007
Posts: 26
Poder: 0
juangiron Va por buen camino
Ejemplo

hola necesito un ejemplo basico para crear un documento XML en delphi
algo asi

<xml version=''1.0">
<carro>
<placa>aum333<placa/>
<modelo>95<modelo/>
<carro/>


gracias
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problemas con el TreeView y los nodos Gustavo Gowdak OOP 5 23-09-2007 17:44:19
La UE busca fantasmas en el nuevo Windows marcoszorrilla Noticias 2 02-04-2006 21:51:27
Nodos borrados del administrador corporativo HombreSigma MS SQL Server 5 10-11-2005 18:13:06
Reccorrer Entre Nodos AGAG4 Varios 2 04-10-2004 19:26:45
TreeView y colores para los nodos gqxns Varios 2 20-01-2004 12:28:31


La franja horaria es GMT +2. Ahora son las 23:49:00.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi