lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [6136] Make some obsolete elements optional


From: Greg Chicares
Subject: [lmi-commits] [6136] Make some obsolete elements optional
Date: Tue, 17 Mar 2015 13:06:23 +0000

Revision: 6136
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=6136
Author:   chicares
Date:     2015-03-17 13:06:22 +0000 (Tue, 17 Mar 2015)
Log Message:
-----------
Make some obsolete elements optional

Modified Paths:
--------------
    lmi/trunk/ChangeLog
    lmi/trunk/cell.rnc
    lmi/trunk/cell.xsd
    lmi/trunk/input.cpp
    lmi/trunk/input.hpp
    lmi/trunk/input_harmonization.cpp
    lmi/trunk/input_xml_io.cpp
    lmi/trunk/sample.cns
    lmi/trunk/sample.ill

Modified: lmi/trunk/ChangeLog
===================================================================
--- lmi/trunk/ChangeLog 2015-03-16 22:35:38 UTC (rev 6135)
+++ lmi/trunk/ChangeLog 2015-03-17 13:06:22 UTC (rev 6136)
@@ -35841,3 +35841,15 @@
   premium_tax.cpp
 Improve documentation.
 
+20150317T1306Z <address@hidden> [516]
+
+  cell.rnc
+  cell.xsd
+  input.cpp
+  input.hpp
+  input_harmonization.cpp
+  input_xml_io.cpp
+  sample.cns
+  sample.ill
+Make some obsolete elements optional.
+

Modified: lmi/trunk/cell.rnc
===================================================================
--- lmi/trunk/cell.rnc  2015-03-16 22:35:38 UTC (rev 6135)
+++ lmi/trunk/cell.rnc  2015-03-17 13:06:22 UTC (rev 6136)
@@ -101,9 +101,9 @@
     ,## Death benefit option. Default: 'a'.
      element DeathBenefitOption               {dbo_sequence}
     ,## * [obsolete]
-     element DeathBenefitOptionFromIssue      {dbopt}
+     element DeathBenefitOptionFromIssue      {dbopt}?
     ,## * [obsolete]
-     element DeathBenefitOptionFromRetirement {dbopt}
+     element DeathBenefitOptionFromRetirement {dbopt}?
     ,## 7702 definitional test.
      element DefinitionOfLifeInsurance        {defn_life_ins}
     ,## * 7702A definition of material change. Default:
@@ -173,17 +173,17 @@
      ## Default: 'Yes'.
      element IncludeInComposite               {yes_or_no}
     ,## * [obsolete]
-     element IndividualPaymentAmount          {nonnegative_double}
+     element IndividualPaymentAmount          {nonnegative_double}?
     ,## * [obsolete]
-     element IndividualPaymentMode            {mode}
+     element IndividualPaymentMode            {mode}?
     ,## * [obsolete]
      element IndividualPaymentStrategy        {pmt_strategy}
     ,## * [obsolete]
-     element IndividualPaymentToAge           {age_int}
+     element IndividualPaymentToAge           {age_int}?
     ,## * [obsolete]
-     element IndividualPaymentToAlternative   {to_point}
+     element IndividualPaymentToAlternative   {to_point}?
     ,## * [obsolete]
-     element IndividualPaymentToDuration      {duration_int}
+     element IndividualPaymentToDuration      {duration_int}?
     ,## 7702A "amounts paid" for each "contract year" since beginning
      ## of most recent seven-pay period. Default: '0' if not in a
      ## seven-pay period.
@@ -311,23 +311,23 @@
      ## date, for contracts that have never had a material change.
      element LastMaterialChangeDate           {calendar_date_int}
     ,## * [obsolete]
-     element LoanAmount                       {nonnegative_double}
+     element LoanAmount                       {nonnegative_double}?
     ,## * [obsolete]
-     element LoanFromAge                      {age_int}
+     element LoanFromAge                      {age_int}?
     ,## * [obsolete]
-     element LoanFromAlternative              {from_point}
+     element LoanFromAlternative              {from_point}?
     ,## * [obsolete]
-     element LoanFromDuration                 {duration_int}
+     element LoanFromDuration                 {duration_int}?
     ,## Loan interest rate, if it is variable. Default: '0' otherwise.
      element LoanRate                         {proportion_double}
     ,## Loan rate: fixed or variable.
      element LoanRateType                     {loan_rate_type}
     ,## * [obsolete]
-     element LoanToAge                        {age_int}
+     element LoanToAge                        {age_int}?
     ,## * [obsolete]
-     element LoanToAlternative                {to_point}
+     element LoanToAlternative                {to_point}?
     ,## * [obsolete]
-     element LoanToDuration                   {duration_int}
+     element LoanToDuration                   {duration_int}?
     ,## Proportion of males when rates are custom-blended by gender.
      ## Default: '0' otherwise.
      element MaleProportion                   {proportion_double}
@@ -428,9 +428,9 @@
      ## extracts require only the current scalar value. Default: '0'.
      element SpecifiedAmount                  {specamt_sequence}
     ,## * [obsolete]
-     element SpecifiedAmountFromIssue         {nonnegative_double}
+     element SpecifiedAmountFromIssue         {nonnegative_double}?
     ,## * [obsolete]
-     element SpecifiedAmountFromRetirement    {nonnegative_double}
+     element SpecifiedAmountFromRetirement    {nonnegative_double}?
     ,## * [obsolete]
      element SpecifiedAmountStrategyFromIssue {sa_strategy}
     ,## * Accumulate interest at demand-loan rate for split dollar,
@@ -532,19 +532,19 @@
     ,## * Partial surrender. Default: '0'.
      element Withdrawal                       {numeric_sequence}
     ,## * [obsolete]
-     element WithdrawalAmount                 {nonnegative_double}
+     element WithdrawalAmount                 {nonnegative_double}?
     ,## * [obsolete]
-     element WithdrawalFromAge                {age_int}
+     element WithdrawalFromAge                {age_int}?
     ,## * [obsolete]
-     element WithdrawalFromAlternative        {from_point}
+     element WithdrawalFromAlternative        {from_point}?
     ,## * [obsolete]
-     element WithdrawalFromDuration           {duration_int}
+     element WithdrawalFromDuration           {duration_int}?
     ,## * [obsolete]
-     element WithdrawalToAge                  {age_int}
+     element WithdrawalToAge                  {age_int}?
     ,## * [obsolete]
-     element WithdrawalToAlternative          {to_point}
+     element WithdrawalToAlternative          {to_point}?
     ,## * [obsolete]
-     element WithdrawalToDuration             {duration_int}
+     element WithdrawalToDuration             {duration_int}?
     ,## Insured's address: zip code.
      element ZipCode                          {text}
     }

Modified: lmi/trunk/cell.xsd
===================================================================
--- lmi/trunk/cell.xsd  2015-03-16 22:35:38 UTC (rev 6135)
+++ lmi/trunk/cell.xsd  2015-03-17 13:06:22 UTC (rev 6136)
@@ -74,8 +74,8 @@
         <xs:element ref="CurrentCoiMultiplier"/>
         <xs:element ref="DateOfBirth"/>
         <xs:element ref="DeathBenefitOption"/>
-        <xs:element ref="DeathBenefitOptionFromIssue"/>
-        <xs:element ref="DeathBenefitOptionFromRetirement"/>
+        <xs:element minOccurs="0" ref="DeathBenefitOptionFromIssue"/>
+        <xs:element minOccurs="0" ref="DeathBenefitOptionFromRetirement"/>
         <xs:element ref="DefinitionOfLifeInsurance"/>
         <xs:element ref="DefinitionOfMaterialChange"/>
         <xs:element ref="Dumpin"/>
@@ -100,12 +100,12 @@
         <xs:element ref="HoneymoonEndorsement"/>
         <xs:element ref="HoneymoonValueSpread"/>
         <xs:element ref="IncludeInComposite"/>
-        <xs:element ref="IndividualPaymentAmount"/>
-        <xs:element ref="IndividualPaymentMode"/>
+        <xs:element minOccurs="0" ref="IndividualPaymentAmount"/>
+        <xs:element minOccurs="0" ref="IndividualPaymentMode"/>
         <xs:element ref="IndividualPaymentStrategy"/>
-        <xs:element ref="IndividualPaymentToAge"/>
-        <xs:element ref="IndividualPaymentToAlternative"/>
-        <xs:element ref="IndividualPaymentToDuration"/>
+        <xs:element minOccurs="0" ref="IndividualPaymentToAge"/>
+        <xs:element minOccurs="0" ref="IndividualPaymentToAlternative"/>
+        <xs:element minOccurs="0" ref="IndividualPaymentToDuration"/>
         <xs:element ref="Inforce7702AAmountsPaidHistory"/>
         <xs:element ref="InforceAnnualTargetPremium"/>
         <xs:element ref="InforceAsOfDate"/>
@@ -152,15 +152,15 @@
         <xs:element ref="IssueAge"/>
         <xs:element ref="LastCoiReentryDate"/>
         <xs:element ref="LastMaterialChangeDate"/>
-        <xs:element ref="LoanAmount"/>
-        <xs:element ref="LoanFromAge"/>
-        <xs:element ref="LoanFromAlternative"/>
-        <xs:element ref="LoanFromDuration"/>
+        <xs:element minOccurs="0" ref="LoanAmount"/>
+        <xs:element minOccurs="0" ref="LoanFromAge"/>
+        <xs:element minOccurs="0" ref="LoanFromAlternative"/>
+        <xs:element minOccurs="0" ref="LoanFromDuration"/>
         <xs:element ref="LoanRate"/>
         <xs:element ref="LoanRateType"/>
-        <xs:element ref="LoanToAge"/>
-        <xs:element ref="LoanToAlternative"/>
-        <xs:element ref="LoanToDuration"/>
+        <xs:element minOccurs="0" ref="LoanToAge"/>
+        <xs:element minOccurs="0" ref="LoanToAlternative"/>
+        <xs:element minOccurs="0" ref="LoanToDuration"/>
         <xs:element ref="MaleProportion"/>
         <xs:element ref="MasterContractNumber"/>
         <xs:element ref="MaximumNaar"/>
@@ -201,8 +201,8 @@
         <xs:element ref="SolveToWhich"/>
         <xs:element ref="SolveType"/>
         <xs:element ref="SpecifiedAmount"/>
-        <xs:element ref="SpecifiedAmountFromIssue"/>
-        <xs:element ref="SpecifiedAmountFromRetirement"/>
+        <xs:element minOccurs="0" ref="SpecifiedAmountFromIssue"/>
+        <xs:element minOccurs="0" ref="SpecifiedAmountFromRetirement"/>
         <xs:element ref="SpecifiedAmountStrategyFromIssue"/>
         <xs:element ref="SplitDollarAccumulateInterest"/>
         <xs:element ref="SplitDollarLoanRate"/>
@@ -248,13 +248,13 @@
         <xs:element ref="WaiverOfPremiumBenefit"/>
         <xs:element ref="WithdrawToBasisThenLoan"/>
         <xs:element ref="Withdrawal"/>
