[XML] Communicatie.. 2 kanten op?

Pagina: 1
Acties:

  • Tom
  • Registratie: Juni 1999
  • Niet online
Wij hebben hier een soort testprojectje voor een database, die momenteel alleen op internet staat, te koppelen aan het systeem van de klant. Die klant wil zelf vanalles nog met die gegevens doen. Een XML aanbieden is geen probleem, die genereer ik gewoon via ASP en de klant kan em ophalen en ermee doen wat ie wil (heb al wat dat het netjes te bekijken is via XSL). Maar ze willen ook dingen gaan aanpassen en toevoegen, het liefst ook via XML.

Mijn vraag is hoe je dat het beste kunt aanpakken... dat ie met een XML terugkomt en post op een ASP is mogelijk, maar dan krijg je een vrij complex script die de XML stap voor stap omzet naar één of meerdere queries (sommige XML's bevatten gegevens uit meerdere tabellen), om die vervolgens uit te voeren. Is mogelijk maar wel vrij complex.. dat moet volgens mij makkelijker kunnen.

Ik weet dat SQL Server de mogelijkheid heeft om een XML terug te geven, direct via de query... kan dat ook andersom, dus een XML via de query meegeven die SQL Server verwerkt?

Met andere woorden: hoe kun je zoiets het beste aanpakken? :)

p.s. liefst Microsoft-only oplossingen.. en verder ben ik nog niet zo lang met XML/XSL bezig, het is allemaal nog redelijk nieuw voor me :)

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Ik ben bang dat je het toch moet lopen parsen. Ik heb er nog niet van gehoord

  • ebas
  • Registratie: Maart 2001
  • Laatst online: 20-04-2017

ebas

 

Lijkt me ook het veiligste om zelf te parsen, anders moet je je sql server open gaan zetten. Lijkt me niet zo'n fijn idee, zeker niet als het van MS is.

En zo'n parser schrijven hoeft niet zo'n probleem te zijn denk ik..

  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 09-08 19:19
Kan je niet gewoon een xsl transformatie uitvoeren op je inkomende xml die een sql query oplevert :?

'k zeg niet dat het makkelijk gedaan zou kunnen worden, maar 't lijkt mij de meest voor de hand liggende oplossing.

  • Tom
  • Registratie: Juni 1999
  • Niet online
