Contexto
O exportador articlemeta/export_crossref.py gera o XML de depósito no schema Crossref 4.4.0 (SetupDoiBatchPipe, linhas 29-32). A Crossref lançou o schema 5.5.0 em julho/2026 (bundle 0.6.0), que é a versão recomendada para novos depósitos. A 4.4.0 continua aceita, mas a migração permite aproveitar novos metadados (afiliações estruturadas com ROR, roles CRediT, tipo de citação, versão de artigo).
Entre 4.4.0 e 5.5.0 existe uma breaking change: a estrutura de afiliações (introduzida no schema 5.3.0).
Mudanças obrigatórias
1. Cabeçalho do doi_batch (articlemeta/export_crossref.py, linhas 29-32)
version: 4.4.0 → 5.5.0
xmlns: http://www.crossref.org/schema/4.4.0 → http://www.crossref.org/schema/5.5.0
schemaLocation: → http://www.crossref.org/schema/5.5.0 https://data.crossref.org/schemas/crossref5.5.0.xsd (note o novo host data.crossref.org)
2. Afiliações — breaking change (articlemeta/export_crossref.py, linhas 467-490)
O elemento <affiliation> (texto livre) foi removido do schema; XML com ele falha na validação 5.5.0. Reescrever para:
<affiliations>
<institution>
<institution_name>Universidade de São Paulo</institution_name>
<institution_id type="ror">https://ror.org/036rp1748</institution_id> <!-- opcional -->
<institution_place>São Paulo</institution_place> <!-- opcional -->
</institution>
</affiliations>
Regras:
- Cada
<institution> exige no mínimo institution_name ou institution_id.
institution_id exige atributo type (ror | isni | wikidata) e valor como URL https completa.
- Uma
<institution> por afiliação (hoje o código concatena tudo com '; ' em texto único).
addr_line e country não têm equivalente direto (institution_place é só a cidade) — decidir o mapeamento.
- Posição no XML: dentro de
person_name, após surname/suffix (e <role>, se usado) e antes de ORCID. A ordem é validada pelo XSD.
Melhorias opcionais disponíveis na 5.5.0
<role type="..." vocab="crossref|credit"/> repetível em person_name: múltiplos roles por contribuidor, novo tipo corresponding-author e suporte à taxonomia CRediT (14 roles). O atributo contributor_role atual (linhas 447-449) continua válido e pode coexistir com <role>.
- Atributo
type em <citation> (XMLCitation, linha 827+): identificar citações como journal-article, dataset, software, etc.
- Elemento
<version> em journal_article para versionamento de artigos.
language passa a aceitar ISO 639-2 (os códigos de 2 letras atuais continuam válidos).
- Demais novidades (posted content
blog/poster, CINES, clinical trials estendidos) não se aplicam — só depositamos journal_article.
Impacto nos testes
- Os XSDs da 5.5.0 usam XSD 1.1; o lxml (libxml2) só suporta XSD 1.0, então
ET.XMLSchema (tests/test_export_crossref.py, linhas 699-734) não compila o crossref5.5.0.xsd. Substituir a validação local pela biblioteca xmlschema (suporta XSD 1.1).
- Baixar o bundle 0.6.0 do GitLab da Crossref para
tests/xsd/scielo_crossref/: crossref5.5.0.xsd, common5.5.0.xsd, languages5.5.0.xsd, mediatypes5.5.0.xsd e as versões atualizadas de fundref.xsd, AccessIndicators.xsd, relations.xsd, clinicaltrials.xsd.
- Atualizar asserções com valores fixos: namespace/
schemaLocation (tests/test_export_crossref.py, linhas 2619-2628) e XMLs esperados contendo <affiliation> (ex.: linha 613).
Referências
Contexto
O exportador
articlemeta/export_crossref.pygera o XML de depósito no schema Crossref 4.4.0 (SetupDoiBatchPipe, linhas 29-32). A Crossref lançou o schema 5.5.0 em julho/2026 (bundle 0.6.0), que é a versão recomendada para novos depósitos. A 4.4.0 continua aceita, mas a migração permite aproveitar novos metadados (afiliações estruturadas com ROR, roles CRediT, tipo de citação, versão de artigo).Entre 4.4.0 e 5.5.0 existe uma breaking change: a estrutura de afiliações (introduzida no schema 5.3.0).
Mudanças obrigatórias
1. Cabeçalho do
doi_batch(articlemeta/export_crossref.py, linhas 29-32)version:4.4.0→5.5.0xmlns:http://www.crossref.org/schema/4.4.0→http://www.crossref.org/schema/5.5.0schemaLocation: →http://www.crossref.org/schema/5.5.0 https://data.crossref.org/schemas/crossref5.5.0.xsd(note o novo hostdata.crossref.org)2. Afiliações — breaking change (
articlemeta/export_crossref.py, linhas 467-490)O elemento
<affiliation>(texto livre) foi removido do schema; XML com ele falha na validação 5.5.0. Reescrever para:Regras:
<institution>exige no mínimoinstitution_nameouinstitution_id.institution_idexige atributotype(ror|isni|wikidata) e valor como URL https completa.<institution>por afiliação (hoje o código concatena tudo com'; 'em texto único).addr_lineecountrynão têm equivalente direto (institution_placeé só a cidade) — decidir o mapeamento.person_name, apóssurname/suffix(e<role>, se usado) e antes deORCID. A ordem é validada pelo XSD.Melhorias opcionais disponíveis na 5.5.0
<role type="..." vocab="crossref|credit"/>repetível emperson_name: múltiplos roles por contribuidor, novo tipocorresponding-authore suporte à taxonomia CRediT (14 roles). O atributocontributor_roleatual (linhas 447-449) continua válido e pode coexistir com<role>.typeem<citation>(XMLCitation, linha 827+): identificar citações comojournal-article,dataset,software, etc.<version>emjournal_articlepara versionamento de artigos.languagepassa a aceitar ISO 639-2 (os códigos de 2 letras atuais continuam válidos).blog/poster, CINES, clinical trials estendidos) não se aplicam — só depositamosjournal_article.Impacto nos testes
ET.XMLSchema(tests/test_export_crossref.py, linhas 699-734) não compila ocrossref5.5.0.xsd. Substituir a validação local pela bibliotecaxmlschema(suporta XSD 1.1).tests/xsd/scielo_crossref/:crossref5.5.0.xsd,common5.5.0.xsd,languages5.5.0.xsd,mediatypes5.5.0.xsde as versões atualizadas defundref.xsd,AccessIndicators.xsd,relations.xsd,clinicaltrials.xsd.schemaLocation(tests/test_export_crossref.py, linhas 2619-2628) e XMLs esperados contendo<affiliation>(ex.: linha 613).Referências