Exemplo n.º 1
0
        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);
        }
Exemplo n.º 3
0
        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("");
        }