RelationshipInfo Class
Typed return model for relationship metadata.
Returned by create_one_to_many_relationship, create_many_to_many_relationship, get_relationship, and create_lookup_field.
Example:
result = client.tables.create_one_to_many_relationship(lookup, relationship)
print(result.relationship_schema_name)
print(result.lookup_schema_name)
Constructor
RelationshipInfo(relationship_id: str | None = None, relationship_schema_name: str = '', relationship_type: str = '', lookup_schema_name: str | None = None, referenced_entity: str | None = None, referencing_entity: str | None = None, entity1_logical_name: str | None = None, entity2_logical_name: str | None = None)
Parameters
| Name | Description |
|---|---|
|
relationship_id
|
Relationship metadata GUID. Default value: None
|
|
relationship_schema_name
Required
|
Relationship schema name. |
|
relationship_type
Required
|
Either |
|
lookup_schema_name
|
Lookup field schema name (one-to-many only). Default value: None
|
|
referenced_entity
|
Parent entity logical name (one-to-many only). Default value: None
|
|
referencing_entity
|
Child entity logical name (one-to-many only). Default value: None
|
|
entity1_logical_name
|
First entity logical name (many-to-many only). Default value: None
|
|
entity2_logical_name
|
Second entity logical name (many-to-many only). Default value: None
|
Methods
| from_api_response |
Create from a raw Dataverse Web API response. Detects one-to-many vs many-to-many from the |
| from_many_to_many |
Create from a many-to-many relationship result. |
| from_one_to_many |
Create from a one-to-many relationship result. |
from_api_response
Create from a raw Dataverse Web API response.
Detects one-to-many vs many-to-many from the @odata.type field
in the response and maps PascalCase keys to snake_case attributes.
Dataverse only supports these two relationship types; an unrecognized
@odata.type raises ValueError.
from_api_response(response_data: Dict[str, Any]) -> RelationshipInfo
Parameters
| Name | Description |
|---|---|
|
response_data
Required
|
Raw relationship metadata from the Web API. |
Returns
| Type | Description |
|---|---|
Exceptions
| Type | Description |
|---|---|
|
If the |
from_many_to_many
Create from a many-to-many relationship result.
from_many_to_many(*, relationship_id: str | None, relationship_schema_name: str, entity1_logical_name: str, entity2_logical_name: str) -> RelationshipInfo
Parameters
| Name | Description |
|---|---|
|
relationship_id
Required
|
Relationship metadata GUID. |
|
relationship_schema_name
Required
|
Relationship schema name. |
|
entity1_logical_name
Required
|
First entity logical name. |
|
entity2_logical_name
Required
|
Second entity logical name. |
Keyword-Only Parameters
| Name | Description |
|---|---|
|
relationship_id
Required
|
|
|
relationship_schema_name
Required
|
|
|
entity1_logical_name
Required
|
|
|
entity2_logical_name
Required
|
|
Returns
| Type | Description |
|---|---|
from_one_to_many
Create from a one-to-many relationship result.
from_one_to_many(*, relationship_id: str | None, relationship_schema_name: str, lookup_schema_name: str, referenced_entity: str, referencing_entity: str) -> RelationshipInfo
Parameters
| Name | Description |
|---|---|
|
relationship_id
Required
|
Relationship metadata GUID. |
|
relationship_schema_name
Required
|
Relationship schema name. |
|
lookup_schema_name
Required
|
Lookup field schema name. |
|
referenced_entity
Required
|
Parent entity logical name. |
|
referencing_entity
Required
|
Child entity logical name. |
Keyword-Only Parameters
| Name | Description |
|---|---|
|
relationship_id
Required
|
|
|
relationship_schema_name
Required
|
|
|
lookup_schema_name
Required
|
|
|
referenced_entity
Required
|
|
|
referencing_entity
Required
|
|
Returns
| Type | Description |
|---|---|
Attributes
entity1_logical_name
entity1_logical_name: str | None = None
entity2_logical_name
entity2_logical_name: str | None = None
lookup_schema_name
lookup_schema_name: str | None = None
referenced_entity
referenced_entity: str | None = None
referencing_entity
referencing_entity: str | None = None
relationship_id
relationship_id: str | None = None
relationship_schema_name
relationship_schema_name: str = ''
relationship_type
relationship_type: str = ''