<table cellpadding="0" cellspacing="0" border="1">
 <tr>
  <td width="54">foo</td>
  <td width="100%">bar</td>
 </tr>
 <tr>
  <td width="100%" colspan="2">
   <table border>
    <tr>
     <td>
When the Whiten house burned down in Renfrew Ontario, the insurer denied liability, asserting that the Plaintiff Daphne Whiten was the cause of the fire herself and had committed arson.<br><br>

The insurance company had not only refused to pay, but had received opinions from its adjuster, its expert engineer and an investigative agency that the fire was accidental. Its own adjuster had recommended the claim be paid. The defendant's counsel, as the court found, had pressured experts to provide opinions supporting an arson defence and withheld relevant information from the experts and gave them misleading information to buttress the arson defence.<br><br>

After the fire the Plaintiff and her husband, Keith Whiten needed welfare assistance to support them.<br><br>

The jury, however, in a 4 week trial, disagreed with the position of the insurance company. It awarded not only the policy sum against the insurer, but also was sufficiently annoyed with the conduct of the company to award a further punitive damage award of $1 million.<br><br>

The company appealed. At the time of the appeal, the company acknowledged that the fire was accidental. The Ontario Court of Appeal reversed the jury award and in a 2-1 decision determined that there should be a cap on punitive damages of $100,000.<br><br>

Lawyers became hard pressed to reconcile this decision with a prior case, Hill vs. Church of Scientology. Hill, a Crown Attorney, had sued the Church for libel due to statements made accusing him of breaching a judge's order.  He succeeded. The jury at trial, aside from awarding compensatory damages, also awarded a punitive damage sum of $800,000. The decision was appealed without success to the Ontario Court of Appeal and again to the Supreme Court of Canada. The award of punitive damages was sustained at both appellate levels.<br><br>

In the Whiten case, the insurance industry is mounting all its ammunition to maintain the notion of a cap on punitive damages. It is expected that the Court of Appeal decision will receive a rough ride in the Supreme Court, given the Hill decision a few years prior.<br><br>

The concept of punitive damages is designed to act as civil penalty imposed on a wrong doer, which has conducted itself in a vindictive manner, which offends one's sense of propriety - high handed shocking behaviour. Traditionally the financial abilities of the wrong doer are a factor - the deeper the pockets the more substantial the sum to be awarded.<br><br>

Canadian courts have been reluctant to embrace the concept - awards such as Hill are rare. It is worthy of note that the dissenting reasons of Justice Laskin in Whiten were much in favour of maintaining the trial award - a lucid and powerful dissent written by a much respected jurist. Much attention will be given to this decision. Oral argument is set for the week of December 11th. A decision will likely be forthcoming in March to June time period. This decision will be no doubt a much quoted decision for many years, regardless of the outcome.<br><br>
     </td>
    </tr>
   </table>
  </td>
 </tr>
</table>


</body>
</html>
