개방형BIM 기반의 건축설계 적법성 평가 자동화 기술 및 응용기술 개발
Development of OpenBIM based Architectural Design Code Checking and Evaluation Technology
  Welcome to BIM - 2nd Project Website - Yonsei University
PAGE MENU  
전체법규 - 법규데이터베이스
- 대한민국 전체 법규 목록
- 설계품질검토 대상 관련법규
- 관련법규 변동 현황
대상법규 - 문장 논리규칙체계화
- 조항단위 논리규칙체계
- 문장단위 논리규칙체계
주어부 - 객체.속성 데이터베이스
- 법규로부터의 객체.속성 분류
- 명칭DB: 객체 | 객체및속성
서술부 - 함수 데이터베이스
- 논리규칙화 함수 분류
- 논리규칙화 함수 DB
관계부 - 문장 내.외 관계논리
- 문장 내.외 관계유형분류
- 문장 내.외관계 논리체계화
문장단위 | 체크리스트 단위
KBimCode 데이터베이스
- KBimCode Lang. Definition
- KBimCode Editor:
전체 개발항목 단위
우선순위 개발항목 단위
- KBimCode DB 2단계:
문장단위 | 조항단위 |
분야/용도/단계 체크리스트 단위
- KBimLogic Applications
KBimAssess Code 데이터베이스
- Executable KBimAssess Code
- KBimCode-Assess 연동모듈
 
(2025-06-28 기준) 설계품질검토용 건축법 및 관련법규 - KBIMCode (문장단위)
    1      
1 / 1 page Total 2500 / 4000 records    신규입력
Select
ALL
None
#
ID
Law
Jo
JO Name
HANG
HO
MOK
Text
Search!
1
72573 간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 2 항 3호

3. 천장(상층이 있는 경우에는 상층바닥의 하단을 포함한다. 이하 같다)과 반자를 불연재료 또는 준불연재료로 설치하고 그 내부에 습식으로 배관을 설치하는 경우





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

Check(NFSC503A_8_2_3){
	KS
}
KS{	
	SprinklerSystem mySprinklerSystem{
	isObjectProperty(SprinklerSystem.type) = "WetPipeSprinklerSystem"
	}
	(isObjectProperty(Ceiling.Material.nonCombustibility)=TRUE
	OR isObjectProperty(Ceiling.Material.quasiNonCombustibility)=TRUE)
	(isObjectProperty(CeilingCovering.Material.nonCombustibility)=TRUE
	OR isObjectProperty(CeilingCovering.Material.quasiNonCombustibility)=TRUE)
	isInstalled(mySprinklerSystem, Ceiling)=TRUE
	isInstalled(mySprinklerSystem, CeilingCovering)=TRUE
} 




Python Code 변환 예정



Modify
2
19376 건축물의 설비기준 등에 관한 규칙 제 9조 3호

3. 높이 31미터를 넘는 층수가 4개층이하로서 당해 각층의 바닥면적의 합계 200제곱미터(벽 및 반자가 실내에 접하는 부분의 마감을 불연재료로 한 경우에는 500제곱미터)이내마다 방화구획으로 구획한 건축물





//건축물의 설비기준 등에 관한 규칙 9조 (비상용승강기를 설치하지 아니할 수 있는 건축물) 3호

Check(RFB_9_0_3){

    KS

}



KS{

    getBuildingHeight()>31 m

    getBuildingStoriesCount()<=4

    IF isObjectProperty(Wall.InteriorFinish.Material.nonCombustibility)=TRUE

       isObjectProperty(CeilingCovering.InteriorFinish.Material.nonCombustibility)=TRUE

    THEN isFirePartition(Floor, a,500)=TRUE 

    ELSE THEN isFirePartition(Floor, a,200)=TRUE 

    END IF

} 




Python Code 변환 예정



Modify
3
19382 건축물의 설비기준 등에 관한 규칙 제 10조 2호 라 목

라. 벽 및 반자가 실내에 접하는 부분의 마감재료(마감을 위한 바탕을 포함한다)는 불연재료로 할 것





//건축물의 설비기준 등에 관한 규칙 10조 (비상용승강기의 승강장 및 승강로의 구조) 2호 라목
Check(RFB_10_0_2_라){
	KS
}

KS{
	Elevator myElevator{
		isObjectProperty(Elevator.isEmergency)=TRUE
	}
	isObjectProperty(myElevator.Platform.Wall.InteriorFinish.Material.nonCombustibility) = TRUE
	isObjectProperty(myElevator.Platform.CeilingCovering.InteriorFinish.Material.nonCombustibility) = TRUE
} 




Python Code 변환 예정



Modify
4
25140 건축물의 설비기준 등에 관한 규칙 제 14조 2 항 1호

1. 배연구 및 배연풍도는 불연재료로 하고, 화재가 발생한 경우 원활하게 배연시킬 수 있는 규모로서 외기 또는 평상시에 사용하지 아니하는 굴뚝에 연결할 것





//건축물의 설비기준 등에 관한 규칙 14조 (배연설비) 2항1호



Check(RFB_14_2_1){
Duct myDuct{
getObjectProperty(Duct.functionType) = "Exhaust"
}
	isObjectProperty(SmokeExhaustionOpening.Material.nonCombustibility) = TRUE

	isObjectProperty(myDuct.Material.nonCombustibility) = TRUE

	(isConnectedToExternal(SmokeExhaustionOpening) = TRUE

        isConnectedToExternal(myDuct) = TRUE)

	OR( isConnectedTo(SmokeExhaustionOpening,Chimney) = TRUE

            isConnectedTo(myDuct,Chimney) = TRUE)

} 




