NAME Convert::TBX::Basic - Convert TBX-Basic data into TBX-Min VERSION version 0.02 SYNOPSIS use Convert::TBX::Basic 'basic2min'; # create a TBX-Min document from the TBX-Basic file, using EN # as the source language and DE as the target language print ${ basic2min('/path/to/file.tbx', 'EN', 'DE')->as_xml }; DESCRIPTION TBX-Basic is a subset of TBX-Default which is meant to contain a smaller number of data categories suitable for most needs. To some users, however, TBX-Basic can still be too complicated. This module allows you to convert TBX-Basic into TBX-Min, a minimal, DCT-style dialect that stresses human-readability and bare-bones simplicity. METHODS "basic2min" # example usage basic2min('path/to/file.tbx', 'EN', 'DE'); Given TBX-Basic input and the source and target languages, this method returns a TBX::Min object containing a rough equivalent of the specified data. The source and target languages are necessary because TBX-Basic can contain many languages, while TBX-Min must contain exactly 2 languages. The TBX-Basic data may be either a string containing a file name or a scalar ref containing the actual TBX-Basic document as a string. Obviously TBX-Min allows much less structured information than TBX-Basic, so the conversion must be lossy. ""s, "", and ""s will be converted if there is a correspondence with TBX-Min, but those with "type" attribute values with no correspondence in TBX-Min will simply be pasted as a note, prefixed with the name of the category and a colon. This is only possible for elements at the term level (children of a "" element) because TBX-Min only allows notes inside of its "" elements. As quite a bit of data can be packed into a single "" element, the result can be quite messy. Log::Any is used to record the following: 1 (info) the elements which are stuffed into a note 2 (info) the elements that are skipped altogether during the conversion process 3 (warn) The entries that are skipped because they contained no relevant language sets, and 4 (warn) The entries that are skipped because they did not have any language specified. TODO It would be nice to preserve the "xml:id" attributes in order to make the conversion process more tranparent to the user. SEE ALSO basic2min (the included script) TBX::Min Convert::TBX::Min AUTHOR BYU Translation Research Group COPYRIGHT AND LICENSE This software is copyright (c) 2014 by Alan K. Melby. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.