#[derive(hard_xml::XmlWrite, hard_xml::XmlRead, Default, PartialEq, Clone, Debug)]
#[xml(tag = "AdVerifications", strict(unknown_attribute, unknown_element))]
pub struct AdVerifications<'a> {
#[xml(child = "Verification", default)]
pub verifications: Vec<Verification<'a>>,
}
#[derive(hard_xml::XmlWrite, hard_xml::XmlRead, Default, PartialEq, Clone, Debug)]
#[xml(tag = "Verification", strict(unknown_attribute, unknown_element))]
pub struct Verification<'a> {
#[xml(attr = "vendor", default)]
pub vendor: Option<std::borrow::Cow<'a, str>>,
#[xml(child = "ExecutableResource", default)]
pub executable_resources: Vec<ExecutableResource<'a>>,
#[xml(child = "JavaScriptResource", default)]
pub javascript_resources: Vec<JavaScriptResource<'a>>,
#[xml(child = "TrackingEvents", default)]
pub tracking_events: Option<VerificationTrackingEvents<'a>>,
#[xml(flatten_text = "VerificationParameters", cdata, default)]
pub verification_parameters: Option<std::borrow::Cow<'a, str>>,
}
#[derive(hard_xml::XmlWrite, hard_xml::XmlRead, Default, PartialEq, Clone, Debug)]
#[xml(tag = "JavaScriptResource", strict(unknown_attribute, unknown_element))]
pub struct JavaScriptResource<'a> {
#[xml(attr = "apiFramework", default)]
pub api_framework: Option<std::borrow::Cow<'a, str>>,
#[xml(attr = "browserOptional", default)]
pub browser_optional: Option<bool>,
#[xml(text, cdata)]
pub uri: std::borrow::Cow<'a, str>,
}
#[derive(hard_xml::XmlWrite, hard_xml::XmlRead, Default, PartialEq, Clone, Debug)]
#[xml(tag = "ExecutableResource", strict(unknown_attribute, unknown_element))]
pub struct ExecutableResource<'a> {
#[xml(attr = "apiFramework")]
pub api_framework: std::borrow::Cow<'a, str>,
#[xml(attr = "type", default)]
pub resource_type: Option<std::borrow::Cow<'a, str>>,
#[xml(text, cdata)]
pub uri: std::borrow::Cow<'a, str>,
}
#[derive(hard_xml::XmlWrite, hard_xml::XmlRead, Default, PartialEq, Clone, Debug)]
#[xml(tag = "TrackingEvents", strict(unknown_attribute, unknown_element))]
pub struct VerificationTrackingEvents<'a> {
#[xml(child = "Tracking", default)]
pub trackings: Vec<VerificationTracking<'a>>,
}
#[derive(hard_xml::XmlWrite, hard_xml::XmlRead, Default, PartialEq, Clone, Debug)]
#[xml(tag = "Tracking", strict(unknown_attribute, unknown_element))]
pub struct VerificationTracking<'a> {
#[xml(attr = "event")]
pub event: std::borrow::Cow<'a, str>,
#[xml(text, cdata)]
pub uri: std::borrow::Cow<'a, str>,
}