Ministry of Land, Infrasrtucture and Transport | Korea Agency for Infrastructure Technology Advancement | Space and Design IT Lab | Hanyang University
Open BIM based Technological Environment for Building Design Quality Enhancement
1-2. 설계품질검증 자동화를 위한 각종 법규 및 제기준의 체계화된 논리규칙 데이터베이스 구축 - 건축물 설계품질 혁신을 위한 개방형 BIM 기술 환경 구축 | 국토교통부
  Home Welcome to BIM Project Website - Hanyang University
PAGE MENU   MainPage
전체법규 - 법규데이터베이스
- 대한민국 전체 법규 목록
- 설계품질검토 대상 관련법규
대상법규 - 문장 논리규칙체계화
- 조항단위 논리규칙체계
- 문장단위 논리규칙체계
주어부 - 객체.속성 데이터베이스
- 법규로부터의 객체.속성 분류
- 명칭DB: 객체 | 객체및속성
서술부 - 함수 데이터베이스
- 논리규칙화 함수 분류
- 논리규칙화 함수 DB
관계부 - 문장 내.외 관계논리
- 문장 내.외 관계유형분류
- 법규조항관계도:
1차년도 | 2차년도 | 3차년도
- 문장 내.외관계 논리체계화
문장단위 | 체크리스트 단위
KBIMCode 데이터베이스
- KBIMCode Lang. Definition
- KBIMCode Editor
- KBimCode Database:
문장단위 | 조항단위
- KBimLogic Applications
 
     HOME
설계품질검토용 건축법 및 관련법규 - KBIMCode (문장단위)
    1      
1 / 1 page Total 1,131/ 1,131 records    신규입력 엑셀저장
Select
ALL
None
#
ID
Law
Jo
JO Name
HANG
HO
MOK
Text
Search!
1
1389 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 10조 2 항 1호

1. 관람석별로 2개소 이상 설치할 것





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 10조 (관람석등으로부터의 출구의 설치기준) 2항 1호

check(REFB_10_2_1){

    Door myExit {

        Door.Space.name = "individualSeats"

        getFloorArea(Door.Space) >= 300

        isObjectProperty(Door.isEntrance) = TRUE

    }



    getObjectCount(myExit) >= 2

} 














Modify
2
1394 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 11조 3 항

③영 제39조제1항의 규정에 의하여 건축물의 바깥쪽으로 나가는 출구를 설치하는 경우 관람석의 바닥면적의 합계가 300제곱미터 이상인 집회장 또는 공연장에 있어서는 주된 출구외에 보조출구 또는 비상구를 2개소 이상 설치하여야 한다.





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 11조 (건축물의 바깥쪽으로의 출구의 설치기준) 3항

Check(REFB_11_3){
     

IF CS1 AND CS2 THEN KS


}





CS1 {

Building myBuilding{

getBuildingUsage() = “AssemblyHall”

OR getBuildingUsage() = “PerformanceHall”

}



Space mySpace{

myBuilding.Space.name = “Auditorium”

Space.FloorSlab.area >= 300 m2

}



isExist(mySpace) = TRUE

}



CS2 {

Door myDoor{

isObjectProperty(Door.isEntrance)=TRUE

}

hasObject(myBuilding,myDoor) = TRUE

}



KS {

Door myDoor{

getObjectProperty(Door.functionType) = "Auxiliary"

OR getObjectProperty(Door.functionType) = "Emergency" 

}



getObjectCount(myDoor) >=2

} 














Modify
3
1458 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 15조 1 항 1호

1. 높이가 3미터를 넘는 계단에는 높이 3미터이내마다 너비 1.2미터 이상의 계단참을 설치할 것





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 1항1호
check(REFB_15_1_1){
     IF CS THEN KS
}

CS{
     getObjectHeight(Stair)>3 m
}

