
Domain helper: organizing-unit-to-element bindings
Source:R/sparql-helpers.R
unit_element_bindings.RdOne row per (parent, element) pair derived from cybed:hasElement
triples. Despite the "role" naming, the role column is NOT restricted
to cybed:Role subjects – cybed:hasElement is the universal parent-
child link used across every framework in the corpus, so this returns
element bindings for every cybed:OrganizingUnit (SFIA skills,
Cyber.org K-12 and CSTA standards, etc.), not just NICE/DCWF/ECSF work
roles. Confirmed by a 2026-08-14 stress test: most distinct values in
the role column are not actual cybed:Role subjects. Low practical
risk when
immediately joined against role_framework_bindings() or
organizing_unit_framework_bindings() (the mismatches drop out), but a
standalone aggregate over this tibble's role column (e.g. "average
elements per role") will silently include non-role parents. Filter to
cybed:Role first via role_framework_bindings() if that distinction
matters for your analysis.
Value
A tibble with columns role, element, framework_slug.
framework_slug (added v0.4.0) is the slug of the role (organizing
unit) subject's own framework, taken from
organizing_unit_framework_bindings(); a role with no valid
cybed:partOf to a cybed:Framework carries NA here rather than
dropping the row, so this helper's row count is unchanged from before
v0.4.0.
See also
Other SPARQL helpers:
element_framework_bindings(),
element_text(),
example_framework_bindings(),
framework_metadata(),
organizing_unit_framework_bindings(),
role_element_bindings(),
role_framework_bindings(),
sparql_pairs(),
sparql_subjects(),
subpoint_framework_bindings(),
unit_relation_bindings()
Examples
if (FALSE) { # \dontrun{
rdf <- load_combined_ntriples_graph()
unit_element_bindings(rdf)
} # }