ACCEPT

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