KS{
     isExist(StairLanding )= TRUE
     getPaceWidth(StairLanding>=1.2 m
     getObjectCount(StairLanding)>=getObjectCount(getObjectCount(StairLanding))/3
     IF getObjectCount(StairLanding)>1
          THEN   getObjectVerticalDistance(StairLanding ,StairLanding)>3 m   
     END IF 
} 














Modify
4
1460 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 15조 1 항 3호

3. 너비가 3미터를 넘는 계단에는 계단의 중간에 너비 3미터 이내마다 난간을 설치할 것. 다만, 계단의 단높이가 15센티미터 이하이고, 계단의 단너비가 30센티미터 이상인 경우에는 그러하지 아니하다.





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 1항3호
check(REFB_15_1_3){
     IF !CS THEN KS
}

CS{
      getStairStepHeight()<=15 cm
      getStairStepWidth()>=30 cm
}

KS{
   IF   getObjectWidth(Stair)>=3 m
       
       THEN  hasObject(Stair, Railing) = TRUE
             N=getObjectWidth(Stair)/3
             getObjectCount(Railing)>=N
            IF N>1
                 THEN getObjectDistance(Railing,Railing)<3 m
            END IF
   END IF 
}
 














Modify
5
1491 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 15조의2조 3 항 2호

2. 하나의 층에 개별 관람석(바닥면적이 300제곱미터 미만인 경우에 한한다)을 2개소 이상 연속하여 설치하는 경우에는 그 관람석의 바깥쪽의 앞쪽과 뒤쪽에 각각 복도를 설치할 것





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조의2 (복도의 너비 및 설치기준) 3항2호



Check(REFB_15-2_3_2){

  IF CS THEN KS

}







CS{

    Space mySpace{

       getSpaceUsage(Space)="IndividualAuditorium"

    }



    getFloorArea(mySpace)>300 m2

    getObjectCount(Floor.One.mySpace)>=2 



}



KS{



} 














Modify
6
1553 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 25조 1 항 1호

1. 거실의 바닥면적이 50제곱미터 이상인 층에는 직통계단외에 피난층 또는 지상으로 통하는 비상탈출구 및 환기통을 설치할 것. 다만, 직통계단이 2개소 이상 설치되어 있는 경우에는 그러하지 아니하다.





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 25조 (지하층의 구조) 1항 1호

check(REFB_25_1_1){

	IF !(CS) THEN KS

}



KS{

	Floor myFloor1{

		hasSpace(Floor,Room) = TRUE

		getTotalArea(Room) >= 50 m2

	}



	Floor myFloor2{

		isObjectProperty(Floor.isEscape) = TRUE

	}



	Door myDoor{

		isObjectProperty(Door.functionType) = "Emergency"

		(isDirectlyAccessible(Door, myFloor2) = TRUE

		OR isDirectlyAccessible(Door, Ground) = TRUE)

	}

	

	hasSpace(myFloor1, myDoor)

	OR (hasSpace(myFloor1, VentilatorPipe) = TRUE

	(isDirectlyAccessible(VentilatorPipe, myFloor2) = TRUE

	OR isDirectlyAccessible(VentilatorPipe, Ground) = TRUE))

}



CS{

	Floor myFloor1{

		hasSpace(Floor,Room) = TRUE

		getTotalArea(Room) >= 50 m2

	}



	Stair myStair{

		isObjectProperty(Stair.isDirect) = TRUE

		hasSpace(myFloor1, Stair) = TRUE

	}



	getObjectCount(myStair) >= 2

} 














Modify
7
1554 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 25조 1 항 1의2호

1의2. 제2종근린생활시설 중 공연장ㆍ단란주점ㆍ당구장ㆍ노래연습장, 문화 및 집회시설중 예식장ㆍ공연장, 수련시설 중 생활권수련시설ㆍ자연권수련시설, 숙박시설중 여관ㆍ여인숙, 위락시설중 단란주점ㆍ유흥주점 또는 「다중이용업소의 안전관리에 관한 특별법 시행령」 제2조에 따른 다중이용업의 용도에 쓰이는 층으로서 그 층의 거실의 바닥면적의 합계가 50제곱미터 이상인 건축물에는 직통계단을 2개소 이상 설치할 것





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 25조 (지하층의 구조) 1항 1의2호
check(REFB_25_1_1-2){
	IF CS THEN KS
}

CS{
	(getBuildingUsage() = "ClassIINeighborhoodLivingFacility.PerformanceHall"
	OR getBuildingUsage() = "ClassIINeighborhoodLivingFacility.Pubs"
	OR getBuildingUsage() = "ClassIINeighborhoodLivingFacility.BilliardRoom"
	OR getBuildingUsage() = "ClassIINeighborhoodLivingFacility.Karaoke"
	OR getBuildingUsage() = "CulturalAndAssemblyFacility.WeddingHall"
	OR getBuildingUsage() = "CulturalAndAssemblyFacility.PerformanceHall"
	OR getBuildingUsage() = "TrainingFacility.TrainingFacilityInLivingZone"
	OR getBuildingUsage() = "TrainingFacility.??LivingZone"
	OR getBuildingUsage() = "LodgingFacility.Inn"
	OR getBuildingUsage() = "AmusementFacility.Pubs"
	OR getBuildingUsage() = "AmusementFacility.Tavern"
	OR getResult(ERSASP_2) = TRUE)

	getTotalFloorArea(Room) >= 50 m2
}

KS{
	Stair myStair{
		isObjectProperty(Stair.isDirect) = TRUE
	}

	getObjectCount(myStair) >= 2
} 














Modify
8
1557 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 25조 1 항 4호

4. 지하층의 바닥면적이 300제곱미터 이상인 층에는 식수공급을 위한 급수전을 1개소이상 설치할 것





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 25조 (지하층의 구조) 1항 4호

check(REFB_25_1_4){

Floor myFloor{
Floor.number < 0
}
	getTotalFloorArea(myFloor) >= 300 m2

	getObjectCount(Hydrant) >= 1

} 














Modify
9
1585 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 30조 1호 마 목

마. 승강장의 바닥면적은 피난용승강기 1대에 대하여 6제곱미터 이상으로 할 것





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 30조 (피난용승강기의 설치기준) 1호 마목

Check(REFB_30_0_1_마){
      KS
}

KS{
     
        EC= getObjectCount(myElevator)  
        getFloorArea(myElevator.Platform)>=6*EC m2
} 














Modify
10
2681 건축법 시행령 제 34조 2 항

② 법 제49조제1항에 따라 피난층 외의 층이 다음 각 호의 어느 하나에 해당하는 용도 및 규모의 건축물에는 국토교통부령으로 정하는 기준에 따라 피난층 또는 지상으로 통하는 직통계단을 2개소 이상 설치하여야 한다. <개정 2009.7.16., 2013.3.23., 2014.3.24.>





//건축법 시행령 34조 (직통계단의 설치) 2항

Check(EDBA_34_2){

   IF (CS1 AND CS2) THEN KS

}



CS1{

	isObjectProperty(Floor.isEscape) = FALSE

}



CS2{

	getResult(EDBA_34_2_1)=TRUE

   	OR getResult(EDBA_34_2_2)=TRUE

   	OR getResult(EDBA_34_2_3)=TRUE  

   	OR getResult(EDBA_34_2_4)=TRUE

   	OR getResult(EDBA_34_2_5)=TRUE

}



KS{

        Floor myFloor{

        isObjectProperty(Floor.isEscape)=TRUE

        }



   	Stair myStair{

      		isObjectProperty(Stair.isDirect) = TRUE

      		isAccessible(myFloor, Stair)= TRUE

      		OR isAccessible(Ground,Stair) = TRUE

   	}



   	getObjectCount(myStair)>2 

   	getResult(REFB_8_1) = True

} 














Modify
11
2687 건축법 시행령 제 34조 3 항

③ 초고층 건축물에는 피난층 또는 지상으로 통하는 직통계단과 직접 연결되는 피난안전구역(건축물의 피난ㆍ안전을 위하여 건축물 중간층에 설치하는 대피공간을 말한다. 이하 같다)을 지상층으로부터 최대 30개 층마다 1개소 이상 설치하여야 한다. <신설 2009.7.16., 2011.12.30.>





// 건축법 시행령 제 34조 (직통계단의 설치) 3항

check(EDBA_34_3){

		IF CS THEN KS ENDIF

}



CS{

isObjectProperty(Building.isHighriseBuilding) = TRUE

}

KS{

		Stair myStair{

				isObjectProperty(Stair.isDirect) = TRUE			

		}

		Zone myZone{

				isObjectProperty(Zone.isEgressSafetyZone) = TRUE

		}

		Floor myFloor{

				isObjectProperty(Floor.isEscape) = TRUE

		}

isGoThrough(myFloor, myZone, myStair) = TRUE

		OR isGoThrough(myFloor, Ground, myStair) = TRUE



		getObjectCount(myZone) >= getBuildingStoriesCount()/30

} 














Modify
12
2697 건축법 시행령 제 35조 5 항

⑤ 건축물의 5층 이상인 층으로서 문화 및 집회시설 중 전시장 또는 동ㆍ식물원, 판매시설, 운수시설(여객용 시설만 해당한다), 운동시설, 위락시설, 관광휴게시설(다중이 이용하는 시설만 해당한다) 또는 수련시설 중 생활권 수련시설의 용도로 쓰는 층에는 제34조에 따른 직통계단 외에 그 층의 해당 용도로 쓰는 바닥면적의 합계가 2천 제곱미터를 넘는 경우에는 그 넘는 2천 제곱미터 이내마다 1개소의 피난계단 또는 특별피난계단(4층 이하의 층에는 쓰지 아니하는 피난계단 또는 특별피난계단만 해당한다)을 설치하여야 한다. <개정 2008.10.29., 2009.7.16.>





//건축법 시행령 35조 (피난계단의 설치) 5항
check(EDBA_35_5){
	IF (CS) THEN KS
}

CS{
	Floor myFloor{
		Floor.number >= 5
		OR Floor.usage = "CulturalAndAssemblyFacility.ExhibitionHall"
		OR Floor.usage = "CulturalAndAssemblyFacility.ZoologicalAndBotanicalGarden"
		OR Floor.usage = "CommercialFacility"
		OR Floor.usage = "PassengerTrafficFacilities“??
		OR Floor.usage = "SportsFacility"
		OR Floor.usage = "AmusementFacility"
		OR Floor.usage = "FacilityForTourismAndRelaxation“???
		OR Floor.usage = "Trainingfacility.TrainingFacilityInLivingZone“
	}

	isExist(myFloor)=True           
}

KS{	
	Stair myStair2{
		isObjectProperty(Stair.isSpecialEscape) = True
		OR isObjectProperty(Stair.isEscape) = True
	}

	getResult(EDBA_34) = TRUE

	IF (getTotalFloorArea(myFloor.Space) >= 2000m2) 		
		THEN getObjectCount(myStair2) >= 1+ getFloorArea(myFloor.Space)/2000
}
 














Modify
13
2994 건축법 시행령 제 90조 1 항 2호

2. 높이 31미터를 넘는 각 층의 바닥면적 중 최대 바닥면적이 1천500제곱미터를 넘는 건축물: 1대에 1천500제곱미터를 넘는 3천 제곱미터 이내마다 1대씩 더한 대수 이상





//건축법 시행령 90조 (비상용 승강기의 설치) 1항2호
Check(EDBA_1_2){
   IF CS THEN KS
}

 Floor myFloor{
     getObjectHeight(Floor)>31 m
  }

CS{
   getFloorArea(myFloor)>1500 m2
}

KS{
   FA=getFloorArea(myFloor) //FA means floor area
   IF FA>=4500 m2
      THEN   {(FA-1500)/3000}+1 < getObjectCount(EmergencyElevator)
             getObjectCount(EmergencyElevator) < {(FA-1500)/3000}+2
   END IF 
  
  

} 














Modify
14
2995 건축법 시행령 제 90조 2 항

② 제1항에 따라 2대 이상의 비상용 승강기를 설치하는 경우에는 화재가 났을 때 소화에 지장이 없도록 일정한 간격을 두고 설치하여야 한다.





//건축법 시행령 90조 (비상용 승강기의 설치) 2항

Check(EDBA_90_2){
     KS
}

KS{
     getObjectCount(Elevator.isEmergency) >= 2
}

 














Modify
15
9325 연결살수설비의 화재안전기준(nfsc 503) 제 4조 1 항 2호

2. 송수구는 구경 65㎜의 쌍구형으로 설치할 것. 다만, 하나의 송수구역에 부착하는 살수헤드의 수가 10개 이하인 것은 단구형의 것으로 할 수 있다.





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



Check(NFSC503_4_1_2){

 IF CS THEN KS 

}

CS{

 Zone myZone{

  isObjectProperty(Zone.isWaterSupplyZone)=TRUE

 }

 hasObject(myZone.One,HookingUpSprinklerSystem.Head.)=TRUE

 getObjectCount(HookingUpSprinklerSystem.Head.) <= 10  

}

KS{

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

 }

 isObjectProperty(myPort.diameter) = 65mm

 getObjectProperty(myPort.shapeType) = "DoubleType"

} 














