use crate::parser::{Attribute, RawEntity};
use std::collections::BTreeMap;
#[derive(Clone, Copy)]
enum Sk {
Real,
Int,
Str,
Bin,
Bool,
Log,
Enum,
Ref,
Vec,
Meas,
}
#[derive(Clone, Copy)]
struct Slot {
k: Sk,
req: bool,
der: bool,
swire: Option<&'static str>,
}
fn canon(a: &mut Attribute) {
match a {
Attribute::Real(r) => {
if *r == 0.0 {
*r = 0.0_f64;
}
}
Attribute::List(v) => {
for e in v.iter_mut() {
canon(e);
}
}
Attribute::Typed { value, .. } => canon(value),
_ => {}
}
}
fn wrap_bare_scalar(a: &mut Attribute, wire: &'static str) -> bool {
match a {
Attribute::Real(_) | Attribute::Integer(_) | Attribute::String(_) => {
let inner = std::mem::replace(a, Attribute::Unset);
*a = Attribute::Typed {
type_name: wire.to_string(),
value: Box::new(inner),
};
true
}
_ => false,
}
}
enum NormAction {
Unchanged,
Rewrite(Attribute, &'static str),
Drop(&'static str),
}
fn norm_attr(s: Slot, a: &Attribute) -> NormAction {
if s.der {
return if matches!(a, Attribute::Derived) {
NormAction::Unchanged
} else {
NormAction::Rewrite(Attribute::Derived, "derived->*")
};
}
match (s.k, a) {
(Sk::Real, Attribute::Integer(i)) => {
NormAction::Rewrite(Attribute::Real(*i as f64), "int->real")
}
(Sk::Int, Attribute::Real(r)) if r.fract() == 0.0 => {
NormAction::Rewrite(Attribute::Integer(*r as i64), "real->int")
}
(Sk::Int, Attribute::Real(_)) => NormAction::Drop("int<-fractional-real"),
(Sk::Str | Sk::Bin, Attribute::Unset) if s.req => {
NormAction::Rewrite(Attribute::String(String::new()), "req-str<-$")
}
(Sk::Vec, Attribute::Unset) if s.req => {
NormAction::Rewrite(Attribute::List(Vec::new()), "req-vec<-$")
}
(Sk::Ref, Attribute::Unset) if s.req => NormAction::Drop("req-ref<-$"),
_ => NormAction::Unchanged,
}
}
fn norm_attrs(
slots: &[Slot],
attrs: &mut Vec<Attribute>,
warns: &mut Vec<&'static str>,
drop_out: &mut Option<&'static str>,
) -> bool {
for (i, a) in attrs.iter_mut().enumerate() {
canon(a);
if let Some(s) = slots.get(i).copied() {
if let Some(wire) = s.swire {
match s.k {
Sk::Vec => {
if let Attribute::List(v) = a {
for e in v.iter_mut() {
if wrap_bare_scalar(e, wire) {
warns.push("select-scalar bare->typed");
}
}
}
}
Sk::Ref => {
if wrap_bare_scalar(a, wire) {
warns.push("select-scalar bare->typed");
}
}
_ => {}
}
}
match norm_attr(s, a) {
NormAction::Unchanged => {}
NormAction::Rewrite(na, w) => {
*a = na;
warns.push(w);
}
NormAction::Drop(w) => {
*drop_out = Some(w);
return false;
}
}
}
}
true
}
pub fn normalize(
mut map: BTreeMap<u64, RawEntity>,
) -> (
BTreeMap<u64, RawEntity>,
Vec<&'static str>,
Vec<(u64, &'static str)>,
) {
let mut warns: Vec<&'static str> = Vec::new();
let mut slot_drops: Vec<(u64, &'static str)> = Vec::new();
for (&id, ent) in map.iter_mut() {
let mut drop_reason: Option<&'static str> = None;
let keep = match ent {
RawEntity::Simple {
name, attributes, ..
} => norm_attrs(simple_slots(name), attributes, &mut warns, &mut drop_reason),
RawEntity::Complex { parts, .. } => {
let mut ok = true;
for p in parts.iter_mut() {
if !norm_attrs(
part_slots(&p.name),
&mut p.attributes,
&mut warns,
&mut drop_reason,
) {
ok = false;
break;
}
}
ok
}
};
if !keep {
slot_drops.push((id, drop_reason.unwrap_or("slot-local")));
}
}
for (id, _) in &slot_drops {
map.remove(id);
}
(map, warns, slot_drops)
}
fn simple_slots(n: &str) -> &'static [Slot] {
match n {
"ACTION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"ACTION_DIRECTIVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"ACTION_METHOD" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"ACTION_METHOD_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_PROPERTY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_REQUEST_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"ACTION_REQUEST_SOLUTION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_RESOURCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_RESOURCE_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_RESOURCE_REQUIREMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"ACTION_RESOURCE_TYPE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"ADDRESS" => &[
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"ADVANCED_BREP_SHAPE_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ADVANCED_FACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"ALL_AROUND_SHAPE_ASPECT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"ANGULAR_LOCATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"ANGULAR_SIZE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"ANGULARITY_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_CURVE_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_FILL_AREA_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_OCCURRENCE_ASSOCIATIVITY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_OCCURRENCE_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_PLACEHOLDER_LEADER_LINE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_PLACEHOLDER_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_PLACEHOLDER_OCCURRENCE_WITH_LEADER_LINE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_PLANE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
},
],
"ANNOTATION_SYMBOL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_SYMBOL_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_TEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_TEXT_CHARACTER" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_TEXT_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_TO_ANNOTATION_LEADER_LINE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_TO_MODEL_LEADER_LINE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"APLL_POINT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"APLL_POINT_WITH_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"APPLICATION_CONTEXT" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"APPLICATION_CONTEXT_ELEMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"APPLICATION_PROTOCOL_DEFINITION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"APPLIED_APPROVAL_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"APPLIED_DATE_AND_TIME_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"APPLIED_DOCUMENT_REFERENCE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"APPLIED_EXTERNAL_IDENTIFICATION_ASSIGNMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"APPLIED_GROUP_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"APPLIED_PERSON_AND_ORGANIZATION_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"APPLIED_PRESENTED_ITEM" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"APPLIED_SECURITY_CLASSIFICATION_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"APPROVAL" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"APPROVAL_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"APPROVAL_DATE_TIME" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"APPROVAL_PERSON_ORGANIZATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"APPROVAL_ROLE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"APPROVAL_STATUS" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"APPROXIMATION_TOLERANCE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"APPROXIMATION_TOLERANCE_DEVIATION" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"APPROXIMATION_TOLERANCE_PARAMETER" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"AREA_IN_SET" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"AREA_UNIT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"ASCRIBABLE_STATE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ASCRIBABLE_STATE_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ASSEMBLY_COMPONENT_USAGE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"AUXILIARY_LEADER_LINE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"AXIS1_PLACEMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"AXIS2_PLACEMENT_2D" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"AXIS2_PLACEMENT_3D" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"B_SPLINE_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"B_SPLINE_CURVE_WITH_KNOTS" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"B_SPLINE_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"B_SPLINE_SURFACE_WITH_KNOTS" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"BEZIER_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"BEZIER_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"BOUNDED_CURVE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"BOUNDED_PCURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"BOUNDED_SURFACE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"BOUNDED_SURFACE_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"BREP_WITH_VOIDS" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CALENDAR_DATE" => &[
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
],
"CAMERA_IMAGE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CAMERA_IMAGE_3D_WITH_SCALE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CAMERA_MODEL" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"CAMERA_MODEL_D3" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CAMERA_MODEL_D3_MULTI_CLIPPING" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CAMERA_MODEL_D3_WITH_HLHSR" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"CAMERA_USAGE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CARTESIAN_POINT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CC_DESIGN_APPROVAL" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CC_DESIGN_DATE_AND_TIME_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CC_DESIGN_SECURITY_CLASSIFICATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CENTRE_OF_SYMMETRY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"CERTIFICATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CERTIFICATION_TYPE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"CHANGE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CHANGE_REQUEST" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CHARACTER_GLYPH_STYLE_OUTLINE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"CHARACTER_GLYPH_STYLE_STROKE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"CHARACTERIZED_ITEM_WITHIN_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CHARACTERIZED_OBJECT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"CHARACTERIZED_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: true,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: true,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: true,
swire: None,
},
],
"CIRCLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"CIRCULAR_RUNOUT_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CLOSED_SHELL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"COAXIALITY_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"COLOUR" => &[],
"COLOUR_RGB" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"COLOUR_SPECIFICATION" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"COMMON_DATUM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"COMPLEX_TRIANGULATED_FACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"COMPLEX_TRIANGULATED_SURFACE_SET" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"COMPOSITE_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"COMPOSITE_CURVE_SEGMENT" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"COMPOSITE_GROUP_SHAPE_ASPECT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"COMPOSITE_SHAPE_ASPECT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"COMPOSITE_TEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"COMPOUND_REPRESENTATION_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CONCENTRICITY_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CONFIGURATION_DESIGN" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CONFIGURATION_EFFECTIVITY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CONFIGURATION_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"CONIC" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CONICAL_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"CONNECTED_FACE_SET" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CONSTRUCTIVE_GEOMETRY_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CONSTRUCTIVE_GEOMETRY_REPRESENTATION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CONTEXT_DEPENDENT_OVER_RIDING_STYLED_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CONTEXT_DEPENDENT_SHAPE_REPRESENTATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CONTEXT_DEPENDENT_UNIT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"CONTINUOUS_SHAPE_ASPECT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"CONTRACT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CONTRACT_TYPE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"CONVERSION_BASED_UNIT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"COORDINATED_UNIVERSAL_TIME_OFFSET" => &[
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"COORDINATES_LIST" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CURVE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"CURVE_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"CURVE_STYLE_FONT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CURVE_STYLE_FONT_AND_SCALING" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"CURVE_STYLE_FONT_PATTERN" => &[
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"CURVE_STYLE_RENDERING" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CYLINDRICAL_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"CYLINDRICITY_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DATE" => &[Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
}],
"DATE_AND_TIME" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DATE_AND_TIME_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DATE_ROLE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"DATE_TIME_ROLE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"DATUM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"DATUM_FEATURE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"DATUM_REFERENCE" => &[
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DATUM_REFERENCE_COMPARTMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
},
],
"DATUM_REFERENCE_ELEMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
},
],
"DATUM_REFERENCE_MODIFIER_WITH_VALUE" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DATUM_SYSTEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"DATUM_TARGET" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"DEFAULT_MODEL_GEOMETRIC_VIEW" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: true,
swire: None,
},
],
"DEFINED_CHARACTER_GLYPH" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DEFINED_SYMBOL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DEFINITIONAL_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DEFINITIONAL_REPRESENTATION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DEFINITIONAL_REPRESENTATION_RELATIONSHIP_WITH_SAME_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DEGENERATE_TOROIDAL_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"DERIVED_SHAPE_ASPECT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"DERIVED_UNIT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"DERIVED_UNIT_ELEMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"DESCRIPTION_ATTRIBUTE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DESCRIPTIVE_REPRESENTATION_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"DESIGN_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"DIMENSIONAL_CHARACTERISTIC_REPRESENTATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DIMENSIONAL_EXPONENTS" => &[
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"DIMENSIONAL_LOCATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DIMENSIONAL_LOCATION_WITH_PATH" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DIMENSIONAL_SIZE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"DIMENSIONAL_SIZE_WITH_DATUM_FEATURE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"DIMENSIONAL_SIZE_WITH_PATH" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DIRECTED_DIMENSIONAL_LOCATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DIRECTION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"DOCUMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DOCUMENT_FILE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"DOCUMENT_PRODUCT_ASSOCIATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DOCUMENT_PRODUCT_EQUIVALENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DOCUMENT_REFERENCE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"DOCUMENT_REPRESENTATION_TYPE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DOCUMENT_TYPE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"DRAUGHTING_ANNOTATION_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DRAUGHTING_CALLOUT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"DRAUGHTING_CALLOUT_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DRAUGHTING_MODEL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DRAUGHTING_MODEL_ITEM_ASSOCIATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DRAUGHTING_MODEL_ITEM_ASSOCIATION_WITH_PLACEHOLDER" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DRAUGHTING_PRE_DEFINED_COLOUR" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"DRAUGHTING_PRE_DEFINED_CURVE_FONT" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"DRAUGHTING_PRE_DEFINED_TEXT_FONT" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"EDGE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EDGE_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"EDGE_LOOP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"EFFECTIVITY" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"ELEMENTARY_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ELLIPSE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"EXPRESSION" => &[],
"EXTERNAL_IDENTIFICATION_ASSIGNMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EXTERNAL_SOURCE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"EXTERNALLY_DEFINED_CHARACTER_GLYPH" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EXTERNALLY_DEFINED_CURVE_FONT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EXTERNALLY_DEFINED_HATCH_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"EXTERNALLY_DEFINED_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EXTERNALLY_DEFINED_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EXTERNALLY_DEFINED_SYMBOL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EXTERNALLY_DEFINED_TEXT_FONT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EXTERNALLY_DEFINED_TILE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EXTERNALLY_DEFINED_TILE_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"FACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"FACE_BOUND" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"FACE_OUTER_BOUND" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"FACE_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"FEATURE_FOR_DATUM_TARGET_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE_COLOUR" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE_HATCHING" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE_TILE_COLOURED_REGION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE_TILE_CURVE_WITH_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE_TILE_SYMBOL_WITH_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE_TILES" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"FLATNESS_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"FOUNDED_ITEM" => &[],
"FUNCTIONALLY_DEFINED_TRANSFORMATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"GENERAL_DATUM_REFERENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
},
],
"GENERAL_PROPERTY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"GENERAL_PROPERTY_ASSOCIATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"GENERIC_EXPRESSION" => &[],
"GENERIC_LITERAL" => &[],
"GENERIC_PRODUCT_DEFINITION_REFERENCE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"GEOMETRIC_CURVE_SET" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_ITEM_SPECIFIC_USAGE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_REPRESENTATION_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_REPRESENTATION_ITEM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"GEOMETRIC_SET" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_TOLERANCE_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_TOLERANCE_WITH_DEFINED_AREA_UNIT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"GEOMETRIC_TOLERANCE_WITH_DEFINED_UNIT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_TOLERANCE_WITH_MAXIMUM_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_TOLERANCE_WITH_MODIFIERS" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"GEOMETRICALLY_BOUNDED_SURFACE_SHAPE_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"GEOMETRICALLY_BOUNDED_WIREFRAME_SHAPE_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"GLOBAL_UNIT_ASSIGNED_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"GROUP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"GROUP_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"HYPERBOLA" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"ID_ATTRIBUTE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"IDENTIFICATION_ASSIGNMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"IDENTIFICATION_ROLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"INT_LITERAL" => &[Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
}],
"INTEGER_REPRESENTATION_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
],
"INTERSECTION_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"INVISIBILITY" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"ITEM_DEFINED_TRANSFORMATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ITEM_IDENTIFIED_REPRESENTATION_USAGE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"LEADER_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"LEADER_DIRECTED_CALLOUT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"LEADER_TERMINATOR" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"LENGTH_MEASURE_WITH_UNIT" => &[
Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"LENGTH_UNIT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"LIMITS_AND_FITS" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"LINE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"LINE_PROFILE_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"LITERAL_NUMBER" => &[Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
}],
"LOCAL_TIME" => &[
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"LOOP" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"MAKE_FROM_USAGE_OPTION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MANIFOLD_SOLID_BREP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MANIFOLD_SURFACE_SHAPE_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MAPPED_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MASS_MEASURE_WITH_UNIT" => &[
Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MASS_UNIT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"MEASURE_QUALIFICATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"MEASURE_REPRESENTATION_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MEASURE_WITH_UNIT" => &[
Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MECHANICAL_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"MECHANICAL_DESIGN_AND_DRAUGHTING_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MECHANICAL_DESIGN_PRESENTATION_REPRESENTATION_WITH_DRAUGHTING" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MECHANICAL_DESIGN_SHADED_PRESENTATION_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MODEL_GEOMETRIC_VIEW" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MODIFIED_GEOMETRIC_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"NAME_ATTRIBUTE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"NAMED_UNIT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"NEXT_ASSEMBLY_USAGE_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"NUMERIC_EXPRESSION" => &[],
"OBJECT_ROLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"OFFSET_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"ONE_DIRECTION_REPEAT_FACTOR" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"OPEN_SHELL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"ORGANIZATION" => &[
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"ORGANIZATION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ORGANIZATION_ROLE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"ORGANIZATION_TYPE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"ORGANIZATION_TYPE_ROLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"ORGANIZATIONAL_ADDRESS" => &[
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"ORGANIZATIONAL_PROJECT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"ORGANIZATIONAL_PROJECT_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ORGANIZATIONAL_PROJECT_ROLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"ORIENTED_CLOSED_SHELL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: true,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"ORIENTED_EDGE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: true,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: true,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"OVER_RIDING_STYLED_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PARALLELISM_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"PARAMETRIC_REPRESENTATION_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"PATH" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"PCURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PERPENDICULARITY_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"PERSON" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
},
],
"PERSON_AND_ORGANIZATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PERSON_AND_ORGANIZATION_ADDRESS" => &[
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"PERSON_AND_ORGANIZATION_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PERSON_AND_ORGANIZATION_ROLE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PERSONAL_ADDRESS" => &[
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"PLACED_DATUM_TARGET_FEATURE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"PLACEMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PLANAR_BOX" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PLANAR_EXTENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"PLANE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PLANE_ANGLE_MEASURE_WITH_UNIT" => &[
Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PLANE_ANGLE_UNIT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"PLUS_MINUS_TOLERANCE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"POINT" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"POINT_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"POLY_LOOP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"POLYLINE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"POSITION_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRE_DEFINED_CHARACTER_GLYPH" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_COLOUR" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_CURVE_FONT" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_ITEM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_MARKER" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_POINT_MARKER_SYMBOL" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_PRESENTATION_STYLE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_SURFACE_SIDE_STYLE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_SYMBOL" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_TERMINATOR_SYMBOL" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_TEXT_FONT" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_TILE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRECISION_QUALIFIER" => &[Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
}],
"PRESENTATION_AREA" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRESENTATION_LAYER_ASSIGNMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"PRESENTATION_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRESENTATION_SET" => &[],
"PRESENTATION_SIZE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRESENTATION_STYLE_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"PRESENTATION_STYLE_BY_CONTEXT" => &[
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRESENTATION_VIEW" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRESENTED_ITEM" => &[],
"PRESENTED_ITEM_REPRESENTATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_CATEGORY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"PRODUCT_CATEGORY_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_CONCEPT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_CONCEPT_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_CONCEPT_FEATURE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"PRODUCT_CONCEPT_FEATURE_CATEGORY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"PRODUCT_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_CONTEXT_ASSOCIATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_CONTEXT_ROLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_EFFECTIVITY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_FORMATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_RELATIONSHIP_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_SHAPE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_SUBSTITUTE" => &[
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_USAGE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_WITH_ASSOCIATED_DOCUMENTS" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_RELATED_PRODUCT_CATEGORY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"PROJECTED_ZONE_DEFINITION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PROPERTY_DEFINITION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PROPERTY_DEFINITION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PROPERTY_DEFINITION_REPRESENTATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"QUALIFIED_REPRESENTATION_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"QUASI_UNIFORM_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"QUASI_UNIFORM_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"RATIO_MEASURE_WITH_UNIT" => &[
Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"RATIO_UNIT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"RATIONAL_B_SPLINE_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"RATIONAL_B_SPLINE_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"REAL_LITERAL" => &[Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
}],
"REAL_REPRESENTATION_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"REPOSITIONED_TESSELLATED_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_CONTEXT_REFERENCE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"REPRESENTATION_ITEM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"REPRESENTATION_MAP" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_REFERENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"RESOURCE_PROPERTY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"RESOURCE_REQUIREMENT_TYPE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"ROLE_ASSOCIATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ROUNDNESS_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SEAM_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"SECURITY_CLASSIFICATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SECURITY_CLASSIFICATION_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SECURITY_CLASSIFICATION_LEVEL" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"SHAPE_ASPECT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"SHAPE_ASPECT_ASSOCIATIVITY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SHAPE_ASPECT_DERIVING_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SHAPE_ASPECT_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SHAPE_DEFINITION_REPRESENTATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SHAPE_DIMENSION_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SHAPE_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SHAPE_REPRESENTATION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SHAPE_REPRESENTATION_WITH_PARAMETERS" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SHELL_BASED_SURFACE_MODEL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"SI_UNIT" => &[
Slot {
k: Sk::Ref,
req: true,
der: true,
swire: None,
},
Slot {
k: Sk::Enum,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"SIMPLE_GENERIC_EXPRESSION" => &[],
"SIMPLE_NUMERIC_EXPRESSION" => &[],
"SOLID_ANGLE_UNIT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SOLID_MODEL" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"SPHERICAL_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"START_REQUEST" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"START_WORK" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"STATE_OBSERVED" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"STATE_TYPE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"STRAIGHTNESS_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"STYLED_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SURFACE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"SURFACE_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"SURFACE_OF_LINEAR_EXTRUSION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SURFACE_OF_REVOLUTION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SURFACE_PROFILE_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SURFACE_RENDERING_PROPERTIES" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_SIDE_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"SURFACE_STYLE_BOUNDARY" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_CONTROL_GRID" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_FILL_AREA" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_PARAMETER_LINE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"SURFACE_STYLE_REFLECTANCE_AMBIENT" => &[Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_RENDERING" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SURFACE_STYLE_RENDERING_WITH_PROPERTIES" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"SURFACE_STYLE_SEGMENTATION_CURVE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_SILHOUETTE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_TRANSPARENT" => &[Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_USAGE" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SWEPT_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SYMBOL_COLOUR" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SYMBOL_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SYMBOL_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SYMBOL_TARGET" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"SYMMETRY_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"TERMINATOR_SYMBOL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TESSELLATED_ANNOTATION_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TESSELLATED_CURVE_SET" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"TESSELLATED_FACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"TESSELLATED_GEOMETRIC_SET" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"TESSELLATED_ITEM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"TESSELLATED_SHAPE_REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TESSELLATED_SHELL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"TESSELLATED_SOLID" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"TESSELLATED_STRUCTURED_ITEM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"TESSELLATED_SURFACE_SET" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"TEXT_FONT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"TEXT_LITERAL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TEXT_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TEXT_STYLE_FOR_DEFINED_FONT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"TEXT_STYLE_WITH_BOX_CHARACTERISTICS" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"TEXTURE_STYLE_SPECIFICATION" => &[],
"TEXTURE_STYLE_TESSELLATION_SPECIFICATION" => &[],
"TIME_UNIT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"TOLERANCE_VALUE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TOLERANCE_ZONE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TOLERANCE_ZONE_DEFINITION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"TOLERANCE_ZONE_FORM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"TOLERANCE_ZONE_WITH_DATUM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TOPOLOGICAL_REPRESENTATION_ITEM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"TOROIDAL_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"TOTAL_RUNOUT_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"TRIMMED_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: Some("PARAMETER_VALUE"),
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: Some("PARAMETER_VALUE"),
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"TWO_DIRECTION_REPEAT_FACTOR" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TYPE_QUALIFIER" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"UNCERTAINTY_MEASURE_WITH_UNIT" => &[
Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"UNCERTAINTY_QUALIFIER" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"UNEQUALLY_DISPOSED_GEOMETRIC_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"UNIFORM_CURVE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"UNIFORM_SURFACE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"VALUE_FORMAT_TYPE_QUALIFIER" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"VALUE_REPRESENTATION_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
},
],
"VECTOR" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"VERSIONED_ACTION_REQUEST" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"VERTEX" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"VERTEX_LOOP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"VERTEX_POINT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"VERTEX_SHELL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"VIEW_VOLUME" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"VOLUME_UNIT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"WIRE_SHELL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
_ => &[],
}
}
fn part_slots(n: &str) -> &'static [Slot] {
match n {
"ACTION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_METHOD" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"ACTION_METHOD_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_REQUEST_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"ACTION_RESOURCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ACTION_RESOURCE_REQUIREMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"ADDRESS" => &[
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"ADVANCED_BREP_SHAPE_REPRESENTATION" => &[],
"ADVANCED_FACE" => &[],
"ANNOTATION_CURVE_OCCURRENCE" => &[],
"ANNOTATION_FILL_AREA_OCCURRENCE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"ANNOTATION_OCCURRENCE" => &[],
"ANNOTATION_OCCURRENCE_ASSOCIATIVITY" => &[],
"ANNOTATION_OCCURRENCE_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_PLACEHOLDER_OCCURRENCE" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"ANNOTATION_PLACEHOLDER_OCCURRENCE_WITH_LEADER_LINE" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"ANNOTATION_PLANE" => &[Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
}],
"ANNOTATION_SYMBOL" => &[],
"ANNOTATION_SYMBOL_OCCURRENCE" => &[],
"ANNOTATION_TEXT" => &[],
"ANNOTATION_TEXT_CHARACTER" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"ANNOTATION_TEXT_OCCURRENCE" => &[],
"APPLICATION_CONTEXT_ELEMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"APPLIED_APPROVAL_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"APPLIED_DATE_AND_TIME_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"APPLIED_DOCUMENT_REFERENCE" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"APPLIED_EXTERNAL_IDENTIFICATION_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"APPLIED_GROUP_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"APPLIED_PERSON_AND_ORGANIZATION_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"APPLIED_PRESENTED_ITEM" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"APPLIED_SECURITY_CLASSIFICATION_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"APPROVAL_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"AREA_IN_SET" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ASCRIBABLE_STATE_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ASSEMBLY_COMPONENT_USAGE" => &[Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
}],
"B_SPLINE_CURVE" => &[
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"B_SPLINE_CURVE_WITH_KNOTS" => &[
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"B_SPLINE_SURFACE" => &[
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"B_SPLINE_SURFACE_WITH_KNOTS" => &[
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"BEZIER_CURVE" => &[],
"BEZIER_SURFACE" => &[],
"BOUNDED_CURVE" => &[],
"BOUNDED_PCURVE" => &[],
"BOUNDED_SURFACE" => &[],
"BOUNDED_SURFACE_CURVE" => &[],
"BREP_WITH_VOIDS" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"CAMERA_IMAGE" => &[],
"CAMERA_IMAGE_3D_WITH_SCALE" => &[],
"CAMERA_MODEL" => &[],
"CAMERA_MODEL_D3" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CAMERA_MODEL_D3_MULTI_CLIPPING" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"CAMERA_MODEL_D3_WITH_HLHSR" => &[Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
}],
"CAMERA_USAGE" => &[],
"CC_DESIGN_APPROVAL" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"CC_DESIGN_DATE_AND_TIME_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"CC_DESIGN_SECURITY_CLASSIFICATION" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"CHANGE_REQUEST" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"CHARACTER_GLYPH_STYLE_OUTLINE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"CHARACTER_GLYPH_STYLE_STROKE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"CHARACTERIZED_ITEM_WITHIN_REPRESENTATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CHARACTERIZED_OBJECT" => &[
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"CHARACTERIZED_REPRESENTATION" => &[],
"CIRCULAR_RUNOUT_TOLERANCE" => &[],
"CLOSED_SHELL" => &[],
"COLOUR" => &[],
"COLOUR_RGB" => &[
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"COLOUR_SPECIFICATION" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"COMMON_DATUM" => &[],
"COMPOSITE_CURVE" => &[
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: true,
der: false,
swire: None,
},
],
"COMPOSITE_CURVE_SEGMENT" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"COMPOSITE_GROUP_SHAPE_ASPECT" => &[],
"COMPOSITE_SHAPE_ASPECT" => &[],
"COMPOSITE_TEXT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"COMPOUND_REPRESENTATION_ITEM" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"CONFIGURATION_EFFECTIVITY" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"CONFIGURATION_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"CONNECTED_FACE_SET" => &[Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
}],
"CONSTRUCTIVE_GEOMETRY_REPRESENTATION_RELATIONSHIP" => &[],
"CONTEXT_DEPENDENT_OVER_RIDING_STYLED_ITEM" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"CONTEXT_DEPENDENT_UNIT" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"CONVERSION_BASED_UNIT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"CURVE" => &[],
"CURVE_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"CURVE_STYLE_FONT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"CURVE_STYLE_FONT_AND_SCALING" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"CURVE_STYLE_FONT_PATTERN" => &[
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"CYLINDRICITY_TOLERANCE" => &[],
"DATE" => &[Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
}],
"DATE_AND_TIME" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DATE_AND_TIME_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DATUM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"DATUM_FEATURE" => &[],
"DATUM_REFERENCE" => &[
Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DATUM_SYSTEM" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"DATUM_TARGET" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"DEFAULT_MODEL_GEOMETRIC_VIEW" => &[],
"DEFINITIONAL_REPRESENTATION" => &[],
"DEFINITIONAL_REPRESENTATION_RELATIONSHIP" => &[],
"DEFINITIONAL_REPRESENTATION_RELATIONSHIP_WITH_SAME_CONTEXT" => &[],
"DEGENERATE_TOROIDAL_SURFACE" => &[Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
}],
"DERIVED_UNIT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"DESIGN_CONTEXT" => &[],
"DIMENSIONAL_SIZE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"DIRECTION" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"DOCUMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DOCUMENT_FILE" => &[],
"DOCUMENT_PRODUCT_ASSOCIATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DOCUMENT_PRODUCT_EQUIVALENCE" => &[],
"DOCUMENT_REFERENCE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"DRAUGHTING_ANNOTATION_OCCURRENCE" => &[],
"DRAUGHTING_CALLOUT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"DRAUGHTING_CALLOUT_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"DRAUGHTING_MODEL" => &[],
"DRAUGHTING_MODEL_ITEM_ASSOCIATION" => &[],
"DRAUGHTING_MODEL_ITEM_ASSOCIATION_WITH_PLACEHOLDER" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"DRAUGHTING_PRE_DEFINED_COLOUR" => &[],
"DRAUGHTING_PRE_DEFINED_CURVE_FONT" => &[],
"DRAUGHTING_PRE_DEFINED_TEXT_FONT" => &[],
"EDGE" => &[
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"EDGE_CURVE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"EDGE_LOOP" => &[],
"EFFECTIVITY" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"ELEMENTARY_SURFACE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"EXPRESSION" => &[],
"EXTERNAL_IDENTIFICATION_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"EXTERNAL_SOURCE" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"EXTERNALLY_DEFINED_CHARACTER_GLYPH" => &[],
"EXTERNALLY_DEFINED_CURVE_FONT" => &[],
"EXTERNALLY_DEFINED_HATCH_STYLE" => &[],
"EXTERNALLY_DEFINED_ITEM" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"EXTERNALLY_DEFINED_STYLE" => &[],
"EXTERNALLY_DEFINED_SYMBOL" => &[],
"EXTERNALLY_DEFINED_TEXT_FONT" => &[],
"EXTERNALLY_DEFINED_TILE" => &[],
"EXTERNALLY_DEFINED_TILE_STYLE" => &[],
"FACE" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"FACE_BOUND" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"FACE_OUTER_BOUND" => &[],
"FACE_SURFACE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE_HATCHING" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"FILL_AREA_STYLE_TILE_SYMBOL_WITH_STYLE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"FILL_AREA_STYLE_TILES" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"FLATNESS_TOLERANCE" => &[],
"FOUNDED_ITEM" => &[],
"FUNCTIONALLY_DEFINED_TRANSFORMATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"GENERAL_DATUM_REFERENCE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: false,
der: false,
swire: None,
},
],
"GENERAL_PROPERTY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"GENERIC_EXPRESSION" => &[],
"GENERIC_LITERAL" => &[],
"GENERIC_PRODUCT_DEFINITION_REFERENCE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"GEOMETRIC_CURVE_SET" => &[],
"GEOMETRIC_ITEM_SPECIFIC_USAGE" => &[],
"GEOMETRIC_REPRESENTATION_CONTEXT" => &[Slot {
k: Sk::Int,
req: true,
der: false,
swire: None,
}],
"GEOMETRIC_REPRESENTATION_ITEM" => &[],
"GEOMETRIC_SET" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"GEOMETRIC_TOLERANCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"GEOMETRIC_TOLERANCE_WITH_DEFINED_AREA_UNIT" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"GEOMETRIC_TOLERANCE_WITH_DEFINED_UNIT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"GEOMETRIC_TOLERANCE_WITH_MAXIMUM_TOLERANCE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"GEOMETRIC_TOLERANCE_WITH_MODIFIERS" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"GEOMETRICALLY_BOUNDED_SURFACE_SHAPE_REPRESENTATION" => &[],
"GEOMETRICALLY_BOUNDED_WIREFRAME_SHAPE_REPRESENTATION" => &[],
"GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"GLOBAL_UNIT_ASSIGNED_CONTEXT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"GROUP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"GROUP_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"IDENTIFICATION_ASSIGNMENT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"INT_LITERAL" => &[],
"INTEGER_REPRESENTATION_ITEM" => &[],
"INTERSECTION_CURVE" => &[],
"INVISIBILITY" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"ITEM_DEFINED_TRANSFORMATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"ITEM_IDENTIFIED_REPRESENTATION_USAGE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"LEADER_CURVE" => &[],
"LEADER_DIRECTED_CALLOUT" => &[],
"LEADER_TERMINATOR" => &[],
"LENGTH_MEASURE_WITH_UNIT" => &[],
"LENGTH_UNIT" => &[],
"LINE_PROFILE_TOLERANCE" => &[],
"LITERAL_NUMBER" => &[Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
}],
"LOOP" => &[],
"MANIFOLD_SOLID_BREP" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"MANIFOLD_SURFACE_SHAPE_REPRESENTATION" => &[],
"MAPPED_ITEM" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MASS_UNIT" => &[],
"MEASURE_REPRESENTATION_ITEM" => &[],
"MEASURE_WITH_UNIT" => &[
Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"MECHANICAL_CONTEXT" => &[],
"MECHANICAL_DESIGN_AND_DRAUGHTING_RELATIONSHIP" => &[],
"MODEL_GEOMETRIC_VIEW" => &[],
"MODIFIED_GEOMETRIC_TOLERANCE" => &[Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
}],
"NAMED_UNIT" => &[Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
}],
"NEXT_ASSEMBLY_USAGE_OCCURRENCE" => &[],
"NUMERIC_EXPRESSION" => &[],
"ONE_DIRECTION_REPEAT_FACTOR" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"OPEN_SHELL" => &[],
"ORGANIZATIONAL_ADDRESS" => &[
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"ORIENTED_CLOSED_SHELL" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"ORIENTED_EDGE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
],
"OVER_RIDING_STYLED_ITEM" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"PARALLELISM_TOLERANCE" => &[],
"PARAMETRIC_REPRESENTATION_CONTEXT" => &[],
"PATH" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"PCURVE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PERPENDICULARITY_TOLERANCE" => &[],
"PERSON_AND_ORGANIZATION_ADDRESS" => &[],
"PERSON_AND_ORGANIZATION_ASSIGNMENT" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PERSONAL_ADDRESS" => &[
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"PLACED_DATUM_TARGET_FEATURE" => &[],
"PLACEMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"PLANAR_BOX" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"PLANAR_EXTENT" => &[
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"PLANE_ANGLE_MEASURE_WITH_UNIT" => &[],
"PLANE_ANGLE_UNIT" => &[],
"POINT" => &[],
"POINT_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"POLY_LOOP" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"POSITION_TOLERANCE" => &[],
"PRE_DEFINED_CHARACTER_GLYPH" => &[],
"PRE_DEFINED_COLOUR" => &[],
"PRE_DEFINED_CURVE_FONT" => &[],
"PRE_DEFINED_ITEM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRE_DEFINED_MARKER" => &[],
"PRE_DEFINED_POINT_MARKER_SYMBOL" => &[],
"PRE_DEFINED_PRESENTATION_STYLE" => &[],
"PRE_DEFINED_SURFACE_SIDE_STYLE" => &[],
"PRE_DEFINED_SYMBOL" => &[],
"PRE_DEFINED_TERMINATOR_SYMBOL" => &[],
"PRE_DEFINED_TEXT_FONT" => &[],
"PRE_DEFINED_TILE" => &[],
"PRESENTATION_AREA" => &[],
"PRESENTATION_REPRESENTATION" => &[],
"PRESENTATION_SET" => &[],
"PRESENTATION_STYLE_ASSIGNMENT" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"PRESENTATION_STYLE_BY_CONTEXT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"PRESENTATION_VIEW" => &[],
"PRESENTED_ITEM" => &[],
"PRODUCT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_CATEGORY" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"PRODUCT_CONCEPT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_CONCEPT_FEATURE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"PRODUCT_CONCEPT_FEATURE_CATEGORY" => &[],
"PRODUCT_CONTEXT" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRODUCT_DEFINITION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_CONTEXT" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"PRODUCT_DEFINITION_EFFECTIVITY" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"PRODUCT_DEFINITION_FORMATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE" => &[Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
}],
"PRODUCT_DEFINITION_OCCURRENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: false,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_RELATIONSHIP_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PRODUCT_DEFINITION_SHAPE" => &[],
"PRODUCT_DEFINITION_USAGE" => &[],
"PRODUCT_DEFINITION_WITH_ASSOCIATED_DOCUMENTS" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"PRODUCT_RELATED_PRODUCT_CATEGORY" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"PROJECTED_ZONE_DEFINITION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PROPERTY_DEFINITION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"PROPERTY_DEFINITION_REPRESENTATION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"QUALIFIED_REPRESENTATION_ITEM" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"QUASI_UNIFORM_CURVE" => &[],
"QUASI_UNIFORM_SURFACE" => &[],
"RATIO_MEASURE_WITH_UNIT" => &[],
"RATIO_UNIT" => &[],
"RATIONAL_B_SPLINE_CURVE" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"RATIONAL_B_SPLINE_SURFACE" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"REAL_LITERAL" => &[],
"REAL_REPRESENTATION_ITEM" => &[],
"REPOSITIONED_TESSELLATED_ITEM" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"REPRESENTATION" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_CONTEXT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_ITEM" => &[Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
}],
"REPRESENTATION_MAP" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_REFERENCE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"ROUNDNESS_TOLERANCE" => &[],
"SEAM_CURVE" => &[],
"SECURITY_CLASSIFICATION_ASSIGNMENT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SHAPE_ASPECT" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Log,
req: false,
der: false,
swire: None,
},
],
"SHAPE_ASPECT_RELATIONSHIP" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SHAPE_DEFINITION_REPRESENTATION" => &[],
"SHAPE_DIMENSION_REPRESENTATION" => &[],
"SHAPE_REPRESENTATION" => &[],
"SHAPE_REPRESENTATION_RELATIONSHIP" => &[],
"SHAPE_REPRESENTATION_WITH_PARAMETERS" => &[],
"SHELL_BASED_SURFACE_MODEL" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"SI_UNIT" => &[
Slot {
k: Sk::Enum,
req: false,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"SIMPLE_GENERIC_EXPRESSION" => &[],
"SIMPLE_NUMERIC_EXPRESSION" => &[],
"SOLID_ANGLE_UNIT" => &[],
"SOLID_MODEL" => &[],
"START_REQUEST" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"STATE_OBSERVED" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"STATE_TYPE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: false,
der: false,
swire: None,
},
],
"STRAIGHTNESS_TOLERANCE" => &[],
"STYLED_ITEM" => &[
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SURFACE" => &[],
"SURFACE_CURVE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
],
"SURFACE_PROFILE_TOLERANCE" => &[],
"SURFACE_SIDE_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"SURFACE_STYLE_BOUNDARY" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_CONTROL_GRID" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_FILL_AREA" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_PARAMETER_LINE" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"SURFACE_STYLE_REFLECTANCE_AMBIENT" => &[Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_RENDERING" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SURFACE_STYLE_RENDERING_WITH_PROPERTIES" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_SEGMENTATION_CURVE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_SILHOUETTE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"SURFACE_STYLE_USAGE" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"SYMBOL_REPRESENTATION" => &[],
"SYMBOL_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TERMINATOR_SYMBOL" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"TESSELLATED_GEOMETRIC_SET" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"TESSELLATED_ITEM" => &[],
"TESSELLATED_SHAPE_REPRESENTATION" => &[],
"TESSELLATED_STRUCTURED_ITEM" => &[],
"TEXT_LITERAL" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TEXT_STYLE" => &[
Slot {
k: Sk::Str,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TEXT_STYLE_WITH_BOX_CHARACTERISTICS" => &[Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
}],
"TEXTURE_STYLE_SPECIFICATION" => &[],
"TEXTURE_STYLE_TESSELLATION_SPECIFICATION" => &[],
"TIME_UNIT" => &[],
"TOLERANCE_ZONE" => &[
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
"TOLERANCE_ZONE_DEFINITION" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Vec,
req: true,
der: false,
swire: None,
},
],
"TOLERANCE_ZONE_WITH_DATUM" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"TOPOLOGICAL_REPRESENTATION_ITEM" => &[],
"TOROIDAL_SURFACE" => &[
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"TWO_DIRECTION_REPEAT_FACTOR" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"UNEQUALLY_DISPOSED_GEOMETRIC_TOLERANCE" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"UNIFORM_CURVE" => &[],
"UNIFORM_SURFACE" => &[],
"VALUE_REPRESENTATION_ITEM" => &[Slot {
k: Sk::Meas,
req: true,
der: false,
swire: None,
}],
"VECTOR" => &[
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
],
"VERTEX" => &[],
"VERTEX_POINT" => &[Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
}],
"VIEW_VOLUME" => &[
Slot {
k: Sk::Enum,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Real,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Bool,
req: true,
der: false,
swire: None,
},
Slot {
k: Sk::Ref,
req: true,
der: false,
swire: None,
},
],
_ => &[],
}
}