# Reconcile CSV

> Clojure software by OKFN that can be used to run a reconciliation service off any CSV file

**Wikidata**: [Q113375760](https://www.wikidata.org/wiki/Q113375760)  
**Source**: https://4ort.xyz/entity/reconcile-csv

## Summary
Reconcile CSV is a software tool developed by the Open Knowledge Foundation (OKFN) that allows users to run a data reconciliation service using any CSV file. Written in the Clojure programming language, it functions as a non-tangible executable component designed to facilitate data matching and cleaning processes.

## Key Facts
- **Creator:** Open Knowledge Foundation
- **Software Type:** Non-tangible executable component of a computer
- **Programming Language:** Clojure (a dialect of the Lisp programming language)
- **Primary Function:** Running a reconciliation service off any CSV file
- **Main Subject:** Data reconciliation
- **Official Website:** https://okfnlabs.org/reconcile-csv/
- **Distinct Entities:** Differentiated from Nomenklatura and csv-reconcile

## FAQs
### Q: What is the primary purpose of Reconcile CSV?
A: Reconcile CSV is designed to run a reconciliation service using any CSV file. This allows users to match data entries against existing lists without needing a complex database backend.

### Q: Who created Reconcile CSV?
A: The software was created by the Open Knowledge Foundation (OKFN), an organization known for promoting open data and knowledge standards.

### Q: What programming language is Reconcile CSV built with?
A: The software is built using Clojure, a dialect of the Lisp programming language.

## Why It Matters
Reconcile CSV serves a critical role in the data cleaning ecosystem by bridging the gap between static spreadsheets and dynamic reconciliation services. By enabling any CSV file to function as a reconciliation endpoint, it lowers the technical barrier for users who need to standardize and match data but lack the resources to build dedicated databases or APIs. This capability is essential for data journalists, researchers, and open data advocates who rely on simple formats like CSV. Its creation by the Open Knowledge Foundation underscores its alignment with open data principles, providing a free and accessible tool for improving data quality. By utilizing Clojure, the tool benefits from the functional programming paradigm associated with the Lisp dialect, ensuring robust performance for data processing tasks.

## Notable For
- **Universal CSV Support:** Ability to run a reconciliation service off *any* CSV file, regardless of specific formatting constraints.
- **Clojure Architecture:** Built entirely in Clojure, a modern dialect of Lisp.
- **Open Source Pedigree:** Created by the Open Knowledge Foundation, a leading entity in the open data movement.
- **Specific Differentiation:** Explicitly distinct from similar tools like Nomenklatura and csv-reconcile.

## Body
### Technical Overview
Reconcile CSV is a specific instance of software classified as a non-tangible executable component. It utilizes the Clojure programming language, a dialect of Lisp that originated in 2007. The software's architecture is designed to ingest standard CSV files and expose them via a reconciliation service interface.

### Core Functionality
The main subject of the software is data reconciliation. This process involves matching text strings to identifiers in a controlled vocabulary. By using Reconcile CSV, users can transform a static data table into an interactive service that suggests matches for ambiguous data points, a common requirement in data journalism and data wrangling.

### Comparison and Context
While Reconcile CSV addresses data matching, it is distinct from other tools in the same domain, specifically Nomenklatura and csv-reconcile. It is hosted by Open Knowledge Foundation Labs (okfnlabs.org), aligning with the organization's mission to develop tools for the open data community.