Skip to content
Permalink
Browse files

Merge pull request #10 from cyberphone/dev

Update ietf-104-report.html
  • Loading branch information...
cyberphone committed May 10, 2019
2 parents f8ca6e0 + d849706 commit b51511e735e7114c15b83b13ded3224efcf7e2d3
Showing with 19 additions and 19 deletions.
  1. +19 −19 ietf-104-report.html
@@ -3,7 +3,7 @@
a {font-size:10pt;color:blue;text-decoration:none}
div.json {margin-top:8pt;margin-bottom:15pt;word-break:break-all;width:800pt;background:#F8F8F8;border-width:1px;border-style:solid;border-color:grey;padding:10pt;box-shadow:3pt 3pt 3pt #D0D0D0}
div.header {font-size:12pt;margin-top:15pt;margin-bottom:8pt;font-family:arial,verdana}
code {font-size:9pt;font-family:'Courier New',Courier}
code {font-size:11pt;font-family:'Courier New',Courier}
div.claim {font-style:normal;margin-top:20pt;font-weight:bolder}
div.response {margin-top:10pt}
</style></head>
@@ -86,16 +86,16 @@
</div>

<div class="claim" id="3">
3. Number serialization is huge problem
3. Number serialization is a huge problem
</div>
<div class="response">
I clearly underestimated this part when I started with JCS back in 2015, but
recently fast, open sourced and quite simple
<a href="https://github.com/ulfjack/ryu"
target="_blank">algorithms</a> have been developed
making number serialization according to JCS/ES6 in scope for any platform.
Extensive test data is
<a href="https://github.com/cyberphone/json-canonicalization/tree/master/testdata#es6-numbers"
Extensive test data is
<a href="https://github.com/cyberphone/json-canonicalization/tree/master/testdata#es6-numbers"
target="_blank">publicly available</a>.
</div>

@@ -118,24 +118,24 @@
<div class="claim" id="5">
5. You need a data model
</div>
<div class="response">
JCS builds on the same a bare-bones data model for primitives as JSON
(null, true, false, numbers, strings), albeit with a couple of constraints:
<ul>
<div class="response">
JCS builds on the same a bare-bones data model for primitives as JSON
(null, true, false, numbers, strings), albeit with a couple of constraints:
<ul>
<li>
JSON Numbers MUST conceptually be treated as IEEE-754 double precision data during parsing/serialization
(which also is a generic requirement for being JavaScript compatible)
</li>
<li>
JSON Strings MUST (modulo escaping) be treated as immutable during parsing/serialization
</li>
</ul>
This is all what is needed with respect to data models for creating reliable and interoperable "hashable" JSON.
Existing JSON-based systems use external mappings to emulate
missing data types like "DateTime", "Money", "Binary" and similar.
That not all JSON applications use the same conventions
<u>do not seem to have hampered the popularity and ubiquity of JSON</u>.
Standardizing external mappings is another [possible] IETF activity, not related to JCS.
</li>
<li>
JSON Strings MUST (modulo escaping) be treated as immutable during parsing/serialization
</li>
</ul>
This is all what is needed with respect to data models for creating reliable and interoperable "hashable" JSON.
Existing JSON-based systems use external mappings to emulate
missing data types like <code>int32</code>, <code>DateTime</code>, <code>Money</code>, <code>Binary</code> and similar.
That not all JSON applications use the same conventions
<u>do not seem to have hampered the popularity and ubiquity of JSON</u>.
Standardizing external mappings is another [possible] IETF activity, not related to JCS.
</div>

<div class="claim" id="6">

0 comments on commit b51511e

Please sign in to comment.
You can’t perform that action at this time.