Dual language journal

Hi @apapyn,

I would suggest starting with citations, as that’s a much simpler task. To do that, you’ll need to move that field from the citations column in the articles table to the article_settings table instead, where localized content is stored. Then you’ll have to look for code that sets/gets the citations and adapt these uses to handle potentially multilingual content. Have a look at classes/article/ArticleDAO.inc.php and classes/article/Article.inc.php (and the parent class of Article, which is in lib/pkp/classes/submission/Submission.inc.php).

Alec Smecher
Public Knowledge Project Team

Hi Alec!
I can’t figure out how to edit metadata? Assumed it should be in
templates/submission/metadata/metadataEdit.tpl and even did this:

<div id="titleAndAbstract">
<h3>{translate key="submission.titleAndAbstract"}</h3>

<table width="100%" class="data">
         <td width="20%" class="label">{fieldLabel name="title" 
required="true" key="article.title"}</td>
         <td width="80%" class="value"><input type="text" 
name="title[{$formLocale|escape}]" id="title" 
value="{$title[$formLocale]|escape}" size="60" class="textField" /></td>

         <td colspan="2" class="separator">&nbsp;</td>
     <tr valign="top">
         <td class="label">{if 
$section->getAbstractsNotRequired()==0}{fieldLabel name="abstract" 
required="true" key="article.abstract"}{else}{fieldLabel name="abstract" 
         <td class="value"><textarea 
name="abstract[{$formLocale|escape}]" id="abstract" rows="15" cols="60" 
     <tr valign="top">
         <td class="label">{fieldLabel name="references" 
         <td class="value"><textarea 
name="references[{$formLocale|escape}]" id="references" rows="15" 
cols="60" class="textArea">{$references[$formLocale]|escape}</textarea></td>

where $references is my multilingual content, but how do I fill that
Thanks in advance.

27.05.2016 13:24, Alec Smecher пишет:

Hi @apapyn,

That form is implemented in classes/submission/form/MetadataForm.inc.php. Let me know how far you get and I’ll see if I can spot what’s missing.

Alec Smecher
Public Knowledge Project Team

I figured out how to do it. Now I have localized version of References, and if it’s emty or missing in one of locales, then the main list is returned. in templates/article/article.tpl

 	{if $citationFactory->getCount()}
		<div id="articleCitations">
		<h4>{translate key="submission.citations"}</h4>
		<br />
		{if $article->getLocalizedReferences()}
			{iterate from=citationFactory item=citation}
		<br />

and also changes in classes/article/ArticleDAO.inc.php, classes/article/Article.inc.php, classes/submission/Submission.inc.php, plugins/importexport/quickSubmit/QuickSubmitForm.inc.php, templates/submission/metadata/metadata_view.tpl, templates/submission/metadata/metadata.tpl, classes/submission/form/MetadataForm.inc.php, plugins/importexport/quickSubmit/index.tpl

@asmecher, now returning to the names. I want to add extra field to all the authors with localized “alias”. So in main form (canonical name) I will enter the original name of the author (if Russian - in Russian, if Latin based foreigner - in English) leaving localized field empty. So when user selects locale, system should check the locale of alias. If empty field - return “canonical name”, if not - localized. But alias names should be also be included in “Author” search categories (filters). Could you please give me a hint where to start with?

Hi @apapyn,

Have you had a chance to look at https://pkp.sfu.ca/bugzilla/show_bug.cgi?id=5598? This is a rather old PR that got partially completed in order to implement multilingual author names in the same style as other multilingual fields; its approach is consistent with the rest of OJS’s multilingual structures, if you’re curious how those work.

There are also some general web system recommendations that might be worth considering against your requirements here:

Alec Smecher
Public Knowledge Project Team

Thanks @asmecher for a link. I went all over instructions, but they are likely not for I’m now running on my server. Anyway I implemented all the instructions but they are so many and some changed significantly, that (of course) it didn’t work. I’m still thinking of making an extra field to redefine the name is there is a locale version Can you help me, please.

@apapyn, I can show you code of our hacks — it allow to use both Russian and English names of authors. You can see journals which uses this hack: Vestnik YuUrGU (OJS 2.4.2) and Lesovedenie (OJS 2.4.7-1). Unfortunately this hack is difficult to port to another version of OJS. May be it’ll be better to make plugin but I don’t know yet how to write it.

1 Like

We faced the same problem. And now waiting for multilingual author names to be implemented officially in the nearest versions of OJS 3.*
See also: OJS3 and Multilingual Journals

I’ve checked several hours ago — this feature not implemented in OJS 3.0.0.

A year or two ago, when we discussed this issue with developers, they said they cannot implement that in OJS 2.* and prioritize this feature to be implemented in OJS 3.*
As far as I remember, they said it would most probably not appear in OJS 3.0.0, but rather in 3.1.*.

Multilingual names is one of the likely topics for the upcoming PKP Sprint, the first weekend in October. Use cases and remote participation are welcome!

1 Like

Thank you, ctgraham!
I think many of us would be willing to participate.

The use case seems to be pretty obvious, but please let us know if there are any pitfalls here:

  1. When we create a multilingual journal, there should be an option to allow multilingual names (for any people, not only for authors). In OJS3 it might be here: Settings → Website → Languages. This option is required, since in some language pairs (say, Russian/English) alphabets and/or spellings would always be different.
  2. If this option is checked, then multilingual fields are available for all personal names entered and all those fields are required.
  3. Those names are displayed according to the locale chosen (as any other multilingual entries)

Please, feel free to criticize this :slight_smile:


Regarding requiring dual language entry, if I were to submit an article to your journal, how would I fill out a required Cyrillic field for my Latin-only name?

Yes, I thought of it.
I might be mistaken, but I still think people might want to enable this feature only to make multilingual names mandatory in all cases.

Because if those were not required, users would often forget to enter their names spelling in other languages. And that would again result in a mess, when, say, an English version of a page would contain some author names in English, some in Chinese and so on.

Now, if you have a Latin-only name, you might have two options:

  1. If you do not know how to spell your name in another language, you may just leave it as is, entering the same name into the required Cyrillic field. Thus you confirm you really do not know how to spell it differently, and the journal manager might want to do it for you if he cares.
  2. If you know Cyrillic spelling, just type it there.

That would be the same when an author with a non-Latin name (e.g. Chinese) tries to spell it using Latin symbols, so we could read and pronounce it properly.

I think maybe it will be better to leave opportunity for writing the “another language name fields” for journal staff only? Or maybe just don`t use 2 languages in registration form?

I mean that editors can add proper Cyrillic (for example) name in metadata. Or even authors but after registration.

Sorry, I didn’t catch the idea. The thing is no one except the person himself (and his relatives) knows how to pronounce (and/or spell) his name correctly*.

So we may allow editors or journal managers to edit his name (he may of course ask them to spell it for him correctly). But we cannot disallow authors to type their names in another language.

Quite the contrary, most often we have to require them to do that.

*Of course, there are some rules and systems of transliteration, but they are not always followed.

The general workflow in OJS is to define a “default” language locale, and fill data from that into any alternate language locale that is missing translated data.

This is problematic when a user is not familiar with the primary locale, but is fluent in one or more of the alternate locales.

I don’t think always requiring multilingual entry is a general solution. With users, for example, a journal manager might want to allow the entry of name variations in any relevant language, but it is unlikely someone would be able to perform the entry in all possible languages.

I could imagine a journal wanting to curate robust translations for a bilingual journal and perhaps having the option to require dual language entry. That probably goes beyond the use case of just name entry, however. Requiring dual language entry would probably be a system-wide setting at that point.

1 Like

I might really miss something. So I’m ready to agree that the journal manager should have an option to either require dual language entry (for names and other fields in multilingual journals) or not.

E.g., in Russia it is really a prevalent practice: if you submit a paper, you must provide 1) your latinized name; 2) title in English; 3) abstract in English; 4) English keywords. Most often it is a necessary condition for paper submission and acceptance.

But as far as I can see, all those required fields are ‘hardcoded’ in OJS3. We cannot set which field is actually required and which is not. I believe, many of us would find such functionality really important.

Right now I have finished porting miltilingual names feature to OJS

You can get diff on http://shoorick.ru/wp-content/uploads/2016/10/localizing-2481.diff.gz, these changes will appear on github ASAP.

I now that my hack isn’t ideal :slight_smile: but I hope it will work. Now I test how it works on http://vestnik06.susu.ru
Our journals use two languages: English and Russian.