If a string pin contains characters with a value smaller 33 and the patch is saved, it will not open again. You have to delete the characters in the xml file to get it to work again. Might have something to do with the xml parser…
yes, very good that somebody reminds to this.
another issue which is already adapted in habits.
praised will be the devvvv who finally fixes this.
it should be possible to tell the parser that a certain tag or attribute like Patch.Node.Pin.values can include any possible bytes and shouldn’t be looked at by the parser.
i always thought this might be a topic of the dtd.
can somebody (david, bjoern?) confirm this?
As far as I know a xml-parser normally parses the whole text of a xml-document. It´s however possible to declare so called CDATA sections which are ignonerd by the parser and can therefore contain illegal characters like “>” and “&”. But I don´t know if that also works for null characters, maybe it would be best to encode these characters with another enconding for example Base64, like david already described here (sorry only for insiders :) . This could be done along with the long overdue rework of the vvvv-xml structure, as illustrated here and here.
other xml users have the same issues. see this thread which explains possible solutions very well.
the thread outlines four technques, but the consensus seems to be using CDATA sections for values containing control chars. i would love to have normal readable entities for all other strings though.
i somehow like the idea presented here - it should be easily implementable by extending the existing magic which encodes and decodes the reserved xml characters (angle brackets, &, ’ and ") into something else. but obviously this will just give other problems if someone actually want to use these characters as they are.