ThreeSixtyGiving / standard

The 360Giving data standard for UK philanthropic giving
http://www.threesixtygiving.org
Other
10 stars 15 forks source link

Investigate removing `null` as a permitted value for countryCode #379

Open mrshll1001 opened 4 months ago

mrshll1001 commented 4 months ago

Stemming from #378

countryCode currently has the following schema:

{
  "countryCode": {
    "type": [
      "string",
      "null"
    ]
  }
}

Combined with the codelist, this essentially allows the value of countryCode to either be a string which is a country code OR null. In JSON Schema, this has specific semantics where the value is not absent but is indeed null.

This is the only place we see this in the schema, similar fields such as currency just permit the string value. This leads me to think that this was either:

We should try to determine whether this was as deliberate design feature or an error in the schema. If it is the latter, fixing it would technically constitute a breaking change and thus qualify as a MAJOR upgrade so can be considered for version 2.0.

This is otherwise a straightforward amendment to the schema and would not be intensive.