Получение информации об иерархии области обучения (дисциплин) из академического 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'
Другие вопросы по тегам