diff --git a/frontend/public/schemas/20251121/linkml/manifest.json b/frontend/public/schemas/20251121/linkml/manifest.json index 357509d45d..07d083db6f 100644 --- a/frontend/public/schemas/20251121/linkml/manifest.json +++ b/frontend/public/schemas/20251121/linkml/manifest.json @@ -1,5 +1,5 @@ { - "generated": "2026-01-17T20:10:50.954Z", + "generated": "2026-01-17T20:11:23.675Z", "schemaRoot": "/schemas/20251121/linkml", "totalFiles": 2968, "categoryCounts": { diff --git a/schemas/20251121/linkml/manifest.json b/schemas/20251121/linkml/manifest.json index 07d083db6f..0c003cad39 100644 --- a/schemas/20251121/linkml/manifest.json +++ b/schemas/20251121/linkml/manifest.json @@ -1,5 +1,5 @@ { - "generated": "2026-01-17T20:11:23.675Z", + "generated": "2026-01-17T20:45:52.691Z", "schemaRoot": "/schemas/20251121/linkml", "totalFiles": 2968, "categoryCounts": { diff --git a/schemas/20251121/linkml/modules/classes/ExhibitionCatalog.yaml b/schemas/20251121/linkml/modules/classes/ExhibitionCatalog.yaml index dcfb23152c..c601940fbd 100644 --- a/schemas/20251121/linkml/modules/classes/ExhibitionCatalog.yaml +++ b/schemas/20251121/linkml/modules/classes/ExhibitionCatalog.yaml @@ -19,7 +19,10 @@ imports: # REMOVED 2026-01-17: ../slots/publisher - migrated to has_or_had_publisher + Publisher (Rule 53/56) - ../slots/has_or_had_publisher - ./Publisher - - ../slots/publication_date + # - ../slots/publication_date # ARCHIVED 2026-01-17 - migrated per Rule 53/56 + - ../slots/is_or_was_published_at # was: publication_date - migrated per Rule 53/56 (2026-01-17) + - ./PublicationEvent # for is_or_was_published_at range + - ./TimeSpan # for PublicationEvent.temporal_extent - ../slots/isbn - ../slots/language - ../slots/price @@ -123,7 +126,7 @@ classes: - page - pdf_url - price - - publication_date + - is_or_was_published_at # was: publication_date - migrated per Rule 53/56 (2026-01-17) - publication_place - has_or_had_publisher # was: publisher - migrated per Rule 53/56 (2026-01-17) - specificity_annotation diff --git a/schemas/20251121/linkml/modules/classes/FindingAid.yaml b/schemas/20251121/linkml/modules/classes/FindingAid.yaml index 2fbf7e414b..a7c33f7b2c 100644 --- a/schemas/20251121/linkml/modules/classes/FindingAid.yaml +++ b/schemas/20251121/linkml/modules/classes/FindingAid.yaml @@ -56,7 +56,9 @@ imports: # REMOVED 2026-01-17: ../slots/publisher - migrated to has_or_had_publisher + Publisher (Rule 53/56) - ../slots/has_or_had_publisher - ./Publisher - - ../slots/publication_date + # - ../slots/publication_date # ARCHIVED 2026-01-17 - migrated per Rule 53/56 + - ../slots/is_or_was_published_at # was: publication_date - migrated per Rule 53/56 (2026-01-17) + - ./PublicationEvent # for is_or_was_published_at range - ../slots/isbn - ../slots/has_or_had_access_condition - ../slots/is_or_was_access_restricted @@ -270,7 +272,7 @@ classes: - note - has_or_had_page_section - provenance - - publication_date + - is_or_was_published_at # was: publication_date - migrated per Rule 53/56 (2026-01-17) - has_or_had_publisher # was: publisher - migrated per Rule 53/56 (2026-01-17) - has_or_had_related_archive - has_or_had_related_guide diff --git a/schemas/20251121/linkml/modules/classes/TaxDeductibility.yaml b/schemas/20251121/linkml/modules/classes/TaxDeductibility.yaml index bd7f6e84c7..52200ad6b9 100644 --- a/schemas/20251121/linkml/modules/classes/TaxDeductibility.yaml +++ b/schemas/20251121/linkml/modules/classes/TaxDeductibility.yaml @@ -11,14 +11,15 @@ imports: - ../slots/has_or_had_type - ../slots/has_or_had_label - ../slots/has_or_had_description - # Status slot - defined locally as it's specific to this class - # Conditions slot - defined locally as it's specific to this class - # Minimum donation slot - defined locally as it's specific to this class + - ../slots/deductibility_status # Centralized per Rule 48 (2026-01-17) + - ../slots/deductibility_conditions # Centralized per Rule 48 (2026-01-17) + - ../slots/minimum_donation # Centralized per Rule 48 (2026-01-17) - ../slots/jurisdiction - ../slots/deductible_percentage - ../slots/effective_from - ../slots/effective_until - ./Jurisdiction + - ../enums/DeductibilityStatusEnum # Enum moved to separate file per Rule 48 (2026-01-17) default_prefix: hc classes: @@ -46,11 +47,11 @@ classes: ``` TaxDeductibility │ - ├── status ──→ DeductibilityStatusEnum (FULLY_DEDUCTIBLE, etc.) + ├── deductibility_status ──→ DeductibilityStatusEnum (FULLY_DEDUCTIBLE, etc.) │ ├── jurisdiction ──→ Jurisdiction class │ - ├── conditions ──→ "Donation must exceed €25" + ├── deductibility_conditions ──→ "Donation must exceed €25" │ └── effective_from / effective_until ──→ dates ``` @@ -77,15 +78,15 @@ classes: close_mappings: - prov:Entity slots: - - status + - deductibility_status - jurisdiction - - conditions + - deductibility_conditions - deductible_percentage - minimum_donation - effective_from - effective_until slot_usage: - status: + deductibility_status: range: DeductibilityStatusEnum required: true description: The deductibility classification. @@ -104,7 +105,7 @@ classes: jurisdiction_code: UK jurisdiction_name: United Kingdom description: United Kingdom - conditions: + deductibility_conditions: range: string description: | Conditions that must be met for tax deductibility. @@ -136,35 +137,35 @@ classes: - https://www.gov.uk/donating-to-charity/gift-aid examples: - value: - status: FULLY_DEDUCTIBLE + deductibility_status: FULLY_DEDUCTIBLE jurisdiction: jurisdiction_code: NL jurisdiction_name: Netherlands - conditions: Donation must exceed €25 minimum + deductibility_conditions: Donation must exceed €25 minimum deductible_percentage: 100 description: Dutch ANBI fully deductible donation - value: - status: CONDITIONALLY_DEDUCTIBLE + deductibility_status: CONDITIONALLY_DEDUCTIBLE jurisdiction: jurisdiction_code: UK jurisdiction_name: United Kingdom - conditions: Donor must complete Gift Aid declaration + deductibility_conditions: Donor must complete Gift Aid declaration deductible_percentage: 100 description: UK Gift Aid conditional deductibility - value: - status: PARTIALLY_DEDUCTIBLE + deductibility_status: PARTIALLY_DEDUCTIBLE jurisdiction: jurisdiction_code: US jurisdiction_name: United States - conditions: Fair market value of benefits received is subtracted + deductibility_conditions: Fair market value of benefits received is subtracted deductible_percentage: 70 description: US gala ticket with partial deductibility - value: - status: NOT_DEDUCTIBLE + deductibility_status: NOT_DEDUCTIBLE jurisdiction: jurisdiction_code: NL jurisdiction_name: Netherlands - conditions: Membership benefits exceed donation value + deductibility_conditions: Membership benefits exceed donation value description: Museum membership not tax-deductible annotations: specificity_score: 0.50 @@ -173,41 +174,3 @@ classes: donation-focused queries. replaces_slot: tax_deductible migration_date: "2026-01-16" - -# Define local slots specific to TaxDeductibility -slots: - status: - slot_uri: schema:itemCondition - range: DeductibilityStatusEnum - description: | - The deductibility classification status. - - conditions: - slot_uri: schema:eligibleRegion - range: string - description: | - Conditions or requirements for tax deductibility. - - minimum_donation: - slot_uri: schema:minPrice - range: decimal - description: | - Minimum donation amount for tax deductibility to apply. - -# Define the deductibility status enum -enums: - DeductibilityStatusEnum: - description: Classification of tax deductibility status. - permissible_values: - FULLY_DEDUCTIBLE: - description: 100% of donation is tax-deductible. - PARTIALLY_DEDUCTIBLE: - description: Only a portion of the donation is tax-deductible. - NOT_DEDUCTIBLE: - description: Donation provides no tax benefit to donor. - CONDITIONALLY_DEDUCTIBLE: - description: Tax-deductible only if specific conditions are met. - JURISDICTION_DEPENDENT: - description: Deductibility varies based on donor's tax jurisdiction. - UNKNOWN: - description: Deductibility status has not been determined. diff --git a/schemas/20251121/linkml/modules/enums/DeductibilityStatusEnum.yaml b/schemas/20251121/linkml/modules/enums/DeductibilityStatusEnum.yaml new file mode 100644 index 0000000000..c872ca30d2 --- /dev/null +++ b/schemas/20251121/linkml/modules/enums/DeductibilityStatusEnum.yaml @@ -0,0 +1,34 @@ +# DeductibilityStatusEnum - Tax deductibility status classifications +# +# Created: 2026-01-17 +# Purpose: Centralized enum for TaxDeductibility.deductibility_status per Rule 48 + +id: https://nde.nl/ontology/hc/enum/DeductibilityStatusEnum +name: DeductibilityStatusEnum +title: Deductibility Status Enumeration + +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + +imports: + - linkml:types + +default_prefix: hc + +enums: + DeductibilityStatusEnum: + description: Classification of tax deductibility status. + permissible_values: + FULLY_DEDUCTIBLE: + description: 100% of donation is tax-deductible. + PARTIALLY_DEDUCTIBLE: + description: Only a portion of the donation is tax-deductible. + NOT_DEDUCTIBLE: + description: Donation provides no tax benefit to donor. + CONDITIONALLY_DEDUCTIBLE: + description: Tax-deductible only if specific conditions are met. + JURISDICTION_DEPENDENT: + description: Deductibility varies based on donor's tax jurisdiction. + UNKNOWN: + description: Deductibility status has not been determined. diff --git a/schemas/20251121/linkml/modules/slots/deductibility_conditions.yaml b/schemas/20251121/linkml/modules/slots/deductibility_conditions.yaml new file mode 100644 index 0000000000..0ef453496f --- /dev/null +++ b/schemas/20251121/linkml/modules/slots/deductibility_conditions.yaml @@ -0,0 +1,26 @@ +# deductibility_conditions - Conditions for tax deductibility +# +# Created: 2026-01-17 +# Purpose: Replaces inline 'conditions' slot from TaxDeductibility class per Rule 48 + +id: https://nde.nl/ontology/hc/slot/deductibility_conditions +name: deductibility_conditions +title: Deductibility Conditions Slot + +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + schema: http://schema.org/ + +imports: + - linkml:types + +default_prefix: hc + +slots: + deductibility_conditions: + slot_uri: schema:eligibleRegion + range: string + description: | + Conditions or requirements for tax deductibility to apply. + Examples: "Donation must exceed €25 minimum", "Must complete Gift Aid declaration" diff --git a/schemas/20251121/linkml/modules/slots/deductibility_status.yaml b/schemas/20251121/linkml/modules/slots/deductibility_status.yaml new file mode 100644 index 0000000000..1622954770 --- /dev/null +++ b/schemas/20251121/linkml/modules/slots/deductibility_status.yaml @@ -0,0 +1,27 @@ +# deductibility_status - Tax deductibility classification status +# +# Created: 2026-01-17 +# Purpose: Replaces inline 'status' slot from TaxDeductibility class per Rule 48 + +id: https://nde.nl/ontology/hc/slot/deductibility_status +name: deductibility_status +title: Deductibility Status Slot + +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + schema: http://schema.org/ + +imports: + - linkml:types + +default_prefix: hc + +slots: + deductibility_status: + slot_uri: schema:itemCondition + range: string # Will be narrowed to DeductibilityStatusEnum in class + description: | + The tax deductibility classification status. + Values: FULLY_DEDUCTIBLE, PARTIALLY_DEDUCTIBLE, NOT_DEDUCTIBLE, + CONDITIONALLY_DEDUCTIBLE, JURISDICTION_DEPENDENT, UNKNOWN diff --git a/schemas/20251121/linkml/modules/slots/minimum_donation.yaml b/schemas/20251121/linkml/modules/slots/minimum_donation.yaml new file mode 100644 index 0000000000..35f91e2617 --- /dev/null +++ b/schemas/20251121/linkml/modules/slots/minimum_donation.yaml @@ -0,0 +1,26 @@ +# minimum_donation - Minimum donation amount for tax deductibility +# +# Created: 2026-01-17 +# Purpose: Replaces inline 'minimum_donation' slot from TaxDeductibility class per Rule 48 + +id: https://nde.nl/ontology/hc/slot/minimum_donation +name: minimum_donation +title: Minimum Donation Slot + +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + schema: http://schema.org/ + +imports: + - linkml:types + +default_prefix: hc + +slots: + minimum_donation: + slot_uri: schema:minPrice + range: decimal + description: | + Minimum donation amount for tax deductibility to apply. + Currency assumed to be the jurisdiction's local currency. diff --git a/schemas/20251121/linkml/modules/slots/slot_fixes.yaml b/schemas/20251121/linkml/modules/slots/slot_fixes.yaml index 6b4d18e7ad..89e875dd02 100644 --- a/schemas/20251121/linkml/modules/slots/slot_fixes.yaml +++ b/schemas/20251121/linkml/modules/slots/slot_fixes.yaml @@ -8704,4 +8704,173 @@ fixes: This is a display/serialization format derived from chapter_start_seconds. ISO 8601 duration strings are the standard for time representation. Creating TimeInterval+Timestamp classes would be OVER-ENGINEERING. - Retaining with existing structure. \ No newline at end of file + Retaining with existing structure. +- original_slot_id: https://nde.nl/ontology/hc/slot/chapter_thumbnail_timestamp + revision: + - label: has_or_had_thumbnail + type: slot + - label: Thumbnail + type: class + - label: derives_or_derived_from + type: slot + - label: Video + type: class + - label: has_or_had_time_interval + type: slot + - label: TimeInterval + type: class +- original_slot_id: https://nde.nl/ontology/hc/slot/chapter_thumbnail_url + revision: + - label: has_or_had_thumbnail + type: slot + - label: Thumbnail + type: class + - label: has_or_had_url + type: slot + - label: URL + type: class +- original_slot_id: https://nde.nl/ontology/hc/slot/chapter_title + revision: + - label: has_or_had_label + type: slot + - label: Label + type: class +- original_slot_id: https://nde.nl/ontology/hc/slot/chapters_generated_at + revision: + - label: is_or_was_generated + type: slot + - label: GenerationEvent + type: class + - label: has_or_had_provenance + type: slot + link_branch: 1 + - label: Provenance + type: class + link_branch: 1 + - label: temporal_extent + type: slot + link_branch: 2 + - label: TimeSpan + type: class + link_branch: 2 +- original_slot_id: https://nde.nl/ontology/hc/slot/chapters_source + revision: + - label: has_or_had_source + type: slot + - label: Source + type: class +- orignal_slot_id: https://nde.nl/ontology/hc/slot/character_count + revision: + - label: has_or_had_quantity + type: slot + - label: Quantity + type: class + - label: has_or_had_unit + type: slot + - label: Unit + type: class + value: character +- orignal_slot_id: https://nde.nl/ontology/hc/slot/circumstances_of_death + revision: + - label: is_deceased + type: slot + - label: DeceasedStatus + type: class + - label: is_or_was_caused_by + type: slot + - label: CauseOfDeath + type: class +- orignal_slot_id: https://nde.nl/ontology/hc/slot/cites_appendix + revision: + - label: is_or_was_listed_in + type: slot + - label: CITESAppendix + type: class +- orignal_slot_id: https://nde.nl/ontology/hc/slot/city + revision: + - label: is_or_was_located_in + type: slot + - label: City + type: class +- orignal_slot_id: https://nde.nl/ontology/hc/slot/claim + revision: + - label: warrants_or_warranted + type: slot + - label: Claim + type: class +- orignal_slot_id: https://nde.nl/ontology/hc/slot/claim_extraction_method + revision: + - label: is_or_was_extracted_using + type: slot + - label: ExtractionMethod + type: class +- original_slot_id: https://nde.nl/ontology/hc/slot/claim_id + revision: + - label: has_or_had_identifier + type: slot + - label: Identifier + type: class +- original_slot_id: https://nde.nl/ontology/hc/slot/claim_note + revision: + - label: has_or_had_note + type: slot + - label: Note + type: class +- orignal_slot_id: https://nde.nl/ontology/hc/slot/claim_source_url + revision: + - label: has_or_had_url + type: slot + - label: URL + type: class +- original_slot_id: https://nde.nl/ontology/hc/slot/claim_type + revision: + - label: has_or_had_type + type: slot + - label: ClaimType + type: class + - label: includes_or_included + type: slot + - label: ClaimTypes + type: class +- orignal_slot_id: https://nde.nl/ontology/hc/slot/claim_value + revision: + - label: has_or_had_content + type: slot + - label: Content + type: class +- original_slot_id: https://nde.nl/ontology/hc/slot/claims_count + revision: + - label: has_or_had_provenance + type: slot + - label: Provenance + type: class + - label: based_on_claim + type: slot + - label: Claim + type: class + - label: has_or_had_quantity + type: slot + - label: Quantity + type: class +- orignal_slot_id: https://nde.nl/ontology/hc/slot/classification_status + revision: + - label: has_or_had_status + type: slot + - label: ClassificationStatus + type: class + - label: has_or_had_type + type: slot + - label: ClassificationStatusType + type: class + - label: includes_or_included + type: slot + - label: ClassificationStatusTypes + type: class +- orignal_slot_id: https://nde.nl/ontology/hc/slot/classifies_place + revision: + - label: classifies_or_classified + type: slot + - label: CustodianPlace + type: class + +# https://nde.nl/ontology/hc/slot/classroom_count> \ No newline at end of file