OasisLMF / ODS_OpenExposureData

Open data standards curated by Oasis.
59 stars 8 forks source link

Change default of 'SoilValue' from 0 to 'n/a' #172

Closed michael-fehlmann closed 2 weeks ago

michael-fehlmann commented 5 months ago
## Description

According to the current OED specs the 'SoilValue' defaults to 0 which can be wrong information. For example, when the SoilValue refers to vs30 (m/s) (i.e. 'SoilType' is 1) the default value of 0 has an actual meaning (0 m/s) and can lead to wrong assumptions in the modelling further down the road. Thus the request is to change the default to 'n/a' instead.

Reasons for change

In a Swiss Re Oasis model implementation, vulnerability curves are picked based on the vs30 'SoilValue', while assumptions are made in the code in case 'SoilValue' is 'n/a' (no information available) based on other information. With newer Oasis versions enforcing the OED default values, i.e. 'SoilValue' defaulting to 0, wrong vulnerability curves are picked. ## Scope of change - [x] Location File - [ ] Accounts File - [ ] Reinsurance Scope - [ ] Reinsurance Info ## Impact of change ## Data type, default values, are blanks allowed, list valid values | **Field Name** | **Data type** | **Default values** | **Blanks allowed** | **Valid values** | |----------------|---------------|--------------------|--------------------|------------------| |SoilValue|float |**n/a** |YES|[0,)|
MattDonovan82 commented 5 months ago

@michael-fehlmann this makes sense.

@johcarter @aiste-kalinauskaite would changing this have any implications elsewhere? Would using "N/A" have any data formatting issues?

MattDonovan82 commented 3 months ago

We ok to use 'n/a' here @johcarter? @aiste-kalinauskaite ?

johcarter commented 3 months ago

This is the purpose of the SoilType field (0=no information, 1 = VS30 soil type), to differentiate between SoilValue=0 meaning no info and between meaning 0 m/s. @michael-fehlmann Could you read the value of SoilType into your model logic to map the SoilType,SoilValue value pair to the appropriate vuln curve?

michael-fehlmann commented 3 months ago

ok thanks @johcarter for this clarification, we just discussed this internally and your proposal works for our use case, i.e. for no information we will use SoilType=0 and SoilValue=0.

johcarter commented 2 months ago

No change needed as SoilType field can be used to differentiate between the two cases where SoilValue=0. Closing issue

MattDonovan82 commented 2 months ago

I just added to the description of SoilValue to read "The value associated with the SoilType and the corresponding unit" just to be explicit. To clarify, a combination of 0,0 means no soil information but if there is soil information (i.e. 30 metres/second to shear wave velocity to 30m), it would be:

SoilType = 1 SoilValue = 30

A value of 1 must be entered into SoilType when putting in a SoilValue.

aiste-kalinauskaite commented 3 weeks ago

@johcarter , @MattDonovan82

In OED v3.2 data type for SoilType has been changed into float. There is no documentation about it nor has it been mentioned in the release notes. I think the change is unnecessary and SoilType should remain as tinyint (or any other integer type, in case there are more categories in the future).

benhayes21 commented 2 weeks ago

changes to be reverted

johcarter commented 2 weeks ago

replaced by new issue #195 for clarity