🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.xml
Article #9863

Re: Czy się w ogóle da...

#9863
From: Juzek Kocimientka
Date: Fri, 02 May 2008 20:47
88 lines
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
Technical Details
Message-ID: <fvfumi$dmg$1@news.onet.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mail
References: <fvfsi5$72i$1@news.onet.pl> <fvftos$6fv$1@atlantis.news.neostrada.pl> <fvfu6m$bs3$1@news.onet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mail
From: Juzek Kocimientka <kocimientka@interia.pl>
Newsgroups: pl.comp.xml
Subject: Re: Czy się w ogóle da...
Date: Fri, 02 May 2008 22:47:59 +0200
Organization: Onet.pl
Lines: 88
Message-ID: <fvfumi$dmg$1@news.onet.pl>
References: <fvfsi5$72i$1@news.onet.pl> <fvftos$6fv$1@atlantis.news.neostrada.pl> <fvfu6m$bs3$1@news.onet.pl>
NNTP-Posting-Host: 137-dzi-27.acn.waw.pl
Mime-Version: 1.0
X-Trace: news.onet.pl 1209761298 14032 85.222.30.137 (2 May 2008 20:48:18 GMT)
X-Complaints-To: usenet@news.onet.pl
NNTP-Posting-Date: Fri, 2 May 2008 20:48:18 +0000 (UTC)
X-Sender: 4+g0iIzrO9riwrQ5TpANC6VAczJVXDfw
In-Reply-To: <fvfu6m$bs3$1@news.onet.pl>
User-Agent: Thunderbird 2.0.0.12 (Windows/20080213)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit