portableQDA
portableQDA facilitates round-trip information exchange using the REFI-QDA standard: codebooks (QDC files) and QDPX projects. This portable information can be used by any Qualitative Research/Qualitative Data Analysis (CAQDAS) Software conforming to that XML-based standard.
Import/Export formats QDC and QDPX are:
- suitable for structured archiving of any kind of files, including:
- personal corpus of information analysis (text coding, cites, comments)
- the source documents themselves (any arbitrary format, including office docs, PDF, html, audio, surverys)
- well-defined and maintained by the REF-QDA working group
- supported and developed by a growing number of participants
Qualitative Research, also known as QDA stands for Qualitative Data Analysis, as known in social sciences. Related Wikipedia article states: “Qualitative research relies on data obtained by the researcher by first-hand observation, interviews, recordings, […]. The data are generally non-numerical. Qualitative methods include ethnography, grounded theory, discourse analysis […]. These methods have been used in sociology, anthropology, and educational research.”
Installation
pip install portableqda
Basic usage
Testing (specially the output format)
change your current directory to portableQDA's root, then
poetry shell
python tests
produces various codebooks (QDC files) in your home directory, should be suitable for import by your CAQDAS software.
Testing the input format
- export a codebook from the QDA software of your choise
- run the following script:
import portableqda
codebook = portableqda.codebookCls(output="portableQDA-output-test.qdc")
codebook.readQdcFile(input="/path/to/file-from-first-step.qdc")
codebook.writeQdcFile()
- should throw no errors, check the file
portableQDA-output-test.qdcat your home directory for completeness - try to import into your CAQDAS software
Developing
You will find examples for many use cases at the examples directory. Some of them are:
# examples/ex1_codesAndSets.py
import portableqda
#look for output in system logging
codebook = portableqda.codebookCls(output="codebook_example.qdc") #create a codebook
# create 3 codes and group them in two sets
for number in range(3):
codebook.createElement(elementCls=portableqda.codeCls,
name=f"code{number}",
sets=["set1","set2"])
# for error checking, see examples/ex2_flowControl.py
codebook.writeQdcFile() # export the codebook as a REFI-QDA 1.5 compliant QDC file
Look for the file codebook_example.qdc at your home directory. You can see more of what's happening (portableQDA is a library thus not intended for direct use), inserting the following code where the comment "look for output in system logging" is, right after the import portableqda statement:
import logging
handler = logging.StreamHandler(sys.stdout)
handler.setLevel(logging.DEBUG)
formatter = logging.Formatter('%(name)s - %(levelname)s - %(message)s')
handler.setFormatter(formatter)
portableqda.log.addHandler(handler)
portableqda.log.setLevel(logging.DEBUG)
Output should look like this:
portableqda.refi_qda - DEBUG - tree created, root node: 'CodeBook'. see REFI-QDA 1.5
portableqda.refi_qda - INFO - output is C:\Users\X\codebook_example.qdc
portableqda.refi_qda - DEBUG - added code code0 to set set1
portableqda.refi_qda - DEBUG - added code code2 to set set2
portableqda.refi_qda - INFO - exporting as REFI-QDC codebook to file: C:\Users\X\codebook_example.qdc
Documentation
Contributing
Acknowledgents
LMXL: portableQDA relies on the excellent lxml package for the underlying tree data structure and XML handling
REFI-QDA: working group pushing interoperability and open standards
License
Metadata
Release files for portableqda 0.4.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| portableQDA-0.4.2.tar.gz | 31.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| portableQDA-0.4.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 63.9 kB
Release files / portableQDA-0.4.2.tar.gz
| Download URL | portableQDA-0.4.2.tar.gz |
|---|---|
| Size | 31.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0564b1f6c2295e38c4fae4148d226bfc16510564e733fc7f654268f978c67151
|
|
BLAKE2b-256 checksum How to use checksums |
b49bc3232cc105e202e85c12845817a9f01a77ad7daaf3fc0e62d4a8b1182c12
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.1.4 CPython/3.8.10 Linux/5.8.0-59-generic
|
Release files / portableQDA-0.4.2-py3-none-any.whl
| Download URL | portableQDA-0.4.2-py3-none-any.whl |
|---|---|
| Size | 32.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
02df7e595724cd3acc69469440b5ffd627fdbe7b99cf25fae08ebdd6648ba6dd
|
|
BLAKE2b-256 checksum How to use checksums |
c6306589028828c28585e82fb70f2f92e03c7540c6f6b39694a9268416bc45b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.1.4 CPython/3.8.10 Linux/5.8.0-59-generic
|