Open BIM based Technological Environment for Building Design Quality Enhancement
1-2. 설계품질검증 자동화를 위한 각종 법규 및 제기준의 체계화된 논리규칙 데이터베이스 구축
- 건축물 설계품질 혁신을 위한 개방형 BIM 기술 환경 구축 | 국토교통부
제11조(건축물의 바깥쪽으로의 출구의 설치기준) ①영 제39조제1항의 규정에 의하여 건축물의 바깥쪽으로 나가는 출구를 설치하는 경우 피난층의 계단으로부터 건축물의 바깥쪽으로의 출구에 이르는 보행거리(가장 가까운 출구와의 보행거리를 말한다. 이하 같다)는 영 제34조제1항의 규정에 의한 거리이하로 하여야 하며, 거실(피난에 지장이 없는 출입구가 있는 것을 제외한다)의 각 부분으로부터 건축물의 바깥쪽으로의 출구에 이르는 보행거리는 영 제34조제1항의 규정에 의한 거리의 2배 이하로 하여야 한다.
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 11조 (건축물의 바깥쪽으로의 출구의 설치기준) 1항
Check(REFB_11_1){
IF CS THEN KS1 AND KS2
}
CS {
Door myDoor{
isObjectProperty(Door.isEntrance)=TRUE
}
isExist(myDoor)
}
KS1 {
Floor myFloor{
isObjectProperty(Floor.isEscape)=TRUE
}
getObjectDistance(myFloor.Stair, myDoor,a) <= EDBA_34_1.distance
}
KS2 {
getObjectDistance(Room, myDoor) <= (EDBA_34_1.distance)*2
}
②영 제39조제1항에 따라 건축물의 바깥쪽으로 나가는 출구를 설치하는 건축물중 문화 및 집회시설(전시장 및 동ㆍ식물원을 제외한다), 종교시설, 장례식장 또는 위락시설의 용도에 쓰이는 건축물의 바깥쪽으로의 출구로 쓰이는 문은 안여닫이로 하여서는 아니된다. <개정 2010.4.7.>
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 11조 (건축물의 바깥쪽으로의 출구의 설치기준) 2항
Check(REFB_11_2){
IF CS1 AND CS2 THEN KS
}
CS1 {
Building myBuilding{
getBuildingUsage() = “CulturalAndAssemblyFacility”
OR getBuildingUsage() = “ReligiousFacility”
OR getBuildingUsage() = “AmusementFacility”
OR getBuildingUsage() = “FuneralParlor”
getBuildingUsage() != “ExhibitionHall”
getBuildingUsage() != “ZoologicalAndBotanicalGarden”
}
Door myDoor{
isObjectProperty(myBuilding.Door.isEntrance)=TRUE
}
isExist(myDoor) = TRUE
}
KS {
getObjectProperty(myDoor.panelOperationType) != “OpeningInDoor”
}
⑤다음 각 호의 어느 하나에 해당하는 건축물의 피난층 또는 피난층의 승강장으로부터 건축물의 바깥쪽에 이르는 통로에는 제15조제5항에 따른 경사로를 설치하여야 한다. <개정 2010.4.7.>
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 11조 (건축물의 바깥쪽으로의 출구의 설치기준) 5항
Check(REFB_11_5){
IF CS1 AND CS2 THEN KS
}
CS1 {
getResult(REFB_11_5_1)=TRUE
OR getResult(REFB_11_5_2)=TRUE
OR getResult(REFB_11_5_3)=TRUE
OR getResult(REFB_11_5_4)=TRUE
OR getResult(REFB_11_5_5)=TRUE
OR getResult(REFB_11_5_6)=TRUE
}
CS2{
Floor myFloor{
isObjectProperty(Floor.isEscape)=TRUE
}
Passage myPassage{
isDirectlyAccessible(myFloor,Passage) = TRUE
OR isDirectlyAccessible(myFloor.Platform,Passage) = TRUE
isConnectedToExternal(Passage) = TRUE
}
isExist(myPassage)=TRUE
}
KS{
hasObject(myPassage,Ramp)=TRUE
getResult(REFB_15_5)=TRUE
}
2. 제1종 근린생활시설 중 마을회관ㆍ마을공동작업소ㆍ마을공동구판장ㆍ변전소ㆍ양수장ㆍ정수장ㆍ대피소ㆍ공중화장실 기타 이와 유사한 것
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 11조 (건축물의 바깥쪽으로의 출구의 설치기준) 5항 2호
Check(REFB_11_5_2){
KS
}
KS {
Building myBuilding{
getBuildingUsage() = “ClassINeighborhoodLivingFacility.VillageHall”
OR getBuildingUsage() = “ClassINeighborhoodLivingFacility.CommunityWorkspace”
OR getBuildingUsage() = “ClassINeighborhoodLivingFacility.CommunitySalesShop”
OR getBuildingUsage() = “ClassINeighborhoodLivingFacility.Substation”
OR getBuildingUsage() = “ClassINeighborhoodLivingFacility.PumpingStation”
OR getBuildingUsage() = “ClassINeighborhoodLivingFacility.PurificationPlant”
OR getBuildingUsage() = “ClassINeighborhoodLivingFacility.Shelter”
OR getBuildingUsage() = “ClassINeighborhoodLivingFacility.PublicLibrary”
OR getBuildingUsage() = “ClassINeighborhoodLivingFacility.PublicToilet”
}
isExist(myBuilding) = TRUE
}
⑥법 제39조제1항에 따라 영 제39조제1항 각 호의 어느 하나에 해당하는 건축물의 바깥쪽으로 나가는 출입문에 유리를 사용하는 경우에는 안전유리를 사용하여야 한다. <신설 2006.6.29.>
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 11조 (건축물의 바깥쪽으로의 출구의 설치기준) 6항
Check(REFB_11_6){
KS
}
KS{
Door myDoor{
isObjectProperty(Door.isEntrance)=TRUE
}
IF getObjectMaterial(myDoor)="Glass"
THEN getObjectType(Glass)="Safety"
}
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 12조 (회전문의 설치기준) 1항
Check(REFB_12_1){
KS
}
KS {
getElementDistance(myDoor, Stair, a)>= 2 m
OR getElementDistance(myDoor, Escalator, a)>= 2 m
}
제13조(헬리포트 및 구조공간 설치 기준) ①영 제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
}
1. 헬리포트의 길이와 너비는 각각 22미터이상으로 할 것. 다만, 건축물의 옥상바닥의 길이와 너비가 각각 22미터이하인 경우에는 헬리포트의 길이와 너비를 각각 15미터까지 감축할 수 있다.
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙
Check(REFB){
IF CS THEN KS1 ELSE KS2
}
CS{
getObjectLength(Building.RoofTop.FloorSlab)<=22 m
getObjectWidth(Building.RoofTop.FloorSlab)<=22 m
}
KS1{
getObjectLength(Heliport)>=15 m
getObjectWidth(Heliport)>=15 m
}
KS2{
getObjectLength(Heliport)>=22 m
getObjectWidth(Heliport)>=22 m
}
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
}
② 영 제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
}
③ 영 제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
}
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 13조 (헬리포트 및 구조공간 설치 기준) 3항 1호
Check (REFB_13_3_1){
KS
}
KS{
Space mySpace{
isObjectProperty(Space.isEscape) = TRUE
}
mySpace.area > Roof.horizontalProjectionArea*0.1
}
3. 출입구ㆍ창문을 제외한 부분은 해당 건축물의 다른 부분과 내화구조의 바닥 및 벽으로 구획할 것
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 13조 (헬리포트 및 구조공간 설치 기준) 3항 3호
Check(REFB_13_3_3){
KS
}
KS{
Space mySpace{
isObjectProperty(Space.isEscape) = TRUE
}
isFirePartition(mySpace)=True
}
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 13조 (헬리포트 및 구조공간 설치 기준) 3항 4호
Check(REFB_13_3_4){
KS
}
KS{
isObjectProperty(Door.isEntrance)=True
getObjectProperty( myDoor.effectiveWidth) > 0.9 m
isObjectProperty(Door.isStrictFireproofDoor)=True
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 13조 (헬리포트 및 구조공간 설치 기준) 3항 5호
Check(REFB_13_3_5){
KS
}
KS{
Space mySpace{
isObjectProperty(Space.isEscape) = TRUE
}
isObjectProperty(mySpace.InteriorFinish.Material.nonCombustibility)=True
}
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 13조 (헬리포트 및 구조공간 설치 기준) 3항 7호
check(REFB_13_3_7){
KS
}
KS{
Space mySpace{
isObjectProperty(Space.isEscape) = TRUE
}
hasObject(mySpace, WarningAndCommunicationFacility) = TRUE
}
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)
}
1. 피난구의 덮개는 제26조에 따른 비차열 1시간 이상의 내화성능을 가져야 하며, 피난구의 유효 개구부 규격은 직경 60센티미터 이상일 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 14조 (방화구획의 설치기준) 3항 1호
Check(REFB_14_3_1){
KS
}
KS{
Opening myOpening {
isObjectProperty(Opening.isEscape)=True
}
getObjectDiameter(myOpening)>60 cm
}
제14조의2(복합건축물의 피난시설 등) 영 제47조제1항 단서의 규정에 의하여 같은 건축물안에 공동주택ㆍ의료시설ㆍ아동관련시설 또는 노인복지시설(이하 이 조에서 "공동주택등"이라 한다)중 하나 이상과 위락시설ㆍ위험물저장 및 처리시설ㆍ공장 또는 자동차정비공장(이하 이 조에서 "위락시설등"이라 한다)중 하나 이상을 함께 설치하고자 하는 경우에는 다음 각 호의 기준에 적합하여야 한다. <개정 2005.7.22.>
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 14조의2 (복합건축물의 피난시설 등)
Check(REFB_14-2){
IF CS THEN KS
}
CS{
Building myBuilding1{
Building.usage = "MultiUnitHouse"
OR Building.usage = "MedicalFacility"
OR Building.usage = "ChildrenRelatedFacility"
OR Building.usage = "WelfareFacilityForTheAged"
}
Building myBuilding2{
Building.usage = "AmusementFacility"
OR Building.usage = "FacilityForStorageAndTreatmentOfDangerousSubstance"
OR Building.usage = "Factory"
OR Building.usage = "AutomobileRepairShop"
}
hasObject(Building, myBuilding1) = TRUE
hasObject(Building, myBuilding2) = TRUE
}
KS{
getResult(REFB_14-2_0_1)=True
getResult(REFB_14-2_0_2)=True
getResult(REFB_14-2_0_3)=True
getResult(REFB_14-2_0_4)=True
getResult(REFB_14-2_0_5)=True
}
1. 공동주택등의 출입구와 위락시설등의 출입구는 서로 그 보행거리가 30미터 이상이 되도록 설치할 것
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 14조의2 (복합건축물의 피난시설 등) 1호
Check(REFB_14-2_0_1){
KS
}
KS{
Space mySpace{
Space.usage="MultiUnitHouse"
OR Space.usage="MedicalFacility"
OR Space.usage="ChildrenRelatedFacility"
OR Space.usage="WelfareFacilityForTheAged"
}
Space mySpace2{
Space.usage="AmusementFacility"
OR Space.usage="FacilityForStorageAndTreatmentOfDangerousSubstance"
OR Space.usage="Factory"
OR Space.usage="AutomobileRepairShop"
}
getSpaceDiatance(mySpace.Door, mySpace2.Door)>=30 m
}
2. 공동주택등(당해 공동주택등에 출입하는 통로를 포함한다)과 위락시설등(당해 위락시설등에 출입하는 통로를 포함한다)은 내화구조로 된 바닥 및 벽으로 구획하여 서로 차단할 것
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 14조의 2 (복합건축물의 피난시설 등) 2호
Check(REFB_14-2_0_2){
KS
}
KS{
Space mySpace{
Space.usage="MultiUnitHouse"
OR Space.usage="MedicalFacility"
OR Space.usage="ChildrenRelatedFacility"
OR Space.usage="WelfareFacilityForTheAged"
}
Space mySpace2{
Space.usage="AmusementFacility"
OR Space.usage="FacilityForStorageAndTreatmentOfDangerousSubstance"
OR Space.usage="Factory"
OR Space.usage="AutomobileRepairShop"
}
Passage myPassage{
isAccessible(Passage, mySpace)=True
OR isAccessible(Passage, mySpace2)=True
}
isFirePartition(mySpace)=True
isFirePartition(mySpace2)=True
isFirePartition(myPassage)=True
}
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 14조의2 (복합건축물의 피난시설 등) 3호
Check(REFB_14-2_0_3){
KS
}
KS{
Space mySpace{
Space.usage="MultiUnitHouse"
OR Space.usage="MedicalFacility"
OR Space.usage="ChildrenRelatedFacility"
OR Space.usage="WelfareFacilityForTheAged"
}
Space mySpace2{
Space.usage="AmusementFacility"
OR Space.usage="FacilityForStorageAndTreatmentOfDangerousSubstance"
OR Space.usage="Factory"
OR Space.usage="AutomobileRepairShop"
}
isAdjacent(mySpace, mySpace2)=False
}
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
}
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
}
2. 높이가 1미터를 넘는 계단 및 계단참의 양옆에는 난간(벽 또는 이에 대치되는 것을 포함한다)을 설치할 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 1항2호
check(REFB_15_1_2){
KS
}
KS{
IF getObjectHeight(Stair)>1 m
OR getObjectHeight(StairLanding)>1 m)
THEN isExist(Railing)=TRUE
END IF
}
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
}
②제1항의 규정에 의하여 계단을 설치하는 경우 계단 및 계단참의 너비(옥내계단에 한한다), 계단의 단높이 및 단너비의 칫수는 다음 각호의 기준에 적합하여야 한다. 이 경우 돌음계단의 단너비는 그 좁은 너비의 끝부분으로부터 30센티미터의 위치에서 측정한다. <개정 2003.1.6., 2005.7.22., 2010.4.7.>
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 2항
check(REFB_15_2){
KS
}
KS{
IF getResult(REFB_15_1)=TRUE
THEN getResult(REFB_15_2_1)=TRUE
getResult(REFB_15_2_2)=TRUE
getResult(REFB_15_2_3)=TRUE
getResult(REFB_15_2_4)=TRUE
getResult(REFB_15_2_5)=TRUE
getResult(REFB_15_2_6)=TRUE
END IF
}
1. 초등학교의 계단인 경우에는 계단 및 계단참의 너비는 150센티미터 이상, 단높이는 16센티미터 이하, 단너비는 26센티미터 이상으로 할 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 2항1호
check(REFB_15_2_1){
IF CS THEN KS
}
CS{
getBuildingUsage()="ElementarySchool"
}
KS{
getObjectWidth(Stair)>= 150 cm
getObjectWidth(StairLanding)>150 cm
getObjectProperty(Stair.riserHeight)>=16 cm
getObjectProperty(Stair.riserWidth)>=26 cm
}
2. 중ㆍ고등학교의 계단인 경우에는 계단 및 계단참의 너비는 150센티미터 이상, 단높이는 18센티미터 이하, 단너비는 26센티미터 이상으로 할 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 2항2호
check(REFB_15_2_2){
IF CS THEN KS
}
CS{
getBuildingUsage()="MiddleSchool"
OR getBuildingUsage()="HighSchool"
}
KS{
getObjectWidth(Stair)>=150 cm
getObjectWidth(StairLanding)>150 cm
getObjectProperty(Stair.riserHeight)>=18 cm
getObjectProperty(Stair.riserWidth)>=26 cm
}
3. 문화 및 집회시설(공연장ㆍ집회장 및 관람장에 한한다)ㆍ판매시설 기타 이와 유사한 용도에 쓰이는 건축물의 계단인 경우에는 계단 및 계단참의 너비를 120센티미터 이상으로 할 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 2항3호
check(REFB_15_2_3){
IF CS THEN KS
}
CS{
getBuildingUsage()= "CulturalAndAssemblyFacility.PerformanceHall"
OR getBuildingUsage()= "CulturalAndAssemblyFacility.AssemblyHall"
OR getBuildingUsage()= "CulturalAndAssemblyFacility.Auditorium"
OR getBuildingUsage()= "CommercialFacility "
}
KS{
getObjectWidth(Stair)>=120 cm
getObjectWidth(StairLanding)>=120 cm
}
4. 윗층의 거실의 바닥면적의 합계가 200제곱미터 이상이거나 거실의 바닥면적의 합계가 100제곱미터 이상인 지하층의 계단인 경우에는 계단 및 계단참의 너비를 120센티미터 이상으로 할 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 2항4호
check(REFB_15_2_4){
IF CS THEN KS
}
CS{
Floor myFloor{
N=getFloorNumber(Stair)
Floor.number=N+1
}
(getTotalFloorArea(myFloor.Room)>=200 m2
OR getTotalFloorArea(Room)>=100 m2)
getFloorNumber(Stair)<0
}
KS{
getObjectWidth(Stair)>=120 cm
getObjectWidth(StairLanding)>120 cm
}
③공동주택(기숙사를 제외한다)ㆍ제1종 근린생활시설ㆍ제2종 근린생활시설ㆍ문화 및 집회시설ㆍ종교시설ㆍ판매시설ㆍ운수시설ㆍ의료시설ㆍ노유자시설ㆍ업무시설ㆍ숙박시설ㆍ위락시설 또는 관광휴게시설의 용도에 쓰이는 건축물의 주계단ㆍ피난계단 또는 특별피난계단에 설치하는 난간 및 바닥은 아동의 이용에 안전하고 노약자 및 신체장애인의 이용에 편리한 구조로 하여야 하며, 양쪽에 벽등이 있어 난간이 없는 경우에는 손잡이를 설치하여야 한다. <개정 2010.4.7.>
check(REFB_15_3){
IF CS THEN KS
}
CS{
getBuildingUsage()= "ClassINeighborhoodLivingFacility"
OR getBuildingUsage() = "ClassIINeighborhoodLivingFacility"
OR getBuildingUsage() = "CulturalAndAssemblyFacility"
OR getBuildingUsage() = "ReligiousFacility"
OR getBuildingUsage() = "CommercialFacility"
OR getBuildingUsage() = "TransportationFacility"
OR getBuildingUsage() = "MedicalFacility"
OR getBuildingUsage() = "FacilitiesForTheAgedAndChildren"
OR getBuildingUsage() = "BusinessFacility"
OR getBuildingUsage() = "LodgingFacility"
OR getBuildingUsage() = "AmusementFacility"
OR getBuildingUsage() = "FacilityForTourismAndRelaxation"
OR (getBuildingUsage() = "MultiUnitHouse" AND getBuildingUsage() != "Dormitory")
}
KS{
isExist(Railing)=TRUE
OR (isExist(Railing)=FALSE AND isExist(Handle)=TRUE)
}
⑤계단을 대체하여 설치하는 경사로는 다음 각호의 기준에 적합하게 설치하여야 한다. <개정 2010.4.7.>
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 5항
Check(REFB_15_5){
IF CS THEN KS
}
CS{
isEixst(Ramp)=TRUE
}
KS {
getResult(REFB_15_5_1)=TRUE
getResult(REFB_15_5_3)=TRUE
}
⑦ 제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)
}
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 7항 1호
check(REFP_15_7_1){
KS
}
KS{
getBuildingUsage() = "MultiUnitHouse"
AND getStairStepWidth >= 1.2M
AND getPaceWidth >= 1.2M
}
⑧ 승강기기계실용 계단, 망루용 계단 등 특수한 용도에만 쓰이는 계단에 대해서는 제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
}
제15조의2(복도의 너비 및 설치기준) ①영 제48조의 규정에 의하여 건축물에 설치하는 복도의 유효너비는 다음 표와 같이 하여야 한다
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 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
}
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 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
}
②문화 및 집회시설(공연장ㆍ집회장ㆍ관람장ㆍ전시장에 한한다), 종교시설 중 종교집회장, 노유자시설 중 아동 관련 시설ㆍ노인복지시설, 수련시설 중 생활권수련시설, 위락시설 중 유흥주점 및 장례식장의 관람석 또는 집회실과 접하는 복도의 유효너비는 제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
}
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조의2 (복도의 너비 및 설치기준) 2항1호
check(REFB_15-2_2_1){
KS
}
KS{
IF getTotalFloorArea(Corridor.Floor.Space)<500 m2
THEN getObjectProperty(Corridor.effectiveWidth)>=1.5 m
END IF
}
2. 당해 층의 바닥면적의 합계가 500제곱미터 이상 1천제곱미터 미만인 경우 1.8미터 이상
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조의2 (복도의 너비 및 설치기준) 2항2호
check(REFB_15-2_2_2){
KS
}
KS{
IF getTotalFloorArea(Corridor.Floor.Space)>=500 m2
getTotalFloorArea(Corridor.Floor.Space)<1000 m2
THEN getObjectProperty(Corridor.effectiveWidth)>=1.8 m
END IF
}
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조의2 (복도의 너비 및 설치기준) 2항3호
Check(REFB_15-2_2_3){
KS
}
KS{
IF getTotalFloorArea(Corridor.Floor.Space)>=1000 m2
THEN getObjectProperty(Corridor.effectiveWidth)>=2.4 m
END IF
}
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조의2 (복도의 너비 및 설치기준) 3항
Check(REFB_15-2_3){
IF CS THEN KS
}
CS{
getSpaceUsage(Space)="CulturalAndAssemblyFacility.PerformanceHall"
isExist(Corridor)=TRUE
}
KS{
getResult(REFB_15-2_3_1) = TRUE
getResult(REFB_15-2_3_2) = TRUE
}
1. 공연장의 개별 관람석(바닥면적이 300제곱미터 이상인 경우에 한한다)의 바깥쪽에는 그 양쪽 및 뒤쪽에 각각 복도를 설치할 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조의2 (복도의 너비 및 설치기준) 3항1호
Check(REFB_15-2_3_1){
IF CS THEN KS
}
CS{
Space mySpace{
getSpaceUsage(Space)="IndividualAuditorium"
}
getFloorArea(mySpace)>300 m2
}
KS{
}
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{
}
제16조(거실의 반자높이) ①영 제50조의 규정에 의하여 설치하는 거실의 반자(반자가 없는 경우에는 보 또는 바로 윗층의 바닥판의 밑면 기타 이와 유사한 것을 말한다. 이하같다)는 그 높이를 2.1미터 이상으로 하여야 한다.
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 16조 (거실의 반자높이) 1항
check(REFB_16_1){
IF (CS) THEN KS
}
CS{
getResult(REFB_16_2) = FALSE
}
KS{
getSpaceHeight(Room, b) >= 2.1m
}
②문화 및 집회시설(전시장 및 동ㆍ식물원은 제외한다), 종교시설, 장례식장 또는 위락시설 중 유흥주점의 용도에 쓰이는 건축물의 관람석 또는 집회실로서 그 바닥면적이 200제곱미터 이상인 것의 반자의 높이는 제1항의 규정에 불구하고 4미터(노대의 아랫부분의 높이는 2.7미터)이상이어야 한다. 다만, 기계환기장치를 설치하는 경우에는 그러하지 아니하다. <개정 2010.4.7.>
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 16조 (거실의 반자높이) 2항
check(REFB_16_2){
IF (CS1 AND CS2) THEN KS
}
CS1{
VentilatorEquipment myVentilatorEquipemnt{
isObjectProperty(VentilatorEquipment.isMechanical)=TRUE
}
isExist(myVentilatorEquipemn) = FALSE
}
CS2{
Space mySpace{
getSpaceUsage(Space) = “Auditorium”
OR getSpaceUsage(Space) = “AssemblyHall”
}
((getBuildingUsage() = “CulturalAndAssemblyFacilities.Tavern”
getBuildingUsage() != “ExhibitionHalls.Tavern”
getBuildingUsage() != “ZoologicalAndBotanicalGardens.Tavern”)
OR getBuildingUsage() = "ReligiousFacilities.Tavern”
제17조(채광 및 환기를 위한 창문등) ①영 제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
}
④ 영 제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
}
제18조(거실등의 방습) ①영 제52조의 규정에 의하여 건축물의 최하층에 있는 거실바닥의 높이는 지표면으로부터 45센티미터 이상으로 하여야 한다. 다만, 지표면을 콘크리트바닥으로 설치하는 등 방습을 위한 조치를 하는 경우에는 그러하지 아니하다.
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 18조 (거실등의 방습) 1항
Check(REFB_18_1){
IF !CS THEN KS}
KS{
getObjectHeight(getFloor(BottomFloor))>=45CM
}
CS {
isObjectProperty(Ground.Surface.isDampProof)=TRUE
}
②영 제52조에 따라 다음 각 호의 어느 하나에 해당하는 욕실 또는 조리장의 바닥과 그 바닥으로부터 높이 1미터까지의 안벽의 마감은 이를 내수재료로 하여야 한다. <개정 2010.4.7.>
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 18조 (거실등의 방습) 2항
Check(REFB_18_2){
IF CS THEN KS
}
CS{
getResult(REFB_18_2_1)=TRUE
OR getResult(REFB_18_2_2)=TRUE
}
KS{
Finish myFinish{
getObjectDistance(Finish,floor)<=1
isObjectPropert(InteriorFinish.Material.waterResistance)=TRUE
}
②제1항에 따른 경계벽은 소리를 차단하는데 장애가 되는 부분이 없도록 다음 각 호의 어느 하나에 해당하는 구조로 하여야 한다. 다만, 다가구주택 및 공동주택의 세대간의 경계벽인 경우에는 「주택건설기준 등에 관한 규정」 제14조에 따른다. <개정 2005.7.22., 2008.3.14., 2010.4.7., 2013.3.23., 2014.11.28.>
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
}
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"))
}
제20조의2(내화구조의 적용이 제외되는 공장건축물) 영 제56조제1항제3호 단서에서 "국토교통부령으로 정하는 공장"이란 별표 2의 업종에 해당하는 공장으로서 주요구조부가 불연재료로 되어 있는 2층 이하의 공장을 말한다. <개정 2005.7.22., 2008.3.14., 2009.7.1., 2013.3.23.>
2. 방화벽의 양쪽 끝과 윗쪽 끝을 건축물의 외벽면 및 지붕면으로부터 0.5미터 이상 튀어 나오게 할 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 21조 (방화벽의 구조) 1항 2호
Check(REFB_21_1_2){
KS
}
KS{
Object myObject{
//방화벽의 양쪽 끝과 윗쪽 끝
}
Wall myWall{
isObjectProperty(Wall.isExternal)=True
}
getObjectDistance(myObject, myWall)>=0.5 m
getObjectDistance(myObject, Roof)>=0.5 m
}
3. 방화벽에 설치하는 출입문의 너비 및 높이는 각각 2.5미터 이하로 하고, 해당 출입문에는 제26조에 따른 갑종방화문을 설치할 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 21조 (방화벽의 구조) 1항 3호
Check(REFB_21_1_3){
KS
}
KS{
Door myDoor{
isObjectProperty(Door.isEntrance)=True
isInstalled(Door, myWall)=True
}
getObjectWidth(myDoor)<=2.5 m
getObjectHeight(myDoor)<=2.5 m
isObjectProperty(myDoor.isStrictFireproofDoor)=True
}