<!-- HTML header for doxygen 1.8.7-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.16"/>
<title>RapidJSON: FAQ</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(function() { init_search(); });
/* @license-end */
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygenextra.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="topbanner"><a href="https://github.com/Tencent/rapidjson" title="RapidJSON GitHub"><i class="githublogo"></i></a></div>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('md_doc_faq.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="PageDoc"><div class="header">
  <div class="headertitle">
<div class="title">FAQ </div>  </div>
</div><!--header-->
<div class="contents">
<div class="toc"><h3>Table of Contents</h3>
<ul><li class="level1"><a href="#autotoc_md68">General</a></li>
<li class="level1"><a href="#autotoc_md69">JSON</a></li>
<li class="level1"><a href="#autotoc_md70">DOM and SAX</a></li>
<li class="level1"><a href="#autotoc_md71">Document/Value (DOM)</a></li>
<li class="level1"><a href="#autotoc_md72">Reader/Writer (SAX)</a></li>
<li class="level1"><a href="#autotoc_md73">Unicode</a></li>
<li class="level1"><a href="#autotoc_md74">Stream</a></li>
<li class="level1"><a href="#autotoc_md75">Performance</a></li>
<li class="level1"><a href="#autotoc_md76">Gossip</a></li>
</ul>
</div>
<div class="textblock"><h1><a class="anchor" id="autotoc_md68"></a>
General</h1>
<ol type="1">
<li><p class="startli">What is RapidJSON?</p>
<p class="startli">RapidJSON is a C++ library for parsing and generating JSON. You may check all <a class="el" href="md_doc_features.html">features</a> of it.</p>
</li>
<li><p class="startli">Why is RapidJSON named so?</p>
<p class="startli">It is inspired by <a href="http://rapidxml.sourceforge.net/">RapidXML</a>, which is a fast XML DOM parser.</p>
</li>
<li><p class="startli">Is RapidJSON similar to RapidXML?</p>
<p class="startli">RapidJSON borrowed some designs of RapidXML, including <em>in situ</em> parsing, header-only library. But the two APIs are completely different. Also RapidJSON provide many features that are not in RapidXML.</p>
</li>
<li><p class="startli">Is RapidJSON free?</p>
<p class="startli">Yes, it is free under MIT license. It can be used in commercial applications. Please check the details in <a href="https://github.com/Tencent/rapidjson/blob/master/license.txt">license.txt</a>.</p>
</li>
<li><p class="startli">Is RapidJSON small? What are its dependencies?</p>
<p class="startli">Yes. A simple executable which parses a JSON and prints its statistics is less than 30KB on Windows.</p>
<p class="startli">RapidJSON depends on C++ standard library only.</p>
</li>
<li><p class="startli">How to install RapidJSON?</p>
<p class="startli">Check <a href="https://miloyip.github.io/rapidjson/">Installation section</a>.</p>
</li>
<li><p class="startli">Can RapidJSON run on my platform?</p>
<p class="startli">RapidJSON has been tested in many combinations of operating systems, compilers and CPU architecture by the community. But we cannot ensure that it can be run on your particular platform. Building and running the unit test suite will give you the answer.</p>
</li>
<li><p class="startli">Does RapidJSON support C++03? C++11?</p>
<p class="startli">RapidJSON was firstly implemented for C++03. Later it added optional support of some C++11 features (e.g., move constructor, <code>noexcept</code>). RapidJSON shall be compatible with C++03 or C++11 compliant compilers.</p>
</li>
<li><p class="startli">Does RapidJSON really work in real applications?</p>
<p class="startli">Yes. It is deployed in both client and server real applications. A community member reported that RapidJSON in their system parses 50 million JSONs daily.</p>
</li>
<li><p class="startli">How RapidJSON is tested?</p>
<p class="startli">RapidJSON contains a unit test suite for automatic testing. <a href="https://travis-ci.org/Tencent/rapidjson/">Travis</a>(for Linux) and <a href="https://ci.appveyor.com/project/Tencent/rapidjson/">AppVeyor</a>(for Windows) will compile and run the unit test suite for all modifications. The test process also uses Valgrind (in Linux) to detect memory leaks.</p>
</li>
<li><p class="startli">Is RapidJSON well documented?</p>
<p class="startli">RapidJSON provides user guide and API documentationn.</p>
</li>
<li><p class="startli">Are there alternatives?</p>
<p class="startli">Yes, there are a lot alternatives. For example, <a href="https://github.com/miloyip/nativejson-benchmark">nativejson-benchmark</a> has a listing of open-source C/C++ JSON libraries. <a href="http://www.json.org/">json.org</a> also has a list.</p>
</li>
</ol>
<h1><a class="anchor" id="autotoc_md69"></a>
JSON</h1>
<ol type="1">
<li><p class="startli">What is JSON?</p>
<p class="startli">JSON (JavaScript Object Notation) is a lightweight data-interchange format. It uses human readable text format. More details of JSON can be referred to <a href="http://www.ietf.org/rfc/rfc7159.txt">RFC7159</a> and <a href="http://www.ecma-international.org/publications/standards/Ecma-404.htm">ECMA-404</a>.</p>
</li>
<li><p class="startli">What are applications of JSON?</p>
<p class="startli">JSON are commonly used in web applications for transferring structured data. It is also used as a file format for data persistence.</p>
</li>
<li><p class="startli">Does RapidJSON conform to the JSON standard?</p>
<p class="startli">Yes. RapidJSON is fully compliance with <a href="http://www.ietf.org/rfc/rfc7159.txt">RFC7159</a> and <a href="http://www.ecma-international.org/publications/standards/Ecma-404.htm">ECMA-404</a>. It can handle corner cases, such as supporting null character and surrogate pairs in JSON strings.</p>
</li>
<li><p class="startli">Does RapidJSON support relaxed syntax?</p>
<p class="startli">Currently no. RapidJSON only support the strict standardized format. Support on related syntax is under discussion in this <a href="https://github.com/Tencent/rapidjson/issues/36">issue</a>.</p>
</li>
</ol>
<h1><a class="anchor" id="autotoc_md70"></a>
DOM and SAX</h1>
<ol type="1">
<li><p class="startli">What is DOM style API?</p>
<p class="startli">Document Object Model (DOM) is an in-memory representation of JSON for query and manipulation.</p>
</li>
<li><p class="startli">What is SAX style API?</p>
<p class="startli">SAX is an event-driven API for parsing and generation.</p>
</li>
<li><p class="startli">Should I choose DOM or SAX?</p>
<p class="startli">DOM is easy for query and manipulation. SAX is very fast and memory-saving but often more difficult to be applied.</p>
</li>
<li><p class="startli">What is <em>in situ</em> parsing?</p>
<p class="startli"><em>in situ</em> parsing decodes the JSON strings directly into the input JSON. This is an optimization which can reduce memory consumption and improve performance, but the input JSON will be modified. Check <a class="el" href="md_doc_dom.html">in-situ parsing</a> for details.</p>
</li>
<li><p class="startli">When does parsing generate an error?</p>
<p class="startli">The parser generates an error when the input JSON contains invalid syntax, or a value can not be represented (a number is too big), or the handler of parsers terminate the parsing. Check <a class="el" href="md_doc_dom.html">parse error</a> for details.</p>
</li>
<li><p class="startli">What error information is provided?</p>
<p class="startli">The error is stored in <code>ParseResult</code>, which includes the error code and offset (number of characters from the beginning of JSON). The error code can be translated into human-readable error message.</p>
</li>
<li><p class="startli">Why not just using <code>double</code> to represent JSON number?</p>
<p class="startli">Some applications use 64-bit unsigned/signed integers. And these integers cannot be converted into <code>double</code> without loss of precision. So the parsers detects whether a JSON number is convertible to different types of integers and/or <code>double</code>.</p>
</li>
<li><p class="startli">How to clear-and-minimize a document or value?</p>
<p class="startli">Call one of the <code>SetXXX()</code> methods - they call destructor which deallocates DOM data:</p>
</li>
</ol>
<div class="fragment"><div class="line"><a class="code" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">Document</a> d;</div>
<div class="line">...</div>
<div class="line">d.SetObject();  <span class="comment">// clear and minimize</span></div>
</div><!-- fragment --><p>Alternatively, use equivalent of the <a href="https://en.wikibooks.org/wiki/More_C%2B%2B_Idioms/Clear-and-minimize">C++ swap with temporary idiom</a>: </p><div class="fragment"><div class="line"><a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>).Swap(d);</div>
</div><!-- fragment --><p> or equivalent, but slightly longer to type: </p><div class="fragment"><div class="line">d.Swap(<a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>).Move()); </div>
</div><!-- fragment --><ol type="1">
<li><p class="startli">How to insert a document node into another document?</p>
<p class="startli">Let's take the following two DOM trees represented as JSON documents: </p><div class="fragment"><div class="line"><a class="code" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">Document</a> person;</div>
<div class="line">person.Parse(<span class="stringliteral">&quot;{\&quot;person\&quot;:{\&quot;name\&quot;:{\&quot;first\&quot;:\&quot;Adam\&quot;,\&quot;last\&quot;:\&quot;Thomas\&quot;}}}&quot;</span>);</div>
<div class="line"> </div>
<div class="line"><a class="code" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">Document</a> address;</div>
<div class="line">address.Parse(<span class="stringliteral">&quot;{\&quot;address\&quot;:{\&quot;city\&quot;:\&quot;Moscow\&quot;,\&quot;street\&quot;:\&quot;Quiet\&quot;}}&quot;</span>);</div>
</div><!-- fragment --><p> Let's assume we want to merge them in such way that the whole <code>address</code> document becomes a node of the <code>person</code>: </p><div class="fragment"><div class="line">{ &quot;person&quot;: {</div>
<div class="line">   &quot;name&quot;: { &quot;first&quot;: &quot;Adam&quot;, &quot;last&quot;: &quot;Thomas&quot; },</div>
<div class="line">   &quot;address&quot;: { &quot;city&quot;: &quot;Moscow&quot;, &quot;street&quot;: &quot;Quiet&quot; }</div>
<div class="line">   }</div>
<div class="line">}</div>
</div><!-- fragment --><p class="startli">The most important requirement to take care of document and value life-cycle as well as consistent memory management using the right allocator during the value transfer.</p>
<p class="startli">Simple yet most efficient way to achieve that is to modify the <code>address</code> definition above to initialize it with allocator of the <code>person</code> document, then we just add the root member of the value: </p><div class="fragment"><div class="line"><a class="code" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">Document</a> address(&amp;person.GetAllocator());</div>
<div class="line">...</div>
<div class="line">person[<span class="stringliteral">&quot;person&quot;</span>].AddMember(<span class="stringliteral">&quot;address&quot;</span>, address[<span class="stringliteral">&quot;address&quot;</span>], person.GetAllocator());</div>
</div><!-- fragment --><p> Alternatively, if we don't want to explicitly refer to the root value of <code>address</code> by name, we can refer to it via iterator: </p><div class="fragment"><div class="line"><span class="keyword">auto</span> addressRoot = address.MemberBegin();</div>
<div class="line">person[<span class="stringliteral">&quot;person&quot;</span>].AddMember(addressRoot-&gt;name, addressRoot-&gt;value, person.GetAllocator());</div>
</div><!-- fragment --><p class="startli">Second way is to deep-clone the value from the address document: </p><div class="fragment"><div class="line"><a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a> addressValue = <a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a>(address[<span class="stringliteral">&quot;address&quot;</span>], person.GetAllocator());</div>
<div class="line">person[<span class="stringliteral">&quot;person&quot;</span>].AddMember(<span class="stringliteral">&quot;address&quot;</span>, addressValue, person.GetAllocator());</div>
</div><!-- fragment --></li>
</ol>
<h1><a class="anchor" id="autotoc_md71"></a>
Document/Value (DOM)</h1>
<ol type="1">
<li><p class="startli">What is move semantics? Why?</p>
<p class="startli">Instead of copy semantics, move semantics is used in <code>Value</code>. That means, when assigning a source value to a target value, the ownership of source value is moved to the target value.</p>
<p class="startli">Since moving is faster than copying, this design decision forces user to aware of the copying overhead.</p>
</li>
<li><p class="startli">How to copy a value?</p>
<p class="startli">There are two APIs: constructor with allocator, and <code>CopyFrom()</code>. See <a class="el" href="md_doc_tutorial.html">Deep Copy Value</a> for an example.</p>
</li>
<li><p class="startli">Why do I need to provide the length of string?</p>
<p class="startli">Since C string is null-terminated, the length of string needs to be computed via <code>strlen()</code>, with linear runtime complexity. This incurs an unnecessary overhead of many operations, if the user already knows the length of string.</p>
<p class="startli">Also, RapidJSON can handle <code>\u0000</code> (null character) within a string. If a string contains null characters, <code>strlen()</code> cannot return the true length of it. In such case user must provide the length of string explicitly.</p>
</li>
<li><p class="startli">Why do I need to provide allocator parameter in many DOM manipulation API?</p>
<p class="startli">Since the APIs are member functions of <code>Value</code>, we do not want to save an allocator pointer in every <code>Value</code>.</p>
</li>
<li><p class="startli">Does it convert between numerical types?</p>
<p class="startli">When using <code>GetInt()</code>, <code>GetUint()</code>, ... conversion may occur. For integer-to-integer conversion, it only convert when it is safe (otherwise it will assert). However, when converting a 64-bit signed/unsigned integer to double, it will convert but be aware that it may lose precision. A number with fraction, or an integer larger than 64-bit, can only be obtained by <code>GetDouble()</code>.</p>
</li>
</ol>
<h1><a class="anchor" id="autotoc_md72"></a>
Reader/Writer (SAX)</h1>
<ol type="1">
<li><p class="startli">Why don't we just <code>printf</code> a JSON? Why do we need a <code>Writer</code>?</p>
<p class="startli">Most importantly, <code>Writer</code> will ensure the output JSON is well-formed. Calling SAX events incorrectly (e.g. <code>StartObject()</code> pairing with <code>EndArray()</code>) will assert. Besides, <code>Writer</code> will escapes strings (e.g., <code>\n</code>). Finally, the numeric output of <code>printf()</code> may not be a valid JSON number, especially in some locale with digit delimiters. And the number-to-string conversion in <code>Writer</code> is implemented with very fast algorithms, which outperforms than <code>printf()</code> or <code>iostream</code>.</p>
</li>
<li><p class="startli">Can I pause the parsing process and resume it later?</p>
<p class="startli">This is not directly supported in the current version due to performance consideration. However, if the execution environment supports multi-threading, user can parse a JSON in a separate thread, and pause it by blocking in the input stream.</p>
</li>
</ol>
<h1><a class="anchor" id="autotoc_md73"></a>
Unicode</h1>
<ol type="1">
<li><p class="startli">Does it support UTF-8, UTF-16 and other format?</p>
<p class="startli">Yes. It fully support UTF-8, UTF-16 (LE/BE), UTF-32 (LE/BE) and ASCII.</p>
</li>
<li><p class="startli">Can it validate the encoding?</p>
<p class="startli">Yes, just pass <code>kParseValidateEncodingFlag</code> to <code>Parse()</code>. If there is invalid encoding in the stream, it will generate <code>kParseErrorStringInvalidEncoding</code> error.</p>
</li>
<li><p class="startli">What is surrogate pair? Does RapidJSON support it?</p>
<p class="startli">JSON uses UTF-16 encoding when escaping unicode character, e.g. <code>\u5927</code> representing Chinese character "big". To handle characters other than those in basic multilingual plane (BMP), UTF-16 encodes those characters with two 16-bit values, which is called UTF-16 surrogate pair. For example, the Emoji character U+1F602 can be encoded as <code>\uD83D\uDE02</code> in JSON.</p>
<p class="startli">RapidJSON fully support parsing/generating UTF-16 surrogates.</p>
</li>
<li><p class="startli">Can it handle <code>\u0000</code> (null character) in JSON string?</p>
<p class="startli">Yes. RapidJSON fully support null character in JSON string. However, user need to be aware of it and using <code>GetStringLength()</code> and related APIs to obtain the true length of string.</p>
</li>
<li><p class="startli">Can I output <code>\uxxxx</code> for all non-ASCII character?</p>
<p class="startli">Yes, use <code>ASCII&lt;&gt;</code> as output encoding template parameter in <code>Writer</code> can enforce escaping those characters.</p>
</li>
</ol>
<h1><a class="anchor" id="autotoc_md74"></a>
Stream</h1>
<ol type="1">
<li><p class="startli">I have a big JSON file. Should I load the whole file to memory?</p>
<p class="startli">User can use <code>FileReadStream</code> to read the file chunk-by-chunk. But for <em>in situ</em> parsing, the whole file must be loaded.</p>
</li>
<li><p class="startli">Can I parse JSON while it is streamed from network?</p>
<p class="startli">Yes. User can implement a custom stream for this. Please refer to the implementation of <code>FileReadStream</code>.</p>
</li>
<li><p class="startli">I don't know what encoding will the JSON be. How to handle them?</p>
<p class="startli">You may use <code>AutoUTFInputStream</code> which detects the encoding of input stream automatically. However, it will incur some performance overhead.</p>
</li>
<li><p class="startli">What is BOM? How RapidJSON handle it?</p>
<p class="startli"><a href="http://en.wikipedia.org/wiki/Byte_order_mark">Byte order mark (BOM)</a> sometimes reside at the beginning of file/stream to indicate the UTF encoding type of it.</p>
<p class="startli">RapidJSON's <code>EncodedInputStream</code> can detect/consume BOM. <code>EncodedOutputStream</code> can optionally write a BOM. See <a class="el" href="md_doc_stream.html">Encoded Streams</a> for example.</p>
</li>
<li><p class="startli">Why little/big endian is related?</p>
<p class="startli">little/big endian of stream is an issue for UTF-16 and UTF-32 streams, but not UTF-8 stream.</p>
</li>
</ol>
<h1><a class="anchor" id="autotoc_md75"></a>
Performance</h1>
<ol type="1">
<li><p class="startli">Is RapidJSON really fast?</p>
<p class="startli">Yes. It may be the fastest open source JSON library. There is a <a href="https://github.com/miloyip/nativejson-benchmark">benchmark</a> for evaluating performance of C/C++ JSON libraries.</p>
</li>
<li><p class="startli">Why is it fast?</p>
<p class="startli">Many design decisions of RapidJSON is aimed at time/space performance. These may reduce user-friendliness of APIs. Besides, it also employs low-level optimizations (intrinsics, SIMD) and special algorithms (custom double-to-string, string-to-double conversions).</p>
</li>
<li><p class="startli">What is SIMD? How it is applied in RapidJSON?</p>
<p class="startli"><a href="http://en.wikipedia.org/wiki/SIMD">SIMD</a> instructions can perform parallel computation in modern CPUs. RapidJSON support Intel's SSE2/SSE4.2 and ARM's Neon to accelerate whitespace/tabspace/carriage-return/line-feed skipping. This improves performance of parsing indent formatted JSON. Define <code>RAPIDJSON_SSE2</code>, <code>RAPIDJSON_SSE42</code> or <code>RAPIDJSON_NEON</code> macro to enable this feature. However, running the executable on a machine without such instruction set support will make it crash.</p>
</li>
<li><p class="startli">Does it consume a lot of memory?</p>
<p class="startli">The design of RapidJSON aims at reducing memory footprint.</p>
<p class="startli">In the SAX API, <code>Reader</code> consumes memory proportional to maximum depth of JSON tree, plus maximum length of JSON string.</p>
<p class="startli">In the DOM API, each <code>Value</code> consumes exactly 16/24 bytes for 32/64-bit architecture respectively. RapidJSON also uses a special memory allocator to minimize overhead of allocations.</p>
</li>
<li><p class="startli">What is the purpose of being high performance?</p>
<p class="startli">Some applications need to process very large JSON files. Some server-side applications need to process huge amount of JSONs. Being high performance can improve both latency and throughput. In a broad sense, it will also save energy.</p>
</li>
</ol>
<h1><a class="anchor" id="autotoc_md76"></a>
Gossip</h1>
<ol type="1">
<li><p class="startli">Who are the developers of RapidJSON?</p>
<p class="startli">Milo Yip (<a href="https://github.com/miloyip">miloyip</a>) is the original author of RapidJSON. Many contributors from the world have improved RapidJSON. Philipp A. Hartmann (<a href="https://github.com/pah">pah</a>) has implemented a lot of improvements, setting up automatic testing and also involves in a lot of discussions for the community. Don Ding (<a href="https://github.com/thebusytypist">thebusytypist</a>) implemented the iterative parser. Andrii Senkovych (<a href="https://github.com/jollyroger">jollyroger</a>) completed the CMake migration. Kosta (<a href="https://github.com/Kosta-Github">Kosta-Github</a>) provided a very neat short-string optimization. Thank you for all other contributors and community members as well.</p>
</li>
<li><p class="startli">Why do you develop RapidJSON?</p>
<p class="startli">It was just a hobby project initially in 2011. Milo Yip is a game programmer and he just knew about JSON at that time and would like to apply JSON in future projects. As JSON seems very simple he would like to write a header-only and fast library.</p>
</li>
<li><p class="startli">Why there is a long empty period of development?</p>
<p class="startli">It is basically due to personal issues, such as getting new family members. Also, Milo Yip has spent a lot of spare time on translating "Game Engine Architecture" by Jason Gregory into Chinese.</p>
</li>
<li><p class="startli">Why did the repository move from Google Code to GitHub?</p>
<p class="startli">This is the trend. And GitHub is much more powerful and convenient. </p>
</li>
</ol>
</div></div><!-- contents -->
</div><!-- PageDoc -->
</div><!-- doc-content -->
<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div>
<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue&lt; UTF8&lt;&gt; &gt; Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2470</div></div>
<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument&lt; UTF8&lt;&gt; &gt; Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2873</div></div>
<!-- HTML footer for doxygen 1.8.7-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
  </ul>
</div>
</body>
</html>
