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 21:11 | Nová verze

    Byl vydán Debian 13 s kódovým názvem Trixie. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    včera 15:55 | Zajímavý software

    WLED je open-source firmware pro ESP8266/ESP32, který umožňuje Wi-Fi ovládání adresovatelných LED pásků se stovkami efektů, synchronizací, audioreaktivním módem a Home-Assistant integrací. Je založen na Arduino frameworku.

    Indiánský lotr | Komentářů: 0
    8.8. 15:33 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.

    Ladislav Hagara | Komentářů: 3
    8.8. 14:22 | IT novinky

    Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.

    Ladislav Hagara | Komentářů: 1
    8.8. 13:22 | IT novinky

    Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.

    Ladislav Hagara | Komentářů: 8
    8.8. 05:55 | IT novinky

    Společnost OpenAI představila GPT-5 (YouTube).

    Ladislav Hagara | Komentářů: 1
    8.8. 05:00 | Nová verze

    Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    7.8. 17:33 | IT novinky

    Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.

    Ladislav Hagara | Komentářů: 10
    7.8. 16:55 | Nová verze

    Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.

    Ladislav Hagara | Komentářů: 0
    7.8. 16:44 | Nová verze

    Byla vydána verze 1.89.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (46%)
     (20%)
     (4%)
     (5%)
     (3%)
     (1%)
     (1%)
     (19%)
    Celkem 318 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    jsem vůl aneb XSLT transformace

    30.9.2006 11:18 | Přečteno: 3854× | 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.