diff --git a/jouleclaw/jouleclaw-rs/crates/jouleclaw-loader-gguf/src/openvino.rs b/jouleclaw/jouleclaw-rs/crates/jouleclaw-loader-gguf/src/openvino.rs index 84e6f7b45..63e636d81 100644 --- a/jouleclaw/jouleclaw-rs/crates/jouleclaw-loader-gguf/src/openvino.rs +++ b/jouleclaw/jouleclaw-rs/crates/jouleclaw-loader-gguf/src/openvino.rs @@ -286,7 +286,7 @@ pub fn parse_openvino_xml( b"net" => { for attr in e.attributes().flatten() { let key = attr.key.as_ref(); - let val = attr.unescape_value().unwrap_or_default().to_string(); + let val = attr.normalized_value(quick_xml::XmlVersion::Implicit1_0).unwrap_or_default().to_string(); match key { b"name" => net_name = val, b"version" => { @@ -301,7 +301,7 @@ pub fn parse_openvino_xml( let mut name = String::new(); let mut ty = String::new(); for attr in e.attributes().flatten() { - let val = attr.unescape_value().unwrap_or_default().to_string(); + let val = attr.normalized_value(quick_xml::XmlVersion::Implicit1_0).unwrap_or_default().to_string(); match attr.key.as_ref() { b"id" => { id = val.parse().unwrap_or(0); } b"name" => { name = val; } @@ -321,7 +321,7 @@ pub fn parse_openvino_xml( } b"data" if in_layer_const => { for attr in e.attributes().flatten() { - let val = attr.unescape_value().unwrap_or_default().to_string(); + let val = attr.normalized_value(quick_xml::XmlVersion::Implicit1_0).unwrap_or_default().to_string(); match attr.key.as_ref() { b"element_type" => { cur_dtype = OvDtype::parse(&val); diff --git a/jouleclaw/jouleclaw-rs/crates/jouleclaw-transform-trx/src/lib.rs b/jouleclaw/jouleclaw-rs/crates/jouleclaw-transform-trx/src/lib.rs index d25c776d3..fba7b300b 100644 --- a/jouleclaw/jouleclaw-rs/crates/jouleclaw-transform-trx/src/lib.rs +++ b/jouleclaw/jouleclaw-rs/crates/jouleclaw-transform-trx/src/lib.rs @@ -222,7 +222,7 @@ pub fn parse_response(xml: &str) -> Result { for attr in e.attributes().with_checks(false).flatten() { if attr.key.as_ref() == b"Type" { let v = attr - .unescape_value() + .normalized_value(quick_xml::XmlVersion::Implicit1_0) .map_err(|err| TrxError::Decode(format!("entity attr: {err}")))?; cur_entity_type = Some(v.into_owned()); } @@ -242,7 +242,7 @@ pub fn parse_response(xml: &str) -> Result { for attr in e.attributes().with_checks(false).flatten() { if attr.key.as_ref() == b"Name" { let v = attr - .unescape_value() + .normalized_value(quick_xml::XmlVersion::Implicit1_0) .map_err(|err| TrxError::Decode(format!("field attr: {err}")))?; cur_field_name = Some(v.into_owned()); } @@ -255,7 +255,7 @@ pub fn parse_response(xml: &str) -> Result { for attr in e.attributes().with_checks(false).flatten() { if attr.key.as_ref() == b"Type" { let v = attr - .unescape_value() + .normalized_value(quick_xml::XmlVersion::Implicit1_0) .map_err(|err| TrxError::Decode(format!("uimsg attr: {err}")))?; kind = match v.as_ref() { "Inform" => UiMessageKind::Inform,