Так быстрый взгляд на тот XMLDictionary класс, кажется, показывает, что он просто оборачивает стандартный NSXMLParser
и создает удобный объект словаря с все из XML-элементы.
Если вы привержены этому GitHub код, то вы могли бы потенциально идти через результирующей словарь после разбора XML и реструктурировать <p>
и <italic>
элементы обратно в родительский элемент. Но это довольно неэффективно и определенно не рекомендуется, если у вас очень короткий XML, и преимущество класса XMLDictionary
гарантирует дополнительную работу.
Вы можете также копаться в XMLDictionary
кода, в частности parser:didStartElement
и parser:didEndElement
методы, и внести некоторые изменения, чтобы игнорировать <p>
и <italic>
тегов. Это должно эффективно сгладить структуру к чему-то близкому к вашему примеру.
Но, если вы подумываете о том, чтобы задуматься, в этом коде, вы можете просто использовать NSXMLParser
напрямую, игнорируя эти теги одинаково. Это даст вам более жесткий контроль над синтаксическим разбором и может уменьшить ненужное создание объектов, особенно если ваш XML имеет значительный размер. Просто прочитайте на NSXMLParserDelegate и даже пройдите через код XMLDictionary
, чтобы увидеть, как он делает то, что вам нравится.