Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 177841
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T14:07:35+00:00 2026-05-11T14:07:35+00:00

The party model is a pattern for relational database design. At least part of

  • 0

The ‘party model’ is a ‘pattern’ for relational database design. At least part of it involves finding commonality between many entities, such as Customer, Employee, Partner, etc., and factoring that into some more ‘abstract’ database tables.

I’d like to find out your thoughts on the following:

  1. What are the core principles and motivating forces behind the party model?
  2. What does it prescribe you do to your data model? (My bit above is pretty high level and quite possibly incorrect in some ways. I’ve been on a project that used it, but I was working with a separate team focused on other issues).
  3. What has your experience led you to feel about it? Did you use it, and if so, would you do so again? What were the pros and cons?
  4. Did the party model limit your choice of ORMs? For example, did you have to eliminate certain ORMs because they didn’t allow for enough of an ‘abstraction layer’ between your domain objects and your physical data model?

I’m sure every response won’t address every one of those questions … but anything touching on one or more of them is going to help me make some decisions I’m facing.

Thanks.

  • 1 1 Answer
  • 1 View
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T14:07:35+00:00Added an answer on May 11, 2026 at 2:07 pm
    1. What are the core principles and motivating forces behind the party model?

    To the extent that I’ve used it, it’s mostly about code reuse and flexibility. We’ve used it before in the guest / user / admin model and it certainly proves its value when you need to move a user from one group to another. Extend this to having organizations and companies represented with users under them, and it’s really providing a form of abstraction that isn’t particularly inherent in SQL.

    1. What does it prescribe you do to your data model? (My bit above is pretty high level and quite possibly incorrect in some ways. I’ve been on a project that used it, but I was working with a separate team focused on other issues).

    You’re pretty correct in your bit above, though it needs some more detail. You can imagine a situation where an entity in the database (call it a Party) contracts out to another Party, which may in turn subcontract work out. A party might be an Employee, a Contractor, or a Company, all subclasses of Party. From my understanding, you would have a Party table and then more specific tables for each subclass, which could then be further subclassed (Party -> Person -> Contractor).

    1. What has your experience led you to feel about it? Did you use it, and if so, would you do so again? What were the pros and cons?

    It has its benefits if you need flexibly to add new types to your system and create relationships between types that you didn’t expect at the beginning and architect in (users moving to a new level, companies hiring other companies, etc). It also gives you the benefit of running a single query and retrieving data for multiple types of parties (Companies,Employees,Contractors). On the flip side, you’re adding additional layers of abstraction to get to the data you actually need and are increasing load (or at least the number of joins) on the database when you’re querying for a specific type. If your abstraction goes too far, you’ll likely need to run multiple queries to retrieve the data as the complexity would start to become detrimental to readability and database load.

    1. Did the party model limit your choice of ORMs? For example, did you have to eliminate certain ORMs because they didn’t allow for enough of an ‘abstraction layer’ between your domain objects and your physical data model?

    This is an area that I’m admittedly a bit weak in, but I’ve found that using views and mirrored abstraction in the application layer haven’t made this too much of a problem. The real problem for me has always been a ‘where is piece of data X living’ when I want to read the data source directly (it’s not always intuitive for new developers on the system either).

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 130k
  • Answers 130k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer JVM loads only the required classes from the Jar when… May 12, 2026 at 6:05 am
  • Editorial Team
    Editorial Team added an answer I want to create an application core that connects to… May 12, 2026 at 6:05 am
  • Editorial Team
    Editorial Team added an answer Here is the code I use in my project: SimpleComboBox… May 12, 2026 at 6:05 am

Related Questions

I have a question on the best way of exposing an asynchronous remote interface.
I'm using a remote 3rd party storage solution that does not have support for
I've been creating a nice T4 template for a repository pattern for my entities.
I have a Server application with a GUI. Written in c#. Now I want

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.