-        <xs:element ref="WithdrawalAmount"/>
-        <xs:element ref="WithdrawalFromAge"/>
-        <xs:element ref="WithdrawalFromAlternative"/>
-        <xs:element ref="WithdrawalFromDuration"/>
-        <xs:element ref="WithdrawalToAge"/>
-        <xs:element ref="WithdrawalToAlternative"/>
-        <xs:element ref="WithdrawalToDuration"/>
+        <xs:element minOccurs="0" ref="WithdrawalAmount"/>
+        <xs:element minOccurs="0" ref="WithdrawalFromAge"/>
+        <xs:element minOccurs="0" ref="WithdrawalFromAlternative"/>
+        <xs:element minOccurs="0" ref="WithdrawalFromDuration"/>
+        <xs:element minOccurs="0" ref="WithdrawalToAge"/>
+        <xs:element minOccurs="0" ref="WithdrawalToAlternative"/>
+        <xs:element minOccurs="0" ref="WithdrawalToDuration"/>
         <xs:element ref="ZipCode"/>
       </xs:sequence>
       <xs:attribute name="version" use="required">

Modified: lmi/trunk/input.cpp
===================================================================
--- lmi/trunk/input.cpp 2015-03-16 22:35:38 UTC (rev 6135)
+++ lmi/trunk/input.cpp 2015-03-17 13:06:22 UTC (rev 6136)
@@ -479,31 +479,8 @@
     ascribe("UseDOB"                                , &Input::UseDOB           
                     );
     ascribe("EffectiveDateToday"                    , 
&Input::EffectiveDateToday                    );
 
-    ascribe("DeathBenefitOptionFromRetirement"      , 
&Input::DeathBenefitOptionFromRetirement      );
-    ascribe("DeathBenefitOptionFromIssue"           , 
&Input::DeathBenefitOptionFromIssue           );
-    ascribe("SpecifiedAmountFromRetirement"         , 
&Input::SpecifiedAmountFromRetirement         );
-    ascribe("SpecifiedAmountFromIssue"              , 
&Input::SpecifiedAmountFromIssue              );
     ascribe("SpecifiedAmountStrategyFromIssue"      , 
&Input::SpecifiedAmountStrategyFromIssue      );
-    ascribe("IndividualPaymentMode"                 , 
&Input::IndividualPaymentMode                 );
-    ascribe("IndividualPaymentToAlternative"        , 
&Input::IndividualPaymentToAlternative        );
-    ascribe("IndividualPaymentToAge"                , 
&Input::IndividualPaymentToAge                );
-    ascribe("IndividualPaymentToDuration"           , 
&Input::IndividualPaymentToDuration           );
-    ascribe("IndividualPaymentAmount"               , 
&Input::IndividualPaymentAmount               );
     ascribe("IndividualPaymentStrategy"             , 
&Input::IndividualPaymentStrategy             );
-    ascribe("LoanAmount"                            , &Input::LoanAmount       
                     );
-    ascribe("LoanFromAge"                           , &Input::LoanFromAge      
                     );
-    ascribe("LoanFromAlternative"                   , 
&Input::LoanFromAlternative                   );
-    ascribe("LoanFromDuration"                      , &Input::LoanFromDuration 
                     );
-    ascribe("LoanToAge"                             , &Input::LoanToAge        
                     );
-    ascribe("LoanToAlternative"                     , 
&Input::LoanToAlternative                     );
-    ascribe("LoanToDuration"                        , &Input::LoanToDuration   
                     );
-    ascribe("WithdrawalAmount"                      , &Input::WithdrawalAmount 
                     );
-    ascribe("WithdrawalFromAge"                     , 
&Input::WithdrawalFromAge                     );
-    ascribe("WithdrawalFromAlternative"             , 
&Input::WithdrawalFromAlternative             );
-    ascribe("WithdrawalFromDuration"                , 
&Input::WithdrawalFromDuration                );
-    ascribe("WithdrawalToAge"                       , &Input::WithdrawalToAge  
                     );
-    ascribe("WithdrawalToAlternative"               , 
&Input::WithdrawalToAlternative               );
-    ascribe("WithdrawalToDuration"                  , 
&Input::WithdrawalToDuration                  );
 }
 
 datum_base const* Input::DoBaseDatumPointer

Modified: lmi/trunk/input.hpp
===================================================================
--- lmi/trunk/input.hpp 2015-03-16 22:35:38 UTC (rev 6135)
+++ lmi/trunk/input.hpp 2015-03-17 13:06:22 UTC (rev 6136)
@@ -431,31 +431,8 @@
     mce_to_point             SolveToWhich                    ;
     mce_yes_or_no            UseDOB                          ;
     mce_yes_or_no            EffectiveDateToday              ;
-    mce_dbopt                DeathBenefitOptionFromRetirement;
-    mce_dbopt                DeathBenefitOptionFromIssue     ;
-    tnr_nonnegative_double   SpecifiedAmountFromRetirement   ;
-    tnr_nonnegative_double   SpecifiedAmountFromIssue        ;
     mce_sa_strategy          SpecifiedAmountStrategyFromIssue;
-    mce_mode                 IndividualPaymentMode           ;
-    mce_to_point             IndividualPaymentToAlternative  ;
-    tnr_age                  IndividualPaymentToAge          ;
-    tnr_duration             IndividualPaymentToDuration     ;
-    tnr_nonnegative_double   IndividualPaymentAmount         ;
     mce_pmt_strategy         IndividualPaymentStrategy       ;
