Skip to main content

A Python package to assist concordance reading

Project description

Introduction to FlexiConc

FlexiConc is a Python package developed to facilitate and enhance the computational analysis of concordances, primarily intended for use in corpus linguistic research. The package is rooted in theoretical insights from the “Reading Concordances in the 21st Century” research project supported by the Arts and Humanities Research Council (AHRC) (grant references: AH/X002047/1 & AH/X002047/2) and the Deutsche Forschungsgemeinschaft (DFG) (grant reference: 508235423).

FlexiConc systematically supports analysts in organizing, filtering, and interpreting concordance data through algorithmic assistance, making complex corpus research reproducible and accountable.

What is FlexiConc?

FlexiConc provides computational methods to assist corpus linguists in systematically exploring concordances—lists of text segments centered around keywords or query matches (nodes). It enables flexible manipulation of concordances through a structured approach that includes selecting subsets of data, ordering concordance lines based on specific criteria, and grouping them into meaningful clusters or partitions.

Core Features

Concordance Views

A concordance view is a filtered, ordered, grouped, or otherwise transformed subset of a concordance, designed to help analysts identify and interpret patterns. Concordance views support "vertical reading" via traditional KWIC (Keyword in Context) format, allowing efficient examination of recurring linguistic patterns.

Core Analytical Strategies

FlexiConc is built around three main strategies:

  1. Selecting: Focusing on subsets of concordance lines based on criteria such as metadata categories, contextual keywords, or random sampling.
  2. Ordering: Arranging concordance lines either through sorting (pairwise comparisons) or ranking (based on numeric preference scores to prioritize lines of interest).
  3. Grouping: Organizing concordance lines into meaningful categories, either by partitioning based on explicit criteria or clustering by semantic, syntactic, or lexical similarity.

Analysis Trees

The analytical workflow in FlexiConc is structured via an analysis tree, a hierarchical history of applied algorithms and operations. Each node in the tree represents either a subset selection or a rearrangement (ordering/grouping) of concordance lines, preserving a complete record of the analyst's exploratory steps. This ensures research transparency, facilitates reproducibility, and enables easy revisiting of previous analytical steps.

Integration and Extensibility

FlexiConc is designed primarily as a backend library for integration into concordancer applications. The host application handles corpus queries, initial concordance generation, user interaction, and visualization, while FlexiConc processes concordances, applies algorithms, and manages analysis trees. This clear division ensures FlexiConc can be integrated into various concordancing environments easily.

FlexiConc's modular design supports adding new analytical algorithms seamlessly, fostering ongoing innovation and adaptability to evolving research needs.

Intended Users and Use Cases

FlexiConc is suited for:

  • Corpus linguists performing qualitative and quantitative pattern analyses.
  • Developers of concordance applications seeking computational backend solutions.
  • Educators and researchers requiring reproducible and systematic documentation of analytical steps.

Technical Overview

FlexiConc operates on structured concordance data containing token and metadata annotations provided by the host application.

Algorithm outputs—subset selections, sorting keys, clustering information—are returned as structured concordance views, enabling host applications to provide clear visual representations.

Documentation

As of the current version, the complete documentation is still in development and the details of the API are subject to change. However, you can learn how FlexiConc works from the examples in this Jupyter notebook using FlexiConc 0.1.5.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flexiconc-0.1.14.tar.gz (95.4 kB view details)

Uploaded Source

Built Distribution

flexiconc-0.1.14-py3-none-any.whl (104.5 kB view details)

Uploaded Python 3

File details

Details for the file flexiconc-0.1.14.tar.gz.

File metadata

  • Download URL: flexiconc-0.1.14.tar.gz
  • Upload date:
  • Size: 95.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.6

File hashes

Hashes for flexiconc-0.1.14.tar.gz
Algorithm Hash digest
SHA256 23fcf37fe2c30760aa710e63888587c026066af02dc3713ed010876fc8dfd863
MD5 65a300a09d8bcfecb437ea404f607bd1
BLAKE2b-256 ea8b4fd0622b15ca88fb38a722645aed4faef60b60ee6055dd1720980fb5750a

See more details on using hashes here.

File details

Details for the file flexiconc-0.1.14-py3-none-any.whl.

File metadata

  • Download URL: flexiconc-0.1.14-py3-none-any.whl
  • Upload date:
  • Size: 104.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.6

File hashes

Hashes for flexiconc-0.1.14-py3-none-any.whl
Algorithm Hash digest
SHA256 bb522a0515cf193d612ef8526683ea16b97ca2e7cdca55f8acacb3f0f984e4ad
MD5 66628582f834179af7ab420011568b56
BLAKE2b-256 a122070fcb97fd2ca58f1843fdc250f592bd219a6e3f0a7fccad7d738a679d02

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page