DefaultPrologProjector

class DefaultPrologProjector(graphProjector: GraphProjector? = null, prologSchema: PrologSchema = PrologSchema.withDefaults(), includeConfidence: Boolean = true, includeGrounding: Boolean = true) : PrologProjector

Default implementation of PrologProjector.

For direct proposition projection, delegates relationship classification to a GraphProjector. The recommended usage is to first project propositions using a GraphProjector, then use projectAll to convert the resulting relationships to Prolog facts.

Parameters

graphProjector

Optional projector for classifying propositions into relationships. Required if using project for direct proposition-to-Prolog projection.

prologSchema

The Prolog schema defining predicate mappings

includeConfidence

Whether to generate confidence facts in projectAll

includeGrounding

Whether to generate grounding/provenance facts in projectAll

Constructors

Link copied to clipboard
constructor(graphProjector: GraphProjector? = null, prologSchema: PrologSchema = PrologSchema.withDefaults(), includeConfidence: Boolean = true, includeGrounding: Boolean = true)

Functions

Link copied to clipboard
open override fun project(proposition: Proposition, schema: <Error class: unknown class>): ProjectionResult<PrologFact>

Project a proposition to a Prolog fact. Delegates relationship classification to the configured GraphProjector.

Link copied to clipboard
open override fun projectAll(relationships: List<ProjectedRelationship>): PrologProjectionResult

Project multiple relationships to a complete Prolog result with metadata.

open fun projectAll(propositions: List<Proposition>, schema: <Error class: unknown class>): ProjectionResults<PrologFact>

Project a batch of propositions.

Link copied to clipboard
open override fun projectRelationship(relationship: ProjectedRelationship): PrologFact

Project a classified relationship to a Prolog fact.