TaxonomySpeciesInfo.java

/*
 * Copyright 2026 Global Crop Diversity Trust
 * Licensed under the Apache License, Version 2.0
 * See LICENSE file in project root folder or http://www.apache.org/licenses/LICENSE-2.0
 */

package org.gringlobal.api.model;

import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
public class TaxonomySpeciesInfo {

	/** Taxonomy Species ID. */
	private Long id;

	/** Taxon: The binomial or trinomial representation of the taxon name. */
	private String name;

	/** Taxon Authority: The author for the lowest ranking part of the taxon name. */
	private String nameAuthority;

	/** Is Current: Whether this species is the current accepted taxon. */
	private Boolean isCurrent;

	/** Hybrid Code: The hybrid code from the associated genus. */
	private String hybridCode;

	/** Genus Name: The name of the associated taxonomy genus. */
	private String genusName;


	/** Species: The specific epithet of the taxonomic species name. */
	private String speciesName;

	/** Species Authority: The author of the species name. */
	private String speciesAuthority;

	/** Is Interspecific Hybrid?: A code to indicate an interspecific hybrid within the genus. */
	private Boolean isSpecificHybrid;

	/** Subspecies: The subspecific epithet for the taxon. */
	private String subspeciesName;

	/** Is Subspecific Hybrid?: Y/N code indicates an intersubspecific hybrid within the species. */
	private Boolean isSubspecificHybrid;

	/** Variety: The varietal epithet for the taxon. */
	private String varietyName;

	/** Subvariety: The subvarietal epithet for the taxon. */
	private String subvarietyName;

	/** Forma Rank: The rank indicator for the forma epithet. */
	private String formaRankType;

	/** Forma: The forma or other unranked epithet for the taxon. */
	private String formaName;

	public TaxonomySpeciesInfo(Long id) {
		this.id = id;
	}
}