public override string WhereRule() { string err = ""; if (_liningDepth.HasValue && !_liningThickness.HasValue) { err += "WR31 WindowLiningProperties : Either both parameter, LiningDepth and LiningThickness are given, or only the LiningThickness, then the LiningDepth is variable. It is not valid to only assert the LiningDepth.\n"; } if (_secondTransomOffset.HasValue && !_firstTransomOffset.HasValue) { err += "WR32 WindowLiningProperties : Either both parameter, FirstTransomOffset and SecondTransomOffset are given, or only the FirstTransomOffset, or none of both. It is not valid to only assert the SecondTransomOffset.\n"; } if (_secondMullionOffset.HasValue && !_firstMullionOffset.HasValue) { err += "WR33 WindowLiningProperties : Either both parameter, FirstMullionOffset and SecondMullionOffset are given, or only the FirstMullionOffset, or none of both. It is not valid to only assert the SecondMullionOffset.\n"; } IfcTypeObject defines = DefinesType.FirstOrDefault(); if (defines != null && !(defines is IfcWindowStyle)) { err += "WR34 WindowLiningProperties : The WindowLiningProperties shall only be used in the context of an WindowStyle.\n"; } return(err); }
public override string WhereRule() { string err = ""; if (_liningDepth.HasValue && !_liningThickness.HasValue) { err += "WR31 DoorLiningProperties: Either both parameter, LiningDepth and LiningThickness are given, or only the LiningThickness, then the LiningDepth is variable. It is not valid to only assert the LiningDepth.\n"; } if (_thresholdDepth.HasValue && !_thresholdThickness.HasValue) { err += "WR32 DoorLiningProperties: Either both parameter, ThresholdDepth and ThresholdThickness are given, or only the ThresholdThickness, then the ThresholdDepth is variable. It is not valid to only assert the ThresholdDepth\n"; } if (_transomOffset.HasValue ^ _transomThickness.HasValue) { err += "WR33 DoorLiningProperties: Either both parameter, TransomOffset and TransomThickness are given, or neither of them.\n"; } if (_casingDepth.HasValue ^ _casingThickness.HasValue) { err += "WR34 DoorLiningProperties: Either both parameter, the CasingDepth and the CasingThickness, are given, or neither of them.\n"; } IfcTypeObject defType = DefinesType.FirstOrDefault(); if (defType != null && !(defType is IfcDoorStyle)) { err += "WR35 DoorLiningProperties: The IfcDoorLiningProperties shall only be used in the context of an IfcDoorStyle.\n"; } return(err); }
public override string WhereRule() { IfcTypeObject defType = DefinesType.FirstOrDefault(); if (defType != null && !(defType is IfcDoorStyle)) { return ("WR31 DoorPanelProperties: The DoorPanelProperties shall only be used in the context of an IfcDoorStyle. "); } return(""); }