michaelh added a comment.
Finally I understood how those multiple `add()`s were meant and it makes more sense now. We're still not good to go because of this: $ balooctl index test.epub Indexing ~/frameworks/kfilemetadata/autotests/samplefiles/test.epub File(s) indexed $ balooshow test.epub 177442497910278149 2053 41314051 ~/frameworks/kfilemetadata/autotests/samplefiles/test.epub Author: Happy Man Title: The Big Brown Bear Subject: Baloo;KFile;Meta;Data Publisher: Happy Publisher Creation Date: 2014-01-01T01:01:01Z $ baloo_filemetadata_temp_extractor test.epub QMap(("author", QVariant(QString, "Happy Man"))("creationDate", QVariant(QDateTime, QDateTime(2014-01-01 01:01:01.000 UTC Qt::TimeSpec(UTC))))("publisher", QVariant(QString, "Happy Publisher"))("subject", QVariant(QString, "Baloo;KFile;Meta;Data"))("title", QVariant(QString, "The Big Brown Bear"))) AAAABQAAAA ... Those semicolons in `Baloo;KFile;Meta;Data` should not be there and I have no idea where they come from. REPOSITORY R286 KFileMetaData REVISION DETAIL https://phabricator.kde.org/D10694 To: michaelh, mgallien, dfaure Cc: astippich, #frameworks, ashaposhnikov, michaelh, spoorun, navarromorales, isidorov, nicolasfella, firef, ngraham, andrebarros, alexeymin, emmanuelp