설계품질검토 대상법규   |   조항단위 법규   |   문장단위 법규   |   KBimCode-Assess 연동모듈   |   KBimCode DB   |   주어부 - 객체,속성 DB   |   서술부 - 함수 DB   |   관계부 - 문장관계   |   룰셋생성모듈   |  
(2025-06-28 기준) 설계품질검토용 건축법 및 관련법규 - KBIMCode (문장단위)
      KBIMCode - KBimAssess Python Code     KBIMCode - 체크리스트 단위     KBIMCode - 조항단위
    1      
1 / 1 page Total 2500 / 4000 records
Select
ALL
None
#
Law
Jo
JO Name
HANG
HO
MOK
Text
Search!
1
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 6 항 1호

1. 성능시험배관은 펌프의 토출측에 설치된 개폐밸브 이전에서 분기하여 설치하고, 유량측정장치를 기준으로 전단 직관부에 개폐밸브를 후단 직관부에는 유량조절밸브를 설치할 것





//	옥내소화전설비의 화재안전기준(NFSC 102) 6조 (배관 등) 8항 1호

Check(NFSC102_6_8_1){

	KS

}



KS{

	Pipe myPipe{

		isObjectProperty(Pipe.isForTest) = TRUE

	}



	Valve myValve{

		isObjectProperty(Valve.isShutoffValve) = TRUE

		isInstalled(Valve, Pump.Outlet) = TRUE

	}



	Valve myValve2{

		isObjectProperty(Valve.isShutoffValve) = TRUE

		isInstalled(Valve, Pump.Outlet) = FALSE

	}



	Valve myValve3{

		isObjectProperty(Valve.isFloatControlValve) = TRUE

	}



	isDiverged(Pump, myPipe) = TRUE

	getObjectDistance(StraightPipeLine, myPipe) < getObjectDistance(StraightPipeLine, myValve)



	isInstalled(myValve2, myPipe) = TRUE

	isInstalled(myValve3, myPipe) = TRUE

} 




Python Code 변환 예정



2
건축물의 에너지절약설계기준 제 5조 9호 가 목

가. "거실”이라 함은 건축물 안에서 거주(단위 세대 내 욕실·화장실·현관을 포함한다)·집무·작업·집회·오락 기타 이와 유사한 목적을 위하여 사용되는 방을 말하나, 특별히 이 기준에서는 거실이 아닌 냉·난방공간 또한 거실에 포함한다.





//  옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 9항
Check(NFSC503A_6_9){
	KS
}
KS{
	Valve myValve1{
	isObjectProperty(Valve.isCheckValve) = TRUE
	}
	PP = getObjectProperty(Pump.shutoffPressure)
	Valve myValve2{
	isObjectProperty(Valve.isReliefVavle) = TRUE
	isObjectProperty(Valve.reliefPressure) < PP
	}

	isInstalledInOrder(myValve1, Pipe, Pump) = TRUE
	isObjectProperty(Pipe.diameter) >= 20mm
	isInstalled(myValve2, Pipe) = TRUE
}
 




Python Code 변환 예정



3
건축물의 에너지절약설계기준 제 5조 9호 거 목

거. "투광부"라 함은 창, 문면적의 50% 이상이 투과체로 구성된 문, 유리블럭, 플라스틱패널 등과 같이 투과재료로 구성되며, 외기에 접하여 채광이 가능한 부위를 말한다.





//  옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 11항
Check(NFSC503A_6_11){
	IF CS THEN KS
}
	Pipe myPipe{
	isObjectProperty(Pipe.usage) = "WaterSupplyPipe"
	}
	Valve myValve1{
	isObjectProperty(Valve.isShutoffValve) = TRUE
	}
S{
	isInstalled(myValve1,myPipe) = TRUE
	isInstalled(myValve1,myPort) = FALSE
}
KS{
	isObjectProperty(myValve1.isIndicatingValve) = TRUE
	Valve myValve2{
	isInstalled(Valve, Pump.Inlet) = TRUE
	}
	isObjectProperty(myValve2.isIndicatingValve) = TRUE
	isObjectProperty(myValve2.isButterflyValve) = FALSE
 } 




Python Code 변환 예정



4
건축물의 에너지절약설계기준 제 5조 9호 너 목

너. "태양열취득률(SHGC)"이라 함은 입사된 태양열에 대하여 실내로 유입된 태양열취득의 비율을 말한다.





//  옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 13항 2호

Check(NFSC503A_6_13_2){

 IF !CS THEN KS 

}

CS{

	isShared(HookingUpSprinklerSystem.Pipe, SprinklerSystem.Pipe, WaterSprayExtingushingSystem.Pipe, FoamExtinguishingSystem.Pipe) = TRUE

	OR isShared(HookingUpSprinklerSystem.Pipe, FireDepartmentConnectionSystem.Pipe) = TRUE

}

KS{

	Port myPort{ 

	getObjectProperty(HookingUpSprinklerSystem.Port.typeForWater) = "FireDepartmentConnection" 

 	}

 	Pipe myPipe{

	isObjectProperty(Pipe.isRiser)=TRUE

	}

	Vavle myValve{

	isObjectProperty(Valve.isShutoffValve)= TRUE

	}

 	isConnectedTo(myPort, Pipe) = TRUE

 	isConnectedTo(Pipe, myPipe) = TRUE

  	isInstalled(myValve, myPipe) = FALSE

 } 




Python Code 변환 예정



5
건축물의 에너지절약설계기준 제 5조 9호 타 목

타. "야간단열장치”라 함은 창의 야간 열손실을 방지할 목적으로 설치하는 단열셔터, 단열덧문으로서 총열관류저항(열관류율의 역수)이 0.4㎡·K/W 이상인 것을 말한다.





//  스프링클러설비의 화재안전기준(nfsc 103) 4조 (수원) 5항 1호
Check(NFSC103_4_5_1){
	KS
}

Pump myPump{
	isInstalled(Pump, SprinklerSystem) = TRUE
}

Valve myValve{
	isObjectProperty(Valve.isFootValve) = TRUE
	isInstalled(Valve, myPump) = TRUE
}

Valve myValve2{
	isObjectProperty(Valve.isFootValve) = TRUE
	Valve != myValve
}

Pipe myPipe{
	isObjectProperty(Pipe.isObsorptionPipe) = TRUE
}

Obsorption myObsorptionOpening{
	isInstalled(ObsorptionOpening, myPipe) = TRUE
}

Obsorption myObsorptionOpening2{
	ObsorptionOpening != myObsorptionOpening
}

KS{
	getObjectVerticalLocation(myValve, myValve2) < 0
	OR getObjectVerticalLocation(myObsorptionOpening, myOpsorptionOpening2) < 0
} 




Python Code 변환 예정



6
건축물의 에너지절약설계기준 제 6조 1호 나 목

나. 단열조치를 하여야 하는 부위의 열관류율이 위치 또는 구조상의 특성에 의하여 일정하지 않는 경우에는 해당 부위의 평균 열관류율값을 면적가중 계산에 의하여 구한다.





//스프링클러설비의 화재안전기준(NFSC 103) 7조 (개방형스프링클러설비의 방수구역 및 일제개방밸브) 2호

Check(NFSC103_7_0_2){
     KS
}

KS{
 Zone myZone{
    isObjectProperty(Zone.isWaterProofingZone)=True
 }
 
Valve myValve{
    isObjectProperty(Valve.isDelugeValve)=True
}
  getObjectCount(myValve,myZone)>=1
} 




Python Code 변환 예정



7
건축물의 에너지절약설계기준 제 6조 1호 라 목

라. 별표1 건축물부위의 열관류율 산정을 위한 단열재의 열전도율 값은 한국산업규격 KS L 9016 보온재의 열전도율 측정방법에 따른 국가공인시험기관의 KOLAS 인정마크가 표시된 시험성적서에 의한 값을 사용하되 열전도율 시험을 위한 시료의 평균온도는 20±5℃로 한다.





// 스프링클러설비의 화재안전기준(NFSC 103) 9조 (음향장치 및 기동장치) 3항

Check(NFSC103_9_3){
	IF CS THEN KS
}
CS{
	getObjectProperty(WaterflowIndicator.type) = "PreactionWaterflowIndicator"
	OR isObjectProperty(Valve.isDelugeValve) = TRUE
}
KS{
	getResult(NFSC103_9_0_5) = TRUE
} 




Python Code 변환 예정



8
건축물의 에너지절약설계기준 제 7조 2호 나 목

나. 건축물의 체적에 대한 외피면적의 비 또는 연면적에 대한 외피면적의 비는 가능한 작게 한다.





//스프링클러설비의 화재안전기준(nfsc 103) 11조 (송수구) 2호

Check(NFSC103_11_0_2){
	IF CS THEN KS
}

CS{
	Port myPort{
	isObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
	}
	Pipe myPipe{
	isObjectProperty(Pipe.isRiser)=TRUE
	}
	Valve myValve{
	isObjectProperty(Valve.isShutoffValve)=TRUE
	}
	isConnectedTo(myPort,Pipe)=TRUE
	isConnectedTo(Pipe,myPipe)=TRUE
	isInstalled(Pipe, myValve) = TRUE
}
KS{
	Space mySpace{
	isObjectProperty(Space.usage) = "MachineRoom"
	}
	isExternal(myValve)=TRUE 
	OR hasSpace(mySpace,myValve)=TRUE 




Python Code 변환 예정



9
건축물의 에너지절약설계기준 제 9조 2호 가 목

가. 열원설비는 부분부하 및 전부하 운전효율이 좋은 것을 선정한다.





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 4조 (수원) 2항 1호



Check(NFSC503A_4_2_1){

	KS

}

KS{

	Valve myValve1{

	isObjectProperty(Valve.isFootValve) = TRUE

	isObjectProperty(Valve.systemType) = "SimpleSprinklerSystem"

	}

	Port myPort1{

	getObjectProperty(Port.typeForWater) = "Obsorption"

	isObjectProperty(Valve.systemType) = "SimpleSprinklerSystem"

	}

	Valve myValve2{

	isObjectProperty(Valve.isFootValve) = TRUE

	isObjectProperty(Valve.systemType) != "SimpleSprinklerSystem"

	}

	Port myPort2{

	getObjectProperty(Port.typeForWater) = "Obsorption"

	isObjectProperty(Valve.systemType) != "SimpleSprinklerSystem"

	}

	getObjectVerticalLocation(myValve1|myValve1, myValve2|myPort2) < 0

} 




Python Code 변환 예정



10
건축물의 에너지절약설계기준 제 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 변환 예정



11
건축물의 에너지절약설계기준 제 9조 4호

4. 반송설비





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (수원) 2항 4호



Check(NFSC503A_5_2_4){

	IF !CS THEN KS

}

CS{

	getObjectVerticalLocation(WaterSource, Pump) > 0

	OR isObjectProperty(Pump.isVerticalPump) = TRUE

}

KS{

	Valve myValve{

	isObjectProperty(Valve.isCheckValve) = TRUE

	}

	isInstalled(Pump.Outlet, myValve) = TRUE

	isInstalledInOrder(PressureGauge, myValve) = TRUE

} 




Python Code 변환 예정



12
건축물의 에너지절약설계기준 제 11조 1호 바 목

바. 건축물의 사용자가 합리적으로 전력을 절감할 수 있도록 층별 및 임대 구획별로 전력량계를 설치한다.





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 3항 2호

Check(NFSC503A_8_3_2){
	KS2 AND IF CS THEN KS1
}
KS2{
	Valve myValve{
	isObjectProperty(Valve.isShutoffValve)=TRUE
	}
	isObjectProperty(myValve.isIndicatingValve) = TRUE
}
CS{
	Pipe myPipe{
	isInstalled(Pipe, Pump.Inlet) = TRUE
	}
	isInstalled(myValve, myPipe) = TRUE
}
KS1{
	isObjectProperty(myValve.isIndicatingValve) = TRUE
	isObjectProperty(myValve.isButterflyValve) = TRUE
}
 




Python Code 변환 예정



13
건축물의 에너지절약설계기준 제 11조 3호 마 목

마. KS A 3011에 의한 작업면 표준조도를 확보하고 효율적인 조명설계에 의한 전력에너지를 절약한다.





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 7항



Check(NFSC503A_8_7){

	KS

}

KS{

	Valve myValve1{

	isObjectProperty(Valve.isCheckValve) = TRUE

	}

	PP = isObjectProperty(Pump.shutoffPressure)

	Valve myValve2{

	isObjectProperty(Valve.isReliefValve) = TRUE

	isObjectProperty(Valve.reliefPressure) < PP

	}



	isInstalledInOrder(myValve1, Pipe, Pump) = TRUE

	isObjectProperty(Pipe.diameter) >= 20mm

	isInstalled(myValve2, Pipe) = TRUE

} 




Python Code 변환 예정



14
건축물의 에너지절약설계기준 제 11조 5호

5. 사용하지 않는 기기에서 소비하는 대기전력을 저감하기 위해 도어폰, 홈게이트웨이 등은 대기전력저감 우수제품으로 등록된 제품을 사용한다.





11항 1호



Check(NFSC503A_8_11_1){

	KS

}

KS{

	Valve myValve{

	isObjectProperty(Valve.isIndicatingValve) = TRUE

	}
	Pipe myPipe{

	isObjectProperty(Pipe.isSecondaryPipe) = TRUE

	}
	isInstalled(myValve, myPipe) = TRUE

} 




Python Code 변환 예정



15
건축물의 에너지절약설계기준 제 12조

제12조(신·재생에너지 설비부문의 의무사항) 에너지절약계획서 제출대상 건축물에 신·재생에너지설비를 설치하는 경우 「신에너지 및 재생에너지 개발·이용·보급 촉진법」에 따른 산업통상자원부 고시 「신·재생에너지 설비의 지원 등에 관한 규정」을 따라야 한다.





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 11항 2호

Check(NFSC503A_8_11_2){
	IF CS THEN KS
}
CS{
	Valve myValve{
	isObjectProperty(Valve.isIndicatingValve) = TRUE
	}
	WaterflowIndicator myWaterflowIndicator{isObjectProperty(WaterflowIndicator.type) = "PreactionWaterflowIndicator"
	}
	isInstalledInOrder(myValve, Pipe, myWaterflowIndicator) = TRUE
}
KS{
	getResult(NFSC503A_8_11_2_가) = TRUE
	getResult(NFSC503A_8_11_2_나) = TRUE
} 




Python Code 변환 예정



16
건축물의 에너지절약설계기준 제 13조

제13조(에너지절약계획서 및 설계 검토서 작성) 에너지절약 설계 검토서는 별지 제1호 서식에 따라 에너지절약설계기준 의무사항 및 에너지성능지표, 에너지소요량 평가서로 구분된다. 에너지절약계획서를 제출하는 자는 에너지절약계획서 및 설계 검토서(에너지절약설계기준 의무사항 및 에너지성능지표, 에너지소요량 평가서)의 판정자료를 제시(전자문서로 제출하는 경우를 포함한다)하여야 한다. 다만, 자료를 제시할 수 없는 경우에는 부득이 당해 건축사 및 설계에 협력하는





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 11항 2호 가목

Check(NFSC503A_8_11_2_가){
	KS
}
KS{
	Pipe myPipe{
	isObjectProperty(Pipe.usage) = "WaterDrainPipe"
	isObjectProperty(Pipe.isRiser) = TRUE
	}
	Valve myValve{
	isObjectProperty(Valve.isShutoffValve) = TRUE
	}
	isConnectedTo(Pipe, myPipe) = TRUE
	isInstalled(myValve, Pipe) = TRUE
} 




Python Code 변환 예정



17
건축물의 에너지절약설계기준 제 18조 2 항

② 이미 건축허가를 받은 건축물의 건축주 또는 사업주체도 허가변경을 통하여 완화기준 적용 신청을 할 수 있다.





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 16항 1호 가복



Check(NFSC503A_8_16_1_가){

	KS

}

KS{

	ShutdownEquipment myShutdownEquipment{

	isObjectProperty(ShutdownEquipment.type) = "Water"

	}

	Valve myValve1{

	isObjectProperty(Valve.isIndicatingValve) = TRUE

	}

	Valve myValve2{

	isObjectProperty(Valve.isCheckValve) = TRUE

	}

	Valve myValve3{

	isObjectProperty(Valve.isTestValve) = TRUE

	getObjectCount(Valve) = 2

	}

	isInstalledInOrder(WaterGauge, myShutdownEquipment, myValve1, myValve2, PressureGauge, WaterflowIndicator, myValve3) = TRUE

} 




Python Code 변환 예정



18
건축물의 에너지절약설계기준 제 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 "PressurizedTankType"

	}

	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 변환 예정



