| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
⬇️ Install package: OMP 3.5 · OMP 3.4 — or browse all Releases.
Registers monograph and chapter DOIs with Crossref and exports the corresponding Crossref book deposit XML (schema 5.3.1).
OMP 3.4/3.5 ships the core DOI framework but — unlike OJS — does not ship a Crossref registration-agency plugin, so a press can assign DOIs and has no way to deposit them.
This plugin fills that gap. It plugs into the native DOI framework (IDoiRegistrationAgency), so DOIs are assigned and managed from Settings → Distribution → DOIs and deposited from the DOIs management page, exactly like in OJS.
Based on PKP's OJS Crossref plugin by Bozana Bokan, Juan Pablo Alperin and James MacGregor (© Simon Fraser University / John Willinsky, MIT License), adapted to the OMP DOI framework and maintained by OJSBR. See the Credits & authorship section below.
| OMP version | Branch | Plugin release |
|---|---|---|
| OMP 3.5.x | stable-3_5_0 (default) | 1.0.0.8 |
| OMP 3.4.x | stable-3_4_0 | 1.0.0.8-omp3.4 |
Tested on OMP 3.5.0.5 and 3.4.0.10. The DOI registration-agency framework is shared by pkp-lib and has the same contract in OMP 3.4 and 3.5, so both branches share the same implementation.
Upgrade from 1.0.0.5 (1.0.0.4 on OMP 3.4). A contributor name made only of blanks in the deposit locale produced an empty <surname> and Crossref refused the whole deposit; long names could be cut in the middle of a character; every batch timestamp ended in 000, so two deposits of the same DOI within a second carried the same record version; and five labels and messages borrowed from OJS showed as ##key## in OMP (the password field, the missing-requirements notice and the deposit results). All fixed in 1.0.0.6.
From the DOIs management page, assign DOIs to published monographs/chapters and use Deposit (or Export to download the XML). Deposit status and the Crossref response are shown per item.
PHPUnit (tests/*Test.php, on PKP\tests\PKPTestCase): the plugin classes against the installed PKP, the plugin found by PKP's plugin registry, the contributors node (blank names, fallback locale, UTF-8 cut, ORCID in production and test mode), the book title (prefix kept, markup sent as text, title of another locale with its own prefix), chapter pages, the batch timestamp and the 38 translations. From the OMP root:
lib/pkp/lib/vendor/bin/phpunit --configuration lib/pkp/tests/phpunit.xml --no-coverage "$PWD/plugins/generic/crossref/tests"Cypress (cypress/tests/functional/CrossrefSettings.cy.js, run by pkp-github-actions on OMP on every push): enables the plugin and checks Crossref offered as the DOI registration agency, with its fields and no untranslated text; nothing else is saved.
Verified on OMP 3.5.0.5 and 3.4.0.10: the XML of published books with chapters (DOIs set in memory, nothing deposited) validates against the Crossref schema, also as an edited volume (edited_book with the volume editor at book level) and with a surname made of a blank, which failed validation before 1.0.0.6.
Tests are kept in the repository and are not part of the release package.
Generative AI (Claude, by Anthropic) was used to write and run tests, improve the code and bring it in line with PKP standards. Every change is reviewed and tested by OJSBR, which is responsible for the published releases.
Issues and pull requests are welcome. Please target the branch matching the OMP version you are working against. See CONTRIBUTING.md.
Distributed under the GNU GPL v3. See LICENSE and docs/COPYING; the MIT notice of the original PKP plugin is in docs/LICENSE-PKP-MIT.
Plugin Crossref para o Open Monograph Press (OMP): registra DOIs de livros (monografias) e capítulos no Crossref e exporta o XML de depósito de livro (schema 5.3.1).
O OMP 3.4/3.5 traz o framework de DOI, mas — diferente do OJS — não inclui um plugin de agência Crossref: a editora atribui DOIs e não tem como depositá-los. Este plugin preenche essa lacuna, integrando-se ao framework nativo (IDoiRegistrationAgency).
Baseado no plugin Crossref do OJS (PKP) de Bozana Bokan, Juan Pablo Alperin e James MacGregor (© Simon Fraser University / John Willinsky, licença MIT), adaptado ao framework de DOI do OMP e mantido pela OJSBR. Veja a seção Créditos e autoria abaixo.
Atualização a partir da 1.0.0.5 (1.0.0.4 no OMP 3.4). Nome de contribuidor feito só de espaços no idioma do depósito gerava <surname> vazio e o Crossref recusava o depósito inteiro; nomes longos podiam ser cortados no meio de um caractere; o timestamp do lote sempre terminava em 000, e dois depósitos do mesmo DOI no mesmo segundo levavam a mesma versão; e cinco textos emprestados do OJS apareciam como ##chave## no OMP (campo de senha, aviso de requisitos e resultados do depósito). Tudo corrigido na 1.0.0.6.
| Versão do OMP | Branch | Release do plugin |
|---|---|---|
| OMP 3.5.x | stable-3_5_0 (padrão) | 1.0.0.8 |
| OMP 3.4.x | stable-3_4_0 | 1.0.0.8-omp3.4 |
PHPUnit em tests/: classes do plugin contra o PKP instalado, nó de contribuidores (nomes em branco, idioma de recuo, corte UTF-8, ORCID em produção e em teste), título do livro (prefixo mantido, marcação enviada como texto, título de outro idioma com o próprio prefixo), páginas do capítulo, timestamp do lote e as 38 traduções. Verificado no OMP 3.5.0.5: o XML de três livros publicados com 4 e 5 capítulos (DOIs só em memória, nada depositado) valida contra o schema do Crossref, também como obra organizada e com sobrenome feito de um espaço, que reprovava antes da 1.0.0.6. Spec Cypress em cypress/tests/functional/: Crossref oferecido como agência de registro de DOI, com os campos e nenhum texto sem tradução (nada é salvo); reprova com as traduções da 1.0.0.5. Tudo verificado também no OMP 3.4.0.10.
A suíte roda sobre PKP\tests\PKPTestCase, também confere que o registro de plugins encontra o plugin, e o Cypress roda no pkp-github-actions no OMP a cada push. Os testes ficam no repositório e não fazem parte do pacote da release.
Foi usada IA generativa (Claude, da Anthropic) para escrever e rodar testes, melhorar o código e alinhá-lo aos padrões da PKP. Toda mudança é revisada e testada pela OJSBR, que responde pelas releases publicadas.
Distribuído sob a GNU GPL v3. Veja LICENSE e docs/COPYING; o aviso MIT do plugin original da PKP está em docs/LICENSE-PKP-MIT.
| Back | FazBrowse Home | New Git URL |