Modify
16
9339 연결살수설비의 화재안전기준(nfsc 503) 제 4조 4 항

④개방형헤드를 사용하는 연결살수설비에 있어서 하나의 송수구역에 설치하는 살수헤드의 수는 10개 이하가 되도록 하여야 한다.





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

Check(NFSC503_4_4){
	IF CS THEN KS
}
CS{
	Head myHead{
	getObjectProperty(Head.openAndCloseType) = "OpenType"	
	}
	getObjectProperty(myHead.systemType) = "HookingUpSprinklerSystem"
}
KS{
	Zone myZone{
	isObjectProperty(Zone.isWaterSupplyZone) = TRUE
	}
	Head myHead{
	isInstalled(HookingUpSprinklerSystem.Head, myZone.One) = TRUE
	}

	getObjectCount(myHead) <= 10
} 














Modify
17
9345 연결살수설비의 화재안전기준(nfsc 503) 제 5조 2 항 1호

1. 연결살수설비 전용헤드를 사용하는 경우에는 다음 표에 따른 구경 이상으로 할 것





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



Check(NFSC503_5_2_1){

	IF CS THEN KS

}

CS{

getObjectProperty(Head.systemType) = "HookingUpSprinklerSystem"
	isObjectProperty(Head.isShared) = FALSE 

}

KS{

	Head myHead{

	isInstalled(Head., Pipe.One) = TRUE

	}

	NH = getObjectCount(myHead)



	IF NH = 1 THEN getObjectDiameter(Pipe) >= 32mm

	ELSE IF NH = 2 THEN getObjectDiameter(Pipe) >= 40mm

	ELSE IF NH = 3 THEN getObjectDiameter(Pipe) >= 50mm

	ELSE IF NH = 4 OR NH = 5 THEN getObjectDiameter(Pipe) >= 65mm

	ELSE IF NH >= 6 AND HN <= 10 THEN getObjectDiameter(Pipe) >= 80mm

} 














Modify
18
9346 연결살수설비의 화재안전기준(nfsc 503) 제 5조 2 항 1호

(표)





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



Check(NFSC503_5_2_1){

	IF CS THEN KS

}

CS{
getObjectProperty(Head.systemType) = "HookingUpSprinklerSystem"
	isObjectProperty(Head.isShared) = FALSE 

}

KS{

	Head myHead{

	isInstalled(HookingUpSprinklerSystem.Head., Pipe.One) = TRUE

	}

	NH = getObjectCount(myHead)



	IF NH = 1 THEN getObjectDiameter(Pipe) >= 32mm

	ELSE IF NH = 2 THEN getObjectDiameter(Pipe) >= 40mm

	ELSE IF NH = 3 THEN getObjectDiameter(Pipe) >= 50mm

	ELSE IF NH = 4 OR NH = 5 THEN getObjectDiameter(Pipe) >= 65mm

	ELSE IF NH >= 6 AND HN <= 10 THEN getObjectDiameter(Pipe) >= 80mm

} 














Modify
19
9353 연결살수설비의 화재안전기준(nfsc 503) 제 5조 6 항

⑥가지배관 또는 교차배관을 설치하는 경우에는 가지배관의 배열은 토너멘트방식이 아니어야 하며, 가지배관은 교차배관 또는 주배관에서 분기되는 지점을 기점으로 한 쪽 가지배관에 설치되는 헤드의 개수는 8개 이하로 하여야 한다.





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

Check(NFSC503_5_6){
	IF CS THEN KS
}

	Pipe myPipe1{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	}
	Pipe myPipe2{
	isObjectProperty(Pipe.isCrossMains) = TRUE
	}
	Pipe myPipe3{
	isObjectProperty(Pipe.isRiser) = TRUE
	}
CS{
	isInstalled(myPipe1) = TRUE 
	OR isInstalled(myPipe2) = TRUE
}
KS{
	Head myHead{
	isInstalled(Head, myPipe1.DivergedSide.One) = TRUE
	}
	isObjectProperty(myPipe1.tournamentArrangement) = FALSE
	getObjectCount(myHead) <= 8
} 














Modify
20
9604 유도등 및 유도표지의 화재안전기준(nfsc 303) 제 6조 1 항 3호 가 목

가. 각층의 경사로 참 또는 계단참마다(1개층에 경사로 참 또는 계단참이 2 이상 있는 경우에는 2개의 계단참마다)설치할 것





//유도등 및 유도표지의 화재안전기준(nfsc 303) 6조 (통로유도등 설치기준) 1항 3호 가목 

Check (NFSC303_6_1_3_가){
           KS
}

KS{
   IF // getObjectCount(RampLanding, "1개층" )>=2
      // OR getObjectCount(StairLanding, "1개층" )>=2
      THEN // isInstalled(StairLanding, LeadingLightForStairs , "2개마다")=True

   ELSE THEN   isInstalled(RampLanding, LeadingLightForStairs)=True
               OR isInstalled(StairLanding, LeadingLightForStairs)=True   
   END IF      

}

 














Modify
21
9611 유도등 및 유도표지의 화재안전기준(nfsc 303) 제 7조 2 항

②객석내의 통로가 경사로 또는 수평로로 되어 있는 부분은 다음의 식에 따라 산출한 수(소수점 이하의 수는 1로 본다)의 유도등을 설치하고, 그 조도는 통로바닥의 중심선 0.5m 높이에서 측정하여 0.2㏓ 이상이어야 한다. <개정 2012.8.20>





//유도등 및 유도표지의 화재안전기준(nfsc 303) 7조 (객석유도등 설치기준) 2항



Check(NFSC303_7_2){

            IF CS THEN KS

}



CS{

Space mySpace{
Space.usage = "Auditorium"
}
isInstalled(Passage, mySpace) = TRUE
isObjectProperty(Passage.isFlatWay) = TRUE
OR isObjectProperty(Passage.isSlopeWay) = TRUE


}





KS{

    LeadingLight myLeadingLight{

          isObjectProperty(LeadingLight.isForSeat)=True

    }



    isExist(myLeadingLight)=True



    //LAP means Length of Auditorium passage

    LAP= getObjectLength(AuditoriumPassage)

    getObjectCount(myLeadingLight)>= LAP/4-1

   // getSpaceIlluminance(AuditoriumPassage, "통로바닥의 중심선 0.5m 높이에서 측정")>0.2 lx , 측정 기준에 관한 파라미터 추가 필요 



} 














Modify
22
10960 연소방지설비의 화재안전기준(nfsc 506) 제 4조 4 항 1호

1. 연소방지설비전용헤드를 사용하는 경우에는 다음 표에 따른 구경 이상으로 할 것





//연소방지설비의 화재안전 기준(nfsc 506) 4조 (배관) 4항 1호
Check(NFSC506_4_4_1){
	IF CS THEN KS
}

CS{
	isInstalled(CombustionProtectionSystem, ?) = TRUE
}

KS{
	Pipe myPipe{
		hasObject(CombustionProtectionSystem, Pipe) = TRUE
	}

	SprinklerHead mySprinklerHead{
		isInstalled(myPipe, SprinklerHead) = TRUE
	}

	(getObjectCount(mySprinklerHead) = 1 
	getObjectProperty(myPipe.Diameter) >= 32mm)
	OR(getObjectCount(mySprinklerHead) = 2 
	getObjectProperty(myPipe.Diameter) >= 40mm)
	OR(getObjectCount(mySprinklerHead) = 3
	getObjectProperty(myPipe.Diameter) >= 50mm)
	OR(getObjectCount(mySprinklerHead) = 4
	getObjectProperty(myPipe.Diameter) >= 65mm)
	OR(getObjectCount(mySprinklerHead) = 5
	getObjectProperty(myPipe.Diameter) >= 65mm)
	OR(getObjectCount(mySprinklerHead) >= 6
	getObjectProperty(myPipe.Diameter) >= 80mm)
} 














Modify
23
12899 주택건설기준 등에 관한 규정 제 15조 1 항

제15조(승강기등) ①6층 이상인 공동주택에는 국토교통부령이 정하는 기준에 따라 대당 6인승 이상인 승용승강기를 설치하여야 한다. 다만, 「건축법 시행령」 제89조의 규정에 해당하는 공동주택의 경우에는 그러하지 아니하다. <개정 1992.5.30., 1994.12.23., 1994.12.30., 1999.9.29., 2005.6.30., 2008.2.29., 2013.3.23.>





//주택건설기준 등에 관한 규정 15조 (승강기등) 1항
Check(RHC_15_1){
	getResult(RHC_15_5) = TRUE AND IF (CS1 AND !CS2) THEN KS
}

CS1{
	getBuildingUsage() = "MultiUnitHouse"
	getBuildingStoriesCount() >= 6
}

CS2{
	getBuildingStoriesCount = 6
	
	Stair myStair{
		isObjectProperty(Stair.isDirect) = TRUE
	}

	getFloorArea() = FA
	FA / 300 = FA2
	getIntegeralNumber(FA2) = FA3
	getObjectCount(myStair) >= FA3
}

KS{
	Elevator myElevator{
		getObjectProperty(Elevator.occupancy) >= 6
	}

	isExist(myElevator) = TRUE
} 














Modify
24
12905 주택건설기준 등에 관한 규정 제 15조 3 항 4호

4. 복도형인 공동주택의 경우에는 100세대까지 1대를 설치하되, 100세대를 넘는 경우에는 100세대마다 1대를 추가로 설치할 것





//주택건설기준 등에 관한 규정 15조 (승강기등) 3항 4호
Check(RHC_15_3_4){
	IF CS THEN KS
}

CS{
	
}

KS{
	Elevator myElevator{
		getObjectProperty(Elevator.usage) = "FreightElevator"
	}

	getObjectCount(myElevator) = ELV
	100*n <= getObjectProperty(Building.numberOfHousehold) <100*(n+1)
	n <= ELV
}
 














Modify
25
13900 주차장법 시행규칙 제 4조 1 항 8호 가 목

가. 주차대수 규모가 20대 이상 50대 미만인 경우: 한 면 이상





//주차장법 시행규칙 4조 (노상주차장의 구조·설비기준) 1항 8호 가목



Check(ERPA_4_1_8_가){

    IF CS THEN KS

}



CS{

  getObjectCount(ParkingLot.ParkingUnit)>=20

  getObjectCount(ParkingLot.numberOfParkingUnit)<50

}





KS{



Area myArea{

   isObjectProperty(ParkingLotArea.isHandicapParking)=True

}

    getObjectCount(myArea)>=1

} 














Modify
26
13901 주차장법 시행규칙 제 4조 1 항 8호 나 목

나. 주차대수 규모가 50대 이상인 경우: 주차대수의 2퍼센트부터 4퍼센트까지의 범위에서 장애인의 주차수요를 고려하여 해당 지방자치단체의 조례로 정하는 비율 이상





//주차장법 시행규칙 4조 (노상주차장의 구조·설비기준) 1항 8호 나목



Check(ERPA_4_1_8_나){

    IF CS THEN KS

}



CS{

  getObjectCount(ParkingLot.ParkingUnit)>=50



}





KS{



    Area myArea{

        isObjectProperty(ParkingLotArea.isHandicapParking)=True

    }

    PLC=getObjectProperty(ParkingLot.numberOfParkingUnit)



    getObjectCount(myArea)>=PLC*2%

    getObjectCount(myArea)<=PLC*4%

    getResult(Unimplemented_LGMO)=True

} 














Modify
27
13920 주차장법 시행규칙 제 5조 8호

8. 특별시장·광역시장, 시장·군수 또는 구청장이 설치하는 노외주차장의 주차대수 규모가 50대 이상인 경우에는 주차대수의 2퍼센트부터 4퍼센트까지의 범위에서 장애인의 주차수요를 고려하여 지방자치단체의 조례로 정하는 비율 이상의 장애인 전용주차구획을 설치하여야 한다.





//주차장법 시행규칙 5조 (노상주차장의 구조·설비기준) 8호 

Check(ERPA_5_0_8){
    IF CS THEN KS
}

CS{
  
  ParkingLot myParkingLot{
    isObjectProperty(ParkingLot.isOffStreetParking)=True
  }

  getObjectCount(myParkingLot.ParkingUnit)>=50

}


KS{

    Area myArea{
        isObjectProperty(myParkingLotArea.isHandicapParking)=True
    }

    PLC=getObjectCount(myParkingLot.ParkingUnit)

    getObjectCount(myArea)>=PLC*2%
    getObjectCount(myArea)<=PLC*4%
    getResult(Unimplemented_LGMO)=True
}

 














Modify
28
13928 주차장법 시행규칙 제 6조 1 항 3호 나 1) 목

1) 이륜자동차전용 노외주차장 (표)





//주차장법 시행규칙 6조 (노외주차장의 구조·설비기준) 1항 3호 나목
Check(ERPA_6_1_3_나){
     IF CS THEN KS
}

CS{
   getSpaceUsage()="ParkingLot"
   getObjectProperty(ParkingLot.parkingUseType)="TwowheeledVehicle"
}

KS{
   IF 	getObjectProperty(ParkingUnit.parkingType)="ParallelParking"
       IF getObjectCount(Opening)>=2
       THEN  ParkingLot.Driveway.width>=2.25 m
       ELSE IF getObjectCount(Opening)=1
       THEN  ParkingLot.Driveway.width>=3.5 m
       END IF
   ELSE IF getObjectProperty(ParkingUnit.parkingType)="RightAngleParking"
       IF getObjectCount(Opening)>=2
       THEN  ParkingLot.Driveway.width>=4.0 m
       ELSE IF getObjectCount(Opening)=1
       THEN  ParkingLot.Driveway.width>=4.0 m
       END IF
   ELSE IF getObjectProperty(ParkingUnit.parkingType)="45AngleParking"
       IF getObjectCount(Opening)>=2
       THEN  ParkingLot.Driveway.width>=2.3 m
       ELSE IF getObjectCount(Opening)=1
       THEN  ParkingLot.Driveway.width>=3.5 m
       END IF
  END IF
}
 














Modify
29
13929 주차장법 시행규칙 제 6조 1 항 3호 나 2) 목

2) 1) 외의 노외주차장 (표)





//주차장법 시행규칙 6조 (노외주차장의 구조·설비기준) 1항 3호 나목

Check(ERPA_6_1_3_나){

     IF CS THEN KS

}



CS{

   getSpaceUsage()="ParkingLot"

   isObjectProperty(ParkingLot.isOffStreetParking)=True

   getObjectProperty(ParkingLot.parkingUseType)!="TwowheeledVehicle"

}



KS{

   IF 	getObjectProperty(ParkingUnit.parkingType)="ParallelParking"

       IF getObjectCount(Opening)>=2

       THEN  ParkingLot.Driveway.width>=3.3 m

       ELSE IF getObjectCount(Opening)=1

       THEN  ParkingLot.Driveway.width>=5.0 m

       END IF

   ELSE IF getObjectProperty(ParkingUnit.parkingType)="RightAngleParking"

       IF getObjectCount(Opening)>=2

       THEN  ParkingLot.Driveway.width>=6.0 m

       ELSE IF getObjectCount(Opening)=1

       THEN  ParkingLot.Driveway.width>=6.0 m

       END IF

   ELSE IF getObjectProperty(ParkingUnit.parkingType)="60AngleParking"

       IF getObjectCount(Opening)>=2

       THEN  ParkingLot.Driveway.width>=4.5 m

       ELSE IF getObjectCount(Opening)=1

       THEN  ParkingLot.Driveway.width>=5.5 m

       END IF

   ELSE IF getObjectProperty(ParkingUnit.parkingType)="45AngleParking"

       IF getObjectCount(Opening)>=2

       THEN  ParkingLot.Driveway.width>=3.5 m

       ELSE IF getObjectCount(Opening)=1

       THEN  ParkingLot.Driveway.width>=5.0 m

       END IF

getObjectProperty(ParkingUnit.parkingType)="CrossParking"

       IF getObjectCount(Opening)>=2

       THEN  ParkingLot.Driveway.width>=3.5 m

       ELSE IF getObjectCount(Opening)=1

       THEN  ParkingLot.Driveway.width>=5.0 m

       END IF

  END IF

} 














Modify
30
14561 스프링클러설비의 화재안전기준(NFSC 103) 제 6조 2호

2. 하나의 방호구역에는 1개 이상의 유수검지장치를 설치하되, 화재발생시 접근이 쉽고 점검하기 편리한 장소에 설치할 것<개정 2008.12.15>





//스프링클러설비의 화재안전기준(NFSC 103) 6조 (폐쇄형스프링클러설비의 방호구역·유수검지장치) 2호

Check(NFSC103_6_0_2){
     KS
}

KS{
     getObjectCount(SprinklerSystem.ProtectionZonme.One.WaterflowIndicator)>=1
} 














Modify
31
14562 스프링클러설비의 화재안전기준(NFSC 103) 제 6조 3호

3. 하나의 방호구역은 2개 층에 미치지 아니하도록 할 것. 다만, 1개 층에 설치되는 스프링클러헤드의 수가 10개 이하인 경우와 복층형구조의 공동주택에는 3개 층 이내로 할 수 있다.<개정 2009.10.22>





//스프링클러설비의 화재안전기준(NFSC 103) 6조 (폐쇄형스프링클러설비의 방호구역·유수검지장치) 3호



Check(NFSC103_6_0_3){

    IF CS THEN KS1 ELSE KS2 

}



CS{

Building myBuilding{
Building.usage = "MultiUnitHouse"
}

     getObjectCount(Floor.One, SprinklerHead)<=10

     OR isObjectProperty(myBuilding.isDuplexType)=True

}



KS1{

     getObjectCount(SprinklerSystem.ProtectionZone.One.Floor )<=3

}



KS2{

   

 getObjectCount(SprinklerSystem.ProtectionZone.One.Floor )<2

} 














Modify
32
14568 스프링클러설비의 화재안전기준(NFSC 103) 제 7조 1호

1. 하나의 방수구역은 2개 층에 미치지 아니 할 것





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

Check(NFSC103_7_0_1){
       KS
}

KS{
   Zone myZone{
          isObjectProperty(Zone.isWaterProofingZone)=True
   }

    getObjectCount(myZonme.One.Floor)<2
} 














Modify
33
14569 스프링클러설비의 화재안전기준(NFSC 103) 제 7조 2호

2. 방수구역마다 일제개방밸브를 설치할 것





//스프링클러설비의 화재안전기준(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
} 














Modify
34
14570 스프링클러설비의 화재안전기준(NFSC 103) 제 7조 3호

3. 하나의 방수구역을 담당하는 헤드의 개수는 50개 이하로 할 것. 다만, 2개 이상의 방수구역으로 나눌 경우에는 하나의 방수구역을 담당하는 헤드의 개수는 25개 이상으로 할 것





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



NFSC103_7_0_3{

      IF CS THEN KS1 ELSE KS2

}



CS{

 getObjectCount(myZone)>=2

}



KS1{

  getObjectCount(SprinklerSystem.Head, myZone.One)>=25

}



KS2{

 getObjectCount(SprinklerSystem.Head, myZone.One)<=50

} 














Modify
35
14663 스프링클러설비의 화재안전기준(NFSC 103) 제 10조 2 항

② 랙크식창고의 경우로서「소방기본법시행령」별표 2의 특수가연물을 저장 또는 취급하는 것에 있어서는 랙크높이 4m 이하마다, 그 밖의 것을 취급하는 것에 있어서는 랙크높이 6m 이하마다 스프링클러헤드를 설치하여야 한다. 다만, 랙크식창고의 천장높이가 13.7m 이하로서 「화재조기진압용 스프링클러설비의 화재안전기준(NFSC 103B)」에 따라 설치하는 경우에는 천장에만 스프링클러헤드를 설치할 수 있다.<개정 2013.6.10>





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

Check(NFSC103_10_2){

	IF (CS1 THEN KS1) OR (CS2 THEN KS2)

}



CS1{
Space.usage = "RackWarehouse"
isObjectProperty(Space.hasSpecialCombustible) = TRUE

}



KS1{

	getObjectHeight(Rack) / 4 = RH



	(RH-1) <= getObjectCount(SprinklerHead) < RH

	getObjectInterval(SprinklerHead) = 4m

}



CS2{

Space.usage = "RackWarehouse"
isObjectProperty(Space.hasSpecialCombustible) != TRUE


}



KS2{

	getObjectHeight(Rack) / 6 = RH



	(RH-1) <= getObjectCount(SprinklerHead) < RH

	getObjectInterval(SprinklerHead) = 6m

} 














Modify
36
14695 스프링클러설비의 화재안전기준(NFSC 103) 제 11조 5호

5. 폐쇄형스프링클러헤드를 사용하는 스프링클러설비의 송수구는 하나의 층의 바닥면적이 3,000㎡를 넘을 때마다 1개 이상(5개를 넘을 경우에는 5개로 한다)을 설치할 것





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

Check(NFSC103_11_0_5){
	IF CS THEN KS
}
CS{
	isObject(Sprinkler.Head.openAndCloseType) = "EnclosedType"
}
KS{
	Port myPort{
	isObjectProperty(Port.typeForWater)="FireDepartmentConnection"
	}
	Space mySpace{
	isObjectProperty(Space.FloorSlab.area) = 3000m2
	}
	isInstalled(mySpace, myPort) = TRUE
	getObjectCount(mySpace.One.myPort) >= 1
	getObjectCount(myPort) <= 5
	
} 














Modify
37
14832 간이스프링클러설비의 화재안전기준(NFSC 103A) 제 4조 1 항 2호

2. 수조("캐비닛형"을 포함한다)를 사용하고자 하는 경우에는 적어도 1개 이상의 자동급수장치를 갖추어야 하며, 2개의 간이헤드에서 최소 10분[영 별표 5 제1호마목1) 또는 6)과 7)에 해당하는 경우에는 5개의 간이헤드에서 최소 20분]이상 방수할 수 있는 양 이상을 수조에 확보할 것 <개정 2011.11.24, 2013.6.10, 2015.1.23.>





//	간이스프링클러설비의 화재안전기준(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

} 














Modify
38
14879 간이스프링클러설비의 화재안전기준(NFSC 103A) 제 6조 3호

3. 하나의 방호구역은 2개층에 미치지 아니하도록 할 것. 다만, 1개층에 설치되는 간이헤드의 수가 10개 이하인 경우에는 3개층 이내로 할 수 있다.





//간이스프링클러설비의 화재안전기준(nfsc 103a) 6조 (간이스프링클러설비의 방호구역·유수검지장치) 3호



Check(NFSC503A_6_0_3){

	IF (CS1 THEN KS1) OR (CS2 THEN KS2)

}

	Zone myZone{

	isObjectProperty(Zone.isProtectionZone) = TRUE

	}

CS1{

	getObjectCount(Floor.One.SimpleSprinklerHead) > 10

}

KS1{

	getObjectCount(Zone.One.Floor) < 2

}

CS2{

	getObjectCount(Floor.One.SimpleSprinklerHead) <= 10

}

KS2{

	getObjectCount(myZone.One.Floor) <= 3

} 














Modify
39
14912 간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 9 항 2호

2. 교차배관에서 분기되는 지점을 기점으로 한쪽 가지배관에 설치되는 간이헤드의 개수(반자 아래와 반자속의 헤드를 하나의 가지배관 상에 병설하는 경우에는 반자 아래에 설치하는 헤드의 개수)는 8개 이하로 할 것. 다만, 다음 각 목의 어느 하나에 해당하는 경우에는 그러하지 아니하다.





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

Check(NFSC503A_8_9_2){
	IF !CS THEN KS
}
CS{
	getResult(NFSC503A_8_9_2_가) = TRUE
}
KS{
	Pipe myPipe{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	}
	Head myHead{
	isIntalled(SimpleSprinkler.Head, myPipe.One) = TRUE
	getObjectVerticalLocation(CeilingCovering, SimpleSprinkler.Head) < 0
	}
	getObjectCount(myHead) <= 8  
} 














Modify
40
14941 간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 16 항 1호 가 목

가. 수도용계량기, 급수차단장치, 개폐표시형밸브, 체크밸브, 압력계, 유수검지장치(압력스위치 등 유수검지장치와 동등 이상의 기능과 성능이 있는 것을 포함한다. 이하 같다), 2개의 시험밸브의 순으로 설치할 것 <개정 2011.11.24>





// 간이스프링클러설비의 화재안전기준(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

} 














Modify
41
14946 간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 16 항 3호

3. 가압수조를 가압송수장치로 이용하여 배관 및 밸브등을 설치하는 경우에는 수원, 가압수조, 압력계, 체크밸브, 성능시험배관, 개폐표시형밸브, 유수검지장치, 2개의 시험밸브의 순으로 설치할 것 <개정 2011.11.24>





// 간이스프링클러설비의 화재안전기준(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

} 














Modify
42
14949 간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 16 항 4호

4. 캐비닛형의 가압송수장치에 배관 및 밸브 등을 설치하는 경우에는 수원, 연성계 또는 진공계(수원이 펌프보다 높은 경우를 제외한다. 이하 같다), 펌프 또는 압력수조, 압력계, 체크밸브, 개폐표시형밸브, 2개의 시험밸브의 순으로 설치할 것. 다만, 소화용수의 공급은 상수도와 직결된 바이패스관 또는 펌프에서 공급받아야 한다. <신설 2011.11.24, 개정 2013.6.10>





// 간이스프링클러설비의 화재안전기준(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

} 














Modify
43
15002 간이스프링클러설비의 화재안전기준(NFSC 103A) 제 별표1조

[별표 1] <개정 2015.1.23.> 간이헤드 수별 급수관의 구경(제8조제3항제3호관련)





//	간이스프링클러설비의 화재안전기준(NFSC 103A) 별표1 (간이헤드 수별 급수관의 구경) 1항

Check(NFSC103A_*_1){

	getResult(NFSC103A_*_1_1) = TRUE

	getResult(NFSC103A_*_1_2) = TRUE

	getResult(NFSC103A_*_1_3) = TRUE

	getResult(NFSC103A_*_1_4) = TRUE

}

	

	Pipe myPipe{

	getObjectProperty(Pipe.usage) = "WaterSupplyPipe"

	}

	Pipe myPipe2{

	isObjectProperty(Pipe.isBranchLines) = TRUE

	}

	PD = getObjectProperty(Pipe.diameter)

	SSHN = getObjectCount(SimpleSprinkler.Head.)



Check(NFSC103A_*_1_2){

	IF CS THEN KS

}

CS{

	Head myHead{

	getObjectProperty(SimpleSprinkler.Head.openAndCloseType) = "EnclosedType"

	}

	isInstalled(myHead) = TRUE

}

KS{

	IF PD = 25 THEN SSHN = 2

	OR IF PD = 32 THEN SSHN = 3

	OR IF PD = 40 THEN SSHN = 5

	OR IF PD = 50 THEN SSHN = 10

	OR IF PD = 65 THEN SSHN = 30

	OR IF PD = 80 THEN SSHN = 60

	OR IF PD = 100 THEN SSHN = 100

	OR IF PD = 125 THEN SSHN = 160

	OR IF PD = 150 THEN SSHN >= 161

}

Check(NFSC103A_*_1_3){

	IF CS THEN KS

}

CS{

	Head myHead1{

	getObjectProperty(SimpleSprinkler.Head.openAndCloseType) = "EnclosedType"

	}

	isInstalled(myHead1) = TRUE

	Head myHead2{

	getObjectVerticalLocation(Head, CeilingCovering, )  <  0
	}

	Head myHead3{

	isInstalled(Head, CeilingCovering.Inside) = TRUE

	}

	isInstalled(myHead2, myPipe2) = TRUE

	isInstalled(myHead3, myPipe2) = TRUE

}

KS{

	IF PD = 25 THEN SSHN = 2

	OR IF PD = 32 THEN SSHN = 4

	OR IF PD = 40 THEN SSHN = 7

	OR IF PD = 50 THEN SSHN = 15

	OR IF PD = 65 THEN SSHN = 30

	OR IF PD = 80 THEN SSHN = 60

	OR IF PD = 100 THEN SSHN = 100

	OR IF PD = 125 THEN SSHN = 160

	OR IF PD = 150 THEN SSHN >= 161

} 














Modify
44
15380 자동화재탐지설비의 화재안전기준(NFSC 203) 제 7조 3 항 8호 가 목

가. 열전대부는 감지구역의 바닥면적 18㎡(주요구조부가 내화구조로 된 특정소방대상물에 있어서는 22㎡)마다 1개 이상으로 할 것. 다만, 바닥면적이 72㎡(주요구조부가 내화구조로 된 특정소방대상물에 있어서는 88㎡) 이하인 특정소방대상물에 있어서는 4개 이상으로 하여야 한다.





자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 8호 가목
Check(NFSC203_7_3_8_가){
	IF !CS THEN KS1 AND K2 ELSE THEN KS3 AND KS4

}
	Zone myZone{
	isObjectProperty(Zone.isDetectionZone) = TRUE
	}
CS1{
	isFireResistantStructure(SpecificFireFightingBuilding.MainStructuralPart) = TRUE
) 
KS1{
	isInstalled(ThermocoupleElement , myZone.Floor, c, 18) = TRUE
}
KS2{
	isObjectProperty(SpecificFireFightingBuilding.myZone.Floor.area) <= 72m2
	getObjectCount(myZone) >= 4
}
KS3{
	isInstalled(ThermocoupleElement , myZone.Floor, c, 22) = TRUE
}
KS4{
	isObjectProperty(SpecificFireFightingBuilding.myZone.Floor.area) <= 88m2
	getObjectCount(myZone) >= 4
} 














Modify
45
15381 자동화재탐지설비의 화재안전기준(NFSC 203) 제 7조 3 항 8호 나 목

나. 하나의 검출부에 접속하는 열전대부는 20개 이하로 할 것. 다만, 각각의 열전대부에 대한 작동여부를 검출부에서 표시할 수 있는 것(주소형)은 형식승인 받은 성능인정범위내의 수량으로 설치할 수 있다.






자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 8호 나목
Check(NFSC203_7_3_8_나){
	KS
}
KS{
	isConnectedTo(ThermocoupleElement, DetectingElement.One) = TRUE
	getObjectCount(ThermocoupleElement) <= 20
} 














Modify
46
15383 자동화재탐지설비의 화재안전기준(NFSC 203) 제 7조 3 항 9호 가 목

가. 감지부는 그 부착높이 및 특정소방대상물에 따라 다음 표에 따른 바닥면적마다 1개 이상으로 할 것. 다만, 바닥면적이 다음 표에 따른 면적의 2배 이하인 경우에는 2개(부착높이가 8m 미만이고, 바닥면적이 다음 표에 따른 면적 이하인 경우에는 1개) 이상으로 하여야 한다.





자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 5호
Check(NFSC203_7_3_5){

	Sensor mySensor1{
	getObjectProperty(Sensor.type) = "Type1"
	}
	Sensor mySensor2{
	isObjectProperty(Sensor.type) = "Type2"
	}

IF 
{isFireResistantStructure(SpecificFireFightingBuilding) = TRUE)
AND 
{isInstalled(Sensor, FloorSlab) = TRUE
	getObjectVerticalDistance(FloorSlab, Sensor) < 8m
}
THEN
{(FA = 65
isInstalled(mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR 
(FA = 36 
isInstalled(mySensor2, FloorSlab.Space, C, FA) = TRUE)

IF getObjectArea(Sensor.FloorSlab) <= FA
THEN getObjectCount(Sensor) = 1

ELSE IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}

ELSE IF
{isFireResistantStructure(SpecificFireFightingBuilding) = TRUE)
AND 
{isInstalled(Sensor, FloorSlab) = TRUE
AND
getObjectVerticalDistance(FloorSlab, Sensor) >= 8m
AND
getObjectVerticalDistance(FloorSlab, Sensor) < 15m

THEN
{(FA = 50
isInstalled(mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR 
(FA = 36 
isInstalled(mySensor2, FloorSlab.Space, C, FA) = TRUE)

IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}

ELSE IF
{isFireResistantStructure(SpecificFireFightingBuilding) != TRUE)
AND 
{isInstalled(Sensor, FloorSlab) = TRUE
	getObjectVerticalLocation(FloorSlab, Sensor) < 8m
}
THEN
{(FA = 40
isInstalled(mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR 
(FA = 23 
isInstalled(mySensor2, FloorSlab.Space, C, FA) = TRUE)

IF getObjectArea(Sensor.FloorSlab) <= FA
THEN getObjectCount(Sensor) = 1

ELSE IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}

ELSE IF
{isFireResistantStructure(SpecificFireFightingBuilding) != TRUE)
AND 
getObjectVerticalDistance(FloorSlab, Sensor) >= 8m
AND
getObjectVerticalDistance(FloorSlab, Sensor) < 15m
}

THEN
{(FA = 30
isInstalled(mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR 
(FA = 23 
isInstalled(mySensor2, FloorSlab.Space, C, FA) = TRUE)

IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
} 














Modify
47
15385 자동화재탐지설비의 화재안전기준(NFSC 203) 제 7조 3 항 9호 나 목

나. 하나의 검출기에 접속하는 감지부는 2개 이상 15개 이하가 되도록 할 것. 다만, 각각의 감지부에 대한 작동여부를 검출기에서 표시할 수 있는 것(주소형)은 형식승인 받은 성능인정범위내의 수량으로 설치할 수 있다.





자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 9호 나목

Check(NFSC203_7_3_9_나){

	IF CS THEN KS

}

CS{

	isConnectedTO(Detector.One, SensingElement) = TRUE

}

KS{

	getObjectCount(SensingElement) >= 2

	getObjectCount(SensingElement) <= 15

} 














Modify
48
15502 연결송수관설비의 화재안전기준(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

} 














Modify
49
15529 연결송수관설비의 화재안전기준(NFSC 502) 제 6조 1호 다 목

다. 송수구가 부설된 옥내소화전을 설치한 특정소방대상물(집회장·관람장·백화점·도매시장·소매시장·판매시설·공장·창고시설 또는 지하가를 제외한다)로서 다음의 어느 하나에 해당하는 층 (1) 지하층을 제외한 층수가 4층 이하이고 연면적이 6,000㎡ 미만인 특정소방대상물의 지상층 (2) 지하층의 층수가 2 이하인 특정소방대상물의 지하층





//연결송수관설비의 화재안전기준(NFSC 502) 6조 (방수구) 1호 다목



Check(NFSC502_6_0_1_다목){

         KS

}



KS{

       getBuildingUsage()!="AssemblyHall"

       getBuildingUsage()!="Auditorium"

       getBuildingUsage()!="DepartmentStore"

       getBuildingUsage()!="WholesaleMarket"

       getBuildingUsage()!="CommercialFacility"

       getBuildingUsage()!="Factory"

       getBuildingUsage()!="Warehouse"

       getBuildingUsage()!="UndergroundMarket"



      

FireHydrant myFireHydrant{
isExternal(FireHydrant)  = FALSE
         isInstalled(FireDepartmentConnection, FireHydrant)=True

    }       



    isInstalled(myIndoorFireHydrant,SpecificFireFightingBuilding)=True



    Floor myFloor{

            Floor.number>0

    }

    Floor myFloor2{

            Floor.number<0

    }

    (

    gerObjectCount(myFloor)<=4 

    getGrossFloorArea()<6000 m2

    Floor.number>0

    )



    OR 

    (

     getObjectCount(myFloor)<=2

     Floor.number<0        

    )

    



    

} 














Modify
50
15536 연결송수관설비의 화재안전기준(NFSC 502) 제 6조 3호 나 목

나. 스프링클러설비가 유효하게 설치되어 있고 방수구가 2개소 이상 설치된 층





//연결송수관설비의 화재안전기준(NFSC 502) 6조 (방수구) 3호 나목



Check(NFSC502_6_0_3_나){

            KS

}



KS{

       isExist(SprinklerSystem)=True

       getObjectCount(	FireDepartmentConnectionSystem.Port, Floor.One)>=2

} 














Modify
51
15548 연결송수관설비의 화재안전기준(NFSC 502) 제 7조 2호 나 목

나. 방사형 관창은 단구형 방수구의 경우에는 1개, 쌍구형 방수구의 경우에는 2개 이상 비치할 것





//연결송수관설비의 화재안전기준(NFSC 502) 7조 (방수기구함) 2호 나목



Check(NFSC502_7_0_2_나){



             KS

}



KS{

      IF getObjectPropety(RadialSprayNozzle.Port.shapeType)="SingleType"



      THEN getObjectCount(RadialSprayNozzle)=1

      

      ELSE IF getObjectPropety(RadialSprayNozzle.Port.shapeType)="DoubleType"

            

           getObjectCount(RadialSprayNozzle)=2

        

      END IF



} 














Modify
    1      
 
This is Design IT Lab server's restricted area. Authorized users could access this website.