Requirement of custom properties should be forbidden #8
Replies: 1 comment 3 replies
-
Thanks for your feedback. We have had several conversations about this topic and continue to discuss it to avoid falling into the same cycle that happened to EDI, just like you mentioned. However, making a more decisive decision could impact some pieces of the standard that still need to be fully fleshed out. The most relevant topic is security. Since we have yet to create a strong stance on security, there may be reason for a company to use additional properties. The Security section of the spec explains our recommendations. While the full security standard may take quite some time to be fully fleshed out and agreed upon, specific pieces such as identification may be released over time, which could help to tie in those decisions. |
Beta Was this translation helpful? Give feedback.
-
Currently, under the "Adding Custom Properties" section of the standard, custom properties are strongly discouraged. However, there is nothing indicating that a a required custom property would break the standard.
As we've seen in the past via things like EDI, if custom properties are allowed, then they will be used.
In practice, this is important, as there are many unique situations that will need accounted for, and this ensures the standard can still support them. However, per the standard at this time, each implementation could add any number of required custom properties to their endpoints, and still technically follow the standard.
This is a problem, because it allows each implementation to differ enough that the work to integrate becomes one-off work regardless of following the standard or not.
Again, going back to EDI, we see this a lot. And it has led to EDI being a mess of pseudo-standards that might get you 50% of the way to an implementation, but the rest is entirely one-off for that integration partner.
The standards here should aim to avoid that. By adding verbiage that indicates custom properties CANNOT be required for the defined minimum functionality, the standards can better prevent these unique interpretations. Custom properties can still be provided in addition to extend functionality/context, but if an API is hoping to "meet the standard" it cannot be required.
For example, under "best practices", verbiage like this should be changed to indicate customer or facility unique requests would not meet the standard.
Beta Was this translation helpful? Give feedback.
All reactions