{"ygPerms":{"resourceCapabilityList":[{"resourceType":"GROUP","capabilities":[{"name":"UPDATE"},{"name":"READ"},{"name":"WELCOME_MSG"},{"name":"PENDING_COUNT"},{"name":"ACTIVITY_LOGS"}]},{"resourceType":"PHOTO","capabilities":[{"name":"READ"},{"name":"READ"},{"name":"UPLOAD"},{"name":"UPDATE"},{"name":"DELETE"},{"name":"COPY"},{"name":"MOVE"},{"name":"APPROVE"},{"name":"UPLOADTEMP"},{"name":"GROUPCOVER"}]},{"resourceType":"FILE","capabilities":[{"name":"READ"},{"name":"CREATE"},{"name":"UPDATE"},{"name":"DELETE"},{"name":"AUTO_SEND"}]},{"resourceType":"MEMBER","capabilities":[{"name":"READ"},{"name":"READ"},{"name":"EDIT_MODERATOR"},{"name":"DELETE"},{"name":"CREATE"},{"name":"UPDATE"},{"name":"BAN"}]},{"resourceType":"LINK","capabilities":[{"name":"READ"},{"name":"CREATE"},{"name":"UPDATE"},{"name":"DELETE"},{"name":"MOVE_LINK"}]},{"resourceType":"CALENDAR","capabilities":[{"name":"READ"}]},{"resourceType":"DATABASE","capabilities":[{"name":"CREATE"},{"name":"READ"},{"name":"READ_DATA"}]},{"resourceType":"POLL","capabilities":[{"name":"READ"},{"name":"VOTE"},{"name":"UPDATE"},{"name":"CREATE"},{"name":"DELETE"},{"name":"CLOSE"}]},{"resourceType":"MESSAGE","capabilities":[{"name":"CREATE"},{"name":"READ"},{"name":"DELETE"}]},{"resourceType":"PENDING_MESSAGE","capabilities":[{"name":"READ"},{"name":"UPDATE"},{"name":"DELETE"}]},{"resourceType":"ATTACHMENTS","capabilities":[{"name":"READ"},{"name":"DELETE"}]},{"resourceType":"PHOTOMATIC_ALBUMS","capabilities":[{"name":"READ"},{"name":"UPLOAD"}]},{"resourceType":"MEMBERSHIP_TYPE","capabilities":[{"name":"READ"},{"name":"CREATE"},{"name":"DELETE"},{"name":"UPDATE"}]},{"resourceType":"POST","capabilities":[{"name":"UPDATE"},{"name":"CREATE"},{"name":"READ"},{"name":"DELETE"}]},{"resourceType":"PIN","capabilities":[{"name":"UPDATE"},{"name":"CREATE"},{"name":"READ"},{"name":"DELETE"}]}],"modStatus":"MODERATOR","subStatus":"NORMAL","groupUrl":"groups.yahoo.com","intlCode":"us"},"comscore":"pageview_candidate","ygData":{"userId":229380146,"authorName":"Jean-Christophe Helary","from":"Jean-Christophe Helary &lt;fusion@mx6.tiki.ne.jp&gt;","profile":"jc_helary","replyTo":"LIST","senderId":"oBxNlcgd7U9btsGvmFpKZFyeUEGeG4CBZmvswhuAdUFUcQAP5YrE9FWVR4T8EaTQUV-eQ4HjVc28ankJY10HQz93AQ0Wx-E3cPTKeqChQFbGdhz67g","spamInfo":{"isSpam":false,"reason":"0"},"subject":"The &quot;project&quot; concept reformulation, part II","postDate":"1166286613","msgId":7295,"canDelete":true,"contentTrasformed":false,"systemMessage":false,"headers":{"messageIdInHeader":"PDkxQzg3OUNDLTBCQjUtNEYxMi05N0YzLTIyQ0NBRDIyNTlBRkBteDYudGlraS5uZS5qcD4="},"prevInTopic":0,"nextInTopic":7301,"prevInTime":7294,"nextInTime":7296,"topicId":7295,"numMessagesInTopic":3,"msgSnippet":"Second attempt at a reformulation of the project concept. ===========What is really a project=========== The project is 2 things that are equivalent today: 1)","rawEmail":"Return-Path: &lt;fusion@mx6.tiki.ne.jp&gt;\r\nX-Sender: fusion@mx6.tiki.ne.jp\r\nX-Apparently-To: OmegaT@yahoogroups.com\r\nReceived: (qmail 16258 invoked from network); 16 Dec 2006 16:30:26 -0000\r\nReceived: from unknown (66.218.66.218)\n  by m22.grp.scd.yahoo.com with QMQP; 16 Dec 2006 16:30:26 -0000\r\nReceived: from unknown (HELO smtp9.tiki.ne.jp) (218.40.30.106)\n  by mta3.grp.scd.yahoo.com with SMTP; 16 Dec 2006 16:30:25 -0000\r\nReceived: from [192.168.11.3] (pl354.nas934.takamatsu.nttpc.ne.jp [210.136.197.98])\n\t(authenticated bits=0)\n\tby smtp9.tiki.ne.jp (8.13.8/8.13.8) with ESMTP id kBGGUDnE075049\n\t(version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO)\n\tfor &lt;OmegaT@yahoogroups.com&gt;; Sun, 17 Dec 2006 01:30:14 +0900 (JST)\n\t(envelope-from fusion@mx6.tiki.ne.jp)\r\nMime-Version: 1.0 (Apple Message framework v752.3)\r\nContent-Transfer-Encoding: 7bit\r\nMessage-Id: &lt;91C879CC-0BB5-4F12-97F3-22CCAD2259AF@mx6.tiki.ne.jp&gt;\r\nContent-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed\r\nTo: OmegaT@yahoogroups.com\r\nDate: Sun, 17 Dec 2006 01:30:13 +0900\r\nX-Mailer: Apple Mail (2.752.3)\r\nX-Originating-IP: 218.40.30.106\r\nX-eGroups-Msg-Info: 1:0:0:0\r\nFrom: Jean-Christophe Helary &lt;fusion@mx6.tiki.ne.jp&gt;\r\nSubject: The &quot;project&quot; concept reformulation, part II\r\nX-Yahoo-Group-Post: member; u=229380146; y=jy-KiIdGlHAzXSNiVLE5Q1XTGSHKROHLVMf3oc4M1SnYjQEx5g\r\nX-Yahoo-Profile: jc_helary\r\n\r\nSecond attempt at a reformulation of the project concept.\n\n===========What is really a project===========\nThe project is 2 things that are equivalent today:\n1) the omegat.project file that gives the paths of the project&#39;s  \ncomponents (only OmegaT knows about this file)\n2) the components themselves in the form of one root folder and 5  \nsubfolders. The root folder&#39;s primary role is to &quot;hide&quot;  \nomegat.project from view and to &quot;contain&quot; the /omegat/ folder that  \ncontains project._save.tmx, the backup files and the stat file. The  \nroot folder is not in itself necessary. omegat.project could be put  \ninto a new &quot;omegat&quot; folder, that would be located at the same level  \nas the source file (set).\n\nI argue that physically implementing the project as a root folder and  \n5 subfolders limits the potential use that could be made of the path  \nlists that is omegat.project.\n\nThe emphasis on the folder as the project basic structure _forces_  \nthe user to adopt a specific workflow based on work _within_ the file  \nmanager. This limits the ability of the translator to adapt to  \ndifferent patterns of work.\n\nOmegaT parses what is fed to it by the means of paths:\n\n&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;\n&lt;omegat&gt;\n   &lt;project version=&quot;1.0&quot;&gt;\n     &lt;source_dir&gt;../source&lt;/source_dir&gt;\n     &lt;target_dir&gt;__DEFAULT__&lt;/target_dir&gt;\n     &lt;tm_dir&gt;__DEFAULT__&lt;/tm_dir&gt;\n     &lt;glossary_dir&gt;__DEFAULT__&lt;/glossary_dir&gt;\n     &lt;source_lang&gt;EN&lt;/source_lang&gt;\n     &lt;target_lang&gt;FR&lt;/target_lang&gt;\n     &lt;sentence_seg&gt;true&lt;/sentence_seg&gt;\n   &lt;/project&gt;\n&lt;/omegat&gt;\n\nI suppose it would be programatically not too hard to change the  \ncurrent structure to something like:\n(I use a non-trivial &quot;not one file&quot; example on purpose)\n\n&lt;omegat&gt;\n   &lt;project version=&quot;n.0&quot;&gt;\n     &lt;source&gt;\n     \t&lt;file id=&quot;1&quot;&gt;s_file_path_1&lt;/file&gt;\n     \t&lt;file id=&quot;2&quot;&gt;s_file_path_2&lt;/file&gt;\n     \t&lt;file id=&quot;3&quot;&gt;s_file_path_3&lt;/file&gt;\n     \t&lt;dir id=&quot;4&quot;&gt;s_dir_path_1&lt;/dir&gt;\n     \t&lt;dir id=&quot;5&quot;&gt;s_dir_path_2&lt;/dir&gt;\n     \t&lt;dir id=&quot;6&quot;&gt;s_dir_path_3&lt;/dir&gt;\n     \t&lt;dir id=&quot;7&quot;&gt;s_dir_path_4&lt;/dir&gt;\n     &lt;/source_dir&gt;\n     &lt;target&gt;\n     \t&lt;file id=&quot;1&quot;&gt;t_file_path_1&lt;/file&gt;\n     \t&lt;file id=&quot;2&quot;&gt;t_file_path_2&lt;/file&gt;\n     \t&lt;file id=&quot;3&quot;&gt;t_file_path_3&lt;/file&gt;\n     \t&lt;dir id=&quot;4&quot;&gt;t_dir_path_1&lt;/dir&gt;\n     \t&lt;dir id=&quot;5&quot;&gt;t_dir_path_2&lt;/dir&gt;\n     \t&lt;dir id=&quot;6&quot;&gt;t_dir_path_3&lt;/dir&gt;\n     \t&lt;dir id=&quot;7&quot;&gt;t_dir_path_4&lt;/dir&gt;\n     &lt;/target&gt;\n     &lt;tm&gt;\n     \t{structure similar to &lt;source&gt;}\n     &lt;/tm&gt;\n     &lt;glossary&gt;\n     \t{structure similar to &lt;source&gt;}\n     &lt;/glossary&gt;\n     &lt;source_lang&gt;EN&lt;/source_lang&gt;\n     &lt;target_lang&gt;FR&lt;/target_lang&gt;\n     &lt;sentence_seg&gt;true&lt;/sentence_seg&gt;\n   &lt;/project&gt;\n&lt;/omegat&gt;\n\nHere there is not _one_ physical source (folder) per project, but as  \nmany source &quot;sources&quot; and &quot;physical&quot; forms as the user wants.\n\nIn the end, the project is not limited to the current 1+5 folders,  \nand can reflect exactly the needs of the user.\n\nIt becomes possible to translate one file at a time (open just that  \nfile) or many files at a time (select multiple files for opening, or  \na containing folder).\n\n============The new &quot;project&quot; folder============\nWhat matters is that the &quot;project&quot; files are physically linked by the  \nomegat.project file. The real challenge is how to physically &quot;attach&quot;  \nomegat.project to any one of the source components so that their  \ntranslation can be properly assisted by the associated reference  \nfiles. Currently, the &quot;root&quot; folder is used to contain all the data.  \nHence the &quot;open project&quot; function.\n\nBut omegat.project  could be created in the same folder as any  \nsourced file as a &quot;.s_file_path_1.project&quot; (the &quot;.&quot; to make it  \ninvisible on OSX/Linux-&gt;Windows ?) and an &quot;Open File&quot; command would  \nsearch the corresponding &quot;project&quot; file and load the associated  \ninformation in memory. this file could in fact be a folder that  \ncontains project_save.tmx (and other hidden files) since we still  \nneed to put those somewhere.\n\nTo avoid cluttering the file system with project folders, OMegaT  \ncould have a dedicated space where all the projects would be  \ncentralized: OmegaT would parse that folder to search for the project  \ncorresponding to the file (set) to open. In fact, centralizing the  \nproject files would greatly ease tasks depending on the file manager  \n(especially finding related TMX files, merging project_save.tmx files  \netc).\n\n\n=============New workflow patterns:=============\nI suppose the possible pattern for a project would become:\n\n-(new pattern) create a new project for one source file\n-(new pattern) create a new project for one source file and associate  \nit to an already existing translation (link to that project_save.tmx  \netc)\n-(existing pattern) create a new project for a set of files\n-(new pattern) create a new project for a set of files and associate  \nit to an already existing translation (link to that project_save.tmx  \netc)\n-(existing pattern) add a file or a file set to an already existing  \nproject\n-(new pattern) attach/add a new translation to a project (link to or  \nmerge with another project_save.tmx)\n\n\n=================Conclusion (GUI)================\nSo the separation between a File menu and a Project menu now becomes  \nclearer:\n\nOpen a file (set) for translation makes OmegaT search for its  \nproject, if that exists-&gt;project loaded, if the project does not  \nexist-&gt;project creation by associating files (sets) to it.\n\nThe Project menu becomes a project properties editing tool to go  \nfurther into the settings of such and such project.\n\n\nAm I starting to make sense ? :)\n\nJC\n\n"}}