Dekereke Pivot Tables — Documentation
Guides for loading XML, building pivots, and copying references.
What Is This Useful For?
This app helps you quickly summarize Dekereke (or similar) linguistic datasets. A common use is exploring tone patterns by cross-tabulating tone melodies (rows) against syllable templates (columns), or other phonological/morphological categories.
Examples (illustrative layouts)
Tone Melodies × Syllable Templates
| Melody \ Template | CV | CVCV | CVV |
|---|---|---|---|
| H | 12 | 8 | 5 |
| L | 9 | 11 | 4 |
| HL | 7 | 13 | 6 |
| LH | 10 | 6 | 3 |
Click a cell in the PWA to see and copy the exact record references for that count.
Part of Speech × Tone Category
| POS \ Tone | H | L | HL | LH |
|---|---|---|---|---|
| Noun | 21 | 14 | 5 | 3 |
| Verb | 8 | 17 | 9 | 4 |
| Adj | 6 | 5 | 2 | 1 |
Reference
For a discussion of organizing tonal data and using tabular summaries, see:
Snider, K. (2014). Tone Analysis for Field Linguists (2nd ed.). Dallas, TX: SIL International. Chapter 2.
Table of Contents
Getting Started
- Open the PWA.
- Click Choose XML File and select your Dekereke XML database.
- Pick a Row Field and a Column Field.
- Optionally add filters in Advanced Filters (AND/OR, equals/contains/regex, etc.).
- Click Generate Pivot Table.
- Click the count in any cell to open the Reference modal, then copy references.
All processing happens locally in your browser. No data is uploaded.
Importing XML via URL (Cross‑App)
You can launch the PWA with XML data passed in the URL hash. This avoids CORS and server uploads.
Compressed (recommended)
Construct a URL: .../app/index.html#gz:{base64_of_gzip(xml)}
gzip -c file.xml | base64 | xargs -I {} open "http://localhost:8000/docs/app/index.html#gz:{}"
Uncompressed
Construct a URL: .../app/index.html#{base64(xml)}
The app detects gz: and will automatically ungzip and parse the XML.
See the URL Integration Guide for more details.
Why Pivot Tables?
Pivot tables help summarize large datasets by grouping rows and columns by chosen fields and counting matches, which is particularly useful for exploring linguistic patterns (e.g., tone sequences, morphological categories, environments).
Suggested Reading
For background and practical guidance, see Chapter 2 of Keith Snider’s work:
Snider, K. (2014). Tone Analysis for Field Linguists (2nd ed.). SIL International. Chapter 2.
APA reference: Snider, K. (2014). Tone Analysis for Field Linguists (2nd ed.). Dallas, TX: SIL International.
Chapter 2 discusses data organization and the value of tabular summaries, which aligns with how pivot tables can surface distributional patterns.
Advanced Filters
- Group logic: AND or OR.
- Operators: equals, not equals, contains, not contains, regex.
- Regex is case‑insensitive. Use patterns like
^CV,HL,\d{4}. - Multi‑select values supported where applicable.
Contributing
Contributions are welcome! Ideas, bug reports, and pull requests help the project grow.
- Open issues or PRs at the GitHub repository.
- Focus areas: performance for large XML, additional filter operators, export options, and accessibility improvements.
- Please follow the AGPL‑3.0 license and include attribution.