XML: Brauche professionelle Hilfe

McTristan

Commodore Special
Mitglied seit
04.12.2001
Beiträge
381
Renomée
0
Standort
Dresden
Hatte bis jetzt ja immer gedacht, ich hätte verstanden wie XML funktioniert. XML-Datei erstellt, Schema erstellt - beides geladen, Daten in der richtigen Struktur gehabt. C# macht das sogar noch ziemlich einfach.

Jetzt habe ich allerdings mit einem sehr komplexen XML-Problem zu tun und steige offensichtlich nicht dahinter wie es funktioniert. Dabei will ich bloss eine riesige XML-Datei in eine relationale DB wie SQL-Server oder mySQL oder meinetwegen auch Access bringen.
Hab die XML-Datei, die beim drüberschauen absolut logisch aufgebaut ist - würde ich mir einen eigenen XML-Parser schreiben, würde ich das vielleicht sogar hinbekommen so einzulesen wie ich es brauche aber das würde ich mir gerne ersparen.

Habe auch entsprechende Schemata-Dateien und habe auch eine Datei gefunden, welche die Einträge der XML-Datei beschreibt. Soweit so gut ...

Wenn ich das Schema laden möchte, kommt es zu einem Fehler in einer eingebundenen Schema-Datei - eine Referenz ist angeblich leer. Ist sie aber nicht wirklich - bin mir aber auch nicht sicher wozu der ganze "Mist" überhaupt gut sein soll.

Es gibt Untertabellen im XML-Format - diese sind ähnlich aufgebaut wie die Hauptdatenbank nur müsste man diese ja auch irgendwie einlesen können ...

Probiere jetzt schon seit knapp 3 Wochen daran herum und außer einen Export nach Access in einer völlig idiotischen Form mit 90% fehlenden Tabellen und ohne Daten habe ich es hinbekommen.

Hab mir Literatur gekauft, im Internet geschmökert aber ich verstehe es einfach nicht. Ich denke mir immer, dass kann doch nicht so schwer sein weil andere Firmen auch mit diesen Dateien umgehen müssen.

Leider kann ich hier nicht so ohne weiteres die Dateien verlinken weil diese vertraulich sind. Wenn mir aber jemand ernsthaft helfen mag, bekommen wir das sicherlich problemlos hin.

Ich will nur wissen ob und wie ich welches Schema benutzen muss um aus den Daten etwas sinnvolles zu machen - ohne Schema meinen nämlich wirklich alle XML-Parser, dass irgendwelche Elemente nicht doppelt definiert werden können.
 
Mag mir niemand helfen? Wie gesagt, genauere Details und Dateien kann ich auf Anfrage rausgeben ...
Wäre lieb wenn sich jemand auskennen würde ... vielleicht übersehe ich ja auch einfach etwas ...
 
Hm, kannst Du die XML-Datei mal in Ausschnitten posten?

Wegen ohne Scheme und nicht doppelt definieren:
Ein XML-Dokument darf nur ein root-Element haben. Oder wo meckert er da rum?
 
http://daris.kbv.de/daris/link.asp?ID=1003743638 findest du die Schnittstellen samt Beschreibung.

Mal abgesehen von den Untertabellen scheinen die Dateien:

keytabs.xsd, go_root.xsd, go_header.xsd, go_body.xsd, ehd_header.xsd und ehd_root.xsd von Bedeutung zu sein. Wobei beinahe alle Dateien die keytabs.xsd inkludieren oder sich von einer der jeweils anderen Klassen ableiten (sie wie ich das verstehe).

In der beiliegenden PDF sind auch alle Datensatztypen der XML-Datei beschrieben und go_root.xsd ist das zu verwendende Schema. Wenn ich das Schema aber laden möchte, erscheint zum Beispiel:

The table (kv) cannot be the child table to itself in nested relations.

An der Stelle hab ich noch gar nicht viel mit der XML-Datei (per PN) gemacht - das Schema scheint so schon nicht zu funktionieren oder ich interpretiere da etwas vollkommen falsch.

Hier mal ein Ausschnitt aus dem Kopf der XML-Datei:

Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<ehd:ehd xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:ehd/go/001" xmlns:ehd="urn:ehd/001" ehd_version="1.20">
	<ehd:header>
		<ehd:id EX="B1F8529C-6EC4-4b72-A167-5595395168A9" RT="74"/>
		<ehd:version_nbr V="3"/>
		<ehd:document_type_cd V="850"/>
		<ehd:service_tmr V="2005-04-01..2005-06-30"/>
		<ehd:origination_dttm V="2005-01-18"/>
		<ehd:provider>
			<ehd:provider.type_cd V="74" S="1.3.5.T.e.s.t" SV="1.0"/>
		</ehd:provider>
		<ehd:interface>
			<ehd:id EX="SDEBM2000plus" RT="GO_ID" RTV="1.0"/>
			<ehd:interface.nm V="Gebührenordnungsstammdatei / Satzart 850"/>
			<ehd:version V="1.01"/>
		</ehd:interface>
	</ehd:header>

Wenn ich versuche die XML-Datei einzeln zu laden bekomme ich:

The table (bedingung) cannot be the child table to itself in nested relations.
 
Zurück
Oben Unten