We've been discussing how efficient is parser reseting after every packet in expat and finally we decided we will not be reseting it in this case. I think we should add the fake root element in this case in C code while creating the parser with appropriate option.
I think that would be good if someone else can also write opinion about that.

And also what about a corner case where you first parse:
```xml
<element_a>asdf</element_a><element_b>
```

and in next chunk you get
```xml
content</element_b>
```

will this work with current implementation. I'm not so sure but I maybe wrong.