object-ql
An Object Query Language, for the Gramps Project and other objects.
This project is designed to be a drop-in replacement for https://github.com/DavidMStraub/gramps-ql
Rather than having to build, and learn, a new query language, the idea is to build on top of Python, the native language of the Gramps Project. And, rather than having to convert the Gramps raw data into objects, then dicts, and then back again to objects (when needed), this query system can operate directly on the objects.
Each object can be identified by its lower-case class type, eg person, note, family, etc.
Examples:
Find the person with a particular gramps_id:
person.gramps_id == 'person001'
Find all of the people with notes:
person.get_note_list()
Find all of the people with notes that mention 'vote':
any([('vote' in str(get_note(handle).text)) for handle in person.get_note_list()])
Usage
If you don't know what the type is, you can use obj, like:
"23" in obj.gramps_id
You can use standard dot notation to reference any object. Refer to Gramps Primary Objects for the structure of Gramps objects.
You can also use the SimpleAccess methods that make access to some data much easier. The SimpleAccess is available as sa, as shown below.
Select all of the people that have are married to a person named "Donna":
sa.first_name(sa.spouse(person)) == "Donna"
Metadata
Release files for object-ql 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| object_ql-0.1.3.tar.gz | 7.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| object_ql-0.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.4 kB
Release files / object_ql-0.1.3.tar.gz
| Download URL | object_ql-0.1.3.tar.gz |
|---|---|
| Size | 7.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
89ceeb73b704f25f4afe73d8351afeb6d66f8735702701b505c02b159d213d12
|
|
BLAKE2b-256 checksum How to use checksums |
6ee8e6b6bf7fa0280d4f14c87333c6f7fe48cc85de5fb880910cd7a785a95b9f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.13
|
Release files / object_ql-0.1.3-py3-none-any.whl
| Download URL | object_ql-0.1.3-py3-none-any.whl |
|---|---|
| Size | 6.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8d5b4ed9a298e8e6a9641819e517cc500b339a6121df4bdbbb61feeaa31e98d5
|
|
BLAKE2b-256 checksum How to use checksums |
fe3f168017dd72c21dcc2e81c90f42c3294302b4f226c3b4e56a705b44c6bf1d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.13
|