diff --git a/doi2dataset.py b/doi2dataset.py index 02fa6bd..683f4dc 100755 --- a/doi2dataset.py +++ b/doi2dataset.py @@ -1045,8 +1045,15 @@ class CitationBuilder: for topic in self.data.get("topics", []): if topic.get("score") >= 0.8: - if name := topic.get("display_name"): - topics.append([PrimitiveMetadataField("topicClassValue", False, name)]) + + topic_class_value_field = PrimitiveMetadataField("topicClassValue", + False, topic.get("display_name")) + topic_class_vocab_field = PrimitiveMetadataField("topicClassVocab", + False, "OpenAlex") + topic_class_vocab_uri_field = PrimitiveMetadataField( + "topicClassVocabURI", False, topic.get("id")) + + topics.append([topic_class_value_field, topic_class_vocab_field, topic_class_vocab_uri_field]) return topics