Reader for STRidER-style STR allele-frequency tables in XML, converting them into the generic @deckyard/forensicgenetics FrequencyDb.
forensicsgeneticsstrstriderxml
[decks]
"@deckyard/strider" = "^0.1.0"| Version | Status | Kind | Pin | Requires | Engines | Capabilities |
|---|---|---|---|---|---|---|
| 0.1.0 | live | git | af8f6f5e0238 | @deckyard/forensicgenetics >=0.1.0 | jennifer >=0.25.0 jennifer-tiny >=0.25.0 | - |
LGPL-3.0-only
0.1.0Times a client asked this registry where to find this deck. Not downloads: the registry only stores metadata, and the code is fetched from its repository directly, so we never see an install and cannot count one. Repeated builds inflate these numbers; installs from an existing lockfile do not appear at all. Counted in UTC.
Reads a STRidER STR allele-frequency export in XML, which holds every population at once, and converts the population you choose into the FrequencyDb that @deckyard/forensicgenetics computes with. Frequencies are kept as published.
Manual: https://deckyard.github.io/deck-strider-frequency-converter/
Requires Jennifer 0.25.0 or newer. Neither this deck nor its dependency is in the public registry yet, so point jvc at this repository; the manifest carries the [sources] entry for @deckyard/forensicgenetics:
jvc source @deckyard/strider https://github.com/deckyard/deck-strider-frequency-converter.git
jvc add @deckyard/strider
jvc installThis vendors both decks under vendor/deckyard/. Without jvc, copy the src/ of both (from a checkout or a deckyard-strider-<version>.tar.gz release archive):
mkdir -p vendor/deckyard/strider vendor/deckyard/forensicgenetics
cp path/to/deck-strider-frequency-converter/src/*.j vendor/deckyard/strider/
cp path/to/deck-forensicgenetics/src/*.j vendor/deckyard/forensicgenetics/
rm -f vendor/*/*/*_test.juse fs;
import "@deckyard/strider/" as strider;
import "@deckyard/forensicgenetics/" as forensics;
def t as strider.Table init strider.parse(fs.readString("strider.xml"));
strider.populations($t); # ["Entire Database", "Europe", "AUSTRIA", ...]
strider.frequencySums($t, "AUSTRIA"); # locus -> sum, each ~1.0 for a sound table
def db as forensics.FrequencyDb init strider.toFrequencyDb($t, "AUSTRIA", "STRidER AT");The deck ships no real STRidER table. STRidER's terms of use reserve redistribution and permit downloads for private, non-commercial use only; download the XML yourself from https://strider.online/frequencies/xml. testdata/frequencies.xml is synthetic.
jennifer test src/strider_test.j
jennifer run examples/readtable.j [export.xml] ["POPULATION"]LGPL-3.0-only, see LICENSE. Copyright (C) 2026 mplx <[email protected]>.