Skip to content

Commit 5a7a5b6

Browse files
committed
Centralize schema license metadata
1 parent 7c74418 commit 5a7a5b6

26 files changed

Lines changed: 2199 additions & 4380 deletions

‎LICENSE-DATA.md‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ The authoritative FlyBase licensing statement is maintained on the
2323
manifest accompanying a release controls the included-source and attribution
2424
details for that release.
2525

26+
Each graph release points to this complete notice once through
27+
`DatasetRelease.license_notice_uri`. License metadata is not copied onto
28+
biological entities, assertions, relationships, predicates, or properties.
29+
2630
## No stable dataset yet
2731

2832
This repository is pre-release. The presence of a schema draft, example, or

‎README.md‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,11 @@ configuration must never be committed.
4444

4545
## Licensing and citation
4646

47-
Repository software is licensed under the [MIT License](LICENSE). FlyBase-
48-
produced data and annotations are licensed under
49-
[CC BY 4.0](LICENSE-DATA.md). A release manifest will identify source and
50-
license information for each included data family; third-party material is not
51-
automatically covered by the FlyBase data license.
47+
See [LICENSE](LICENSE) for repository software and
48+
[LICENSE-DATA.md](LICENSE-DATA.md) for data and release-component notices.
49+
Each published graph records that notice once through
50+
`DatasetRelease.license_notice_uri`; license metadata is not repeated on
51+
biological records or schema members.
5252

5353
When using a release, cite both FlyBase and the exact graph release identifier.
5454
See [CITATION.cff](CITATION.cff) and FlyBase's

‎docs/data-dictionary.md‎

Lines changed: 8 additions & 102 deletions
Large diffs are not rendered by default.

‎docs/rc1-to-rc2.md‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ not a stable data release.
3636
`go_source_bundle_approved`. The active registry therefore contains exactly
3737
59 of 69 declared contracts for H1. Negated, relationless, incomplete, and
3838
text-derived annotations cannot support a positive traversal edge.
39+
- Release licensing is centralized: `DatasetRelease.license_notice_uri` is the
40+
sole graph-level carrier and points to the complete release notice.
41+
Per-member license fields and the redundant `LicenseDeclaration` type are
42+
removed; `LICENSE-DATA.md` remains the repository notice.
3943

4044
## What did not change
4145

‎docs/releases.md‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33
No stable FlyBase Knowledge Graph release has been published yet.
44

55
Every future release page will identify the FlyBase release, schema version,
6-
dataset revision, formats, counts, checksums, source/license inventory, known
7-
exclusions, compatibility, and migration notes.
6+
dataset revision, formats, counts, checksums, the release-level license notice,
7+
source inclusion inventory, known exclusions, compatibility, and migration
8+
notes.

‎docs/schema-browser.md‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,16 @@ It does not connect to production Neo4j or expose FlyBase instance data.
1111
2. Narrow the view by biological domain or member kind.
1212
3. Select a type or relationship in the graph, matching-results list, or table.
1313
4. Read its definition, identifier rule, source basis, evidence/provenance role,
14-
cardinality, license status, disposition, and known limitations. Direct
14+
cardinality, disposition, and known limitations. Direct
1515
traversal relationships also show their Neo4j type, predicate contract,
1616
exact source predicate identities, direction transform, external-mapping
1717
classification, and fail-closed exclusions.
1818
5. Copy the resulting URL to share a direct link to the selected member.
1919

20+
Licensing is deliberately not repeated on every browser member. The
21+
`DatasetRelease` type defines the single `license_notice_uri` for a published
22+
graph release; the repository notice is `LICENSE-DATA.md`.
23+
2024
Use **Show full graph** to leave a focused neighborhood and **Reset filters** to
2125
restore the complete candidate. Blue solid arrows are generated biological
2226
traversal projections. Gray dashed arrows are structural assertion paths. The

‎docs/schema-decision-log.md‎

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,16 @@
3232
- A future versioned curator-approved mapping assertion may map raw labels.
3333
- No lexical or model-generated mapping is accepted as evidence.
3434

