Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: msxml -> datentyp aus schema auslesen

  Alt 22. Nov 2005, 19:21
Grundsätzlich ist es nicht schwer auch ohne direkte Unterstützung des Parsers an die relevanten Informationen im Schema zu gelangen. Bilde den Pfadnamen für Knoten vom Typ ELEMENT und Attribut:

Delphi-Quellcode:
function NodePath(dn: IDOMNode): string;
begin
  if Assigned(dn) then
    case dn.nodeType of
       ELEMENT_NODE:
         Result := NodePath(dn.parentNode) + '/' + dn.nodeName;
       ATTRIBUTE_NODE:
         Result := NodePath(dn.parentNode) + '/@' + dn.nodeName;
       else
         Result := '';
    end
  else Result := '';
end;
Mit diesem Pfadnamen kannst du dann in das Schema eintauchen. Für die Knoten auf dem Pfad lassen sich passende XPath Ausdrücke angeben, mit denen du auf die Schema-Definitionen zugreifen kannst. Oder du stellst fest, dass XDR doch nicht so veraltet ist...

marabu
  Mit Zitat antworten Zitat