pub struct OwnedName {
pub local_name: String,
pub namespace: Option<String>,
pub prefix: Option<String>,
}Expand description
An owned variant of Name.
Everything about Name applies to this structure as well.
Fields§
§local_name: StringA local name, e.g. string in xsi:string.
Local name is ambiguous, because multiple namespaces can share the same name.
Always check namespace too.
namespace: Option<String>A namespace URI, e.g. http://www.w3.org/2000/xmlns/.
None for default namespace.
Note that in XML attributes don’t inherit element’s namespace and are in the default namespace unless they have a prefix.
prefix: Option<String>Semantically meaningless name prefix, e.g. xsi in xsi:string.
Prefixes are just a syntactic detail used for decoration or to avoid repetition.
Only namespace matters for identity of the element.
Implementations§
Source§impl OwnedName
impl OwnedName
Sourcepub fn local<S>(local_name: S) -> Self
pub fn local<S>(local_name: S) -> Self
Returns a new OwnedName instance representing a plain local name.
Sourcepub fn qualified<S1, S2, S3>(
local_name: S1,
namespace: S2,
prefix: Option<S3>,
) -> Self
pub fn qualified<S1, S2, S3>( local_name: S1, namespace: S2, prefix: Option<S3>, ) -> Self
Returns a new OwnedName instance representing a qualified name with or without
a prefix and with a namespace URI.
Sourcepub fn prefix_ref(&self) -> Option<&str>
pub fn prefix_ref(&self) -> Option<&str>
Returns an optional prefix by reference, equivalent to self.borrow().prefix
but avoids extra work.
Sourcepub fn namespace_ref(&self) -> Option<&str>
pub fn namespace_ref(&self) -> Option<&str>
Returns an optional namespace by reference, equivalen to self.borrow().namespace
but avoids extra work.
Trait Implementations§
Source§impl FromStr for OwnedName
impl FromStr for OwnedName
Source§fn from_str(s: &str) -> Result<Self, ()>
fn from_str(s: &str) -> Result<Self, ()>
Parses the given string slice into a qualified name.
This function, when finishes sucessfully, always return a qualified
name without a namespace (name.namespace == None). It should be filled later
using proper NamespaceStack.
It is supposed that all characters in the argument string are correct as defined by the XML specification. No additional checks except a check for emptiness are done.