mja, stel ik krijg deze XML terug (ok, hierin mis je nog ID's ofzo):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?xml version="1.0" encoding="iso-8859-1"?>
<hoofd>
 <onderdeel>
  <naam>Onderdeel Blabla</naam>
  <complex>83: Van Huubstraat e.o.</complex>
  <contactpersoon>
   <naam>Dhr. J. Mensen</naam>
   <adres>Huuwingstraat 15</adres>
   <postcode>1123 GC</postcode>
   <woonplaats>Eindhoven</woonplaats>
   <telefoon>06-1234567</telefoon>
  </contactpersoon>
  <internet>
   <email>burgers.pietje@hetnet.nl</email>
  </internet>
  <samenstelling>
   <lid>
    <naam>Mw. C. Rooien</naam>
    <functie>Penningmeester</functie>
   </lid>
   <lid>
    <naam>Mw. H. Baazelvrouw</naam>
    <functie>Secretaris</functie>
   </lid>
   <lid>
    <naam>Dhr. B. Loes</naam>
    <functie>Lid</functie>
   </lid>
   <lid>
    <naam>Dhr. H. Rhijker</naam>
    <functie>Lid</functie>
   </lid>
  </samenstelling>
 </onderdeel>
</hoofd>

Toch een behoorlijk tijdrovende klus om daar een scriptje voor te gaan schrijven die het parsed (naar een update- en insertquery)...

bijvoorbeeld bij de leden:
hoofd->onderdeel->samenstelling
dat aantal leden wil wel eens verschillen, want elk lid is een apart record uit een andere tabel als de rest.

Zodra er dus ook maar iets aan de database veranderd qua structuur kun je een hoop scripts en parsers gaan aanpassen... lijkt me niet echt het nut van XML?

  • Nielsz
  • Registratie: Maart 2001
  • Niet online
Op maandag 06 mei 2002 15:40 schreef Tom het volgende:
mja, stel ik krijg deze XML terug (ok, hierin mis je nog ID's ofzo):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?xml version="1.0" encoding="iso-8859-1"?>
<hoofd>
 <onderdeel>
  <naam>Onderdeel Blabla</naam>
  <complex>83: Van Huubstraat e.o.</complex>
  <contactpersoon>
   <naam>Dhr. J. Mensen</naam>
   <adres>Huuwingstraat 15</adres>
   <postcode>1123 GC</postcode>
   <woonplaats>Eindhoven</woonplaats>
   <telefoon>06-1234567</telefoon>
  </contactpersoon>
  <internet>
   <email>burgers.pietje@hetnet.nl</email>
  </internet>
  <samenstelling>
   <lid>
    <naam>Mw. C. Rooien</naam>
    <functie>Penningmeester</functie>
   </lid>
   <lid>
    <naam>Mw. H. Baazelvrouw</naam>
    <functie>Secretaris</functie>
   </lid>
   <lid>
    <naam>Dhr. B. Loes</naam>
    <functie>Lid</functie>
   </lid>
   <lid>
    <naam>Dhr. H. Rhijker</naam>
    <functie>Lid</functie>
   </lid>
  </samenstelling>
 </onderdeel>
</hoofd>

Toch een behoorlijk tijdrovende klus om daar een scriptje voor te gaan schrijven die het parsed (naar een update- en insertquery)...

bijvoorbeeld bij de leden:
hoofd->onderdeel->samenstelling
dat aantal leden wil wel eens verschillen, want elk lid is een apart record uit een andere tabel als de rest.

Zodra er dus ook maar iets aan de database veranderd qua structuur kun je een hoop scripts en parsers gaan aanpassen... lijkt me niet echt het nut van XML?
Nu geef je eigenlijk de hele databaseinhoud terug, toch?
De vraag is of je dat wilt (qua hoeveelheid data e.d.)
Dus je kan 2 dingen doen:
a) de hele dbinhoud geven en de database leegmaken en alles opnieuw inserten ;)
b) meegeven welke er gewijzigd moeten worden.
code:
1
2
3
4
5
6
7
8
9
10
11
<update>
   <lid>
    <id>1</id>
    <naam>Mw. C. Rooien</naam>
    <functie>Penningmeester</functie>
   </lid>
</update>
<insert>
    <naam>Mw. C. Rooien</naam>
    <functie>Penningmeester</functie>
</insert>

Verwijderd

ik weet dat je in ASP.NET datasets kan serializen naar xml en weer terug, ik heb er nog niet gedetailleerd naar gekeken, maar wellicht dat je daar wat mee kan :?

  • Tom
  • Registratie: Juni 1999
  • Niet online
hmm aha.. dat scheelt idd al.. :)
mensen die toevallig een soortgelijk systeempje hebben? hoe hebben jullie dat gedaan?

  • Tom
  • Registratie: Juni 1999
  • Niet online
Op maandag 06 mei 2002 16:04 schreef KoekenBoes het volgende:
ik weet dat je in ASP.NET datasets kan serializen naar xml en weer terug, ik heb er nog niet gedetailleerd naar gekeken, maar wellicht dat je daar wat mee kan :?
zoiets had ik ook gehoord ja.. en vooral dat 'terug' zou erg handig zijn :)

Verwijderd

bij nader inzien denk ik niet dat dit erg nuttig voor je is. Je zou je xml structuur uiteraard kunnen omzetten naar een dataset structuur, maar dan nog moet je gaan kijken wat nieuw is, wat aangepast is en wat niet.
Pagina: 1