У меня есть XML-данные для многих научных публикаций, и я пытаюсь проанализировать данные в KNIME, чтобы извлечь нужные мне поля. Вот один из примеров: https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pmc&id=PMC4400176
Чтобы извлечь имена авторов, я использую следующий запрос XPath: /pmc-articleset/article/front/article-meta/contrib-group/contrib[@contrib-type="author"]
Однако это возвращает: BorisovaSvetlana A., KimHak Joong, PuXiaotao, LiuHung-wen*
Я хотел бы, чтобы фамилия и имя были разделены каким-либо разделителем, запятой/пробелом, а разные имена авторов были разделены точкой с запятой. Это возможно? Или есть лучший способ извлечь информацию по сравнению с тем, что я сейчас делаю, что позволило бы мне достичь идеального результата:
Borisova, Svetlana A.; Kim, Hak Joong; Pu, Xiaotao; Liu, Hung-wen*
[редактировать]
Текущий рабочий процесс KNIME:
Пример текущего выхода:
Я попытался вывести все имена авторов для всех публикаций в ячейку коллекции. (Если все имена выводятся в несколько столбцов, это приводит к созданию сотен столбцов, содержащих пропущенные значения. Я даже пытался добиться идеального вывода, используя несколько манипуляций со строками, но он все еще не так совершенен из-за некоторых имена авторов, имеющие несколько имен, имена через дефис или имена, содержащие специальные символы.) Ячейка коллекции объединяет все имена авторов с разделителем-запятой между именами каждого автора, но объединяет фамилии и имена. Я также могу выполнять на них те же вышеупомянутые манипуляции со строками, но все равно сталкиваюсь с теми же проблемами, что и упомянутые.
Если я разделю имена авторов на несколько строк, это создаст несколько строк для каждой статьи, из которых я не уверен, как добраться до моей конечной цели для каждой статьи.
Конечная цель:
Любые идеи о том, как решить эту проблему с авторами, будут высоко оценены!