Wiki

Clone wiki

Okapi / ResourceCase008

Tmx snippet containing both source and target

In the TMX file the TU element contains both source and one ore more target TUVs. In addition, each TUV (source and targets) can have a different set of attributes and properties that needs to be maintaind. How can this best be represented in the resource model?

  <tu tuid="1" datatype="Text">
   <note>TU level note</note>
   <prop type="x-Domain">TU level prop</prop>
   <tuv xml:lang="EN" creationid="Okapi">
   <seg>Hello World</seg>
   </tuv>
   <tuv xml:lang="FR-CA" creationid="Okapi" changeid="Olifant">
    <prop type="Origin">MT</prop>
    <seg>Bonjour tout le monde</seg>
   </tuv>
  </tu>

TextUnit model

Event -> Resource (with GenericSkeleton):

TODO: where to put note? annotation or property?

TEXT_UNIT -> TextUnit={
   id=t1
   properties={
      prop[datatype]='Text' (read-only)
      prop[x-Domain]='TU level prop' (read-only)
   }
   isReference=false
   text=[Hello World]
   target[FR-CA]={
      text=[Bonjour tout le monde]
      properties={
         prop[Origin]='MT' (localizable)
         prop[creationid]='Okapi' (read-only)
         prop[changeid]='Olifant' (localizable)
      }
   }
   skeleton={
      part='<tu tuid="1" datatype="Text">\n <note>TU level note</note>\n <prop type="x-Domain">TU level prop</prop>\n <tuv xml:lang="EN" creationid="Okapi">\n  <seg>'
      part='{#$$self$}'
      part='<seg>\n </tuv>\n <tuv xml:lang="FR-CA" creationid="Okapi" changeid="'
      part='{#$$self$@%changeid}'
      part='">\n  <prop type="Origin">'
      part='{#$$self$@%Origin}'
      part='</prop>\n  <seg>'
      part='{#$$self$}'
      part='</seg>\n </tuv>\n</tu>'
   }
}

Updated