Skip to content

v1.0.0

Choose a tag to compare

@dasmig dasmig released this 14 Oct 04:17
· 29 commits to main since this release

First release. Employment status, education and occupation by country, age and sex, built on dasmig-core 1.0.0.

Added

  • dasmig::ocg (dasmig/occupationgen.hpp): get_occupation(occupation_request), with (request, seed) and shorthands for a country, a seed or neither. occupation_request{country, age, person_sex, education, status}; every field is optional (age defaults to 40).
  • occupation: country_code, person_sex, age, status (employed, unemployed, student, retired, inactive), education (four levels), job (key, label, ISCO-08 group and title, unit group, skill level, skills, gear, tags), to_json(), signature(), seed().
  • Seven layered tables (status, inactivity, education, isco, shares, factors, occupations), extended with extend() / extend_from_string(table, ...); a directory layer applies to all its tables or none.
  • lite (213 countries and territories, 95 jobs) and full (213, 320 jobs) tiers; DASMIG_OCCUPATION_EMBED compiles lite in (a 2 MB header).
  • Known-answer tests identical on clang 18 (libc++), gcc 14 (x86-64 with FMA, ARM64), Apple clang (ARM64), MSVC and Emscripten.

Data: read before relying on it

  • Measured: employment status, education and the share of each ISCO-08 group by sex, and the age and education factors, from ILOSTAT (ILO, CC BY 4.0): the latest complete survey since 2010. Surveyed: status 139 countries, education 185, occupation shares 149; the others get a regional mean (basis = region), which is a guess.
  • Curated: the 320-job catalogue (weights within an ISCO group, age limits, tags, skills, gear) and how the inactive split into students, retired and others (the same in every country).
  • ILOSTAT only breaks occupation down by age into 15-24, 25-54, 55-64 and 65+. Age, education and sex are treated as independent given the group.
  • Licences have not been reviewed (owner's decision).

See Data and Method for every column's source and the model's limits.