Use Cases
Below are a set of use cases that describe how to model various relationships in the UTA data model. They are not a complete set, are in no particular order, but they should give you a good idea of how to model the most common relationships.
How would an "industry contact" like Ted Sarandos be built out in this model?
- Ted Sarandos himself would be modeled as a
Partyof typePerson. - Netflix would be modeled as a
Partyof typeOrganization. - The Sarandos
Partywould have aHAS_NAMErelationship to aNamenode with the value "Ted Sarandos", and the typeDisplay. - The Sarandos
Partywould have appropriateHAS_PHONE,HAS_ADDRESS, andHAS_EMAILrelationships toPhone,Address, andEmailnodes based on what we know about him. - The Sarandos
Partywould have, for example, aHAS_EXTERNAL_RECORDrelationship to anExternalRecordnode with the type "IMDB" and the platformId "nm1848253". - The Sarandos
Partywould have aHAS_ROLErelationship to aRolenode with the value "Contact". - The Netflix party would have a
HAS_NAMErelationship to aNamenode of typeDisplaywith the value "Netflix". - The Netflix party would have a
HAS_ROLErelationship to aRolenode with the value "Buyer". - The Sarandos
Partywould have aHAS_APPOINTMENTrelationship to anAppointmentnode. - The
Appointmentnode would have anAPPOINTED_TOrelationship to the NetflixParty.
In the example above, what if Ted later becomes a client?
- We would de-activate the
HAS_ROLErelationship to theRolenode with the value "Contact" while adding a newHAS_ROLErelationship to aRolenode with the value "Client". - We would add the
REPPED_ASrelationship between the SarandosPartyand an appropriateRepAreanodes corresponding to the areas in which UTA represents him.
How would I find everyone we know who works at Netflix?
- Find the
Partynode for Netflix. - Find all
Partynodes that have an activeHAS_APPOINTMENTand correspondingAPPOINTED_TOrelationships to the NetflixParty.
We have a client, Seth Rogen. And he owns a production company, Point Grey Pictures. How would we model this?
Assuming Point Grey is not a client itself:
- Seth Rogen would be modeled as a
Partyof typePerson. - Point Grey Pictures would be modeled as a
Partyof typeOrganization. - Seth Rogen would have a
HAS_ROLErelationship to aRolenode with the value "Client". - Point Grey Pictures would have a
HAS_ROLErelationship to aRolenode with the value "Contact". - Seth Rogen would have an
OWNSrelationship to the Point Grey PicturesParty, with thesubTyperelationship attribute set to "Production Company".
How would we model a client who is also a buyer?
- Create a
Partynode for the client. - Attach a
HAS_ROLErelationship to aRolenode with the value "Client". - Attach a
HAS_ROLErelationship to aRolenode with the value "Buyer".
How do we model an attorney named Marty Singer who is a participant on Lizzo's deals but works for a firm Lavely & Singer?
Rewrite
How do we model a client who is also a talent?
You don't. Talent are people or organizations UTA does not currently represent but they may either pursue or track in some manner. Clients are people or organizations UTA does represent. If a talent becomes a client, we deactivate the talent role and add the client role.
How do we model a client's relationship to their loan-out company?
- Create a
Partynode for the client - Create a
Partynode for the loan-out company - Attach a
HAS_ROLErelationship to the clientPartywith the value "Client" - Attach a
HAS_CLIENT_COMPANYrelationship with a subType of "Loanout" between the client and the client's loanout companyParty
How do we model a client's relationship to their business manager?
Rewrite
We have clients that have "alter ego" names; this is particularly common in the electronic space. How would we model this?
Examples we know about:
| Display Name | Alias Name(s) |
|---|---|
| Deadmau5 | TestPilot |
| Oliver Heldens | Hi-Lo |
| Lil Texas | Dallas Diamond Tex |
| Soulwax | 2manyDjs, Despacio |
- Create a
Partynode for the client - Create a
Namenode of typeDisplayfor the most common name, and aNamenode of typeAliasfor each alter ego name - Attach a
HAS_NAMErelationship between the clientPartyand eachNamenode created above.