File indexing completed on 2024-11-24 04:34:33

0001 format: xml
0002 entries: OAI-PMH/ListRecords/record
0003 introduction: static const QRegularExpression authorSepRegExp(QStringLiteral(";\\s*")), dashes(QStringLiteral("\\s*[-]+\\s*"));
0004 
0005 # Entries with 'zbMATH Open Web Interface contents unavailable due to conflicting licenses' shall be skipped
0006 entryvalidation: entry->contains(Entry::ftTitle) && !PlainTextValue::text(entry->value(Entry::ftTitle)).contains(QStringLiteral("contents unavailable due to conflicting licenses"))
0007 
0008 field[Entry::ftTitle]: {{metadata/oai_zb_preview:zbmath/zbmath:document_title}}
0009 value[Entry::ftAuthor]: []() {
0010                            const QStringList authorList{ {{metadata/oai_zb_preview:zbmath/zbmath:author}}.split(authorSepRegExp, Qt::SkipEmptyParts)};
0011                            Value v;
0012                            for (const auto &author : authorList)
0013                               v.append(FileImporterBibTeX::personFromString(author));
0014                            return v;
0015                         }()
0016 field[Entry::ftJournal]: {{metadata/oai_zb_preview:zbmath/zbmath:serial/zbmath:serial_title}}
0017 field[Entry::ftPublisher]: {{metadata/oai_zb_preview:zbmath/zbmath:serial/zbmath:serial_publisher}}
0018 field[Entry::ftYear]: {{metadata/oai_zb_preview:zbmath/zbmath:publication_year}}
0019 field[Entry::ftPages]: QString({{metadata/oai_zb_preview:zbmath/zbmath:pagination}}).replace(dashes, QStringLiteral("\u2013"))
0020 value[Entry::ftKeywords]: []() {
0021                            Value v;
0022                            for (const QString &keyword : {{QStringList:metadata/oai_zb_preview:zbmath/zbmath:keywords/zbmath:keyword}})
0023                               v.append(QSharedPointer<Keyword>(new Keyword(keyword)));
0024                            return v;
0025                         }()
0026 field[Entry::ftDOI]: {{metadata/oai_zb_preview:zbmath/zbmath:doi}}
0027 
0028 entrytype: []() {
0029                if ({{metadata/oai_zb_preview:zbmath/zbmath:document_type}} == QStringLiteral("j"))
0030                   return Entry::etArticle;
0031                else if ({{metadata/oai_zb_preview:zbmath/zbmath:document_type}} == QStringLiteral("b"))
0032                   return Entry::etBook;
0033                else if ({{metadata/oai_zb_preview:zbmath/zbmath:document_type}} == QStringLiteral("a"))
0034                   return Entry::etInBook;
0035                else
0036                   return QString(QStringLiteral("zbmathdocumenttype%1")).arg({{metadata/oai_zb_preview:zbmath/zbmath:document_type}});
0037            }()
0038 entryid: QStringLiteral("zbmath") + {{metadata/oai_zb_preview:zbmath/zbmath:document_id}}