(* SCHEMA building_design_schema; *)
RULE building_element_maps_into_building_section FOR (mapped_item,
representation_relationship_with_transformation);
WHERE
wr1: SIZEOF(QUERY ( mi <* mapped_item | ((SIZEOF(QUERY ( pdr <*
USEDIN(mi.mapping_source.mapped_representation,
'BUILDING_DESIGN_SCHEMA.' +
'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')
| (SIZEOF(TYPEOF(pdr.definition.definition) * [
'BUILDING_DESIGN_SCHEMA.BUILDING_ELEMENT',
'BUILDING_DESIGN_SCHEMA.FIXTURE_EQUIPMENT_ELEMENT',
'BUILDING_DESIGN_SCHEMA.SERVICE_ELEMENT',
'BUILDING_DESIGN_SCHEMA.SPACE_ELEMENT',
'BUILDING_DESIGN_SCHEMA.STRUCTURE_ENCLOSURE_ELEMENT']) = 1) ))
>= 1) AND (NOT (SIZEOF(QUERY ( r <* USEDIN(mi,
'BUILDING_DESIGN_SCHEMA.' + 'REPRESENTATION.ITEMS') | (SIZEOF(
QUERY ( pdr <* USEDIN(r,'BUILDING_DESIGN_SCHEMA.' +
'PROPERTY_DEFINITION_REPRESENTATION.USED_REPRESENTATION') | (
'BUILDING_DESIGN_SCHEMA.BUILDING_SECTION' IN TYPEOF(pdr.
definition.definition)) )) >= 1) )) = 1))) )) = 0;
wr2: SIZEOF(QUERY ( rrwt <*
representation_relationship_with_transformation | ((SIZEOF(
QUERY ( pdr <* USEDIN(rrwt\representation_relationship.rep_2,
'BUILDING_DESIGN_SCHEMA.' +
'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')
| (SIZEOF(TYPEOF(pdr.definition.definition) * [
'BUILDING_DESIGN_SCHEMA.BUILDING_ELEMENT',
'BUILDING_DESIGN_SCHEMA.FIXTURE_EQUIPMENT_ELEMENT',
'BUILDING_DESIGN_SCHEMA.SERVICE_ELEMENT',
'BUILDING_DESIGN_SCHEMA.SPACE_ELEMENT',
'BUILDING_DESIGN_SCHEMA.STRUCTURE_ENCLOSURE_ELEMENT']) = 1) ))
>= 1) AND (NOT (SIZEOF(QUERY ( pdr <* USEDIN(rrwt\
representation_relationship.rep_1,
'BUILDING_DESIGN_SCHEMA.PROPERTY_DEFINITION_' +
'REPRESENTATION.USED_REPRESENTATION') | (
'BUILDING_DESIGN_SCHEMA.BUILDING_SECTION' IN TYPEOF(pdr.
definition.definition)) )) = 1))) )) = 0;
wr3: SIZEOF(QUERY ( rrwt_1 <*
representation_relationship_with_transformation | (SIZEOF(
QUERY ( rrwt_2 <*
representation_relationship_with_transformation | ((SIZEOF(
QUERY ( pdr <* USEDIN(rrwt_1\representation_relationship.rep_2,
'BUILDING_DESIGN_SCHEMA.PROPERTY_DEFINITION_' +
'REPRESENTATION.USED_REPRESENTATION') | (SIZEOF(TYPEOF(pdr.
definition.definition) * [
'BUILDING_DESIGN_SCHEMA.BUILDING_ELEMENT',
'BUILDING_DESIGN_SCHEMA.FIXTURE_EQUIPMENT_ELEMENT',
'BUILDING_DESIGN_SCHEMA.SERVICE_ELEMENT',
'BUILDING_DESIGN_SCHEMA.SPACE_ELEMENT',
'BUILDING_DESIGN_SCHEMA.' + 'STRUCTURE_ENCLOSURE_ELEMENT']) =
1) )) >= 1) AND (rrwt_1\representation_relationship.rep_2 =
rrwt_2\representation_relationship.rep_2)) )) >= 1) )) = 0;
END_RULE; -- building_element_maps_into_building_section
Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:18:14-04:00