Refactor expense slots: remove program_expense slot, migrate administrative_expenses, and archive related slots
- Deleted the program_expense slot from the schema. - Updated slot_fixes.yaml to reflect the migration of administrative_expenses, marking it as fully migrated and archiving related bespoke slots. - Created archived YAML files for administrative_expenses, fundraising_expense, has_or_had_administrative_expense, innovation_expense, and program_expense, documenting their structure and descriptions. - All expense types now utilize the Expenses class with ExpenseTypeEnum classification for better organization and clarity.
This commit is contained in:
parent
1133749de8
commit
c807487a51
10 changed files with 2287 additions and 2113 deletions
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"generated": "2026-01-14T08:06:36.818Z",
|
||||
"generated": "2026-01-14T08:07:11.151Z",
|
||||
"schemaRoot": "/schemas/20251121/linkml",
|
||||
"totalFiles": 2923,
|
||||
"categoryCounts": {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"generated": "2026-01-14T08:07:11.151Z",
|
||||
"generated": "2026-01-14T08:15:17.717Z",
|
||||
"schemaRoot": "/schemas/20251121/linkml",
|
||||
"totalFiles": 2923,
|
||||
"categoryCounts": {
|
||||
|
|
|
|||
173
schemas/20251121/linkml/modules/classes/FunctionType.yaml
Normal file
173
schemas/20251121/linkml/modules/classes/FunctionType.yaml
Normal file
|
|
@ -0,0 +1,173 @@
|
|||
id: https://nde.nl/ontology/hc/class/FunctionType
|
||||
name: function_type_class
|
||||
title: FunctionType Class
|
||||
description: >-
|
||||
Abstract base class for organizational functions performed by heritage custodians.
|
||||
Provides structured function categorization for administrative offices, departments,
|
||||
and organizational units.
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
org: http://www.w3.org/ns/org#
|
||||
dcterms: http://purl.org/dc/terms/
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/id
|
||||
- ../slots/description
|
||||
- ../slots/valid_from
|
||||
- ../slots/valid_to
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
enums:
|
||||
FunctionTypeEnum:
|
||||
description: >-
|
||||
Classification of organizational functions for heritage custodians.
|
||||
Based on W3C ORG org:purpose patterns and nonprofit organizational structure.
|
||||
permissible_values:
|
||||
ADMINISTRATIVE:
|
||||
description: >-
|
||||
Administrative/management functions: finance, HR, legal, executive management,
|
||||
facilities, procurement, governance.
|
||||
PROGRAM:
|
||||
description: >-
|
||||
Program/mission functions: exhibitions, conservation, education, research,
|
||||
public programming, collection management.
|
||||
SUPPORT:
|
||||
description: >-
|
||||
Support/operational functions: IT, security, maintenance, visitor services,
|
||||
retail, catering.
|
||||
DEVELOPMENT:
|
||||
description: >-
|
||||
Development/fundraising functions: donor relations, grants, membership,
|
||||
corporate partnerships, planned giving.
|
||||
COMMUNICATIONS:
|
||||
description: >-
|
||||
Communications/marketing functions: public relations, marketing, social media,
|
||||
publications, branding.
|
||||
OTHER:
|
||||
description: >-
|
||||
Other functions not classified above.
|
||||
|
||||
classes:
|
||||
FunctionType:
|
||||
class_uri: hc:FunctionType
|
||||
abstract: true
|
||||
description: >-
|
||||
Abstract base class representing a type of organizational function.
|
||||
|
||||
**DESIGN RATIONALE**:
|
||||
|
||||
This is an ABSTRACT class following the Type/Types naming convention (Rule 0b).
|
||||
Concrete function types are defined in FunctionTypes.yaml as subclasses.
|
||||
|
||||
**FUNCTION CLASSIFICATION**:
|
||||
|
||||
Heritage custodians organize work into functional areas:
|
||||
|
||||
| Category | Examples |
|
||||
|----------|----------|
|
||||
| ADMINISTRATIVE | Finance, HR, Legal, Executive |
|
||||
| PROGRAM | Exhibitions, Conservation, Education |
|
||||
| SUPPORT | IT, Security, Maintenance, Visitor Services |
|
||||
| DEVELOPMENT | Fundraising, Grants, Membership |
|
||||
| COMMUNICATIONS | PR, Marketing, Publications |
|
||||
|
||||
**USAGE**:
|
||||
|
||||
The `has_or_had_function` slot links entities to FunctionType instances:
|
||||
|
||||
```yaml
|
||||
administrative_office:
|
||||
has_or_had_function:
|
||||
- function_category: ADMINISTRATIVE
|
||||
function_name: "Finance and Accounting"
|
||||
description: "Financial operations and reporting"
|
||||
- function_category: ADMINISTRATIVE
|
||||
function_name: "Human Resources"
|
||||
description: "Staff management and recruitment"
|
||||
```
|
||||
|
||||
**ONTOLOGY ALIGNMENT**:
|
||||
|
||||
- Primary: `org:purpose` - "Indicates the purpose of this Organization"
|
||||
- Related: `schema:roleName` - The role associated with an organizational function
|
||||
exact_mappings:
|
||||
- org:purpose
|
||||
close_mappings:
|
||||
- schema:Role
|
||||
related_mappings:
|
||||
- org:OrganizationalUnit
|
||||
slots:
|
||||
- id
|
||||
- function_category
|
||||
- function_name
|
||||
- description
|
||||
- valid_from
|
||||
- valid_to
|
||||
slot_usage:
|
||||
id:
|
||||
identifier: true
|
||||
required: false
|
||||
function_category:
|
||||
range: FunctionTypeEnum
|
||||
required: true
|
||||
description: High-level function classification.
|
||||
function_name:
|
||||
range: string
|
||||
required: true
|
||||
description: Specific name of the function (e.g., "Finance and Accounting").
|
||||
description:
|
||||
range: string
|
||||
required: false
|
||||
description: Human-readable description of the function.
|
||||
valid_from:
|
||||
range: date
|
||||
required: false
|
||||
description: Start date when this function was established.
|
||||
valid_to:
|
||||
range: date
|
||||
required: false
|
||||
description: End date when this function was discontinued.
|
||||
annotations:
|
||||
custodian_types: '["*"]'
|
||||
custodian_types_rationale: Organizational functions applicable to all heritage custodian types.
|
||||
custodian_types_primary: M
|
||||
specificity_score: 0.50
|
||||
specificity_rationale: >-
|
||||
Moderately specific - organizational function classification is applicable
|
||||
across institution types but specialized for organizational modeling.
|
||||
examples:
|
||||
- value:
|
||||
function_category: ADMINISTRATIVE
|
||||
function_name: Finance and Accounting
|
||||
description: "Financial operations, budgeting, and reporting"
|
||||
description: Administrative function - Finance
|
||||
- value:
|
||||
function_category: PROGRAM
|
||||
function_name: Conservation
|
||||
description: "Object conservation and preservation activities"
|
||||
description: Program function - Conservation
|
||||
- value:
|
||||
function_category: SUPPORT
|
||||
function_name: Information Technology
|
||||
description: "IT infrastructure and support services"
|
||||
description: Support function - IT
|
||||
|
||||
slots:
|
||||
function_category:
|
||||
description: High-level classification of organizational function.
|
||||
range: FunctionTypeEnum
|
||||
slot_uri: org:classification
|
||||
exact_mappings:
|
||||
- org:classification
|
||||
|
||||
function_name:
|
||||
description: Specific name of the organizational function.
|
||||
range: string
|
||||
slot_uri: schema:roleName
|
||||
exact_mappings:
|
||||
- schema:roleName
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -91,10 +91,15 @@ fixes:
|
|||
|
||||
- original_slot_id: https://nde.nl/ontology/hc/slot/administrative_expenses
|
||||
processed:
|
||||
status: false
|
||||
timestamp: null
|
||||
session: null
|
||||
notes: "Requires Expenses class creation"
|
||||
status: true
|
||||
timestamp: '2026-01-14T19:30:00Z'
|
||||
session: "session-2026-01-14-expenses-migration"
|
||||
notes: >-
|
||||
FULLY MIGRATED: FinancialStatement - administrative_expenses REMOVED.
|
||||
Created has_or_had_expenses slot and Expenses class per slot_fixes.yaml revision.
|
||||
Also archived related bespoke slots: has_or_had_administrative_expense,
|
||||
program_expense, fundraising_expense, innovation_expense.
|
||||
All expense types now use Expenses class with ExpenseTypeEnum classification.
|
||||
revision:
|
||||
- label: has_or_had_expenses
|
||||
type: slot
|
||||
|
|
|
|||
Loading…
Reference in a new issue