Thread View: pl.comp.xml
4 messages
4 total messages
Started by Juzek Kocimientka
Fri, 02 May 2008 20:11
Czy się w ogóle da...
Author: Juzek Kocimientka
Date: Fri, 02 May 2008 20:11
Date: Fri, 02 May 2008 20:11
26 lines
1462 bytes
1462 bytes
Próbuje XML'a przepisać do bazy - program wypuszcza eksport w takiej postaci: <source> <a> <b>Ala</b> <c>ma</c> <d>kota</d>a </a> <a> <b>i</b> <c>nie</c> <d>tylko</d>a </a> </source> Niestety zdaje się, że nie kumam w ogóle idei XSLT i zvon.org jakoś nie może mi pomóc - nie wiem na przykład czy jest sens robić zagnieżdżone for-each. Wynik powinno wypluwać w takiej postaci: b,c,d - Ala,ma,kota b,c,d - i,nie,tylko W sensie chodzi o to, żeby XSLT przekształcił XML'a do SQL'a - jak się uda jak powyżej to już nie będzie problemem. Wcześniej robiłem to AWK a właściwie mieszaniną basha i AWK i dalekie to było od automatyzmu.
Re: Czy się w ogóle da...
Author: szomiz
Date: Fri, 02 May 2008 20:31
Date: Fri, 02 May 2008 20:31
21 lines
1718 bytes
1718 bytes
Użytkownik "Juzek Kocimientka" <kocimientka@interia.pl> napisał w wiadomości news:fvfsi5$72i$1@news.onet.pl... > b,c,d - Ala,ma,kota > b,c,d - i,nie,tylko A czy probowales to przeksztalcic _jakkolwiek_? Bo - nie gniewaj sie - ale przedstawiony problem to podstawy podstaw :/ Toz - qrwa - pusta transformacja: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" /> Zwroci wyniki, ktore, po zmianie kolejnosci wezlow w dokumnecie wyjsciowym wskaza odpowiednie kierunki. Nawet jak sie bedzie z for-each korzystac... sz.
Re: Czy się w ogóle da...
Author: Juzek Kocimientka
Date: Fri, 02 May 2008 20:39
Date: Fri, 02 May 2008 20:39
33 lines
1959 bytes
1959 bytes
szomiz pisze: > Użytkownik "Juzek Kocimientka" <kocimientka@interia.pl> napisał w wiadomości > news:fvfsi5$72i$1@news.onet.pl... > >> b,c,d - Ala,ma,kota >> b,c,d - i,nie,tylko > > A czy probowales to przeksztalcic _jakkolwiek_? O dżizas - na 1000 różnych sposobów :D Najbardziej mnie wkurzyło, że value potrafi zwrócić wiersz a czasem wszystko. To musi jakoś inaczej działać jak normalny program ;) > > Bo - nie gniewaj sie - ale przedstawiony problem to podstawy podstaw :/ Uff... czyli jest szansa :D > Toz - qrwa - pusta transformacja: > > <xsl:stylesheet version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" /> > > Zwroci wyniki, ktore, po zmianie kolejnosci wezlow w dokumnecie wyjsciowym > wskaza odpowiednie kierunki. > > Nawet jak sie bedzie z for-each korzystac... > > sz. No to zaraz wyślę jak to rozwiązałem to przynajmniej poprawię wszystkim humor :D To na pewno są podstawy podstaw ale ja tego w ogóle nie czuję.
Re: Czy się w ogóle da...
Author: Juzek Kocimientka
Date: Fri, 02 May 2008 20:47
Date: Fri, 02 May 2008 20:47
88 lines
3923 bytes
3923 bytes
Dało się :)
Poprzednio uprościłem przykład żeby nie mącić. To jest baza programu do
obsługi nieruchomości i ma być automatycznie eksportowana na usługi kodu
PHP - prosto do MySQL'a.
Sama baza ma taką postać:
<?xml version="1.0" encoding="windows-1250"?>
<gazeta>
<rynek_wtorny>r
<rekord>t
<typ_transakcji>oferta sprzedaży</typ_transakcji>
<typ_nieruchomosci>mieszkanie</typ_nieruchomosci>
<ogloszeniodawca>agencja</ogloszeniodawca>
<status>n</status>
</rekord>
<rekord>
<typ_transakcji>oferta sprzedaży</typ_transakcji>
<typ_nieruchomosci>mieszkanie</typ_nieruchomosci>
<ogloszeniodawca>agencja</ogloszeniodawca>
<status>n</status>
</rekord>
<rekord>
<typ_transakcji>oferta sprzedaży</typ_transakcji>
<typ_nieruchomosci>mieszkanie</typ_nieruchomosci>
<ogloszeniodawca>agencja</ogloszeniodawca>
<status>n</status>
</rekord>
<rekord>
<typ_transakcji>oferta sprzedaży</typ_transakcji>
<typ_nieruchomosci>mieszkanie</typ_nieruchomosci>
<ogloszeniodawca>agencja</ogloszeniodawca>
<status>n</status>
<zdjecie1>13_2.jpg</zdjecie1>
<zdjecie2>13_3.jpg</zdjecie2>
<zdjecie3>13_4.jpg</zdjecie3>
</rekord>
</rynek_wtorny>
<grunty>
<rekord>
<typ_transakcji>oferta sprzedaży</typ_transakcji>
<typ_gruntu>budowlany</typ_gruntu>
</rekord>
<rekord>
<typ_transakcji>oferta sprzedaży</typ_transakcji>
<typ_gruntu>budowlany</typ_gruntu>
<ogloszeniodawca>agencja</ogloszeniodawca>
</rekord>
</grunty>
<rynek_komercyjny>a</rynek_komercyjny>
<info>
<caly_eksport>1</caly_eksport>
</info>
</gazeta>
Cały mój problem polegał na tym, że jakbym nie kombinował to nie chciał
wyświetlać naprzemiennie nazw węzłów i ich zawartości <rekord></rekord>.
Walił całość.
A tak to rozwiązałem chociaż puszczam to tylko dlatego, żebyś nie
myślał, że chcę pasożytować na czyjejś pracy. Ale albo za stary jestem
albo za głupi (co bardziej prawdopodobne) i po prostu nie kumam XSLT.
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="UTF-8" />
<xsl:template match="/">
<xsl:for-each select="/gazeta/rynek_wtorny/rekord">
<xsl:for-each select="*">
<xsl:value-of select="name()"/>
</xsl:for-each>
<xsl:for-each select="*">
<xsl:value-of select="."/>
</xsl:for-each>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
No jeszcze to nie jest do końca to (a jak ktoś zna XSLT to pewnie będzie
chiał mnie zastrzelić) ale robi to czego się obawiałem, że robić nie
będzie. Trzy dni ślęczenia - to musi być wada mózgu :D
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads