<?xml version="1.0" encoding="UTF-8"?>
<org.eclipse.epf.uma:ContentDescription xmi:version="2.0"
    xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.5/uma.ecore"
    xmlns:epf="http://www.eclipse.org/epf" epf:version="1.5.0" xmi:id="-_xB6ZIkxGVrJogLhipCwwQ"
    name="business_rule,_EPwvQB3PEdu0yOShMMWQVw" guid="-_xB6ZIkxGVrJogLhipCwwQ" authors="Jerome Boyer"
    changeDate="2008-01-31T10:11:46.188-0800" version="1.0.0">
  <mainDescription>&lt;a id=&quot;XE_business_rule&quot; name=&quot;XE_business_rule&quot;>&lt;/a> &#xD;
&lt;p>&#xD;
    &lt;span&#xD;
    style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: HE&quot;>Formal&#xD;
    declarative statement that describes the way business people wnat their business to operate. Express in natural&#xD;
    language it models part of a business policy,&lt;/span> it &lt;span&#xD;
    style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: HE&quot;>&lt;a>is&#xD;
    specified unambiguously, and it can be implemented in a computer system. A business rule is written in a business rule&#xD;
    language, in the form of a statement made of conditions and actions that execute only if the objects treated match the&#xD;
    conditions. Business rules are packaged into a ruleset before they can be executed by a rule engine&lt;/a>.&lt;/span>&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    &lt;span&#xD;
    style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: HE&quot;>There&#xD;
    are&amp;nbsp;historically multiple definitions of a business rules. For reference purpose we can list:&lt;/span>&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
    &lt;li>&#xD;
        OMG - 1992 - Analysis and Design Reference Model : &quot;Business rules are declarations of policies or conditions that&#xD;
        must be satisfied&quot;. This definition is too restrictive as business rules includes guidelines.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Guide - 1995 - business Rules Project - &quot;Business rule is a statment that defines or constraints some aspect of the&#xD;
        business.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        &lt;span&#xD;
        style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: HE; mso-bidi-font-family: 'Times New Roman'&quot;>Business&#xD;
        Modeling with UML 2000 - &quot;&lt;span&#xD;
        style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: HE; mso-bidi-font-family: 'Times New Roman'&quot;>A&#xD;
        statement that can control or affect both the execution of a business process as well as the structure of the&#xD;
        resources in the business&quot;&lt;/span>&lt;/span>&#xD;
    &lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;p>&#xD;
    &lt;span&#xD;
    style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: HE&quot;>Below&#xD;
    are some examples of business rules:&lt;/span>&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
    &lt;li>&#xD;
        &lt;div class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;>&#xD;
            &lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 3pt 0in&quot;>&#xD;
                &lt;span style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial&quot;>&lt;span style=&quot;mso-bidi-language: HE&quot;>The claim must be&#xD;
                issued before the expiration date of the policy.&lt;/span>&lt;/span>&#xD;
            &lt;/p>&#xD;
        &lt;/div>&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        &lt;div class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;>&#xD;
            &lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 3pt 0in&quot;>&#xD;
                &lt;span style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial&quot;>&lt;span style=&quot;mso-bidi-language: HE&quot;>The claim date of&#xD;
                loss should be before the expiration date of the policy end after the effective date.&lt;/span>&lt;/span>&#xD;
            &lt;/p>&#xD;
        &lt;/div>&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        &lt;div class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;>&#xD;
            &lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 3pt 0in&quot;>&#xD;
                &lt;span style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial&quot;>If the customer is eligible for a loan then continue the&#xD;
                processing&lt;/span>&#xD;
            &lt;/p>&#xD;
        &lt;/div>&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        &lt;div class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;>&#xD;
            &lt;span style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial&quot;>If the Bank Account Number is not valid refuse the&#xD;
            operation&lt;/span>&#xD;
        &lt;/div>&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        &lt;div class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;>&#xD;
            &lt;span&#xD;
            style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA&quot;>If&#xD;
            Tax Return Secondary Taxpayer is not assigned SSN, then EITC Eligible Tax Return is False&lt;/span>&#xD;
        &lt;/div>&lt;br />&#xD;
    &lt;/li>&#xD;
&lt;/ul></mainDescription>
</org.eclipse.epf.uma:ContentDescription>
