From: SourceForge.net <no...@so...> - 2008-07-22 10:45:32
|
Feature Requests item #2024358, was opened at 2008-07-22 08:01 Message generated for change (Comment added) made by nobody You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=520350&aid=2024358&group_id=68187 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: File filters Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: XML: resolve XInclude automatically Initial Comment: Hello, as I noticed OmegaT can be used to translate modular documents which are composed using the XInclude standard. After trying a few things I came across a few issues which I will try to describe on DocBook examples: - The whole document is not displayed but only particular files (this is ok, when there is a possibility to switch between files). If for example I have a book which uses XInclude to inlude chapter, the chapter is not displayed in the view for translation. This is different from documents composed with entities. - If there is a recursive inclusion (for example chapter includes sections as self contained files), only error text is displayed - "Not Found!" or "File <f0>section1.xml</f0> is not found.". But these messages behave as translatable segments - If there is a recursive inclusion - for example I have a section which includes part of other document - e.g elements term or phrase - these included elements are not show in translatable segments. Of course they can be translated after opening particular file which contains them. Of course I can edit each included file itself (as long as it has doctype present) which is ok. But I would like to ask if there is any way how to make translating modular documents composed with XInclude more comfortable as it is with documents composed with entitiets. Thank you. Best regards, Pavel kopk ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2008-07-22 10:45 Message: Logged In: NO Ok, thank you for you answer. I usualy work the way that I do not allow OmegaT to copy original files to its project directory, but I rather point it to directory where these original files reside. I guess using xmllint would require another step which would have to be done outside OmegaT and I would like to avoid this if possible. Using latest version of OmegaT I can easily translate documents within one projcet with XInclude and get valid results. Only there is quite a chance that sometimes I may not be careful enough to look out for XIncludes that are not resolved and displayed and get stuck with incosistencies which may become problematic in case of a larger project. Pavel kopk ---------------------------------------------------------------------- Comment By: Didier Briel (didierbr) Date: 2008-07-22 09:12 Message: Logged In: YES user_id=1343245 Originator: NO I don't know what would be needed in OmegaT to resolve automatically XInclude (this is what I record as an enhancement request). A workaround is to use xmllint, which is part of libxml. A simple instruction (e.g., xmllint --xinclude MyBook.xml>Resolved.xml) will create a "resolved" document, containing all the necessary inclusions. I have noted your second point, too. Even if we do resolve documents, I am not sure how easy it would get to do this second point (renaming XIinclude references). It might become a separate RFE. Didier ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2008-07-22 08:19 Message: Logged In: NO I forgot one thing: when I set the template for translated file using this varibale "${nameOnly}-${targetLanguage}.${extension}", all files withing a project get appropriate target language suffix. But the master document - for example book - still has original references. For example I have this original document book.xml: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> <book lang="en"> <title>A modular book</title> <xi:include href="docbook-modular-book/chapter.xml" xpointer="element(/1)" xmlns:xi="http://www.w3.org/2001/XInclude" /> <xi:include href="docbook-modular-book/chapter2.xml" xpointer="element(/1)" xmlns:xi="http://www.w3.org/2001/XInclude" /> </book> I get translated file named book-en.xml. All traslated files also get the language suffix - chapter-en.xml, chapter2-en.xml. But references within XInclude in the master document remain the same. So the resulting document is invalid. I can turn off the template for target file name so that it the same as the original one - no problem arises, everything works as expected. But in case I want to use file names with suffix, I would have to manually edit target master file. Is it possible to get referenced files withing XInclude updated as well? Pavel kopk ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=520350&aid=2024358&group_id=68187 |