In aspect-oriented programming (AOP), the join point selection depends heavily on the context exposed to aspects by means of special pointcut constructs. This context is either local to the join point (e.g. target of method calls) or non-local (e.g. call-stack). Path expression pointcut (PEP) is a special kind of pointcut that provides aspects with the access to non-local object information. In order to implement PEP, a well-defined unambiguous semantics for PEP is needed. This paper proposes a denotational semantics for PEP, which unambiguously describes the result of evaluating the PEP. Moreover, it helps to guide future developments of the PEP and its integration with AOP system.