1
72889
건축물의 에너지절약설계기준 제 27조
제27조(에너지절약계획 설계 검토서 항목 추가) 국토교통부장관은 에너지절약계획 설계 검토서의 건축, 기계, 전기, 신재생부분의 항목 추가를 위하여 수요조사를 실시하고, 자문위원회의 심의를 거쳐 반영 여부를 결정할 수 있다.
// 자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 2항
Check(NFSC203_7_2){
IF CS THEN KS
}
Sensor mySensor{
getResult(NFSC203_7_1_1) = TRUE
OR getResult(NFSC203_7_1_2) = TRUE
OR getResult(NFSC203_7_1_3) = TRUE
OR getResult(NFSC203_7_1_4) = TRUE
OR getResult(NFSC203_7_1_5) = TRUE
OR getResult(NFSC203_7_1_6) = TRUE
OR getResult(NFSC203_7_1_7) = TRUE
OR getResult(NFSC203_7_1_8) = TRUE
}
CS{
isInstalled( mySensor) = FALSE
getResult(NFSC203_7_2_1) = TRUE
OR getResult(NFSC203_7_2_2) = TRUE
OR getResult(NFSC203_7_2_3) = TRUE
}
KS{
isInstalled( SmokeSensor) = TRUE
}
Python Code 변환 예정
Modify
2
72890
건축물의 에너지절약설계기준 제 28조 1 항
제28조(제로에너지빌딩 지원센터) ① 국토교통부장관은 제로에너지빌딩 조기 활성화 업무 수행을 위하여 에너지관리공단과 한국건설기술연구원을 제로에너지빌딩 지원센터로 지정하고, 다음 각 호의 업무를 수행하도록 할 수 있다.
// 자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 2항 1호
Check(NFSC203_7_2_1){
KS
}
KS{
Ramp myRamp{
getObjectProperty(Ramp.length) >= 15m
}
isInstalled( SmokeSensor, Stair) = TRUE
isInstalled( SmokeSensor, myRamp) = TRUE
}
Python Code 변환 예정
Modify
3
72891
건축물의 에너지절약설계기준 제 28조 1 항 1호
1. 제로에너지빌딩 시범사업 운영지원에 관한 업무
// 자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 2항 2호
Check(NFSC203_7_2_2){
KS
}
KS{
Corridor myCorridor{
getObjectProperty(Corridor.length) >= 30m
}
isInstalled( SmokeSensor, myCorridor) = TRUE
}
Python Code 변환 예정
Modify
4
72892
건축물의 에너지절약설계기준 제 28조 1 항 2호
2. 제로에너지빌딩 인정 등 인센티브 지원에 관한 업무
// 자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 2항 2호
Check(NFSC203_7_2_3){
IF CS THEN KS
}
CS{
Pipe myPipe{
isObjectProperty(Pit.isPipePit) = TRUE
}
Space mySace{
getSpaceUsage(Space) = "ElevatorTractionMachineRoom"
OR isInstalled( LinenChute,Space) = TRUE
OR isInstalled( myPipe,Space) = TRUE
OR isInstalled( Duct,Space) = TRUE
}
}
KS{
isInstalled( SmokeSensor,mySpace) = TRUE
}
Python Code 변환 예정
Modify
5
72893
건축물의 에너지절약설계기준 제 28조 1 항 3호
3. 제로에너지빌딩 평가, 모니터링 및 분석에 관한 업무
// 자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 2항 4호
Check(NFSC203_7_2_4){
KS
}
KS{
Ceiling myCeiling{
15m <= getObjectHeight(Ceiling) < 20m
}
CeilingCovering myCeilingCovering{
15m <= getObjectHeight(CeilingCovering) < 20m
}
isExist(myCeiling) = TRUE
OR isExist(myCeilingCovering) = TRUE
isInstalled( SmokeSensor) = TRUE
}
Python Code 변환 예정
Modify
6
72896
건축물의 에너지절약설계기준 제 28조 2 항
② 국토교통부장관은 제1항 업무의 효율적 수행을 위하여 제로에너지빌딩 지원센터로 하여금 시행세칙을 제정하여 운영토록 할 수 있다.
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 2항 1호
Check(NFSC503_6_2_1){
KS
}
KS{
Ceiling myCeiling{
isAdjacent(Ceiling, Indoors) = TRUE
}
CeilingCovering myCeilingCovering{
isAdjacent(CeilingCovering, Indoors) = TRUE
}
isInstalled( myCeiling, Sensor) = TRUE
OR isInstalled( myCeilingCovering, Sensor) = TRUE
}
Python Code 변환 예정
Modify
7
72897
건축물의 에너지절약설계기준 제 29조
제29조(재검토기한) 「훈령·예규 등의 발령 및 관리에 관한 규정」 (대통령훈령 제248호)에 따라 이 고시 발령 후의 법령이나 현실여건의 변화 등을 검토하여 이 고시의 폐지, 개정 등의 조치를 하여야 하는 기한은 2017년 5월 31일까지로 한다.
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 5호
Check(NFSC203_7_3_5){
IF CS1 AND CS2 THEN KS
}
Sensor mySensor1{
getObjectProperty(Sensor.sensingMode) = "DifferentialTemperatureType"
getObjectProperty(Sensor.sensingRange) = "SpotType"
}
Sensor mySensor2{
getObjectProperty(Sensor.sensingMode) = "CompensationType"
getObjectProperty(Sensor.sensingRange) = "SpotType"
}
Sensor mySensor3{
getObjectProperty(Sensor.sensingMode) = "ConstantTemperatureType"
getObjectProperty(Sensor.sensingRange) = "SpotType"
}
CS1{
getElementDistance(FloorSlab, Sensor) < 4m
}
CS2{
isFireResistantStructure(SpecificFireFightingBuilding.MainStructuralPart) = TRUE
}
CS3{
getElementDistance(FloorSlab, Sensor) < 8m
getElementDistance(FloorSlab, Sensor) >= 4m
}
KS{
isObjectProperty(mySensor1.type) = "Type1"
isInstalled( mySensor1, FloorSlab, 90) = TRUE
}
Python Code 변환 예정
Modify
8
72899
건축물의 에너지절약설계기준 제 별표10조
연간 1차 에너지 소요량 평가기준
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 6호
Check(NFSC203_7_3_7){
IF CS THEN KS
}
CS{
Sensor mySensor{
getObjectProperty(Sensor.lineTypeEnum) = "ThermopneumaticTube"
getObjectProperty(Sensor.sensingMode) = "DifferentialTemperatureType"
getObjectProperty(Sensor.sensingRange) = "SpotType"
}
isInstalled( mySensor) = TRUE
}
KS{
getResult(NFSC_7_3_7_1) = TRUE
getResult(NFSC_7_3_7_2) = TRUE
getResult(NFSC_7_3_7_3) = TRUE
getResult(NFSC_7_3_7_4) = TRUE
getResult(NFSC_7_3_7_5) = TRUE
getResult(NFSC_7_3_7_6) = TRUE
}
Python Code 변환 예정
Modify
9
72904
건축물의 에너지절약설계기준 제 별표6조
열관류율 계산시 적용되는 중공층의 열저항
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 7호 마목
Check(NFSC203_7_3_7_마){
KS
}
KS{
isInstalled( DetectingElement, Wall) = TRUE
getObjectGradient(Wall, DetectingElement) < 5
}
Python Code 변환 예정
Modify
10
72907
건축물의 에너지절약설계기준 제 별표9조
완화기준
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 8호 가목
Check(NFSC203_7_3_8_가){
IF !CS THEN KS1 AND K2 ELSE THEN KS3 AND KS4
}
Zone myZone{
isObjectProperty(Zone.isDetectionZone) = TRUE
}
CS1{
isFireResistantStructure(SpecificFireFightingBuilding.MainStructuralPart) = TRUE
)
KS1{
isInstalled( ThermocoupleElement , myZone.Floor, c, 18) = TRUE
}
KS2{
isObjectProperty(SpecificFireFightingBuilding.myZone.Floor.area) <= 72m2
getObjectCount(myZone) >= 4
}
KS3{
isInstalled( ThermocoupleElement , myZone.Floor, c, 22) = TRUE
}
KS4{
isObjectProperty(SpecificFireFightingBuilding.myZone.Floor.area) <= 88m2
getObjectCount(myZone) >= 4
}
Python Code 변환 예정
Modify
11
72910
건축물의 에너지절약설계기준 제 서식3조
에너지절약계획 이행 검토서
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 5호
Check(NFSC203_7_3_5){
Sensor mySensor1{
getObjectProperty(Sensor.type) = "Type1"
}
Sensor mySensor2{
isObjectProperty(Sensor.type) = "Type2"
}
IF
{isFireResistantStructure(SpecificFireFightingBuilding) = TRUE)
AND
{isInstalled( Sensor, FloorSlab) = TRUE
getObjectVerticalDistance(FloorSlab, Sensor) < 8m
}
THEN
{(FA = 65
isInstalled( mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR
(FA = 36
isInstalled( mySensor2, FloorSlab.Space, C, FA) = TRUE)
IF getObjectArea(Sensor.FloorSlab) <= FA
THEN getObjectCount(Sensor) = 1
ELSE IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}
ELSE IF
{isFireResistantStructure(SpecificFireFightingBuilding) = TRUE)
AND
{isInstalled( Sensor, FloorSlab) = TRUE
AND
getObjectVerticalDistance(FloorSlab, Sensor) >= 8m
AND
getObjectVerticalDistance(FloorSlab, Sensor) < 15m
THEN
{(FA = 50
isInstalled( mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR
(FA = 36
isInstalled( mySensor2, FloorSlab.Space, C, FA) = TRUE)
IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}
ELSE IF
{isFireResistantStructure(SpecificFireFightingBuilding) != TRUE)
AND
{isInstalled( Sensor, FloorSlab) = TRUE
getObjectVerticalLocation(FloorSlab, Sensor) < 8m
}
THEN
{(FA = 40
isInstalled( mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR
(FA = 23
isInstalled( mySensor2, FloorSlab.Space, C, FA) = TRUE)
IF getObjectArea(Sensor.FloorSlab) <= FA
THEN getObjectCount(Sensor) = 1
ELSE IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}
ELSE IF
{isFireResistantStructure(SpecificFireFightingBuilding) != TRUE)
AND
getObjectVerticalDistance(FloorSlab, Sensor) >= 8m
AND
getObjectVerticalDistance(FloorSlab, Sensor) < 15m
}
THEN
{(FA = 30
isInstalled( mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR
(FA = 23
isInstalled( mySensor2, FloorSlab.Space, C, FA) = TRUE)
IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}
Python Code 변환 예정
Modify
12
19408
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 1호
1. 벽의 경우에는 다음 각목의 1에 해당하는 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 1호
Check (REFB_3_0_1){
IF CS THEN KS
}
CS{
isInstalled( Wall) = TRUE
}
KS{
getResult(REFB_3_0_1_가)=TRUE
getResult(REFB_3_0_1_나)=TRUE
getResult(REFB_3_0_1_다)=TRUE
getResult(REFB_3_0_1_라)=TRUE
getResult(REFB_3_0_1_마)=TRUE
}
Python Code 변환 예정
Modify
13
19410
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 1호 나 목
나. 골구를 철골조로 하고 그 양면을 두께 4센티미터 이상의 철망모르타르(그 바름바탕을 불연재료로 한 것에 한한다. 이하 이 조에서 같다) 또는 두께 5센티미터 이상의 콘크리트블록ㆍ벽돌 또는 석재로 덮은 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 1호 나목
Check (REFB_3_0_1_나){
KS
}
KS{
getObjectProperty(Wall.Structure.materialType) = "SteelFrame"
(isInstalled( WireMeshMortar, Wall.DoubleSide) = TRUE
getObjectWidth(WireMeshMortar) >= 4cm)
(isInstalled( ConcreteBlock, Wall.DoubleSide) = TRUE
OR (getObjectWidth(ConcreteBlock) >= 5cm )
(isInstalled( Brick, Wall.DoubleSide) = TRUE
OR getObjectWidth(Brick) >= 5cm )
(isInstalled( Stone, Wall.DoubleSide) = TRUE
OR getObjectWidth(Stone) >= 5cm)
}
Python Code 변환 예정
Modify
14
19414
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 4호
4. 바닥의 경우에는 다음 각목의 1에 해당하는 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 4호
Check (REFB_3_0_4){
IF CS THEN KS
}
CS{
isInstalled( FloorSlab) = TRUE
}
KS{
getResult(REFB_3_0_4_가)=TRUE
getResult(REFB_3_0_4_나)=TRUE
getResult(REFB_3_0_4_다)=TRUE
}
Python Code 변환 예정
Modify
15
19417
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 4호 다 목
다. 철재의 양면을 두께 5센티미터 이상의 철망모르타르 또는 콘크리트로 덮은 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 4호 다목
Check (REFB_3_0_4_다){
KS
}
KS{
(isInstalled( WireMeshMortar, Steel.DoubleSide) = TRUE
getObjectWidth(WireMeshMortar) >= 5cm)
OR (isInstalled( ConcreteBlock, Wall.DoubleSide) = TRUE
getObjectWidth(ConcreteBlock) >= 5cm)
}
Python Code 변환 예정
Modify
16
19418
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 6호
6. 지붕의 경우에는 다음 각목의 1에 해당하는 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 6호
Check (REFB_3_0_6){
IF CS THEN KS
}
CS{
isInstalled( Roof) = TRUE
}
KS{
getResult(REFB_3_0_6_가)=TRUE
getResult(REFB_3_0_6_나)=TRUE
getResult(REFB_3_0_6_다)=TRUE
}
Python Code 변환 예정
Modify
17
19422
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 3조 7호
7. 계단의 경우에는 다음 각목의 1에 해당하는 것
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 3조 (내화구조) 7호
Check (REFB_3_0_7){
IF CS THEN KS
}
CS{
isInstalled( Stair) = TRUE
}
KS{
getResult(REFB_3_0_7_가)=TRUE
getResult(REFB_3_0_7_나)=TRUE
getResult(REFB_3_0_7_다)=TRUE
getResult(REFB_3_0_7_라)=TRUE
}
Python Code 변환 예정
Modify
18
19602
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 30조 1호 나 목
나. 승강장은 각 층의 내부와 연결될 수 있도록 하되, 그 출입구에는 갑종방화문을 설치할 것. 이 경우 방화문은 언제나 닫힌 상태를 유지할 수 있는 구조이어야 한다.
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 30조 (피난용승강기의 설치기준) 1호 나목
check(REFB_30_0_1_나){
KS
}
KS{
isConnectedTo(Platform, Floor.One.Space) = TRUE
Door myDoor{
isObjectProperty(Door.isEntrance) = TRUE
isInstalled( Door, Floor.One) = TRUE
}
isObjectProperty(myDoor.isStrictFireproofDoor) = TRUE
}
Python Code 변환 예정
Modify
19
19609
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 30조 2호 다 목
다. 승강로 상부에 「건축물의 설비기준 등에 관한 규칙」 제14조에 따른 배연설비를 설치할 것
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 30조 (피난용승강기의 설치기준) 2호 다목
check(REFB_30_0_2_다){
KS
}
KS{
isInstalled( Opening.TopSurface, SmokeExhaustionSystem)
getResult(RFB_14) = TRUE
}
Python Code 변환 예정
Modify
20
25271
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 15조 2 항 6호
6. 「산업안전보건법」에 의한 작업장에 설치하는 계단인 경우에는 「산업안전 기준에 관한 규칙」에서 정한 구조로 할 것
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 2항 6호
check(REFB_15_2_6){
IF CS THEN KS
}
CS{
Space mySpace{
getObjectProperty(Space.usage) = "Workplace"
}
isInstalled( Stair,mySpace) = TRUE
}
KS{
getResult(ROSHA_26) = TRUE
getResult(ROSHA_27) = TRUE
getResult(ROSHA_28) = TRUE
getResult(ROSHA_29) = TRUE
getResult(ROSHA_30) = TRUE
}
Python Code 변환 예정
Modify
21
25280
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 15조 5 항 3호
3. 경사로의 직선 및 굴절부분의 유효너비는 「장애인·노인·임산부등의 편의증진보장에 관한 법률」이 정하는 기준에 적합할 것
// 건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 15조 (계단의 설치기준) 5항 3호
check(REFB_15_5_3){
IF CS THEN KS
}
CS{
isInstalled( Ramp, Building) = TRUE
}
KS{
getResult(unimplemented_CDAPA) = TRUE
}
Python Code 변환 예정
Modify
22
25319
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 21조 1 항 3호
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
}
Python Code 변환 예정
Modify
23
25445
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 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 변환 예정
Modify
24
25448
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 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 변환 예정
Modify
25
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
26
67484
소방시설 설치·유지 및 안전관리에 관한 법률 제 11조 4 항
④ 다음 각 호의 어느 하나에 해당하는 특정소방대상물 가운데 대통령령으로 정하는 특정소방대상물에는 제9조제1항에도 불구하고 대통령령으로 정하는 소방시설을 설치하지 아니할 수 있다.
// 소방시설 설치ㆍ유지 및 안전관리에 관한 법률 11조 (소방시설기준 적용의 특례) 4항
Check(IMSFA_11_4){
IF CS THEN KS
}
CS{
getResult(IMSFA_11_4_4) = TRUE
}
KS{
isInstalled( FireFightingFacility) = TRUE OR FALSE
}
Python Code 변환 예정
Modify
27
67488
소방시설 설치·유지 및 안전관리에 관한 법률 제 11조 4 항 4호
4. 「위험물 안전관리법」 제19조에 따른 자체소방대가 설치된 특정소방대상물
// 소방시설 설치ㆍ유지 및 안전관리에 관한 법률 11조 (소방시설기준 적용의 특례) 4항 4호
Check(IMSFA_11_4_4){
KS
}
KS{
getResult(SCHSA_19) = true
isInstalled( FireBrigade, SpecificFireFithtingBuilding) = TRUE
}
Python Code 변환 예정
Modify
28
19903
소화기구 및 자동소화장치의 화재안전기준(NFSC 101) 제 4조 1 항 4호 가 목
가. 각층마다 설치하되, 특정소방대상물의 각 부분으로부터 1개의 소화기까지의 보행거리가 소형소화기의 경우에는 20m 이내, 대형소화기의 경우에는 30m 이내가 되도록 배치할 것. 다만, 가연성물질이 없는 작업장의 경우에는 작업장의 실정에 맞게 보행거리를 완화하여 배치할 수 있으며, 지하구의 경우에는 화재발생의 우려가 있거나 사람의 접근이 쉬운 장소에 한하여 설치할 수 있다<개정 2012.6.11>
//소화기구 및 자동 소화장치의 화재안전기준(nfsc 101) 4조 (설치기준) 1항 4호 가목
Check(NFSC101_4_1_4){
KS
}
KS{
isInstalled( FireExtinguisher, Floor)=True
IF getObjectProperty(FireExtinguisher.sizeType)="SmallSize"
THEN getObjectDistance(SpecificFireFightingBuilding.Wall, FireExtinguisher.One)<=20 m
getObjectDistance(SpecificFireFightingBuilding.Column, FireExtinguisher.One)<=20 m
ELSE IF getObjectProperty(FireExtinguisher.sizeType)="LargeSize"
THEN getObjectDistance(SpecificFireFightingBuilding.Wall, FireExtinguisher.One)<=30 m
getObjectDistance(SpecificFireFightingBuilding.Column, FireExtinguisher.One)<=30 m
END IF
}
Python Code 변환 예정
Modify
29
19904
소화기구 및 자동소화장치의 화재안전기준(NFSC 101) 제 4조 1 항 4호 나 목
나. 특정소방대상물의 각층이 2 이상의 거실로 구획된 경우에는 가목의 규정에 따라 각 층마다 설치하는 것 외에 바닥면적이 33㎡ 이상으로 구획된 각 거실(아파트의 경우에는 각 세대를 말한다)에도 배치할 것<개정 2012.6.11>
//소화기구 및 자동 소화장치의 화재안전기준(nfsc 101) 4조 (설치기준) 1항 3호 나목
Check(NFSC101_4_1_3_나){
IF CS THEN KS
}
CS{
isFirePartitioned(Floor.One, Room.Two, SpecificFireFightingBuilding)=True
}
KS{
Room myRoom{
isFirePartion(Room, a, 33)=True
}
isInstalled( FireExtinguishingEquipment, myRoom)=True
}
Python Code 변환 예정
Modify
30
19906
소화기구 및 자동소화장치의 화재안전기준(NFSC 101) 제 4조 7호 다 목
다. 가스차단장치는 주방배관의 개폐밸브로부터 2m 이하의 위치에 설치하되, 상시 확인 및 점검이 가능하도록 설치할 것<개정 2012.6.11>
//소화기구 및 자동 소화장치의 화재안전기준(nfsc 101) 4조 (설치기준) 1항 7호 다목
Check(NFSC101_4_1_7_다){
KS
}
KS{
ShutdownEquipment myShutdownEquipment{
isObjectProperty(ShutdownEquipment.type)="GAS"
}
Space mySpace{
isObjectProperty(Space.usage) = "Kitchen"
}
Pipe myPipe{
isInstalled( Pipe, mySpace) = TRUE
}
Valve myValve{
isObjectProperty(Valve.isShutoffValve) = TRUE
isInstalled( Valve, myPipe) = TRUE
}
isElementDistance(myShutdownEquipment, myValve) <= 2m
}
Python Code 변환 예정
Modify
31
72617
스프링클러설비의 화재안전기준(NFSC 103) 제 10조 7 항 5호 가 목
가. 천장의 최상부에 스프링클러헤드를 설치하는 경우에는 최상부에 설치하는 스프링클러헤드의 반사판을 수평으로 설치할 것
//스프링클러설비의 화재안전기준(NFSC 103) 10조 (헤드) 7항5호
Check(NFSC103_10_7_5_1){
IF CS THEN KS
}
CS{
isInstalled( SprinklerHead, a)=TRUE
}
KS{
isHorizontal(SprinklerHead.Deflector)=TRUE
}
Python Code 변환 예정
Modify
32
72618
스프링클러설비의 화재안전기준(NFSC 103) 제 10조 7 항 5호 나 목
나. 천장의 최상부를 중심으로 가지관을 서로 마주보게 설치하는 경우에는 최상부의 가지관 상호간의 거리가 가지관상의 스프링클러헤드 상호간의 거리의 2분의 1이하(최소 1m 이상이 되어야 한다)가 되게 스프링클러헤드를 설치하고, 가지관의 최상부에 설치하는 스프링클러헤드는 천장의 최상부로부터의 수직거리가 90㎝ 이하가 되도록 할 것. 톱날지붕, 둥근지붕 기타 이와 유사한 지붕의 경우에도 이에 준한다.
//스프링클러설비의 화재안전기준(NFSC 103) 10조 (헤드) 7항5호 나목
Check(NFSC103_10_7_5_2){
IF CS THEN KS
}
CS{
isInstalled( Celling,BranchPipe,b)=TRUE
}
KS{
BD=getElementDistance(BranchPipe, c)
SD=getElementDistance(SprinklerHead, c)
SD/BD>=2
BD>=1 m
IF isInstalled( BranchPipe, SprinklerHead, a )=TRUE
THEN getVerticalDistance(SprinklerHead,Ceiling.UppermostPart)<=90 cm
END IF
}
Python Code 변환 예정
Modify
33
19913
연결살수설비의 화재안전기준(NFSC 503) 제 4조 1 항 3호
3. 개방형헤드를 사용하는 송수구의 호스접결구는 각 송수구역마다 설치할 것. 다만, 송수구역을 선택할 수 있는 선택밸브가 설치되어 있고 각 송수구역의 주요구조부가 내화구조로 되어 있는 경우에는 그러하지 아니하다.
// 연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 1항 3호
Check(NFSC503_4_1_3){
IF !CS THEN KS
}
Zone myZone{
isObjectProperty(Zone.isWaterSupplyZone)=TRUE
}
CS{
Valve myValve{
isObjectProerpty(Valve.isSelectionValve) = TRUE
}
isInstalled( myValve) = TRUE
hasObject(myZone,MainStructuralPart) = TRUE
isFireResistantStructure(MainStructuralPart) = TRUE
}
KS{
Port myPort{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
}
Head myHead{
getObjectProperty(Head.openAndCloseType) = "OpenType"
}
isInstalled( myPort.호스접결구, myZone.One) = TRUE
}
Python Code 변환 예정
Modify
34
19915
연결살수설비의 화재안전기준(NFSC 503) 제 4조 1 항 5호
5. 송수구로부터 주배관에 이르는 연결배관에는 개폐밸브를 설치하지 아니 할 것. 다만, 스프링클러설비·물분무소화설비·포소화설비 또는 연결송수관설비의 배관과 겸용하는 경우에는 그러하지 아니하다.
// 연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 1항 5호
Check(NFSC503_4_1_5){
IF !CS THEN KS
}
CS{
Pipe myPipe1{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
}
Pipe myPipe2{
getObjectProperty(Port.systemType) = "SprinklerSystem"
}
Pipe myPipe3{
getObjectProperty(Port.systemType) = "WaterSprayExtingushingSystem"
}
Pipe myPipe4{
getObjectProperty(Port.systemType) = "FoamExtinguishingSystem"
}
Pipe myPipe5{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
}
Pipe myPipe6{
getObjectProperty(Port.systemType) = "FireDepartmentConnectionSystem"
}
isShared(myPipe1, myPipe2, myPipe3, myPipe4) = TRUE
OR isShared(myPipe5, myPipe6) = TRUE
}
KS{
Port myPort{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
}
Pipe myPipe{
isObjectProperty(Pipe.isRiser)=TRUE
}
Vavle myValve{
isObjectProperty(Valve.isShutoffValve)= TRUE
}
isConnectedTo(myPort, Pipe) = TRUE
isConnectedTo(Pipe, myPipe) = TRUE
isInstalled( myValve, myPipe) = FALSE
}
Python Code 변환 예정
Modify
35
19916
연결살수설비의 화재안전기준(NFSC 503) 제 4조 3 항
③ 연결살수설비에는 송수구의 가까운 부분에 자동배수밸브와 체크밸브를 다음 각 목의 기준에 따라 설치하여야 한다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 3항
Check(NFSC503_4_3){
KS
}
KS{
Valve myValve1{
isObjectProperty(Valve.isAutomiaticDeliveryValve) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isCheckValve) = TRUE
}
isInstalled( myValve1, HookingUpSprinklerSystem) = TRUE
isInstalled( myValve2, HookingUpSprinklerSystem) = TRUE
getResult(NFSC503_4_3_1) = TRUE
getResult(NFSC503_4_3_2) = TRUE
Python Code 변환 예정
Modify
36
19919
연결살수설비의 화재안전기준(NFSC 503) 제 4조 4 항
④개방형헤드를 사용하는 연결살수설비에 있어서 하나의 송수구역에 설치하는 살수헤드의 수는 10개 이하가 되도록 하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 4항
Check(NFSC503_4_4){
IF CS THEN KS
}
CS{
Head myHead{
getObjectProperty(Head.openAndCloseType) = "OpenType"
}
getObjectProperty(myHead.systemType) = "HookingUpSprinklerSystem"
}
KS{
Zone myZone{
isObjectProperty(Zone.isWaterSupplyZone) = TRUE
}
Head myHead{
isInstalled( HookingUpSprinklerSystem.Head, myZone.One) = TRUE
}
getObjectCount(myHead) <= 10
}
Python Code 변환 예정
Modify
37
19921
연결살수설비의 화재안전기준(NFSC 503) 제 5조 1 항 2호
2. 다른 부분과 내화구조로 구획된 덕트 또는 피트의 내부에 설치하는 경우
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 1항 2호
Check(NFSC503_5_1_2){
KS
}
KS{
Duct myDcut{
isFireResistantStructure(Duct) = TRUE
}
isInstalled( Pipe, Duct) = TRUE
OR isInstalled( Pipe, Pit.Inside) = TRUE
}
Python Code 변환 예정
Modify
38
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
39
19924
연결살수설비의 화재안전기준(NFSC 503) 제 5조 2 항 1호
1. 연결살수설비 전용헤드를 사용하는 경우에는 다음 표에 따른 구경 이상으로 할 것
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 2항 1호
Check(NFSC503_5_2_1){
IF CS THEN KS
}
CS{
getObjectProperty(Head.systemType) = "HookingUpSprinklerSystem"
isObjectProperty(Head.isShared) = FALSE
}
KS{
Head myHead{
isInstalled( Head., Pipe.One) = TRUE
}
NH = getObjectCount(myHead)
IF NH = 1 THEN getObjectDiameter(Pipe) >= 32mm
ELSE IF NH = 2 THEN getObjectDiameter(Pipe) >= 40mm
ELSE IF NH = 3 THEN getObjectDiameter(Pipe) >= 50mm
ELSE IF NH = 4 OR NH = 5 THEN getObjectDiameter(Pipe) >= 65mm
ELSE IF NH >= 6 AND HN <= 10 THEN getObjectDiameter(Pipe) >= 80mm
}
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 2항 2호
Check(NFSC503_5_2_2){
IF CS THEN KS
}
CS{
isObjectProperty(SprinklerSystem.Head.systemType) = "HookingUpSprinklerSystem"
}
KS{
getResult(NFSC103_*_1) = TRUE
}
Python Code 변환 예정Python Code 변환 예정
Modify
40
19926
연결살수설비의 화재안전기준(NFSC 503) 제 5조 2 항 2호
2. 스프링클러헤드를 사용하는 경우에는 「스프링클러설비의 화재안전기준(NFSC 103)」 별표 1의 기준에 따를 것
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 2항 1호
Check(NFSC503_5_2_1){
IF CS THEN KS
}
CS{
getObjectProperty(Head.systemType) = "HookingUpSprinklerSystem"
isObjectProperty(Head.isShared) = FALSE
}
KS{
Head myHead{
isInstalled( HookingUpSprinklerSystem.Head., Pipe.One) = TRUE
}
NH = getObjectCount(myHead)
IF NH = 1 THEN getObjectDiameter(Pipe) >= 32mm
ELSE IF NH = 2 THEN getObjectDiameter(Pipe) >= 40mm
ELSE IF NH = 3 THEN getObjectDiameter(Pipe) >= 50mm
ELSE IF NH = 4 OR NH = 5 THEN getObjectDiameter(Pipe) >= 65mm
ELSE IF NH >= 6 AND HN <= 10 THEN getObjectDiameter(Pipe) >= 80mm
}
Python Code 변환 예정
Modify
41
19927
연결살수설비의 화재안전기준(NFSC 503) 제 5조 3 항
③폐쇄형헤드를 사용하는 연결살수설비의 주배관은 옥내소화전설비의 주배관(옥내소화전설비가 설치된 경우에 한한다) 및 수도배관(연결살수설비가 설치된 건축물 안에 설치된 수도배관 중 구경이 가장 큰 배관을 말한다) 또는 옥상에 설치된 수조(다른 설비의 수조를 포함한다)에 접속하여야 한다. 이 경우 연결살수설비의 주배관과 옥내소화전설비의 주배관·수도배관·옥상에 설치된 수조의 접속부분에는 체크밸브를 설치하되, 점검하기 쉽게 하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 3항
Check(NFSC503_5_3){
IF CS THEN KS
}
Head myHead{
isObjectProperty(Head.openAndCloseType) = "EnclosedType"
}
Pipe myPipe1{
isObjectProperty(Pipe.isRiser) = TRUE
isObjectProperty(myPipe.systemType) = "HookingUpSprinklerSystem"
}
CS{
isInstalled( myHead, myPipe1) = TRUE
}
KS{
Pipe myPipe2{
isObjectProperty(Pipe.isRiser) = TRUE
isObjectProperty(myPipe.systemType) = "IndoorFireHydrantSystem"
}
Tank myTank{
isInstalled( Tank, Rooftop) = TRUE
}
Pipe myPipe3{
Pipe.isForWater = TRUE
연결살수설비가 설치된 건축물 안에 설치된 수도배관 중 구경이 가장 큰 배관
}
Valve myValve{
isObjectProperty(Valve.isCheckValve) = TRUE
}
(isConnectedTo(myPipe1, myPipe2) = TRUE
isInstalled( myValve, myPipe1) = TRUE
isInstalled( myValve, myPipe2) = TRUE)
OR (isConnectedTo(myPipe1, myPipe3) = TRUE
isInstalled( myValve, myPipe1) = TRUE
isInstalled( myValve, myPipe3) = TRUE)
OR (isConnectedTo(myPipe1, myTank) = TRUE
isInstalled( myValve, myPipe1) = TRUE
isInstalled( myValve, myTank) = TRUE)
}
Python Code 변환 예정
Modify
42
19928
연결살수설비의 화재안전기준(NFSC 503) 제 5조 4 항
④폐쇄형헤드를 사용하는 연결살수설비에는 다음 각 호의 기준에 따른 시험배관을 설치하여야 한다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 4항
Check(NFSC503_5_4){
IF CS THEN KS
}
CS{
Head myHead{
isObjectProperty(Head.openAndCloseType) = "EnclosedType"
}
isObjectProperty(myHead.systemType) = "HookingUpSprinklerSystem"
}
KS{
isInstalled( myPipe) = TRUE
getResult(NFSC503_5_4_1) = TRUE
getResult(NFSC503_5_4_2) = TRUE
}
Python Code 변환 예정
Modify
43
19931
연결살수설비의 화재안전기준(NFSC 503) 제 5조 5 항
⑤개방형헤드를 사용하는 연결살수설비의 수평주행배관은 헤드를 향하여 상향으로 100분의 1 이상의 기울기로 설치하고 주배관중 낮은 부분에는 자동배수밸브를 제4조제3항제3호의 기준에 따라 설치하여야 한다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 5항
Check(NFSC503_5_5){
IF CS THEN KS
}
CS{
Head myHead{
isObjectProperty(Head.openAndCloseType) = "OpenType"
}
isInstalled( myHead, HookingUpSprinklerSystem) = TRUE
}
KS{
Pipe myPipe{
isObjectProperty(Pipe.isFeedMains) = TRUE
getObjectProperty(Pipe.systemType) = "HookingUpSprinklerSystem"
}
두 객체의 기울기(myPipe, Head) >= 1/100
}
Python Code 변환 예정
Modify
44
19932
연결살수설비의 화재안전기준(NFSC 503) 제 5조 6 항
⑥가지배관 또는 교차배관을 설치하는 경우에는 가지배관의 배열은 토너멘트방식이 아니어야 하며, 가지배관은 교차배관 또는 주배관에서 분기되는 지점을 기점으로 한 쪽 가지배관에 설치되는 헤드의 개수는 8개 이하로 하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 6항
Check(NFSC503_5_6){
IF CS THEN KS
}
Pipe myPipe1{
isObjectProperty(Pipe.isBranchLines) = TRUE
}
Pipe myPipe2{
isObjectProperty(Pipe.isCrossMains) = TRUE
}
Pipe myPipe3{
isObjectProperty(Pipe.isRiser) = TRUE
}
CS{
isInstalled( myPipe1) = TRUE
OR isInstalled( myPipe2) = TRUE
}
KS{
Head myHead{
isInstalled( Head, myPipe1.DivergedSide.One) = TRUE
}
isObjectProperty(myPipe1.tournamentArrangement) = FALSE
getObjectCount(myHead) <= 8
}
Python Code 변환 예정
Modify
45
19933
연결살수설비의 화재안전기준(NFSC 503) 제 5조 8 항
⑧급수배관에 설치되어 급수를 차단할 수 있는 개폐밸브는 개폐표시형으로 하여야 한다. 이 경우 펌프의 흡입측배관에는 버터플라이밸브(볼형식의 것을 제외한다)외의 개폐표시형밸브를 설치하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 8항
Check(NFSC503_5_6){
IF CS THEN KS
}
Pipe myPipe{
isObjectProperty(Pipe.usage) = "WaterSupplyPipe"
}
Valve myValve1{
isObjectProperty(Valve.isShutoffValve) = TRUE
}
CS{
isInstalled( myValve1,myPipe) = TRUE
}
KS{
isObjectProperty(myValve1.isIndicatingValve) = TRUE
Valve myValve2{
isInstalled( Valve, Pump.Inlet) = TRUE
}
isObjectProperty(myValve2.isIndicatingValve) = TRUE
isObjectProperty(myValve2.isButterflyValve) = FALSE
}
Python Code 변환 예정
Modify
46
19934
연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항
⑨연결살수설비 교차배관의 위치·청소구 및 가지배관의 헤드설치는 다음 각 호의 기준에 따른다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항
Check(NFSC503_5_9){
IF CS THEN KS
}
CS{
Pipe myPipe1{
isObjectProperty(Pipe.isCrossMains) = TRUE
isObjectProperty(Pipe.systemType) = "HookingUpSprinklerSystem")
}
Pipe myPipe2{
isObjectProperty(Pipe.isBranchLines) = TRUE
isObjectProperty(Pipe.systemType) = "HookingUpSprinklerSystem")
}
CleanOut myCleanOut{
isObjectProperty(CleanOut.systemType) = "HookingUpSprinklerSystem")
}
isInstalled( myPipe1) = TRUE
OR isInstalled( myPipe2.Head) = TRUE
OR (isInstalled( myCleanOut) = TRUE
}
KS{
getResult(NFSC503_5_9_1) = TRUE
getResult(NFSC503_5_9_2) = TRUE
getResult(NFSC503_5_9_3) = TRUE
}
Python Code 변환 예정
Modify
47
19937
연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항 3호
3. 폐쇄형헤드를 사용하는 연결살수설비에 하향식헤드를 설치하는 경우에는 가지배관으로부터 헤드에 이르는 헤드접속배관은 가지관상부에서 분기할 것. 다만, 소화설비용 수원의 수질이 「먹는물관리법」 제5조에 따라 먹는물의 수질기준에 적합하고 덮개가 있는 저수조로부터 물을 공급받는 경우에는 가지배관의 측면 또는 하부에서 분기할 수 있다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항 3호
Check(NFSC503_5_9_3){
IF CS THEN KS
}
Head myHead1{
isObjectProperty(Head.openAndCloseType) = "EnclosedType"
}
Head myHead2{
isObjectProperty(myHead.installationDirectionType) = "TopDownType"
}
CS{
isObjectProperty(myHead1.systemType) = "HookingUpSprinklerSystem"
isInstalled( myHead2, HookingUpSprinklerSystem) = TRUE
}
KS{
Pipe myPipe1{
isObjectProperty(Pipe.isBranchLines) = TRUE
}
Pipe myPipe2{
isConnectedTo(Pipe, myPipe1) = TRUE
isConnectedTo(Pipe, myHead2) = TRUE
}
getObjectVerticalLocation(myPipe2, myPipe1) > 0
}
Python Code 변환 예정
Modify
48
19938
연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항
⑩ 배관에 설치되는 행가는 다음 각 호의 기준에 따라 설치하여야 한다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항
Check(NFSC503_5_10){
IF CS THEN KS
}
CS{
isInstalled( Hanger, Pipe) = TRUE
}
KS{
getResult(NFSC503_5_10_1) = TRUE
getResult(NFSC503_5_10_2) = TRUE
getResult(NFSC503_5_10_3) = TRUE
}
Python Code 변환 예정
Modify
49
19939
연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항 1호
1. 가지배관에는 헤드의 설치지점 사이마다 1개 이상의 행가를 설치하되, 헤드간의 거리가 3.5 m를 초과하는 경우에는 3.5m 이내마다 1개 이상 설치할 것. 이 경우 상향식헤드와 행가 사이에는 8 ㎝ 이상의 간격을 두어야 한다.
//연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항 1호
Check(NFSC503_5_10_1){
KS
}
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines)=True
}
Head myHead{
getObjectProperty(Head.installationDirectionType)="BottomUpType"
}
KS{
isInstalled( Hanger, myPipe, "헤드의 설치지점 사이")=True
IF getObjectDistance(Head)>3.5 m
THEN isInstalled( Hanger, myPipe, 3.5 m)=True
getObjectDistance(myHead, Hanger)>8 cm
getResult(NFSC503_5_10_3)=True
}
Python Code 변환 예정
Modify
50
19940
연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항 2호
2. 교차배관에는 가지배관과 가지배관사이마다 1개 이상의 행가를 설치하되, 가지배관 사이의 거리가 4.5 m를 초과하는 경우에는 4.5 m 이내마다 1개 이상 설치할 것
//연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항 2호
Check(NFSC503_5_10_2){
KS
}
Pipe myPipe{
isObjectProperty(Pipe.isCrossMains)=True
}
Pipe myPipe2{
isObjectProperty(Pipe.isBranchLines)=True
}
KS{
isInstalled( Hanger, myPipe, "가지배관 사이")=True
IF getObjectDistance(myPipe2)>4.5 m
THEN isInstalled( Hanger, myPipe, 4.5 m)=True
END IF
getResult(NFSC503_5_10_3)=True
}
Python Code 변환 예정
Modify
51
19941
연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항 3호
3. 제1호와 제2호의 수평주행배관에는 4.5 m 이내마다 1개 이상 설치할 것
//연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항 3호
Check(NFSC503_5_10_3){
IF CS THEN KS
}
CS{
isObjectProperty(Pipe.isFeedMains)=True
}
Pipe myPipe2{
isObjectProperty(Pipe.isFeedMains)=True
}
KS{
isInstalled( Hanger, myPipe2,4.5 m)=True
}
Python Code 변환 예정
Modify
52
19944
연결살수설비의 화재안전기준(NFSC 503) 제 6조 2 항 1호
1. 천장 또는 반자의 실내에 면하는 부분에 설치할 것
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 2항 1호
Check(NFSC503_6_2_1){
KS
}
KS{
SprinklerHead mySprinklerHead{
isInstalled( SprinklerHead, HookingUpSprinklerSystem) = TRUE
}
isAdjacent(mySprinklerHead.Head.AttachingToSurface, Indoors) = TRUE
(isAdjacent(mySprinklerHead.Head.AttachingToSurface, Ceiling) = TRUE
OR isAdjacent(mySprinklerHead.Head.AttachingToSurface, CeilingCovering) = TRUE)
}
Python Code 변환 예정
Modify
53
19961
연결살수설비의 화재안전기준(NFSC 503) 제 7조
제7조(헤드의 설치제외) 연결살수설비를 설치하여야 할 특정소방대상물 또는 그 부분으로서 다음 각 호의 어느 하나에 해당하는 장소에는 연결살수설비의 헤드를 설치하지 아니할 수 있다. <개정 2012.8.20>
//연결살수설비의 화재안전기준(nfsc 503) 7조 (헤드의 설치제외)
Check(NFSC503_7){
IF CS THEN KS
}
CS{
getResult(NFSC503_7_0_3) = TRUE
OR getResult(NFSC503_7_0_5) = TURE
}
KS{
isInstalled( HookingUpSprinklerSystem.Head) = TRUE
OR isInstalled( HookingUpSprinklerSystem.Head) != TRUE
}
Python Code 변환 예정
Modify
54
20465
연결송수관설비의 화재안전기준(NFSC 502) 제 4조 7호
7. 송수구는 연결송수관의 수직배관마다 1개 이상을 설치할 것. 다만, 하나의 건축물에 설치된 각 수직배관이 중간에 개폐밸브가 설치되지 아니한 배관으로 상호 연결되어 있는 경우에는 건축물마다 1개씩 설치할 수 있다.
//연결송수관설비의 화재안전기준(NFSC 502) 4조 (송수구) 7호
Check(NFSC502_4_0_7){
IF CS THEN KS1 ELSE KS2
}
CS{
Port myPort{
Port.typeForWater = "FireDepartmentConnection"
}
Pipe myPipe{
Pipe.systemType = "FireDepartmentConnectionSystem"
isObjectProperty(Pipe.isRiser)=True
}
Pipe myPipe2{
isInstalled( myValve, Pipe)=False
}
Valve myValve{
isObjectProperty(Valve.isShutOffValve)=True
}
isConnectedTo(myPipe, myPipe2)=True
}
KS1{
isInstalled( myPort)=True
}
KS2{
getObjectCount(myPort,myPipe )>=1
}
Python Code 변환 예정
Modify
55
20483
연결송수관설비의 화재안전기준(NFSC 502) 제 6조 1호
1. 연결송수관설비의 방수구는 그 특정소방대상물의 층마다 설치할 것. 다만, 다음 각목의 어느 하나에 해당하는 층에는 설치하지 아니할 수 있다.
연결송수관설비의 화재안전기준(NFSC 502) 6조 (방수구) 1호
Check(NFSC502_6_0_1){
IF !CS THEN KS
}
CS{
getResult(NFSC502_6_0_1_가)=True
getResult(NFSC502_6_0_1_나)=True
}
KS{
Port myPort{
Port.typeForWater = "Delivery"
}
isInstalled( myPort,SpecificFireFightingBuilding)=True
}
Python Code 변환 예정
Modify
56
20485
연결송수관설비의 화재안전기준(NFSC 502) 제 6조 1호 다 목
다. 송수구가 부설된 옥내소화전을 설치한 특정소방대상물(집회장·관람장·백화점·도매시장·소매시장·판매시설·공장·창고시설 또는 지하가를 제외한다)로서 다음의 어느 하나에 해당하는 층
(1) 지하층을 제외한 층수가 4층 이하이고 연면적이 6,000㎡ 미만인 특정소방대상물의 지상층
(2) 지하층의 층수가 2 이하인 특정소방대상물의 지하층
//연결송수관설비의 화재안전기준(NFSC 502) 6조 (방수구) 1호 다목
Check(NFSC502_6_0_1_다목){
KS
}
KS{
getBuildingUsage()!="AssemblyHall"
getBuildingUsage()!="Auditorium"
getBuildingUsage()!="DepartmentStore"
getBuildingUsage()!="WholesaleMarket"
getBuildingUsage()!="CommercialFacility"
getBuildingUsage()!="Factory"
getBuildingUsage()!="Warehouse"
getBuildingUsage()!="UndergroundMarket"
FireHydrant myFireHydrant{
isExternal(FireHydrant) = FALSE
isInstalled( FireDepartmentConnection, FireHydrant)=True
}
isInstalled( myIndoorFireHydrant,SpecificFireFightingBuilding)=True
Floor myFloor{
Floor.number>0
}
Floor myFloor2{
Floor.number<0
}
(
gerObjectCount(myFloor)<=4
getGrossFloorArea()<6000 m2
Floor.number>0
)
OR
(
getObjectCount(myFloor)<=2
Floor.number<0
)
}
Python Code 변환 예정
Modify
57
20489
연결송수관설비의 화재안전기준(NFSC 502) 제 6조 3호
3. 11층 이상의 부분에 설치하는 방수구는 쌍구형으로 할 것. 다만, 다음 각목의 어느 하나에 해당하는 층에는 단구형으로 설치할 수 있다.
//연결송수관설비의 화재안전기준(NFSC 502) 6조 (방수구) 3호
Check(NFSC502_6_0_3){
IF CS1 THEN KS1 ELSE IF CS2 THEN KS2
}
CS1{
Space mySpace{
getFloorNumber(Space)>=11
}
isInstalled( FireDepartmentConnectionSystem.Port, mySpace)=True
}
KS1{
getObjectProperty(FireDepartmentConnectionSystem.Port.shapeType)="DoubleType"
}
CS2{
getResult(NFSC502_6_0_3_가)=True
OR getResult(NFSC502_6_0_3_나)=True
}
KS2{
getObjectProperty(FireDepartmentConnectionSystem.Port.shapeType)="SingleType"
}
Python Code 변환 예정
Modify
58
20496
연결송수관설비의 화재안전기준(NFSC 502) 제 7조 1호
1. 방수기구함은 피난층과 가장 가까운 층을 기준으로 3개층마다 설치하되, 그 층의 방수구마다 보행거리 5m 이내에 설치할 것 <개정 2014.8.18>
//연결송수관설비의 화재안전기준(NFSC 502) 7조 (방수기구함) 1호
Check(NFSC502_7_0_1){
KS
}
KS{
Floor myFloor{
isObjectProperty(Floor.isEscape)=True
}
Floor myFloor2{
Floor.number>EFN
}
Floor myFloor3{
Floor.nmberisInstalled( DischargeCabinet, myFloor2, 3)=True
isInstalled( DischargeCabinet, myFloor3, 3)=True
getObjectDistance(FireDepartmentConnectionSystem.Port, DischargeCabinet) <= 5 m
}
Python Code 변환 예정
Modify
59
72597
연결송수관설비의 화재안전기준(NFSC 502) 제 5조 3 항 2호
2. 다른 부분과 내화구조로 구획된 덕트 또는 피트의 내부에 설치하는 경우
//연결송수관설비의 화재안전기준(NFSC 502) 5조 (배관) 3항 2호
Check(NFSC502_5_3_2){
KS
}
KS{
Duct myDuct{
isFireResistantStructure(Duct)=True
}
Pit myPit{
isFireResistantStructure(Pit)=True
}
isInstalled( Pipe, myDuct)=True
OR isInstalled( Pipe, myPit)=True
}
Python Code 변환 예정
Modify
60
20102
연소방지설비의 화재안전기준(NFSC 506) 제 4조 4 항 1호
1. 연소방지설비전용헤드를 사용하는 경우에는 다음 표에 따른 구경 이상으로 할 것
//연소방지설비의 화재안전 기준(nfsc 506) 4조 (배관) 4항 1호
Check(NFSC506_4_4_1){
IF CS THEN KS
}
CS{
isInstalled( CombustionProtectionSystem, ?) = TRUE
}
KS{
Pipe myPipe{
hasObject(CombustionProtectionSystem, Pipe) = TRUE
}
SprinklerHead mySprinklerHead{
isInstalled( myPipe, SprinklerHead) = TRUE
}
(getObjectCount(mySprinklerHead) = 1
getObjectProperty(myPipe.Diameter) >= 32mm)
OR(getObjectCount(mySprinklerHead) = 2
getObjectProperty(myPipe.Diameter) >= 40mm)
OR(getObjectCount(mySprinklerHead) = 3
getObjectProperty(myPipe.Diameter) >= 50mm)
OR(getObjectCount(mySprinklerHead) = 4
getObjectProperty(myPipe.Diameter) >= 65mm)
OR(getObjectCount(mySprinklerHead) = 5
getObjectProperty(myPipe.Diameter) >= 65mm)
OR(getObjectCount(mySprinklerHead) >= 6
getObjectProperty(myPipe.Diameter) >= 80mm)
}
Python Code 변환 예정
Modify
61
20104
연소방지설비의 화재안전기준(NFSC 506) 제 4조 5 항
⑤연소방지설비에 있어서의 수평주행배관의 구경은 100㎜ 이상의 것으로 하되, 연소방지설비전용헤드 및 스프링클러헤드("방수헤드"라 한다. 이하 같다)를 향하여 상향으로 1,000분의 1 이상의 기울기로 설치하여야 한다.<개정 2012.8.20>
// 연소방지설비의 화재안전기준(nfsc 506) 4조 (배관) 5항
Check(NFSC506_4_5){
KS
}
KS{
Pipe myPipe{
isObjectProperty(Pipe.isFeedMains) = TRUE
}
isInstalled( myPipe, CombustionProtectionSystem) = TRUE
getObjectProperty(myPipe.diameter) >= 100mm
}
Python Code 변환 예정
Modify
62
20106
연소방지설비의 화재안전기준(NFSC 506) 제 4조 6 항 3호
3. 하향식헤드를 설치하는 경우에 가지배관으로부터 헤드에 이르는 헤드접속배관은 가지관상부에서 분기할 것
//연소방지설비의 화재안전 기준(nfsc 506) 4조 (배관) 6항 3호
Check(NFSC506_4_6_3){
IF CS THEN KS
}
CS{
Pipe myPipe{
hasObject(CombustionProtectionSystem, Pipe) = TRUE
isObjectProperty(Pipe.isBranchLines) = TRUE
}
Head myHead{
getObjectProperty(Head.installationDirectionType) = "TopDownType"
}
isInstalled( myPipe, myHead) = TRUE
}
KS{
Pipe myPipe{
hasObject(CombustionProtectionSystem, Pipe) = TRUE
isObjectProperty(Pipe.isBranchLines) = TRUE
}
Head myHead{
getObjectProperty(Head.installationDirectionType) = "TopDownType"
}
Pipe myPipe2{
isConnectedTo(myPipe, Pipe) = TRUE
isConnectedTo(myHead, Pipe) = TRUE
}
isDiverged(가지관 상부, myPipe2) = TRUE
}
Python Code 변환 예정
Modify
63
20108
연소방지설비의 화재안전기준(NFSC 506) 제 4조 7 항 1호
1. 가지배관에는 헤드의 설치지점 사이마다 1개 이상의 행가를 설치하되, 헤드간의 거리가 3.5m을 초과하는 경우에는 3.5m 이내마다 1개 이상 설치할 것. 이 경우 상향식헤드와 행가 사이에는 8㎝ 이상의 간격을 두어야 한다.
// 연소방지설비의 화재안전기준(nfsc 506) 4조 (배관) 7항 1호
Check(NFSC506_4_7_1){
IF (CS1 THEN KS1) OR (CS2 THEN KS2)
}
CS1{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines) = TRUE
}
Head myHead{
isInstalled( Head, myPipe) = TRUE
}
getObjectInterval(myHead) <= 3.5m
}
KS1{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines) = TRUE
}
Head myHead{
isInstalled( Head, myPipe) = TRUE
}
getobjectCountInInterval(Hanger, myHead) >= 1
}
CS2{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines) = TRUE
}
Head myHead{
isInstalled( Head, myPipe) = TRUE
}
getObjectInterval(myHead) > 3.5m
}
KS2{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines) = TRUE
}
Head myHead{
isInstalled( Head, myPipe) = TRUE
}
getObjectInterval(myHead) = OIH
OIH/3.5 = OIHH
(OIHH-1) <= getObjectCountInInterval(Hanger, myHead) < OIHH
getObjectInterval(Hanger) = 3.5m
Head myHead2{
getObjectProperty(Head.installationDirectionType) = "BottomUpType"
}
getObjectInterval(myHead2, Hanger) >= 8cm
}
Python Code 변환 예정
Modify
64
20109
연소방지설비의 화재안전기준(NFSC 506) 제 4조 7 항 2호
2. 교차배관에는 가지배관과 가지배관 사이마다 1개 이상의 행가를 설치하되, 가지배관 사이의 거리가 4.5m을 초과하는 경우에는 4.5m 이내마다 1개 이상 설치할 것
// 연소방지설비의 화재안전기준(nfsc 506) 4조 (배관) 7항 2호
Check(NFSC506_4_7_2){
IF (CS1 THEN KS1) OR (CS2 THEN KS2)
}
CS1{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines) = TRUE
getObjectInterval(Pipe) <= 4.5m
}
Pipe myPipe2{
isObjectProperty(Pipe.isCrossMains) = TRUE
}
isConnectedTo(myPipe, myPipe2) = TRUE
}
KS1{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines) = TRUE
getObjectInterval(Pipe) <= 4.5m
}
Pipe myPipe2{
isObjectProperty(Pipe.isCrossMains) = TRUE
}
Hanger myHanger{
isInstalled( Hanger, myPipe2) = TRUE
}
getObjectCountInInterval(myHanger,myPipe) >=1
}
CS2{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines) = TRUE
getObjectInterval(Pipe) > 4.5m
}
Pipe myPipe2{
isObjectProperty(Pipe.isCrossMains) = TRUE
}
isConnectedTo(myPipe, myPipe2) = TRUE
}
KS2{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines) = TRUE
getObjectInterval(Pipe) > 4.5m
}
Pipe myPipe2{
isObjectProperty(Pipe.isCrossMains) = TRUE
}
Hanger myHanger{
isInstalled( Hanger, myPipe2) = TRUE
}
getObjectCountInInterval(myHanger,myPipe) >=1
getObjectInterval(myPipe) = OIP
OIP/4.5 = OIPP
(OIPP-1) <= getObjectCountInInterval(Hanger, myHead) < OIPP
getObjectInterval(Hanger) = 4.5m
}
Python Code 변환 예정
Modify
65
20110
연소방지설비의 화재안전기준(NFSC 506) 제 4조 7 항 3호
3. 제1호와 제2호의 수평주행배관에는 4.5m 이내마다 1개 이상 설치할 것<개정 2012.8.20>
//연소방지설비의 화재안전기준(nfsc 506) 4조 (배관) 7항 3호
Check(NFSC506_4_7_3){
IF CS THEN KS
}
CS{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines) = TRUE
}
isObjectProperty(myPipe.isFeedMains)=True
}
KS{
isInstalled( Hanger, myPipe)=True
getObjectInterval(Hanger)>4.5 m
}
Python Code 변환 예정
Modify
66
20113
연소방지설비의 화재안전기준(NFSC 506) 제 5조 1호
1. 천장 또는 벽면에 설치할 것
// 연소방지설비의 화재안전기준(nfsc 506) 5조 (방수헤드) 1호
Check(NFSC506_5_0_1){
KS
}
KS{
Head myHead{
isObjectProperty(Head.isDischargeHead) = TRUE
}
isInstalled( myHead, Ceiling.Structure) = TRUE
OR isInstalled( myHead, Wall.Structure.) = TRUE
}
Python Code 변환 예정
Modify
67
20114
연소방지설비의 화재안전기준(NFSC 506) 제 5조 2호
2. 방수헤드간의 수평거리는 연소방지설비 전용헤드의 경우에는 2m 이하, 스프링클러헤드의 경우에는 1.5m 이하로 할 것
// 연소방지설비의 화재안전기준(nfsc 506) 5조 (방수헤드) 1호
Check(NFSC506_5_0_2){
IF (CS1 THEN KS1) OR (CS2 THEN KS2)
}
CS1{
Head myHead{
Head.isDischargeHead = TRUE
}
isObjectProperty(myHead) = TRUE
isObjectProperty(Head.isShared) = FALSE
isInstalled( Head, CombustionProtectionSystem) = TRUE
}
KS1{
getObjectInterval(myHead) <= 2m
}
CS2{
isObjectProperty(myHead) = TRUE
isObjectProperty(Sprinkler.Head) = TRUE
}
KS2{
getObjectInterval(myHead) <= 1.5m
}
Python Code 변환 예정
Modify
68
20115
연소방지설비의 화재안전기준(NFSC 506) 제 5조 3호
3. 살수구역은 환기구 등을 기준으로 지하구의 길이방향으로 350 m 이내마다 1개 이상 설치하되, 하나의 살수구역의 길이는 3m 이상으로 할 것
//연소방지설비의 화재안전기준(nfsc 506) 5조 (방수헤드) 3호
Check(NFSC506_5_0_3){
KS
}
KS{
Zone myZone{
isObjectProperty(Zone.isWateringZone)=True
}
Head myHead{
isObjectProperty(Head.isDischargeHead)=True
}
isInstalled( myHead,Zone)=True
getObjectInterval(myHead)<=350 m
getObjectLength(myZone)>=3 m
}
Python Code 변환 예정
Modify
69
20117
연소방지설비의 화재안전기준(NFSC 506) 제 6조 2호
2. 송수구는 구경 65㎜의 쌍구형으로 할 것
// 연소방지설비의 화재안전기준(nfsc 506) 6조 (송수구) 2호
Check(NFSC506_6_0_2){
KS
}
KS{
Port myPort{
getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
}
isInstalled( myPort, CombustionProtectionSystem) = TRUE
getObjectProperty(myPort.diameter) = 65mm
getObjectProperty(myPort.shapeType) = "DoubleType"
}
Python Code 변환 예정
Modify
70
20119
연소방지설비의 화재안전기준(NFSC 506) 제 6조 6호
6. 송수구로부터 주배관에 이르는 연결배관에는 개폐밸브를 설치하지 아니할 것
// 연소방지설비의 화재안전기준(nfsc 506) 6조 (송수구) 6호
Check(NFSC506_6_0_6){
KS
}
KS{
Port myPort{
getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
}
Pipe myPipe2{
isObjectProperty(Pipe.isRiser) = TRUE
}
Pipe myPipe{
isConnectedTo(Pipe, myPort) = TRUE
isConnectedTo(Pipe, myPipe2) = TRUE
}
Valve myValve{
isObjectProperty(Valve.isShutoffValve) = TRUE
}
isInstalled( myValve, myPipe) = FALSE
}
Python Code 변환 예정
Modify
71
20122
연소방지설비의 화재안전기준(NFSC 506) 제 8조 2호
2. 방화벽에 출입문을 설치하는 경우에는 방화문으로 할 것
// 연소방지설비의 화재안전기준(nfsc 506) 8조 (방화벽의 설치기준) 2호
Check(NFSC506_8_0_2){
IF CS THEN KS
}
Wall myWall{
isObjectProperty(Wall.isFireProofWall) = TRUE
}
Door myDoor{
isObjectProperty(Door.isEntrance) = TRUE
}
CS{
isInstalled( myDoor, myWall) = TRUE
}
KS{
isObjectProperty(myDoor.isStrictFireproofDoor) = TRUE
OR isObjectProperty(myDoor.isFireproofDoor) = TRUE
}
Python Code 변환 예정
Modify
72
20123
연소방지설비의 화재안전기준(NFSC 506) 제 8조 3호
3. 방화벽을 관통하는 케이블·전선 등에는 내화성이 있는 화재차단재로 마감할 것
// 연소방지설비의 화재안전기준(nfsc 506) 8조 (방화벽의 설치기준) 3호
Check(NFSC506_8_0_3){
KS
}
KS{
Wall myWall{
isObjectProperty(Wall.isFireProofWall)=True
}
IF isInstalled( Wire, myWall)=True
THEN isObjectProperty(Wire.Finish.Material.isFireStop)= TRUE
END IF
IF isInstalled( Cable, myWall)=True
THEN isObjectProperty(Cable.Finish.Material.isFireStop)= TRUE
END IF
}
Python Code 변환 예정
Modify
73
72615
연소방지설비의 화재안전기준(NFSC 506) 제 6조 4호
4. 지면으로부터 높이가 0.5m 이상 1m 이하의 위치에 설치할 것
// 연소방지설비의 화재안전기준(nfsc 506) 6조 (송수구) 4호
Check(NFSC506_6_0_4){
KS
}
KS{
Port myPort{
getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
isInstalled( Port, CombustionProtectionSystem) = TRUE
}
getObjectVerticalLocation(myPort, Ground) >= 0.5m
getObjectVerticalLocation(myPort, Ground) <= 1m
}
Python Code 변환 예정
Modify
74
72584
옥내소화전설비의 화재안전기준(NFSC 102) 제 6조 2 항 2호
2. 다른 부분과 내화구조로 구획된 덕트 또는 피트의 내부에 설치하는 경우
Check(NFSC102_6_2_2){
KS
}
KS{
Duct myDcut{
isFireResistantStructure(Duct) = TRUE
}
isInstalled( Pipe, Duct) = TRUE
OR isInstalled( Pipe, Pit.Inside) = TRUE
}
Python Code 변환 예정
Modify
75
72585
옥내소화전설비의 화재안전기준(NFSC 102) 제 6조 5 항 1호
1. 공기고임이 생기지 아니하는 구조로 하고 여과장치를 설치할 것
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 5항 1호
Check(NFSC102_6_5_1){
KS
}
KS{
Pipe myPipe{
isInstalled( Pump.Inlet, Pipe) = TRUE
}
isInstalled( myPipe,Filter) = TRUE
}
Python Code 변환 예정
Modify
76
72586
옥내소화전설비의 화재안전기준(NFSC 102) 제 6조 5 항 2호
2. 수조가 펌프보다 낮게 설치된 경우에는 각 펌프(충압펌프를 포함한다)마다 수조로부터 별도로 설치할 것
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 5항 2호
Check(NFSC102_6_5_2){
IF CS THEN KS
}
CS{
getObjectVerticalLocation(Pump, Tank) < 0
}
KS{
Pipe myPipe{
isInstalled( Pump.Inlet, Pipe) = TRUE
}
isInstalled( myPipe, Pump.One) = TRUE
}
Python Code 변환 예정
Modify
77
72587
옥내소화전설비의 화재안전기준(NFSC 102) 제 6조 8 항 1호
1. 성능시험배관은 펌프의 토출측에 설치된 개폐밸브 이전에서 분기하여 설치하고, 유량측정장치를 기준으로 전단 직관부에 개폐밸브를 후단 직관부에는 유량조절밸브를 설치할 것
// 옥내소화전설비의 화재안전기준(NFSC 102) 6조 (배관 등) 8항 1호
Check(NFSC102_6_8_1){
KS
}
KS{
Pipe myPipe{
isObjectProperty(Pipe.isForPerformanceTest) = TRUE
}
Valve myValve{
isObjectProperty(Valve.isShutoffValve) = TRUE
isInstalled( Valve, Pump.Outlet) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isShutoffValve) = TRUE
isInstalled( Valve, Pump.Outlet) = FALSE
}
Valve myValve3{
isObjectProperty(Valve.isFloatControlValve) = TRUE
}
isDiverged(Pump, myPipe) = TRUE
getObjectDistance(Pump.StartPart, myPipe) < getObjectDistance(Pump.StartPart, myValve)
isInstalled( myValve2, myPipe) = TRUE
isInstalled( myValve3, myPipe) = TRUE
}
Python Code 변환 예정
Modify
78
72588
옥내소화전설비의 화재안전기준(NFSC 102) 제 6조 8 항 2호
2. 유량측정장치는 성능시험배관의 직관부에 설치하되, 펌프의 정격토출량의 175% 이상 측정할 수 있는 성능이 있을 것
// 옥내소화전설비의 화재안전기준(NFSC 102) 6조 (배관 등) 8항 2호
Check(NFSC102_6_8_2){
KS
}
KS{
Pipe myPipe{
isObjectProperty(Pipe.isForPerformanceTest) = TRUE
}
isInstalled( DischargeMeasuringEquipment, myPipe) = TRUE
}
Python Code 변환 예정
Modify
79
19968
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 5조 1 항 3호
3. 제1호와 제2호에 따른 출입구에 이르는 복도 또는 통로로 통하는 출입구
//유도등 및 유도표지의 화재안전기준(nfsc 303) 5조(피란구유도등) 1항 3호
Check(NFSC303){
KS
}
Door myDoor{
isObjectProperty(Door.isEntrance)=True
(OR hasObject( myStair, Door)=True
OR hasObject(myStair.Space,Door)=True
OR hasObject(myStair.AncillaryRoom,Door)=True)
OR isDirectlyAccessible(Door, Ground)=True
}
LeadingLight myLeadingLight{
isObjectProperty(LeadingLight.isForExit)=True
}
Passage myPassage{
isAccessible(myDoor, Passage)=True
}
Corridor myCorriodr{
isAccessible(myDoor, Corridor)=True
}
Door myDoor2{
isObjectProperty(Door.isEntrance)=True
isAccessible(myPassage, Door)=True
or isAccessible(myCorridor, Door)=True
}
isInstalled( myLeadingLight, myDoor2)=True
}
Python Code 변환 예정
Modify
80
19972
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 6조 1 항 1호 가 목
가. 복도에 설치할 것
//유도등 및 유도표지의 화재안전기준(nfsc 303) 6조 (통로유도등 설치기준) 1항 1호 가목
Check(NFSC303_6_1_1_가){
KS
}
KS{
isinstalled(Corridor, LeadingLightForCorridors)=True
}
Python Code 변환 예정
Modify
81
19976
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 6조 1 항 2호 가 목
가. 거실의 통로에 설치할 것. 다만, 거실의 통로가 벽체 등으로 구획된 경우에는 복도통로유도등을 설치하여야 한다.
// 유도등 및 유도표지의 화재안전기준(nfsc 303) 6조 (통로유도등 설치기준) 1항 2호 가목
Check(NFSC303_6_1_2_가){
KS
}
KS{
IF // isPartitioned(Room.Passage, c)=True type c: 벽체 등으로 구획
THEN isInstalled( Room.Passage,LeadingLightForCorridors)=True
ELSE THEN isInstalled( Room.Passage, LeadingLightForLivingRoom )=True
}
Python Code 변환 예정
Modify
82
19980
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 6조 1 항 3호 가 목
가. 각층의 경사로 참 또는 계단참마다(1개층에 경사로 참 또는 계단참이 2 이상 있는 경우에는 2개의 계단참마다)설치할 것
//유도등 및 유도표지의 화재안전기준(nfsc 303) 6조 (통로유도등 설치기준) 1항 3호 가목
Check (NFSC303_6_1_3_가){
KS
}
KS{
IF // getObjectCount(RampLanding, "1개층" )>=2
// OR getObjectCount(StairLanding, "1개층" )>=2
THEN // isInstalled( StairLanding, LeadingLightForStairs , "2개마다")=True
ELSE THEN isInstalled( RampLanding, LeadingLightForStairs)=True
OR isInstalled( StairLanding, LeadingLightForStairs)=True
END IF
}
Python Code 변환 예정
Modify
83
19982
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 7조 1 항
제7조(객석유도등 설치기준) ①객석유도등은 객석의 통로, 바닥 또는 벽에 설치하여야 한다.
//유도등 및 유도표지의 화재안전기준(nfsc 303) 7조 (객석유도등 설치기준) 1항
Check(NFSC303_7_1){
KS
}
LeadingLight myLight{
isObjectProperty(LeadingLight.isForSeat)=True
}
KS{
isInstalled( myLight, Passage)=True
(
isInstalled( myLight, FloorSlab)=True
OR isInstalled( myLight, Wall)=True
)
}
Python Code 변환 예정
Modify
84
19983
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 7조 2 항
②객석내의 통로가 경사로 또는 수평로로 되어 있는 부분은 다음의 식에 따라 산출한 수(소수점 이하의 수는 1로 본다)의 유도등을 설치하고, 그 조도는 통로바닥의 중심선 0.5m 높이에서 측정하여 0.2㏓ 이상이어야 한다. <개정 2012.8.20>
//유도등 및 유도표지의 화재안전기준(nfsc 303) 7조 (객석유도등 설치기준) 2항
Check(NFSC303_7_2){
IF CS THEN KS
}
CS{
Space mySpace{
Space.usage = "Auditorium"
}
isInstalled( Passage, mySpace) = TRUE
isObjectProperty(Passage.isFlatWay) = TRUE
OR isObjectProperty(Passage.isSlopeWay) = TRUE
}
KS{
LeadingLight myLeadingLight{
isObjectProperty(LeadingLight.isForSeat)=True
}
isExist(myLeadingLight)=True
//LAP means Length of Auditorium passage
LAP= getObjectLength(AuditoriumPassage)
getObjectCount(myLeadingLight)>= LAP/4-1
// getSpaceIlluminance(AuditoriumPassage, "통로바닥의 중심선 0.5m 높이에서 측정")>0.2 lx , 측정 기준에 관한 파라미터 추가 필요
}
Python Code 변환 예정
Modify
85
19986
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 8조 1 항 1호
1. 계단에 설치하는 것을 제외하고는 각층마다 복도 및 통로의 각 부분으로부터 하나의 유도표지까지의 보행거리가 15m 이하가 되는 곳과 구부러진 모퉁이의 벽에 설치할 것
//유도등 및 유도표지의 화재안전기준(nfsc 303) 8조 (유도표지 설치기준) 1항 1호
Check(NFSC303_8_1_1){
IF ! CS THEN KS
}
CS{
isInstalled( LeadingSign,Stair)=True
}
KS{
getObjectDistance(Floor.One.Corridor.Wall, LeadingSign)<=15 m
getObjectDistance(Floor.One.Corridor.Column, LeadingSign)<=15 m
getObjectDistance(Floor.One.Passage.Wall, LeadingSign)<=15 m
getObjectDistance(Floor.One.Passage.Column, LeadingSign)<=15 m
}
Python Code 변환 예정
Modify
86
19991
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 8조의2조 2 항 2호
2. 피난유도 표시부는 바닥으로부터 높이 1m이하의 위치 또는 바닥 면에 설치할 것
// 유도등 및 유도표지의 화재안전기준(nfsc 303) 8조의2 (피난유도선 설치기준) 2항 2호
Check(NFSC303_8-2_2_2){
KS
}
KS{
getObjectVerticalLocation(피난유도 표시부, Ground) <= 1m
OR isInstalled( 피난유도 표시부, FloorSurface) = TRUE
}
Python Code 변환 예정
Modify
87
72621
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 6조 1 항 1호 나 목
나. 구부러진 모퉁이 및 보행거리 20m마다 설치할 것
//유도등 및 유도표지의 화재안전기준(nfsc 303) 6조 (통로유도등 설치기준) 1항 1호 나목
Check(NFSC303_6_1_1_나){
KS
}
KS{
isInstalled( "구부러진 모퉁이", LeadingLightForCorridor)=True
// 20m마다 설치 , 함수 필요
}
Python Code 변환 예정
Modify
88
72622
유도등 및 유도표지의 화재안전기준(NFSC 303) 제 6조 1 항 2호 나 목
나. 구부러진 모퉁이 및 보행거리 20m마다 설치할 것
//유도등 및 유도표지의 화재안전기준(nfsc 303) 6조 (통로유도등 설치기준) 1항 2호 나목
Check(NFSC303_6_1_2_나){
KS
}
KS{
isInstalled( "구부러진 모퉁이", LeadingLightForCorridor)=True
// 20m마다 설치 , 함수 필요
}
Python Code 변환 예정
Modify
89
20442
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 3 항 10호 가 목
가. 감지기의 부착높이에 따라 다음 표에 따른 바닥면적마다 1개 이상으로 할 것
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 10호 가목
Check(NFSC203_7_3_10_가){
IF (CS1 THEN KS1) OR (CS2 THEN KS2)
}
Sensor mySensor1{
getObjectProperty(Sensor.type) = "Type1"
OR getObjectProperty(Sensor.type) = "Type2"
}
Sensor mySensor2{
isObjectProperty(Sensor.type) = "Type3"
}
CS1{
getObjectVerticalDistance(FloorSlab, Sensor) < 4m
}
KS1{
isInstalled( mySensor1, FloorSlab.Space, C, 150) = TRUE)
OR isInstalled( mySensor2, FloorSlab.Space, C, 50) = TRUE)
}
CS2{
getObjectVerticalDistance(FloorSlab, Sensor) >= 4m
getObjectVerticalDistance(FloorSlab, Sensor) < 20m
}
KS2{
isInstalled( mySensor1, FloorSlab.Space, C, 75) = TRUE)
}
Python Code 변환 예정
Modify
90
20449
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 3 항 13호 라 목
라. 감지기를 천장에 설치하는 경우에는 감지기는 바닥을 향하여 설치할 것
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 13호 라목
Check(NFSC203_7_3_13_라){
IF CS THEN KS
}
CS{
isInstalled( Sensor, Ceiling) = TRUE
}
KS{
객체설치방향(Sensor, FloorSlab) = TRUE
}
Python Code 변환 예정
Modify
91
20451
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 3 항 15호 다 목
다. 감지기의 송광부와 수광부는 설치된 뒷벽으로부터 1m이내 위치에 설치할 것
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 15호 다목
Check(NFSC203_7_3_15_다){
KS
}
KS{
Wall myWall{
isInstalled( Sensor.LightReceivingElement, Wall) = TRUE
isInstalled( Sensor.LightSendingElement , Wall) = TRUE
}
getElementDistance(Sensor, myWall) <= 1m
}
Python Code 변환 예정
Modify
92
20452
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 4 항
④ 제3항에도 불구하고 다음 각 호의 장소에는 각각 광전식분리형감지기 또는 불꽂감지기를 설치하거나 광전식공기흡입형감지기를 설치할 수 있다.
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 4항
Check(NFSC203_7_4){
IF CS THEN KS
}
CS{
getResult(NFSC203_7_4_1) = TRUE
OR getResult(NFSC203_7_4_2) = TRUE
}
KS{
Sensor mySensor1{
getObjectProperty(Sensor.sensingMode) = "PhotoelectricType"
getObjectProperty(Sensor.sensingRange) = "SeparateType"
}
Sensor mySensor2{
getObjectProperty(Sensor.sensingMode) = "PhotoelectricType"
getObjectProperty(Sensor.sensingRange) = "AspiratingType"
}
isInstalled( mySensor1) = TRUE
OR isInstalled( mySensor2) = TRUE
}
Python Code 변환 예정
Modify
93
20453
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 4 항 1호
1. 화학공장·격납고·제련소등 : 광전식분리형감지기 또는 불꽃감지기. 이 경우 각 감지기의 공칭감시거리 및 공칭시야각등 감지기의 성능을 고려하여야 한다.
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 4항 1호
Check(NFSC203_7_4_1){
IF CS THEN KS
}
CS{
getBuildingUsage() = "ChemistryFactory"
OR getBuildingUsage() = "Hangar"
OR getBuildingUsage() = "Smelter"
}
KS{
Sensor mySensor1{
getObjectProperty(Sensor.sensingMode) = "PhotoelectricType"
getObjectProperty(Sensor.sensingRange) = "SeparateType"
}
isInstalled( mySensor1) = TRUE
OR isInstalled( FlameSensor) = TRUE
}
Python Code 변환 예정
Modify
94
20454
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 4 항 2호
2. 전산실 또는 반도체 공장등 : 광전식공기흡입형감지기. 이 경우 설치장소·감지면적 및 공기흡입관의 이격거리등은 형식승인 내용에 따르며 형식승인 사항이 아닌 것은 제조사의 시방에 따라 설치하여야 한다.
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 4항 2호
Check(NFSC203_7_4_2){
IF CS THEN KS
}
CS{
getSpaceUsage() = "ComputerRoom"
OR getBuildingUsage() = "SemiconductorFactory"
}
KS{
Sensor mySensor1{
getObjectProperty(Sensor.sensingMode) = "PhotoelectricType"
getObjectProperty(Sensor.sensingRange) = "AspiratingType"
}
isInstalled( mySensor1) = TRUE
}
Python Code 변환 예정
Modify
95
20456
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 5 항 1호
1. 천장 또는 반자의 높이가 20m 이상인 장소. 다만, 제1항 단서 각호의 감지기로서 부착높이에 따라 적응성이 있는 장소는 제외한다.
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 5항 1호
Check(NFSC203_7_5_1){
IF CS THEN KS
}
CS{
getObjectVerticalDistance(FloorSlab, Ceiling) >= 20m
OR getObjectVerticalDistance(FloorSlab, CeilingCovering) >= 20m
}
KS{
isInstalled( Sensor) = FALSE
}
Python Code 변환 예정
Modify
96
20457
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 5 항 5호
5. 목욕실·욕조나 샤워시설이 있는 화장실·기타 이와 유사한 장소
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 5항 5호
Check(NFSC203_7_5_5){
IF CS THEN KS
}
CS{
Space mySpace1{
getSpaceUsage() = "Toliet"
}
Space mySpace2{
getSpaceUsage() = "Bathoroom"
}
isInstalled( mySpace1, mySpace2) = TRUE
KS{
isInstalled( Sensor) = FALSE
}
Python Code 변환 예정
Modify
97
20458
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 5 항 6호
6. 파이프덕트 등 그 밖의 이와 비슷한 것으로서 2개층 마다 방화구획된 것이나 수평단면적이 5㎡ 이하인 것
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 5항 6호
Check(NFSC203_7_5_6){
IF CS THEN KS
}
CS{
Duct myDuct{
isObjectProperty(Duct.isPipeDuct) = TRUE
}
isFirePartition(myDuct, 2층) = TRUE
OR isObjectProperty(Duct.horizontalSectionalArea) <= 5m2
KS{
isInstalled( Sensor) = FALSE
}
Python Code 변환 예정
Modify
98
20459
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 5 항 8호
8. 실내의 용적이 20㎥ 이하인 장소
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 5항 8호
Check(NFSC203_7_5_6){
IF CS THEN KS
}
CS{
Space mySpace{
isExternal(Space) = FALSE
}
(mySpace.volume) <= 20m3
}
KS{
isInstalled( Sensor) = FALSE
}
Python Code 변환 예정
Modify
99
20460
자동화재탐지설비 및 시각경보장치의 화재안전기준(NFSC 203) 제 7조 6 항
⑥ 지하구에 설치하는 감지기는 제1항 각 호의 감지기로서 먼지·습기등의 영향을 받지 아니하고 발화지점을 확인할 수 있는 감지기를 설치하여야 한다.<개정 2008.12.15>
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 6항
Check(NFSC203_7_6){
IF CS THEN KS
}
CS{
isInstalled( Sensor, Underground) = TRUE
}
KS{
getResult(NFSC203_7_1_1) = TRUE
OR getResult(NFSC203_7_1_2) = TRUE
OR getResult(NFSC203_7_1_3) = TRUE
OR getResult(NFSC203_7_1_4) = TRUE
OR getResult(NFSC203_7_1_5) = TRUE
OR getResult(NFSC203_7_1_6) = TRUE
OR getResult(NFSC203_7_1_7) = TRUE
OR getResult(NFSC203_7_1_8) = TRUE
}
Python Code 변환 예정
Modify
100
20029
장애인ㆍ노인ㆍ임산부 등의 편의증진 보장에 관한 법률 제 7조
제7조(대상시설) 편의시설을 설치하여야 하는 대상(이하 "대상시설"이라 한다)은 다음 각 호의 어느 하나에 해당하는 것으로서 대통령령으로 정하는 것을 말한다.
// 장애인ㆍ노인ㆍ임산부등의편의증진보장에관한법률 7조 (대상시설)
Check(CDAPA_7){
IF CS THEN KS
}
CS{
getResult(CDAPA_7_0_1) = TRUE
OR getResult(CDAOA_7_0_2) = TRUE
OR getResult(CDAOA_7_0_3) = TRUE
OR getResult(CDAOA_7_0_4) = TRUE
}
KS{
isInstalled( ConvenientFacility) = TRUE
}
Python Code 변환 예정
Modify