19
건축물의 에너지절약설계기준 제 19조 1 항

제19조(인증의 취득) ① 신청인이 인증에 의해 완화기준을 적용받고자 하는 경우에는 인증기관으로부터 예비인증을 받아야 한다.





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 16항 3호



Check(NFSC503A_8_16_3){

	IF CS THEN KS

}

CS{

	PressurizedWaterSupplySystem myPressurizedWaterSupplySystem{

	isObjectProperty(PressurizedWaterSupplySystem.supplyType) = "PressurizedTankType"

	}

	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 변환 예정



20
건축물의 에너지절약설계기준 제 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 변환 예정



21
소화기구 및 자동소화장치의 화재안전기준(NFSC 101) 제 4조 7호 다 목

다. 가스차단장치는 주방배관의 개폐밸브로부터 2m 이하의 위치에 설치하되, 상시 확인 및 점검이 가능하도록 설치할 것<개정 2012.6.11>





//소화기구 및 자동 소화장치의 화재안전기준(nfsc 101) 4조 (설치기준) 1항 7호 다목
Check(NFSC101_4_1_7_다){
	KS
}
KS{
	ShutdownEquipment myShutdownEquipment{
	isObjectProperty(ShutdownEquipment.type)="GAS"
	}
	Space mySpace{
	isObjectProperty(Space.usage) = "Kitchen"
	}
	Pipe myPipe{
	isInstalled(Pipe, mySpace) = TRUE
	}
	Valve myValve{
	isObjectProperty(Valve.isShutoffValve) = TRUE
	isInstalled(Valve, myPipe) = TRUE
	}
	isElementDistance(myShutdownEquipment, myValve) <= 2m
} 




Python Code 변환 예정



22
연결살수설비의 화재안전기준(NFSC 503) 제 4조 1 항 3호

3. 개방형헤드를 사용하는 송수구의 호스접결구는 각 송수구역마다 설치할 것. 다만, 송수구역을 선택할 수 있는 선택밸브가 설치되어 있고 각 송수구역의 주요구조부가 내화구조로 되어 있는 경우에는 그러하지 아니하다.





//  연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 1항 3호



Check(NFSC503_4_1_3){

 IF !CS THEN KS 

}

	Zone myZone{

  isObjectProperty(Zone.isWaterSupplyZone)=TRUE

	}

CS{

	Valve myValve{

	isObjectProerpty(Valve.isSelectionValve) = TRUE

	}

	isInstalled(myValve) = TRUE

	hasObject(myZone,MainStructuralPart) = TRUE

	isFireResistantStructure(MainStructuralPart) = TRUE

}

KS{

	 Port myPort{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
 getObjectProperty(Port.typeForWater) = "FireDepartmentConnection" 

 }

	Head myHead{

	getObjectProperty(Head.openAndCloseType) = "OpenType"

	}

	isInstalled(myPort.호스접결구, myZone.One) = TRUE

} 




Python Code 변환 예정



23
연결살수설비의 화재안전기준(NFSC 503) 제 4조 1 항 5호

5. 송수구로부터 주배관에 이르는 연결배관에는 개폐밸브를 설치하지 아니 할 것. 다만, 스프링클러설비·물분무소화설비·포소화설비 또는 연결송수관설비의 배관과 겸용하는 경우에는 그러하지 아니하다.





//  연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 1항 5호



Check(NFSC503_4_1_5){

 IF !CS THEN KS 

}

CS{
Pipe myPipe1{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
}
Pipe myPipe2{
getObjectProperty(Port.systemType) = "SprinklerSystem"
}
Pipe myPipe3{
getObjectProperty(Port.systemType) = "WaterSprayExtingushingSystem"
}
Pipe myPipe4{
getObjectProperty(Port.systemType) = "FoamExtinguishingSystem"
}
Pipe myPipe5{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
}
Pipe myPipe6{
getObjectProperty(Port.systemType) = "FireDepartmentConnectionSystem"
}
	isShared(myPipe1, myPipe2, myPipe3, myPipe4) = TRUE

	OR isShared(myPipe5, myPipe6) = TRUE

}

KS{

	Port myPort{ 
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
	getObjectProperty(Port.typeForWater) = "FireDepartmentConnection" 

 	}

 	Pipe myPipe{

	isObjectProperty(Pipe.isRiser)=TRUE

	}

	Vavle myValve{

	isObjectProperty(Valve.isShutoffValve)= TRUE

	}

 	isConnectedTo(myPort, Pipe) = TRUE

 	isConnectedTo(Pipe, myPipe) = TRUE

  	isInstalled(myValve, myPipe) = FALSE

 } 




Python Code 변환 예정



24
연결살수설비의 화재안전기준(NFSC 503) 제 4조 3 항

③ 연결살수설비에는 송수구의 가까운 부분에 자동배수밸브와 체크밸브를 다음 각 목의 기준에 따라 설치하여야 한다. <개정 2012.8.20>





//  연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 3항



Check(NFSC503_4_3){

 KS 

}

KS{

	Valve myValve1{

	isObjectProperty(Valve.isAutomiaticDeliveryValve) = TRUE

	}

	Valve myValve2{

	isObjectProperty(Valve.isCheckValve) = TRUE

	}



	isInstalled(myValve1, HookingUpSprinklerSystem) = TRUE

	isInstalled(myValve2, HookingUpSprinklerSystem) = TRUE

	getResult(NFSC503_4_3_1) = TRUE

	getResult(NFSC503_4_3_2) = TRUE 




Python Code 변환 예정



25
연결살수설비의 화재안전기준(NFSC 503) 제 4조 3 항 1호

1. 폐쇄형헤드를 사용하는 설비의 경우에는 송수구·자동배수밸브·체크밸브의 순으로 설치할 것





//  연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 3항 1호



Check(NFSC503_4_3_1){

	IF CS THEN KS

}

CS{

	Head myHead{

	getObjectProperty(Head.openAndCloseType) = "EnclosedType"	

	}

	getObjectProperty(myHead.systemType) = "HookingUpSprinklerSystem"

}

KS{

	Port myPort{ 
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
	getObjectProperty(Port.typeForWater) = "FireDepartmentConnection" 

 	}

 	Valve myValve1{

	isObjectProperty(Valve.isAutomiaticDeliveryValve) = TRUE

	}

	Valve myValve2{

	isObjectProperty(Valve.isCheckValve) = TRUE

	}



	isInstalledInOrder(myPort, myValve1, myValve2) = TRUE

} 




Python Code 변환 예정



26
연결살수설비의 화재안전기준(NFSC 503) 제 4조 3 항 2호

2. 개방형헤드를 사용하는 설비의 경우에는 송수구·자동배수밸브의 순으로 설치할 것





//  연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 3항 2호



Check(NFSC503_4_3_2){

	IF CS THEN KS

}

CS{

	Head myHead{

	getObjectProperty(Head.openAndCloseType) = "OpenType"	

	}

	getObjectProperty(myHead.systemType) = "HookingUpSprinklerSystem"

}

KS{

	Port myPort{ 
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
	getObjectProperty(Port.typeForWater) = "FireDepartmentConnection" 

 	}

 	Valve myValve1{

	isObjectProperty(Valve.isAutomiaticDeliveryValve) = TRUE

	}



	isInstalledInOrder(myPort, myValve1) = TRUE

} 




Python Code 변환 예정



27
연결살수설비의 화재안전기준(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 변환 예정



28
연결살수설비의 화재안전기준(NFSC 503) 제 5조 8 항

⑧급수배관에 설치되어 급수를 차단할 수 있는 개폐밸브는 개폐표시형으로 하여야 한다. 이 경우 펌프의 흡입측배관에는 버터플라이밸브(볼형식의 것을 제외한다)외의 개폐표시형밸브를 설치하여야 한다.





//  연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 8항

Check(NFSC503_5_6){
	IF CS THEN KS
}
	Pipe myPipe{
	isObjectProperty(Pipe.usage) = "WaterSupplyPipe"
	}
	Valve myValve1{
	isObjectProperty(Valve.isShutoffValve) = TRUE
	}
CS{
	isInstalled(myValve1,myPipe) = TRUE
}
KS{
	isObjectProperty(myValve1.isIndicatingValve) = TRUE
	Valve myValve2{
	isInstalled(Valve, Pump.Inlet) = TRUE
	}
	isObjectProperty(myValve2.isIndicatingValve) = TRUE
	isObjectProperty(myValve2.isButterflyValve) = FALSE
 } 




Python Code 변환 예정



29
연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항 2호

2. 폐쇄형헤드를 사용하는 연결살수설비의 청소구는 주배관 또는 교차배관(교차배관을 설치하는 경우에 한한다) 끝에 40㎜ 이상 크기의 개폐밸브를 설치하고, 호스접결이 가능한 나사식 또는 고정배수 배관식으로 할 것. 이 경우 나사식의 개폐밸브는 옥내소화전 호스접결용의 것으로 하고, 나사보호용의 캡으로 마감하여야 한다.





 //  연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항 2호

Check(NFSC503_5_9_2){
	IF CS THEN KS
}
CS{
	Head myHead{
	isObjectProperty(Head.openAndCloseType)="EnclosedType"
	}
	isObjectProperty(myHead.systemType) = "HookingUpSprinklerSystem"
}
KS{
	Pipe myPipe1{
	isObjectProperty(Pipe.isRiser) = TRUE
	}
	Pipe myPipe2{
	isObjectProperty(Pipe.isCrossMains) = TRUE
	}
	Valve myValve{
	isObjectProperty(Valve.isShutoffValve) = TRUE
	getObjectLength(Valve) >= 40mm
	}
	getObjectProperty(myValve.Type) = "나사식" 
	getObjectProperty(myValve.usage) = "옥내소화전 호스접결용"
} 




Python Code 변환 예정



30
연결송수관설비의 화재안전기준(NFSC 502) 제 4조 4호

4. 송수구로부터 연결송수관설비의 주배관에 이르는 연결배관에 개폐밸브를 설치한 때에는 그 개폐상태를 쉽게 확인 및 조작할 수 있는 옥외 또는 기계실 등의 장소에 설치할 것. 이 경우 개폐밸브에는 그 밸브의 개폐상태를 감시제어반에서 확인할 수 있도록 급수개폐밸브 작동표시 스위치를 다음 각 목의 기준에 따라 설치하여야 한다. <개정 2014.8.18>





//연결송수관설비의 화재안전기준(NFSC 502) 4조 (송수구) 4호



Check(NFSC502_4_0_4){

      IF CS THEN KS 

}



CS{

    Pipe  myPipe1{
Pipe.systemType = "FireDepartmentConnectionSystem"
Pipe.isRiser = TRUE
}

    Pipe  myPipe2{

         isConnectedTo(FireDepartmentConnection, Pipe)=True

         isConnectedTo(myPipe1, Pipe)=True

    }

  

   Valve myValve{

     isObjectProperty(Valve.isShutoffValve)=True  

   }





    hasObject(myConnectionPipe, myValve)=True

}



KS{

    isExternal(myValve)=True

    OR (hasObject(Space, myValve)=True   
getSpaceUsage(Space) = "MachinRoom"


} 




Python Code 변환 예정



31
연결송수관설비의 화재안전기준(NFSC 502) 제 4조 7호

7. 송수구는 연결송수관의 수직배관마다 1개 이상을 설치할 것. 다만, 하나의 건축물에 설치된 각 수직배관이 중간에 개폐밸브가 설치되지 아니한 배관으로 상호 연결되어 있는 경우에는 건축물마다 1개씩 설치할 수 있다.





//연결송수관설비의 화재안전기준(NFSC 502) 4조 (송수구) 7호



Check(NFSC502_4_0_7){

    IF CS THEN KS1 ELSE KS2

}



CS{
Port myPort{
Port.typeForWater = "FireDepartmentConnection"
}

    Pipe myPipe{
Pipe.systemType = "FireDepartmentConnectionSystem"
         isObjectProperty(Pipe.isRiser)=True

   }



   Pipe myPipe2{

       isInstalled( myValve, Pipe)=False

   }

   

   Valve myValve{

      isObjectProperty(Valve.isShutOffValve)=True

   }



   

   isConnectedTo(myPipe, myPipe2)=True

}



KS1{

    isInstalled(myPort)=True

}



KS2{

    getObjectCount(myPort,myPipe )>=1

} 




Python Code 변환 예정



32
연소방지설비의 화재안전기준(NFSC 506) 제 4조 3 항

③급수배관에 설치되어 급수를 차단할 수 있는 개폐밸브는 개폐표시형으로 하여야 한다.





//연소방지설비의 화재안전 기준(nfsc 506) 4조 (배관) 3항
Check(NFSC506_4_3){
	KS
}

KS{
	FeedWaterShutoffValve myFeedWaterShutoffValve{
		isObjectProperty(FeedWaterShutoffValve.isIndicatingValve) = TRUE
	}
	
	Pipe myPipe{
		isObjectProperty(Pipe.usage) = "WaterSupplyPipe"
	}

	hasObject(myPipe, myFeedWaterShutoffValve) = TRUE
} 




Python Code 변환 예정



33
연소방지설비의 화재안전기준(NFSC 506) 제 6조 6호

6. 송수구로부터 주배관에 이르는 연결배관에는 개폐밸브를 설치하지 아니할 것





//	연소방지설비의 화재안전기준(nfsc 506) 6조 (송수구) 6호
Check(NFSC506_6_0_6){
	KS
}

KS{
	Port myPort{
		getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
	}

	Pipe myPipe2{
		isObjectProperty(Pipe.isRiser) = TRUE
	}


	Pipe myPipe{
		isConnectedTo(Pipe, myPort) = TRUE
		isConnectedTo(Pipe, myPipe2) = TRUE
	}

	Valve myValve{
		isObjectProperty(Valve.isShutoffValve) = TRUE
	}

	isInstalled(myValve, myPipe) = FALSE
} 




Python Code 변환 예정



34
옥내소화전설비의 화재안전기준(NFSC 102) 제 6조 8 항 1호

1. 성능시험배관은 펌프의 토출측에 설치된 개폐밸브 이전에서 분기하여 설치하고, 유량측정장치를 기준으로 전단 직관부에 개폐밸브를 후단 직관부에는 유량조절밸브를 설치할 것





//	옥내소화전설비의 화재안전기준(NFSC 102) 6조 (배관 등) 8항 1호
Check(NFSC102_6_8_1){
	KS
}

KS{
	Pipe myPipe{
		isObjectProperty(Pipe.isForPerformanceTest) = TRUE
	}

	Valve myValve{
		isObjectProperty(Valve.isShutoffValve) = TRUE
		isInstalled(Valve, Pump.Outlet) = TRUE
	}

	Valve myValve2{
		isObjectProperty(Valve.isShutoffValve) = TRUE
		isInstalled(Valve, Pump.Outlet) = FALSE
	}

	Valve myValve3{
		isObjectProperty(Valve.isFloatControlValve) = TRUE
	}

	isDiverged(Pump, myPipe) = TRUE
	getObjectDistance(Pump.StartPart, myPipe) < getObjectDistance(Pump.StartPart, myValve)

	isInstalled(myValve2, myPipe) = TRUE
	isInstalled(myValve3, myPipe) = TRUE
} 




Python Code 변환 예정



    1