I am not sure what is the suggest algorithm to "rewrite namespace
prefixes". Regardless, this is not part of C14N spec and something
you will have to do yourself.

Aleksey

On 1/28/18 3:19 AM, Mikhail Goloborodko wrote:
> Hi All,
> 
> I will appreciate if somebody could help on how to normalize and
> canonicalize XML.
> 
> For example
> <?xml version="1.0" encoding="WINDOWS-1251"?>
> <ed:N1 attr="4583001999" xmlns:ed="urn:ru:ed:v2.0">
> </ed:N>
> 
> I need to get
> 
> <n1:N1 xmlns:n1="urn:cbr-ru:ed:v2.0" attr="4583001999"></n1:N1>
> 
> And for
> 
> <?xml version="1.0" encoding="WINDOWS-1251"?>
> <N1 attr="4583001999" xmlns="urn:ru:ed:v2.0">
>   <N2 attr="value"></N2>
> </N1>
> 
> I need
> 
> <n1:N1 xmlns:n1="urn:ru:ed:v2.0"> attr="4583001999"<n1:N2
> attr="value"></n1:N2></n1:N1>
> 
> In other words I need to remove whitespaces and rewrite namespace prefixes
> I use
> string src;
> xmlChar * canon;
> xmlDocPtr xDoc = xmlReadMemory(src.data(), src.size(), nullptr, nullptr,
> XML_PARSE_NOBLANKS);
> int bytes = xmlC14NDocDumpMemory(xDoc, nullptr, 0, nullptr, 0, & canon);
> 
> It removes whitespaces, need help with namespace prefix rewrite.
> 
> Thank you in advance.
> 
> On Sun, Jan 28, 2018 at 12:41 AM, Mikhail Goloborodko
> <mgoloboro...@gmail.com <mailto:mgoloboro...@gmail.com>> wrote:
> 
>     Hi,
> 
>     I need help on how to normalize and canonicalize XML.
>     For example
>     <?xml version="1.0" encoding="WINDOWS-1251"?>
>     <ed:N1 attr="4583001999" xmlns:ed="urn:ru:ed:v2.0">
>     </ed:N>
> 
>     I need to get
> 
>     <n1:N1 xmlns:n1="urn:cbr-ru:ed:v2.0" attr="4583001999"></n1:N1>
> 
>     And for
> 
>     <?xml version="1.0" encoding="WINDOWS-1251"?>
>     <N1 attr="4583001999" xmlns="urn:ru:ed:v2.0">
>       <N2 attr="value"></N2>
>     </N1>
> 
>     I need
> 
>     <n1:N1 attr="4583001999" xmlns="urn:ru:ed:v2.0"><n1:N2
>     attr="value"></n1:N2></n1:N1>
> 
>     In other words I need to remove whitespaces and rewrite namespace
>     prefixes
>     I use
>     string src;
>     xmlChar * canon;
>     xmlDocPtr xDoc = xmlReadMemory(src.data(), src.size(), nullptr,
>     nullptr, XML_PARSE_NOBLANKS);
>     int bytes = xmlC14NDocDumpMemory(xDoc, nullptr, 0, nullptr, 0, & canon);
> 
>     It clearly removes whitespace, need help with namespace prefix rewrite.
> 
>     Thank you in advance.
> 
>     Mikhail 
> 
> 
> 
> 
> _______________________________________________
> xml mailing list, project page  http://xmlsoft.org/
> xml@gnome.org
> https://mail.gnome.org/mailman/listinfo/xml
> 
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
xml@gnome.org
https://mail.gnome.org/mailman/listinfo/xml

Reply via email to