[Fwd: Podpora viacerych jazykov cez DSSSL styly]

Pavol Luptak Pavol.Luptak na i.cz
Pondělí Říjen 28 14:40:26 CET 2002


Zdravim,
editujem v docbooku viacjazycny text (<para lang="en">English
text</para>, <para lang="sk">Slovensky text</para>). Nasiel som, ze v
pripade pouzitia XSLT, sa to da riesit elegantnym 'profiling filtrom'
(http://www.kosek.cz/xml/dboscon/profiling/frames.html). Nenasiel som
ale nic ako podobnu situaciu riesit pre DSSSL (nakolko pouzivam db2*,
teda jade).
Vytvoril som vlastny stylesheet, do ktoreho som vlozil:

    <STYLE-SPECIFICATION ID="ENGLISH" USE="DOCBOOK">
     <STYLE-SPECIFICATION-BODY>
     (element section
        (cond
        ((equal? (normalize "en") (attribute-string (normalize "lang")))
          (process-children))
          (else (literal ""))
          )
     )
     </STYLE-SPECIFICATION-BODY>
   </STYLE-SPECIFICATION>

     <STYLE-SPECIFICATION ID="SLOVAK" USE="DOCBOOK">
        <STYLE-SPECIFICATION-BODY>
           (element section
        (cond
              ((equal? (normalize "sk") (attribute-string (normalize
"lang")))
          (process-children))
              (else (literal ""))
              )
        )
      </STYLE-SPECIFICATION-BODY>
    </STYLE-SPECIFICATION>

Vysledny dokument so zvolenym jazykom generujem pouzitim DSSSL stylu (v
db2* -d ~/my-docbook.dsl#jazyk).
Dalo by sa povedat, ze uvedeny hack funguje, nefunguje ale uplne dobre
(vzhladom k tomu, ze ked implicitne aplikuj vlastny styl s danym ID
jazyka, tak sa mi myslim neaplikuju ostatne styly (PRINT/HTML) a vo
vyslednom subore nie su napr.cislovane sekcie, resp. je odignorovany
titulok sekcie).
Poznate nejaky sposob, ako uvedeny filter napisat v DSSSL?
Alebo sa mam na DSSSL uplne vykaslat a uplne prejst na XSL styly?

Pavol
-- 
___________________________________________________________________
[Pavol Luptak, ICZ a.s.] [Pavol.Luptak na i.cz] [tel: +420(2)81002222]



Další informace o konferenci Docbook