Hi Zusammen,
ja x2 macht das hier scheinbar besser.
Musste nur
Jedi aus dem Source rauswerfen, da ich in der Firma kein
Jedi installiert habe
(und auch nicht einfach installieren darf)
Dafür darfst du gerne einen PR machen, das war von mir damals ein Schnellschuss um andere Drittanbieter-Komponenten zu entfernen.
Ich hätte es gerne auch in Plain Delphi
VCL
Was ich nicht verstanden hatte: Es gibt in der erzeugten
XML einen Standard-Namespace (finde den in der kompletten
PAS-Datei nicht, wo der gesetzt werden soll), der hier gesetzt werden muss.
Delphi-Quellcode:
var
node : IXmlNode;
const
sCurrNodeName = 'Person';
sNamespaceURI = 'http://www.test.de/versteckter/namespace/v.1.1';
begin
node := ChildNodes.FindNode(sCurrNodeName, sNamespaceURI);
if (node = nil) then
begin
//node := InternalAddChild(nil, sCurrNodeName, sNamespaceURI, -1);
node := AddChild(sCurrNodeName, sNamespaceURI);
end;
Result := TXMLPerson.CreateHosted(node as TXmlNode);
end;
Damit ginge es dann auch bei mir.
Das müsste man sich im Detail anschauen, wie deine XSD(s) aussehen und wie die zu erwartende
XML Datei auszusehen hat.
Ggf. stimmt auch das Schema nicht 100%ig. Aber ein bisschen Detailarbeit im Nachhinein hat man immer.
Wer sucht, der findet. Wer länger sucht, findet mehr.