Entities vs. Fields | Yext Hitchhikers Platform
What You’ll Learn
In this section, you will learn:
- When to use a field vs. an entity in the Knowledge Graph
- How data modeling relates to user permissions
- Listings-specific considerations for Data Modeling
When is something an Entity vs. a Field?
This is one of the most important questions to ask yourself as an expert Yext Data Modeler. And the answer isn’t easy – it depends.
Remember what we learned before: Entities are the thing. Fields are what describes that thing.
One rule of thumb is what can an entity do vs. what can a field do.
An Entity can be:
- Listed (given there’s a network for that type)
- Published as a page
- Returned as a Result Card in Search
Fields can be:
- Displayed on an Entity’s listing or Page
- Used as a direct answer in Search
- Used as criteria for Advanced Filters or Saved Searches
Typically, Entities will be things like Locations, People, Events, Products, whereas fields will be the details of those things like name, description, photos. You can relate Entities together using fields – you’ll learn more about this soon.
Consider how your end users will interact with Yext.
Fields have permissions but you cannot assign sub-field permissions. If a user is only able to update parts of a field, you will either need to break into two separate fields or you will need to make it an entity.
You want users to be able to navigate their data model easily. Simple is usually better.
Anything listed on Google Maps needs to be a Built-in Entity with an Address. Therefore, if there is not a specialized Built-in Type for your Entity that needs to be listed, use “Location” type. Not sure if you can list the entity type on Google Maps? Ask our Listings experts by contacting Yext Support (or ask in the Community)! Our Built-in Entity Types that can be synced to Listings (e.g., Google Maps) are:
- Healthcare Professionals
- Healthcare Facilities
In order to send structured lists to Google Maps (or other Listings Publishers), the data must be in “Enhanced Content Lists” (ECLs). These can be turned on in Account Settings > Account Features which can be found by click the Account Details icon at the bottom of the navigation bar. There are 3 types of ECLs:
If you also need to feature this kind of data in Results cards in Search, you will need to create a Custom Entity Type to store the data.
Don’t sweat ECLs too much – they’re a minor feature in the grand scheme of Yext’s data modeling and they will eventually be moved to be native entities in the Knowledge Graph in a future Yext release. For now, if you remember just one thing, remember that you’ll need to enable ECLs in Account Features in order to sync your Menu data to our Menu publishers.