Model-card coverage of the GOPAL declared-input schema

August 29, 2026 · View on GitHub

Generated by scripts/model-card-coverage.sh from docs/model-card-classification.json and the playground manifest. Do not edit by hand.

What this measures, and what it does not

GOPAL v2.0.0 reads 183 distinct declared input fields across the 35 EU and UK policy checks shipped to the validation preview. A declared input is one no tool can measure for you: whether a CE marking was affixed, whether required documentation has been retained for ten years.

This document maps how many of those inputs a fully populated standard Hugging Face model card can supply. It is a measurement of model-card-to-policy-schema overlap. It is explicitly not a percentage of legal compliance, nor of all applicable regulatory obligations, and no figure here should be quoted as one.

Three reasons the denominator is ours rather than the law's:

  • The schema decides the granularity. Annex IV technical documentation is collapsed into a small number of completeness fields while CE marking is split across five. Refactoring these policies would move the total without a single word of the law or of a model card changing.
  • The library does not cover everything. The EU AI Act matrix lists what is implemented and what is not; the not-implemented rows are absent from this denominator entirely.
  • No system is subject to all of it. The fields span provider, deployer, importer, distributor and GPAI duties, which attach to different actors. The union is not any one organisation's obligation set.

Every field is classified below against what a card structurally contains: its YAML metadata (license, datasets, metrics, model-index, base_model, pipeline_tag, library_name) and the sections of the standard template. Answerable means the card itself establishes the fact, without inference or inspecting the repository around it.

Result

FactsShare
Answerable from a model card53%
Partially informed by one2313%
Untouched by one15585%
Total183

A complete, well-written model card supplies 5 of 183 of these inputs outright and gives you material for 23 more. The standard template does not prompt for the remaining 155.

Much of that remainder is organisational, process and supply-chain evidence: who signed the declaration of conformity, whether a notified body was involved, whether the deployer told the affected workers, whether logs are kept for six months. Some of it is not organisational at all and needs technical work a card simply does not carry, such as adversarial testing, cybersecurity controls, dataset quality and fairness measurement.

A card can of course be extended with sections of your own. The finding is that the standard template does not ask for these, so at the point you add them you are building a compliance record that happens to live in a card, not relying on the model-card structure.

What a card does answer

Declared factWhere in the card
accuracy.metrics_declaredmodel-index / the Evaluation section is exactly a declaration of metrics
documentation.evaluation_results_documentedthe Evaluation section
documentation.training_process_documentedthe Training Details section
governance.third_party_model_in_usebase_model in the YAML names the upstream model
transparency.system_purpose_documentedthe Uses / Direct Use section

What it partially informs

These are the ones worth arguing about. In each case the card raises the topic without asserting the fact, and the distinction matters: a Bias, Risks and Limitations section is not the same claim as "a bias assessment was completed".

Declared factWhy it is only partial
accuracy.declared_in_instructionsthe card is documentation; whether it is the instructions for use is a legal question
datasets.complete_to_the_extent_possiblenot asserted by any card section
datasets.contextual_characteristics_consideredArticle 10(4) asks about the deployment setting, which a card rarely knows
datasets.errors_addressednot asserted by any card section
datasets.relevantthe datasets field names them; relevance is a claim about them
datasets.sufficiently_representativeBias, Risks and Limitations often discusses representativeness without asserting it
documentation.explainability.completenesssome cards discuss interpretability
documentation.technical_documentation.completenessa card is a summary, not the Annex IV file
documentation.testing_process_documentedEvaluation covers results more often than process
explainability.method_documentedsometimes present in Technical Specifications
fairness.bias_assessment_completedBias, Risks and Limitations is a discussion, not a completed assessment
fairness.max_disparityonly if fairness metrics happen to be reported
fairness.protected_characteristics_testednamed occasionally, and rarely as a tested set
model.cumulative_training_compute_flopsTraining Details and Environmental Impact sometimes give compute, rarely FLOPs
model.free_and_open_sourcelicense names a licence, but the Article 53(2) open-source treatment also turns on access, use, modification and distribution rights and on parameters being public. A licence string is evidence toward the test, not the test
model.general_purposepipeline_tag and library_name hint at it, but GPAI is a legal classification with a compute threshold
model.parameters_publicly_availableestablished by inspecting the repository, not by the card. A card may link weights without asserting their availability
robustness.performance_thresholds_definedmetrics are given; thresholds are a decision about them
system.performs_biometric_categorisationpipeline_tag can indicate the task
system.sourcesthe datasets field can indicate provenance of training images
training_content.public_summary_availablethe Training Data section is arguably one, which is untested
training_content.summary_sufficiently_detailedsufficiency is judged against Article 53(1)(d), not the card
transparency.ai_use_discloseddisclosure is to the affected person, not in the card

