import Relationship from "@arcgis/core/rest/knowledgeGraph/Relationship.js";const Relationship = await $arcgis.import("@arcgis/core/rest/knowledgeGraph/Relationship.js");- Inheritance:
- Relationship→
GraphNamedObject→ GraphObject→ Accessor
- Since
- ArcGIS Maps SDK for JavaScript 4.25
A relationship is an instance of a relationship type that defines an association between two entities.
Examples include "owns", "called", or "employed by". A relationship is described in a single direction. Every relationship describes an association from one entity to another entity.
If two people in a family are siblings, each person entity requires a separate sibling-of relationship to the other entity to fully describe the relationship.
- See also
Examples
// sample creation of new Relationship objectconst [knowledgeGraphModule, Relationship] = await $arcgis.import([ "@arcgis/core/rest/knowledgeGraphService.js", "@arcgis/core/rest/knowledgeGraph/Relationship.js",]);const newRelationship = new Relationship({ typeName: "buys_part", properties: { quantity: 5000 }, destinationId: "{HNEIS053-AW6F-G9W4-8412-MROEJHM25694}", originId: "{D1HRH4D3-1RE5-JTRH-1D5F-21TH8HRDHTRS}"})// sample relationship returned as a result of a search or query on a knowledge graph[{ "declaredClass": "esri.rest.Relationship.Relationship", "originId": "1234", "destinationId": "5678", "properties": { "order_day": "Sunday", "quantity": 15000 }, "typeName": "buys_part", "id": "{ANWIFHSAS-AW6F-G9W4-8412-A1A8W4F1A5S6F}",}]Constructors
Constructor
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| properties | | |
Example
const newRelationship = new Relationship({ typeName: "buys_part", properties: { quantity: 5000 }, destinationId: "{HNEIS053-AW6F-G9W4-8412-MROEJHM25694}", originId: "{D1HRH4D3-1RE5-JTRH-1D5F-21TH8HRDHTRS}"});Properties
| Property | Type | Class |
|---|---|---|
declaredClass readonly inherited | ||
| | ||
id inherited | ||
| | ||
properties inherited | ||
typeName inherited |
destinationId
- Type
- string
The ID of the destination entity of the relationship (i.e. the 'to' entity).
originId
- Type
- string
The ID of the origin entity of the relationship (i.e. the 'from' entity).
properties
The properties of the graph object. For entities and relationships the properties are specified by its entity type or relationship type. The values of the properties are specific to the object.
Examples
//example of properties structure that includes geometry"properties": { "shape": { "declaredClass": "esri.geometry.Point", "cache": {}, "hasM": false, "hasZ": false, "latitude": 53.589000000000009, "longitude": -0.9633, "type": "point", "extent": null, "spatialReference": { "wkid": 4326 }, "x": -0.9633, "y": 53.589000000000009 }, "Name": "Suncommon", "Employee_Count": 400, "Address": "123 Broadway, New York, New York", "EnergyType": "solar"}//two entities of different entity types with different properties[{ "declaredClass": "esri.rest.knowledgeGraph.Entity", "properties": { "Name": "Suncommon", "Employee_Count": 400, "energyType": "solar" }, "typeName": "Company", "id": "1256"},{ "declaredClass": "esri.rest.knowledgeGraph.Entity", "properties": { "Name": "Empire State Building", "height": 1454, "heightUnits": "feet", "city": "New York" }, "typeName": "Building", "id": "B7889541"}]//two relationships of different relationship types with different properties[{ "declaredClass": "esri.rest.Relationship.Relationship", "properties": { "start_date": "2020-04-17", "employee_id": "4589", "office": "152 Building A" }, "typeName": "Employed_by", "id": "B7889541"},{ "declaredClass": "esri.rest.Relationship.Relationship", "properties": { "quantity": 125000, "frequency": "bi-weekly", "contact_person": "Betty White" }, "typeName": "buys_part", "id": "B7889541"}] typeName
- Type
- string
Specifies the name for all similar types of objects (entities or relationships) defined in the knowledge graph. For example, all 'employee' entities in a knowledge graph of an organization might have the typeName 'employee'.
Methods
fromJSON
- Signature
-
fromJSON (json: any): any
Creates a new instance of this class and initializes it with values from a JSON object
generated from an ArcGIS product. The object passed into the input json
parameter often comes from a response to a query operation in the REST API or a
toJSON()
method from another ArcGIS product. See the Using fromJSON()
topic in the Guide for details and examples of when and how to use this function.
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| json | A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. | |
- Returns
- any
Returns a new instance of this class.
toJSON
- Signature
-
toJSON (): any
Converts an instance of this class to its ArcGIS portal JSON representation. See the Using fromJSON() guide topic for more information.
- Returns
- any
The ArcGIS portal JSON representation of an instance of this class.