-    tnr_nonnegative_double   LoanAmount                      ;
-    tnr_age                  LoanFromAge                     ;
-    mce_from_point           LoanFromAlternative             ;
-    tnr_duration             LoanFromDuration                ;
-    tnr_age                  LoanToAge                       ;
-    mce_to_point             LoanToAlternative               ;
-    tnr_duration             LoanToDuration                  ;
-    tnr_nonnegative_double   WithdrawalAmount                ;
-    tnr_age                  WithdrawalFromAge               ;
-    mce_from_point           WithdrawalFromAlternative       ;
-    tnr_duration             WithdrawalFromDuration          ;
-    tnr_age                  WithdrawalToAge                 ;
-    mce_to_point             WithdrawalToAlternative         ;
-    tnr_duration             WithdrawalToDuration            ;
 
     // TODO ?? For the nonce, only an unrestricted tn_range type is
     // used, because tn_range doesn't permit initialization or

Modified: lmi/trunk/input_harmonization.cpp
===================================================================
--- lmi/trunk/input_harmonization.cpp   2015-03-16 22:35:38 UTC (rev 6135)
+++ lmi/trunk/input_harmonization.cpp   2015-03-17 13:06:22 UTC (rev 6136)
@@ -111,35 +111,8 @@
 {
     // First of all, initialize obsolete variables exactly as the
     // schema prescribes, to accommodate admin extracts that don't
-    // necessarily do so.
-
-    // INPUT !! These are ready to expunge.
-    DeathBenefitOptionFromIssue      = "A";
-    DeathBenefitOptionFromRetirement = "A";
-    IndividualPaymentAmount          = 0.0;
-    IndividualPaymentMode            = "Annual";
-    IndividualPaymentToAge           = 0;
-    IndividualPaymentToAlternative   = "Retirement";
-    IndividualPaymentToDuration      = 0;
-    LoanAmount                       = 0.0;
-    LoanFromAge                      = 0;
-    LoanFromAlternative              = "Issue";
-    LoanFromDuration                 = 0;
-    LoanToAge                        = 0;
-    LoanToAlternative                = "Retirement";
-    LoanToDuration                   = 0;
-    SpecifiedAmountFromIssue         = 0.0;
-    SpecifiedAmountFromRetirement    = 0.0;
-    WithdrawalAmount                 = 0.0;
-    WithdrawalFromAge                = 0;
-    WithdrawalFromAlternative        = "Issue";
-    WithdrawalFromDuration           = 0;
-    WithdrawalToAge                  = 0;
-    WithdrawalToAlternative          = "Retirement";
-    WithdrawalToDuration             = 0;
-
-    // These are kept because their conditional-enablement code may be
-    // useful someday.
+    // necessarily do so. These are kept because their conditional-
+    // enablement code may be useful someday.
     IndividualPaymentStrategy        = "PmtInputScalar";
     SpecifiedAmountStrategyFromIssue = "SAInputScalar";
 

Modified: lmi/trunk/input_xml_io.cpp
===================================================================
--- lmi/trunk/input_xml_io.cpp  2015-03-16 22:35:38 UTC (rev 6135)
+++ lmi/trunk/input_xml_io.cpp  2015-03-17 13:06:22 UTC (rev 6136)
@@ -105,45 +105,68 @@
 bool Input::is_detritus(std::string const& s) const
 {
     static std::string const a[] =
-        {"AgentFirstName"                // Single name instead.
-        ,"AgentLastName"                 // Single name instead.
-        ,"AgentMiddleName"               // Single name instead.
-        ,"AssumedCaseNumberOfLives"      // Withdrawn.
-        ,"CaseAssumedAssets"             // Withdrawn.
-        ,"CorporationPremiumTableNumber" // Never implemented.
-        ,"CorporationTaxpayerId"         // Would violate privacy.
-        ,"CurrentCoiGrading"             // Withdrawn.
-        ,"DateOfRetirement"              // Withdrawn.
-        ,"DeprecatedSolveFromWhich"      // Renamed (without 'Deprecated'-).
-        ,"DeprecatedSolveTgtAtWhich"     // Renamed (without 'Deprecated'-).
-        ,"DeprecatedSolveToWhich"        // Renamed (without 'Deprecated'-).
-        ,"DeprecatedUseDOB"              // Renamed (without 'Deprecated'-).
-        ,"DeprecatedUseDOR"              // Withdrawn.
-        ,"External1035ExchangeBasis"     // Renamed to 
'External1035ExchangeTaxBasis'.
-        ,"FilingApprovalState"           // Alias for 'StateOfJurisdiction'.
-        ,"FirstName"                     // Single name instead.
-        ,"Franchise"                     // Renamed to 'MasterContractNumber'.
-        ,"InforceCumulativePayments"     // Renamed to 
'InforceCumulativeNoLapsePayments'.
-        ,"InforceDcvDeathBenefit"        // Misbegotten.
-        ,"InforceExperienceReserve"      // Renamed before implementation.
-        ,"InsuredPremiumTableNumber"     // Never implemented.
-        ,"Internal1035ExchangeBasis"     // Renamed to 
'Internal1035ExchangeTaxBasis'.
-        ,"LastName"                      // Single name instead.
-        ,"MiddleName"                    // Single name instead.
-        ,"NetMortalityChargeHistory"     // Renamed before implementation.
-        ,"OffshoreCorridorFactor"        // Withdrawn.
-        ,"PartialMortalityTable"         // Never implemented.
-        ,"PayLoanInterestInCash"         // Never implemented.
-        ,"PolicyDate"                    // Never implemented.
-        ,"PolicyLevelFlatExtra"          // Never implemented; poor name.
-        ,"PolicyNumber"                  // Renamed to 'ContractNumber'.
-        ,"PremiumHistory"                // Renamed to 
'Inforce7702AAmountsPaidHistory'.
-        ,"SocialSecurityNumber"          // Withdrawn: would violate privacy.
-        ,"SolveBasis"                    // Renamed to 
'SolveExpenseGeneralAccountBasis'.
-        ,"SpecamtHistory"                // Merged into 'SpecifiedAmount'.
-        ,"TermProportion"                // Disused: cf. 'TermRiderProportion'.
-        ,"UseOffshoreCorridorFactor"     // Withdrawn.
-        ,"YearsOfZeroDeaths"             // Withdrawn.
+        {"AgentFirstName"                   // Single name instead.
+        ,"AgentLastName"                    // Single name instead.
+        ,"AgentMiddleName"                  // Single name instead.
+        ,"AssumedCaseNumberOfLives"         // Withdrawn.
+        ,"CaseAssumedAssets"                // Withdrawn.
+        ,"CorporationPremiumTableNumber"    // Never implemented.
+        ,"CorporationTaxpayerId"            // Would violate privacy.
+        ,"CurrentCoiGrading"                // Withdrawn.
+        ,"DateOfRetirement"                 // Withdrawn.
+        ,"DeathBenefitOptionFromIssue"      // Withdrawn.
+        ,"DeathBenefitOptionFromRetirement" // Withdrawn.
+        ,"DeprecatedSolveFromWhich"         // Renamed (without 'Deprecated'-).
+        ,"DeprecatedSolveTgtAtWhich"        // Renamed (without 'Deprecated'-).
+        ,"DeprecatedSolveToWhich"           // Renamed (without 'Deprecated'-).
+        ,"DeprecatedUseDOB"                 // Renamed (without 'Deprecated'-).
+        ,"DeprecatedUseDOR"                 // Withdrawn.
+        ,"External1035ExchangeBasis"        // Renamed to 
'External1035ExchangeTaxBasis'.
+        ,"FilingApprovalState"              // Alias for 'StateOfJurisdiction'.
+        ,"FirstName"                        // Single name instead.
+        ,"Franchise"                        // Renamed to 
'MasterContractNumber'.
+        ,"IndividualPaymentAmount"          // Withdrawn.
+        ,"IndividualPaymentMode"            // Withdrawn.
+        ,"IndividualPaymentToAge"           // Withdrawn.
+        ,"IndividualPaymentToAlternative"   // Withdrawn.
+        ,"IndividualPaymentToDuration"      // Withdrawn.
+        ,"InforceCumulativePayments"        // Renamed to 
'InforceCumulativeNoLapsePayments'.
+        ,"InforceDcvDeathBenefit"           // Misbegotten.
+        ,"InforceExperienceReserve"         // Renamed before implementation.
+        ,"InsuredPremiumTableNumber"        // Never implemented.
+        ,"Internal1035ExchangeBasis"        // Renamed to 
'Internal1035ExchangeTaxBasis'.
+        ,"LastName"                         // Single name instead.
+        ,"LoanAmount"                       // Withdrawn.
+        ,"LoanFromAge"                      // Withdrawn.
+        ,"LoanFromAlternative"              // Withdrawn.
+        ,"LoanFromDuration"                 // Withdrawn.
+        ,"LoanToAge"                        // Withdrawn.
+        ,"LoanToAlternative"                // Withdrawn.
+        ,"LoanToDuration"                   // Withdrawn.
+        ,"MiddleName"                       // Single name instead.
+        ,"NetMortalityChargeHistory"        // Renamed before implementation.
+        ,"OffshoreCorridorFactor"           // Withdrawn.
+        ,"PartialMortalityTable"            // Never implemented.
+        ,"PayLoanInterestInCash"            // Never implemented.
+        ,"PolicyDate"                       // Never implemented.
+        ,"PolicyLevelFlatExtra"             // Never implemented; poor name.
+        ,"PolicyNumber"                     // Renamed to 'ContractNumber'.
+        ,"PremiumHistory"                   // Renamed to 
'Inforce7702AAmountsPaidHistory'.
+        ,"SocialSecurityNumber"             // Withdrawn: would violate 
privacy.
+        ,"SolveBasis"                       // Renamed to 
'SolveExpenseGeneralAccountBasis'.
+        ,"SpecamtHistory"                   // Merged into 'SpecifiedAmount'.
+        ,"SpecifiedAmountFromIssue"         // Withdrawn.
+        ,"SpecifiedAmountFromRetirement"    // Withdrawn.
+        ,"TermProportion"                   // Disused: cf. 
'TermRiderProportion'.
+        ,"UseOffshoreCorridorFactor"        // Withdrawn.
+        ,"WithdrawalAmount"                 // Withdrawn.
+        ,"WithdrawalFromAge"                // Withdrawn.
+        ,"WithdrawalFromAlternative"        // Withdrawn.
+        ,"WithdrawalFromDuration"           // Withdrawn.
+        ,"WithdrawalToAge"                  // Withdrawn.
+        ,"WithdrawalToAlternative"          // Withdrawn.
+        ,"WithdrawalToDuration"             // Withdrawn.
+        ,"YearsOfZeroDeaths"                // Withdrawn.
         };
     static std::vector<std::string> const v(a, a + lmi_array_size(a));
     return contains(v, s);

Modified: lmi/trunk/sample.cns
===================================================================
--- lmi/trunk/sample.cns        2015-03-16 22:35:38 UTC (rev 6135)
+++ lmi/trunk/sample.cns        2015-03-17 13:06:22 UTC (rev 6136)
@@ -36,8 +36,6 @@
       <CurrentCoiMultiplier>1</CurrentCoiMultiplier>
       <DateOfBirth>2437604</DateOfBirth>
       <DeathBenefitOption>a</DeathBenefitOption>
-      <DeathBenefitOptionFromIssue>A</DeathBenefitOptionFromIssue>
-      <DeathBenefitOptionFromRetirement>A</DeathBenefitOptionFromRetirement>
       <DefinitionOfLifeInsurance>CVAT</DefinitionOfLifeInsurance>
       <DefinitionOfMaterialChange>Earlier of increase or unnecessary 
premium</DefinitionOfMaterialChange>
       <Dumpin>0</Dumpin>
@@ -62,12 +60,7 @@
       <HoneymoonEndorsement>No</HoneymoonEndorsement>
       <HoneymoonValueSpread>0</HoneymoonValueSpread>
       <IncludeInComposite>Yes</IncludeInComposite>
-      <IndividualPaymentAmount>0</IndividualPaymentAmount>
-      <IndividualPaymentMode>Annual</IndividualPaymentMode>
       <IndividualPaymentStrategy>PmtInputScalar</IndividualPaymentStrategy>
-      <IndividualPaymentToAge>95</IndividualPaymentToAge>
-      <IndividualPaymentToAlternative>Maturity</IndividualPaymentToAlternative>
-      <IndividualPaymentToDuration>50</IndividualPaymentToDuration>
       <Inforce7702AAmountsPaidHistory>0</Inforce7702AAmountsPaidHistory>
       <InforceAnnualTargetPremium>0</InforceAnnualTargetPremium>
       <InforceAsOfDate>2454040</InforceAsOfDate>
@@ -114,15 +107,8 @@
       <IssueAge>45</IssueAge>
       <LastCoiReentryDate>2454040</LastCoiReentryDate>
       <LastMaterialChangeDate>2454040</LastMaterialChangeDate>
-      <LoanAmount>0</LoanAmount>
-      <LoanFromAge>45</LoanFromAge>
-      <LoanFromAlternative>Retirement</LoanFromAlternative>
-      <LoanFromDuration>20</LoanFromDuration>
       <LoanRate>0.06</LoanRate>
       <LoanRateType>Fixed loan rate</LoanRateType>
-      <LoanToAge>95</LoanToAge>
-      <LoanToAlternative>Maturity</LoanToAlternative>
-      <LoanToDuration>50</LoanToDuration>
       <MaleProportion>1</MaleProportion>
       <MasterContractNumber/>
       <MaximumNaar>1000000000</MaximumNaar>
@@ -163,8 +149,6 @@
       <SolveToWhich>Retirement</SolveToWhich>
       <SolveType>No solve</SolveType>
       <SpecifiedAmount>1000000</SpecifiedAmount>
-      <SpecifiedAmountFromIssue>1000000</SpecifiedAmountFromIssue>
-      <SpecifiedAmountFromRetirement>1000000</SpecifiedAmountFromRetirement>
       
<SpecifiedAmountStrategyFromIssue>SAInputScalar</SpecifiedAmountStrategyFromIssue>
       <SplitDollarAccumulateInterest>No</SplitDollarAccumulateInterest>
       <SplitDollarLoanRate>0</SplitDollarLoanRate>
@@ -210,13 +194,6 @@
       <WaiverOfPremiumBenefit>No</WaiverOfPremiumBenefit>
       <WithdrawToBasisThenLoan>No</WithdrawToBasisThenLoan>
       <Withdrawal>0</Withdrawal>
-      <WithdrawalAmount>0</WithdrawalAmount>
-      <WithdrawalFromAge>45</WithdrawalFromAge>
-      <WithdrawalFromAlternative>Retirement</WithdrawalFromAlternative>
-      <WithdrawalFromDuration>20</WithdrawalFromDuration>
-      <WithdrawalToAge>95</WithdrawalToAge>
-      <WithdrawalToAlternative>Maturity</WithdrawalToAlternative>
-      <WithdrawalToDuration>50</WithdrawalToDuration>
       <ZipCode/>
     </cell>
   </case_default>
@@ -256,8 +233,6 @@
       <CurrentCoiMultiplier>1</CurrentCoiMultiplier>
       <DateOfBirth>2437604</DateOfBirth>
       <DeathBenefitOption>a</DeathBenefitOption>
-      <DeathBenefitOptionFromIssue>A</DeathBenefitOptionFromIssue>
-      <DeathBenefitOptionFromRetirement>A</DeathBenefitOptionFromRetirement>
       <DefinitionOfLifeInsurance>CVAT</DefinitionOfLifeInsurance>
       <DefinitionOfMaterialChange>Earlier of increase or unnecessary 
premium</DefinitionOfMaterialChange>
       <Dumpin>0</Dumpin>
@@ -282,12 +257,7 @@
       <HoneymoonEndorsement>No</HoneymoonEndorsement>
       <HoneymoonValueSpread>0</HoneymoonValueSpread>
       <IncludeInComposite>Yes</IncludeInComposite>
-      <IndividualPaymentAmount>0</IndividualPaymentAmount>
-      <IndividualPaymentMode>Annual</IndividualPaymentMode>
       <IndividualPaymentStrategy>PmtInputScalar</IndividualPaymentStrategy>
-      <IndividualPaymentToAge>95</IndividualPaymentToAge>
-      <IndividualPaymentToAlternative>Maturity</IndividualPaymentToAlternative>
-      <IndividualPaymentToDuration>50</IndividualPaymentToDuration>
       <Inforce7702AAmountsPaidHistory>0</Inforce7702AAmountsPaidHistory>
       <InforceAnnualTargetPremium>0</InforceAnnualTargetPremium>
       <InforceAsOfDate>2454040</InforceAsOfDate>
@@ -334,15 +304,8 @@
       <IssueAge>45</IssueAge>
       <LastCoiReentryDate>2454040</LastCoiReentryDate>
       <LastMaterialChangeDate>2454040</LastMaterialChangeDate>
-      <LoanAmount>0</LoanAmount>
-      <LoanFromAge>45</LoanFromAge>
-      <LoanFromAlternative>Retirement</LoanFromAlternative>
-      <LoanFromDuration>20</LoanFromDuration>
       <LoanRate>0.06</LoanRate>
       <LoanRateType>Fixed loan rate</LoanRateType>
-      <LoanToAge>95</LoanToAge>
-      <LoanToAlternative>Maturity</LoanToAlternative>
-      <LoanToDuration>50</LoanToDuration>
       <MaleProportion>1</MaleProportion>
       <MasterContractNumber/>
       <MaximumNaar>1000000000</MaximumNaar>
@@ -383,8 +346,6 @@
       <SolveToWhich>Retirement</SolveToWhich>
       <SolveType>No solve</SolveType>
       <SpecifiedAmount>1000000</SpecifiedAmount>
-      <SpecifiedAmountFromIssue>1000000</SpecifiedAmountFromIssue>
-      <SpecifiedAmountFromRetirement>1000000</SpecifiedAmountFromRetirement>
       
<SpecifiedAmountStrategyFromIssue>SAInputScalar</SpecifiedAmountStrategyFromIssue>
       <SplitDollarAccumulateInterest>No</SplitDollarAccumulateInterest>
       <SplitDollarLoanRate>0</SplitDollarLoanRate>
@@ -430,13 +391,6 @@
       <WaiverOfPremiumBenefit>No</WaiverOfPremiumBenefit>
       <WithdrawToBasisThenLoan>No</WithdrawToBasisThenLoan>
       <Withdrawal>0</Withdrawal>
-      <WithdrawalAmount>0</WithdrawalAmount>
-      <WithdrawalFromAge>45</WithdrawalFromAge>
-      <WithdrawalFromAlternative>Retirement</WithdrawalFromAlternative>
-      <WithdrawalFromDuration>20</WithdrawalFromDuration>
-      <WithdrawalToAge>95</WithdrawalToAge>
-      <WithdrawalToAlternative>Maturity</WithdrawalToAlternative>
-      <WithdrawalToDuration>50</WithdrawalToDuration>
       <ZipCode/>
     </cell>
   </class_defaults>
@@ -476,8 +430,6 @@
       <CurrentCoiMultiplier>1</CurrentCoiMultiplier>
       <DateOfBirth>2437604</DateOfBirth>
       <DeathBenefitOption>a</DeathBenefitOption>
-      <DeathBenefitOptionFromIssue>A</DeathBenefitOptionFromIssue>
-      <DeathBenefitOptionFromRetirement>A</DeathBenefitOptionFromRetirement>
       <DefinitionOfLifeInsurance>CVAT</DefinitionOfLifeInsurance>
       <DefinitionOfMaterialChange>Earlier of increase or unnecessary 
premium</DefinitionOfMaterialChange>
       <Dumpin>0</Dumpin>
@@ -502,12 +454,7 @@
       <HoneymoonEndorsement>No</HoneymoonEndorsement>
       <HoneymoonValueSpread>0</HoneymoonValueSpread>
       <IncludeInComposite>Yes</IncludeInComposite>
-      <IndividualPaymentAmount>0</IndividualPaymentAmount>
-      <IndividualPaymentMode>Annual</IndividualPaymentMode>
       <IndividualPaymentStrategy>PmtInputScalar</IndividualPaymentStrategy>
-      <IndividualPaymentToAge>95</IndividualPaymentToAge>
-      <IndividualPaymentToAlternative>Maturity</IndividualPaymentToAlternative>
-      <IndividualPaymentToDuration>50</IndividualPaymentToDuration>
       <Inforce7702AAmountsPaidHistory>0</Inforce7702AAmountsPaidHistory>
       <InforceAnnualTargetPremium>0</InforceAnnualTargetPremium>
       <InforceAsOfDate>2454040</InforceAsOfDate>
@@ -554,15 +501,8 @@
       <IssueAge>45</IssueAge>
       <LastCoiReentryDate>2454040</LastCoiReentryDate>
       <LastMaterialChangeDate>2454040</LastMaterialChangeDate>
-      <LoanAmount>0</LoanAmount>
-      <LoanFromAge>45</LoanFromAge>
-      <LoanFromAlternative>Retirement</LoanFromAlternative>
-      <LoanFromDuration>20</LoanFromDuration>
       <LoanRate>0.06</LoanRate>
       <LoanRateType>Fixed loan rate</LoanRateType>
-      <LoanToAge>95</LoanToAge>
-      <LoanToAlternative>Maturity</LoanToAlternative>
-      <LoanToDuration>50</LoanToDuration>
       <MaleProportion>1</MaleProportion>
       <MasterContractNumber/>
       <MaximumNaar>1000000000</MaximumNaar>
@@ -603,8 +543,6 @@
       <SolveToWhich>Retirement</SolveToWhich>
       <SolveType>No solve</SolveType>
       <SpecifiedAmount>1000000</SpecifiedAmount>
-      <SpecifiedAmountFromIssue>1000000</SpecifiedAmountFromIssue>
-      <SpecifiedAmountFromRetirement>1000000</SpecifiedAmountFromRetirement>
       
<SpecifiedAmountStrategyFromIssue>SAInputScalar</SpecifiedAmountStrategyFromIssue>
       <SplitDollarAccumulateInterest>No</SplitDollarAccumulateInterest>
       <SplitDollarLoanRate>0</SplitDollarLoanRate>
@@ -650,13 +588,6 @@
       <WaiverOfPremiumBenefit>No</WaiverOfPremiumBenefit>
       <WithdrawToBasisThenLoan>No</WithdrawToBasisThenLoan>
       <Withdrawal>0</Withdrawal>
-      <WithdrawalAmount>0</WithdrawalAmount>
-      <WithdrawalFromAge>45</WithdrawalFromAge>
-      <WithdrawalFromAlternative>Retirement</WithdrawalFromAlternative>
-      <WithdrawalFromDuration>20</WithdrawalFromDuration>
-      <WithdrawalToAge>95</WithdrawalToAge>
-      <WithdrawalToAlternative>Maturity</WithdrawalToAlternative>
-      <WithdrawalToDuration>50</WithdrawalToDuration>
       <ZipCode/>
     </cell>
   </particular_cells>

Modified: lmi/trunk/sample.ill
===================================================================
--- lmi/trunk/sample.ill        2015-03-16 22:35:38 UTC (rev 6135)
+++ lmi/trunk/sample.ill        2015-03-17 13:06:22 UTC (rev 6136)
@@ -35,8 +35,6 @@
     <CurrentCoiMultiplier>1</CurrentCoiMultiplier>
     <DateOfBirth>2437604</DateOfBirth>
     <DeathBenefitOption>a</DeathBenefitOption>
-    <DeathBenefitOptionFromIssue>A</DeathBenefitOptionFromIssue>
-    <DeathBenefitOptionFromRetirement>A</DeathBenefitOptionFromRetirement>
     <DefinitionOfLifeInsurance>CVAT</DefinitionOfLifeInsurance>
     <DefinitionOfMaterialChange>Earlier of increase or unnecessary 
premium</DefinitionOfMaterialChange>
     <Dumpin>0</Dumpin>
@@ -61,12 +59,7 @@
     <HoneymoonEndorsement>No</HoneymoonEndorsement>
     <HoneymoonValueSpread>0</HoneymoonValueSpread>
     <IncludeInComposite>Yes</IncludeInComposite>
-    <IndividualPaymentAmount>0</IndividualPaymentAmount>
-    <IndividualPaymentMode>Annual</IndividualPaymentMode>
     <IndividualPaymentStrategy>PmtInputScalar</IndividualPaymentStrategy>
-    <IndividualPaymentToAge>95</IndividualPaymentToAge>
-    <IndividualPaymentToAlternative>Maturity</IndividualPaymentToAlternative>
-    <IndividualPaymentToDuration>50</IndividualPaymentToDuration>
     <Inforce7702AAmountsPaidHistory>0</Inforce7702AAmountsPaidHistory>
     <InforceAnnualTargetPremium>0</InforceAnnualTargetPremium>
     <InforceAsOfDate>2454040</InforceAsOfDate>
@@ -113,15 +106,8 @@
     <IssueAge>45</IssueAge>
     <LastCoiReentryDate>2454040</LastCoiReentryDate>
     <LastMaterialChangeDate>2454040</LastMaterialChangeDate>
-    <LoanAmount>0</LoanAmount>
-    <LoanFromAge>45</LoanFromAge>
-    <LoanFromAlternative>Retirement</LoanFromAlternative>
-    <LoanFromDuration>20</LoanFromDuration>
     <LoanRate>0.06</LoanRate>
     <LoanRateType>Fixed loan rate</LoanRateType>
-    <LoanToAge>95</LoanToAge>
-    <LoanToAlternative>Maturity</LoanToAlternative>
-    <LoanToDuration>50</LoanToDuration>
     <MaleProportion>1</MaleProportion>
     <MasterContractNumber/>
     <MaximumNaar>1000000000</MaximumNaar>
@@ -162,8 +148,6 @@
     <SolveToWhich>Retirement</SolveToWhich>
     <SolveType>No solve</SolveType>
     <SpecifiedAmount>1000000</SpecifiedAmount>
-    <SpecifiedAmountFromIssue>1000000</SpecifiedAmountFromIssue>
-    <SpecifiedAmountFromRetirement>1000000</SpecifiedAmountFromRetirement>
     
<SpecifiedAmountStrategyFromIssue>SAInputScalar</SpecifiedAmountStrategyFromIssue>
     <SplitDollarAccumulateInterest>No</SplitDollarAccumulateInterest>
     <SplitDollarLoanRate>0</SplitDollarLoanRate>
@@ -209,13 +193,6 @@
     <WaiverOfPremiumBenefit>No</WaiverOfPremiumBenefit>
     <WithdrawToBasisThenLoan>No</WithdrawToBasisThenLoan>
     <Withdrawal>0</Withdrawal>
-    <WithdrawalAmount>0</WithdrawalAmount>
-    <WithdrawalFromAge>45</WithdrawalFromAge>
-    <WithdrawalFromAlternative>Retirement</WithdrawalFromAlternative>
-    <WithdrawalFromDuration>20</WithdrawalFromDuration>
-    <WithdrawalToAge>95</WithdrawalToAge>
-    <WithdrawalToAlternative>Maturity</WithdrawalToAlternative>
-    <WithdrawalToDuration>50</WithdrawalToDuration>
     <ZipCode/>
   </cell>
 </single_cell_document>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]