Skip To Content
ArcGIS Developer

Query Data Model



At ArcGIS Enterprise 10.9.1, named users in the Enterprise portal must be licensed with the ArcGIS Knowledge user type extension to create, edit, and update Knowledge Graph Server services. At ArcGIS Enterprise 11.0, your account no longer requires the ArcGIS Knowledge user type extension, but you must be signed in to the Enterprise portal to create, edit, and update Knowledge Graph Server services.

The queryDataModel operation is performed on a knowledge graph service's data model resource. You can determine the types and properties of entities and relationships that can be created in the graph by querying the data model. The domain associated with each property is also specified.

Request parameters


The response format. The default response format is pbf.

Values: pbf | html

Example usage

The following is a sample request URL to get information about the graph data model's domains for a knowledge graph service named SupplyChain:

HTML Response syntax

When you query the knowledge graph server's data model, an HTML response is displayed on the page. The values returned depend on the entity types and relationship types defined in the service.

All knowledge graph services have a Document entity type and a HasDocument relationship type with system-defined and maintained properties. All entity types, relationship types, and properties must have unique names within the graph.


Names of all graph items and their properties can only contain alphanumeric ASCII characters.

Properties for all graph items with the text data type and GUID data type can optionally be indexed to support searching their content from the graph resource. A type's strict setting determines if users who are not owners of the service or administrators in the organization can modify the type, for example, by adding a property.

originGlobalIDFieldName: <property determining relationship origin>
  <properties needed to support documents>
globalIdFieldName: <GUID property identifying graph items>
destinationGlobalIDFieldName: <property determining relationship destination>
  <list of domains>

objectIdFieldName: <objectID property for graph items>
     <list of Document entity type indexed properties>

     <list of Document entity type properties>

  graphNamedObjectRole: document
  name: Document
  alias: Document
  strict: false

     <list of user-defined entity type indexed properties>

     <list of user-defined entity type properties>

  graphNamedObjectRole: regular
  name: <user-defined entity type name>
  alias: <user-defined entity type alias>
  strict: <boolean>

 wkid: 4326

strict: false
     <list of HasDocument relationship type indexed properties>

     <list of HasDocument relationship type properties>

  origin: [<list of user-defined entity types that have documents>]
  destination: [Document]
  graphNamedObjectRole: document
  name: HasDocument
  alias: Has document
  strict: false
  strictDest: true
  strictOrigin: false

     <list of user-defined relationship type indexed properties>

     <list of user-defined relationship type properties>

  origin: [<user-defined entity type name>]
  destination: [<user-defined entity type name>]
  graphNamedObjectRole: regular
  name: <user-defined relationship type name>
  alias: <user-defined relationship type alias>
  strict: <boolean>
  strictDest: <boolean>
  strictOrigin: <boolean>

timestamp: <dataModelTimestamp>

PBF Response

Create a PBF-formatted response to get feedback from the operation based on the QueryDataModelResponse.proto file.