Resource: Property, Field : StructureType
Description
StructureType must be valid dependent on property type.
Error Messages
1) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of cabin.
2) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of dock.
3) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of duplex.
4) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of house.
5) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of manufactured house.
6) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of mixed use.
7) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of multi-family.
8) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of none.
9) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of quadruplex.
10) ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of triplex.
11) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of cabin.
12) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of dock.
13) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of duplex.
14) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of house.
15) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of manufactured house.
16) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of mixed use.
17) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of multi-family.
18) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of none.
19) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of quadruplex.
20) ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of triplex.
Fields referenced within this rule
PropertySubType
PropertyType
StructureType
Syntax with comments and error messages
//[ErrMsg1^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of cabin.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk3^TRUE|LogicBlk4^FALSE]
//[ErrMsg2^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of dock.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk5^TRUE|LogicBlk6^FALSE]
//[ErrMsg3^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of duplex.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk7^TRUE|LogicBlk8^FALSE]
//[ErrMsg4^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of house.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk9^TRUE|LogicBlk10^FALSE]
//[ErrMsg5^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of manufactured house.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk11^TRUE|LogicBlk12^FALSE]
//[ErrMsg6^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of mixed use.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk13^TRUE|LogicBlk14^FALSE]
//[ErrMsg7^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of multi-family.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk15^TRUE|LogicBlk16^FALSE]
//[ErrMsg8^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of none.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk17^TRUE|LogicBlk18^FALSE]
//[ErrMsg9^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of quadruplex.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk19^TRUE|LogicBlk20^FALSE]
//[ErrMsg10^ERROR, invalid 'property subtype' for 'property type' of residential and 'structure type' of triplex.|LogicBlk1^TRUE|LogicBlk2^TRUE|LogicBlk21^TRUE|LogicBlk22^FALSE]
//[ErrMsg11^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of cabin.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk24^TRUE|LogicBlk25^FALSE]
//[ErrMsg12^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of dock.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk26^TRUE|LogicBlk27^FALSE]
//[ErrMsg13^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of duplex.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk28^TRUE|LogicBlk29^FALSE]
//[ErrMsg14^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of house.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk30^TRUE|LogicBlk31^FALSE]
//[ErrMsg15^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of manufactured house.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk32^TRUE|LogicBlk33^FALSE]
//[ErrMsg16^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of mixed use.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk34^TRUE|LogicBlk35^FALSE]
//[ErrMsg17^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of multi-family.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk36^TRUE|LogicBlk37^FALSE]
//[ErrMsg18^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of none.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk38^TRUE|LogicBlk39^FALSE]
//[ErrMsg19^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of quadruplex.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk40^TRUE|LogicBlk41^FALSE]
//[ErrMsg20^ERROR, invalid 'property subtype' for 'property type' of residential lease and 'structure type' of triplex.|LogicBlk1^TRUE|LogicBlk23^TRUE|LogicBlk42^TRUE|LogicBlk43^FALSE]
// If the structure type is not empty...
IIF((/*[LogicBlk1]*/.ENTRY. != .EMPTY.),
// Then for 'property type' of residential and each defined 'structure type', verify that the property sub-types defined are within the allowed set and...
(((((/*[LogicBlk3]*/COUNT(INTERSECTION(SET('CABIN'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk4]*/PropertySubType.IN.('CABIN'))).OR.((/*[LogicBlk5]*/COUNT(INTERSECTION(SET('DOCK'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk6]*/PropertySubType.IN.('BSLP'))).OR.((/*[LogicBlk7]*/COUNT(INTERSECTION(SET('DPLX'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk8]*/PropertySubType.IN.('SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','DPLX','LOFT','TIME'))).OR.((/*[LogicBlk9]*/COUNT(INTERSECTION(SET('HOUSE'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk10]*/PropertySubType.IN.('SFR','CONDO','COOP','OYO','TIME','TWNHS'))).OR.((/*[LogicBlk11]*/COUNT(INTERSECTION(SET('MANUH'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk12]*/PropertySubType.IN.('COOP','MANL','CABIN','OYO','TIME'))).OR.((/*[LogicBlk13]*/COUNT(INTERSECTION(SET('MIXU'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk14]*/PropertySubType.IN.('COMRES'))).OR.((/*[LogicBlk15]*/COUNT(INTERSECTION(SET('MULT'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk16]*/PropertySubType.IN.('CONDO','COOP','TWNHS','OYO','STUD','APT','LOFT','TIME'))).OR.((/*[LogicBlk17]*/COUNT(INTERSECTION(SET('NONE'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk18]*/PropertySubType.IN.('DDPK'))).OR.((/*[LogicBlk19]*/COUNT(INTERSECTION(SET('QUAD'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk20]*/PropertySubType.IN.('SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','QUAD','LOFT','TIME'))).OR.((/*[LogicBlk21]*/COUNT(INTERSECTION(SET('TPLX'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk22]*/PropertySubType.IN.('SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','TPLX','LOFT','TIME')))).AND.(/*[LogicBlk2]*/PropertyType.IN.('Resi'))).AND.
// for 'property type' of residential lease and each defined 'structure type', verify that the property sub-types defined are within the allowed set or...
((((/*[LogicBlk24]*/COUNT(INTERSECTION(SET('CABIN'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk25]*/PropertySubType.IN.('RMRT','CABIN'))).OR.((/*[LogicBlk26]*/COUNT(INTERSECTION(SET('DOCK'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk27]*/PropertySubType.IN.('RMRT','BSLP'))).OR.((/*[LogicBlk28]*/COUNT(INTERSECTION(SET('DPLX'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk29]*/PropertySubType.IN.('RMRT','SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','DPLX','LOFT','TIME'))).OR.((/*[LogicBlk30]*/COUNT(INTERSECTION(SET('HOUSE'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk31]*/PropertySubType.IN.('RMRT','SFR','CONDO','COOP','OYO','TIME','TWNHS'))).OR.((/*[LogicBlk32]*/COUNT(INTERSECTION(SET('MANUH'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk33]*/PropertySubType.IN.('RMRT','COOP','MANL','CABIN','OYO','TIME'))).OR.((/*[LogicBlk34]*/COUNT(INTERSECTION(SET('MIXU'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk35]*/PropertySubType.IN.('RMRT','COMRES'))).OR.((/*[LogicBlk36]*/COUNT(INTERSECTION(SET('MULT'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk37]*/PropertySubType.IN.('RMRT','CONDO','COOP','TWNHS','OYO','STUD','APT','LOFT','TIME'))).OR.((/*[LogicBlk38]*/COUNT(INTERSECTION(SET('NONE'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk39]*/PropertySubType.IN.('RMRT','DDPK'))).OR.((/*[LogicBlk40]*/COUNT(INTERSECTION(SET('QUAD'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk41]*/PropertySubType.IN.('RMRT','SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','QUAD','LOFT','TIME'))).OR.((/*[LogicBlk42]*/COUNT(INTERSECTION(SET('TPLX'),ARRAY(.ENTRY.))) = 1).AND.(/*[LogicBlk43]*/PropertySubType.IN.('RMRT','SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','TPLX','LOFT','TIME')))).AND.(/*[LogicBlk23]*/PropertyType.IN.('Rlse')))).OR.
// any of the remaining property types.
(PropertyType.IN.('Rinc','Land','Comm','Manu','Clse','Busop','FARM')),
// Else, accept as the entry is empty.
.TRUE.)
Syntax only
IIF((.ENTRY. != .EMPTY.),(((((COUNT(INTERSECTION(SET('CABIN'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('CABIN'))).OR.((COUNT(INTERSECTION(SET('DOCK'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('BSLP'))).OR.((COUNT(INTERSECTION(SET('DPLX'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','DPLX','LOFT','TIME'))).OR.((COUNT(INTERSECTION(SET('HOUSE'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('SFR','CONDO','COOP','OYO','TIME','TWNHS'))).OR.((COUNT(INTERSECTION(SET('MANUH'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('COOP','MANL','CABIN','OYO','TIME'))).OR.((COUNT(INTERSECTION(SET('MIXU'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('COMRES'))).OR.((COUNT(INTERSECTION(SET('MULT'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('CONDO','COOP','TWNHS','OYO','STUD','APT','LOFT','TIME'))).OR.((COUNT(INTERSECTION(SET('NONE'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('DDPK'))).OR.((COUNT(INTERSECTION(SET('QUAD'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','QUAD','LOFT','TIME'))).OR.((COUNT(INTERSECTION(SET('TPLX'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','TPLX','LOFT','TIME')))).AND.(PropertyType.IN.('Resi'))).AND.((((COUNT(INTERSECTION(SET('CABIN'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','CABIN'))).OR.((COUNT(INTERSECTION(SET('DOCK'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','BSLP'))).OR.((COUNT(INTERSECTION(SET('DPLX'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','DPLX','LOFT','TIME'))).OR.((COUNT(INTERSECTION(SET('HOUSE'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','SFR','CONDO','COOP','OYO','TIME','TWNHS'))).OR.((COUNT(INTERSECTION(SET('MANUH'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','COOP','MANL','CABIN','OYO','TIME'))).OR.((COUNT(INTERSECTION(SET('MIXU'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','COMRES'))).OR.((COUNT(INTERSECTION(SET('MULT'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','CONDO','COOP','TWNHS','OYO','STUD','APT','LOFT','TIME'))).OR.((COUNT(INTERSECTION(SET('NONE'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','DDPK'))).OR.((COUNT(INTERSECTION(SET('QUAD'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','QUAD','LOFT','TIME'))).OR.((COUNT(INTERSECTION(SET('TPLX'),ARRAY(.ENTRY.))) = 1).AND.(PropertySubType.IN.('RMRT','SFR','CONDO','COOP','TWNHS','CABIN','OYO','STUD','APT','TPLX','LOFT','TIME')))).AND.(PropertyType.IN.('Rlse')))).OR.(PropertyType.IN.('Rinc','Land','Comm','Manu','Clse','Busop','FARM')),.TRUE.)
Rule Unique ID
548124d3-d5fb-4913-94b1-8851f27d91dd
Rule Number
199