sparql-view-unfold
    Preparing search index...

    Function projectSolutionExistence

    • Wraps an operation in the projection that asks whether it has any solution at all.

      SPARQL has neither a sub-ASK nor an empty projection, so the question is written as a projection onto a single variable bound to a constant: one solution comes out exactly when the operation has one, whatever that operation binds (proof this works).

      The variable it binds leaves the projection, so the context coins it: two of them sharing a name would share a join key, and a MINUS decides compatibility on exactly the variables its two sides share.

      Parameters

      • c: Pick<TransformationContext, "AF" | "DF" | "coinExistenceVariable">

        Object containing the factories and the existence variable generator

      • operation: Operation

        The operation to ask about

      Returns Project

      the projection, over the one variable it binds