feat(schema): add Classroom and RoomUnit classes for classroom_count migration
Some checks failed
Deploy Frontend / build-and-deploy (push) Has been cancelled
Some checks failed
Deploy Frontend / build-and-deploy (push) Has been cancelled
- Create Classroom.yaml (subclass of Facility) - Create RoomUnit.yaml (subclass of Unit for room counting) - Create RoomUnitTypeEnum.yaml with room type values - Update EducationCenter.yaml to use has_or_had_facility with Classroom - Archive classroom_count.yaml slot Rule 53 compliance: Replaces simple integer count with structured facility model.
This commit is contained in:
parent
3da90b940e
commit
e2d4666221
8 changed files with 487 additions and 10 deletions
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"generated": "2026-01-19T12:05:24.104Z",
|
||||
"generated": "2026-01-19T12:05:53.461Z",
|
||||
"schemaRoot": "/schemas/20251121/linkml",
|
||||
"totalFiles": 2969,
|
||||
"categoryCounts": {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"generated": "2026-01-19T12:05:53.461Z",
|
||||
"generated": "2026-01-19T12:10:38.542Z",
|
||||
"schemaRoot": "/schemas/20251121/linkml",
|
||||
"totalFiles": 2969,
|
||||
"categoryCounts": {
|
||||
|
|
|
|||
139
schemas/20251121/linkml/modules/classes/Classroom.yaml
Normal file
139
schemas/20251121/linkml/modules/classes/Classroom.yaml
Normal file
|
|
@ -0,0 +1,139 @@
|
|||
# Classroom - Classroom facility class
|
||||
#
|
||||
# Created per slot_fixes.yaml migration for: classroom_count
|
||||
# Creation date: 2026-01-19
|
||||
#
|
||||
# Rule 53 (No Bespoke Slots): classroom_count → has_or_had_facility + Classroom
|
||||
# Rule 39 (RiC-O Naming): Uses has_or_had_* pattern
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/Classroom
|
||||
name: Classroom
|
||||
title: Classroom Facility
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
qudt: http://qudt.org/schema/qudt/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ./Facility
|
||||
- ./Quantity
|
||||
- ./RoomUnit
|
||||
- ../slots/has_or_had_quantity
|
||||
- ../slots/has_or_had_unit
|
||||
|
||||
classes:
|
||||
Classroom:
|
||||
is_a: Facility
|
||||
class_uri: schema:Classroom
|
||||
description: |
|
||||
A classroom facility at an education center or heritage institution.
|
||||
|
||||
**RULE 53 MIGRATION**:
|
||||
Replaces the simple `classroom_count` integer slot with a richer facility model:
|
||||
- `has_or_had_quantity` → number of classroom spaces
|
||||
- `has_or_had_unit` → RoomUnit (specifies what is being counted)
|
||||
|
||||
**USAGE**:
|
||||
```yaml
|
||||
has_or_had_facility:
|
||||
- facility_name: "Classroom Wing"
|
||||
has_or_had_quantity:
|
||||
numeric_value: 4
|
||||
has_or_had_unit:
|
||||
unit_type: CLASSROOM
|
||||
```
|
||||
|
||||
**CHARACTERISTICS**:
|
||||
- Dedicated teaching/learning space
|
||||
- Capacity for group instruction
|
||||
- May include AV equipment
|
||||
- Configurable seating arrangements
|
||||
|
||||
slots:
|
||||
- has_or_had_quantity
|
||||
- has_or_had_unit
|
||||
|
||||
slot_usage:
|
||||
has_or_had_quantity:
|
||||
range: Quantity
|
||||
inlined: true
|
||||
description: |
|
||||
Number of classroom spaces in this facility.
|
||||
examples:
|
||||
- value: |
|
||||
numeric_value: 4
|
||||
description: 4 classroom spaces
|
||||
|
||||
has_or_had_unit:
|
||||
range: RoomUnit
|
||||
inlined: true
|
||||
description: |
|
||||
Unit specification for the count (classroom, seat, etc.).
|
||||
examples:
|
||||
- value: |
|
||||
unit_type: CLASSROOM
|
||||
description: Counting classrooms
|
||||
|
||||
attributes:
|
||||
seating_capacity:
|
||||
range: integer
|
||||
description: Total seating capacity across all classrooms
|
||||
|
||||
av_equipped:
|
||||
range: boolean
|
||||
description: Whether classrooms have AV equipment
|
||||
|
||||
flexible_seating:
|
||||
range: boolean
|
||||
description: Whether seating can be reconfigured
|
||||
|
||||
exact_mappings:
|
||||
- schema:Classroom
|
||||
|
||||
close_mappings:
|
||||
- schema:Room
|
||||
- schema:Place
|
||||
|
||||
annotations:
|
||||
specificity_score: "0.55"
|
||||
specificity_rationale: "Moderately specific - classrooms common in education centers."
|
||||
template_specificity:
|
||||
archive_search: 0.30
|
||||
museum_search: 0.50
|
||||
library_search: 0.45
|
||||
collection_discovery: 0.20
|
||||
person_research: 0.15
|
||||
location_browse: 0.60
|
||||
identifier_lookup: 0.10
|
||||
organizational_change: 0.25
|
||||
digital_platform: 0.15
|
||||
general_heritage: 0.55
|
||||
|
||||
examples:
|
||||
- value:
|
||||
facility_name: "Education Wing Classrooms"
|
||||
facility_description: "Four fully-equipped classroom spaces for educational programs"
|
||||
has_or_had_quantity:
|
||||
numeric_value: 4
|
||||
has_or_had_unit:
|
||||
unit_type: CLASSROOM
|
||||
seating_capacity: 120
|
||||
av_equipped: true
|
||||
flexible_seating: true
|
||||
description: Museum education center classroom facility
|
||||
|
||||
- value:
|
||||
facility_name: "Archive Learning Rooms"
|
||||
facility_description: "Two seminar rooms for genealogy and research workshops"
|
||||
has_or_had_quantity:
|
||||
numeric_value: 2
|
||||
has_or_had_unit:
|
||||
unit_type: CLASSROOM
|
||||
seating_capacity: 40
|
||||
av_equipped: true
|
||||
description: Archive education classroom facility
|
||||
|
|
@ -11,7 +11,11 @@ imports:
|
|||
# REMOVED 2026-01-15: ../slots/annual_participants - migrated to has_or_had_annual_participant_count
|
||||
# REMOVED 2026-01-15: ../slots/booking_required - migrated to is_or_was_required
|
||||
- ../slots/is_or_was_required
|
||||
- ../slots/classroom_count
|
||||
# REMOVED 2026-01-19: ../slots/classroom_count - migrated to has_or_had_facility with Classroom
|
||||
- ../slots/has_or_had_facility
|
||||
- ./Classroom
|
||||
- ./RoomUnit
|
||||
- ../enums/RoomUnitTypeEnum
|
||||
- ../slots/has_or_had_custodian_type
|
||||
# Shared slots (replacing education_center_* slots per Rule 53)
|
||||
- ../slots/has_or_had_identifier
|
||||
|
|
@ -94,7 +98,8 @@ classes:
|
|||
- has_or_had_annual_participant_count
|
||||
# REMOVED 2026-01-15: booking_required - migrated to is_or_was_required
|
||||
- is_or_was_required
|
||||
- classroom_count
|
||||
# REMOVED 2026-01-19: classroom_count - migrated to has_or_had_facility with Classroom
|
||||
- has_or_had_facility
|
||||
- has_or_had_custodian_type
|
||||
# MIGRATED 2026-01-15: education_center_* slots replaced with shared slots per Rule 53
|
||||
- has_or_had_identifier # was: education_center_id
|
||||
|
|
@ -184,11 +189,31 @@ classes:
|
|||
description: Professional development
|
||||
- value: Genealogy workshops
|
||||
description: Specialized workshops
|
||||
classroom_count:
|
||||
range: integer
|
||||
# REMOVED 2026-01-19: classroom_count - migrated to has_or_had_facility with Classroom
|
||||
# classroom_count:
|
||||
# range: integer
|
||||
# examples:
|
||||
# - value: 4
|
||||
# description: 4 classrooms
|
||||
has_or_had_facility:
|
||||
range: Classroom
|
||||
inlined: true
|
||||
multivalued: true
|
||||
description: |
|
||||
Classroom facilities at this education center.
|
||||
MIGRATED 2026-01-19: Replaces classroom_count slot per Rule 53.
|
||||
Uses Classroom class (subclass of Facility) with has_or_had_quantity
|
||||
and has_or_had_unit for structured room counting.
|
||||
examples:
|
||||
- value: 4
|
||||
description: 4 classrooms
|
||||
- value: |
|
||||
facility_name: "Main Classroom Wing"
|
||||
has_or_had_quantity:
|
||||
numeric_value: 4
|
||||
has_or_had_unit:
|
||||
unit_type: CLASSROOM
|
||||
seating_capacity: 120
|
||||
av_equipped: true
|
||||
description: 4 classroom facility
|
||||
# REMOVED 2026-01-14: workshop_space - migrated to has_or_had_quantity with Quantity
|
||||
# workshop_space:
|
||||
# range: integer
|
||||
|
|
@ -291,7 +316,16 @@ classes:
|
|||
- Interactive workshops
|
||||
- Family treasure hunts
|
||||
- Teacher training days
|
||||
classroom_count: 4
|
||||
# MIGRATED 2026-01-19: classroom_count → has_or_had_facility + Classroom
|
||||
has_or_had_facility:
|
||||
- facility_name: "Education Wing Classrooms"
|
||||
has_or_had_quantity:
|
||||
numeric_value: 4
|
||||
has_or_had_unit:
|
||||
unit_type: CLASSROOM
|
||||
seating_capacity: 120
|
||||
av_equipped: true
|
||||
flexible_seating: true
|
||||
has_or_had_quantity:
|
||||
value: 2
|
||||
unit: workshop_spaces
|
||||
|
|
@ -322,7 +356,15 @@ classes:
|
|||
- Genealogy workshops
|
||||
- Paleography basics
|
||||
- Teacher curriculum support
|
||||
classroom_count: 2
|
||||
# MIGRATED 2026-01-19: classroom_count → has_or_had_facility + Classroom
|
||||
has_or_had_facility:
|
||||
- facility_name: "Learning Rooms"
|
||||
has_or_had_quantity:
|
||||
numeric_value: 2
|
||||
has_or_had_unit:
|
||||
unit_type: CLASSROOM
|
||||
seating_capacity: 40
|
||||
av_equipped: true
|
||||
max_group_size: 20
|
||||
has_av_equipment: true
|
||||
is_or_was_required: true
|
||||
|
|
|
|||
113
schemas/20251121/linkml/modules/classes/RoomUnit.yaml
Normal file
113
schemas/20251121/linkml/modules/classes/RoomUnit.yaml
Normal file
|
|
@ -0,0 +1,113 @@
|
|||
# RoomUnit - Unit class for counting room/space facilities
|
||||
#
|
||||
# Created per slot_fixes.yaml migration for: classroom_count
|
||||
# Creation date: 2026-01-19
|
||||
#
|
||||
# Rule 53 (No Bespoke Slots): classroom_count → has_or_had_facility + Classroom + RoomUnit
|
||||
# Rule 39 (RiC-O Naming): Uses has_or_had_* pattern
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/RoomUnit
|
||||
name: RoomUnit
|
||||
title: Room Unit
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
qudt: http://qudt.org/schema/qudt/
|
||||
schema: http://schema.org/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ./Unit
|
||||
- ../enums/RoomUnitTypeEnum
|
||||
|
||||
classes:
|
||||
RoomUnit:
|
||||
is_a: Unit
|
||||
class_uri: hc:RoomUnit
|
||||
description: |
|
||||
A unit of measurement for counting rooms or spaces in a facility.
|
||||
|
||||
**RULE 53 MIGRATION**:
|
||||
Replaces simple integer count slots with typed unit specification:
|
||||
- `classroom_count: 4` → `has_or_had_quantity: 4` + `has_or_had_unit: {unit_type: CLASSROOM}`
|
||||
|
||||
**ROOM TYPES**:
|
||||
- CLASSROOM - Teaching/learning spaces
|
||||
- WORKSHOP_SPACE - Hands-on activity areas
|
||||
- SEMINAR_ROOM - Discussion/presentation spaces
|
||||
- LABORATORY - Scientific/conservation labs
|
||||
- STUDIO - Creative/production spaces
|
||||
- READING_ROOM - Research/study areas
|
||||
- STORAGE_ROOM - Collection storage spaces
|
||||
- OFFICE - Administrative spaces
|
||||
|
||||
**USAGE PATTERN**:
|
||||
```yaml
|
||||
has_or_had_facility:
|
||||
- facility_name: "Education Wing"
|
||||
has_or_had_quantity:
|
||||
numeric_value: 4
|
||||
has_or_had_unit:
|
||||
unit_type: CLASSROOM
|
||||
```
|
||||
|
||||
exact_mappings:
|
||||
- qudt:Unit
|
||||
|
||||
close_mappings:
|
||||
- schema:Room
|
||||
|
||||
attributes:
|
||||
unit_type:
|
||||
range: RoomUnitTypeEnum
|
||||
required: true
|
||||
description: |
|
||||
The type of room/space being counted.
|
||||
examples:
|
||||
- value: CLASSROOM
|
||||
description: Classroom space
|
||||
- value: READING_ROOM
|
||||
description: Reading room
|
||||
|
||||
annotations:
|
||||
custodian_types: '["E", "L", "A", "M", "R"]'
|
||||
custodian_types_rationale: >-
|
||||
Room counting most relevant for education providers (E), libraries (L),
|
||||
archives (A), museums (M), and research centers (R).
|
||||
custodian_types_primary: "E"
|
||||
specificity_score: 0.45
|
||||
specificity_rationale: >-
|
||||
Moderately specific - room counting common in education/facility contexts.
|
||||
template_specificity:
|
||||
archive_search: 0.35
|
||||
museum_search: 0.45
|
||||
library_search: 0.50
|
||||
collection_discovery: 0.20
|
||||
person_research: 0.10
|
||||
location_browse: 0.55
|
||||
identifier_lookup: 0.10
|
||||
organizational_change: 0.20
|
||||
digital_platform: 0.10
|
||||
general_heritage: 0.45
|
||||
|
||||
examples:
|
||||
- value:
|
||||
unit_type: CLASSROOM
|
||||
description: Unit for counting classroom spaces
|
||||
|
||||
- value:
|
||||
unit_type: READING_ROOM
|
||||
description: Unit for counting reading rooms
|
||||
|
||||
- value:
|
||||
unit_type: WORKSHOP_SPACE
|
||||
description: Unit for counting workshop areas
|
||||
|
||||
comments:
|
||||
- Created from slot_fixes.yaml migration (2026-01-19)
|
||||
- Specialized unit for room/space counting
|
||||
- Subclass of Unit with room-specific type enum
|
||||
- Used with Classroom and similar facility classes
|
||||
134
schemas/20251121/linkml/modules/enums/RoomUnitTypeEnum.yaml
Normal file
134
schemas/20251121/linkml/modules/enums/RoomUnitTypeEnum.yaml
Normal file
|
|
@ -0,0 +1,134 @@
|
|||
# RoomUnitTypeEnum - Types of rooms/spaces for counting
|
||||
#
|
||||
# Created per slot_fixes.yaml migration for: classroom_count
|
||||
# Creation date: 2026-01-19
|
||||
#
|
||||
# Rule 53 (No Bespoke Slots): Supports RoomUnit class for facility counting
|
||||
|
||||
id: https://nde.nl/ontology/hc/enum/RoomUnitTypeEnum
|
||||
name: room_unit_type_enum
|
||||
title: Room Unit Type Enum
|
||||
description: >-
|
||||
Enumeration of room and space types for counting facilities.
|
||||
|
||||
**RULE 53 COMPLIANT**: Supports RoomUnit class for standardized
|
||||
room counting in heritage facility metrics.
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
enums:
|
||||
RoomUnitTypeEnum:
|
||||
description: >-
|
||||
Standard room types for counting heritage facility spaces.
|
||||
|
||||
Used with RoomUnit class in has_or_had_unit slot for facility counting.
|
||||
permissible_values:
|
||||
# Educational spaces
|
||||
CLASSROOM:
|
||||
description: Teaching/learning space for group instruction
|
||||
meaning: schema:Classroom
|
||||
annotations:
|
||||
usage_context: education
|
||||
typical_capacity: "20-40"
|
||||
|
||||
WORKSHOP_SPACE:
|
||||
description: Hands-on activity area for practical work
|
||||
annotations:
|
||||
usage_context: education
|
||||
typical_capacity: "10-20"
|
||||
|
||||
SEMINAR_ROOM:
|
||||
description: Discussion/presentation space for smaller groups
|
||||
annotations:
|
||||
usage_context: education
|
||||
typical_capacity: "10-25"
|
||||
|
||||
LECTURE_HALL:
|
||||
description: Large presentation space for lectures
|
||||
annotations:
|
||||
usage_context: education
|
||||
typical_capacity: "50-300"
|
||||
|
||||
# Research spaces
|
||||
LABORATORY:
|
||||
description: Scientific or conservation laboratory space
|
||||
annotations:
|
||||
usage_context: research
|
||||
|
||||
STUDIO:
|
||||
description: Creative or production workspace
|
||||
annotations:
|
||||
usage_context: creative
|
||||
|
||||
# Library/archive spaces
|
||||
READING_ROOM:
|
||||
description: Research/study area for visitors
|
||||
meaning: hc:ReadingRoom
|
||||
annotations:
|
||||
usage_context: research
|
||||
|
||||
STUDY_CARREL:
|
||||
description: Individual study booth or station
|
||||
annotations:
|
||||
usage_context: research
|
||||
|
||||
# Storage spaces
|
||||
STORAGE_ROOM:
|
||||
description: Collection storage space
|
||||
annotations:
|
||||
usage_context: storage
|
||||
|
||||
VAULT:
|
||||
description: Secure storage for valuable items
|
||||
annotations:
|
||||
usage_context: storage
|
||||
security_level: high
|
||||
|
||||
# Administrative spaces
|
||||
OFFICE:
|
||||
description: Administrative workspace
|
||||
annotations:
|
||||
usage_context: administrative
|
||||
|
||||
MEETING_ROOM:
|
||||
description: Conference/meeting space
|
||||
annotations:
|
||||
usage_context: administrative
|
||||
|
||||
# Public spaces
|
||||
GALLERY:
|
||||
description: Exhibition gallery space
|
||||
meaning: schema:ExhibitionEvent
|
||||
annotations:
|
||||
usage_context: exhibition
|
||||
|
||||
AUDITORIUM:
|
||||
description: Large performance/presentation venue
|
||||
meaning: schema:EventVenue
|
||||
annotations:
|
||||
usage_context: events
|
||||
|
||||
# Support spaces
|
||||
RESTROOM:
|
||||
description: Visitor restroom facilities
|
||||
annotations:
|
||||
usage_context: visitor_services
|
||||
|
||||
CLOAKROOM:
|
||||
description: Coat/bag storage for visitors
|
||||
annotations:
|
||||
usage_context: visitor_services
|
||||
|
||||
# Unknown
|
||||
UNKNOWN:
|
||||
description: Room type not specified or unknown
|
||||
annotations:
|
||||
usage_context: unspecified
|
||||
|
|
@ -10682,3 +10682,52 @@ fixes:
|
|||
type: slot
|
||||
- label: TimeSpan
|
||||
type: class
|
||||
- original_slot_id: https://nde.nl/ontology/hc/slot/date_precision
|
||||
revision:
|
||||
- label: degree_of_certainty
|
||||
type: slot
|
||||
- label: DatePrecision
|
||||
type: class
|
||||
- original_slot_id: https://nde.nl/ontology/hc/slot/date_retrieved
|
||||
revision:
|
||||
- label: was_retrieved_at
|
||||
type: slot
|
||||
- label: Timestamp
|
||||
type: class
|
||||
- original_slot_id: https://nde.nl/ontology/hc/slot/de
|
||||
revision:
|
||||
- label: has_or_had_language
|
||||
type: slot
|
||||
- label: Language
|
||||
type: class
|
||||
value: de
|
||||
- original_slot_id: https://nde.nl/ontology/hc/slot/dealer_name
|
||||
revision:
|
||||
- label: is_or_was_associated_with
|
||||
type: slot
|
||||
- label: ArtDealer
|
||||
type: class
|
||||
- label: has_or_had_name
|
||||
type: slot
|
||||
- label: Name
|
||||
type: class
|
||||
- original_slot_id: https://nde.nl/ontology/hc/slot/death_place
|
||||
revision:
|
||||
- label: is_deceased
|
||||
type: slot
|
||||
- label: DeceasedStatus
|
||||
type: class
|
||||
- label: was_or_is_caused_by
|
||||
type: slot
|
||||
- label: CauseOfDeath
|
||||
type: class
|
||||
- label: occurs_or_occurred_at
|
||||
type: slot
|
||||
- label: Place
|
||||
type: class
|
||||
- original_slot_id: https://nde.nl/ontology/hc/slot/deceased
|
||||
revision:
|
||||
- label: is_deceased
|
||||
type: slot
|
||||
- label: DeceasedStatus
|
||||
type: class
|
||||
|
|
|
|||
Loading…
Reference in a new issue