Research Entities
Entities for research projects, citizen science, and data contributions.
ResearchProject
Purpose: Research projects (citizen science) for data collection.
Key Fields:
Id(int): Unique identifierProjectName: Project nameDescription: Project descriptionProjectCode: Official project codeOrganizationName: Organization (DNR, NOAA, University, etc.)OrganizationWebsite: Organization websiteContactEmail,ContactPhone: Contact informationProjectType: CitizenScience, Academic, GovernmentResearchFocus: Research focus areaDataRequirements: What data is neededStateId: State-specific projectGeographicScope: Statewide, Regional, NationalRequiresRegistration: Whether registration requiredIsAcceptingParticipants: Whether accepting participantsParticipationInstructions: Participation instructionsIsActive: Whether project is activeStartDate,EndDate: Project datesParticipantCount: Number of participants
Relationships:
- Many-to-one: State
- One-to-many: ProjectParticipation, DataContribution
Usage Patterns:
// Get active research projects
var projects = context.ResearchProjects
.Where(rp => rp.IsActive && rp.IsAcceptingParticipants)
.Include(rp => rp.State)
.ToList();
// Get user's project participations
var participations = context.ProjectParticipations
.Where(pp => pp.UserId == userId)
.Include(pp => pp.ResearchProject)
.ToList();
ProjectParticipation
Purpose: User participation in research projects.
Key Fields:
Id(int): Unique identifierResearchProjectId: Associated projectUserId: Participating userRegisteredAt: Registration dateStatus: Active, Completed, InactiveDataContributionCount: Number of data contributions
Relationships:
- Many-to-one: ResearchProject, User
- One-to-many: DataContribution
DataContribution
Purpose: Data contributions to research projects.
Key Fields:
Id(int): Unique identifierResearchProjectId: Associated projectProjectParticipationId: User participationFishingLogEntryId: Associated catch log entryContributedAt: Contribution dateDataFields: Contributed data fields (JSON)IsVerified: Whether data is verified
Relationships:
- Many-to-one: ResearchProject, ProjectParticipation, FishingLogEntry
Related Documentation
- Conservation Programs - Conservation tagging programs
- Fishing Logs - Catch data logging
- Quick Logging & DNR Access - DNR research access