Skip to content

Repository files navigation

Required Multilingual Metadata — OMP plugin

OMP Version License

⬇️ Install package: OMP 3.5 — or browse all Releases.

A generic plugin for Open Monograph Press (OMP) that lets a press require the title, the abstract and the keywords in metadata languages beyond the submission's own language — something OMP 3.5 cannot do on its own — without patching OMP core and without blocking editorial staff working on legacy submissions.

Developed and maintained by OJSBR. See the Credits & authorship section below.

Compatibility & branches

OMP version Branch Plugin release
OMP 3.5.x stable-3_5_0 (default) 1.1.0.1

Looking for the OJS edition? It lives in its own repository, OJSBR/requiredMultilingualMetadata. This repository is the same plugin with the terminology and the data model of a book publisher.

What it does

In OMP 3.5 the title, the abstract and the keywords are required in one language only: the submission's primary language, chosen by the author on the first step of the wizard. Neither the press's default language nor the language the author is browsing in has any effect, and there is no native setting to require a translation. This plugin adds that.

  • Per-press settings screen: one row per active metadata language, with an independent checkbox for Title, Abstract and Keywords.
  • Keywords are conditional: the rule only reaches them when the press already makes keywords mandatory (Workflow → Metadata → Keywords = Require). Under Request, Enable or disabled, whatever is ticked in that column is kept but blocks no one — and the settings screen says so.
  • On Submit, adds the errors for the selected languages, in the same shape the wizard already renders ($errors['title']['en_US']).
  • In the wizard, opens the tabs for the required languages and notes on the field which languages it is required in — so the author is never shown an error for a field they cannot see.

Who is affected

Situation Blocked?
Author submitting Yes
Manager/editor submitting their own book (assigned as Author) Yes
Manager/editor working on someone else's submission No
Editing metadata later in the editorial workflow (including incomplete legacy) No
Section set to "Abstract not required" Abstract stays optional in every language
Press not set to Keywords = Require Keywords stay optional in every language

The editorial exemption is deliberate: migrated archives usually have metadata missing, and the rule must not stop an editor from saving what is already there.

Installation

Install under Settings → Website → Plugins → Upload A New Plugin, or extract the folder into plugins/generic/ (ending up as plugins/generic/requiredMultilingualMetadata/). Then enable Required Multilingual Metadata in the Generic plugins list.

Keep the folder name. PKP 3.5 derives the plugin's class namespace from its installation directory, so the folder must be requiredMultilingualMetadata — the Omp suffix belongs to the repository name only. The release tarball already unpacks with the right name.

Configuration

Open the plugin's Settings and tick the languages per field. The press's own metadata languages come from Context::getSupportedSubmissionMetadataLocales().

The submission's own language is always excluded — the core already requires it — and languages that are no longer active in the press are ignored at runtime, with no need to reconfigure.

A detail that trips people up. The interface locale code and the metadata locale code are different: the interface uses en, submission metadata uses en_US. The settings screen always stores the metadata code, otherwise the rule would never match.

How it works (technical)

Hook Purpose
Submission::validateSubmit adds the errors for the extra languages
TemplateManager::display (submission/wizard.tpl) opens the language tabs and writes the field notice

No core file is modified. The wizard hook is needed because PKPSubmissionHandler::getLocalizedForm() pins visibleLocales to the submission language, so without it the author would be shown an error on a field they cannot see.

Known behaviour. When the abstract is empty in the submission's own language, the plugin's message about the extra languages does not show in that round: the application subclass of Repository::validateSubmit() assigns $errors['abstract'] after the hook runs, replacing the array. The submission is still blocked (by the core's own error) and the field notice is still displayed; the author simply sees the two messages in different rounds. Title and keywords are not affected, because the core writes those before the hook. Cases E09, E10 and K10 in the test suite lock this invariant down.

Tests

Verified on OMP 3.5.0.4 against a live press, driving the real core validation:

  • with English configured as required and only pt_BR filled in, Repo::submission()->validateSubmit() returned the plugin's message on both title and abstract"This press also requires this field in English.";
  • filling the English title and abstract cleared both errors;
  • the applicable-fields rule matches OMP: title and abstract always, keywords only when the press sets Workflow > Metadata > Keywords to Require.

The two PHP regression suites of the OJS edition are not shipped here yet: they build OJS-only fixtures (a section with abstractsNotRequired, a section word count) that have no counterpart in OMP, where series carry neither setting. Porting them is tracked for a later release.

Languages

Ships in 7 languages: English, Portuguese (Brazil), Portuguese (Portugal), Spanish, French, Italian and German. Note the French folder is locale/fr — PKP 3.5 has no fr_FR locale, so a fr_FR folder would never be loaded.

Credits & authorship

  • Developed and maintained by OJSBR — original plugin.
  • Distributed under the GNU GPL v3.

Contributing

Issues and pull requests are welcome. Please target the branch matching the OMP version you are working against. See CONTRIBUTING.md.

License

Distributed under the GNU GPL v3. See LICENSE and docs/COPYING.


🇧🇷 Português

Plugin genérico para o Open Monograph Press (OMP) que permite à editora exigir o título, o resumo e as palavras-chave em idiomas de metadados além do idioma principal da submissão — algo que o OMP 3.5 não faz sozinho — sem alterar o núcleo do OMP e sem bloquear o corpo editorial que trabalha em submissões de acervo.

Desenvolvido e mantido pela OJSBR. Veja a seção Créditos e autoria abaixo.

Compatibilidade e branches

Versão do OMP Branch Release do plugin
OMP 3.5.x stable-3_5_0 (padrão) 1.1.0.1

Procurando a versão de OJS? Ela tem repositório próprio, OJSBR/requiredMultilingualMetadata. Este repositório é o mesmo plugin com a terminologia e o modelo de dados de uma editora de livros.

O que faz

No OMP 3.5, título, resumo e palavras-chave são exigidos em um único idioma: o idioma principal da submissão, escolhido pelo autor no primeiro passo do assistente. Nem o idioma padrão da editora nem o idioma em que o autor está navegando têm qualquer efeito, e não existe configuração nativa para exigir a tradução. É isso que o plugin acrescenta.

  • Tela de configuração por editora: uma linha por idioma de metadados ativo, com um checkbox independente para Título, Resumo e Palavras-chave.
  • Palavras-chave são condicionais: a regra só as alcança quando a editora já as torna obrigatórias (Fluxo de Trabalho → Metadados → Palavras-chave = Exigir). Em Solicitar, Habilitar ou desabilitado, o que estiver marcado nessa coluna fica guardado, mas não bloqueia ninguém — e a tela de configuração avisa isso.
  • No Enviar, acrescenta os erros dos idiomas marcados, no mesmo formato que o assistente já sabe exibir ($errors['title']['en_US']).
  • No assistente, abre as abas dos idiomas exigidos e anota no campo em quais idiomas ele é obrigatório — assim o autor nunca recebe erro num campo que não está vendo.

Quem é afetado

Situação Bloqueia?
Autor submetendo Sim
Gestor/editor submetendo o próprio livro (designado como Autor) Sim
Gestor/editor trabalhando em submissão de terceiro Não
Edição de metadados no fluxo editorial (inclusive acervo incompleto) Não
Seção marcada como "Resumo não obrigatório" Resumo continua opcional em todo idioma
Editora sem Palavras-chave = Exigir Palavras-chave continuam opcionais em todo idioma

A isenção do corpo editorial é deliberada: acervo migrado costuma ter metadados faltando, e a regra não pode impedir o editor de salvar o que já existe.

Instalação

Instale em Configurações → Website → Plugins → Enviar um novo plugin, ou extraia a pasta em plugins/generic/ (ficando plugins/generic/requiredMultilingualMetadata/). Depois ative o Metadados Obrigatórios em Vários Idiomas na lista de plugins Genéricos.

Não renomeie a pasta. O PKP 3.5 deriva o namespace da classe do diretório de instalação, então a pasta precisa se chamar requiredMultilingualMetadata — o sufixo Omp é só do repositório. O pacote de release já descompacta com o nome certo.

Configuração

Nas configurações do plugin, marque os idiomas por campo. Os idiomas de metadados da editora vêm de Context::getSupportedSubmissionMetadataLocales().

O idioma da própria submissão é sempre excluído — o núcleo já o exige — e idiomas que deixaram de estar ativos na editora são ignorados em tempo de execução, sem precisar reconfigurar.

Detalhe que engana. O código do idioma da interface e o do idioma de metadados são diferentes: a interface usa en, os metadados usam en_US. A tela grava sempre o código de metadados, senão a regra nunca casaria.

Testes

Verificado no OMP 3.5.0.4 em uma editora real, chamando a validação de verdade do núcleo:

  • com o inglês configurado como obrigatório e só o pt_BR preenchido, Repo::submission()->validateSubmit() devolveu a mensagem do plugin em title e em abstract"Esta editora exige este campo também em inglês.";
  • ao preencher título e resumo em inglês, os dois erros sumiram;
  • a regra de campos aplicáveis acompanha o OMP: title e abstract sempre, e keywords apenas quando a editora põe Fluxo de Trabalho > Metadados > Palavras-chave em Exigir.

As duas suítes PHP de regressão da versão de OJS ainda não vêm neste repositório: elas montam cenários que só existem no OJS (seção com abstractsNotRequired, limite de palavras da seção), sem equivalente no OMP, onde a série não tem nenhum dos dois ajustes. O porte está previsto para uma versão futura.

Idiomas

Em 7 idiomas: inglês, português (Brasil), português (Portugal), espanhol, francês, italiano e alemão. A pasta do francês é locale/fr — o PKP 3.5 não tem o locale fr_FR, então uma pasta fr_FR nunca seria carregada.

Créditos e autoria

  • Desenvolvido e mantido pela OJSBR — plugin autoral.
  • Distribuído sob a GNU GPL v3.

Licença

Distribuído sob a GNU GPL v3. Veja LICENSE e docs/COPYING.

About

OMP 3.5 plugin: require the title, abstract and keywords in languages beyond the submission language. By OJSBR. · Plugin OMP 3.5: exige titulo, resumo e palavras-chave em idiomas alem do idioma da submissao. Autoral OJSBR.

Topics

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages