Skip to content

Releases: espositopasquale/KExtractor

Release list

Zero release

Choose a tag to compare

@espositopasquale espositopasquale released this 28 Jul 11:24

KExtractor 0.1.0 — Zero Release

This is the initial release of KExtractor a Java-based CLI that transforms unstructured English text into structured, Semantic Web–compliant knowledge graphs.

Leveraging the Stanford CoreNLP toolkit, KExtractor orchestrates a full linguistic pipeline — coreference resolution, Named Entity Recognition (NER), Open Information Extraction (OpenIE) — using deterministic, rule-based components rather than a probabilistic, black-box approach. The result is a transparent pipeline where a given input consistently yields the same output, prioritizing reproducibility and analytical rigor.

Core Capabilities

  • Advanced NLP Pipeline — Uses a shift-reduce dependency parsing strategy for high-fidelity syntactic analysis and relationship extraction.
  • Deterministic Coreference Resolution — Resolves pronominal references before relationship extraction, reducing entity ambiguity in the final graph.
  • Semantic Web Integration — Outputs linked data as JSON-LD (default), Turtle, RDF/XML, or N-Quads via the --format flag. Graphs combine the schema.org vocabulary with a custom project namespace (kex), ready for downstream ingestion into graph databases and reasoning tools.
  • Corpus Processing — Accepts direct string input or batch processing of flat text documents from the terminal.
  • Dual Execution Modes — Run in-process for quick, one-off tasks (Local Mode), or route requests to a local background CoreNLP server on port 9000 (--server) for large-scale or repeated extraction without reloading models each time.
  • Cross-Platform Launch Scriptsrun-mac-linux.sh and run-windows.bat wrappers detect whether the CoreNLP server is running, start it if needed, and wait for it to initialize before processing input.
  • Full Analysis Mode--full-analysis flag triggers the complete analysis suite.

System Requirements

Requirement Details
Java Runtime JDK 21 or later
Build Tool Apache Maven (required for compilation)
Memory Minimum 4 GB RAM recommended
curl Required by launch scripts to check server status

Recommended heap sizes: -Xmx6g minimum for reliable execution, -Xmx8g as the general default, and -Xmx10g-Xmx12g for large documents or batch processing.

Getting Started

git clone https://github.com/espositopasquale/KExtractor.git
cd KExtractor
mvn clean package
cp target/KExtractor-0.1.0.jar ./kextractor.jar

Then run a quick extraction via the launch script:

./run-mac-linux.sh "Linus Torvalds created the Linux kernel in 1991." output.json

Add --server for background-server mode, or --format=ttl / --format=rdf / --format=nquads to change the output serialization.

Licensing Notes

For full setup instructions, all CLI flags, output examples, and troubleshooting (memory tuning, port conflicts, terminating the background server), see the README.