1// https://github.com/clbanning/mxj/issues/17
2
3package main
4
5import (
6	"bytes"
7	"fmt"
8	"github.com/clbanning/mxj"
9	"io"
10)
11
12var data = []byte(`
13<?xml version="1.0" encoding="utf-8"?>
14<doc><elem>just something to demo</elem></doc>
15`)
16
17func main() {
18	r := bytes.NewReader(data)
19	m := make(map[string]interface{})
20	var v map[string]interface{}
21	var err error
22	for {
23		v, err = mxj.NewMapXmlSeqReader(r)
24		if err != nil {
25			if err == io.EOF {
26				break
27			}
28			if err != mxj.NoRoot {
29				// handle error
30			}
31		}
32		for key, val := range v {
33			m[key] = val
34		}
35	}
36	fmt.Printf("%v\n", m)
37}
38