ATTRIBUTION.md
Rama main · réplica de lectura del repositorio original.
# Attribution and third-party licenses
This file records where every non-original piece of data in this repository
comes from, under what licence, and what the licence requires of anyone who
redistributes it. It is part of the licence conditions, not documentation.
Two rules govern the whole repository:
1. **Nothing enters `knowledge/` without a source.** A file with no
`_meta.source` is a defect.
2. **Nothing enters the repository whose licence forbids commercial use,
modification, or redistribution.** The code is Apache-2.0 and the data is
CC BY 4.0; both permit commercial use, so anything more restrictive is
incompatible by construction and is fetched at run time instead.
---
## Data included in this repository
### LongevityMap — Human Ageing Genomic Resources (HAGR)
* File: `src/scholion/knowledge/longevitymap.json` (2 859 variants, 162 genes)
* Source: https://genomics.senescence.info/longevity/
* Licence: **Creative Commons Attribution 3.0 Unported** — free for all
purposes including commercial, citation required
(https://genomics.senescence.info/legal.html)
* Required citation — HAGR asks for both the resource and the specific database.
Check the site for the currently preferred references before publication:
* Tacutu R, Thornton D, Johnson E, et al. *Human Ageing Genomic Resources:
new and updated databases.* Nucleic Acids Research, 2018.
* Budovsky A, Craig T, Wang J, et al. *LongevityMap: a database of human
genetic variants associated with longevity.* Trends in Genetics, 2013.
* Note: CC BY **3.0** does not expressly address the European sui generis
database right, unlike CC BY 4.0. For EU users this is a grey area inherited
from the upstream source, not something this project can resolve.
### Body silhouettes — Servier Medical Art
* Files: `src/scholion/web/body-male.webp`, `src/scholion/web/body-female.webp`
* Source: https://smart.servier.com/ ("Male silhouette", "Female silhouette")
* Licence: **Creative Commons Attribution 4.0** — use, modification and
commercial use permitted, attribution required
* What was changed: only the alpha channel is kept, so what ships is the outline
of the body and nothing else; the colour is the application's own. The credit
is printed under the figure in the interface, not only here.
### Gene–disease validity — GenCC
* File: `src/scholion/knowledge/gencc_gene_disease.json`
* Source: The Gene Curation Coalition, submissions export — https://thegencc.org
(the export's own date and the download date are recorded in the file's `_meta`)
* Licence: **CC0 1.0 Universal** — no restriction; GenCC asks for attribution to
GenCC and to the contributing sources (ClinGen, PanelApp, G2P, Orphanet and
others, each named per row as `submitter`) whenever possible. Citation form
the project requests: «The Gene Curation Coalition. https://thegencc.org
[date accessed]».
* What was changed: filtered to the genes whose diseases belong to a radar
system (`knowledge/system_disease_terms.json`), mode of inheritance
normalised to a short code beside GenCC's own wording, every submitter's row
kept as it was asserted — nothing averaged, nothing dropped by strength.
### Pharmacogenomic gene–drug reference
* File: `src/scholion/knowledge/cpic_drug_gene.json`
* Written by hand from the published principles of CPIC guidelines. **No CPIC
table is copied.** CPIC content is dedicated to the public domain under CC0
(https://www.clinpgx.org/page/dataUsagePolicy).
* The CPIC® name is a registered mark and the CPIC logo belongs to NIH; neither
is used in this project's branding or promotion.
* PharmGKB content is licensed CC BY-SA 4.0, whose ShareAlike term would
propagate to any derivative file. **No PharmGKB table is copied**, and no
file here is derived from one.
### LOINC — Regenstrief Institute
* File: `src/scholion/knowledge/lab_test_meta.json` (34 verified codes)
* Source: https://loinc.org — free of charge under the LOINC license
* Licence condition: redistribution requires the verbatim notice reproduced in
`NOTICE`. It is not optional and not paraphrasable; section 10(a) of the
licence fixes its wording.
* Each code is stored next to the test it identifies and its LOINC long common
name, as the licence requires. Codes that could not be verified against the
LOINC search service are marked `loinc_status` and left empty — an unverified
code is worse than none, because it silently maps a test to the wrong concept.
### PGS Catalog model registry
* File: `src/scholion/knowledge/prs_models.json`
* Contains **only public PGS identifiers** (e.g. `PGS000123`) and this project's
own notes about why a model was pinned. **No scoring weights are included.**
* This is a deliberate constraint: the PGS Catalog sets no single licence, each
scoring file carries its own, and some are CC BY-NC-ND — incompatible with
this repository. Weights are downloaded by the user from
https://www.pgscatalog.org/ under the terms of each individual score.
### Independently checked PGS reference aggregates
* File: `src/scholion/knowledge/prs_references.json`.
* Project-computed means and standard deviations from the fixed IGSR / 1000
Genomes Phase 3 public reference, with input hashes and cohort provenance.
* Reference publication: the 1000 Genomes Project Consortium (2015),
DOI:10.1038/nature15393, PMID:26432245. PGS000646 source: Fritsche et al.
(2020), DOI:10.1016/j.ajhg.2020.08.025, PMID:32991828.
* No scoring weights, individual genotypes or individual reference scores are
redistributed. Model files are downloaded under their own source terms.
* These statistics establish an approximate score scale, not clinical accuracy
or an absolute-risk model. Refresh requires a separately checked calculation.
### Everything else in `knowledge/`
`acmg_sf.json`, `clinical_thresholds.json`, `dose_evidence.json`,
`drug_interactions.json`, `drug_lab_monitoring.json`, `lab_markers.json`,
`lab_test_meta.json`, `loci.json`, `longevity_directions.json`,
`med_classes.json`, `penetrance.json`, `prs_traits.json`, `test_rules.json`,
`experiment_templates.json`, `wearable_metrics.json` are original compilations
written for this project. Individual entries cite primary literature, clinical
guidelines and genome coordinates verified against Ensembl; citing a fact is
not redistributing a database. Where an entry reflects a specific guideline,
the guideline is named in the entry itself.
The ACMG Secondary Findings gene list reflects the recommendations of the
American College of Medical Genetics and Genomics (SF v3.3); the list of gene
symbols is factual, the reporting rules are implemented in this project's own
code.
---
## Resources used at run time and NOT redistributed here
The user obtains each of these directly from its provider, under that
provider's terms. This project only calls them.
| Resource | Provider | Terms |
|---|---|---|
| ClinVar | NCBI / NLM | Redistribution permitted; attribution requested. NCBI asks that ClinVar data be accompanied by the note that it is *not intended for direct diagnostic use or medical decision-making without review by a genetics professional* — this project reproduces that position in DISCLAIMER.md. https://www.ncbi.nlm.nih.gov/clinvar/docs/maintenance_use/ |
| dbSNP | NCBI / NLM | rsIDs used as identifiers. NCBI policies apply. |
| Ensembl REST (incl. 1000 Genomes and gnomAD allele frequencies) | EMBL-EBI | Queried at run time for coordinates and population frequencies. EMBL-EBI terms of use; IGSR notes that rights vary between constituent datasets. |
| PGS Catalog scoring files | EMBL-EBI / PGS Catalog | Licence declared per score inside each file. |
| RxNorm and RxClass, including ATC codes | NLM | Queried at run time. **ATC codes are never stored in this repository:** the WHO Collaborating Centre prohibits copying and distribution for commercial purposes, which is incompatible with a permissively licensed repository. |
| SNOMED CT | SNOMED International | **Not used.** Requires an Affiliate licence; incompatible with open redistribution. |
| LOINC | Regenstrief Institute | **Used and redistributed** — see the dedicated section below. |
## Code bundled in this repository
Third-party code that ships inside the package, as opposed to tools the user
installs. It travels to every recipient, so its licence travels with it.
| What | Where | Author | Licence |
|---|---|---|---|
| Crossread 1.1 | `src/scholion/web/crossread.css` | the owner's reusable design system, vendored with its version and digest; its spacing, control-height and type-step scales follow Consta (consta-design-system/uikit), no code taken | Apache-2.0, as the rest of the code |
Vendored rather than loaded from a CDN deliberately: the web interface binds to
`127.0.0.1` and the product's claim is that using it sends nothing anywhere. A
stylesheet fetched from someone else's server on every page load would make that
claim false — silently, and in the one component whose whole promise is that it
is local.
## External tools invoked, not bundled
Installed by the user; this project executes them and reads their output.
| Tool | Licence |
|---|---|
| PharmCAT | Mozilla Public License 2.0 |
| PyPGx | MIT |
| T1K | MIT |
| bcftools, samtools (HTSlib) | MIT/Expat |
| Ensembl VEP | Apache-2.0 |
| BWA | GPL-3.0 (invoked as a separate process; no code is linked or copied) |
| telomerecat | as published by its authors |
| DeepVariant | BSD-3-Clause |
---
## Reporting a licensing problem
If you believe something here is misattributed or should not be redistributed,
open an issue titled `licensing:` or write to the maintainer. Data whose status
is unclear is removed first and discussed second.
## Synthea — the FHIR test bundle
* File: `tests/fixtures/fhir/synthea_patient_clinical.json`
* Source: **synthetichealth/synthea** — the bundle published in that repository as
the flexporter sample patient
(https://github.com/synthetichealth/synthea)
* Licence: **Apache-2.0** — the same licence as this project's code, so the file
travels with the tests without any further condition beyond this notice.
* Modification: the administrative resources (Claim, ExplanationOfBenefit,
Encounter, DocumentReference) were removed and the clinical core kept, so that
the fixture is about the thing under test and not about billing.
* **The data are synthetic.** This is a generated patient, not a person. That is
the reason this file may live in the repository at all, unlike the PGP corpus:
no one's consent is involved, because no one is involved. It is used to test
the FHIR import against a bundle that a real system produced, rather than
against one written by the same person who wrote the parser — which is the
usual way a parser comes to pass its own tests and fail on the world.
## Genomi — input format detection (vendored)
`src/scholion/vendor/genomi/` carries `detection.py`, `text_io.py` and two
helpers extracted from `alignment.py`, together with their own test suite, taken
from **Genomi** (https://github.com/exon-research/genomi) at commit `07a255e`.
Copyright Exon Research, licensed under the **Apache License 2.0** — the same
licence as this project, so the two combine directly.
They decide what a genomic file is by its CONTENT rather than by its name: BAM,
CRAM, VCF, gVCF told apart from VCF, paired FASTQ, and the consumer array
exports of 23andMe, AncestryDNA, MyHeritage, FamilyTreeDNA and Living DNA;
gzip/bzip2/xz/zip/tar wrappers are peeled by magic bytes.
The files carry attribution headers, every modification is marked in place, and
`src/scholion/vendor/genomi/UPSTREAM.md` records what was taken, what changed and
how to update. `python3 src/tools/check_vendor.py` compares our copy with
upstream and reports drift in either direction.
## NCBI Gene reference biology
`panel_reference_context.json` and `gencc_reference_context.json` include gene-function
reference descriptions from NCBI Gene / RefSeq summaries retrieved on
2026-10-06, with Russian functional paraphrases and the original English source
summaries or separately sourced corrections. HGNC identifiers bind the GenCC
genes to their NCBI entries. The complete HGNC set is available at
https://www.genenames.org/download/. Each gene carries its
NCBI Gene URL; retained English summaries carry their source attribution.
The NLM content policy is at
https://www.ncbi.nlm.nih.gov/home/about/policies/. Variant context is separately
paraphrased from the sources held by the curated panels; it does not derive
allele direction or personal effects from a gene annotation.
Alliance of Genome Resources summaries retained through NCBI carry their original
attribution. Alliance data are available under CC0 or CC BY 4.0; see
https://www.alliancegenome.org/terms-of-use and
https://github.com/alliance-genome/agr_open_data/blob/main/DATA_DOCUMENTATION.md.
Descriptions credited to an individual contributor are independently paraphrased.
GenCC relationships retain the original contributing organisations and statuses;
their Russian labels do not constitute a new validity assessment.
### Chart.js and its bundled colour helper
* File: `src/scholion/web/chart.min.js` — Chart.js 4.4.1 and @kurkle/color 0.3.2.
* Sources: https://www.chartjs.org/ and https://github.com/kurkle/color.
* Licence: **MIT** for both. The upstream copyright and licence banners are
retained verbatim in the bundled file.
## Gene function from UniProtKB
UniProt Consortium, UniProtKB / Swiss-Prot, https://www.uniprot.org/.
Copyrightable parts of the database are licensed under
[CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
Selected human gene-product annotations were extracted, adapted and translated.
Each record in `src/scholion/knowledge/gene_curation.json` carries its exact
upstream reference. Bilingual adaptations do not change any variant-level
decision or clinical eligibility. See [UniProt's terms](https://www.uniprot.org/help/license).