Python Code 변환 예정



Modify
5
72686 건축물의 에너지절약설계기준 제 5조 12호 가 목

가. "신·재생에너지”라 함은「신에너지 및 재생에너지 개발·이용·보급촉진법」에서 규정하는 것을 말한다.





//  옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 2항 3호
Check(NFSC102_6_2_3){
	KS
}
KS{	
	SprinklerSystem mySprinklerSystem{
	isObjectProperty(SprinklerSystem.type) = "WetPipeSprinklerSystem"
	}
	(isObjectProperty(Ceiling.Material.nonCombustibility)=TRUE
	OR isObjectProperty(Ceiling.Material.quasiNonCombustibility)=TRUE)
	(isObjectProperty(CeilingCovering.Material.nonCombustibility)=TRUE
	OR isObjectProperty(CeilingCovering.Material.quasiNonCombustibility)=TRUE)
	isInstalled(mySprinklerSystem, Ceiling)=TRUE
	isInstalled(mySprinklerSystem, CeilingCovering)=TRUE
}

 




Python Code 변환 예정



Modify
6
72775 건축물의 에너지절약설계기준 제 7조 5호 나 목

나. 공동주택의 지하주차장은 300㎡ 이내마다 1개소 이상의 외기와 직접 면하는 2㎡ 이상의 개폐가 가능한 천창 또는 측창을 설치하여 자연환기 및 자연채광을 유도한다. 다만, 지하2층 이하는 그러하지 아니한다.





//	스프링클러설비의 화재안전기준(nfsc 103) 15조 (헤드의 설치제외) 1항 5호
Check(NFSC103_15_1_5){
	IF CS THEN KS
}

CS{
	isObjectProperty(Ceiling.Material.nonCombustibility) = TRUE
	isObjectProperty(CeilingCovering.Material.nonCombustibility) = TRUE
}

KS{
	getResult(NFSC103_15_1_5_1) = TRUE
	OR getResult(NFSC103_15_1_5_2) = TRUE
} 




Python Code 변환 예정



Modify
7
72777 건축물의 에너지절약설계기준 제 7조 5호 라 목

라. 창에 직접 도달하는 일사를 조절할 수 있도록 제5조제9호러목에 따른 일사조절장치를 설치한다.





//	스프링클러설비의 화재안전기준(nfsc 103) 15조 (헤드의 설치제외) 1항 5호 나목
Check(NFSC103_15_1_5_2){
	KS
}

KS{
	Wall myWall{
		isConnectedTo(Wall, Ceiling) = TRUE
		isConnectedTo(Wall, CeilingCovering) = TRUE
	}

	isObjectProperty(myWall.Material.nonCombustibility) = TRUE
	getObjectDistance(Ceiling, CeilingCovering) >= 2m
} 




Python Code 변환 예정



Modify
8
72778 건축물의 에너지절약설계기준 제 7조 6호

6. 환기계획





//	스프링클러설비의 화재안전기준(nfsc 103) 15조 (헤드의 설치제외) 1항 6호
Check(NFSC103_15_1_6){
	KS
}

KS{
	(isObjectProperty(Ceiling.Material.nonCombustibility) = TRUE
	isObjectProperty(CeilingCovering.Material.nonCombustibility) = FALSE)
	OR (isObjectProperty(Ceiling.Material.nonCombustibility) = FALSE
	isObjectProperty(CeilingCovering.Material.nonCombustibility) = TRUE)
	getObjectDistance(Ceiling, CeilingCovering) < 1m
} 




Python Code 변환 예정



Modify
9
72779 건축물의 에너지절약설계기준 제 7조 6호 가 목

가. 외기에 접하는 거실의 창문은 동력설비에 의하지 않고도 충분한 환기 및 통풍이 가능하도록 일부분은 수동으로 여닫을 수 있는 개폐창을 설치하되, 환기를 위해 개폐 가능한 창부위 면적의 합계는 거실 외주부 바닥면적의 10분의 1 이상으로 한다.





//	스프링클러설비의 화재안전기준(nfsc 103) 15조 (헤드의 설치제외) 1항 7호
Check(NFSC103_15_1_7){
	KS
}

KS{
	isObjectProperty(Ceiling.Material.nonCombustibility) = FALSE
	isObjectProperty(CeilingCovering.Material.nonCombustibility) = FALSE
	getObjectDistance(Ceiling, CeilingCovering) < 0.5m
} 




Python Code 변환 예정



Modify
10
72783 건축물의 에너지절약설계기준 제 8조 1호

난방 및 냉방설비의 용량계산을 위한 외기조건은 각 지역별로 위험율 2.5%(냉방기 및 난방기를 분리한 온도출현분포를 사용할 경우) 또는 1%(연간 총시간에 대한 온도출현 분포를 사용할 경우)로 하거나 별표7에서 정한 외기온·습도를 사용한다. 별표7 이외의 지역인 경우에는 상기 위험율을 기준으로 하여 가장 유사한 기후조건을 갖는 지역의 값을 사용한다. 다만, 지역난방공급방식을 채택할 경우에는 산업통상자원부 고시 「집단에너지시설의 기술기준」에 의하여 용량계





//	스프링클러설비의 화재안전기준(nfsc 103) 15조 (헤드의 설치제외) 1항 13호
Check(NFSC103_15_1_13){
	KS
}

KS{
	getObjectMaterial(SpecificFireFightingBuilding.Material.nonCombustibility) = TRUE
	(getResult(NFSC103_15_1_13_1) = TRUE
	OR getResult(NFSC103_15_1_13_2) = TRUE
	OR getResult(NFSC103_15_1_13_3) = TRUE)
} 




Python Code 변환 예정



Modify
11
72787 건축물의 에너지절약설계기준 제 8조 2호 다 목

다. 기기배관 및 덕트는 국토교통부에서 정하는 「건축기계설비공사표준시방서」의 보온두께 이상 또는 그 이상의 열저항을 갖도록 단열조치를 하여야 한다. 다만, 건축물내의 벽체 또는 바닥에 매립되는 배관 등은 그러하지 아니할 수 있다.





//	스프링클러설비의 화재안전기준(nfsc 103) 15조 (헤드의 설치제외) 1항 14호
Check(NFSC103_15_1_14){
	KS
}

KS{
	(getBuildingUsage() = "Indoor.TennisCourts"
	OR getBuildingUsage() = "Indoor.게이트볼장"
	OR getBuildingUsage() = "Indoor.정구장")

	(getObjectProperty(Floor.InteriorFinish.Material.nonCombustibility) = TRUE
	OR getObjectProperty(Floor.InteriorFinish.Material.quasiNonCombustibility) TRUE)

	(getObjectProperty(Wall.InteriorFinish.Material.nonCombustibility) = TRUE
	OR getObjectProperty(Wall.InteriorFinish.Material.quasiNonCombustibility) TRUE)

	(getObjectProperty(Ceiling.InteriorFinish.Material.nonCombustibility) = TRUE
	OR getObjectProperty(Ceiling.InteriorFinish.Material.quasiNonCombustibility) TRUE)

	isObjectProperty(Space.hasCombustible) = FALSE
	hasSpace(Auditorium, SportsFacility) = FALSE
	getObjectProperty(Floor.number) > 0
} 




Python Code 변환 예정



Modify
12
19510 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 14조의2조 5호

5. 거실의 벽 및 반자가 실내에 면하는 부분(반자돌림대ㆍ창대 그 밖에 이와 유사한 것을 제외한다. 이하 이 조에서 같다)의 마감은 불연재료ㆍ준불연재료 또는 난연재료로 하고, 그 거실로부터 지상으로 통하는 주된 복도ㆍ계단 그밖에 통로의 벽 및 반자가 실내에 면하는 부분의 마감은 불연재료 또는 준불연재료로 할 것





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 14조의2 (복합건축물의 피난시설 등) 5호



Check(REFB_14-2_0_5){

      KS

}



KS{



  Object myObject{

      getObject(Room.wall)

      getObject(Room.CeilingCovering)

  }

   



Corridor myCorridor{

   isGoThrough(Room, Corridor, Ground )=True

}



Stair myStair{

  isGoThrough(Room,Stair, Ground )=True

}



Passage myPassage{

  isGoThrough(Room,Passage, Ground )=True

}



Space mySpace{

   Space.usage==myCorridor.usage

   OR Space.usage==myStair.usage

   OR Space.usage=myPassage.usage



}





Object myObject2{

      getObject(mySpace.wall)

      getObject(mySpace.CeilingCovering)

  }



( isObjectProperty(myObject.InteriorFinish.Material.nonCombustibility)=True

 OR isObjectProperty(myObject.InteriorFinish.Material.quasiNonCombustibility)=True

 OR isObjectProperty(myObject.InteriorFinish.Material.flameResistance)= True
)



isObjectProperty(myObject2.InteriorFinish.Material.nonCombustibility)=True

 OR isObjectProperty(myObject2.InteriorFinish.Material.quasiNonCombustibility)=True





} 




Python Code 변환 예정



Modify
13
19562 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 20조 3호

3. 금속제 굴뚝으로서 건축물의 지붕속ㆍ반자위 및 가장 아랫바닥밑에 있는 굴뚝의 부분은 금속외의 불연재료로 덮을 것





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 20조 (건축물에 설치하는 굴뚝) 3호
Check(REFB_20_0_3){
	IF CS THEN KS
}

CS{
	getObjectMaterial(Chimney.Material.nonCombustibility) = TRUE
}

KS{
	Chimney myChimney{
		getObjectMaterial(Chimney.Material.nonCombustibility) = TRUE
	}

	isObjectProperty(A.Finish.Material.nonCombustibility) = TRUE
	getObjectProperty(A.Finish.Material.nonCombustibility) != 
	isObjectProperty(B.Finish.Material.nonCombustibility) = TRUE
	getFloorNumber(myChimney) = LF
	getObjectMaterial(myChimney) != "Metal"
} 




Python Code 변환 예정



Modify
14
19563 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 20조 4호

4. 금속제 굴뚝은 목재 기타 가연재료로부터 15센티미터 이상 떨어져서 설치할 것. 다만, 두께 10센티미터 이상인 금속외의 불연재료로 덮은 경우에는 그러하지 아니하다.





check(REFB_20_0_4){

IF !CS THEN KS

}



CS{

     (isObjectProperty(Chimney.Material.nonCombustibility)= TRUE

     AND !(getObjectProperty(Chimney.Material)="Metal"))

     And getElementWidth(NoncombustibleMaterials)>=10

}



KS{

       getObjectDistance(Chimney, combustibleMaterials)>= 15CM

       AND getObjectProperty(Chimney.Material)="Metal")) 

} 




Python Code 변환 예정



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

다. 실내에 접하는 부분(바닥 및 반자 등 실내에 면한 모든 부분을 말한다)의 마감(마감을 위한 바탕을 포함한다)은 불연재료로 할 것





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

check(REFB_30_0_1_다){

      KS

}

KS{

	isObjectProperty(Space.InteriorFinish.Material.nonCombustibility)=TRUE

} 




Python Code 변환 예정



Modify
16
25192 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 9조 2 항 1호 나 목

나. 계단실의 실내에 접하는 부분(바닥 및 반자 등 실내에 면한 모든 부분을 말한다)의 마감(마감을 위한 바탕을 포함한다)은 불연재료로 할 것





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 9조 (피난계단 및 특별피난계단의 구조) 2항 1호 나목

check(REFB_9_2_1_2){

     KS

}

KS{

    isObjectProperty(Stair.Space.InteriorFinish.Material.nonCombustibility) = TRUE



} 




Python Code 변환 예정



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

3. 11층 이상의 층은 바닥면적 200제곱미터(스프링클러 기타 이와 유사한 자동식 소화설비를 설치한 경우에는 600제곱미터)이내마다 구획할 것. 다만, 벽 및 반자의 실내에 접하는 부분의 마감을 불연재료로 한 경우에는 바닥면적 500제곱미터(스프링클러 기타 이와 유사한 자동식 소화설비를 설치한 경우에는 1천500제곱미터)이내마다 구획하여야 한다.





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 14조 (방화구획의설치) 1항3호





check(REFB_14_1_3){

KS2 AND IF CS THEN KS

}



  

Floor myFloor {

		getFloorNumebr()>= 11

              } 





KS2{

     isFirepartition(myFloor,200)=TRUE 

     OR 

     ((isExist(SprinklerSystem) = TRUE 

      OR isObjectProperty(ExtinguishingSystem.isAutomatic) = TRUE)

      AND isFirepartition(myFloor,600)=TRUE)

}



CS1 {

     isObjectProperty(Space.InteriorFinish.Material.nonCombustibility)=TRUE

}



KS1 {

     isFirepartition(myFloor,500)=TRUE

     OR

      ((isExist(SprinklerSystem) = TRUE 

      OR isObjectProperty(ExtinguishingSystem.isAutomatic) = TRUE)

      AND isFirepartition(myFloor,1500)=TRUE)

} 




Python Code 변환 예정



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

5. 비상탈출구는 피난층 또는 지상으로 통하는 복도나 직통계단에 직접 접하거나 통로 등으로 연결될 수 있도록 설치하여야 하며, 피난층 또는 지상으로 통하는 복도나 직통계단까지 이르는 피난통로의 유효너비는 0.75미터 이상으로 하고, 피난통로의 실내에 접하는 부분의 마감과 그 바탕은 불연재료로 할 것





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

check(REFB_25_2_5){

	

	Floor myFloor(

		isObjectProperty(Floor.isEscape) = TRUE

	)



	Stair myStair{

		isObjectProperty(Stair.isDirect) = TRUE

		(isDirectlyAccessible(Stair, Ground) = TRUE

		OR isDirectlyAccessible(Stair, myFloor) = TRUE)

	}



	Corridor myCorridor{

		isDirectlyAccessible(Corridor, myFloor) = TRUE

		OR isDirectlyAccessible(Corridor, Ground) = TRUE

	}

Door myDoor{
Door.functionType = "Emergency"
Door.Floor.number < 0
}

	(isDirectlyAccessible(myDoor, myStair) = TRUE

	OR isDirectlyAccessible(myDoor, myCorridor) = TRUE

	OR isGoThrough(myDoor, Corridor, myStair) = TRUE

	OR isGoThrough(myDoor, Corridor, myCorridor) = TRUE)

Passage myPassage{
isObjectProperty(Passage.isEscape) = TRUE
}

	getSpaceWidth(myPassage) >= 0.75 m



	isObjectProperty(myPassage.InteriorFinish.Material.nonCombustibility) = TRUE

} 




Python Code 변환 예정



Modify
19
25359 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 23조 1 항

①「건축법」 (이하 "법"이라 한다) 제51조제3항에 따라 방화지구 내 건축물의 지붕으로서 내화구조가 아닌 것은 불연재료로 하여야 한다. <개정 2005.7.22, 2010.12.30>





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 23조 (방화지구안의 지붕ㆍ방화문 및 외벽등) 1항

Check(REFB_23_1){

	IF CS THEN KS

}



CS{


	Building myBuilding{
getObjectProperty(Building.SpecialPurposeDistrict.type) = "FirePreventionDistrict"
	}



	Roof myRoof{

		hasObject(myBuilding, Roof) = TRUE

	}



	isObjectProperty(myRoof.isFireResistantStructure) != TRUE

}



KS{

	isObjectProperty(myRoof.Material.nonCombustibility) = TRUE

} 




Python Code 변환 예정



Modify
20
25367 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 24조 2 항

②영 제61조제1항 각 호의 건축물 중 다음 각 호의 어느 하나에 해당하는 거실의 벽 및 반자의 실내에 접하는 부분의 마감은 제1항에도 불구하고 불연재료 또는 준불연재료로 하여야 한다. <개정 2003.1.6, 2005.7.22, 2006.6.29, 2010.4.7, 2010.12.30>





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 24조 (건축물의 마감재료) 2항



check(REFB_24_2){

     IF CS THEN KS

}





CS{

    getResult(REFB_24_2_1)=TRUE

    OR getResult(REFB_24_2_2)=TRUE

}



KS{

  (isObjectProperty(CeilingCovering.InteriorFinish.Material.nonCombustibility)=TRUE

OR isObjectProperty(CeilingCovering.InteriorFinish.Material.quasiNonCombustibility)=TRUE )


(isObjectProperty(Room.Wall.InteriorFinish.Material.nonCombustibility)=TRUE

 OR isObjectProperty(Room.Wall.InteriorFinish.Material.quasiNonCombustibility)=TRUE

)

} 




Python Code 변환 예정



Modify
21
25381 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 24조의2조 3 항 2호 다 목

다. 그 밖의 심재는 불연재료·준불연재료 또는 난연재료인 것





//  건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 24조의2 (소규모 공장용도 건축물의 마감재료) 3항 2호 다목
Check(REFB_24-2_3_2_3){
	IF CS THEN KS
}

CS{
	getResult(REFB_24-2_3_2_1) = FALSE
	getResult(REFB_24-2_3_2_2) = FALSE
}

KS{
	getObjectProperty(Heartwood.Material.flameResistance) = TRUE
	OR getObjectProperty(Heartwood.Material.nonCombustibility) = TRUE
	OR getObjectProperty(Heartwood.Material.quasiNonCombustibility) = TRUE
} 




Python Code 변환 예정



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

5. 내부마감재료는 불연재료로 할 것





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 13조 (헬리포트 및 구조공간 설치 기준) 3항 5호



Check(REFB_13_3_5){

       KS

}





KS{

Space mySpace{
isObjectProperty(Space.isEscape) = TRUE
}

   isObjectProperty(mySpace.InteriorFinish.Material.nonCombustibility)=True

} 




Python Code 변환 예정



Modify
23
25620 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 20조의2조

제20조의2 (내화구조의 적용이 제외되는 공장건축물) 영 제56조제1항제3호 단서에서 "국토해양부령으로 정하는 공장"이란 별표 2의 업종에 해당하는 공장으로서 주요구조부가 불연재료로 되어 있는 2층 이하의 공장을 말한다. <개정 2005.7.22, 2008.3.14, 2009.7.1>





check(REFB_20-2){

     getResult(REFB_*_2) = True

     getObjectProperty(MainStructuralPart.Material.nonCombustibility)= TRUE

     getBuildingStoriesCount()<2;

} 




Python Code 변환 예정



Modify
24
26538 건축법 제 51조 2 항

② 방화지구 안의 공작물로서 간판, 광고탑, 그 밖에 대통령령으로 정하는 공작물 중 건축물의 지붕 위에 설치하는 공작물이나 높이 3미터 이상의 공작물은 주요부를 불연(不燃)재료로 하여야 한다.





//건축법 51조 (방화지구 안의 건축물) 2항



Check(BA_51_2){

       IF CS THEN KS 

}



CS{

   getResult(LPUA_37_1_4)=True

   

}



KS{



   Construction  myConstruction {

       

       isInstalled(Construction , Rooftop)=True

       OR Construction.height>=3 m 

   }



   isObjectProperty(myConstruction.MainStructuralPart.Material.nonCombustibility)=True

} 




Python Code 변환 예정



Modify
25
33230 건축법 시행령 제 61조 1 항 1호

1. 단독주택 중 다중주택·다가구주택





Check(EDBA_61_1_1){

IF CS THEN KS

}



Floor myfloor1 {  

isObjectProperty(ClassIINeighborhoodLivingFacility.PerformanceHall)=TRUE

OR isObjectProperty(ClassIINeighborhoodLivingFacility.ReligiousAssemblyFacility)=TRUE

OR isObjectProperty(ClassIINeighborhoodLivingFacility.ReligiousAssemblyFacility)=TRUE

AND getFloorArea()>=300

}



CS{

isExist(myfloor1)=TRUE

OR(getBuildingUsage()= "CulturalAndAssemblyFacility"

AND getBuildingUsage()!= "CulturalAndAssemblyFacility.WeddingHall")

OR getBuildingUsage()= "ReligiousFacility"

OR getBuildingUsage()= "CommercialFacility"

OR getBuildingUsage()= "TransportationFacility"

OR (getBuildingUsage()= "AmusementFacility"

OR (getBuildingUsage()!= "AmusementFacility.Pubs"

AND getBuildingUsage()!= "AmusementFacility.BarBusiness")

}





KS{

getFloorArea(Room)>=200m2

OR (isObjectProperty(MainStructuralPart.isFireResistantStructure)=TRUE

OR isObjectProperty(MainStructuralPart.Material.nonCombustibility)=TRUE

getFloorArea(Room)>=400m2

} 




Python Code 변환 예정



Modify
26
33232 건축법 시행령 제 61조 1 항 2호

2. 제2종 근린생활시설 중 공연장·종교집회장·인터넷컴퓨터게임시설제공업소·학원·독서실·당구장·다중생활시설의 용도로 쓰는 건축물





Check(EDBA_61_1_2){

IF CS THEN KS1 OR KS2}



Building myBuilding{

getBuildingUsage()="DetachedHouse.Multi-userHouses"

OR getBuildingUsage()="DetachedHouse.Multi-familyHouses" 

OR getBuildingUsage()="ClassIINeighborhoodLivingFacility.EducationalInstitute"

OR getBuildingUsage()="ClassIINeighborhoodLivingFacility.ReadingRooms

OR getBuildingUsage()="ClassIINeighborhoodLivingFacility.CommunalLivingFacility 

OR getBuildingUsage()="ClassIINeighborhoodLivingFacility.LodgingFacility"

OR getBuildingUsage()="ClassIINeighborhoodLivingFacility.MedicalFacility"

OR getBuildingUsage()="EducationAndResearchFacility.EducationalInstitute"

OR getBuildingUsage()="BusinessFacility.Oofficetels"

OR getBuildingUsage()="FuneralParlors"

}



MBU = getObjectUsage(myBuilding)



CS{

getBuildingUsage() = MBU



Floor myfloor{

Floor.number>=3

}



KS1{

(Floor.number>=3

AND getTotalfloorarea(Room)>=200m2)





KS2{isObjectProperty(MainStructuralPart.isFireResistantStructure)=TRUE

OR isObjectProperty(MainStructuralPart.Material.nonCombustibility)=TRUE

AND Floor.number>=3

getTotalfloorarea(Room)>=200m2

} 




Python Code 변환 예정



Modify
27
34679 건축법 시행령 제 61조 1 항

①법 제52조제1항에서 "대통령령으로 정하는 용도 및 규모의 건축물"이란 다음 각 호의 어느 하나에 해당하는 건축물을 말한다. 다만, 그 주요구조부가 내화구조 또는 불연재료로 되어 있고 그 거실의 바닥면적(스프링클러나 그 밖에 이와 비슷한 자동식 소화설비를 설치한 바닥면적을 뺀 면적으로 한다. 이하 이 조에서 같다) 200제곱미터 이내마다 방화구획이 되어 있는 건축물은 제외한다. <개정 2009.7.16, 2010.2.18, 2010.12.13, 2013.3.23, 2014.3.24, 2014.8.27, 2014.10.14, 2015.9.22, 2017.2.3>





//건축법 시행령 61조 (건축물의 마감재료) 1항

Check(EDBA_61_1){

   IF !CS THEN  KS

}



CS{

 (isObjectProperty(MainStructuralPart.isFireResistantStructure)=TRUE

 OR isObjectProperty(MainStructuralPart.Material.nonCombustibility)=TRUE)

 

 isFirePartition(Room.Floor, a, 200)=TRUE



 

}



KS{

    getResult(EDBA_61_1_1)=TRUE

    OR getResult(EDBA_61_1_2)=TRUE

    OR getResult(EDBA_61_1_3)=TRUE

    OR getResult(EDBA_61_1_4)=TRUE

    OR getResult(EDBA_61_1_5)=TRUE

    OR getResult(EDBA_61_1_6)=TRUE

    OR getResult(EDBA_61_1_7)=TRUE

} 




Python Code 변환 예정



Modify
28
36578 건축법 시행령 제 35조 1 항

① 법 제49조제1항에 따라 5층 이상 또는 지하 2층 이하인 층에 설치하는 직통계단은 국토해양부령으로 정하는 기준에 따라 피난계단 또는 특별피난계단으로 설치하여야 한다. 다만, 건축물의 주요구조부가 내화구조 또는 불연재료로 되어 있는 경우로서 다음 각 호의 어느 하나에 해당하는 경우에는 그러하지 아니하다. <개정 2008.10.29>





//건축법 시행령 35조(피난계단의 설치) 1항
Check(EDBA_35_1){
	IF (!CS1 AND !CS2 AND CS3) THEN KS
}

CS1 {
     isFireProofStructure(MainStructuralPart) = TRUE
     OR isObjectProperty(MainStructuralPart.Material.nonCombustibility) = TRUE
}

CS2 {
     getResult(EDBA_35_1_1) = TRUE
     OR getResult(EDBA_35_1_2) = TRUE
}

CS3{
     Floor myFloor {
          Floor.number > 5
		OR Floor.number <= -2
	}

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

	hasElement(myFloor, myStair) = TRUE
}

KS {
	isObjectProperty(myStair.isEscape) = TRUE
	OR isObjectProperty(myStair.isSpecialEscape) = TRUE
} 




Python Code 변환 예정



Modify
29
36608 건축법 시행령 제 46조 1 항

① 법 제49조제2항에 따라 주요구조부가 내화구조 또는 불연재료로 된 건축물로서 연면적이 1천 제곱미터를 넘는 것은 국토해양부령으로 정하는 기준에 따라 내화구조로 된 바닥·벽 및 제64조에 따른 갑종 방화문(국토해양부장관이 정하는 기준에 적합한 자동방화셔텨를 포함한다. 이하 이 조에서 같다)으로 구획(이하 "방화구획"이라 한다)하여야 한다. 다만, 「원자력법」 제2조에 따른 원자로 및 관계시설은 「원자력법」에서 정하는 바에 따른다.





//건축법 시행령 46조 (방화구획의 설치) 1항

Check(EDBA_46_1){

   IF (!CS1 AND CS2) THEN KS

}





CS1{

  getBuildingUsage()="NuclearReactorAndRelatedFacility"

}



CS2{

  (isObjectProperty(MainStructuralPart.isFireResistantStructure)=TRUE

  OR isObjectProperty(MainStructuralPart.Material.nonCombustibility)=TRUE))

  AND Building.grossFloorArea>1000 m2

}



KS{



  Floor myFloor{

      isObjectProperty(FloorSlab.isFireResistantStructure)=TRUE

  }

  Wall myWall{

      isObjectProperty(Wall.isFireResistantStructure)=TRUE

  }

  Door myDoor{

      isObjectProperty(Door.isStrictFireproofDoor)=TRUE

  }



  isFirePartition(Building, myFloor)=TRUE

  AND  isFirePartition(Building, myWall)=TRUE

  AND  isFirePatrition(Building, myDoor)=TRUE



  AND getResult(REFB_14_1)=TRUE

  AND getResult(REFB_14_2)=TRUE

  AND getResult(REFB_14_3)=TRUE



} 




Python Code 변환 예정



Modify
30
36615 건축법 시행령 제 46조 2 항 6호

6. 주요구조부가 내화구조 또는 불연재료로 된 주차장





//건축법 시행령 46조 (방화구획의 설치) 2항 6호

check(EDBA_46_2_6){

KS

}



KS{

  isObjectProperty(MainStructuralPart.isFireResistantStructure)=TRUE

  AND isObjectProperty(MainStructuralPart.Material.nonCombustibility)=TRUE

  AND getSpaceUsage()=ParkingLot

} 




Python Code 변환 예정



Modify
31
36649 건축법 시행령 제 57조 1 항

① 법 제50조제2항에 따라 연면적 1천 제곱미터 이상인 건축물은 방화벽으로 구획하되, 각 구획된 바닥면적의 합계는 1천 제곱미터 미만이어야 한다. 다만, 주요구조부가 내화구조이거나 불연재료인 건축물과 제56조제1항제5호 단서에 따른 건축물 또는 내부설비의 구조상 방화벽으로 구획할 수 없는 창고시설의 경우에는 그러하지 아니하다.





//  건축법 시행령 57조 (	대규모 건축물의 방화벽 등) 1항
Check(EDBA_57_1){
	IF (CS1 AND CS2) THEN KS
}

CS1{
	getObjectProperty(MainStructuralPart.isFireResistantStructure) = TRUE
	OR getObjectProperty(MainStructuralPart.Material.nonCombustibility) = TRUE
	OR getResult(EDBA_56_1_5) = TRUE
}

CS2{
	getObjectProperty(Building.grossFloorArea) >= 1000m2
}

KS{
	Space mySpace{
		getFloorArea(Space) < 1000m2
	}

	Space mySpace2{
		Space != mySpace
	}

	Wall myWall{
		isObjectProperty(Wall.isFireProofWall) = TRUE
	}

	isPartitioned(mySpace, mySpace2, myWall) = TRUE
} 




Python Code 변환 예정



Modify
32
36651 건축법 시행령 제 57조 3 항

③ 연면적 1천 제곱미터 이상인 목조 건축물의 구조는 국토해양부령으로 정하는 바에 따라 방화구조로 하거나 불연재료로 하여야 한다.





//  건축법 시행령 57조 (대규모 건축물의 방화벽 등) 3항

Check(EDBA_57_3){

	IF CS THEN KS

}



CS{

	getObjectProperty(Building.grossFloorArea) >= 1000m2

	getObjectProperty(Building.Structure.materialType) = "Timber"

}



KS{

	getObjectProperty(MainStructuralPart.Material.nonCombustibility) = TRUE

	OR getObjectProperty(MainStructuralPart.isFireProofStructure) = TRUE

} 




Python Code 변환 예정



Modify
33
37352 건축법 시행령 제 34조 1 항

① 건축물의 피난층(직접 지상으로 통하는 출입구가 있는 층을 말한다. 이하 같다) 외의 층에서는 피난층 또는 지상으로 통하는 직통계단(경사로를 포함한다. 이하 같다)을 거실의 각 부분으로부터 계단(거실로부터 가장 가까운 거리에 있는 계단을 말한다)에 이르는 보행거리가 30미터 이하가 되도록 설치하여야 한다. 다만, 건축물(지하층에 설치하는 것으로서 바닥면적의 합계가 300제곱미터 이상인 공연장·집회장·관람장 및 전시장은 제외한다)의 주요구조부가 내화구조 또는 불연재료로 된 건축물은 그 보행거리가 50미터(층수가 16층 이상인 공동주택은 40미터) 이하가 되도록 설치할 수 있으며, 자동화 생산시설에 스프링클러 등 자동식 소화설비를 설치한 공장으로서 국토해양부령으로 정하는 공장인 경우에는 그 보행거리가 75미터(무인화 공장인 경우에는 100미터) 이하가 되도록 설치할 수 있다. <개정 2009.7.16>





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

Check(EDBA_34_1){
     KS
}

KS{
Floor myFloor{
      isObjectProperty(Floor.isEscape) = TRUE
}

Space mySpace{
      getObjectProperty(Space.usage)="PerformanceHall"
      OR getObjectProperty(Space.usage)="AssemblyHall"
      OR getObjectProperty(Space.usage)="Auditorium"	
      OR getObjectProperty(Space.usage)="ExhibitionHall"
}

Door myDoor{
     isDirectlyAccessible(Door, Ground)=TRUE
}

Stair myStair{
     isObjectProperty(Stair.isDirect)=TRUE
     isAccessible(Stair,myFloor)=TRUE
     OR isAccessible(Stair,Ground)=TRUE
}

Ramp myRamp{
     isAccessible(Ramp,myFloor)=TRUE
     OR isAccessible(Ramp,Ground)=TRUE
}

Floor myFloor2{
     isObjectProperty(Floor.isEscape)=FALSE
     OR hasObject(Floor, myDoor)=FALSE
}

	Zone myZone{

		isDirectlyAccessible(myStair, Zone)=FALSE

	}

 

IF

	getFloorNumber(mySpace)>0

	getFloorArea(mySpace)<=300 m2

	isFireResistantStructure(MainStructuralPart)=TRUE

	OR isObjectProperty(MainStructuralPart.Material.nonCombustibility)=TRUE 

	THEN IF        getBuildingStoriesCount()>=16

	               getBuildingUsage()="MultiUnitHouse"

	          THEN ED= 40 

	ELSE THEN   ED=50               

	END IF



ELSE IF   

	getBuildingUsage() = "Factory" 

	isExist(ExtinguishingSystem)=TRUE 

	isObjectProperty(ExtinguishingSystem.isAutomatic)=TRUE

	getResult(REFB_8_2)=TRUE

	THEN IF   	getBuildingUsage() = "UnmannedFactory" 

			THEN ED=100

	ELSE THEN  ED=75

	END IF 



ELSE THEN ED=30

	END IF 



	(hasObject(myFloor,myStair)=TRUE

	hasObject(myZone, myStair)=TRUE

	getObjectDistance(Room,myStair, 1)<=ED)

	OR 

	(hasObject(myFloor,myRamp)=TRUE

	hasObject(myZone, myRamp)=TRUE

	getObjectDistance(Room,myRamp, 1)<=ED)

} 








max_route_length = 30

def Check():
    evac_storey_exist = False
    stories = SELECT('storey')

    for storey in stories:
        if storey.SELECT('is evacuation storey').BOOL() == True:
            evac_storey_exist = True
            break

    if evac_storey_exist == False:
        ERROR('피난층이 존재하지 않습니다.')
        return

    for storey in stories:
        if storey.SELECT('is evacuation storey').BOOL() == True:
            continue

        stairs = storey.SELECT('direct stair')

        if stairs.COUNT() == 0:
            storey.ERROR(storey.SELECT('name').STRING() + '에 직통계단이 존재하지 않습니다.')
            continue

        for space in storey.SELECT('space'):
            route_length = -1
            for route in space.SELECT('escape route', stairs):
                length = route.SELECT('length').UNIT('m').NUMBER()
                if length > 0:
                    if route_length < 0:
                        route_length = length
                    else:
                        route_length = min([route_length, length])
            if route_length < 0:
                space.ERROR(space.SELECT('name').STRING() + '부터 직통계단까지 갈 수 없다.')
            elif route_length > max_route_length:
                space.ERROR(space.SELECT('name').STRING() + '부터 직통계단까지의 거리가 멀다 : ' + str(route_length))
            else:
                space.SUCCESS(space.SELECT('name').STRING() + ' : ' + str(route_length)) 





Modify
34
71635 건축법 시행령 제 81조 3 항 2호

2. 마감재료가 불연재료일 것





//  건축법 시행령 81조 (맞벽건축 및 연결복도) 3항 2호
Check(EDBA_81_3_2){
	KS
}

KS{
	getObjectProperty(Wall.Finish.Material.nonCombustibility) = TRUE
} 




Python Code 변환 예정



Modify
35
19922 연결살수설비의 화재안전기준(NFSC 503) 제 5조 1 항 3호

3. 천장(상층이 있는 경우에는 상층바닥의 하단을 포함한다. 이하 같다)과 반자를 불연재료 또는 준불연재료로 설치하고 그 내부에 습식으로 배관을 설치하는 경우





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



Check(NFSC503_5_1_3){

	KS

}

KS{

	(isObjectProperty(Ceiling.Material.nonCombustibility)=TRUE

	OR isObjectProperty(Ceiling.Material.quasiNonCombustibility)=TRUE)

	(isObjectProperty(CeilingCovering.Material.nonCombustibility)=TRUE

	OR isObjectProperty(CeilingCovering.Material.quasiNonCombustibility)=TRUE)

	SprinklerSystem mySprinklerSystem{
SprinklerSystem.type = "WetPipeSprinklerSystem"
}

	isInstalled(mySprinklerSystem, Ceiling)=TRUE

	isInstalled(mySprinklerSystem, CeilingCovering)=TRUE

} 




Python Code 변환 예정



Modify
36
20480 연결송수관설비의 화재안전기준(NFSC 502) 제 5조 3 항 3호

3. 천장(상층이 있는 경우에는 상층바닥의 하단을 포함한다. 이하 같다)과 반자를 불연재료 또는 준불연재료로 설치하고 소화배관 내부에 항상 소화수가 채워진 상태로 설치하는 경우





//연결송수관설비의 화재안전기준(NFSC 502) 5조 (배관) 3항 3호

Check(NFSC502_5_3_3){
     KS
}

KS{
   
    (  isObjectProperty(Ceiling.Material.quasiNonCombustibility)=True
      OR isObjectProperty(Ceiling.Material.nonCombustibility)=True
    )

    (
       isObjectProperty(CeilingCovering.Material.quasiNonCombustibility)=True
       OR isObjectProperty(CeilingCovering.Material.nonCombustibility)=True
     )


}
 




Python Code 변환 예정



Modify
    1      
 

Related Sites

국토부 BIM과제-1st  |   Ministry of Land, Infrasrtucture and Transport   |   Korea Agency for Infrastructure Technology Advancement  |   Space and Design IT Lab   |   Yonsei University
This is Design IT Lab server's restricted area. Authorized users could access this website.