diff --git a/bip-xchgrate.mediawiki b/bip-xchgrate.mediawiki index 164091d2..ecfa8cc4 100644 --- a/bip-xchgrate.mediawiki +++ b/bip-xchgrate.mediawiki @@ -117,6 +117,17 @@ There are many independent providers of such information, but they all use diffe By providing a standard interface for retrieving this information, wallets (and other software) and service providers can implement it once, and become immediately interoperable with all other compatible implementations. +==Rationale== + +Why are multiple results separated by a line-feed rather than using a JSON Array? + +* Clients ought to cache historical data, and using a line-feed format allows them to simply append to a cache file. +* Parsing JSON typically requires the entire data parsed together as a single memory object. Using simple lines to separate results, however, allows parsing a single result at a time. + +What if long descriptions require line and paragraph breaks? + +* Long descriptions support HTML, which has entities for paragraphs and line breaks that do not require literal line-feeds in the data. + ==Backwards compatibility== While this new standard is adopted, software and providers can continue to use and provide their current formats until they are no longer needed.