A tool to create and customize classification schemes like the Library of Congress Classification.
For years I have been fiddling around with organizing my personal collections of books and notes. Folder Structures emerged but were not consistent through media, due to time and the sheer amount of data. This was until I stumbled across the field of Libray Sciences and the science of classification.
There are several classifications with different approaches how to handle stuff. And with stuff I literally mean everything: physical objects, persons, animals, insects, everything that is touchable. But also notions, ideas, abstractions. The goal is to make our reality at least this much quantifiable, so it can be catalogued and conquered by mankind all over again.
This is why I came up with this script. By default it fetches the current Library of Congress Classification from Wikipedia, parses it and either way pretty prints it to the console, saves it as yaml or creates a folder structure with it.
e.g. save standard LCC to a yaml file: python3 ./classification-structure-creator.py save_yaml
Actions to perform: save_yaml, create_folders, yaml_to_dir or print_yaml
options: -h, --help show this help message and exit --dir DIR Base directory, defaults to CWD/lcc --file FILE Base YAML File to work with, defaults to CWD/lcc/classification.yaml --lang LANG Language in which to fetch the Standard LCC. En and De are implemented. Defaults to En.
create_folders
- Is taking in any yaml file with the given structure, defaults to max 10 levels of recursion.
- Save existing Standard LCC to yaml file.
- Work on it, customize it, add more levels.
- Create a folder structure with the customized yaml.
You can also start with a blank yaml, just keep the following structure:
I:
name:
name: "Informatik"
subclasses:
- I000:
name: "Informationstechnologie"
subclasses:
- I000a:
name: "Verarbeitung & Speicherung von Daten"
- I000b:
name: "Systeme, Speichergeräte, Speichereinrichtungen"
- I000c:
name: "Hardware"
subclasses:
- I000cI:
name: "Prozessoren"
Created with Python 3.10.12.