<> <> <> <> DIRECTORY Rope, CHNameP2V0, CHNameP2V0Aux; CHNameP2V0AuxImpl: CEDAR PROGRAM IMPORTS Rope EXPORTS CHNameP2V0Aux ~ { OPEN CHNameP2V0, CHNameP2V0Aux; ROPE: TYPE ~ Rope.ROPE; ExposeTwoPartName: PUBLIC PROC [arg: TwoPartName, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; res ¬ Rope.Cat[res, "organization~", arg.organization, ", "]; res ¬ Rope.Cat[res, "domain~", arg.domain, "]"]; }; ExposeThreePartName: PUBLIC PROC [arg: ThreePartName, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; res ¬ Rope.Cat[res, "organization~", arg.organization, ", "]; res ¬ Rope.Cat[res, "domain~", arg.domain, ", "]; res ¬ Rope.Cat[res, "object~", arg.object, "]"]; }; }...