35+
## D-004 — Where is release licensing represented?
36+
37+
- Status: **resolved in rc2**
38+
- Evidence: License and attribution metadata describe the published release and its component notices; repeating them on every schema type, property, predicate, relationship, and source record adds noise without changing the biological contract.
39+
- Impact: Consumers need one authoritative notice location without mistaking license metadata for biological data.
40+
- Recommendation: Store exactly one license_notice_uri on DatasetRelease, keep the complete repository notice in LICENSE-DATA.md, and do not materialize per-member LicenseDeclaration records or license fields.
41+
- Alternatives:
42+
- Repeat license metadata on every member (rejected as redundant).
43+
- Keep a source-to-license graph (deferred unless a future release has a demonstrated query requirement).
44+
3545
## H1-001 — Which canonical GO annotation source should public v1 use?
3646

3747
- Status: **H1 decision required**
@@ -147,7 +157,7 @@
147157
| `IsoformDomainResidueInterval` | type | No bounded current-polypeptide domain/residue coordinate source rows were found. | No domain/residue claims. | A new approved coordinate source is audited. |
148158
| `OMIMFields` | property | Redistribution basis was not established. | All OMIM IDs, names, and content are absent. | Explicit terms are documented and approved. |
149159
| `PhysicalInteraction` | type | Physical-interaction participant/experiment grain was not integrated by the bounded WP2 reports. | Physical interactions are absent; raw allele genetic-interaction statements remain. | A bounded source audit covers interaction, participant, experiment, and publication rows. |
150-
| `PublicationPropertyAssertion` | type | Chado pubprop types have not been allowlisted field by field. | Publication properties beyond identifier/type subset are absent. | Property-type source/license inventory is complete. |
160+
| `PublicationPropertyAssertion` | type | Chado pubprop types have not been allowlisted field by field. | Publication properties beyond identifier/type subset are absent. | Property-type source and redistribution inventory is complete. |
151161
| `PublicationRelationshipAssertion` | type | Relationship semantics and publication-field licensing need a bounded source audit. | PUBLISHED_IN is not public in rc2. | Source predicate/direction and field terms are approved. |
152162
| `PublicationText` | property | Title/author origin is pending and abstract/personal communication/comments lack an approved blanket redistribution basis. | Publication records are identifier-only. | Field-origin and redistribution classifications are complete. |
153163
| `ReportScopedModelModifierRescue` | type | Approved source inventory proves this structured grain unavailable for this build. | No report narrative or adjacency can create these claims. | A new approved structured source is audited. |
Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# FlyBase source documentation mappings
22

33
The generated source-to-schema inventory is
4-
`../../schema/generated/source-license-matrix.md`. Every public member in the
4+
`../../schema/generated/source-inclusion-matrix.md`. Every public member in the
55
canonical schema names its exact source product and fields, evidence role,
6-
provenance behavior, null behavior, and redistribution license. Unresolved or
7-
unlicensed fields are explicit exclusions rather than inferred mappings.
6+
provenance behavior, and null behavior. Sources with unresolved redistribution
7+
status remain explicit exclusions rather than inferred mappings. The release's
8+
single license notice pointer is `DatasetRelease.license_notice_uri`.

‎mappings/interoperability/spike-decisions.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,5 @@ contract.
5151
A later release may promote one or more profiles only after all public members
5252
are covered, exact and lossy mappings are mechanically distinguishable,
5353
canonical-to-profile-to-canonical round trips preserve meaning and nulls, and
54-
the profile passes the same source/license and negative-boundary validation as
54+
the profile passes the same source inclusion and negative-boundary validation as
5555
the native schema.

‎schema/README.md‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,11 @@ The generator rejects duplicate members, invalid relationship endpoints,
1515
unclassified current production members, unsafe Neo4j relationship names,
1616
predicate/endpoint collisions, incomplete assertion or projection registries,
1717
identity-vector drift, support-table drift, public fields with excluded sources
18-
or licenses, and mismatches between canonical membership and browser JSON. It
18+
or unresolved redistribution status, and mismatches between canonical
19+
membership and browser JSON. It
1920
expands the 69 reviewed predicate contracts into endpoint-specific traversal
2021
relationships and produces the data dictionary, decision log, diagrams,
21-
projection registry, identity contracts, change table, source/license matrix,
22+
projection registry, identity contracts, change table, source inclusion matrix,
2223
negative fixtures, JSON Schema, schema summary, Biolink crosswalk, and browser
2324
data under `generated/` and `../docs/`.
2425

0 commit comments

Comments
 (0)