1
9350
연결살수설비의 화재안전기준(nfsc 503) 제 5조 4 항 1호
1. 송수구의 가장 먼 가지배관의 끝으로부터 연결하여 설치할 것
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 4항
Check(NFSC503_5_4_1){
KS
}
KS{
Pipe myPipe1{
isObjectProperty(Pipe.isForTest) = TRUE
}
Port myPort{
getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
}
Pipe myPipe2{
isObjectProperty(Pipe.isBranchLines ) = TRUE
isFarthestDistance(myPort, Pipe) = TRUE
}
isConnectedTo(myPipe1, myPipe2) = TRUE
}
Modify
2
9351
연결살수설비의 화재안전기준(nfsc 503) 제 5조 4 항 2호
2. 시험장치 배관의 구경은 가장 먼 가지배관의 구경과 동일한 구경으로 하고, 그 끝에는 물받이 통 및 배수관을 설치하여 시험 중 방사된 물이 바닥으로 흘러내리지 아니하도록 할 것. 다만, 목욕실·화장실 또는 그 밖의 배수처리가 쉬운 장소의 경우에는 물받이 통 또는 배수관을 설치하지 아니할 수 있다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 4항 2호
Check(NFSC503_5_4_2){
KS
}
KS{
Pipe myPipe1{
isObjectProperty(Pipe.isForTest) = TRUE
}
Pipe myPipe2{
isObjectProperty(Pipe.isBranchLines ) = TRUE
isFarthestDistance(myPipe1, Pipe) = TRUE
}
DP = getObjectDiameter(myPipe1)
getObjectDiameter(myPipe2) = DP
}
Modify
3
9353
연결살수설비의 화재안전기준(nfsc 503) 제 5조 6 항
⑥가지배관 또는 교차배관을 설치하는 경우에는 가지배관의 배열은 토너멘트방식이 아니어야 하며, 가지배관은 교차배관 또는 주배관에서 분기되는 지점을 기점으로 한 쪽 가지배관에 설치되는 헤드의 개수는 8개 이하로 하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 6항
Check(NFSC503_5_6){
IF CS THEN KS
}
Pipe myPipe1{
isObjectProperty(Pipe.isBranchLines ) = TRUE
}
Pipe myPipe2{
isObjectProperty(Pipe.isCrossMains) = TRUE
}
Pipe myPipe3{
isObjectProperty(Pipe.isRiser) = TRUE
}
CS{
isInstalled(myPipe1) = TRUE
OR isInstalled(myPipe2) = TRUE
}
KS{
Head myHead{
isInstalled(Head, myPipe1.DivergedSide.One) = TRUE
}
isObjectProperty(myPipe1.tournamentArrangement) = FALSE
getObjectCount(myHead) <= 8
}
Modify
4
9356
연결살수설비의 화재안전기준(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
}
Modify
5
9357
연결살수설비의 화재안전기준(nfsc 503) 제 5조 9 항 1호
1. 교차배관은 가지배관과 수평으로 설치하거나 또는 가지배관 밑에 설치하고, 그 구경은 제2항에 따르되, 최소구경이 40㎜ 이상이 되도록 할 것
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항 1호
Check(NFSC503_5_9_1){
KS
}
KS{
Pipe myPipe1{
isObjectProperty(Pipe.isCrossMains) = TRUE
isObjectProperty(Pipe.systemType) = "HookingUpSprinklerSystem"
}
Pipe myPipe2{
isObjectProperty(Pipe.isBranchLines ) = TRUE
isObjectProperty(Pipe.systemType) = "HookingUpSprinklerSystem"
}
(isParallel(myPipe1, myPipe2) = TRUE
OR getObjectVerticalLocation(myPipe1, myPipe2) < 0)
getObjectDiameter(myPipe1) >= 40mm
getResult(NFSC503_5_2) = TRUE
}
Modify
6
9359
연결살수설비의 화재안전기준(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
}
Modify
7
9361
연결살수설비의 화재안전기준(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
}
Modify
8
9362
연결살수설비의 화재안전기준(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
}
Modify
9
9377
연결살수설비의 화재안전기준(nfsc 503) 제 6조 3 항 6호
6. 천장의 기울기가 10분의 1을 초과하는 경우에는 가지관을 천장의 마루와 평행하게 설치하고, 스프링클러헤드는 다음 각 목의 어느 하나의 기준에 적합하게 설치할 것
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 6호
Check(NFSC503_6_3_6){
IF CS THEN (KS1 AND KS2)
}
CS{
getObjectProperty(Ceiling.gradient) > 0.1
}
KS1{
isObjectProperty(Pipe.isBranchLines ) = TRUE
isParallel(Pipe, Ceiling.Top.) = TRUE
}
KS2{
getResult(NFSC503_6_3_6_1) = TRUE
getResult(NFSC503_6_3_6_2) = TRUE
}
Modify
10
10967
연소방지설비의 화재안전기준(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
}
Modify
11
10969
연소방지설비의 화재안전기준(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
}
Modify
12
10970
연소방지설비의 화재안전기준(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
}
Modify
13
10971
연소방지설비의 화재안전기준(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
}
Modify
14
14361
옥내소화전설비의 화재안전기준(NFSC 102) 제 6조 6 항
⑥ 펌프의 토출 측 주배관의 구경은 유속이 4㎧ 이하가 될 수 있는 크기 이상으로 하여야 하고, 옥내소화전방수구와 연결되는 가지배관의 구경은 40㎜(호스릴옥내소화전설비의 경우에는 25㎜) 이상으로 하여야 하며, 주배관중 수직배관의 구경은 50㎜(호스릴옥내소화전설비의 경우에는 32㎜) 이상으로 하여야 한다.<개정 2008.12.15.>
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 6항
Check(NFSC102_6_6){
IF (CS1 THEN KS1) OR (CS2 THEN KS2) OR (CS3 THEN KS3) OR (CS4 THEN KS4)
}
Port myPort{
Port.typeForWater = "IndoorFireHydrantDischarge"
}
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines ) = TRUE
isConnectedTo(Pipe, myPort) = TRUE
}
Pipe myPipe2{
isObjectProperty(Pipe.isRiser) = TRUE
}
CS1{
getObjectProperty(myPipe.systemType) = "HoseReelHydrantSystem"
}
KS1{
getObjectProperty(myPipe.diameter) >= 25mm
}
CS2{
getObjectProperty(myPipe.systemType) != "HoseReelHydrantSystem"
}
KS2{
getObjectProperty(myPipe.diameter) >= 40mm
}
CS3{
getObjectProperty(myPipe2.systemType) = "HoseReelHydrantSystem"
}
KS3{
getObjectProperty(myPipe2.diameter) >= 32mm
}
CS4{
getObjectProperty(myPipe2.systemType) != "HoseReelHydrantSystem"
}
KS4{
getObjectProperty(myPipe2.diameter) >= 50mm
}
Modify
15
14911
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 9 항 1호
1. 토너먼트(tournament)방식이 아닐 것
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 9항 1호
Check(NFSC103A_8_9_1){
KS
}
KS{
isObjectProperty(Pipe.isBranchLines ) = TRUE
isObjectProperty(Pipe.hasTournamentArragement) = FALSE
}
Modify
16
14912
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 9 항 2호
2. 교차배관에서 분기되는 지점을 기점으로 한쪽 가지배관에 설치되는 간이헤드의 개수(반자 아래와 반자속의 헤드를 하나의 가지배관 상에 병설하는 경우에는 반자 아래에 설치하는 헤드의 개수)는 8개 이하로 할 것. 다만, 다음 각 목의 어느 하나에 해당하는 경우에는 그러하지 아니하다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 9항 2호
Check(NFSC503A_8_9_2){
IF !CS THEN KS
}
CS{
getResult(NFSC503A_8_9_2_가) = TRUE
}
KS{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines ) = TRUE
}
Head myHead{
isIntalled(SimpleSprinkler.Head, myPipe.One) = TRUE
getObjectVerticalLocation(CeilingCovering, SimpleSprinkler.Head) < 0
}
getObjectCount(myHead) <= 8
}
Modify
17
14915
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 9 항 3호
3. 가지배관과 간이헤드 사이의 배관을 신축배관으로 하는 경우에는 국민안전처장관이 정하여 고시한 「스프링클러설비신축배관 성능인증 및 제품검사의 기술기준」에 적합한 것으로 설치할 것. 이 경우 신축배관의 설치길이는 국민안전처장관이 정하여 고시한「스프링클러설비의 화재안전기준」제10조제3항의 거리를 초과하지 아니할 것
9항 3호
Check(NFSC503A_8_9_3){
IF CS THEN KS
}
Pipe myPipe1{
isObjectProperty(Pipe.isBranchLines ) = TRUE
}
Pipe myPipe2{
isObjectProperty(Pipe.isFlexibleTube) = TRUE
}
CS{
isInstalledInOrder(myPipe1, myPipe2, Head) = TRUE
}
KS{
getResult(NFSC503_10_3) = TRUE
}
Modify
18
14917
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 10 항
⑩ 가지배관에 하향식간이헤드를 설치하는 경우에 가지배관으로부터 간이헤드에 이르는 헤드접속배관은 가지관상부에서 분기할 것. 다만, 소화설비용 수원의 수질이「먹는물관리법」제5조에 따라 먹는물의 수질기준에 적합하고 덮개가 있는 저수조로부터 물을 공급받는 경우에는 가지배관의 측면 또는 하부에서 분기할 수 있다. <개정 2011.11.24>
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 10항
Check(NFSC503A_8_10){
IF CS THEN KS
}
Pipe myPipe1{
isObjectProperty(Pipe.isBranchLines ) = TRUE
}
Head myHead{
isObjectProperty(Head.installationDirectionType) = "TopDownType"
}
CS{
isInstalled(myHead, myPipe1) = TRUE
}
KS{
Pipe mypipe2{
isConnectedTo(myPipe1, Pipe) = TRUE
isConnectedTo(myHead, Pipe) = TRUE
}
getObjectVerticalLocation(myPipe1, myPipe1) > 0
}
Modify
19
14925
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 12 항 1호
1. 유수검지장치에서 가장 먼 가지배관의 끝으로부터 연결·설치할 것
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 12항 1호
Check(NFSC503A_8_12_1){
KS
}
KS{
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines ) = TRUE
isFarthestDistance(WaterflowIndicator, Pipe) = TRUE
}
isInstalled(TestingDevice, myPipe.End) = TRUE
isConnectedTo(TestingDevice, myPipe.End) = TRUE
}
Modify
20
14929
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 13 항 1호
1. 가지배관에는 간이헤드의 설치지점 사이마다 1개 이상의 행가를 설치하되, 간이헤드간의 거리가 3.5m를 초과하는 경우에는 3.5m 이내마다 1개 이상 설치할 것. 이 경우 상향식간이헤드와 행가 사이에는 8㎝ 이상의 간격을 두어야 한다.
// 간이스프링클러설비의 화재안전기준(NFSC 103A) 8조 (배관 및 밸브) 13조 1호
Check(NFSC103A_8_13_1){
IF(CS1 THEN KS1) OR (CS2 THEN KS2)
}
Pipe myPipe{
isObjectProperty(Pipe.isBranchLines ) = TRUE
}
CS1{
getObjectInterval(SimpleSprinkler.Head) <= 3.5m
}
KS1{
getObjectCountInInterval(Hanger, SimpleSprinkler.Head) >= 1
isInstalled(Hanger, myPipe) = TRUE
}
CS2{
getObjectInterval(SimpleSprinkler.Head) > 3.5m
}
KS2{
Head myHead{
isObjectProperty(Head.installationDirectionType) = "BottomUpType"
}
isInstalled(Hanger, myPipe, b, 3.5) = TRUE
getObjectCountInInterval(Hanger, SimpleSprinkler.Head) >= 1
getObjectDistance(myHead, Hanger) >= 8cm
}
Modify
21
14930
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 13 항 2호
2. 교차배관에는 가지배관과 가지배관 사이마다 1개 이상의 행가를 설치하되, 가지배관 사이의 거리가 4.5m를 초과하는 경우에는 4.5m이내마다 1개 이상 설치할 것
//간이스프링클러설비의 화재안전기준(NFSC 103A) 8조 (배관 및 밸브) 13조 2
Check(NFSC103A_8_13_2){
IF(CS1 THEN KS1) OR (CS2 THEN KS2)
}
Pipe myPipe1{
isObjectProperty(Pipe.isCrossMains) = TRUE
}
Pipe myPipe2{
isObjectProperty(Pipe.isBranchLines ) = TRUE
}
CS1{
getObjectInterval(myPipe2) <= 4.5m
}
KS1{
getObjectCountInInterval(Hanger, myPipe2) >= 1
isInstalled(Hanger, myPipe1) = TRUE
}
CS2{
getObjectInterval(myPipe2) > 4.5m
}
KS2{
isInstalled(Hanger, myPipe1, b, 4.5) = TRUE
getObjectCountInInterval(Hanger, myPipe2) >= 1
}
Modify
22
15002
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 별표1조
[별표 1] <개정 2015.1.23.> 간이헤드 수별 급수관의 구경(제8조제3항제3호관련)
// 간이스프링클러설비의 화재안전기준(NFSC 103A) 별표1 (간이헤드 수별 급수관의 구경) 1항
Check(NFSC103A_*_1){
getResult(NFSC103A_*_1_1) = TRUE
getResult(NFSC103A_*_1_2) = TRUE
getResult(NFSC103A_*_1_3) = TRUE
getResult(NFSC103A_*_1_4) = TRUE
}
Pipe myPipe{
getObjectProperty(Pipe.usage) = "WaterSupplyPipe"
}
Pipe myPipe2{
isObjectProperty(Pipe.isBranchLines ) = TRUE
}
PD = getObjectProperty(Pipe.diameter)
SSHN = getObjectCount(SimpleSprinkler.Head.)
Check(NFSC103A_*_1_2){
IF CS THEN KS
}
CS{
Head myHead{
getObjectProperty(SimpleSprinkler.Head.openAndCloseType) = "EnclosedType"
}
isInstalled(myHead) = TRUE
}
KS{
IF PD = 25 THEN SSHN = 2
OR IF PD = 32 THEN SSHN = 3
OR IF PD = 40 THEN SSHN = 5
OR IF PD = 50 THEN SSHN = 10
OR IF PD = 65 THEN SSHN = 30
OR IF PD = 80 THEN SSHN = 60
OR IF PD = 100 THEN SSHN = 100
OR IF PD = 125 THEN SSHN = 160
OR IF PD = 150 THEN SSHN >= 161
}
Check(NFSC103A_*_1_3){
IF CS THEN KS
}
CS{
Head myHead1{
getObjectProperty(SimpleSprinkler.Head.openAndCloseType) = "EnclosedType"
}
isInstalled(myHead1) = TRUE
Head myHead2{
getObjectVerticalLocation(Head, CeilingCovering, ) < 0
}
Head myHead3{
isInstalled(Head, CeilingCovering.Inside) = TRUE
}
isInstalled(myHead2, myPipe2) = TRUE
isInstalled(myHead3, myPipe2) = TRUE
}
KS{
IF PD = 25 THEN SSHN = 2
OR IF PD = 32 THEN SSHN = 4
OR IF PD = 40 THEN SSHN = 7
OR IF PD = 50 THEN SSHN = 15
OR IF PD = 65 THEN SSHN = 30
OR IF PD = 80 THEN SSHN = 60
OR IF PD = 100 THEN SSHN = 100
OR IF PD = 125 THEN SSHN = 160
OR IF PD = 150 THEN SSHN >= 161
}
Modify