abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 18:11 | IT novinky

    Dnes a zítra probíhá vývojářská konference Google I/O 2025. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Komunita

    V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).

    Ladislav Hagara | Komentářů: 0
    včera 15:00 | Nová verze

    Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 4
    včera 12:22 | Pozvánky

    Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.

    jose17 | Komentářů: 0
    včera 04:44 | IT novinky

    Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevily v únicích dat a případně se nechat na další úniky upozorňovat.

    Ladislav Hagara | Komentářů: 16
    19.5. 23:22 | Zajímavý software

    Microsoft představil open source textový editor Edit bežící v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 7
    19.5. 22:22 | Zajímavý software

    V Seattlu a také online probíhá konference Microsoft Build 2025. Microsoft představuje své novinky. Windows Subsystem for Linux je nově open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 1
    19.5. 13:11 | Zajímavý článek

    Z příspěvku Turris Sentinel – co přinesl rok 2024 na blogu CZ.NIC: "Za poslední rok (únor 2024 – únor 2025) jsme zachytili 8,3 miliardy incidentů a to z 232 zemí a z jejich závislých území. Tyto útoky přišly od 6,2 milionu útočníků (respektive unikátních adres). SMTP minipot je stále nejlákavější pastí, zhruba 79 % útoků bylo směřováno na tento minipot, 16 % útoků směřovalo na minipot Telnet, 3 % útoků směřovaly na minipot HTTP a 2 % na minipot FTP. Dále jsme zaznamenali 3,2 milionu unikátních hesel a 318 tisíc unikátních loginů, které útočníci zkoušeli."

    Ladislav Hagara | Komentářů: 1
    19.5. 12:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 3.0.4 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    19.5. 12:33 | Nová verze

    Byla vydána nová stabilní verze 7.4 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 136. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (62%)
     (23%)
     (8%)
     (2%)
     (0%)
     (0%)
     (6%)
    Celkem 52 hlasů
     Komentářů: 5, poslední včera 20:57
    Rozcestník

    jsem vůl aneb XSLT transformace

    30.9.2006 11:18 | Přečteno: 3850× | Programování | poslední úprava: 20.4.2008 18:54

    Jeliko je redakcnich systemu nedostatek (ironie), rozhodl jsem se vytvorit dalsi. Na vystupu generuje XML, ktere by se melo pomoci XSLT transformace transformovat na XHTML. Až na to, že to nefunguje

    Výstup systému vypadá přibližně takhle:

    <?xml version="1.0" encoding="UTF-8"?>
    <page xmlns="default" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="default schema.xsd">
    
    <menu>
    <name id_menu="1">menu_1</name>
    <name id_menu="2">menu_2</name>
    <name id_menu="3">menu_3</name>
    </menu>
    
    <content>
    <path id_menu="1">menu_1</path>
    <name id_text="">TEST 1</name>
    <autor id="1">Lukas Jirkovsky</autor>
    <perex>vaelrbvoabraebuo viubaeivb</perex>
    
    </content>
    </page>
    

    Tento výstup se má transformovat pomocí takovéto šablony:

    <?xml version='1.0'?>
    <xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform' version='1.0'> 
    <xsl:output method="html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" indent="yes"/>
    
    <xsl:template match="/">
    	<html xmlns="http://www.w3.org/1999/xhtml">
    	<head>
    		<meta http-equiv="Content-Type" content="text/xhtml; charset=utf-8" />
    		<link rel="stylesheet" type="text/css" href="style.css" />
    		<title>Testovaci stranka</title>
    	</head>
    	<body>
    	<div id="baseborder">
    	<div id="top">
    		TOP
    	</div>
    		<xsl:apply-templates select="menu|content"/>
    	</div>
    	</body>
    	</html>
    </xsl:template>
    
    <xsl:template match="menu">
     	<div id="menu">
    		<xsl:apply-templates select="name" mode="menu"/>
    	</div>
    </xsl:template>
    
    <xsl:template match="name" mode="menu">
    	<a href="index.php?id_menu={@id_menu}"><xsl:value-of select="."/></a>
    </xsl:template>
    
    <xsl:template match="content">
    	<div id="obsah">
    		<xsl:apply-templates select="path|name|autor|perex|text"/>
    	</div>
    </xsl:template>
    
    <xsl:template match="path">
    	<a href="index.php?id_menu={@id_menu}" class="path"><xsl:value-of select="."/></a>
    	<a href="index.php?id_menu={@id_menu}&amp;id_text={@id_text}" class="path"><xsl:value-of select="."/></a>
    </xsl:template>
    </xsl:stylesheet>
    

    Na výsledku vyleze toto:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN">
    <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <link rel="stylesheet" type="text/css" href="style.css"></link>
    <title>Testovaci stranka</title>
    </head>
    <body>
    <div id="baseborder"><div id="top">
                    TOP
    <!-- CHYBA, TADY BY MELY BYT JESTE VECI Z MENU A CONTENT -->
    </div>
    </div>
    </body>
    </html>
    
    Jsem blbej já nebo co, když nikde nevidím chybu a přesto to na výlezu jaksi ignoruje <xsl:template match="menu"> a <xsl:template match="content"> Na ostatní se samozřejmě ani nedostane. Neví někdo, kde je chyba?


    PS: Dotaz už jsem napsal na diskuse.jakpsatweb.cz, zatím ale bez odpovědi.

           

    Hodnocení: 0 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    30.9.2006 11:38 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    seš v / a tam je dostupný jen page, takze pokud chceš vyvolat menu, tak musíš zadat page/menu.
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    stativ avatar 30.9.2006 12:30 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    Porad mi to nefunguje... zkusil jsem i v / pustit <xsl:apply-templates select="page"> a pridat
    <xsl:template match="page">
    TEST
    </xsl:template>
    Presto se nic nezmenilo :-| Dělá to procesor Firefoxu 1.5.0.7, Opery 9.02 i xsltproc z libxslt 1.1.17
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    30.9.2006 12:36 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    Pro testování používám následující php skriptík:
    <?php
        $xslt = new xsltProcessor;
        $xsl=DomDocument::load('neco.xsl');
        $xslt->importStyleSheet($xsl);
    
        $fd = fopen("neco.xml", 'r');
        $xmlString = fread($fd, filesize("neco.xml"));
        fclose($fd);
        $xml = DomDocument::loadXML($xmlString);
    
        print $xslt->transformToXML($xml);
    ?>
    
    [tsunami@vodik]$ php -version
    PHP 5.1.6 (cli) (built: Aug 29 2006 13:30:12) 
    Copyright (c) 1997-2006 The PHP Group
    Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
    
    [tsunami@vodik]$ cat neco.xsl 
    
    <xsl:template match="/page">
            <html xmlns="http://www.w3.org/1999/xhtml">
            <head>
                    <meta http-equiv="Content-Type" content="text/xhtml; charset=utf-8" />
                    <title>Testovaci stranka</title>
            </head>
            <body>
            <div id="baseborder">
            <div id="top">
                    TOP
            </div>
            <xsl:apply-templates select="menu"/>
            </div>
            </body>
            </html>
    </xsl:template>
    
    <xsl:template match="menu">
            <div id="menu">
                    <xsl:apply-templates select="name" mode="menu"/>
            </div>
    </xsl:template>
    
    <xsl:template match="name" mode="menu">
            <a href="index.php?id_menu={@id_menu}"><xsl:value-of select="."/></a>
    </xsl:template>
    
    </xsl:stylesheet>
    
    
    [tsunami@vodik]$ cat neco.xsl
    <?xml version="1.0" encoding="UTF-8"?>
    <page>
      <menu>
        <name id_menu="1">menu_1</name>
        <name id_menu="2">menu_2</name>
        <name id_menu="3">menu_3</name>
        neco
      </menu>
      <content>
        <path id_menu="1">menu_1</path>
        <name id_text="">TEST 1</name>
        <autor id="1">Lukas Jirkovsky</autor>
        <perex>vaelrbvoabraebuo viubaeivb</perex>
      </content>
    </page>
    
    
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    30.9.2006 12:37 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    Ještě výsledek:
    <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf8">
    <title>Testovaci stranka</title></head><body><div id="baseborder"><div id="top">
                    TOP
            </div><div xmlns="" id="menu">
    <a href="index.php?id_menu=1">menu_1</a><a href="index.php?id_menu=2">menu_2</a><a href="index.php?id_menu=3">menu_3</a>
    </div></div></body></html>
    
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    stativ avatar 30.9.2006 12:47 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    Děkuji za pomoc, vyřešení je níže, chyba byla ještě v použití namespace.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    1.10.2006 18:37 Pavel Kysilka
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    proc tak komplikovane ?

    man xsltproc

    a tak dale.

    mozna by vam take rekl neco vice xmllint s nejakou validaci pres dtd.

    bye gf
    1.10.2006 23:04 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    Protože mi na localhostu běží apache a ten skriptík tam je už dost dlouho, no a ctrl-r v mozille je taky hodně rychlé.

    Jinak samozřejmě xsltproc znám a používám...
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    stativ avatar 30.9.2006 12:39 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    Je mi trapně, chyba je v <page xmlns="default" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="default schema.xsd">
    Pokud vynechám namespace tak to funguje. Takže chyba je v generovaném xml, ktere by mělo vypadat takhle:
    <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="schema.xsd">
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    stativ avatar 30.9.2006 12:42 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    A samozřejmě ještě ta úprava s page/menu a page/content
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    1.10.2006 17:14 Jan Kundrát (jkt) | skóre: 27 | blog: jkt | Praha - Bohnice
    Rozbalit Rozbalit vše Re: jsem vůl aneb XSLT transformace
    Jenom pro informaci, zajimavy XSLT procesor pro pouziti na webu je gorg.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.