{"id":327,"date":"2014-09-12T17:21:14","date_gmt":"2014-09-12T15:21:14","guid":{"rendered":"http:\/\/blog.defrent.de\/?p=327"},"modified":"2019-03-21T16:34:56","modified_gmt":"2019-03-21T15:34:56","slug":"whats-in-sdl-trados-projectreturn-packages-sdlppxsdlrpx","status":"publish","type":"post","link":"https:\/\/www.defrent.de\/en\/2014\/09\/whats-in-sdl-trados-projectreturn-packages-sdlppxsdlrpx\/","title":{"rendered":"What&#8217;s in SDL Trados Project\/Return Packages (sdlppx\/sdlrpx)?"},"content":{"rendered":"<div class=\"shariff shariff-align-left shariff-widget-align-left\" style=\"display:none\"><ul class=\"shariff-buttons theme-round orientation-horizontal buttonsize-small\"><li class=\"shariff-button mastodon\" style=\"background-color:#ccc\"><a href=\"https:\/\/s2f.kytta.dev\/?text=What%E2%80%99s%20in%20SDL%20Trados%20Project%2FReturn%20Packages%20%28sdlppx%2Fsdlrpx%29%3F https%3A%2F%2Fwww.defrent.de%2Fen%2F2014%2F09%2Fwhats-in-sdl-trados-projectreturn-packages-sdlppxsdlrpx%2F via @defrentck@hessen.social\" title=\"Share on Mastodon\" aria-label=\"Share on Mastodon\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#79b428; color:#fff\" target=\"_blank\"><span class=\"shariff-icon\" style=\"\"><svg width=\"75\" height=\"79\" viewBox=\"0 0 75 79\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M37.813-.025C32.462-.058 27.114.13 21.79.598c-8.544.621-17.214 5.58-20.203 13.931C-1.12 23.318.408 32.622.465 41.65c.375 7.316.943 14.78 3.392 21.73 4.365 9.465 14.781 14.537 24.782 15.385 7.64.698 15.761-.213 22.517-4.026a54.1 54.1 0 0 0 .01-6.232c-6.855 1.316-14.101 2.609-21.049 1.074-3.883-.88-6.876-4.237-7.25-8.215-1.53-3.988 3.78-.43 5.584-.883 9.048 1.224 18.282.776 27.303-.462 7.044-.837 14.26-4.788 16.65-11.833 2.263-6.135 1.215-12.79 1.698-19.177.06-3.84.09-7.692-.262-11.52C72.596 7.844 63.223.981 53.834.684a219.453 219.453 0 0 0-16.022-.71zm11.294 12.882c5.5-.067 10.801 4.143 11.67 9.653.338 1.48.471 3 .471 4.515v21.088h-8.357c-.07-7.588.153-15.182-.131-22.765-.587-4.368-7.04-5.747-9.672-2.397-2.422 3.04-1.47 7.155-1.67 10.735v6.392h-8.307c-.146-4.996.359-10.045-.404-15.002-1.108-4.218-7.809-5.565-10.094-1.666-1.685 3.046-.712 6.634-.976 9.936v14.767h-8.354c.109-8.165-.238-16.344.215-24.5.674-5.346 5.095-10.389 10.676-10.627 4.902-.739 10.103 2.038 12.053 6.631.375 1.435 1.76 1.932 1.994.084 1.844-3.704 5.501-6.739 9.785-6.771.367-.044.735-.068 1.101-.073z\"\/><defs><linearGradient id=\"paint0_linear_549_34\" x1=\"37.0692\" y1=\"0\" x2=\"37.0692\" y2=\"79\" gradientUnits=\"userSpaceOnUse\"><stop stop-color=\"#6364FF\"\/><stop offset=\"1\" stop-color=\"#563ACC\"\/><\/linearGradient><\/defs><\/svg><\/span><\/a><\/li><li class=\"shariff-button linkedin\" style=\"background-color:#ccc\"><a href=\"https:\/\/www.linkedin.com\/sharing\/share-offsite\/?url=https%3A%2F%2Fwww.defrent.de%2Fen%2F2014%2F09%2Fwhats-in-sdl-trados-projectreturn-packages-sdlppxsdlrpx%2F\" title=\"Share on LinkedIn\" aria-label=\"Share on LinkedIn\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#79b428; color:#fff\" target=\"_blank\"><span class=\"shariff-icon\" style=\"\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 27 32\"><path fill=\"#0077b5\" d=\"M6.2 11.2v17.7h-5.9v-17.7h5.9zM6.6 5.7q0 1.3-0.9 2.2t-2.4 0.9h0q-1.5 0-2.4-0.9t-0.9-2.2 0.9-2.2 2.4-0.9 2.4 0.9 0.9 2.2zM27.4 18.7v10.1h-5.9v-9.5q0-1.9-0.7-2.9t-2.3-1.1q-1.1 0-1.9 0.6t-1.2 1.5q-0.2 0.5-0.2 1.4v9.9h-5.9q0-7.1 0-11.6t0-5.3l0-0.9h5.9v2.6h0q0.4-0.6 0.7-1t1-0.9 1.6-0.8 2-0.3q3 0 4.9 2t1.9 6z\"\/><\/svg><\/span><\/a><\/li><li class=\"shariff-button xing\" style=\"background-color:#ccc\"><a href=\"https:\/\/www.xing.com\/spi\/shares\/new?url=https%3A%2F%2Fwww.defrent.de%2Fen%2F2014%2F09%2Fwhats-in-sdl-trados-projectreturn-packages-sdlppxsdlrpx%2F\" title=\"Share on XING\" aria-label=\"Share on XING\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#79b428; color:#fff\" target=\"_blank\"><span class=\"shariff-icon\" style=\"\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 25 32\"><path fill=\"#126567\" d=\"M10.7 11.9q-0.2 0.3-4.6 8.2-0.5 0.8-1.2 0.8h-4.3q-0.4 0-0.5-0.3t0-0.6l4.5-8q0 0 0 0l-2.9-5q-0.2-0.4 0-0.7 0.2-0.3 0.5-0.3h4.3q0.7 0 1.2 0.8zM25.1 0.4q0.2 0.3 0 0.7l-9.4 16.7 6 11q0.2 0.4 0 0.6-0.2 0.3-0.6 0.3h-4.3q-0.7 0-1.2-0.8l-6-11.1q0.3-0.6 9.5-16.8 0.4-0.8 1.2-0.8h4.3q0.4 0 0.5 0.3z\"\/><\/svg><\/span><\/a><\/li><li class=\"shariff-button facebook\" style=\"background-color:#ccc\"><a href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fwww.defrent.de%2Fen%2F2014%2F09%2Fwhats-in-sdl-trados-projectreturn-packages-sdlppxsdlrpx%2F\" title=\"Share on Facebook\" aria-label=\"Share on Facebook\" role=\"button\" rel=\"nofollow\" class=\"shariff-link\" style=\"; background-color:#79b428; color:#fff\" target=\"_blank\"><span class=\"shariff-icon\" style=\"\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 18 32\"><path fill=\"#3b5998\" d=\"M17.1 0.2v4.7h-2.8q-1.5 0-2.1 0.6t-0.5 1.9v3.4h5.2l-0.7 5.3h-4.5v13.6h-5.5v-13.6h-4.5v-5.3h4.5v-3.9q0-3.3 1.9-5.2t5-1.8q2.6 0 4.1 0.2z\"\/><\/svg><\/span><\/a><\/li><li class=\"shariff-button twitter\" style=\"background-color:#ccc\"><a href=\"https:\/\/twitter.com\/share?url=https%3A%2F%2Fwww.defrent.de%2Fen%2F2014%2F09%2Fwhats-in-sdl-trados-projectreturn-packages-sdlppxsdlrpx%2F&text=What%E2%80%99s%20in%20SDL%20Trados%20Project%2FReturn%20Packages%20%28sdlppx%2Fsdlrpx%29%3F\" title=\"Share on X\" aria-label=\"Share on X\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#79b428; color:#fff\" target=\"_blank\"><span class=\"shariff-icon\" style=\"\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path fill=\"#000\" d=\"M14.258 10.152L23.176 0h-2.113l-7.747 8.813L7.133 0H0l9.352 13.328L0 23.973h2.113l8.176-9.309 6.531 9.309h7.133zm-2.895 3.293l-.949-1.328L2.875 1.56h3.246l6.086 8.523.945 1.328 7.91 11.078h-3.246zm0 0\"\/><\/svg><\/span><\/a><\/li><\/ul><\/div><p>A few weeks ago, I was asked by a potential client if I had the &#8220;Professional&#8221; flavour of SDL Trados Studio. I declined, mentioning that I was going to update from Studio Freelance 2011 to Studio Freelance 2014 until the end of September (done!). SDL currently has one of its rebate &#8220;spasms&#8221;, so I decided that ~200 euros were okay to invest after having used Studio 2011 since, wait for it, &#8230; 2011! As far as I can tell, the &#8220;Professional&#8221; variant only adds the ability to run on several machines in one network domain, to share TMs over said network, and &#8211; big deal &#8211; to create SDL Trados Project Packages (sdlppx). But is that worth a twentyfold increase in my upgrade investment?<\/p>\n<p><!--more--><\/p>\n<p>For the current case, what the client <em>really<\/em> asked me was if I could act as a translation bureau, subcontracting other translators as needed for high volumes. My answer was: &#8220;Yes, I can share work with some colleagues I know. Fortunately, that is totally independent from owning a Trados Pro license, so don&#8217;t worry.&#8221;<\/p>\n<p>Huh? Wouldn&#8217;t a proper SDL Trados workflow be to create a project, to export that project into several Project Packages (usually one per language combination, each for translation and for review), to send it to the subcontractors, to receive their Return Packages and merge them back into the local project? Well, yes, probably.<\/p>\n<p>In this case though, everything revolved around 1 source and 1 target language, no multi-lingual nightmare. The client only wanted to include the TMs and Termbases into the deal to be able to consistently work with several translators for high workloads. With a minimum of fiddling, this can be done without Trados Pro &#8211; even to the point at which I do not need to send my supposed subcontractors anything SDL-specific. Some of my colleagues prefer OmegaT, memoQ, Wordfast or still other Translation Environments. Why would I force them to use Trados if I know they do good work with their own tool?<\/p>\n<h2>Unwrapping the package<\/h2>\n<p>The question that went around in my head, then, was: &#8220;What is inside these packages, actually?&#8221; Without reading up on anything, I supposed that the Packages would be like Mozilla XPI packages, that is, renamed ZIP files with some descriptive XML and the necessary files (translatable files, reference files, TMs, TBs) inside. So I just told 7zip to unzip a project file and a return file I found on the &#8216;net (<em><span title=\"Google found them on regular file hosting sites. This is why you never, ever upload sensitive project files to the cloud. If you absolutely must, at least protect them with a login password or wrap them in a password-protected ZIP file.\">important notice<\/span><\/em>). Bingo!<\/p>\n<div id=\"attachment_333\" style=\"width: 604px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/www.defrent.de\/wp-content\/uploads\/2014\/09\/sdl-project-package-content1.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-333\" class=\"wp-image-333 size-full\" src=\"https:\/\/www.defrent.de\/wp-content\/uploads\/2014\/09\/sdl-project-package-content1.png\" alt=\"\" width=\"594\" height=\"179\" srcset=\"https:\/\/www.defrent.de\/wp-content\/uploads\/2014\/09\/sdl-project-package-content1.png 594w, https:\/\/www.defrent.de\/wp-content\/uploads\/2014\/09\/sdl-project-package-content1-300x90.png 300w\" sizes=\"auto, (max-width: 594px) 100vw, 594px\" \/><\/a><p id=\"caption-attachment-333\" class=\"wp-caption-text\">The SDLPPX content is a folder structure like a regular local Trados project folder.<\/p><\/div>\n<p>Do any Trados users recognise this? Right. It is the usual local Trados project folder structure, with the addition of one &#8220;File Types&#8221; and one &#8220;Termbases&#8221; folder. This doesn&#8217;t come as a surprise, as file filters and termbases usually are stored centrally in the Trados program folder and the relevant $user\/SDL\/MultiTerm\/ folders to be available for all local projects.<\/p>\n<p>Now, could a translator without Trados Professional just copy the relevant file types and termbases into the current project folder, zip it, rename it to .sdlppx and send it out? Most probably not. The next step, then, was to have a look at how the Project Package&#8217;s SDL Project File (.sdlproj) differed from regular Project Files. Did anyone expect something else than XML inside? No? Good, because it is.<\/p>\n<h2>Examining the descriptive XML (.sdlproj)<\/h2>\n<p>The first thing that springs to attention is the slightly different file name: The project name, as it would appear in a local project, is &#8220;<em>Censored<\/em>&#8221; (guilty of changing that one), but the Package file name has a <strong>time stamp<\/strong> appended to it.<\/p>\n<p>Inside, both begin with the mandatory XML declaration, but the <em>XML root element<\/em> is already different: <code>&lt;Project [attributes]&gt;<\/code> vs. <code>&lt;PackageProject [attributes]&gt;<\/code>, where the <code>PackageProject<\/code> has the additional attributes <code>PackageCreatedAt=\"timestamp\"<\/code>, <code>PackageCreatedBy=\"username\"<\/code>, <code>Comment=\"some comment\"<\/code>, <code>PackageGuid=\"unique ID\"<\/code> and <code>PackageType=\"(ProjectPackage|ReturnPackage)\"<\/code>. So, what distinguishes SDLPPX from SDLRPX files is one small switch.<\/p>\n<p>Thereafter, we have the regular <code>LanguageDirection<\/code> block defining target and source language(s), which can also contain links to <code>AutoSuggestDictionaries<\/code>. In this block, two nodes were present in my local files which I missed in the Package file: <code>AnalysisStatistics<\/code> with TM match statistics and the <code>CascadeItem<\/code> block, which defines Translation Memory paths in local projects.<\/p>\n<p>The next block is <code>TermbaseConfiguration<\/code>. The main difference between regular projects and project packages is that local paths are absolute paths like <code>C:\\Users\\me\\SDL\\etc\\termbase.sdltb<\/code> and package paths are relative paths like <code>Termbases\\termbase.sdltb<\/code>. I bet I am not the only translator who has tried to move a local project onto a secondary PC and then needed to manually adapt the TM\/TB paths in the SDLproj file afterwards. How I wish regular projects could also work with relative paths or variables like this: <code>%LocalTermbaseDirectory%\\termbase.sdltb<\/code>!<\/p>\n<p>The next block, <code>SettingsBundles<\/code>, holds Project settings like the options chosen for QA, TMs, TBs, FileType options and general project options like default File Export paths. I didn&#8217;t notice anything unusual here.<\/p>\n<p>Then came the blocks <code>InitialTaskTemplate<\/code> which holds the default actions for newly added files (empty for package projects), <code>ManualTaskTemplates<\/code> which holds the action to take by the package recipient (translate or review, empty for local projects), <code>AnalysisBands<\/code> which holds the TM match values for the analysis roster, <code>Users<\/code> which holds user info including e-mail for all people who have worked on (opened?) the project, <code>GeneralProjectInfo<\/code> with project name, started and completed dates, etc.<\/p>\n<p>There is one solitary <code>SourceLanguage<\/code> tag before a list of <code>ProjectFiles<\/code> is opened up, each with its own match analysis block. The following block is <code>Tasks<\/code>, containing a list of <code>AutomaticTasks<\/code> and <code>ManualTasks<\/code> that have been carried out on the project, each with their own timestamp and everything.<\/p>\n<p>The local file ends with a <code>PackageOperations<\/code> block (empty in my project files because I didn&#8217;t create, import, export or work on project files yet), whereas the package file\u00a0ends with a <code>PackageTasks<\/code> node below the Tasks node. Inside sits a <code>TaskRef<\/code> node which references the GUID of a task in the Tasks block. So this is the package&#8217;s way of telling the package recipient which of the completed\/planned tasks in the Tasks list he should carry out.<\/p>\n<h2>Conclusion<\/h2>\n<p>That&#8217;s about it. Some small changes in the project file and packaged file types and termbases. One could possibly generate a project\/return package from a normal project folder with a not-too-complicated script. However, it will be up to you to do something with those insights: Since it currently doesn&#8217;t look as if I will have to <em>generate<\/em> SDL Project Packages and since I own a Trados Freelance to <em>receive<\/em> and <em>work<\/em> with them, I won&#8217;t put more time into it at this point. But I think it is good to know that a several thousand dollars heavy upgrade might not be <em>that<\/em> necessary in certain situations&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few weeks ago, I was asked by a potential client if I had the &#8220;Professional&#8221; flavour of SDL Trados Studio. I declined, mentioning that I was going to update from Studio Freelance 2011 to Studio Freelance 2014 until the end of September (done!). SDL currently has one of its rebate &#8220;spasms&#8221;, so I decided<\/p><\/div>\n<div class=\"blog-btn\"><a href=\"https:\/\/www.defrent.de\/en\/2014\/09\/whats-in-sdl-trados-projectreturn-packages-sdlppxsdlrpx\/\" class=\"home-blog-btn\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[21,32],"tags":[77,82],"class_list":["post-327","post","type-post","status-publish","format-standard","hentry","category-de","category-uebersetzungsbranche","tag-trados-studio","tag-xml"],"aioseo_notices":[],"featured_image_src":null,"featured_image_src_square":null,"author_info":{"display_name":"Christopher K\u00f6bel","author_link":"https:\/\/www.defrent.de\/en\/author\/defrenter\/"},"_links":{"self":[{"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/posts\/327","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/comments?post=327"}],"version-history":[{"count":3,"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/posts\/327\/revisions"}],"predecessor-version":[{"id":1193,"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/posts\/327\/revisions\/1193"}],"wp:attachment":[{"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/media?parent=327"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/categories?post=327"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.defrent.de\/en\/wp-json\/wp\/v2\/tags?post=327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}