+module {
+ features = [edo]
+}
+
include "Simantics/DB" hiding (resourceId)
import "http://www.simantics.org/Layer0-1.1" as L0
import "http://www.simantics.org/Modeling-1.2" as MOD
`morelse`
(guard (r == getRootLibrary ()) >> return (AbsoluteUri "http:/"))
`morelse`
- (mdo
+ (edo
(p,rel) <- getPrimaryFunctionalReference r
path <- loop p
relName <- possibleNameOf rel
return $ simplifyResourceIdHead $ PropertyOf path relName
)
`morelse`
- (mdo
+ (edo
p <- possibleObject r L0.PartOf
path <- loop p
name <- possibleNameOf r
return $ simplifyResourceIdHead $ NamedChildOf path name
)
`morelse`
- (mdo
+ (edo
(p,rel) <- getSecondaryFunctionalReference r
path <- loop p
relName <- possibleNameOf rel