Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Property] Clarify relationship between "required field" and "blanks allowed" in OED Spec #181

Open
4 tasks
benhayes21 opened this issue May 3, 2024 · 6 comments
Assignees
Labels
major major release (breaking change) production

Comments

@benhayes21
Copy link
Contributor

Description

It has been suggested that having both "required field" and "blanks allowed" columns in the OED spec is counter intuitive, confusing and can lead to different interpretations of the specification.

Reasons for change

Validation software can make inferences about what the data should look like, which can be different between applications. Oasis itself applies logic to, say, required fields that are blank (where it applies the default value).

Ideally the spec should be clear enough that inferences don't need to be made. It's proposed that all required fields should not allow blanks, and all optional fields should allow blanks. But then the question is whether we need two columns in the specification

Required fields not allowing blanks should not need a default value (because they will always be there)

Scope of change

  • [X ] Specification
  • Location File
  • Accounts File
  • Reinsurance Scope
  • Reinsurance Info

Impact of change

Changing the specification to have only one column will cause validation software that uses the specification to break.
Aligning the logic so that all required fields do not allow blanks (and vice versa) will not break the validation but previously valid OED files might no longer be valid.

Fields to be discussed

@johcarter johcarter added the major major release (breaking change) label May 8, 2024
@johcarter
Copy link
Contributor

As discussed, this would be a breaking change and can be considered for OED v4. In particular;

Location file:
Required TIV fields (BuildingTIV, ContentsTIV, BITIV) must be populated with 0's if no value is given. They will no longer be allowed to be blank. As an optional field, OtherTIV would continue to be allowed to be blank.

Reinsurance info file: RiskLevel (required field) will not allowed to be blank. Currently a blank means that there are no risk terms to apply, which is valid for some Reinsurance Types. We would need to introduce a non-blank value meaning no risk terms. e.g. 'NRT'. (char(3)) This would replace blank in the list in 'OtherValues'.

LocPopNumber is the only optional field which may not be blank. For consistency with all the other optional fields, this would be relaxed to allow blanks, with a default value specified (0?)

@johcarter
Copy link
Contributor

johcarter commented May 15, 2024

Follow up proposal:

  • Remove 'Allow blanks' column and all required fields implicitly must not be blank, and all optional fields may implicitly be blank (breaking change to OED specification file)
  • Make all TIVs optional so that blanks continue to be acceptable (non-breaking)
  • Continue to allow Conditionally Required fields to be blank. (no change)
  • Allow LocPopNumber to be blank with a default value of 0 specified (non-breaking)
  • Make RiskLevel* conditionally required (if RiskAttachment, RiskLimit in info, or CededPercent in riscope are present) so that blanks continue to be acceptable, and mean that there are no risk level terms for the reinsurance contract. (non-breaking, as RiskLevel is currently a required field and will always be present in all files of older OED versions)

*RiskLevel only needs to be specified if the reinsurance files contain ReinsType = Surplus Share (CededPercent is present), or there are risk terms in the info file (RiskAttachment or RiskLimit is present). If none of these three fields are present, then there are no risk level terms and RiskLevel can be assumed to be blank for all contracts.

The end result will be a cleaner spec and no breaking changes other than the format of the OED specification file.

It also clarifies the relationship between RiskLevel and RiskAttachment, RiskLimit and CededPercent for reinsurance.

Note 1: TIV fields are generally not required for broader use cases of OED, e.g. development / humanitarian sector. At least one TIV field is required for catastrophe modelling of property (i.e Oasis use cases), but this can be added as an Oasis-specific validation rule on top of OED validation.

Note 2: the specification file will change in OED v4 anyway due to the integration of Cyber and Liability fields.

@benhayes21
Copy link
Contributor Author

I think the proposals look good. It should be much cleaner and less liable to interpretation.

@johcarter
Copy link
Contributor

johcarter commented May 23, 2024

Final proposal following TWG call this morning

  • Remove 'Allow blanks' column and all required fields implicitly must not be blank, and all optional fields may implicitly be blank (breaking change to OED specification file) (both from OEDInputFields and OED CR Field Appendix)
  • Make all TIVs optional so that blanks continue to be acceptable (non-breaking)
  • Continue to allow Conditionally Required fields to be blank. (no change)
  • Make RiskLevel conditionally required (if RiskAttachment, RiskLimit in info, or CededPercent in riscope are present) so that blanks continue to be acceptable, and mean that there are no risk level terms for the reinsurance contract. (non-breaking, as RiskLevel is currently a required field and will always be present in all files of older OED versions)
  • Add documentation to explain the general rule that required fields must not be blank but otherwise any other field may be blank.

Outstanding:
Questions raised on LocPopNumber and whether it is a necessary field so this will be tackled in a separate issue

FYI @benhayes21 @MattDonovan82 @aiste-kalinauskaite

johcarter added a commit that referenced this issue May 23, 2024
@johcarter johcarter changed the title Clarify relationship between "required field" and "blanks allowed" in OED Spec [Property] Clarify relationship between "required field" and "blanks allowed" in OED Spec May 24, 2024
@johcarter
Copy link
Contributor

Conditionally required tab codes

johcarter added a commit that referenced this issue Jun 26, 2024
johcarter added a commit that referenced this issue Jun 26, 2024
sambles pushed a commit that referenced this issue Jul 17, 2024
sambles pushed a commit that referenced this issue Jul 17, 2024
sambles pushed a commit that referenced this issue Jul 17, 2024
@aiste-kalinauskaite
Copy link

Latest Joh's proposal from May 23 looks fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
major major release (breaking change) production
Projects
Status: Done
Status: Done
Status: Agreed and ready
Development

No branches or pull requests

4 participants