Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



XSLT 2.0 Saxon 9 - zpracování adresářové struktury

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: XSLT 2.0 Saxon 9 - zpracovani adresarove struktury (2)

Autor: jfoot

13:42:28 24.07.2009

Zdravím Vás,

a dík za opravu češtiny :).
Pro čtení vstupů (xml souborů) by řešením mohlo být použití xslt 2.0 funkce collections(),
jak se o tom zmiňuje j. kosek ,viz odkaz, který j.kosek uvádí.
Funce collections() obecně vrací sekvenci nodes (tedy i document nodes -> např. vstupních xml souborů).
Je třeba dát pozor, aby se vstupní xml soubory neměnily během
fáze transformace a dále, tato funkce je implementačně závislá, rozhodně stojí za to se podívat na stránky Saxonu
(opět viz link, který uvádí j.kosek), jsou tam i příklady konkrétního použití této funkce .
Dosti slov, zde je funkční příklad :



Do proměnné howtoXmls se v tomto případě uloží všechny nodes (zde vše co má příponu xml) z adresáře daného cestou /home/foo/zdroj , pokud bude $Proj_dir=/home/foo/ ,
včetně podadresářů.

Pomocí xpath výrazu pak vybíráte z jednotlivých document nodes data, např. :


Samozřejmě, pokud má každé input xml jinou strukturu, musíte se postarat o indentifikace jednotlivých xml (tedy v každém okamžiku musíte vědět, které konkrétní
vstupní xml právě zpracováváte ).

Výstupní adresářovou strukturu by bylo možné generovat pomocí instrukce
.

Citovat příspěvek

 

XSLT 2.0 Saxon 9 - zpracovani adresarove struktury (2)

Autor: Sentinel

10:53:27 24.07.2009

Omlouvám se za nepřesnou formulaci a za špatnou češtinu.
Pokusím se o to znovu:)

Potřebuji transformací zpracovat adresářovou strukturu.

Vstup: kořenový adresář se soubory a podadresáři se soubory
Výstup: adresář s přeloženými soubory a přeloženými soubory v podadresářích

[bold]Příklad:[/bold]
\zdroj\a.xml
\zdroj\b.xml
\zdroj\c.xml
\zdroj\subdir_1\aa.xml
\zdroj\subdir_1\ab.xml
\zdroj\subdir_2\ba.xml
\zdroj\subdir_2\bb.xml

!! jednotlivé xml nejsou mezi sebou propojeny

Pokud transformaci spustím
@java net.sf.saxon.Transform -o zdroj -s cil mojetransformace.xsl
přeloží mi pouze soubory a.xml, b.xml, c.xml, podadresáře ignoruje.
(Což odpovídá i kodu, jak je napsaná třída net.sf.saxon.Transform)

Otázka zní: jakou hodnotu musí mít parametry příkazové řádky
@java net.sf.saxon.Transform [bold]-o ???[/bold] [bold]-s ???[/bold] mojetransformace.xsl
aby se zpracovala celá hierarchie?

Citovat příspěvek

 

Re: XSLT 2.0 Saxon 9 - zpracovani adresarove struktury

Autor: jfoot

16:45:00 23.07.2009

Zdravím diskutující,

jirka.kosek Napsal:
-------------------------------------------------------
>
> Neukázal jste nám vaši transformaci a vstupy,
> takže těžko soudit, co
> vlastně potřebujete. MOžná by se vám hodila funkce
> collection(), která v
> Saxonu umí načíst všechny soubory v adresářové struktuře.


Ano, jak říká p. J.Kosek, specifikujte blíže Váš problém..
Prosím také o zlepšení pravopisu jazyka českého.
Mně osobně by se ve vašem příspěvku psaném dle pravidel jazyka
českého rozhodně lépe orientovalo. Děkuji.

Citovat příspěvek

 

Re: XSLT 2.0 Saxon 9 - zpracovani adresarove struktury

Autor: jirka.kosek

15:36:41 23.07.2009

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Sentinel wrote:

> je nějaká možnost, jak saxonem 9 a transformací XSLT 2.0 celou adresářovou strukturu ?

Neukázal jste nám vaši transformaci a vstupy, takže těžko soudit, co
vlastně potřebujete. MOžná by se vám hodila funkce collection(), která v
Saxonu umí načíst všechny soubory v adresářové struktuře:

http://www.saxonica.com/documentation/sourcedocs/collections.html


- --
- ------------------------------------------------------------------
Jirka Kosek e-mail: jirka@kosek.cz http://www.kosek.cz
- ------------------------------------------------------------------
Profesionální školení a poradenství v oblasti technologií XML.
Podrobný přehled školení http://xmlguru.cz/skoleni/
- ------------------------------------------------------------------
http://docbook.cz Stránky o dokumentačním formátu DocBook
http://xmlguru.cz Blog mostly about XML for English readers
- ------------------------------------------------------------------
Příspěvek zaslán emailem

Citovat příspěvek

 

XSLT 2.0 Saxon 9 - zpracování adresářové struktury

Autor: Sentinel

14:44:13 23.07.2009

Příjemné odpoledne,

je nějaká možnost, jak saxonem 9 a transformací XSLT 2.0 celou adresářovou strukturu ?
soubory mezi sebou nejsou propojeny (je tam pouze tag který se právě transformací zpracuje a vytvoří odkazy na soubory v podadresářích

[bold]Struktura adresaru:[/bold]
zdrojovy_adresar
prvni_zanoreny[aa.xml]
druhy_zanoreny[ba.xml]
a.xml
b.xml
c.xml

pokud spouštím tranformaci
[ital]@java net.sf.saxon.Transform -o adresar_s_vyledkem -s zdrojovy_adresar mojetransformace.xsl[/ital]

provede zpracování xml souborů pouze na první úrovni tzn pousze souborů a.xml b.xml c.xml

otazka tedy zní je nějaký způsob ( přepínač, instrukce .... ) jak zpracovat celou adresářovou strukturu anjednou celou transformací

Děkuji :)

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: