설계품질검토 대상법규   |   조항단위 법규   |   문장단위 법규   |   KBimCode-Assess 연동모듈   |   KBimCode DB   |   주어부 - 객체,속성 DB   |   서술부 - 함수 DB   |   관계부 - 문장관계   |   룰셋생성모듈   |  
(2025-06-28 기준) 설계품질검토용 건축법 및 관련법규 - KBIMCode (문장단위)
      KBIMCode - KBimAssess Python Code     KBIMCode - 체크리스트 단위     KBIMCode - 조항단위
  ◁prev 1   2   3   4   5   6   7   8   9   10   next▷ NEXT10▶
6 / 12 page Total 2500 / 4000 records
Select
ALL
None
#
Law
Jo
JO Name
HANG
HO
MOK
Text
Search!
1
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 24조 4 항

④영 제61조제1항제2호에 따른 공동주택에는 「다중이용시설 등의 실내공기질관리법」 제11조제1항 및 같은 법 시행규칙 제10조에 따라 환경부장관이 고시한 오염물질방출 건축자재를 사용하여서는 아니 된다. <신설 2006.6.29, 2010.12.30>





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


Check(REFB_24_4){
IF CS THEN KS
}

Building myBuilding{
getResult(EDBA_61_1_2)=TRUE
}

CS{
isExist(myBuilding)=TRUE
}

KS{
isObjectProperty(myBuilding.Material.isEmittingPollutant)=FALSE
}
 




Python Code 변환 예정



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

2. 심재





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 24조의2
Check(REFB_24-2_3_2){
   KS
}

KS{
   getResult(REFB_24-2_3_2_가)= True
   OR getResult(REFB_24-2_3_2_나)= True
   OR getResult(REFB_24-2_3_2_다)= True
} 




Python Code 변환 예정



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

가. 발포 폴리스티렌 단열재로서 비드보온판 4호 이상인 것





//  건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 24조의2 (소규모 공장용도 건축물의 마감재료) 3항 2호 가목

Check(REFB_24-2_3_2_1){

	KS

}



KS{

	getObjectMaterial(Heartwood) = "FiringPolystyreneInsulation"

} 




Python Code 변환 예정



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

나. 경질 폴리우레탄 폼 단열재로서 보온판 2종2호 이상인 것





//  건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 24조의2 (소규모 공장용도 건축물의 마감재료) 3항 2호 나목

Check(REFB_24-2_3_2_2){

	KS

}



KS{

	getObjectMaterial(Heartwood) = "ChangePolyurethanFormInsulation"

} 




Python Code 변환 예정



5
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 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 변환 예정



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

①법 제53조에 따라 건축물에 설치하는 지하층의 구조 및 설비는 다음 각 호의 기준에 적합하여야 한다. <개정 2003.1.6, 2005.7.22, 2006.6.29, 2010.4.7, 2010.12.30>





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


KS{
	getResult(REFB_25_1_1) = TRUE
	AND getResult(REFB_25_1_1-2) = TRUE
	AND getResult(REFB_25_1_2) = TRUE
	AND getResult(REFB_25_1_3) = TRUE
	AND getResult(REFB_25_1_4) = TRUE
} 




Python Code 변환 예정



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

① 영 제34조제3항 및 제4항에 따라 설치하는 피난안전구역(이하 "피난안전구역"이라 한다)은 해당 건축물의 1개층을 대피공간으로 하며, 대피에 장애가 되지 아니하는 범위에서 기계실, 보일러실, 전기실 등 건축설비를 설치하기 위한 공간과 같은 층에 설치할 수 있다. 이 경우 피난안전구역은 건축설비가 설치되는 공간과 내화구조로 구획하여야 한다. <개정 2012.1.6>





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 8조의2 (피난안전구역의 설치기준) 1항
check(REFB_8-2_1){
	KS1 AND IF CS THEN KS2
}

	Zone myZone{
		isObjectProperty(Zone.isEgressSafetyZone) = TRUE
	}

	Space mySpace{
		hasSpace(Space, FacilitiesOfABuilding)
	}

	Structure myStructure{
		isObjectProperty(Space.isfireResistantStructure) = TRUE
	}

KS1{
 	BSC = getBuildingStoriesCount()
	getFloorNumber(myZone) <= BSC
}

CS{
	getFloorNumber(mySpace) = getFloorNumber(myZone)
}

KS2{
	isPartitioned(myZone, myStructure, mySpace) = TRUE
}
 




Python Code 변환 예정



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

7. 별표 1의2에서 정하는 기준에 따라 산정한 면적 이상일 것





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 8조의2 (직통계단의 설치기준) 3항7호
check(REFB_8-2_3_7){
    getResult(REFB_*_1-2)=TRUE
} 




Python Code 변환 예정



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

8. 피난안전구역의 높이는 2.1미터 이상일 것





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 8조의2 (직통계단의 설치기준) 3항8호
check(REFB_8-2_3_8){

   Zone myZone {
      geObjectProperty(Zone.isEgressSafetyZone) = TRUE
   }
   getSpaceHeight(myZone)>=2.1 m 
} 




Python Code 변환 예정



10
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 8조의2조 3 항 9호

9. 「건축물의 설비기준 등에 관한 규칙」 제14조에 따른 배연설비를 설치할 것





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 8조의2 (직통계단의 설치기준) 3항9호
check(REFB_8-2_3_9){

   isExist(SmokeExhaustionSystem)=TRUE
   getResult(RFB_14_2)=TRUE
   getResult(RFB_14_2_1)=TRUE
   getResult(RFB_14_2_4)=TRUE
} 




Python Code 변환 예정



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

②제1항에 따른 피난계단 및 특별피난계단의 구조는 다음 각호의 기준에 적합하여야 한다. <개정 2000.6.3, 2003.1.6, 2005.7.22, 2010.4.7, 2012.1.6>





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 9조 (피난계단 및 특별피난계단의 구조) 2항
check (REFB_9_2){
	getResult(REFB_9_2_1) = TRUE 
	getResult(REFB_9_2_2) = TRUE
	getResult(REFB_9_2_3) = TRUE
	
}
 




Python Code 변환 예정



12
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 9조 2 항 3호 가 목

가. 건축물의 내부와 계단실은 노대를 통하여 연결하거나 외부를 향하여 열 수 있는 면적 1제곱미터 이상인 창문(바닥으로부터 1미터 이상의 높이에 설치한 것에 한한다) 또는 「건축물의 설비기준 등에 관한 규칙」 제14조의 규정에 적합한 구조의 배연설비가 있는 면적 3제곱미터 이상인 부속실을 통하여 연결할 것





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

check (REFB_9_2_3_1){

CS THEN KS 

}

CS {

isExist(Stair.Space) = TRUE

}

KS {

	Window myWindow {

		getObjectProperty(Window.area)>= 1 m2

		isObjectProperty(Window.isExternalDirection) = TRUE

		 getElementDistance(Window, FloorSlab, a)>=1m



}

	SmokeExhaustionSystem mySmokeExhaustionSystem {

		getElement(SmokeExhaustionSystem)

		getResult(RFB_14)=TRUE

}



	Space mySpace1{

		getSpace(“Balcony”)

}

	Space mySpace2{

		isExternal(Space)=FALSE

}

	Space mySpace3{

		getSpace(“AncillaryRoom”)

		getFloorArea(Space.Floor, ) >= 3㎡

		hasElement(Space,mySmokeExhaustionSystem) = TRUE

		hasElement(Space,myWindow) = TRUE

}

isGoThrough(mySpace2,Stair.Space, ,mySpace1)

OR isGoThrough(mySpace2,Stair.Space, ,mySpace3) 




Python Code 변환 예정



13
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 9조 2 항 3호 자 목

자. 건축물의 내부에서 노대 또는 부속실로 통하는 출입구에는 제26조에 따른 갑종방화문을 설치하고, 노대 또는 부속실로부터 계단실로 통하는 출입구에는 제26조에 따른 갑종방화문 또는 을종방화문을 설치할 것. 이 경우 갑종방화문 또는 을종방화문은 언제나 닫힌 상태를 유지하거나 화재로 인한 연기, 온도, 불꽃 등을 가장 신속하게 감지하여 자동적으로 닫히는 구조로 하여야 한다.





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

check (REFB_9_2_3_9){

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

}

Space mySpace1 {

	isExternal(Space)=FALSE

}

Space mySpace2 = getSpace(“Balcony”) + getSpace(“AncillaryRoom”)

CS1{

	

	isGoThrough(mySpace1,Door,mySpace2) = TRUE

}

KS1 {

	isObjectProperty(Door.isStrictFireproofDoor)= TRUE

}



CS2{

	isGoThrough(mySpace2,Door,Stair.Space) = TRUE

}

KS2{

	isObjectProperty(Door.isFireproofDoor)= TRUE

} 




Python Code 변환 예정



14
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 13조 1 항

①영 제40조제3항제1호에 따라 건축물에 설치하는 헬리포트는 다음 각호의 기준에 적합하여야 한다. <개정 2003.1.6, 2010.4.7, 2012.1.6>





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

Check(REFB_13_1){
        KS
}

KS{
   getResult(REFB_13_1_1)=True
   getResult(REFB_13_1_2)=True
   getResult(REFB_13_1_3)=True
} 




Python Code 변환 예정



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

2. 헬리포트의 중심으로부터 반경 12미터 이내에는 헬리콥터의 이·착륙에 장애가 되는 건축물, 공작물, 조경시설 또는 난간 등을 설치하지 아니할 것





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



Check(REFB_13_1_2){

        KS

}



KS{

    Space mySpace{



    // 헬리포트의 중심으로부터 반경 12미터 이내의 공간        

   }



   isInstalled(Building, mySpace)=False

   isInstalled(Construction, mySpace)=False

   isInstalled(LandscapeFacility, mySpace)=False

   isInstalled(Railing, mySpace)=False

} 




Python Code 변환 예정



16
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 13조 2 항

② 영 제40조제3항제1호에 따라 옥상에 헬리콥터를 통하여 인명 등을 구조할 수 있는 공간을 설치하는 경우에는 직경 10미터 이상의 구조공간을 확보하여야 하며, 구조공간에는 구조활동에 장애가 되는 건축물, 공작물 또는 난간 등을 설치해서는 안 된다. 이 경우 구조공간의 표시기준 등에 관하여는 제1항제3호 및 제4호를 준용한다. <신설 2010.4.7, 2012.1.6>





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



Check(REFB_13_2){

    KS

}



KS{  

    Space mySpace{



      getObjectDiameter(Space)>=10 m

    }



   isInstalled(Building, mySpace)=False

   isInstalled(Construction, mySpace)=False

   isInstalled(Railing, mySpace)=False

} 




Python Code 변환 예정



17
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 13조 3 항

③ 영 제40조제3항제2호에 따라 설치하는 대피공간은 다음 각 호의 기준에 적합하여야 한다. <신설 2012.1.6>





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

Check (REFB_13_3){
    KS
}

KS{
    getResult(REFB_13_3_1)=True
    getResult(REFB_13_3_2)=True
    getResult(REFB_13_3_3)=True
    getResult(REFB_13_3_4)=True
    getResult(REFB_13_3_5)=True
    getResult(REFB_13_3_7)=True
} 




Python Code 변환 예정



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

1. 대피공간의 면적은 지붕 수평투영면적의 10분의 1 이상 일 것





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



Check (REFB_13_3_1){

      KS

}



KS{

Space mySpace{
isObjectProperty(Space.isEscape) = TRUE
}
  mySpace.area > Roof.horizontalProjectionArea*0.1

} 




Python Code 변환 예정



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

2. 특별피난계단 또는 피난계단과 연결되도록 할 것





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



Check(REFB_13_3_2){

     KS

}



KS{



   Stair myStair {

    isObjectProperty(Stair.isEscape)=True   

   }



   Stair myStair2 {

    isObjectProperty(Stair.isSpecialEscape)=True   

   }

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

   isConnected(mySpace, myStair )=True 

   OR isConnected(mySpace, myStair2 )=True 

} 




Python Code 변환 예정



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

3. 출입구·창문을 제외한 부분은 해당 건축물의 다른 부분과 내화구조의 바닥 및 벽으로 구획할 것





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



Check(REFB_13_3_3){

     KS

}







KS{ 

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

   isFirePartition(mySpace)=True

} 




Python Code 변환 예정



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

4. 출입구는 유효너비 0.9미터 이상으로 하고, 그 출입구에는 갑종방화문을 설치할 것





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



Check(REFB_13_3_4){

  KS

}



KS{

     isObjectProperty(Door.isEntrance)=True

  getObjectProperty( myDoor.effectiveWidth) > 0.9 m

   isObjectProperty(Door.isStrictFireproofDoor)=True 




Python Code 변환 예정



22
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 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 변환 예정



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

7. 관리사무소 등과 긴급 연락이 가능한 통신시설을 설치할 것





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

check(REFB_13_3_7){

     KS

}

KS{

	Space mySpace{

	isObjectProperty(Space.isEscape) = TRUE

	}

	hasObject(mySpace, WarningAndCommunicationFacility) = TRUE

} 




Python Code 변환 예정



24
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 15조 7 항

⑦ 제1항 및 제2항에도 불구하고 영 제34조제4항 후단에 따라 피난층 또는 지상으로 통하는 직통계단을 설치하는 경우 계단 및 계단참의 너비는 다음 각 호의 구분에 따른 기준에 적합하여야 한다. <신설 2012.1.6>





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

CS{

Floor myFloor{
isObjectProperty(Floor.isEscape)=TRUE
}
      isAccessible(Stair,myFloor) 
      OR isAccessible(Stair,Ground)
}

KS{
      getResult(REFP_15_7_1)
      OR getResult(REFP_15_7_2)
} 








min_stair_width = 1.5

def Check():
    for building in SELECT('building'):
        bldg_type = building.SELECT('building type').STRING()
        sub_type = building.SELECT('prop', '세부용도').STRING()

        if bldg_type is "공통주택":
            min_stair_width = 1.2
        else :
            min_stair_width = 1.5

        d_stairs = building.SELECT('direct stair')

        for d_stair in d_stairs:
            s_stair_w = d_stair.SELECT('width').Unit(m)

            breker = True
            for stair_stories in  d_stair.SELECT('storey'):
                if stair_stories.SELECT('is evacuation storey').BOOL() is True :
                    break
                elif stair_stories.SELECT('level') is "Ground" :
                    break
                else:
                    breaker = False
            if breaker is True:
                d_stair.SUCCESS('해당계단은 피난층이나 지상으로 통하는 직통계단이 아닙니다.')
                break
            if d_stair_w >= min_stair_width:
                d_stair.SUCCESS('계단의너비()' + d_stair_w + ')가 '  + '>=' + min_stair_width)
            else:
                d_stair.ERROR('계단의너비()' + d_stair_w + ')가 '  + '<' + min_stair_width)                
                
                 





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

1. 공동주택: 120센티미터 이상





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

KS{
      getBuildingUsage() = "MultiUnitHouse"
      AND getStairStepWidth >= 1.2M
      AND getPaceWidth >= 1.2M
} 









min_stair_width = 1.5

def Check():
    for building in SELECT('building'):
        bldg_type = building.SELECT('building type').STRING()
        sub_type = building.SELECT('prop', '세부용도').STRING()

        if bldg_type is "공통주택":
            min_stair_width = 1.2
        else :
            min_stair_width = 1.5

        d_stairs = building.SELECT('direct stair')

        for d_stair in d_stairs:
            s_stair_w = d_stair.SELECT('width').Unit(m)

            breker = True
            for stair_stories in  d_stair.SELECT('storey'):
                if stair_stories.SELECT('is evacuation storey').BOOL() is True :
                    break
                elif stair_stories.SELECT('level') is "Ground" :
                    break
                else:
                    breaker = False
            if breaker is True:
                d_stair.SUCCESS('해당계단은 피난층이나 지상으로 통하는 직통계단이 아닙니다.')
                break
            if d_stair_w >= min_stair_width:
                d_stair.SUCCESS('계단의너비()' + d_stair_w + ')가 '  + '>=' + min_stair_width)
            else:
                d_stair.ERROR('계단의너비()' + d_stair_w + ')가 '  + '<' + min_stair_width)                
                
                 





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

2. 공동주택이 아닌 건축물: 150센티미터 이상





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

KS{
      getBuildingUsage() != "MultiUnitHouse"
      AND getStairStepWidth >= 1.5M
      AND getPaceWidth >= 1.5M
} 









min_stair_width = 1.5

def Check():
    for building in SELECT('building'):
        bldg_type = building.SELECT('building type').STRING()
        sub_type = building.SELECT('prop', '세부용도').STRING()

        if bldg_type is "공통주택":
            min_stair_width = 1.2
        else :
            min_stair_width = 1.5

        d_stairs = building.SELECT('direct stair')

        for d_stair in d_stairs:
            s_stair_w = d_stair.SELECT('width').Unit(m)

            breker = True
            for stair_stories in  d_stair.SELECT('storey'):
                if stair_stories.SELECT('is evacuation storey').BOOL() is True :
                    break
                elif stair_stories.SELECT('level') is "Ground" :
                    break
                else:
                    breaker = False
            if breaker is True:
                d_stair.SUCCESS('해당계단은 피난층이나 지상으로 통하는 직통계단이 아닙니다.')
                break
            if d_stair_w >= min_stair_width:
                d_stair.SUCCESS('계단의너비()' + d_stair_w + ')가 '  + '>=' + min_stair_width)
            else:
                d_stair.ERROR('계단의너비()' + d_stair_w + ')가 '  + '<' + min_stair_width)                
                
                 





27
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 15조 8 항

⑧ 승강기기계실용 계단, 망루용 계단 등 특수한 용도에만 쓰이는 계단에 대해서는 제1항부터 제7항까지의 규정을 적용하지 아니한다. <개정 2012.1.6>





check(REFP_15_8){

     KS

}



KS{

      getObjectUsage(Stair)= "ElevatorMachineRoom" OR "WatchTower"

      AND getResult(REFP_15_1)=FALSE

      AND getResult(REFP_15_2)=FALSE

      AND getResult(REFP_15_3)=FALSE

      AND getResult(REFP_15_4)=FALSE

      AND getResult(REFP_15_5)=FALSE

      AND getResult(REFP_15_6)=FALSE

      AND getResult(REFP_15_7)=FALSE

} 




Python Code 변환 예정



28
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 17조 1 항

①영 제51조에 따라 채광을 위하여 거실에 설치하는 창문등의 면적은 그 거실의 바닥면적의 10분의 1 이상이어야 한다. 다만, 거실의 용도에 따라 별표 1의3에 따라 조도 이상의 조명장치를 설치하는 경우에는 그러하지 아니하다. <개정 2000.6.3, 2010.4.7, 2012.1.6>





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 17조 (채광 및 환기를 위한 창문등) 1항

check(REFB_17_1){

	IF (getResult(REFB_*_1-3) = FALSE) THEN KS

}



KS{ 

	Window myWindow{

		hasElement(Room, myWindow) = TRUE

	}

	

	getElementArea(myWindow) >= getFloorArea(Room)*0.1

} 




Python Code 변환 예정



29
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 29조

제29조(피난용승강기의 설치 및 구조)





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



Check(REFB_29_1){

   IF (!CS1 AND CS2)THEN KS 

}



CS1{



   Building myBuilding{

         isObjectProperty(Building.isQuasiHighriseBuilding )=True

   }



    getBuildingUsage()="myBuilding.MultiUnitHouse"

}

CS2{

    isObjectProperty(Building.isHighBuilding) = TRUE

}

KS{

   getResult(REFB_30)=True

   getResult(REFB_29_2)=True

} 




Python Code 변환 예정



30
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 29조 2 항

② 제1항에 따라 고층건축물에 설치하는 피난용승강기의 구조는 「승강기시설 안전관리법」으로 정하는 바에 따른다.





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 29조 (피난용승강기의 설치 및 구조) 2항 

Check(REFB_29_2){
       KS
}

KS{
   getResult(Unimplemented_EFSMA)
    
} 




Python Code 변환 예정



31
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 30조

제30조(피난용승강기의 설치기준) 제29조제1항에 따른 피난용승강기의 구조와 설비는 다음 각 호의 기준에 적합하여야 한다.





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 30조 (피난용승강기의 설치기준)
check(REFB_30){
      IF CS THEN KS
}
CS{
	getResult(REFB_29_1) = TRUE
}
KS{
	getResult(REFB_30_0_1) = TRUE
	getResult(REFB_30_0_2) = TRUE
	getResult(REFB_30_0_3) = TRUE
} 




Python Code 변환 예정



32
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조

제3조(내화구조) 영 제2조제7호에서 "국토교통부령으로 정하는 기준에 적합한 구조"란 다음 각 호의 어느 하나에 해당하는 것을 말한다. <개정 2000.6.3, 2005.7.22, 2006.6.29, 2008.3.14, 2008.7.21, 2010.4.7, 2013.3.23>





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조)

Check (REFB_3){
    getResult(REFB_3_1)=TRUE
    getResult(REFB_3_4)=TRUE
    getResult(REFB_3_6)=TRUE
    getResult(REFB_3_7)=TRUE
    getResult(REFB_3_8)=TRUE

} 




Python Code 변환 예정



33
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 8조 2 항

② 영 제34조제1항 단서에서 "국토교통부령으로 정하는 공장"이란 반도체 및 디스플레이 패널을 제조하는 공장을 말한다. <신설 2010.4.7, 2013.3.23>





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 8조 (직통계단의 설치기준) 2항



Check(REFB_8_2){

getObjectProperty(Building.usage)=“Factory.SemiconductorAndDisplayPanelManufacturingFactory"

} 




Python Code 변환 예정



34
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 17조 4 항

④ 영 제51조제3항에서 "국토교통부령으로정하는 기준"이란 높이 1.2미터 이상의 난간이나 그 밖에 이와 유사한 추락방지를 위한 안전시설을 말한다. <신설 2010.4.7, 2013.3.23>





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 17조 (채광 및 환기를 위한 창문등) 4항

check(REFB_17_4){

	getObjectHeight(Railing) >= 1.2 m

	OR getObjectHeight(FallPreventionSafetyFacility) >= 1.2 m

	

} 




Python Code 변환 예정



35
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 19조 2 항

②제1항에 따른 경계벽 및 간막이벽은 소리를 차단하는데 장애가 되는 부분이 없도록 다음 각 호의 어느 하나에 해당하는 구조로 하여야 한다. 다만, 다가구주택 및 공동주택의 세대간의 경계벽인 경우에는 「주택건설기준 등에 관한 규정」이 정하는 바에 의한다. <개정 2005.7.22, 2008.3.14, 2010.4.7, 2013.3.23>





check(REFB_19_2){
     KS
}

KS{
   getResult(REFB_19_2_1)= TRUE
   OR getResult(REFB_19_2_2)= TRUE
   OR getResult(REFB_19_2_3)= TRUE
   OR getResult(REFB_19_2_4)= TRUE
   OR getResult(REFB_19_2_5)= TRUE
} 




Python Code 변환 예정



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

①영 제61조제1항제4호가목 및 제2항제1호나목에서 "국토교통부령으로 정하는 화재위험이 적은 공장"이란 각각 별표 3의 업종에 해당하는 공장을 말한다. 다만, 공장의 일부 또는 전체를 기숙사 및 구내식당의 용도로 사용하는 건축물을 제외한다. <개정 2008.3.14, 2010.12.30, 2012.1.6, 2013.3.23>





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

check(REFB_24-2_1){

      KS

}

KS{

	getResult(REFB_*_3) = TRUE

	(getBuildingUsage() != "Dormitory"

	OR getBuildingUsage() != "Cafeteria"

	OR getSpaceUsage() != "Dormitory"

	OR getSpaceUsage() != "Cafeteria")

} 




Python Code 변환 예정



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

②영 제61조제1항제4호나목에서 "국토교통부령으로 정하는 출구"란 건축물의 내부의 각 부분으로부터 출구(가장 가까운 거리에 있는 출구를 말한다)에 이르는 보행거리가 30미터 이하가 되도록 설치된 유효너비 1.5미터 이상의 출구를 말한다. <개정 2008.3.14, 2010.12.30, 2013.3.23>





// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 24조의2 (소규모 공장용도 건축물의 마감재료) 2항
check(REFB_24-2_2){
      KS
}
KS{
	Door myDoor{
	isObjectProperty(Door.isEntrance) = TRUE
	}
	getObjectDistance(Building.IndoorElement, Door) <= 30
	isObjectProperty(Door.effectiveWidth) >= 1.5m
} 




Python Code 변환 예정



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

③영 제61조제1항제4호다목에서 "국토교통부령으로 정하는 성능을 구비한 복합자재"란 자재의 철판과 심재(心材)가 「산업표준화법」에 따른 한국산업규격이 정하는 바에 따라 다음 각 호의 품질기준을 갖춘 경우를 말한다. <개정 2006.6.29, 2008.3.14, 2010.12.30, 2013.3.23>





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

Check(REFB_24-2_3){
    KS
}

KS{
    getResult(REFB_24-2_3_2)=True
} 




Python Code 변환 예정



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

③ 피난안전구역의 구조 및 설비는 다음 각 호의 기준에 적합하여야 한다. <개정 2012.1.6, 2014.11.19, 2017.7.26>





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 8조의2 (피난안전구역의 설치기준) 3항
Check(REFB_8-2_3){
 
   getResult(REFB_8-2_3_2)=TRUE
   getResult(REFB_8-2_3_3)=TRUE
   getResult(REFB_8-2_3_4)=TRUE
   getResult(REFB_8-2_3_5)=TRUE
   getResult(REFB_8-2_3_6)=TRUE
   getResult(REFB_8-2_3_7)=TRUE
   getResult(REFB_8-2_3_8)=TRUE
   getResult(REFB_8-2_3_9)=TRUE
}  




Python Code 변환 예정



40
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 15조의2조 1 항

①영 제48조의 규정에 의하여 건축물에 설치하는 복도의 유효너비는 다음 표와 같이 하여야 한다 img30607976 ┌───────────────┬────────────┬──────┐ │구분 │양옆에 거실이 있는 복도 │기타의 복도 │ ├───────────────┼────────────┼──────┤ │유치원ㆍ초등학교 │2.4미터 이상 │1.8미터 이상│ │중학교ㆍ고등학교 │ │ │ ├───────────────┼────────────┼──────┤ │공동주택ㆍ오피스텔 │1.8미터 이상 │1.2미터 이상│ ├───────────────┼────────────┼──────┤ │당해 층 거실의 바닥면적 │1.5미터 이상(의료시설의 │1.2미터 이상│ │합계가 200제곱미터 이상인 경우│복도 1.8미터 이상) │ │ └───────────────┴────────────┴──────┘





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조의2 (복도의 너비 및 설치기준) 1항
Check(EDBA_15-2_1){
    IF getBuildingUsage()="Kindergarten"
       OR getBuildingUsage()="ElementarySchool"
       OR getBuildingUsage()="MiddleSchool"
       OR getBuildingUsage()="HightSchool"
       THEN IF isExternal(Corridor)=FALSE
             THEN getObjectProperty(Corridor.effectiveWidth)>2.4 m   
     ELSE THEN  getObjectProperty(Corridor.effectiveWidth)>1.8 m
            END IF
     END IF  


     IF getBuildingUsage()="MultiUnitHouse"
       OR getBuildingUsage()="Officetel"
       THEN IF isExternal(Corridor)=FALSE
             THEN getObjectProperty(Corridor.effectiveWidth)>1.8 m
            ELSE THEN  getObjectProperty(Corridor.effectiveWidth)>1.2 m
            END IF
     END IF  


     IF getTotalFloorArea(Corridor.Floor.Room)>200 m2 
     THEN IF isExternal(Corridor)=FALSE
             THEN IF getBuildingUsage()="MedicalFacilities"
                       THEN getObjectProperty(Corridor.effectiveWidth)>1.8 m
                  ELSE THEN getObjectProperty(Corridor.effectiveWidth)>1.5 m
                  END IF
          ELSE THEN  getObjectProperty(Corridor.effectiveWidth)>1.2 m
          END IF
     END IF  
} 




Python Code 변환 예정



41
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 15조의2조 2 항

②문화 및 집회시설(공연장ㆍ집회장ㆍ관람장ㆍ전시장에 한한다), 종교시설 중 종교집회장, 노유자시설 중 아동 관련 시설ㆍ노인복지시설, 수련시설 중 생활권수련시설, 위락시설 중 유흥주점 및 장례식장의 관람석 또는 집회실과 접하는 복도의 유효너비는 제1항의 규정에 불구하고 다음 각 호에서 정하는 너비로 하여야 한다. <개정 2010.4.7>





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

check(REFB_15-2_2){

     IF CS THEN KS 

}



CS{

Space  mySpace{

getSpaceUsage(Space) = “AssemblyHall”

OR getSpaceUsage(Space) = “PerformanceHall”

}

    Corridor myCorridor{

       isAdjacent(mySpace,Corridor) = TRUE

    }



    (getBuildingUsage()="CulturalAndAssemblyFacility.PerformanceHall"

    OR getBuildingUsage()="CulturalAndAssemblyFacility.AssemblyHall"

    OR getBuildingUsage()="CulturalAndAssemblyFacility.Auditorium"

    OR getBuildingUsage()="CulturalAndAssemblyFacility.ExhibitionHall"

    OR getBuildingUsage()="ReligiousFacility.ReligiousAssemblyFacility"

    OR getBuildingUsage()="FacilitiesForTheAgedAndChildren.ChildrenRelatedFacility"

    OR getBuildingUsage()="FacilitiesForTheAgedAndChildren.WelfareFacilityForTheAged"

    OR getBuildingUsage()="Trainingfacility.TrainingFacilitiesInLiving "

    OR getBuildingUsage()="AmusementFacility.tavern"

    OR getBuildingUsage()="AmusementFacility.FuneralParlors" )

     

    isExist(myCorridor)=TRUE   

}



KS{



 

   getResult(REFB_15-2_2_1)=TRUE

   getResult(REFB_15-2_2_2)=TRUE

   getResult(REFB_15-2_2_3)=TRUE

} 








corridor_code = '33105'
std_floor_area = 200

corridor_code_label = '복도 공간분류코드'
std_floor_area_label = '기준 연면적'

def Check():
    for building in SELECT('building'):
        if building.SELECT('prop', '연면적').NUMBER() <= std_floor_area:
            continue

        bldg_use = building.SELECT('building type').STRING()
        sub_use = building.SELECT('prop', '세부용도').STRING()
        if not ((bldg_use == '문화 및 집회시설' and sub_use in ['공연장' ,'집회장', '관람장', '전시장'])
            or (bldg_use == '종교시설' and sub_use == '종교집회장')
            or (bldg_use == '노유자시설' and sub_use in ['아동관련시설' ,'노인복지시설'])
            or (bldg_use == '수련시설' and sub_use == '생활권수련시설')
            or (bldg_use == '위락시설' and sub_use == '유흥주점')
            or (bldg_use == '장례시설' and sub_use == '장례식장')):
            continue

        for storey in building.SELECT('storey'):
            area = 0.0
            corridors = []
            for space in storey.SELECT('space'):
                if space.SELECT('class code').STRING() == corridor_code:
                    corridors.append(space)
                
                area += space.SELECT('area').UNIT('m2').NUMBER()
            
            min_cor_w = 1.8
            if area < 500:
                min_cor_w = 1.5
            elif area >= 1000:
                min_cor_w = 2.4

            for space in corridors:    
                width = space.SELECT('min clear width').UNIT('m')
                w = width.NUMBER()

                if w < min_cor_w:
                    width.ERROR('유효너비: ' + str(w) + ' < ' + str(min_cor_w))
                else:
                    width.SUCCESS('유효너비: ' + str(w) + ' >= ' + str(min_cor_w)) 





42
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 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 변환 예정



43
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 1호 가 목

가. 철근콘크리트조 또는 철골철근콘크리트조로서 두께가 10센티미터 이상인 것





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 1호 가목

Check (REFB_3_0_1_가){
	KS
}
KS{
	getObjectProperty(Wall.Structure.materialType) = "ReinforcedConcrete" OR "SteelFramedReinforcedConcrete"
	getWallThickness(Wall) >= 10cm
}
 




Python Code 변환 예정



44
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 4호 가 목

가. 철근콘크리트조 또는 철골철근콘크리트조로서 두께가 10센티미터 이상인 것





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 4호 가목

Check (REFB_3_0_4_가){
	KS
}
KS{
	getObjectProperty(Wall.Structure.materialType) = "ReinforcedConcrete" OR "SteelFramedReinforcedConcrete"
	getObjectThickness(FloorSlab.Structure) >= 10cm
} 




Python Code 변환 예정



45
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 6호 가 목

가. 철근콘크리트조 또는 철골철근콘크리트조





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 6호 가목

Check (REFB_3_0_6_가){
	KS
}
KS{
	getObjectProperty(Roof.Structure.materialType) = "ReinforcedConcrete" OR "SteelFramedReinforcedConcrete"
} 




Python Code 변환 예정



46
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 7호 가 목

가. 철근콘크리트조 또는 철골철근콘크리트조





//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 7호 가목

Check (REFB_3_0_7_가){
	KS
}
KS{
	getObjectProperty(Stair.Structure.materialType) = "ReinforcedConcrete" OR "SteelFramedReinforcedConcrete"
} 




Python Code 변환 예정



47
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 조 1(표) 항

표





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

Check(REFB_15-2_1){
            KS
}

KS{

  IF (Building.usage="Kindergarten"
      OR Building.usage="ElementarySchool"
      OR Building.usage="MiddleAndHighSchool" )
      IF(isAdjacent(Corridor, Room)=True)
         THEN   Corridor.width>=2.4 m
            ELSE THEN  Corridor.width>=1.8 m                 
      END IF 

  ELSE IF( Building.usage="MultiUnitHouse"
           OR Building.usage="Officetels" )
         IF( isAdjacent(Corridor, Room)=True)
            TEHN  Corridor.width>=1.8 m
         ELSE THEN Corridor.width>=1.2 m
         END IF
  ELSE IF( Floor.One.Room.area > 200 m2) 
          IF(isAdjacent(Corridor, Room)=True)
             TEHN IF (Building.usage="MedicalFacility")
                   THEN Corridor.width>=1.8 m
             ELSE THEN  Corridor.width>=1.5 m
             
          ELSE THEN Corridor.width>=1.2 m
          END IF
  END IF

}














 




Python Code 변환 예정



48
건축법 제 47조 1 항

제47조(건축선에 따른 건축제한) ① 건축물과 담장은 건축선의 수직면(垂直面)을 넘어서는 아니 된다. 다만, 지표(地表) 아래 부분은 그러하지 아니하다.





//건축법 47조 (건축선에 따른 건축제한) 1항

Check(BA_47_1){
      KS
}

KS{
    Floor myFloor{
        Floor.number>0
    }
     isOverBldAlignment(myFloor)=False
} 




Python Code 변환 예정



49
건축법 제 47조 2 항

② 도로면으로부터 높이 4.5미터 이하에 있는 출입구, 창문, 그 밖에 이와 유사한 구조물은 열고 닫을 때 건축선의 수직면을 넘지 아니하는 구조로 하여야 한다.





//건축법 47조 (건축선에 따른 건축제한) 2항

Check(BA_47_2){
     KS
}

KS{
    Floor myFloor{
          getVerticleDistance(Floor, "도로면" )<=4.5
    }
    isOverBldAlignment(myFloor, 1)=False
} 




Python Code 변환 예정



50
건축법 제 55조

제55조(건축물의 건폐율) 대지면적에 대한 건축면적(대지에 건축물이 둘 이상 있는 경우에는 이들 건축면적의 합계로 한다)의 비율(이하 "건폐율"이라 한다)의 최대한도는 「국토의 계획 및 이용에 관한 법률」 제77조에 따른 건폐율의 기준에 따른다. 다만, 이 법에서 기준을 완화하거나 강화하여 적용하도록 규정한 경우에는 그에 따른다.





//	건축법 55조 (건축물의 건폐율)
Check(BA_55){
	IF CS THEN KS
}

KS{
	getResult(LPUA_77_1) = TRUE
	getResult(LPUA_77_2) = TRUE
	getResult(LPUA_77_3) = TRUE
} 




Python Code 변환 예정



51
건축법 제 56조

제56조(건축물의 용적률) 대지면적에 대한 연면적(대지에 건축물이 둘 이상 있는 경우에는 이들 연면적의 합계로 한다)의 비율(이하 "용적률"이라 한다)의 최대한도는 「국토의 계획 및 이용에 관한 법률」 제78조에 따른 용적률의 기준에 따른다. 다만, 이 법에서 기준을 완화하거나 강화하여 적용하도록 규정한 경우에는 그에 따른다.





//건축법 56조 (건축물의 용적률)

Check(BA_56){
KS
}

KS{

getResult(LPUA_78)= TRUE

} 




Python Code 변환 예정



52
건축법 제 48조 1 항

① 건축물은 고정하중, 적재하중(積載荷重), 적설하중(積雪荷重), 풍압(風壓), 지진, 그 밖의 진동 및 충격 등에 대하여 안전한 구조를 가져야 한다.





//건축법 48조 (구조내력 등) 1항
 




Python Code 변환 예정



53
건축법 제 48조 2 항

② 제11조제1항에 따른 건축물을 건축하거나 대수선하는 경우에는 대통령령으로 정하는 바에 따라 구조의 안전을 확인하여야 한다.





1 




Python Code 변환 예정



54
건축법 제 50조 1 항

① 문화 및 집회시설, 의료시설, 공동주택 등 대통령령으로 정하는 건축물은 국토교통부령으로 정하는 기준에 따라 주요구조부를 내화(耐火)구조로 하여야 한다. <개정 2013.3.23>





//건축법 50조 (건축물의 내화구조와 방화벽) 1항
check(BA_50_1){
	getResult(EDBA_56_1) = TRUE
	getResult(EDBA_56_2) = TRUE
	isObjectProperty(MainStructuralPart.isFireResistantStructure) = TRUE
} 




Python Code 변환 예정



55
건축법 제 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 변환 예정



56
건축법 제 51조 3 항

③ 방화지구 안의 지붕·방화문 및 인접 대지 경계선에 접하는 외벽은 국토교통부령으로 정하는 구조 및 재료로 하여야 한다. <개정 2013.3.23>





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

Check(BA_51_3){
    KS
}

KS{
   getResult(REFB_23_1)=True
   getResult(REFB_23_2)=True
} 




Python Code 변환 예정



57
건축법 제 53조

제53조(지하층) 건축물에 설치하는 지하층의 구조 및 설비는 국토교통부령으로 정하는 기준에 맞게 하여야 한다. <개정 2013.3.23>





Check(BA_53){

IF (CS) THEN KS END IF

}



CS{

   Space.Floor.number<0 ;

}



KS{

   getResult(REFB_25_1)=True

} 




Python Code 변환 예정



58
건축법 제 64조 1 항

① 건축주는 6층 이상으로서 연면적이 2천제곱미터 이상인 건축물(대통령령으로 정하는 건축물은 제외한다)을 건축하려면 승강기를 설치하여야 한다. 이 경우 승강기의 규모 및 구조는 국토교통부령으로 정한다. <개정 2013.3.23>





//건축법 64조 (승강기) 1항
check(BA_64_1){
   IF CS THEN KS
}

CS{ 
   getBuildingStoriesCount() >= 6    
   getGrossFloorArea()>= 2000 m2
}

KS{
	isExist(Elevator) = TRUE
        getResult(RFB_5)=TRUE
        getResult(RFB_6)=TRUE
        getResult(REFB_29_1)=True
} 




Python Code 변환 예정



59
건축법 제 64조 2 항

② 높이 31미터를 초과하는 건축물에는 대통령령으로 정하는 바에 따라 제1항에 따른 승강기뿐만 아니라 비상용승강기를 추가로 설치하여야 한다. 다만, 국토교통부령으로 정하는 건축물의 경우에는 그러하지 아니하다. <개정 2013.3.23>





//건축법 64조 (승강기) 2항

check(BA_64_2){

  IF (!CS1 AND CS2) THEN KS

}



CS1{

    getResult(RFB_9)=TRUE

} 



CS2{

    getBuildingHeight()>31 m

}

KS{


   getResult(BA_64_1) = TRUE 

   isObjectProperty(Elevator.isEmergency)= TRUE

   getResult(EDBA_90_1)=TRUE

   getResult(RFB_10)=TRUE

} 




Python Code 변환 예정



60
건축법 제 52조 3 항

③ 욕실, 화장실, 목욕장 등의 바닥 마감재료는 미끄럼을 방지할 수 있도록 국토교통부령으로 정하는 기준에 적합하여야 한다. <신설 2013.7.16>





//건축법 52조 (건축물의 마감재료) 3항
Check(BA_52_3){

}

// 비대상? 




Python Code 변환 예정



61
건축법 제 51조 1 항

① 「국토의 계획 및 이용에 관한 법률」 제37조제1항제4호에 따른 방화지구(이하 "방화지구"라 한다) 안에서는 건축물의 주요구조부와 외벽을 내화구조로 하여야 한다. 다만, 대통령령으로 정하는 경우에는 그러하지 아니하다. <개정 2014.1.14>





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

Check(BA_51_1){
   IF (!CS1 AND CS2) THEN KS
}

CS1{
    getResult(EDBA_58)=True
}

CS2{
    getResult(LPUA_37_1_4)=True
}

KS{

   Wall myWall{
     isObjectProperty(Wall.isExternal)=True
   }

        isFireResistantStructure(MainStructure) = TRUE
        isFireResistantStructure(myWall) = TRUE
}


 




Python Code 변환 예정



62
건축법 제 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 변환 예정



63
건축법 제 49조 3 항

③ 대통령령으로 정하는 용도 및 규모의 건축물에 대하여 가구ㆍ세대 등 간 소음 방지를 위하여 국토교통부령으로 정하는 바에 따라 경계벽 및 바닥을 설치하여야 한다. <신설 2014.5.28>





//건축법 49조 (건축물의 피난시설 및 용도제한 등) 3항 

Check(BA_49_3){
   KS
}

KS{
   getResult(EDBA_53_1)=True
   getResult(EDBA_53_2)=True
}

 




Python Code 변환 예정



64
건축법 제 49조 2 항

② 대통령령으로 정하는 용도 및 규모의 건축물의 안전·위생 및 방화(防火) 등을 위하여 필요한 용도 및 구조의 제한, 방화구획(防火區劃), 화장실의 구조, 계단·출입구, 거실의 반자 높이, 거실의 채광·환기, 배연설비와 바닥의 방습 등에 관하여 필요한 사항은 국토교통부령으로 정한다. <개정 2013.3.23, 2019.4.23>





//건축법 49조 (건축물의 피난시설 및 용도제한 등) 2항
Check(BA_49_2){
     IF CS THEN KS
}

CS{
    getResult(EDBA_34_1)= TRUE
    OR getResult(EDBA_34_3)= TRUE
    OR getResult(EDBA_34_4)= TRUE
    OR getResult(EDBA_46_1)= TRUE
    OR getResult(EDBA_46_2)= TRUE
    OR getResult(EDBA_46_3)= TRUE
    OR getResult(EDBA_46_4)= TRUE
    OR getResult(EDBA_46_5)= TRUE
    OR getResult(EDBA_47_1)= TRUE 
    OR getResult(EDBA_47_2)= TRUE
    OR getResult(EDBA_48_1)= TRUE 
    OR getResult(EDBA_48_2)= TRUE
    OR getResult(EDBA_50)= TRUE 
    OR getResult(EDBA_51_1)= TRUE 
    OR getResult(EDBA_51_2)= TRUE
    OR getResult(EDBA_51_3)= TRUE  
    OR getResult(EDBA_52)= TRUE
}

KS{
   getResult(REFB_3)= TRUE 
   AND getResult(REFB_4)= TRUE
   AND getResult(REFB_8)= TRUE
   AND getResult(REFB_9)= TRUE 
   AND getResult(REFB_10)= TRUE
   AND getResult(REFB_11)= TRUE
   AND getResult(REFB_14)= TRUE
   AND getResult(REFB_15)= TRUE 
   AND getResult(REFB_16)= TRUE
   AND getResult(REFB_17)= TRUE
   AND getResult(REFB_18)= TRUE
} 




Python Code 변환 예정



65
건축법 제 52조 1 항

①대통령령으로 정하는 용도 및 규모의 건축물의 내부 마감재료는 방화에 지장이 없는 재료로 하되, 「다중이용시설 등의 실내공기질관리법」 제5조 및 제6조에 따른 실내공기질 유지기준 및 권고기준을 고려하고 관계 중앙행정기관의 장과 협의하여 국토해양부령으로 정하는 기준에 따른 것이어야 한다. <개정 2009.12.29>





//건축법 52조 (건축물의 마감재료) 1항
Check(BA_52_1){
   IF CS THEN KS 
}

Building myBuilding{
getResult(EDBA_61_1)=TRUE
}
CS{
isExist(myBuilding)=TRUE
}
KS{
getResult(REFB_24_1)=TRUE
getResult(REFB_24_2)=TRUE
getResult(REFB_24_3)=TRUE
getResult(REFB_24_4)=TRUE
} 




Python Code 변환 예정



66
건축법 제 52조 2 항

② 대통령령으로 정하는 건축물의 외벽에 사용하는 마감재료는 방화에 지장이 없는 재료로 하여야 한다. 이 경우 마감재료의 기준은 국토해양부령으로 정한다. <신설 2009.12.29>





//건축법 52조 (건축물의 마감재료) 2항

Check(BA_52_2){
IF CS THEN KS
}

CS{
getResult(EDBA_61_2)=TRUE
}
KS{
getResult(REFB_24_5)=TRUE

}


 




Python Code 변환 예정



67
건축법 시행령 제 36조 1호

1. 제2종 근린생활시설 중 공연장(해당 용도로 쓰는 바닥면적의 합계가 300제곱미터 이상인 경우만 해당한다), 문화 및 집회시설 중 공연장이나 위락시설 중 주점영업의 용도로 쓰는 층으로서 그 층 거실의 바닥면적의 합계가 300제곱미터 이상인 것





//건축법 시행령 36조 (옥외 피난계단의 설치) 1호

Check(EDBA_36_0_1){
        KS
}

KS{
      Floor myFloor{
          getFloorUsage()="CulturalAndAssemblyFacility.PerformanceHall"
          OR getFloorUsage()="AmusementFacility.BarBusiness"
      }

      FloorSlab myFloorSlab{
           getObjectUsage(FloorSlab)="NeighborhoodLivingFacility.PerformanceHall"
      }


      getFloorUsage()="NeighborhoodLivingFacility.PerformanceHall"
      getObjectArea(myFloorSlab)>=300 m2
      OR getTotalFloorArea(myFloor.Room)>300 m2

     
} 




Python Code 변환 예정



68
건축법 시행령 제 36조 2호

2. 문화 및 집회시설 중 집회장의 용도로 쓰는 층으로서 그 층 거실의 바닥면적의 합계가 1천 제곱미터 이상인 것





//건축법 시행령 36조 (옥외 피난계단의 설치) 2호

Check(EDBA_36_0_2){
            KS
}

KS{   
      Floor myFloor{
           getFloorUsage()="CulturalAndAssemblyFacility.AssemblyHall"
      }

      getTotalFloorArea(myFloor.Room)>=1000 m2


} 




Python Code 변환 예정



69
건축법 시행령 제 38조 1호

1. 제2종 근린생활시설 중 공연장ㆍ종교집회장(해당 용도로 쓰는 바닥면적의 합계가 각각 300제곱미터 이상인 경우만 해당한다)





//건축법 시행령 38조(관람석 등으로부터의 출구 설치) 1호
Check(EDBA_38_0_1){
     (getBuildingUsage() = "ClassIINeighborhoodLivingFacility.performancehall"
     OR getBuildingUsage() = "ClassIINeighborhoodLivingFacility.ReligiousAssemblyFacility")

     Space mySpace {
          getSpaceUsage(Space) = "ClassIINeighborhoodLivingFacility.performancehall"
          OR getSpaceUsage(Space) = "ClassIINeighborhoodLivingFacility.ReligiousAssemblyFacility"
     }

     getTotalFloorArea(mySpace) > 300
}

 








identified_space_codes =['33703', '33708']
min_area = 300
min_door_width = 1.5
min_door_count = 2
identified_space_codes_label ='해당 공간 명칭'
min_area_label = '바닥면적이 다음 미만일 경우 제외(m2)'
min_door_width_label = '출구 유효너비'
min_door_count_label = '유효너비 이상 최소 출구 개수'

def Check():
    for space in SELECT('space'):
        name = space.SELECT('name').STRING()
        code = space.SELECT('class code').STRING()

        if not code in identified_space_codes:
            continue
                
        area = space.SELECT('area').UNIT('m2').NUMBER()
        if area >= min_area:
            exitCnt = 0
            door_width_sum = 0
            inward_exist = False

            for door in space.SELECT('space door'):
                if door.SELECT('is inward', space).BOOL() == False:
                    door_width = door.SELECT('width').UNIT('m2').NUMBER()
                    if door_width >= min_door_width:
                        exitCnt += 1
                        door_width_sum += door_width
                else:
                    door.ERROR('안여닫이 출구')
                    inward_exist = True
                    
            if inward_exist == True:
                continue

            if exitCnt >= min_door_count:
                if door_width_sum >= (area / 100) * 0.6:
                    space.SUCCESS(name)
                else:
                    space.ERROR(name + ', 출구유효너비 합: ' + str(door_width_sum) + 'm, 바닥면적: ' + str(area) + 'm2')
            else:
                space.ERROR(name + ', 출구 수 : ' + str(exitCnt) + '( < ' + str(min_door_count) + ')')
        else:
            space.SUCCESS('바닥면적:' + str(area) + '㎡ ( < ' + str(min_area) + '㎡)') 





70
건축법 시행령 제 38조 4호

4. 위락시설





//건축법 시행령 38조(관람석 등으로부터의 출구 설치) 4호
Check(EDBA_38_0_4){
    getBuildingUsage() = "AmusementFacility"
} 








identified_space_codes =['위락시설']
min_area = 300
min_door_width = 1.5
min_door_count = 2
identified_space_codes_label ='해당 공간 명칭'
min_area_label = '바닥면적이 다음 미만일 경우 제외(m2)'
min_door_width_label = '출구 유효너비'
min_door_count_label = '유효너비 이상 최소 출구 개수'

def Check():
    for space in SELECT('space'):
        name = space.SELECT('name').STRING()
        code = space.SELECT('class code').STRING()

        if not code in identified_space_codes:
            continue
                
        area = space.SELECT('area').UNIT('m2').NUMBER()
        if area >= min_area:
            exitCnt = 0
            door_width_sum = 0
            inward_exist = False

            for door in space.SELECT('space door'):
                if door.SELECT('is inward', space).BOOL() == False:
                    door_width = door.SELECT('width').UNIT('m2').NUMBER()
                    if door_width >= min_door_width:
                        exitCnt += 1
                        door_width_sum += door_width
                else:
                    door.ERROR('안여닫이 출구')
                    inward_exist = True
                    
            if inward_exist == True:
                continue

            if exitCnt >= min_door_count:
                if door_width_sum >= (area / 100) * 0.6:
                    space.SUCCESS(name)
                else:
                    space.ERROR(name + ', 출구유효너비 합: ' + str(door_width_sum) + 'm, 바닥면적: ' + str(area) + 'm2')
            else:
                space.ERROR(name + ', 출구 수 : ' + str(exitCnt) + '( < ' + str(min_door_count) + ')')
        else:
            space.SUCCESS('바닥면적:' + str(area) + '㎡ ( < ' + str(min_area) + '㎡)') 





71
건축법 시행령 제 38조 5호

5. 장례식장





//건축법 시행령 38조(관람석 등으로부터의 출구 설치) 3호
Check(EDBA_38_0_5){
    getBuildingUsage() = "FuneralParlor"
} 








identified_space_codes =['장례시설']
min_area = 300
min_door_width = 1.5
min_door_count = 2
identified_space_codes_label ='해당 공간 명칭'
min_area_label = '바닥면적이 다음 미만일 경우 제외(m2)'
min_door_width_label = '출구 유효너비'
min_door_count_label = '유효너비 이상 최소 출구 개수'

def Check():
    for space in SELECT('space'):
        name = space.SELECT('name').STRING()
        code = space.SELECT('class code').STRING()

        if not code in identified_space_codes:
            continue
                
        area = space.SELECT('area').UNIT('m2').NUMBER()
        if area >= min_area:
            exitCnt = 0
            door_width_sum = 0
            inward_exist = False

            for door in space.SELECT('space door'):
                if door.SELECT('is inward', space).BOOL() == False:
                    door_width = door.SELECT('width').UNIT('m2').NUMBER()
                    if door_width >= min_door_width:
                        exitCnt += 1
                        door_width_sum += door_width
                else:
                    door.ERROR('안여닫이 출구')
                    inward_exist = True
                    
            if inward_exist == True:
                continue

            if exitCnt >= min_door_count:
                if door_width_sum >= (area / 100) * 0.6:
                    space.SUCCESS(name)
                else:
                    space.ERROR(name + ', 출구유효너비 합: ' + str(door_width_sum) + 'm, 바닥면적: ' + str(area) + 'm2')
            else:
                space.ERROR(name + ', 출구 수 : ' + str(exitCnt) + '( < ' + str(min_door_count) + ')')
        else:
            space.SUCCESS('바닥면적:' + str(area) + '㎡ ( < ' + str(min_area) + '㎡)') 





72
건축법 시행령 제 52조 1호

1. 건축물의 최하층에 있는 거실(바닥이 목조인 경우만 해당한다)





//건축법 시행령 52조 (거실 등의 방습) 1호

Check(EDBA_52_0_1){

CS}



CS{

hasObject(BottomFloor, Room) = TRUE
 getObjectProperty(FloorSlab.Structure.materialType) = "Timber"

} 




Python Code 변환 예정



73
건축법 시행령 제 52조 2호

2. 제1종 근린생활시설 중 목욕장의 욕실과 휴게음식점 및 제과점의 조리장





//건축법 시행령 52조 (거실 등의 방습) 2호

Check(EDBA_52_0_2){

KS

}



KS{

Building myBuilding1{
Building.usage = "ClassiNeighborhoodLivingFacilites.BathHouse"
}
Building myBuilding2{
Building.usage = "ClassiNeighborhoodLivingFacilites" OR "RestingRestaurant"
}

getSpaceUsage(myBuilding1.Space)="BathRoom"

getSpaceUsage(myBuilding2.Space)="Kitchen"

} 




Python Code 변환 예정



74
건축법 시행령 제 52조 3호

3. 제2종 근린생활시설 중 일반음식점, 휴게음식점 및 제과점의 조리장과 숙박시설의 욕실





//건축법 시행령 52조 (거실 등의 방습) 3호

Check(EDBA_52_0_3){

KS

}



KS{

Building myBuilding1{
Building.usage = "ClassiiNeighborhoodLivingFacilites.Restaurant" OR "ClassiiNeighborhoodLivingFacilites.RestingRestaurant" OR "ClassiiNeighborhoodLivingFacilites.Bakery"
}
Building myBuilding2{
Building.usage = "ClassiiNeighborhoodLivingFacilites.LodgingFacility" 
}

getSpaceUsage(myBuilding1.Space)="Kitchen"

getSpaceUsage(myBuilding2.Space)="BathRoom"


} 




Python Code 변환 예정



75
건축법 시행령 제 53조 1 항 2호

2. 공동주택 중 기숙사의 침실, 의료시설의 병실, 교육연구시설 중 학교의 교실 또는 숙박시설의 객실 간 경계벽





// 건축법 시행령 53조 (경계벽 등의 설치) 1항 2호



check(EDBA_53_1_1){

	KS

}

KS{


Space mySpace1{

Space.Building.usage = “MultiUnitHouse.Dormitory”

Space.name = “BedRoom”

}



Space mySpace1_1{

Space.Building.usage = “MultiUnitHouse.Dormitory”

Space.name != “BedRoom”

}



Space mySpace2{

Space.Building.usage = “MedicalFacility”

Space.name = “Ward”

}



Space mySpace2_1{

Space.Building.usage = “MedicalFacility”

Space.name != “Ward”

}



Space mySpace3{

Space.Building.usage = “EducationAndResearchFacility.School”

Space.name = “ClassRoom”

}

Space mySpace3_1{

Space.Building.usage = “EducationAndResearchFacility.School”

Space.name != “ClassRoom”

}



Space mySpace4{

Space.Building.usage = “LodgingFacility”

Space.name = “GuestRoom”

}

Space mySpace4_1

Space.Building.usage = “LodgingFacility”

Space.name != “GuestRoom”

}



Wall myWall1{

isObjectProperty(Wall.isPartitionWall)=TRUE

hasObject(mySpace1, Wall) =TRUE

}



Wall myWall2{

isObjectProperty(Wall.isPartitionWall)=TRUE

hasObject(mySpace2, Wall) =TRUE

}



Wall myWall3{

isObjectProperty(Wall.isPartitionWall)=TRUE

hasObject(mySpace3, Wall) =TRUE

}



Wall myWall4{

isObjectProperty(Wall.isPartitionWall)=TRUE

hasObject(mySpace4, Wall) =TRUE

}



(hasObject(mySpace1, myWall) =TRUE

hasObject(mySpace1_1, myWall) =FALSE)

OR

(hasObject(mySpace2, myWall) =TRUE

hasObject(mySpace2_1, myWall) =FALSE)

OR

(hasObject(mySpace3, myWall) =TRUE

hasObject(mySpace3_1, myWall) =FALSE)

OR

(hasObject(mySpace4, myWall) =TRUE

hasObject(mySpace4_1, myWall) =FALSE)



} 




Python Code 변환 예정



76
건축법 시행령 제 53조 1 항 3호

3. 제2종 근린생활시설 중 다중생활시설의 호실 간 경계벽





// 건축법 시행령 53조 (경계벽 등의 설치) 1항 3호



check(EDBA_53_1_3){

	KS

}


KS{

Space mySpace1{

Space.Building.usage = “ClassIINeighborhoodLivingFacility.CommunalLivingFacility”

}



Wall myWall{

isObjectProperty(Wall.isPartitionWall)=TRUE
hasObject(mySpace1, Wall) =TRUE
}



isObjectProperty(myWall.isSharedByHouseholds) = TRUE


} 




Python Code 변환 예정



77
건축법 시행령 제 53조 1 항 4호

4. 노유자시설 중 「노인복지법」 제32조제1항제3호에 따른 노인복지주택(이하 "노인복지주택"이라 한다)의 각 세대 간 경계벽





// 건축법 시행령 53조 (경계벽 등의 설치) 1항 4호





check(EDBA_53_1_4){

	KS

}


KS{

Building  myBuilding{

Zone.Building.usage = “FacilitiesForTheAgedAndChildren.WelfareFacilityForTheAged ”

getResult(WOPA_32_1_3)=TRUE

}



Wall myWall{

isObjectProperty(Wall.isPartitionWall)=TRUE
hasObject(myBuilding, Wall) =TRUE
}



isObjectProperty(myWall.isSharedByHouseholds) = TRUE



} 




Python Code 변환 예정



78
건축법 시행령 제 53조 2 항 1호

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





//건축법 시행령 53조 (경계벽 등의 설치) 2항 1호

Check(EDBA_53_2_1){
   KS
}

KS{
   getBuildingUsage()="DetachedHouse.MultiFamilyHouse"
}  




Python Code 변환 예정



79
건축법 시행령 제 53조 2 항 3호

3. 업무시설 중 오피스텔





//건축법 시행령 53조 (경계벽 등의 설치) 2항 3호

Check(EDBA_53_2_3){
   KS
}

KS{
   getBuildingUsage()="BusinessFacility.Officetel"
   
}  




Python Code 변환 예정



80
건축법 시행령 제 53조 2 항 4호

4. 제2종 근린생활시설 중 다중생활시설





//건축법 시행령 53조 (경계벽 등의 설치) 2항 4호

Check(EDBA_53_2_4){
   KS
}

KS{
   getBuildingUsage()="ClassIINeighborhoodLivingFacility.CommunalLivingFacility"
   
}  




Python Code 변환 예정



81
건축법 시행령 제 53조 2 항 5호

5. 숙박시설 중 다중생활시설





//건축법 시행령 53조 (경계벽 등의 설치) 2항 5호

Check(EDBA_53_2_5){
   KS
}

KS{
   getBuildingUsage()="LodgingFacility.CommunalLivingFacility"
   
}  




Python Code 변환 예정



82
건축법 시행령 제 58조 1호

1. 연면적 30제곱미터 미만인 단층 부속건축물로서 외벽 및 처마면이 내화구조 또는 불연재료로 된 것





check(EDBA_58_0_1){

	getGrossFloorArea() < 30m2;

	isObjectProperty(Building.isAttachedBuilding) = TRUE

	getBuildingStoriesCount() = 1;

	isFireResistantStructure(MainStructure) = TRUE

	OR isFireResistantStructure(ExternalWall) = TRUE;

} 




Python Code 변환 예정



83
건축법 시행령 제 58조 2호

2. 도매시장의 용도로 쓰는 건축물로서 그 주요구조부가 불연재료로 된 것





check(EDBA_58_0_2){

	getBuildingUsage() < "WholeSale Market"

	isFireResistantStructure(MainStructure) = TRUE

} 




Python Code 변환 예정



84
건축법 시행령 제 80조 1호

1. 주거지역: 60제곱미터





//건축법 시행령 80조 (건축물이 있는 대지의 분할제한) 1호

Check(EDBA_80_1){
     IF CS THEN KS
}
CS{
	getBuildingUsage() = "ResidentialArea"
}
KS{
	getObjectProperty(Building.Site.area) >= 60m2
} 




Python Code 변환 예정



85
건축법 시행령 제 80조 2호

2. 상업지역: 150제곱미터






//건축법 시행령 80조 (건축물이 있는 대지의 분할제한) 2호

Check(EDBA_80_2){
     IF CS THEN KS
}
CS{
	getBuildingUsage() = "CommercialArea"
}
KS{
	getObjectProperty(Building.Site.area) >= 150m2
} 




Python Code 변환 예정



86
건축법 시행령 제 80조 3호

3. 공업지역: 150제곱미터





//건축법 시행령 80조 (건축물이 있는 대지의 분할제한) 3호

Check(EDBA_80_3){
     IF CS THEN KS
}
CS{
	getBuildingUsage() = "IndustrialArea"
}
KS{
	getObjectProperty(Building.Site.area) >= 150m2
} 




Python Code 변환 예정



87
건축법 시행령 제 80조 4호

4. 녹지지역: 200제곱미터





//건축법 시행령 80조 (건축물이 있는 대지의 분할제한) 4호

Check(EDBA_80_4){
     IF CS THEN KS
}
CS{
	getBuildingUsage() = "GreenArea"
}
KS{
	getObjectProperty(Building.Site.area) >= 200m2
}
 




Python Code 변환 예정



88
건축법 시행령 제 80조 5호

5. 제1호부터 제4호까지의 규정에 해당하지 아니하는 지역: 60제곱미터





//건축법 시행령 80조 (건축물이 있는 대지의 분할제한) 5호

Check(EDBA_80_5){
     IF CS THEN KS
}
CS{
	getBuildingUsage() != "ResidentialArea"
	getBuildingUsage() != "CommercialArea"	
	getBuildingUsage() != "IndustrialArea"
	getBuildingUsage() != "GreenArea"
}
KS{
	getObjectProperty(Building.Site.area) >= 60m2
} 




Python Code 변환 예정



89
건축법 시행령 제 46조 5 항 1호

1. 인접 세대와의 경계벽이 파괴하기 쉬운 경량구조 등인 경우





//건축법 시행령 46조 (방화구획의 설치) 5항 1호
Check(EDBA_46_5_1){CS
}

CS{
   isObjectProperty(Wall.isPartitionWall)=TRUE
   AND isObjectProperty(Wall.isLightWeightStructure)=TRUE
} 




Python Code 변환 예정



90
건축법 시행령 제 46조 5 항 2호

2. 경계벽에 피난구를 설치한 경우





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

Check(EDBA_46_5_2){CS

}





CS{
Opening myOpening{
Opening.isEscape = TRUE
}
Wall myWall{
  isObjectProperty(Wall.isPartitionWall)=TRUE
}
  AND hasObject(myWall,myOpening)=TRUE

} 




