XML to JSON Sergey Svistunov

Convert 1,000,000 person records from XML to JSON as fast as possible.

Input

XML document on STDIN:

<?xml version="1.0" encoding="UTF-8"?>
<persons>
    <person id="1512376">
        <age>30</age>
        <height>169.1</height>
        <married>true</married>
        <phone code="+6"><number>1283603279</number></phone>
        <phone code="+6"><number>1659964668</number></phone>
    </person>
    ...
</persons>

Output

One JSON object per person to STDOUT, preserving order:

{
    "id": 1512376,
    "age": 30,
    "height": 169.1,
    "married": true,
    "phones": [
        {
            "code": "+6",
            "number": 1283603279
        },
        {
            "code": "+6",
            "number": 1659964668
        }
    ]
}

Constraints

  • Preserve the order of persons
  • Omit the phones field if the phone array is empty
  • Maximum number of phones per person is 3
Date AuthorLanguageStatus Score
Jan 18, 2026 05:45Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 05:43Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 05:41Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 05:41Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 05:39Josu San MartinJosu San MartinCPPg++13.3.0Success12,354
Jan 18, 2026 05:35Josu San MartinJosu San MartinCPPg++13.3.0Success7,006+48.42 RP
Jan 18, 2026 05:34Josu San MartinJosu San MartinCPPclang++18.1.3Success7,252+233.59 RP
Jan 18, 2026 05:34Josu San MartinJosu San MartinCPPg++13.3.0Success8,731+26.02 RP
Jan 18, 2026 05:33Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 05:32Josu San MartinJosu San MartinCPPg++13.3.0Success12,662
Jan 18, 2026 05:28Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 05:25Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 05:24Josu San MartinJosu San MartinCPPg++13.3.0Success12,405
Jan 18, 2026 05:14Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 05:05Josu San MartinJosu San MartinCPPg++13.3.0Success12,691
Jan 18, 2026 04:59Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 04:52Josu San MartinJosu San MartinCPPg++13.3.0Success27,977
Jan 18, 2026 04:39Josu San MartinJosu San MartinCPPg++13.3.0Success9,619
Jan 18, 2026 04:38Josu San MartinJosu San MartinCPPg++13.3.0Success9,880
Jan 18, 2026 04:37Josu San MartinJosu San MartinCPPg++13.3.0Success9,886
Jan 18, 2026 04:37Josu San MartinJosu San MartinCPPg++13.3.0Success9,960
Jan 18, 2026 04:36Josu San MartinJosu San MartinCPPg++13.3.0Success9,952
Jan 18, 2026 04:32Josu San MartinJosu San MartinCPPg++13.3.0Success28,573
Jan 18, 2026 04:28Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 04:22Josu San MartinJosu San MartinCPPg++13.3.0Success9,414
Jan 18, 2026 04:22Josu San MartinJosu San MartinCPPclang++18.1.3Success10,343
Jan 18, 2026 04:16Josu San MartinJosu San MartinCPPg++13.3.0Error
Jan 18, 2026 04:03Josu San MartinJosu San MartinCPPg++13.3.0Success8,934+3.00 RP
Jan 18, 2026 04:02Josu San MartinJosu San MartinCPPclang++18.1.3Success9,617
Jan 18, 2026 04:01Josu San MartinJosu San MartinCPPg++13.3.0Success8,958+9.51 RP
Jan 18, 2026 03:53Josu San MartinJosu San MartinCPPg++13.3.0Success9,035+608.85 RP
Dec 30, 2025 13:17Yehor BondarYehor BondarGOgo1.25.5Success1,003,001+9.97 RP
Dec 24, 2025 09:27AnSaAnSaCPPg++13.3.0Success6,576
Dec 24, 2025 09:16AnSaAnSaCPPg++13.3.0Success3,743
Dec 24, 2025 09:11AnSaAnSaCPPg++13.3.0Error
Dec 24, 2025 08:55AnSaAnSaCPPg++13.3.0Error
Dec 24, 2025 04:17Josu San MartinJosu San MartinCPPclang++18.1.3Success20,082+1.61 RP
Dec 24, 2025 03:54Josu San MartinJosu San MartinCPPg++13.3.0Success25,868
Dec 24, 2025 03:48Josu San MartinJosu San MartinGOgo1.25.5Success34,688
Dec 24, 2025 03:41Josu San MartinJosu San MartinGOgo1.25.5Success41,630
Dec 24, 2025 03:33Josu San MartinJosu San MartinGOgo1.25.5Success34,415
Dec 24, 2025 03:32Josu San MartinJosu San MartinGOgo1.25.5Success37,479
Dec 24, 2025 03:21Josu San MartinJosu San MartinRUSTrust-1.92.0Success20,147+1.96 RP
Dec 24, 2025 03:15Josu San MartinJosu San MartinRUSTrust-1.92.0Success20,227+14.52 RP
Dec 24, 2025 01:24Josu San MartinJosu San MartinCPPg++13.3.0Success26,282
Dec 24, 2025 01:24Josu San MartinJosu San MartinCPPg++13.3.0Success28,186
Dec 24, 2025 01:21Josu San MartinJosu San MartinCPPclang++18.1.3Success20,839+157.64 RP
Dec 24, 2025 01:15Josu San MartinJosu San MartinCPPg++13.3.0Success31,034+322.23 RP
Dec 23, 2025 20:35AnSaAnSaCPPclang++18.1.3Success3,853
Dec 23, 2025 20:31AnSaAnSaCPPclang++18.1.3Success3,809
Dec 23, 2025 20:30AnSaAnSaCPPg++13.3.0Success4,101
Dec 23, 2025 20:25AnSaAnSaCPPg++13.3.0Success4,123
Dec 23, 2025 20:13AnSaAnSaCPPg++13.3.0Success4,077
Dec 23, 2025 20:11AnSaAnSaCPPg++13.3.0Success3,732
Dec 23, 2025 19:58AnSaAnSaCPPg++13.3.0Error
Dec 23, 2025 19:46AnSaAnSaCPPg++13.3.0Success3,799
Dec 23, 2025 19:43AnSaAnSaCPPg++13.3.0Error
Dec 23, 2025 19:39AnSaAnSaCPPg++13.3.0Error
Dec 23, 2025 19:27AnSaAnSaCPPg++13.3.0Error
Dec 23, 2025 18:30AnSaAnSaCPPg++13.3.0Success3,662
Dec 23, 2025 18:28AnSaAnSaCPPg++13.3.0Success3,652
Dec 23, 2025 18:24AnSaAnSaCPPg++13.3.0Success3,641
Dec 23, 2025 18:20AnSaAnSaCPPg++13.3.0Success3,638
Dec 23, 2025 18:18AnSaAnSaCPPg++13.3.0Success3,649
Dec 23, 2025 18:16AnSaAnSaCPPg++13.3.0Error
Dec 23, 2025 18:12AnSaAnSaCPPg++13.3.0Error
Dec 23, 2025 16:50Josu San MartinJosu San MartinCPPg++13.3.0Error
Dec 23, 2025 15:37Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 23, 2025 15:33Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 23, 2025 15:15Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 23, 2025 15:09Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 23, 2025 15:02Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 23, 2025 14:55Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 23, 2025 14:55Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 23, 2025 14:48Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Nov 21, 2025 07:09Martin StensgårdMartin StensgårdCPPg++13.3.0Error
Nov 21, 2025 07:03Martin StensgårdMartin StensgårdGOgo1.25.4Success1,008,108+9.92 RP
Nov 20, 2025 18:04izotoffizotoffGOgo1.25.4Success1,001,852+9.98 RP
Nov 19, 2025 17:56Yuriy LyfenkoYuriy LyfenkoCPPg++13.3.0Success3,059
Nov 19, 2025 17:55Yuriy LyfenkoYuriy LyfenkoCPPg++13.3.0Success3,065
Aug 19, 2025 20:53Aniruddha DebAniruddha DebCPPclang++18.1.3Success2,958+74.60 RP
Aug 19, 2025 19:40Aniruddha DebAniruddha DebCPPg++13.3.0Error
Jul 12, 2025 13:18Aniruddha DebAniruddha DebCPPg++13.3.0Success2,991+252.62 RP
Jun 21, 2025 21:10Aniruddha DebAniruddha DebCPPg++13.3.0Success3,167+1'493.11 RP
May 31, 2025 15:33KeefeKeefeCPPclang++18.1.3Success17,532+100.77 RP
May 31, 2025 15:33KeefeKeefeCPPg++13.3.0Success21,294+7.64 RP
May 23, 2025 18:26KeefeKeefeCPPg++13.3.0Error
May 23, 2025 18:24KeefeKeefeCPPg++13.3.0Error
May 23, 2025 18:16KeefeKeefeCPPg++13.3.0Error
May 23, 2025 18:15KeefeKeefeCPPg++13.3.0Error
May 23, 2025 18:13KeefeKeefeCPPg++13.3.0Error
May 1, 2025 23:58KeefeKeefeCPPg++13.3.0Success22,014
May 1, 2025 11:48KeefeKeefeCPPg++13.3.0Success31,895
May 1, 2025 11:43KeefeKeefeCPPg++13.3.0Error
May 1, 2025 11:36KeefeKeefeCPPg++13.3.0Error
May 1, 2025 11:12KeefeKeefeCPPg++13.3.0Success21,648
May 1, 2025 11:07KeefeKeefeCPPg++13.3.0Success21,646+93.49 RP
May 1, 2025 11:06KeefeKeefeCPPg++13.3.0Success40,160
May 1, 2025 11:04KeefeKeefeCPPg++13.3.0Error
May 1, 2025 11:02KeefeKeefeCPPg++13.3.0Error