У меня проблема, которая звучит принципиально, но я нигде не нашел решения. Я использую Ruby-версию XmlSimple, в частности функцию xml_out.Как использовать XmlSimple для создания элемента XML с атрибутом и текстовым узлом?
Проблема
У меня возникли проблемы вывод элемента, который будет иметь один узел атрибута и текстовый узел. Вот что я хочу:
<lane id='1'>unchannelized</lane>
Вот что я в настоящее время получаю:
<lane id='1'>
<content>unchannelized</content>
</lane>
Я пытался использовать «ContentKey» вариант => «содержание» в xml_out (в дополнение к " AttrPrefix "=> true), но это дало тот же результат. Я попытался также изменить ContentKey, такую же разницу.
Соответствующий код
Текстовый узел атрибута & добавляться в массив:
laneConfigArr << {"@id" => laneNo, "content" => netsimLaneChannelizationCode(matchArr[matchIndex])}
Фактический хэш генерируется:
unhappyHash << {
#more stuff here,
"LaneConfig" => {"lane" => laneConfigArr},
#more stuff here
}
xml_out вызова [Изменено]:
result["NetsimLinks"] = {"NetsimLink" => unhappyHash}
doc = XmlSimple.xml_out(result, {"AttrPrefix" => true, "RootName" => "CORSIMNetwork", "ContentKey" => "content"})
Подробности Environment
- ОС: Windows 7
- Ruby: 1.9.3-P125
- XmlSimple: 1.0.13
Посмотрел везде, никто не кажется, были проблемы. Возможно, я что-то упустил, или, может быть, этого не может/не должно быть сделано?
Я был бы очень признателен за любую помощь в этом.
Зачем вы передаете результат REXML? –
Хорошо, потому что в XmlSimple ссылке они добавляют пробел в документ REXML, прежде чем записывать его в файл. Меня это не волнует, поэтому я могу обойти его. Это не имеет отношения к проблеме. Если я этого не сделаю, то получаю тот же результат. –