Great, many thanks for the reply, and for the location of the information in the XML docs, that's very helpful. Unfortunately, it seems that the NSXML classes don't fix the '>' in the ']]>' case either, though:
NSXMLElement*element = [[[NSXMLElementalloc] initWithName:@"Test"stringValue:@"< & > ]]>"] autorelease]; NSLog (@"%@", element); Output: <Test>< & > ]]></Test> So presumably that means that, given that the docs say > may be used, I am going to need to fix this anyway. (Even though it's unlikely the "]]>" combination will come up, I can't rule it out as this is user-generated data). Many thanks again and all the best, Keith ----- Original Message ---- From: glenn andreas <gandr...@mac.com> To: Keith Blount <keithblo...@yahoo.com> Cc: "cocoa-dev@lists.apple.com" <cocoa-dev@lists.apple.com> Sent: Tue, February 9, 2010 8:52:40 PM Subject: Re: NSXML and > The XML spec does not require '>' to be escaped as '>' (except in the case of ']]>' when that doesn't mark the end of a cdata section). Only '&' and '<' must be escaped - see section 2.4 of XML 1.0 spec. Sent from my iPhone On Feb 9, 2010, at 2:19 PM, Keith Blount <keithblo...@yahoo.com> wrote: > Hello, > > I'm using the NSXML classes to write out various strings, and it seems that > these classes convert "<" to "<" but not ">" to ">", which I find odd. > For instance, consider the following code snippet: > > NSXMLElement*element = [[[NSXMLElementalloc] > initWithName:@"Test"stringValue:@"< & >"] autorelease]; > NSLog (@"%@", element); > > The output is: > > <Test>< & ></Test> > > Is this correct, or is this a bug? Or am I missing something? Do I therefore > need to replace all occurrences of ">" with ">" myself to generate better > XML? > _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com