
745 N.W.2d 724 (2008)
ESTATE OF Robert RYAN, By and Through Charlene Ryan, Executor, Charlene Ryan, Individually, and Nathan Nissen, Plaintiffs,
v.
HERITAGE TRAILS ASSOCIATES, INC., Defendant.
Heritage Trails Associates, Inc., CF Industries, Inc., Agrillance, L.L.C., and Cenex Harvest States Cooperatives, Appellees,
v.
Trinity Industries, Inc., Appellant.
No. 06-1343.
Supreme Court of Iowa.
March 7, 2008.
*726 Michael J. Coyle and Danita L. Grant of Fuerste, Carew, Coyle, Juergens & Sudmeier, P.C., Dubuque, and Heather Bailey New of Haynes and Boone, L.L.P., Dallas, Texas, for appellant.
Stephen J. Holtman and David A. Hacker of Simmons Perrine P.L.C., Cedar Rapids, for appellee Heritage Trails Associates.
T. Randy Current of Frey, Haufe & Current, P.L.C., Clinton, and John M. Sheran of Leonard, Street and Deinard, P.A., Minneapolis, Minnesota, for appellee CF Industries.
R. Jeffrey Lewis and Heather L. Wood of Lewis, Webster, Van Winkle & Knoshaug, L.L.P., Des Moines, for appellees Agriliance and Cenex Harvest States.
WIGGINS, Justice.
A twenty-seven-year-old nurse tank holding anhydrous ammonia ruptured and seriously injured two workers who were filling the tank. One of the workers eventually died due to his injuries. The injured worker and the estate of the other brought claims against the manufacturer of the anhydrous ammonia, the distributors of the anhydrous, and the company hired by their employer to provide safety training. The manufacturer and distributors of the anhydrous, together with the safety training company, filed contribution claims against the manufacturer of the tank. The manufacturer and distributors of the anhydrous settled their claims with the workers by entering into a stipulated judgment. The trial proceeded on the injured workers' claims against the safety training company and the contribution claims against the tank manufacturer.
The jury returned a verdict in favor of the workers and against the safety training company. It also returned a verdict against the tank manufacturer on the contribution claims. The tank manufacturer appealed contending Iowa Code section 614.1(2A) (2003), Iowa's statute of repose for products liability cases, and section 668.5, Iowa's contribution statute, precluded the court from submitting the contribution claim to the jury. Because the statute of repose prevents common liability between the manufacturer of the anhydrous, the distributors of the anhydrous, the safety training company, and the tank manufacturer, the contribution claims against *727 the tank manufacturer are precluded as a matter of law. Therefore, we reverse the district court's judgment against the tank manufacturer, but affirm the workers' judgment against the safety training company.
I. Background Facts and Proceedings.
In April 2003 an accident occurred at the River Valley Cooperative in Calamus when a nurse tank manufactured by Trinity Industries, Inc. ruptured along the longitudinal weld, allowing anhydrous ammonia to escape. The escaped anhydrous seriously injured Robert Ryan and Nathan Nissen. Both men received severe external burns. Nissen also suffered severe injuries to his lungs and an eye. Nissen survived the accident. Ryan survived for several days in the hospital and then died.
On July 28, 2004, the Estate of Robert Ryan by and through Charlene Ryan, individually and as executor, and Nissen, filed a petition against S/M Service Company (S/M), Heritage Trails Associates, Inc. (Heritage Trails), CF Industries, Inc. (CF), and Cenex Harvest States Cooperatives (CHS). Ryan and Nissen later amended their petition to add Agriliance, LLC (Agriliance) as a defendant. S/M was the prior owner of the nurse tank. S/M merged with River Valley, the employer of Ryan and Nissen. River Valley became the owner of the tank due to that merger. River Valley hired Heritage Trails to provide monthly safety training for its employees. CF manufactured the anhydrous and sold it to CHS. CHS sold the anhydrous to Agriliance. In turn, Agriliance sold the anhydrous that leaked from the nurse tank to River Valley.
Ryan's and Nissen's claims against these defendants alleged negligence and breach of warranty based on a failure to warn of the hazards associated with nurse tanks. Ryan and Nissen did not file an action against Trinity because the nurse tank involved in the incident was manufactured in 1976, and the fifteen-year statute of repose governing products liability actions would have precluded such an action. Iowa Code § 614.1(2A)(a).
In their answers to the petition, S/M, Agriliance, CHS, CF, and Heritage Trails included third-party claims against Trinity for contribution and indemnity. Trinity raised several affirmative defenses in its answers to these claims. Trinity also filed a motion to dismiss alleging the claims for contribution failed because common liability was lacking. The district court denied this motion.
S/M filed a motion for summary judgment claiming the merger agreement between itself and River Valley shielded it from liability to Ryan and Nissen. The district court granted S/M's motion for summary judgment on this ground and dismissed it from the action.
CF filed a motion to dismiss Ryan's and Nissen's claims for lack of subject matter jurisdiction, arguing all the claims were preempted by the Hazardous Materials Transportation Act (HMTA). Trinity, Agriliance, CHS, and Heritage Trails joined the motion. Agriliance, CHS, and CF later withdrew their motions. The court overruled Heritage Trails' preemption motion.
Agriliance, CHS, and CF stipulated with Ryan and Nissen to the entry of a judgment on their claims. The court entered judgment in favor of Ryan and Nissen and against CF for $1,125,000, Agriliance for $1,025,000, and CHS for $100,000.
The case proceeded to trial regarding the issues of Heritage Trails' liability to Ryan and Nissen and the contribution claims against Trinity. Trinity made a motion for directed verdict based on the *728 lack of common liability and preemption. The court overruled Trinity's motion for directed verdict.
The jury returned a verdict in favor of Ryan and Nissen against Heritage Trails. The district court entered judgment awarding Ryan and Nissen $769,000 based on the jury's verdict. The jury also returned a verdict against Trinity on the contribution claims. The district court entered judgment in the amount of $2,540,550 against Trinity.
Trinity was the only party to file a notice of appeal.
II. Issues.
Trinity raises numerous issues on appeal; however, our construction of the exception in section 614.1(2A) (a) and its interplay with section 668.5(1), disposes of this appeal.
In its reply brief, Heritage Trails argues the court should have dismissed any claim made by Ryan and Nissen against it because the HMTA preempted those claims. We cannot address this issue based on the record before us. Heritage Trails failed to file a notice of appeal or cross-appeal. It is well settled that if a party fails to appeal the district court's ruling, it can have no greater relief or redress in our court than was afforded to that party in the district court. Randolph Foods, Inc. v. McLaughlin, 253 Iowa 1258, 1277, 115 N.W.2d 868, 879 (1962). Because Heritage Trails failed to file a notice of appeal or cross appeal, it has not preserved this issue for our review. Accordingly, we affirm the judgment entered against Heritage Trails in favor of Ryan and Nissen.
III. Standard of Review.
Prior to trial Trinity moved to dismiss the contribution claims on the ground that sections 614.1(2A)(a) and 668.5(1) precluded it from being liable for contribution. Trinity reasserted its argument when it moved for a directed verdict. Motions to dismiss and for directed verdicts are reviewed for correction of errors at law. Ritz v. Wapello County Bd. of Supervisors, 595 N.W.2d 786, 789 (Iowa 1999) (motion to dismiss); Spaur v. Owens-Corning Fiberglas Corp., 510 N.W.2d 854, 858 (Iowa 1994) (directed verdict). Additionally, the disposition of this case turns on the construction of sections 614.1(2A)(a) and 668.5(1). We also review questions of statutory construction for correction of errors at law. State v. Tarbox, 739 N.W.2d 850, 852 (Iowa 2007). Consequently, our review is for correction of errors at law.
IV. Analysis.
A. The Effect of a Statute of Repose on a Contribution Claim. Section 614.1(2A)(a) is a statute of repose. Albrecht v. Gen. Motors Corp., 648 N.W.2d 87, 92 (Iowa 2002). Although a statute of limitations and a statute of repose may have a similar effect on a cause of action, they are different animals. We have recently summarized the difference between a statute of limitations and a statute of repose as follows:
[A] statute of limitations runs from the accrual of a cause of action, whereas a statute of repose runs from a different, earlier date typically related to an act of the defendant. They are fundamentally different insofar as a statute of limitations sets forth the time within which an accrued claim must be asserted in court, in contrast to a statute of repose that operates to prevent a cause of action from even accruing. ("[W]hile a statute of limitation merely limits the time in which a plaintiff may bring suit after a cause of action accrues, a statute of repose extinguishes a cause of action after a fixed period of time . . ., regardless of *729 when the cause of action accrued."). In other words, a statute of limitations affects only the remedy, not the right, whereas a statute of repose affects the right itself, extinguishing rights or preventing rights from arising.
Id. at 91-92 (internal citations omitted).
We can illustrate this difference by examining how courts apply a statute of limitations and a statute of repose to a contribution claim. The first step in applying a statute of limitations to a contribution claim is to determine when the claim accrued. In Iowa a cause of action for contribution ordinarily accrues when one tortfeasor has discharged more than that tortfeasor's proportionate share of a common obligation. Franke v. Junko, 366 N.W.2d 536, 540 (Iowa 1985). In determining whether a statute of limitations bars a contribution claim, courts count the time from when the claim accrued to the time the action for contribution was commenced. Lawrence v. Melvin, 202 Iowa 866, 870, 211 N.W. 410, 413 (1926). Any action filed past the limitations period is barred. Id.
Courts use a different analysis when applying a statute of repose to a contribution claim. The first step in applying a statute of repose is to determine the time when the statute of repose begins to run. The legislature defines the time when the statute of repose begins to run in the statute. In a products liability action brought in Iowa, the statute of repose begins to run "after the product was first purchased, leased, bailed, or installed for use or consumption unless expressly warranted for a longer period of time by the manufacturer, assembler, designer, supplier of specifications, seller, lessor, or distributor of the product." Iowa Code § 614.1(2A)(a). The time limit in which a party may bring a products liability action against "the manufacturer, assembler, designer, supplier of specifications, seller, lessor, or distributor of a product" is fifteen years. Id.
After the expiration of fifteen years, the repose period begins. The repose period not only extinguishes claims that accrued more than fifteen years prior to the start of the repose period, but also prevents claims from accruing during the repose period. Albrecht, 648 N.W.2d at 90-91; see also Capco of Summerville, Inc. v. J.H. Gayle Const. Co., 368 S.C. 137, 628 S.E.2d 38, 41-42 (2006) (holding the statute of repose bars a contribution action before the right has even accrued); Krasaeath v. Parker, 212 Ga.App. 525, 441 S.E.2d 868, 870 (1994) (statute of repose barred contribution claim even though suit was timely under the twenty-year statute of limitations governing contribution actions). Thus, if a right to contribution would ordinarily accrue during the repose period, the statute of repose prevents it from doing so.
B. Statutory Construction of the Contribution Exception Contained in Section 614.1(2A)(a). When the legislature enacted the statute of repose for products liability cases, it created an exception to the repose period for contribution claims. The legislative exception states, "[t]his subsection shall not affect the time during which a person found liable may seek and obtain contribution or indemnity from another person whose actual fault caused a product to be defective." Iowa Code § 614.1(2A)(a).
To decide the issues raised in this appeal, we must first construe section 614.1(2A)(a). The first step in ascertaining the true intent of the legislature is to look at the statute's language. Gardin v. Long Beach Mortgage Co., 661 N.W.2d 193, 197 (Iowa 2003). When confronted *730 with the task of statutory construction we have said:
"The goal of statutory construction is to determine legislative intent. We determine legislative intent from the words chosen by the legislature, not what it should or might have said. Absent a statutory definition or an established meaning in the law, words in the statute are given their ordinary and common meaning by considering the context within which they are used. Under the guise of construction, an interpreting body may not extend, enlarge or otherwise change the meaning of a statute."
State v. Wiederien, 709 N.W.2d 538, 541 (Iowa 2006) (citation omitted). When the statute's language is plain and its meaning is clear, we look no further. State v. Snyder, 634 N.W.2d 613, 615 (Iowa 2001). Rather, "[w]e resort to `the rules of statutory construction only when the terms of [a] statute are ambiguous.'" Wiederien, 709 N.W.2d at 541 (citation omitted) (emphasis in original). "If reasonable persons can disagree on a statute's meaning, it is ambiguous." Id.
Here, the language of the statute is plain and unambiguous, meaning we do not have to resort to the rules of statutory construction. The statute provides it "shall not affect the time during which a person found liable may seek and obtain contribution or indemnity. . . ." Iowa Code § 614.1(2A)(a) (emphasis added). By using this language, the legislature made it clear that its intent in enacting the contribution exception was to avoid the repose period from having an effect on a contribution claim. Accordingly, the repose period does not prevent a contribution claim from accruing. Therefore, section 614.1(2A) (a) does not preclude the contribution claims brought by Agriliance, CHS, CF, and Heritage Trails.
C. The Application of Section 668.5(1) to the Contribution Claims. Our next task in resolving this appeal is to determine whether Agriliance, CHS, CF, and Heritage Trails had a right of contribution against Trinity. Section 668.5(1) controls a party's right to contribution. It provides:
A right of contribution exists between or among two or more persons who are liable upon the same indivisible claim for the same injury, death, or harm, whether or not judgment has been recovered against all or any of them.
Iowa Code § 668.5(1) (emphasis added). We have construed section 668.5(1) to require the party seeking contribution to have "common liability" with the contributor. McDonald v. Delhi Savings Bank, 440 N.W.2d 839, 841 (Iowa 1989). "Common liability exists when the injured party has a legally cognizable remedy against both the party seeking contribution and the party from whom contribution is sought." Id. Common liability is determined "`at the time of the injury out of which the right to contribution arises, and not at the time the action for contribution is brought. . . .'" Schreier v. Sonderleiter, 420 N.W.2d 821, 825 (Iowa 1988) (citation omitted).
Applying these principles to the facts of this case, common liability did not exist at the time of Ryan's and Nissen's injuries. In 2003 the statute of repose prevented Ryan's and Nissen's causes of action against Trinity from accruing. Because Trinity could not be liable for Ryan's and Nissen's damages, Trinity did not have common liability with Agriliance, CHS, CF, or Heritage Trails.[1] Therefore, as a *731 matter of law, section 668.5(1) precludes Agriliance's, CHS's, CF's, and Heritage Trails' contribution claims against Trinity.
D. The Interplay Between Sections 614.1(2A)(a) and 668.5(1). Agriliance, CHS, CF, and Heritage Trails argue the exception in section 614.1(2A) (a) does away with the common liability requirement in section 668.5(1) for contribution claims involving a products liability case. We disagree.
First, as we previously held in this opinion, the plain language of the contribution exception contained in section 614.1(2A) (a) only creates an exception to the time during which a person found liable may seek and obtain contribution. The legislature did not intend to relieve a party seeking contribution from proving the elements of a contribution claim.
Second, the legislature enacted section 614.1(2A) (a) in 1997.1997 Iowa Acts ch. 197, § 5. It enacted section 668.5 thirteen years earlier. 1984 Iowa Acts ch. 1293, § 5, as amended by 1987 Iowa Acts ch. 157, § 7. When the legislature enacted section 614.1(2A)(a), it did not include any language in the statute that leads us to believe the legislature had any intent to modify or repeal the statutory requirements of section 668.5.
Finally, to construe section 614.1(2A)(a) so that it does not require common liability would vitiate the purpose of the statute of repose. The purpose of section 614.1(2A) (a) was to provide a manufacturer, assembler, designer, supplier of specifications, seller, lessor, or distributor of a product with freedom from liability after the passage of fifteen years. If we were to construe section 614.1(2A) (a) in the manner urged, the purpose of the statute would be completely frustrated by making persons protected by the statute of repose liable for their products during the repose period. That would lead to an absurd result. See United Fire & Cas. Co. v. Acker, 541 N.W.2d 517, 519 (Iowa 1995) (The court does not "construe a statute in a way that would produce impractical or absurd results."). Accordingly, we hold the contribution exception contained in section 614.1(2A) (a) does not eliminate the requirement of common liability in order for a contribution claim to be viable.
V. Summary and Disposition.
In summary, we hold the contribution exception in section 614.1(2A) (a) does not prevent a claim for contribution from accruing during the period of repose. However, for a contribution action to be viable, common liability under section 668.5(1) has to exist between the tortfeasors at the time of the injury out of which the right to contribution arose. Because we find common liability did not exist between Trinity, Agriliance, CHS, CF, and Heritage Trails at the time of Ryan's and Nissen's injuries, section 668.5(1) precludes a contribution claim against Trinity as a matter of law. Therefore, we remand the case to the district court to vacate the judgments against Trinity and enter judgment in its favor. Additionally, because Heritage Trails failed to file a notice of appeal or cross appeal, we affirm the judgments obtained by Ryan and Nissen against Heritage Trails. Costs on appeal shall be born equally by Agriliance, CHS, CF, and Heritage Trails.
DISTRICT COURT JUDGMENT AFFIRMED IN PART AND REVERSED IN PART; CASE REMANDED.
NOTES
[1]  Had Ryan's and Nissen's injuries occurred less than fifteen years after the nurse tank was first purchased from Trinity, common liability would have existed to allow Agriliance, CHS, CF, and Heritage Trails to bring their contribution claims against Trinity.
