Посты с тэгом собеседование


Задачка для собеседования

Была у меня в своё время любимая задачка для собеседования. Есть веб-страничка принимающая данные от посетителей сайта:
import cgi

form = cgi.FieldStorage()
message = form.getfirst('message', '')
attr = form.getfirst('attr', '')

result = '''<?xml version='1.0'?>
<message attr='%s'>%s</message>''' % (attr, message)
Далее данные отправляются, например, стороннему сервису. Так вот периодически этот сервис нам возвращает ошибку "not well-formed". И предлагаю найти и исправить ошибки. При этом я сразу оговариваю, что задача не столько на знание XML, сколько на умение решать проблемы, возникающие в ходе разработки. Кроме того, я делаю акцент на том, что пользователь может ввести произвольные данные.
Большинство соискателей сходу называют одну ошибку (представление спец-символов) и относительно быстро находят вторую (связанная с кодировкой). А вот третья проблема всегда остаётся незамеченной и "обходит" все предложенные тест