What it does not reach

Grouped by the part of the input they belong to.

GroupFactsExamples
system30affects_individuals, annex_iii_1_a_biometric, annex_iii_category, …
deployer12affected_persons_informed, affects_natural_persons, controls_input_data, …
governance11accountable_person_named, assumptions_documented, bias_examined, …
provider10accessibility_requirements_met, ce_marking_affixed, conformity_assessment_completed, …
logging8automatic_recording_enabled, covers_system_lifetime, identifies_risk_situations, …
importer7documentation_retained_ten_years, identification_provided, storage_and_transport_conditions_adequate, …
distributor6corrective_action_taken, non_conformity_discovered, storage_and_transport_conditions_adequate, …
oversight6assigned_persons_competent, automation_bias_addressed, can_disregard_output, …
risk_management6lifecycle_monitoring_in_place, mitigation_measures.completeness, monitoring_system.completeness, …
ce_marking5affixed, digital_marking_accessible, notified_body_involved, …
declaration5annex_v_content_complete, drawn_up, machine_readable, …
registration5annex_viii_information_complete, exemption_assessment_registered, provider_registered, …
assessment4completed, harmonised_standards_applied, notified_body_involved, …
decision4article_9_condition, meaningful_human_involvement, significant, …
logs4retained, retention_months, role, …
redress4human_review_available, response_timeframe_days, route_communicated, …
robustness4failure_handling_documented, fallback_or_fail_safe_documented, feedback_loop_risk_addressed, …
safeguards4decision_contestable, human_intervention_available, information_provided, …
systemic_risk4cybersecurity_protection_adequate, model_evaluation_with_adversarial_testing, risks_assessed_and_mitigated, …
copyright2policy_in_place, respects_article_4_3_reservations
cybersecurity2adversarial_attacks_addressed, controls_in_place
downstream2annex_xii_information_provided, enables_downstream_compliance
model2commission_designated_systemic_risk, systemic_risk
special_category2processed_for_bias_correction, safeguards_in_place
authorisation1prior_authorisation_obtained
documentation1annex_xi_complete
explainability1decision_rationale_available
fairness1legal_rights_review_completed
notification1commission_notified
security1security_testing_completed

Method and limits

  • The classification is a judgement, not a measurement, which is why every field is listed with its reason rather than summarised. The partial list is where to disagree.
  • It assumes a complete card following the standard template, which is the best case. Cards that omit sections would map to fewer inputs; no representative sample of published cards has been measured here.
  • Applicability is not modelled. Regulation (EU) 2026/1744, in force 27 July 2026, moved Chapter III Sections 1 to 3 to 2 December 2027 for Annex III high-risk systems and 2 August 2028 for Annex I. Prohibitions and GPAI obligations were not deferred. Many inputs counted here therefore relate to duties that are modelled but not yet applicable.
  • The UK principles are non-statutory. They are addressed to regulators rather than imposed on firms, as the UK matrix states. UK GDPR Articles 22A to 22D are binding in their own right; the five cross-sector principles are assurance evidence, not a statutory test.
  • It counts distinct declared facts, not policies. Fields read by more than one policy are counted once.
  • Measured metrics and policy thresholds are excluded: neither is something a person declares.
  • --check fails if the classification names a field no policy reads, so this cannot silently drift from the library.