mirror of
https://github.com/instant-labs/instant-xml.git
synced 2025-02-16 06:52:15 +00:00
Lookup prefixes from local scope
This commit is contained in:
parent
8233884207
commit
da536d072f
@ -134,9 +134,13 @@ impl<'xml> Context<'xml> {
|
|||||||
pub(crate) fn element_id(&self, element: &Element<'xml>) -> Result<Id<'xml>, Error> {
|
pub(crate) fn element_id(&self, element: &Element<'xml>) -> Result<Id<'xml>, Error> {
|
||||||
Ok(Id {
|
Ok(Id {
|
||||||
ns: match (element.default_ns, element.prefix) {
|
ns: match (element.default_ns, element.prefix) {
|
||||||
(_, Some(prefix)) => self
|
(_, Some(prefix)) => match element.level.prefixes.get(prefix) {
|
||||||
.lookup(prefix)
|
Some(ns) => *ns,
|
||||||
.ok_or_else(|| Error::UnknownPrefix(prefix.to_owned()))?,
|
None => match self.lookup(prefix) {
|
||||||
|
Some(ns) => ns,
|
||||||
|
None => return Err(Error::UnknownPrefix(prefix.to_owned())),
|
||||||
|
},
|
||||||
|
},
|
||||||
(Some(ns), None) => ns,
|
(Some(ns), None) => ns,
|
||||||
(None, None) => self.default_ns(),
|
(None, None) => self.default_ns(),
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user