Основы Data Management API - Пользовательские отношения
Пользовательские отношения (Custom relationships) между ресурсами в рамках службы известны как "refs".
Refs может быть использован для связи какого-либо одного ресурса (folders, items, versions) с другим ресурсом.
На приведенной ниже схеме показан ref derived:autodesk.fusion360:DrawingToDesign между чертежом Fusion, который является производным от конструкции Fusion.
Она также иллюстрирует ref auxiliary:autodesk.core:Attachment между Fusion Design и присоединенной таблицей.
REFS сами по себе имеют различные типы, доступные для представления внешних ссылок, общих вложений и других типов пользовательских отношений:
Refs являются версионизированными и описывается с помощью схемы JSON.
Они хранятся в службе Forge Schema, а также могут быть просмотрены с помощью Schema Browser.
Определение ref включает fromAllowedTypes а также toAllowedTypes на любом конце отношений.
Как показано в примере вызова к POST projects/:project_id/versions/:version_id/relationships/refs ниже, refs всегда создаются на ресурсе "from", к ресурсу "to" на другом конце связи. Базовый тип "from" и ID указаны как часть URL, которая была передана, а базовый тип "to" и ID указаны в полезной нагрузке POST, используя data.type и data.id соответственно.
Объекты data.meta.extension.typeиdata.meta.extension.version должны ссылаться на предопределенный ref в службе Forge Schema.
- curl -v 'https://developer.api.autodesk.com/data/v1/projects/a.45637/versions/urn%3adsk.wipstg%3dm.file%3vf.hC6k4hndRWaeIVhIjvHu8w?version=2/relationships/refs'
- -X 'POST'
- -H 'Content=Type: application/vnd.api+json'
- -H 'Accept: application/vnd.api+json'
- -H 'Authorization: Bearer kgEJWMJitdYbhfxghap8SbZqXMoS'
- -d '
- {
- "jsonapi": { "version": "1.0" },
- "data": {
- "type": "versions",
- "id": "urn:adsk.wipstg:dm.file:vf.RWaeIVhIjvHu6e?version=2",
- "meta": {
- "extension": { "type": "auxiliary:autodesk.core:Attachment", "version": "1.0"}
- }
- }
- }
- '
Следующие объекты JSON иллюстрируют пример ref между данным и другим ресурсом:
- {
- "type": "versions",
- "id": "urn:adsk.wipstg:dm.file:vf.RWaeIVhIjvHu6e?version=2",
- "meta": {
- "refType": "auxiliary",
- "fromId": "urn:adsk.wipstg:dm.file:vf.hC6k4hndRWaeIVhIjvHu8w?version=2",
- "fromType": "versions",
- "toId": "urn:adsk.wipstg:dm.file:vf.RWaeIVhIjvHu6e?version=2",
- "toType": "versions",
- "direction": "from",
- "extension": {
- "type": "auxiliary:autodesk.core:Attachment"
- "version": "1.0"
- "schema": "..."
- }
- }
- }
Атрибут |
Тип значения |
Описание |
type |
string |
тип объекта на другом конце отношения |
id |
string: URN |
URN объекта на другом конце отношения |
=meta=.refType |
enum: string |
базовый тип отношений Возможные значения: auxiliary: ресурсtoId является вспомогательными данными, которые связанны с fromId ресурсом derived: ресурсfromId получен из toId ресурса dependencies: ресурсfromId зависимый от toId ресурса xrefs: ресурсtoId является внешней ссылкой от fromId ресурса |
=meta=.direction |
enum: string |
указывает на то, каким является отношение: входящимto или исходящим изfrom данного ресурса |
=meta.extension=.type |
string |
предопределенный ref в службе Forge Schema |
Источник: https://developer.autodesk.com/en/docs/oauth/v2/overview/
Обсуждение: http://adn-cis.org/forum/index.php?topic=
Опубликовано 10.01.2017