GRILLE

Un GRID (Global Resource ID) est un identifiant globalement unique et stable pour toute entité de la plateforme Altium : un projet, un composant, une BOM, une tâche, etc.

Pourquoi les GRID existent

Les entités de la plateforme possèdent généralement des identifiants locaux (GUID, identifiants numériques) qui ne sont uniques que dans leur propre contexte. Le GUID d’un projet n’est pas globalement unique : deux projets dans des Workspaces différents peuvent partager le même GUID. L’identifiant d’une pièce d’approvisionnement n’a aucune signification en dehors du système d’approvisionnement. Il devient donc impossible de référencer une entité de manière non ambiguë entre les services, les événements et les intégrations.

Les GRID résolvent ce problème en encodant directement dans l’identifiant le contexte nécessaire : la zone, le locataire, le contexte délimité, le type d’entité et l’identifiant local font tous partie du GRID. Avec le seul GRID, la plateforme peut localiser l’entité sans contexte supplémentaire.

Format

Les GRID sont des URI utilisant grid comme schéma.

grid:area:[tenant-id]:context:resource-type/resource-id

Les GRID sont sensibles à la casse et comportent deux parties principales :

  • Context path – area:[tenant-id]:context – structure fixe utilisant : comme séparateur

  • Resource path – resource-type/resource-id – défini par le contexte délimité, utilisant / comme séparateur

Le chemin de ressource prend en charge les sous-ressources : resource-type/id/sub-type/sub-id.

Composants

Composant

Obligatoire

Description

area

Oui

Domaine large de la plateforme – global, workspace, supply, community, manufacture

tenant-id

Non

ID du locataire (GUID du Workspace pour les ressources du Workspace). Omis pour les ressources n’appartenant pas à un locataire spécifique

context

Oui

Contexte délimité – design, library, procurement, collaboration, platform, events, etc.

resource-type

Oui

Nom d’entité lisible par l’humain issu du vocabulaire du domaine

resource-id

Oui

Identifiant local de l’entité

Les noms de zone sont alignés sur les zones de portée OAuth et sont volontairement indépendants des produits et des marques – aucun nom de produit n’apparaît dans le format GRID. Cela rend les GRID stables malgré les changements de marque des produits et de l’entreprise.

Pour les ressources globales (organisations, utilisateurs, applications), le composant locataire est absent – notez le double deux-points (::) dans les exemples ci-dessous.

Exemples

Global resources (sans locataire) :

grid:global::platform:organization/837af973-180e-45ab-a93a-62a66f44d75a
grid:global::platform:user/837af973-180e-45ab-a93a-62a66f44d75a
grid:global::events:subscription/41428e10-d66a-4b27-8bbf-3a51496cceae

Workspace resources (GUID du Workspace comme locataire) :

grid:workspace:d2e3a7b0-4eb4-4339-a3d6-20276ca4f7eb:design:project/DA051CB4-13C4-41A7-A795-2A5EBC2B9A9B
grid:workspace:d2e3a7b0-4eb4-4339-a3d6-20276ca4f7eb:library:component/0F629FA7-A5C5-4034-829A-83CC5E95B947
grid:workspace:d2e3a7b0-4eb4-4339-a3d6-20276ca4f7eb:procurement:bom/BD74926A-7AFA-454E-8879-C79E8C8685EE
grid:workspace:d2e3a7b0-4eb4-4339-a3d6-20276ca4f7eb:collaboration:task/BCC891F1-49C3-46B2-9A03-85F882133050

Supply resources (sans locataire – les pièces n’appartiennent pas au Workspace) :

grid:supply::platform:part/43736907

Le Common Data Model (CDM) constitue la référence faisant autorité pour les GRID définis à travers les entités de la plateforme. Il documente les contextes délimités, les types d’entités et leur structure GRID.

Les GRID dans l’API

Les GRID apparaissent dans l’API Altium 365 sous forme de champs id: ID! sur les entités. L’API suit la convention GraphQL de Global Object Identification : avec un GRID, la plateforme peut récupérer directement l’entité via la requête node :

query {
  node(id: "grid:workspace:d2e3a7b0-4eb4-4339-a3d6-20276ca4f7eb:design:adproject/a7ceb47c-db37-426a-a9ef-117d1146be35") {
    ... on DesProject {
      name
      description
    }
  }
}

La passerelle API utilise la structure du GRID pour acheminer la requête vers le sous-graphe correct – aucun contexte supplémentaire n’est nécessaire de la part de l’appelant.

Les GRID sont adoptés progressivement dans les entités de l’API. Certaines entités renvoient actuellement des ID de nœud opaques encodés en base64 – un format hérité du framework GraphQL sous-jacent. À mesure que l’adoption des GRID s’étend, ils seront remplacés par des GRID structurés.

 

AI-LocalizedLocalisé par IA
Si vous trouvez un problème, sélectionnez le texte/l’image et appuyez surCtrl + Entréepour nous envoyer vos commentaires.
Contenu