[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Transformation of hierarchy, changing levels, and... b
hi,
I've been trying to make some transformation from a structure: <Tu> <Tuv> @Lang some text1 <df>some text2</df> <ut>some optional text</ut> some text <ut>some more text</ut> and some text </Tuv> <Tuv> @Lang some text <df> some text </df> <ut>some optional text</ut> some text <ut>some more text</ut> and some text </Tuv> </Tu> to a structure <trans-unit> (=Tu) @id <source> (=Tu/Tuv@Lang=$blabla) some text1 <g@id@barfoo/> (<df>) some text2 <g@id@foobar/> (</df>) <ph@id>some optional text</ph>(=ut) some text <ph@id>some more text</ut> and some text </source> <target> (=Tu/Tuv@Lang=$foobar) some text1 <g@id@barfoo/> (<df>) some text2 <g@id@foobar/> (</df>) <ph@id>some optional text</ph>(=ut) some text <ph@id>some more text</ut> and some text </target> </trans-unit> I tried to match //Tu, and then use for-each to match all Tuv[1]/ut and Tuv[2]/ut. This approach turned quite difficult because I had to insert ut at exactly the same position in source as it was in Tuv[1]. Probably I should use more templates and match //Tu/Tuv or something like that, but I wouldn't know how to close the trans-unit tag (is there a way to check if this Tuv is Tu/Tuv[1] or Tu/Tuv[2]?). Additionally, I would need to produce a second file with ids replacing all text between tags in Tu/Tuv[1]@Lang=foobar and Tu/Tuv[2]@lLang=barfoo. (So the text must be uniquely numbered, or indexed in the other file). The third step would be to backconvert the transformed files into a source one. Any ideas what method would be the best in this case? All help very appreciated. Best regards, Marcin Milkowski
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|