<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Hi Erik,</div><div><br></div><div><blockquote type="cite"><span class="Apple-style-span" style="font-family: Arial, Helvetica, 'Luxi Sans', sans-serif; font-size: 14px; white-space: pre; "><div style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "> This is my first post, so I hope it's not a foolish one. I did
google around and try to find the answer on my own but am still
stumped. I've encountered something strange with vevents, and am not
sure whether it's a bug or a design decision that I don't understand.
</div></span></blockquote><div><br></div><div>Well, Markmail doesn't seem to know anything about transformToNative, so I wouldn't expect you to, either.</div><div><br></div><div>If I really wanted to avoid people asking the same question, I'd write an FAQ. Somehow I never get to it...</div><br><blockquote type="cite"><span class="Apple-style-span" style="font-family: Arial, Helvetica, 'Luxi Sans', sans-serif; font-size: 14px; white-space: pre; "><div style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "> This has been driving me crazy all day. Hopefully someone wiser
can either confirm that I'm right, or point out what I'm doing and/or
thinking wrong.
</div></span></blockquote></div><div><br></div><div>You are right, your vevent is different. Here are the phases vobject uses to parse an object:</div><div><br></div><div>0. Decode UTF-8 into unicode</div><div>1. Parse contentline syntax into a tree</div><div>2. Assign a behavior to each node if one can be found</div><div>3. Decode encoded data (base64, or quoted-printable)</div><div>4. Transform from a naive text representation to any complex representation the behavior defines</div><div><br></div><div>To serialize, this process runs in reverse.</div><div><br></div><div>The VEventBehavior is special, in that it actually changes the __class__ of its associated node from Component to RecurringComponent when its transformToNative method is called</div><div><br></div><div>Anyway, basically, what you need to add is:</div><div><br></div>new_ev_object.transformToNative()<div><br></div><div>Sincerely,</div><div>Jeffrey</div></body></html>