Skip to content

Inconsistencies in definition of evaluation of property path with sequence #266

@hartig

Description

@hartig

The "Evaluation of Sequence Property Path" is defined using the following two formulas.

A = Join( eval(Path(X, P, V)), eval(Path(V, Q, Y)) )

eval(Path(X, seq(P,Q), Y)) = Project(A, Var(X,Y))

Notice that the Join operator, as mentioned in the first formula, produces a multiset of solution mappings (i.e., A would be such a multiset), whereas the Project operator, mentioned in the second formula, expects a sequence of solution mappings as its first argument. Hence, A is not a valid argument for Project in the second formula.

A second, similar inconsistency is that the Project operator produces a sequence of solution mappings, but the left-hand side of the second formula should be equal to a multiset of solution mappings (see the relevant "Notation" box).

These inconsistencies can be removed by changing the second formula as follows.

eval(Path(X, seq(P,Q), Y)) = ToMultiSet( Project(ToList(A), Var(X,Y)) )

Metadata

Metadata

Assignees

No one assigned

    Labels

    spec:bugChange fixing a bug in the specification (class 3) –see also spec:substantive

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions