KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
When designing resource hierarchies, when should one use sub-resources? I used to believe that when a resource could not exist without another, it should be represented as its sub-resource. I recently ran across this counter-example: An employee is uniquely identifiable across all companies. An employee's access control and life-cycle depend on the company. I modeled this as: /companies/{companyName}/employee/{employeeId} Notice, I don't need to look up the company in order to locate the employee, so should I? If I do, I'm paying a price to look up information I don't need. If I don't, this URL mistakenly returns HTTP 200: /companies/{nonExistingName}/employee/{existingId} How should I represent the fact that a resource to belongs to another? How should I represent the fact that a resource cannot be identified without another? What relationships are sub-resources meant and not meant to model?
Tags (comma-separated)
Save Edits
Cancel