Mam to:
<style:style style:name="MYBOLD" style:family="text" style:parent-style-name="Standard">
<style:text-properties style:font-name="Arial" style:font-name-complex="Arial" fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold"/>
</style:style>
Zwróć uwagę, jak atrybuty mają przestrzeń nazw.
Kiedy parsuję to tak:
Nokogiri::XML.fragment(xmltext)
Wygląda na to, że utracił przestrzenie nazw zarówno dla tagów, jak i atrybutów! Czy jest jakiś sposób, aby je zachować?
Odpowiedzi:
3 dla odpowiedzi № 1Nokogiri jest ślepy na przestrzenie nazw, z wyjątkiem (1)w węźle głównym i (2) każdy, który sam zarejestrujesz. Ponieważ fragment z definicji nie ma węzła głównego, musisz sam podać informacje o przestrzeni nazw.
Zauważyłem, że konstruktor DocumentFragment ma opcjonalny węzeł kontekstowy, z którego możezbierać informacje o przestrzeni nazw. Ponieważ w komentarzach zaznaczyłeś, że masz dokument, w którym wstawisz fragment, o ile przestrzenie nazw są odpowiednio zarejestrowane w tym dokumencie, prawdopodobnie możesz go użyć do informacji kontekstowych.