From 3b29e5d3fafa737eb06a49b59dc09d37c096b1d4 Mon Sep 17 00:00:00 2001 From: Luke Dashjr Date: Sat, 4 Mar 2017 23:46:46 +0000 Subject: [PATCH] bip-xchgrate: Begin Rationale section --- bip-xchgrate.mediawiki | 11 +++++++++++ 1 file changed, 11 insertions(+) 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.