[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[EP-tech] Translate citations?



Hi!

  Translating citations seems overkilling, I'm unable to do it in a 
correct way (with pin values, for example), just plain text phrases. 
This means complex sentences are hard or impossible to translate.

For example, I would like to translate this:

https://github.com/eprints/eprints/blob/33a7bb8a8b3f80ba02ddd6618eb4e7dc3209ec68/lib/defaultcfg/citations/document/default.xml

to italian.

This is the interesting part:

<epc:if test="security != 'public'">
   <br />Restricted to <epc:print expr="security"/><epc:if 
test="date_embargo"> until <epc:print expr="date_embargo"/>.</epc:if>
</epc:if>

This don't work:

======
in citations/document/default.xml:

<epc:if test="security != 'public'">
   <br />
       <epc:phrase ref="resticted_warning" ><epc:param 
name="security"><epc:print expr="security"/></epc:param>
       <epc:param name="date_embargo"><epc:print 
expr="date_embargo"/></epc:param>
</epc:phrase>
</epc:if>

lang/en/phrases/custom.xml:

<epp:phrase id="resticted_warning">Restricted to <epc:print 
expr="security"/><epc:if test="date_embargo"> until <epc:print 
expr="date_embargo"/>.</epc:if></epp:phrase>

lang/it/phrases/custom.xml:

<epp:phrase id="resticted_warning">Ristretto a <epc:print 
expr="security"/><epc:if test="date_embargo"> fino a <epc:print 
expr="date_embargo"/>.</epc:if></epp:phrase>
=====

It returns an error:

------------------------------------------------------------------
---------------- EPrints System Error ----------------------------
------------------------------------------------------------------
Script in Phrase: 'resticted_warning': can't get a property {security} 
from undefined value at character 0
security
^ here
------------------------------------------------------------------

(this happen also with date_embargo alone)

So, what to do? In this example, I can translate piece by piece (so just 
text with no variables) but in other situations I can't do it, I need 
variable substitution in the right place.