#[derive(Clone, Debug, Default, PartialEq, ooxmlsdk_derive::SdkType)]
#[sdk(qname = "thm15:themeFamily")]
pub struct ThemeFamily {
pub xmlns: Vec<crate::common::XmlNamespace>,
#[sdk(attr(qname = ":name"))]
pub name: crate::simple_type::StringValue,
#[sdk(attr(qname = ":id"))]
#[sdk(pattern(regex = "\\{[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}\\}"))]
#[sdk(string_format(kind = "token"))]
pub id: crate::simple_type::StringValue,
#[sdk(attr(qname = ":vid"))]
#[sdk(pattern(regex = "\\{[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}\\}"))]
#[sdk(string_format(kind = "token"))]
pub vid: crate::simple_type::StringValue,
#[sdk(child(qname = "thm15:extLst"))]
pub office_art_extension_list: Option<OfficeArtExtensionList>,
}
#[derive(Clone, Debug, Default, PartialEq, ooxmlsdk_derive::SdkType)]
#[sdk(qname = "thm15:extLst")]
pub struct OfficeArtExtensionList {
#[sdk(child(qname = "a:ext"))]
pub extension: Vec<crate::schemas::a::Extension>,
}
#[derive(Clone, Debug, Default, PartialEq, ooxmlsdk_derive::SdkType)]
#[sdk(qname = "thm15:themeVariant")]
pub struct ThemeVariant {
#[sdk(attr(qname = ":name"))]
pub name: crate::simple_type::StringValue,
#[sdk(attr(qname = ":vid"))]
#[sdk(pattern(regex = "\\{[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}\\}"))]
#[sdk(string_format(kind = "token"))]
pub vid: crate::simple_type::StringValue,
#[sdk(attr(qname = ":cx"))]
#[sdk(number_range(range = -27273042329600..= 27273042316900))]
pub x: crate::simple_type::Int64Value,
#[sdk(attr(qname = ":cy"))]
#[sdk(number_range(range = -27273042329600..= 27273042316900))]
pub y: crate::simple_type::Int64Value,
#[sdk(attr(qname = "r:id"))]
pub r_id: crate::simple_type::StringValue,
#[sdk(child(qname = "thm15:extLst"))]
pub office_art_extension_list: Option<OfficeArtExtensionList>,
}
#[derive(Clone, Debug, Default, PartialEq, ooxmlsdk_derive::SdkType)]
#[sdk(qname = "thm15:themeVariantLst")]
pub struct ThemeVariantList {
#[sdk(child(qname = "thm15:themeVariant"))]
pub theme_variant: Vec<ThemeVariant>,
}