# How should I design my schema considering ROLES for users?

**URL:** <https://community.neo4j.com/t/how-should-i-design-my-schema-considering-roles-for-users/64832>\
**Category:** Operations\
**Tags:** relationship\
**Created:** [November 4, 2023, 8:56am UTC](https://community.neo4j.com/t/how-should-i-design-my-schema-considering-roles-for-users/64832 "2023-11-04T08:56:30Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![raxmon1710](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/raxmon1710/32/29993_2.png) [@raxmon1710](https://community.neo4j.com/u/raxmon1710)\
**Post date:** [November 4, 2023, 8:56am UTC](https://community.neo4j.com/t/how-should-i-design-my-schema-considering-roles-for-users/64832/1 "2023-11-04T08:56:30Z")

</div>

My task: I would like to assign a role for each user but each role will have different properties. For example: English teacher might have experience\_in\_years and football\_referee might have the number of matches he refereed. You might imagine other roles and they might have different properties depending on each role.  
My question: Is it okay to create separate label for each role ? I'm using django framework and they have neo4j models. I loved the framework and the feature of connecting neo4j database to my web application. However I would like to design the schema so that it would have a good performance later when I perform search queries.  
Here is the schema.

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/b/3/b3bbfd08801d3dde06fb532c6966f278aefd2600.png)

I also would like to create a CITY label for LOCATION so that I can associate each location to the city. What do you guys think? Is there a way I can do better in this schema? Thank you for your response.
