# Universal Resource Identifier (URI)

The Universal Resource Identifier (URI) is the unique identifier for every resource within the mapped data model. The URI is used to map the location of resources within the data model, and their connections.

The main role of the URI is to establish relationships between two resources. To illustrate with an example:

Suppose the data model has a database table with URI `snowflake.us_west_2.abcd1234.my_database.my_schema.my_table` . On the next run of the [snowflake integration](/sources/data-warehouses/snowflake-integration.md), a new view is observed at `snowflake.us_west_2.abcd1234.my_database.my_schema.my_view`, and that view depends on `snowflake.us_west_2.abcd1234.my_database.my_schema.my_table`, in this case, a relationship of type "depends" will be established between the view and the table.

URIs are always lowercase.

The following describes the structure of the URI for each resource type

## URI formats by type

### platform

**URI structure**: platform.\<PLATFORM TYPE>.\<PLATFORM IDENTIFIER>

**Examples**: platform.snowflake.abcd1234

### table

**URI structure**:

Depending on the database technology, the URI takes one of two forms:

* \<TECHNOLOGY>.\<PLATFORM IDENTIFIER>.\<DATABASE>.\<SCHEMA>.\<TABLE NAME>
* \<TECHNOLOGY>.\<PLATFORM IDENTIFIER>.\<SCHEMA>.\<TABLE NAME>

**Examples**:

* bigquery.my\_project.my\_dataset.my\_table
* mysql.mysql\_domain.com.my\_schema.my\_table
* aws\_glue.aws\_account\_identifier.aws\_region.my\_glue\_catalog\_identifier.my\_schema.my\_table

### looker folder

**URI structure**: looker.\<LOOKER HOST>.folder.\<LOOKER ID>

**Examples**: looker.my\_looker\_domain.folder.1001

### user

**URI structure**: user\_account.\<EMAIL ADDRESS>

The email address is normalized by replacing `@` with `_at_` and converting to lowercase.

**Examples**:

* user\_account.john\_at\_example.com
* user\_account.jane\_at\_company.co.uk

### user\_group

**URI structure**: user\_group.\<GROUP ID>

The group ID is typically a unique identifier from the identity provider (e.g., Microsoft Entra ID group ID).

**Examples**:

* user\_group.cf9fa9ef-3315-459c-893f-a44ec0e26ac1
* user\_group.4f5024be-9361-4dd9-8996-14c1f06a5dc3

## **Terms**:

* TECHNOLOGY: the technology of the platform. i.e. 'snowflake', 'bigquery', 'mysql', etc.
* PLATFORM IDENTIFIER: a platform-type-specific identifier that uniquely identifies the platform. For example, for Snowflake, this would be the snowflake account id.
* DATABASE: the name of the database the table is in. In some databases, this level of the hierarchy is called "catalog".
* SCHEMA: the name of the schema the table is in. In some databases, this level of the hierarchy is called "database".
* TABLE NAME: the table's name.
* LOOKER ID: each resource in Looker has a unique id.
* PLATFORM TYPE: the type of the platform. i.e. 'snowflake', 'tableau\_site', 'mysql', etc.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.euno.ai/developer-reference/technical-concepts/universal-resource-identifier-uri.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
