Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for electoral candidates #43

Closed
jpmckinney opened this issue Oct 20, 2013 · 11 comments
Closed

Add support for electoral candidates #43

jpmckinney opened this issue Oct 20, 2013 · 11 comments

Comments

@jpmckinney
Copy link
Member

Candidacy is not the same as membership in an organization. Should Candidacy simply be a straight subclass of Membership, with the same properties but with different semantics?

Likely additional properties of Candidacy:

  • incumbent (boolean)
  • election (Election)

Region-specific properties that are unlikely to be in Popolo:

  • write_in (boolean)
  • fundraising_committee_id

Notes:

  • In NY, CT, SC a person may be the candidate for multiple parties. The parties do not necessarily form a coalition. In RDF, we can simply declare onBehalfOf multiple times. In JSON-LD, on_behalf_of can be either an array or a single value. It would be a single value in most implementations.

We will likely need to add a class for Election in most use cases (requires research into variety of electoral systems).

@ghost ghost assigned jpmckinney Oct 20, 2013
@pdaire
Copy link

pdaire commented Oct 20, 2013

I don't know if I understand correctly what you're proposing, but I do believe that candidacy is different than membership in semantics, but in some cases in the properties also. What if there is an election for president and vicepresident but the candidates just apply in general the role they get is defined according to the number of votes, the one that get the most is the president and the second is the vice president: What role would they have to that constituency?

@jpmckinney
Copy link
Member Author

Thanks, @pdaire (Notes from our discussion) We can't know ahead of time what position a candidate will ultimately fill, so the value of the role property will have to depend on how a candidate declares their candidacy, or on how the candidate appears on the electoral ballot.

We can add new properties to the Candicacy class as necessary. Are any specific properties coming to mind?

@dwillis
Copy link

dwillis commented Oct 26, 2013

Here are some possibly Candidacy properties:

  • political party (needs to be separate from a Membership in a party because a person can be a member of one party and a candidate of another, or a candidate of multiple parties)
  • is_incumbent (boolean)
  • write_in (boolean)
  • committee_id (fundraising committee - should this just be an external link?)

The other aspect to consider for candidacies is details of specific elections involved, since a person can be a candidate in a primary election and then a different candidate in a general election.

@jpmckinney
Copy link
Member Author

Indeed, we would need to add a concept of elections in most use cases. We would need to be careful to not assume too much about the electoral system when designing that class.

I've added incumbent to the issue description. For political party, we can likely use the new onBehalfOf property.

Write-in is a US-only concept, as far as I know, so it will not likely be part of Popolo, though of courses users of Popolo can add whatever additional properties they need.

Can you tell me more about fundraising committees?

@dwillis
Copy link

dwillis commented Oct 26, 2013

Thanks - there are instances in the US where a candidate runs as the nominee of multiple parties (NY state, for example, has a lot of this). An annoying complication, but there it is.

@dwillis
Copy link

dwillis commented Oct 26, 2013

In the US system, candidates typically create and register a fundraising committee for their candidacies. For example, this is the URL of the fundraising committee for a Senate candidate from Minnesota. This could just be an optional property, I think.

@jpmckinney
Copy link
Member Author

Re: "a candidate runs as the nominee of multiple parties", I know, for example, that presidential candidates can run for different parties in different states. In that case, each state in fact has a different presidential election, which is aggregated in the electoral college. Are you saying that in NY, a candidate can run on behalf of multiple parties in a single election? Do the parties not form a coalition of some kind in that case?

@dwillis
Copy link

dwillis commented Oct 26, 2013

Yes, exactly. And in CT and SC this can happen as well. It is rare, but parties generally do not form coalitions in government in the states (and some states prevent running as the nominee of multiple parties), so it does happen.

@jpmckinney
Copy link
Member Author

Thanks for the additional examples and clarification. Is this something you need for a project you are working on? (to give me a sense of priority)

@dwillis
Copy link

dwillis commented Oct 26, 2013

Not immediately, but it's something that I'd like to support for the NYT Congress API (I maintain that) and I'm also looking it for a grant-funded project I'm involved with, OpenElections.

@jpmckinney jpmckinney removed this from the Priority milestone May 8, 2014
@jpmckinney jpmckinney removed their assignment May 13, 2014
@jpmckinney
Copy link
Member Author

Candidates can now be supported using existing classes. Example at http://www.popoloproject.com/appendices/examples.html#electoral-candidate Longer description of implementation at https://groups.google.com/d/topic/poplus/KFFXEVH8PGc/discussion

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants