Получение информации об иерархии области обучения (дисциплин) из академического API Microsoft
1 ответ
Во-первых, найдите себе ключ для использования API с помощью этих инструкций. Затем используйте функцию Evaluate для получения областей исследования. Если вы хотите загрузить весь график поля, используйте запрос Ty='6'
, манипулируя Evaluate's count
а также offset
параметры в зависимости от обстоятельств. Если у вас есть конкретная область исследования ID (например, из бумаги), используйте запрос Id=xxx
(где ххх - это область исследования Id), чтобы получить подробную информацию об этом. Если у вас есть коллекция идентификаторов, вы можете получить их все вместе, используя такой запрос, как Or(Id=xxx,Id=yyy,Id=zzz)
,
В любом случае вы должны предоставить список атрибутов, которые вы хотите вернуть Evaluate. Чтобы получить все атрибуты, используйте Id,FN,DFN,CC,ECC,FL,FP,FC
, Список имен полей и их содержания находится здесь в документации.
Обращаясь к вашему вопросу напрямую, FP
а также FC
перечислите родительские и дочерние области обучения. Обратите внимание, что оба поля являются списками. Это потому, что структура - это ориентированный граф, а не дерево. Удивительно, но на графике есть циклы, так что не ходите рекурсивно, не проверяя повторные посещения!
Вы можете поиграть с Evaluate API здесь без необходимости писать какой-либо код.
Пример:
Используя curl, этот запрос возвращает первые 1000 (максимальный предел evaluate
) область исследований. Результат будет содержать имя, идентификатор, родительский идентификатор, родительское имя, дочерний идентификатор и дочернее имя.
curl -X POST \
https://api.labs.cognitive.microsoft.com/academic/v1.0/evaluate \
-H 'Cache-Control: no-cache' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Ocp-Apim-Subscription-Key: API_KEY' \
-d 'expr=Ty%3D'\''6'\''&attributes=Id%2CFN%2CFC.FN%2CFP.FN%2CFC.FId%2CFP.FId&count=1000'