UNPKG

meta-log-db

Version:

Native database package for Meta-Log (ProLog, DataLog, R5RS)

107 lines 2.66 kB
import { MetaLogDbConfig, Fact } from './types/index.js'; import { ChainComplex, HomologyResult } from './extensions/homology/index.js'; /** * Meta-Log Database - Main class */ export declare class MetaLogDb { private prolog?; private datalog?; private r5rs?; private jsonl; private rdf?; private shacl?; private config; constructor(config?: MetaLogDbConfig); /** * Load R5RS engine from file */ loadR5RSEngine(path: string): Promise<void>; /** * Load canvas file (JSONL or CanvasL) */ loadCanvas(path: string): Promise<void>; /** * Parse JSONL canvas */ parseJsonlCanvas(path: string): Promise<any>; /** * Parse CanvasL file */ parseCanvasL(path: string): Promise<any>; /** * Extract facts from canvas */ extractFactsFromCanvas(canvas: any): Fact[]; /** * Extract facts */ extractFacts(): Fact[]; /** * Convert JSONL facts to RDF */ jsonlToRdf(facts?: Fact[]): any[]; /** * Execute ProLog query */ prologQuery(query: string): Promise<any>; /** * Build ProLog database from facts */ buildPrologDb(facts: Fact[]): void; /** * Add ProLog rule */ addPrologRule(rule: string): void; /** * Execute DataLog query */ datalogQuery(query: string, program?: any): Promise<any>; /** * Build DataLog program */ buildDatalogProgram(rules: string[]): any; /** * Execute SPARQL query */ sparqlQuery(query: string): Promise<any>; /** * Store RDF triples */ storeTriples(triples: any[]): void; /** * RDFS entailment */ rdfsEntailment(triples: any[]): any[]; /** * Load SHACL shapes */ loadShaclShapes(path: string): Promise<any>; /** * Validate SHACL */ validateShacl(shapes?: any, triples?: any): Promise<any>; /** * Execute R5RS function */ executeR5RS(functionName: string, args: any[]): Promise<any>; /** * Register R5RS function */ registerR5RSFunction(name: string, fn: Function): void; /** * Get configuration */ getConfig(): MetaLogDbConfig; /** * Validate homology of chain complex * Requires enableHomology: true in config */ validateHomology(complex: ChainComplex): HomologyResult; /** * Compute Betti number for dimension n * Requires enableHomology: true in config */ computeBetti(complex: ChainComplex, n: number): number; } export type { MetaLogDbConfig } from './types/index.js'; //# sourceMappingURL=database.d.ts.map