//연결살수설비의 화재안전기준(nfsc 503) 6조 (배관 등) 1항 Check(NFSC503_6_1){ KS }
KS{ getObjectProperty(HookingUpSprinklerSystem.Head) = "SprinklerHead" }
//연결살수설비의 화재안전기준(nfsc 503) 6조 (배관 등) 2항 Check(NFSC503_6_2){ KS }
KS{ getResult(NFSC503_6_2_1) = TRUE getResult(NFSC503_6_2_2) = TRUE }
//연결살수설비의 화재안전기준(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) }
// 연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 2항 2호 Check(NFSC503_6_2_2){ IF (CS1 THEN KS1) OR (CS2 THEN KS2) }
CS1{ Head myHead{ isObjectProperty(HookingUpSprinklerSystem.Head.isShared) = FALSE } isExist(myHead) = TRUE }
KS1{ getObjectDistance(Ceiling, HookingUpSprinklerSystem.Head) <= 3.7m OR getObjectDistance(CeilingCovering, HookingUpSprinklerSystem.Head) <= 3.7m }
CS2{ isExist(SprinklerHead) = TRUE }
KS2{ getObjectDistance(Ceiling, SprinklerSystem) <= 2.3m OR getObjectDistance(CeilingCovering, SprinklerSystem) <= 2.3m }
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항
Check(NFSC503_6_3){
IF CS THEN KS
}
CS{
Head myHead{
getObjectProperty(SprinklerSystem.Head.openAndCloseType) = "EnclosedType"
}
isExist(myHead) = TRUE
}
KS{
getResult(NFSC503_6_3_2) = TRUE
getResult(NFSC503_6_3_3) = TRUE
getResult(NFSC503_6_3_5) = TRUE
getResult(NFSC503_6_3_6) = TRUE
}
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 2호 Check(NFSC503_6_3_2){ KS }
KS{ isVacant(SprinklerHead,a, 60) = TRUE getObjectDistance(Wall, SprinklerHead) >= 10CM }
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 3호 Check(NFSC503_6_3_3){ IF (CS1 THEN KS1) or (CS2 THEN KS2) }
CS1{ getObjectProperty(SprinklerHead) != "BottomUpType" }
KS1{ getObjectDistance(SprinklerHead.AttachingToSurface, SprinklerHead) <= 30CM }
CS2{ getObjectProperty(SprinklerHead) = "BottomUpType" }
KS2{ getObjectVerticalDistance(Ceiling, SprinklerHead) <= 30CM }
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 5호
Check(NFSC503_6_3_5){
IF !CS THEN KS
}
CS{
getObjectProperty(SprinklerSystem.Head.shapeType) = "SideWallType"
}
KS{
isParallel(SprinklerSystem.Head.Deflector, SprinklerSystem.Head.AttachingToSurface) = TRUE
}
//연결살수설비의 화재안전기준(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
}
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 6호 가목
Check(NFSC503_6_3_6_1){
IF CS THEN KS
}
CS{
hasObject(Celing, SprinklerSystem.Head) = TRUE
}
KS{
isParallel(Ceiling, SprinklerSystem.Head.Deflector) = TRUE
}
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 6호 나목
Check(NFSC503_6_3_6_2){
IF (CS1 THEN KS1) or (CS2 THEN KS2)
}
CS1{
hasObject(Ceiling, SprinklerHead.Deflector) = TRUE
getObjectWidth(SprinklerHead, c) = SH
getObjectWidth(SprinklerHead.Deflector) = SHD
SH*0.5 < 1m
}
KS1{
getObjectWidth(SprinklerHead.Deflector) = 1m
getVerticalObjectDistance(SprinklerHead, Ceiling) <= 90cm
}
CS2{
hasObject(Ceiling, SprinklerSystemHead.Deflector) = TRUE
getObjectWidth(SprinklerSystemHead, c) = SH
getObjectWidth(SprinklerSystemHead.Deflector) = SHD
SH*0.5 >= 1m
}
KS2{
getObjectWidth(SprinklerSystemHead.Deflector) = SHD
SHD <= SH*0.5
getVerticalObjectDistance(SprinklerSystemHead, Ceiling) <= 90cm
}
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 7호
Check(NFSC503_6_3_7){
IF (CS1 THEN KS1) or (CS2 THEN KS2)
}
CS1{
Opening myOpening{
isObjectProperty(Opening.isFireSpreading) = TRUE
}
isExist(myOpening) = TRUE
getObjectWidth(myOpening, a) > 2.5m
}
KS1{
(getObjectDistance(myOpening.InsideSurface, SprinklerSystem.Head) <= 15cm
getObjectWidth(SprinklerSystem.Head, a) = 2.5m)
OR (getObjectWidth(myOpening) <= 9m
getObjectDistance(myOpening.InsideSurface, SprinklerSystem.Head) <= 15cm
getObjectWidth(SprinklerSystem.Head, a) <= 1.2m)
}
CS2{
Opening myOpening{
isObjectProperty(Opening.isFireSpreading) = TRUE
}
isExist(myOpening) = TRUE
getObjectWidth(myOpening, a) <= 2.5m
}
KS2{
hasObject(myOpening, SprinklerSystem.Head) = TRUE
}
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 8호
Check(NFSC503_6_3_8){
IF CS THEN KS
}
CS{
isObjectProperty(SprinklerSystem.type) != WetPipeSprinklerSystem
(getResult(NFSC503_6_3_8_1) = FALSE
OR getResult(NFSC503_6_3_8_2) = FALSE)
}
KS{
mySprinklerHead{
getObjectProperty(SprinklerSystem.Head.installationDirectionType) = "BottomUpType"
}
isExist(mySprinklerHead) = TRUE
}
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 8호 가목
Check(NFSC503_6_3_8_1){
KS
}
KS{
Head myHead{
isObjectProperty(SprinklerSystem.Head.isDryPendent) = TRUE
}
isExist(mySprinklerHead) = TRUE
}
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 8호 다목
Check(NFSC503_6_3_8_3){
KS
}
KS{
Head myHead{
getObjectProperty(SprinklerSystem.Head.openAndCloseType) = "OpenType"
}
isExist(myHead) = TRUE
}
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 9호
Check(NFSC503_6_3_9){
IF (CS1 THEN KS1) or (CS2 THEN KS2)
}
CS1{
SprinklerHead mySprinklerHead{
getObjectProperty(SprinklerHead.shapeType) = "SideWallType"
}
isExist(mySprinklerHead) = TRUE
getObjectWidth(Room) < 4.5m
OR getObjectWidth(Room) > 9m
}
KS1{
SprinklerHead mySprinklerHead{
getObjectProperty(SprinklerHead.shapeType) = "SideWallType"
}
getObjectWidth(mySprinklerHead, c) < 3.6m
}
CS2{
Head myHead{
getObjectProperty(SprinklerSystem.Head.shapeType) = "SideWallType"
}
isExist(mySprinklerHead) = TRUE
getObjectWidth(Room) >= 4.5m
OR getObjectWidth(Room) <= 9m
}
KS2{
Head myHead{
getObjectProperty(SprinklerSystem.Head.shapeType) = "SideWallType"
}
isParallel(mySprinklerHead, Wall) = TRUE
}
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 4항 Check(NFSC503_6_4){ IF !(CS) THEN KS }
CS{ getFloorElevationHeight(?) = A getSpaceHeight(?) = B A + B <= 0 }
KS{ hasSpace(?, HookingUpSprinklerSystem.Head) = TRUE getResult(NFSC503_6_4_1) = TRUE getResult(NFSC503_6_4_2) = TRUE }
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 4항 1호 Check(NFSC503_6_4_1){ KS }
KS{ getObjectProperty(HookingUpSprinklerSystem.Head.openAndCloseType) = "OpenType" }
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 4항 2호 Check(NFSC503_6_4_2){ KS }
KS{ getObjectWidth(HookingUpSprinklerSystem.Head, c) <= 3.7m }
|