1
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 4 항 2호
2. 수조가 펌프보다 낮게 설치된 경우에는 각 펌프(충압펌프를 포함한다)마다 수조로부터 별도로 설치할 것
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 4항 2호
Check(NFSC103A_8_4_2){
IF CS THEN KS
}
CS{
getObjectVerticalLocation(Pump, Tank ) < 0
}
KS{
Pipe myPipe{
isInstalled(Pump.Inlet, Pipe) = TRUE
}
isInstalled(myPipe, Pump.One) = TRUE
}
Python Code 변환 예정
2
건축물의 에너지절약설계기준 제 5조 9호 카 목
카. "방습층”이라 함은 습한 공기가 구조체에 침투하여 결로발생의 위험이 높아지는 것을 방지하기 위해 설치하는 투습도가 24시간당 30g/㎡ 이하 또는 투습계수 0.28g/㎡·h·㎜Hg 이하의 투습저항을 가진 층을 말한다.(시험방법은 한국산업규격 KS T 1305 방습포장재료의 투습도 시험방법 또는 KS F 2607 건축 재료의 투습성 측정 방법에서 정하는 바에 따른다) 다만, 단열재 또는 단열재의 내측에 사용되는 마감재가 방습층으로서 요구되는 성능을
// 스프링클러설비의 화재안전기준(nfsc 103) 4조 (수원) 5항
Check(NFSC103_4_5){
IF CS THEN KS
}
CS{
isObjectProperty(Tank .isWaterSource) = TRUE
(getResult(NFSC103_4_5_1) = FALSE
OR getResult(NFSC103_4_5_2) = FALSE)
}
KS{
isObjectProperty(Tank .isShared) = FALSE
}
Python Code 변환 예정
3
건축물의 에너지절약설계기준 제 5조 9호 파 목
파. "평균 열관류율”이라 함은 지붕(천창 등 투명 외피부위를 포함하지 않는다), 바닥, 외벽(창 및 문을 포함한다) 등의 열관류율 계산에 있어 세부 부위별로 열관류율값이 다를 경우 이를 면적으로 가중평균하여 나타낸 것을 말한다. 단, 평균열관류율은 중심선 치수를 기준으로 계산한다.
// 스프링클러설비의 화재안전기준(nfsc 103) 4조 (수원) 5항 2호
Check(NFSC103_4_5_2){
KS
}
Pipe myPipe{
isObjectProperty(Pipe.isRiser) = TRUE
isInstalled(Pipe, SprinklerSystem) = TRUE
}
Tank myTank {
getObjectProperty(Tank .operationType) = "ElevatedWaterTank "
}
WaterSupplyOpening myWaterSupplyOpening{
isConnectedTo(WaterSupplyOpening, myPipe) = TRUE
}
WaterSupplyOpening myWaterSupplyOpening2{
WaterSupplyOpening != myWaterSupplyOpening
}
KS{
getObjectVerticalLocation(myWaterSupplyOpening, myWaterSupplyOpening2) < 0
}
Python Code 변환 예정
4
건축물의 에너지절약설계기준 제 7조 3호 나 목
나. 외벽 부위는 제5조제9호차목에 따른 외단열로 시공한다.
// 스프링클러설비의 화재안전기준(nfsc 103) 12조 (전원) 2항
Check(NFSC103_12_2){
IF (!CS1 THEN KS1) OR (CS2 THEN KS2)
}
CS1{
Tank myTank {
getObjectProperty(Tank ) = "PressurizedTank "
}
isInstalled(myTank ) = TRUE
}
CS2{
getBuildingUsage() = "Garage"
OR getBuildingUsage() = "ParkingLot"
ParkingLot myParkingLot{
getResult(Unimplemented_NFSC105_13_2_2) = TRUE
getSpace(ParkingLot)
}
Floor myFloor{
isInstalled(SprinklerSystem, Floor) = TRUE
}
getFloorArea(myFloor) + getFloorArea(myFloor2) >= 1000m2
}
KS1{
EmergencyPower myEmergencyPower{
getObjectProperty(EmergencyPower.systemType) = "InhousePowerGenerationSystem"
OR getObjectProperty(EmergencyPower.systemType) = "StorageBatterySystem"
}
isInstalled(myEmergencyPower, SprinklerSystem) = TRUE
}
KS2{
EmergencyPower myEmergencyPower{
getObjectProperty(EmergencyPower.systemType) = "InhousePowerGenerationSystem"
OR getObjectProperty(EmergencyPower.systemType) = "StorageBatterySystem"
OR getObjectProperty(EmergencyPower.systemType) = "EmergencyPowerReceivingSystem"
}
isInstalled(myEmergencyPower, SprinklerSystem) = TRUE
}
Python Code 변환 예정
5
건축물의 에너지절약설계기준 제 9조 1호
난방 및 냉방설비의 용량계산을 위한 설계기준 실내온도는 난방의 경우 20℃, 냉방의 경우 28℃를 기준으로 하되(목욕장 및 수영장은 제외) 각 건축물 용도 및 개별 실의 특성에 따라 별표8에서 제시된 범위를 참고하여 설비의 용량이 과다해지지 않도록 한다.
// 간이스프링클러설비의 화재안전기준(NFSC 103A) 4조 (수원) 1항 2호
Check(NFSC103A_4_1_2){
IF CS THEN KS
}
CS{
WaterSource myWaterSource{
isObjectProperty(Tank .isWaterSource) = TRUE
}
isInstalled(myWaterSource) = TRUE
}
KS{
getObjectCount(AutomaticWaterSupplyEquipment) >= 1
}
Python Code 변환 예정
6
건축물의 에너지절약설계기준 제 9조 2호
2. 열원설비
// 간이스프링클러설비의 화재안전기준(NFSC103a) 4조 (수원) 2항
Check(NFSC503A_4_2){
IF !CS1 AND CS2 THEN KS
}
CS1{
getResult(NFSC503A_4_2_1) = TRUE
OR getResult(NFSC503A_4_2_2) = TRUE
}
CS2{
isObjectProperty(SimpleSprinklerSystem.Tank .isWaterSource) = TRUE
}
KS{
isObjectProperty(Tank .isShared) = FALSE
}
Python Code 변환 예정
7
건축물의 에너지절약설계기준 제 9조 2호 나 목
나. 난방기기, 냉방기기, 냉동기, 송풍기, 펌프 등은 부하조건에 따라 최고의 성능을 유지할 수 있도록 대수분할 또는 비례제어운전이 되도록 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 4조 (수원) 2항 2호
Check(NFSC503A_4_2_2){
KS
}
KS{
Pipe myPipe{
getObjectProperty(Pipe.usage)= "WaterSupplyPipe"
getObjectProperty(Pipe.systemType)="SimpleSprinklerSystem"
isObjectProperty(Pipe.isRiser)= TRUE
}
Tank myTank {
getObjectProperty(Tank .operationType) = "ElevatedWaterTank "
}
Port myPort1{
getObjectProperty(Port.typeForWater) = "Supply"
isConnectedTo(Port,myTank ) = TRUE
isConnectedTo(Port,myWaterSupplyPipe) = TRUE
}
Port myPort2 {
getObject(Port) - getObject(myPort1)
}
Distance1 = getObjectVerticalDistance(myPort1, Ground.Surface, b)
Distance2 = getObjectVerticalDistance(myPort2, Ground.Surface, b)
Distance1 - Distance2 < 0
}
Python Code 변환 예정
8
건축물의 에너지절약설계기준 제 9조 2호 라 목
라. 냉방기기는 고효율인증제품 또는 이와 동등 이상의 것 또는 에너지소비효율 등급이 높은 제품을 설치한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 4조 (수원) 4항 3호
Check(NFSC503A_4_4_3){
KS
}
KS{
isInstalled(Tank .SideSurface, WaterLevelGauge) = TRUE
}
Python Code 변환 예정
9
건축물의 에너지절약설계기준 제 9조 2호 마 목
마. 보일러의 배출수·폐열·응축수 및 공조기의 폐열, 생활배수 등의 폐열을 회수하기 위한 열회수설비를 설치한다. 폐열회수를 위한 열회수설비를 설치할 때에는 중간기에 대비한 바이패스(by-pass)설비를 설치한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 4조 (수원) 4항 3호
Check(NFSC503A_4_4_3){
IF CS THEN KS
}
CS{
getObjectVerticalLocation(Tank .TopSurface, FloorSlab) = TRUE
}
KS{
isInstalled(Ladder, Tank .SideSurface) = TRUE
isObjectProperty(Ladder.isFixed) = TRUE
}
Python Code 변환 예정
10
건축물의 에너지절약설계기준 제 9조 2호 바 목
바. 냉방기기는 전력피크 부하를 줄일 수 있도록 하여야 하며, 상황에 따라 심야전기를 이용한 축열·축냉시스템, 가스 및 유류를 이용한 냉방설비, 집단에너지를 이용한 지역냉방방식, 소형열병합발전을 이용한 냉방방식, 신·재생에너지를 이용한 냉방방식을 채택한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 4조 5호(수원)
Check(NFSC503A_4_5){
IF CS THEN KS
}
CS{
Space mySpace{
isExternal(Space) = FALSE
}
hasSpace(mySpace,Tank ) = TRUE
KS{
hasSpace(mySpace,LightingSystem) = TRUE
}
Python Code 변환 예정
11
건축물의 에너지절약설계기준 제 9조 3호
3. 공조설비
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 4조 (수원) 4항 6호
Check(NFSC503A_4_2_6){
KS
}
KS{
Valve myValve{
isObjectProperty(Valve.isDeliveryValveForCleaning) = TRUE
}
Pipe myPipe{
isObjectProperty(Pipe.usage) = "WaterDrainPipe"
}
isInstalled(Tank .BottomSurface, myValve) = TRUE
OR isInstalled(Tank .BottomSurface, myPipe) = TRUE
}
Python Code 변환 예정
12
건축물의 에너지절약설계기준 제 9조 5호 나 목
나. 환기시 열회수가 가능한 제5조제10호자목에 따른 폐열회수형 환기장치 등을 설치한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 2항 8호 가
Check(NFSC503A_5_2_8_가){
KS
}
KS{
isInstalled(WaterLiftingDevice, Tank )=TRUE
isObjectProperty(Tank .isShared) = FALSE
}
Python Code 변환 예정
13
건축물의 에너지절약설계기준 제 9조 5호 다 목
다. 기계환기설비를 사용하여야 하는 지하주차장의 환기용 팬은 대수제어 또는 풍량조절(가변익, 가변속도), 일산화탄소(CO)의 농도에 의한 자동(on-off)제어 등의 에너지절약적 제어방식을 도입한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 2항 8호 나목
Check(NFSC503A_5_2_8_나){
KS
}
KS{
isObjectProperty(Tank .amountOfEffectiveWater) >= 10L
}
Python Code 변환 예정
14
건축물의 에너지절약설계기준 제 9조 6호
6. 위생설비 등
/ 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 3항
Check(NFSC503A_5_3){
IF CS THEN KS
}
CS{
isObjectProperty(PressurizedWaterSupplySystem.supplyType) = "ElevatedWaterTank Type"
}
KS{
getResult(NFSC503A_5_3_1)=TRUE
getResult(NFSC503A_5_3_2)=TRUE
}
Python Code 변환 예정
15
건축물의 에너지절약설계기준 제 9조 6호 가 목
가. 위생설비 급탕용 저탕조의 설계온도는 55℃ 이하로 하고 필요한 경우에는 부스터히터 등으로 승온하여 사용한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 3항 1호
Check(NFSC503A_5_3_1){
KS
}
KS{
Tank myTank {
isObjectProperty(Tank .operationType) = "ElevatedWaterTank "
}
Head myHead{
hasSpace(TopFloor,Head) = TRUE
}
getObjectVerticalDistance(myTank .BottomSurface,myHead) >= Pipe.frictionHeadLossH + 10m
}
Python Code 변환 예정
16
건축물의 에너지절약설계기준 제 9조 6호 나 목
나. 에너지 사용설비는 에너지절약 및 에너지이용 효율의 향상을 위하여 컴퓨터에 의한 자동제어시스템 또는 네트워킹이 가능한 현장제어장치 등을 사용한 에너지제어시스템을 채택하거나, 분산제어 시스템으로서 각 설비별 에너지제어 시스템에 개방형 통신기술을 채택하여 설비별 제어 시스템간 에너지관리 데이터의 호환과 집중제어가 가능하도록 한다.
//간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 3항 2호
Check(NFSC503A_5_3_2){
KS
}
KS{
Tank myTank {
isObjectProperty(Tank .operationType) = "ElevatedWaterTank "
}
Pipe myPipe1{
isObjectProperty(Pipe.isOverflowPipe) = TRUE
}
Pipe myPipe2{
getObjectProperty(Pipe.usage) = "WaterDrainPipe"
}
Pipe myPipe3{
getObjectProperty(Pipe.usage) = "WaterSupplyPipe"
}
isInstalled(myTank ,WaterLevelGauge) = TRUE
isInstalled(myTank ,myPipe2) = TRUE
isInstalled(myTank ,myPipe3) = TRUE
isInstalled(myTank ,myPipe1) = TRUE
isInstalled(myTank ,Manshole) = TRUE
}
Python Code 변환 예정
17
건축물의 에너지절약설계기준 제 10조
제10조(전기부문의 의무사항) 에너지절약계획서 제출대상 건축물의 건축주와 설계자 등은 다음 각 호에서 정하는 전기부문의 설계기준을 따라야 한다.
/ 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 4항
Check(NFSC503A_5_4){
IF CS THEN KS
}
CS{
getObjectProperty(PressurizedWaterSupplySystem.supplyType) = "HydropneumaticTank Type"
}
KS{
getResult(NFSC503A_5_4_1)=TRUE
getResult(NFSC503A_5_4_2)=TRUE
}
Python Code 변환 예정
18
건축물의 에너지절약설계기준 제 10조 1호
1. 수변전설비
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 4항 2호
Check(NFSC503A_5_4_2){
KS
}
KS{
Tank myTank {
isObjectProperty(Tank .operationType) = "HydropneumaticTank "
}
Pipe myPipe{
isObjectProperty(Pipe.usage)="WaterSupplyPipe"
OR isObjectProperty(Pipe.usage)="WaterDrainPipe"
OR isObjectProperty(Pipe.usage)="AirSupplyPipe"
}
AirCompressor myAirCompressor{
isObjectProperty(AirCompressor.isAutomatic) = TRUE
}
isInstalled(WaterLevelGauge, myTank ) = TRUE
isInstalled(myPipe, myTank ) = TRUE
isInstalled(Manshole, myTank ) = TRUE
isInstalled(PressureGauge, myTank ) = TRUE
isInstalled(SafetyDevice, myTank ) = TRUE
isInstalled(AirCompressor, myTank ) = TRUE
}
Python Code 변환 예정
19
건축물의 에너지절약설계기준 제 18조 4 항
④ 완화기준의 신청을 받은 허가권자는 신청내용의 적합성을 검토하고, 신청자가 신청내용을 이행하도록 허가조건에 명시하여 허가하여야 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 16항 2호
Check(NFSC503A_8_16_2){
IF (!CS1 AND CS2) THEN KS
}
CS1{
getObjectVerticalLocation(WaterSource, Pump) > 0
}
CS2{
PressurizedWaterSupplySystem myPressurizedWaterSupplySystem{
isObjectProperty(PressurizedWaterSupplySystem.supplyType) != "DirectCoupledType" OR "PressurizedTank Type"
}
isInstalled(Pipe, myPressurizedWaterSupplySystem) = TRUE
OR isInstalled(Valve, myPressurizedWaterSupplySystem) = TRUE
}
KS{
Tank myTank {
isObjectProperty(Tank .operationType) = "HydropneumaticTank "
}
Valve myValve1{
isObjectProperty(Valve.isCheckValve) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isIndicatingValve) = TRUE
}
Valve myValve3{
isObjectProperty(Valve.isTestValve) = TRUE
}
Pipe myPipe{
isObjectProperty(Pipe.isForTest) = TRUE
}
isInstalledInOrder(WaterSource, CompoundGauge | VacuumGauge, Pump | myTank , PressureGauge, myValve1, myPipe, myValve2, WaterflowIndicator, myValve3) = TRUE
}
Python Code 변환 예정
20
건축물의 에너지절약설계기준 제 19조 1 항
제19조(인증의 취득) ① 신청인이 인증에 의해 완화기준을 적용받고자 하는 경우에는 인증기관으로부터 예비인증을 받아야 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 16항 3호
Check(NFSC503A_8_16_3){
IF CS THEN KS
}
CS{
PressurizedWaterSupplySystem myPressurizedWaterSupplySystem{
isObjectProperty(PressurizedWaterSupplySystem.supplyType) = "PressurizedTank Type"
}
isInstalled(Pipe, myPressurizedWaterSupplySystem) = TRUE
OR isInstalled(Valve, myPressurizedWaterSupplySystem) = TRUE
}
KS{
Tank myTank {
isObjectProperty(Tank .operationType) = "PressurizedTank "
}
Valve myValve1{
isObjectProperty(Valve.isCheckValve) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isIndicatingValve) = TRUE
}
Valve myValve3{
isObjectProperty(Valve.isTestValve) = TRUE
getObjectCount(Valve) = 2
}
Pipe myPipe{
isObjectProperty(Pipe.isForTest) = TRUE
}
isInstalledInOrder(WaterSource, myTank , PressureGauge, myValve1, myPipe, myValve2, WaterflowIndicator, myValve3) = TRUE
}
Python Code 변환 예정
21
건축물의 에너지절약설계기준 제 19조 2 항
② 완화기준을 적용받은 건축주 또는 사업주체는 건축물의 사용승인 신청 이전에 본인증을 취득하여 사용승인 신청 시 허가권자에게 인증서 사본을 제출하여야 한다. 단, 본인증의 등급은 예비인증 등급 이상으로 취득하여야 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 16항 4호
Check(NFSC503A_8_16_4){
IF (!CS1 AND CS2) THEN KS
}
CS1{
getObjectVerticalLocation(WaterSource, Pump) > 0
}
CS2{
SimpleSprinklerSystem mySimpleSprinklerSystem{
isObjectProperty(SimpleSprinklerSystem.isCabinetType) = TRUE
}
isInstalled(Pipe, mySimpleSprinklerSystem.PressurizedWaterSupplySystem) = TRUE
OR isInstalled(Valve, mySimpleSprinklerSystem.PressurizedWaterSupplySystem) = TRUE
}
KS{
Tank myTank {
isObjectProperty(Tank .operationType) = "HydropneumaticTank "
}
Valve myValve1{
isObjectProperty(Valve.isCheckValve) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isIndicatingValve) = TRUE
}
Valve myValve3{
isObjectProperty(Valve.isTestValve) = TRUE
getObjectCount(Valve) = 2
}
isInstalledInOrder(WaterSource, CompoundGauge | VacuumGauge, Pump | myTank , PressureGauge, myValve1, myPipe, myValve2, myValve3) = TRUE
}
Python Code 변환 예정
22
건축법 제 49조 1 항
① 대통령령으로 정하는 용도 및 규모의 건축물과 그 대지에는 국토교통부령으로 정하는 바에 따라 복도, 계단, 출입구, 그 밖의 피난시설과 저수조(貯水槽), 대지 안의 피난과 소화에 필요한 통로를 설치하여야 한다. <개정 2013.3.23, 2018.4.17>
//건축법 49조 (건축물의 피난시설 및 용도제한 등) 1항
Check(BA_49_1){
IF CS THEN KS
}
CS{
getResult(EDBA_34_2)= TRUE
OR getResult(EDBA_35_1) = TRUE
OR getResuLt(EDBA_35_2) = TRUE
OR getResuLt(EDBA_35_3) = TRUE
OR getResuLt(EDBA_35_5) = TRUE
OR getResult (EDBA_38) = TRUE
OR getResuLt(EDBA_39_1) = TRUE
OR getResuLt(EDBA_39_2) = TRUE
}
KS{
Door myDoor{
isObjectProperty(Door.isEntrance)=TRUE
}
isExist(Corridor) = TRUE
isExist(Stair) = TRUE
isExist(myDoor) = TRUE
isExist(EvacuationFacility) = TRUE
isExist(FireHydrant) = TRUE
isExist(Tank ) = TRUE
isExist(ExtinguishingSystem)= TRUE
isExist(Passage)=True
getResult(REFB_11_1)= TRUE
getResult(REFB_11_2)= TRUE
getResult(REFB_11_3)= TRUE
getResult(REFB_11_4)= TRUE
getResult(REFB_11_5)= TRUE
}
Python Code 변환 예정
23
연결살수설비의 화재안전기준(NFSC 503) 제 5조 3 항
③폐쇄형헤드를 사용하는 연결살수설비의 주배관은 옥내소화전설비의 주배관(옥내소화전설비가 설치된 경우에 한한다) 및 수도배관(연결살수설비가 설치된 건축물 안에 설치된 수도배관 중 구경이 가장 큰 배관을 말한다) 또는 옥상에 설치된 수조(다른 설비의 수조를 포함한다)에 접속하여야 한다. 이 경우 연결살수설비의 주배관과 옥내소화전설비의 주배관·수도배관·옥상에 설치된 수조의 접속부분에는 체크밸브를 설치하되, 점검하기 쉽게 하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 3항
Check(NFSC503_5_3){
IF CS THEN KS
}
Head myHead{
isObjectProperty(Head.openAndCloseType) = "EnclosedType"
}
Pipe myPipe1{
isObjectProperty(Pipe.isRiser) = TRUE
isObjectProperty(myPipe.systemType) = "HookingUpSprinklerSystem"
}
CS{
isInstalled(myHead, myPipe1) = TRUE
}
KS{
Pipe myPipe2{
isObjectProperty(Pipe.isRiser) = TRUE
isObjectProperty(myPipe.systemType) = "IndoorFireHydrantSystem"
}
Tank myTank {
isInstalled(Tank , Rooftop) = TRUE
}
Pipe myPipe3{
Pipe.isForWater = TRUE
연결살수설비가 설치된 건축물 안에 설치된 수도배관 중 구경이 가장 큰 배관
}
Valve myValve{
isObjectProperty(Valve.isCheckValve) = TRUE
}
(isConnectedTo(myPipe1, myPipe2) = TRUE
isInstalled(myValve, myPipe1) = TRUE
isInstalled(myValve, myPipe2) = TRUE)
OR (isConnectedTo(myPipe1, myPipe3) = TRUE
isInstalled(myValve, myPipe1) = TRUE
isInstalled(myValve, myPipe3) = TRUE)
OR (isConnectedTo(myPipe1, myTank ) = TRUE
isInstalled(myValve, myPipe1) = TRUE
isInstalled(myValve, myTank ) = TRUE)
}
Python Code 변환 예정
24
옥내소화전설비의 화재안전기준(NFSC 102) 제 6조 5 항 2호
2. 수조가 펌프보다 낮게 설치된 경우에는 각 펌프(충압펌프를 포함한다)마다 수조로부터 별도로 설치할 것
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 5항 2호
Check(NFSC102_6_5_2){
IF CS THEN KS
}
CS{
getObjectVerticalLocation(Pump, Tank ) < 0
}
KS{
Pipe myPipe{
isInstalled(Pump.Inlet, Pipe) = TRUE
}
isInstalled(myPipe, Pump.One) = TRUE
}
Python Code 변환 예정