Python Code 변환 예정



91
건축법 시행령 제 61조 1 항 4호

4. 공장의 용도로 쓰는 건축물. 다만, 건축물이 1층 이하이고, 연면적 1천 제곱미터 미만으로서 다음 각 목의 요건을 모두 갖춘 경우는 제외한다.





Check(EDBA_61_1_4){
IF !CS THEN KS}


CS{
getResult(EDBA_61_1_4_가)=PASS
OR getResult(EDBA_61_1_4_나)=PASS 
OR getResult(EDBA_61_1_4_다)=PASS
}


KS{
getBuildingUsage="Factory"} 




Python Code 변환 예정



92
건축법 시행령 제 61조 1 항 5호

5. 5층 이상인 층 거실의 바닥면적의 합계가 500제곱미터 이상인 건축물





Check(EDBA_61_1_5){
KS}

Floor myFloor {
Floor.number>=5
}

KS{
getTotalfloorArea(myFloor)>=500 m2
} 




Python Code 변환 예정



93
건축법 시행령 제 61조 1 항 7호

7. 창고로 쓰이는 바닥면적 3천 제곱미터(스프링클러나 그 밖에 이와 비슷한 자동식 소화설비를 설치한 경우에는 6천 제곱미터) 이상인 건축물





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

Check(EDBA_61_1_7){
  KS
}

KS{

  Floor myFloor{
      getObjectUsage(Floor)="Storage"

  }
   IF (isExist(SprinklerSystem)=TRUE
       OR isExist(ExtinguishingSystem.isAutomatic)=TRUE ) 

   THEN  getFloorArea(myFloor)>6000 m2
   ELSE THEN  getFloorArea(myFloor)>3000 m2
} 




Python Code 변환 예정



94
건축법 시행령 제 40조 3 항 1호

1. 건축물의 지붕을 평지붕으로 하는 경우: 헬리포트를 설치하거나 헬리콥터를 통하여 인명 등을 구조할 수 있는 공간





//건축법 시행령 40조 (옥상광장 등의 설치) 3항 1호

Check(EDBA_40_3_1){

  IF (CS) THEN KS

}



CS{

	getObjectProperty(Roof.shapeType) = “FlatRoof”

}



KS{

	isExist(Heliport) = True

        getResult(REFB_13_1)=True

        getResult(REFB_13_2)=True

} 




Python Code 변환 예정



95
건축법 시행령 제 40조 3 항 2호

2. 건축물의 지붕을 경사지붕으로 하는 경우: 경사지붕 아래에 설치하는 대피공간





//건축법 시행령 40조 (옥상광장 등의 설치) 3항 2호

Check(EDBA_40_3_2){

  IF (CS) THEN KS

}



CS{

	getObjectProperty(Roof.shapeType) = “PitchedRoof ”

}



KS{
Space mySpace{
Space.isEscape = TRUE
}
	isExist(mySpace) = True

	getObjectProperty(mySpace.Roof.shapeType) = “PitchedRoof”



        getResult(REFB_13_3)=True

        

} 




Python Code 변환 예정



96
건축법 시행령 제 61조 2 항 1호

1. 상업지역(근린상업지역은 제외한다)의 건축물로서 다음 각 목의 어느 하나에 해당하는 것





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


Check(EDBA_61_2_1){
       KS
}




KS{
    getObjectProperty(Building.SpecialPurposeArea.type) = "CommercialArea"
    getResult(EDBA_61_2_1_가)=TRUE
  

} 




Python Code 변환 예정



97
건축법 시행령 제 34조 5 항

⑤ 제3항 및 제4항에 따른 피난안전구역의 규모와 설치기준은 국토교통부령으로 정한다. <신설 2009.7.16, 2011.12.30, 2013.3.23>





// 건축법 시행령 34조 (직통계단의 설치) 5항
check(EDBA_34_5){
		getResult(REFB_8_1) = TRUE
		getResult(REFB_8-2_1) = TRUE
		getResult(REFB_8-2_2) = TRUE
		getResult(REFB_8-2_3) = TRUE
}
 




Python Code 변환 예정



98
건축법 시행령 제 40조 4 항

④ 제3항에 따른 헬리포트를 설치하거나 헬리콥터를 통하여 인명 등을 구조할 수 있는 공간 및 경사지붕 아래에 설치하는 대피공간의 설치기준은 국토교통부령으로 정한다. <신설 2011.12.30, 2013.3.23>





//건축법 시행령 40조 (옥상광장 등의 설치) 4항
Check(EDBA_40_4){
  IF (CS1) THEN KS1 ELSE IF (CS2) THEN KS2
}
CS1{
  getResult(EDBA_40_3_1)=True
 
}
KS1{
   getResult(REFB_13_1)=True
   getResult(REFB_13_2)=True
  
}
CS2{
   getResult(EDBA_40_3_2)=True
}

KS2{
   getResult(REFB_13_3)=True
} 




Python Code 변환 예정



99
건축법 시행령 제 46조 5 항 3호

3. 발코니의 바닥에 국토교통부령으로 정하는 하향식 피난구를 설치한 경우





//건축법 시행령 46조 (방화구획의 설치) 5항 3호
Check(EDBA_46_5_3){
CS}


CS{

AND getResult(REFB_14_3)=TRUE
} 




Python Code 변환 예정



100
건축법 시행령 제 61조 1 항 3호

3. 위험물저장 및 처리시설(자가난방과 자가발전 등의 용도로 쓰는 시설을 포함한다), 자동차 관련 시설, 방송통신시설 중 방송국ㆍ촬영소 또는 발전시설의 용도로 쓰는 건축물





Check(EDBA_61_1_3){
KS}


KS{
getBuildingUsage()="FacilityForStorageAndTreatmentOfDangerousSubstance"
OR getBuildingUsage()="FacilityForMotorVehicle"
OR (getBuildingUsage()="FacilityForBroadcastingAndTelecommunication.BroadcastingStation"
OR getBuildingUsage()="FacilityForBroadcastingAndTelecommunication.Studio"
OR getBuildingUsage()="FacilityForBroadcastingAndTelecommunication.PowerPlant"
} 




Python Code 변환 예정



  ◁prev 1   2   3   4   5   6   7   8   9   10   next▷ NEXT10▶