Commit graph

158 commits

Author SHA1 Message Date
kempersc
ca3ce0bd11 align datamap targetSlot values with formal schema slot module names
All checks were successful
Deploy Frontend / build-and-deploy (push) Successful in 2m36s
2026-02-11 14:28:51 +01:00
kempersc
ea5beabb61 Update manifest.json timestamp, enhance LinkML interfaces with structured aliases and multilingual metadata, and improve CSS for aliases and translations sections 2026-02-11 13:57:50 +01:00
kempersc
8c42292235 Add new classes and slots to the ontology
- Introduced GeospatialLocation class for specific geospatial locations.
- Added HandsOnFacility class representing facilities for hands-on experiences.
- Created Hyponym class for narrower terms or instances.
- Added ImagingEquipment class for imaging-related equipment.
- Introduced LoadingDock class for loading dock facilities.
- Created LocalCollection class for locally held collections.
- Added Locker class for storage lockers available to visitors/staff.
- Introduced MichelinStarRating class for Michelin star ratings.
- Created MicrofilmReader class for equipment used to read microfilms.
- Added OperationalArchive class for archives containing operational records.
- Introduced OperationalUnit class for operational units within organizations.
- Added has_or_had_archive slot for associating archives with entities.
- Created has_or_had_rating slot for ratings assigned to entities.
- Introduced has_or_had_section slot for sections or units within organizations.
- Added has_geospatial_location slot linking nominal places to precise geospatial coordinates.
2026-01-27 22:17:11 +01:00
kempersc
09674f7da2 Refactor schema slots and classes for improved consistency and clarity
- Renamed `has_or_had_auxiliary_entities` to `is_or_was_associated_with` in DigitalPlatform.yaml to align with naming conventions.
- Updated examples in DigitalPlatform.yaml to reflect new slot names and types.
- Migrated `has_av_equipment` to `has_or_had_equipment` in EducationCenter.yaml, including detailed descriptions and examples.
- Consolidated archival references by migrating `archival_reference` to `has_or_had_identifier` in InformationCarrier.yaml.
- Removed deprecated slots: `has_authority_file_name`, `has_authority_file_url`, `has_auxiliary_place`, `has_auxiliary_place_type`, `has_auxiliary_platform`, `has_auxiliary_platform_type`, and `has_av_equipment`, archiving their definitions.
- Updated slot fixes to reflect the migration of various slots to more generic or appropriate counterparts, ensuring all changes are documented with processing notes.
2026-01-27 11:39:06 +01:00
kempersc
7f57b3e4b8 feat: Update manifest generation timestamp and add new classes for AVEquipment, PlaceType, Platform, and PlatformType with associated slots 2026-01-27 10:46:16 +01:00
kempersc
73b2d21bb3 Refactor code structure for improved readability and maintainability 2026-01-26 23:48:27 +01:00
kempersc
9342919c79 Add archived slot definitions for various attributes
- Introduced dual_class_role, emic_name, employer_linkedin_url, employer_name, employment_dates_raw, employment_end_date, employment_start_date, end_date, end_seconds, end_time, ended_at_time, endowment_draw, engagement_rate, enriched_date, enrichment_metadata_whatsapp, enrichment_method_whatsapp, exhibition_timespan, has_timespan, policy_effective_from, policy_effective_to, start_date, can_or_could_be_retrieved_from, documents_or_documented, has_or_had_contributor, has_or_had_drawer, has_or_had_email, has_or_had_endowment_draw, has_or_had_engagement_metric, has_or_had_metadata, has_or_had_summary, is_or_was_employed_by, and is_or_was_expired_at slots.
- Each slot includes detailed descriptions, ranges, and mappings to ensure compliance with ontology standards.
2026-01-26 17:32:24 +01:00
kempersc
ec113e8811 Add new classes and slots for archival and educational metadata
- Introduced EADIdentifier, EBook, EcclesiasticalProvince, Edition, Editor, Education, EmailAddress, and Size classes to enhance archival description capabilities.
- Added slots for digital presence types, digital surrogates, digitization status, and dimensions to support comprehensive metadata management.
- Migrated existing slots such as ead_id, edition_number, and dimension to new structured formats.
- Established relationships between works and their editions, sizes, and editors to improve data interconnectivity.
- Enhanced ontology alignment with Schema.org and BIBFRAME standards for better interoperability.
2026-01-26 09:00:29 +01:00
kempersc
fba1ab9353 feat: Migrate multiple slots to structured classes and update processing notes 2026-01-26 01:41:04 +01:00
kempersc
776462de90 Migrate multiple slots to enhance semantic clarity and align with best practices
- Migrated catering_type to CateringType with subclasses for better classification.
- Updated certainty_level to has_or_had_level for improved metadata consistency.
- Addressed cessation_observed_in by confirming existing temporal data structure.
- Created NetAsset class and updated financial statements for richer financial modeling.
- Completed migrations for default_access_policy, default_audio_language, and default_language to structured classes.
- Migrated default_position to structured Alignment class for better representation.
- Updated defined_by_standard to broaden range for identifier standards.
- Migrated definition to structured Resolution class for video resolution modeling.
- Completed migrations for degree_name, deliverable, and departement_code to structured classes.
- Migrated deployment_date to structured DeploymentEvent with temporal extent.
- Migrated derived_from_entity and derived_from_observation to new reference structures.
- Completed description and description_text migrations to enhance content modeling.
- Migrated detection_count, detection_level, and detection_threshold to structured slots with classes.
- Migrated device-related slots to structured classes for better identification and classification.
- Added new slots and classes for historic building and web address modeling.
2026-01-25 12:47:38 +01:00
kempersc
511fc99847 feat: Add PriceRange, Publication, and TaxDeductibility classes
- Introduced PriceRange class to categorize price levels for hospitality services, including structured metadata for various price categories.
- Added Publication class to represent publication events, capturing details like publisher, publication place, and edition.
- Created TaxDeductibilityType as an abstract class for tax deductibility status, promoting previous enum values to a class hierarchy for richer metadata.
- Implemented TaxDeductibilityTypes with concrete subclasses detailing various tax deductibility statuses.
- Archived previous DeductibilityStatusEnum and related slots, transitioning to a more structured approach for tax deductibility classification.
- Updated multiple slot definitions to align with new class structures and naming conventions, including has_or_had_measurement and has_or_had_price.
- Enhanced documentation and examples across new and existing slots for clarity and compliance with naming conventions.
2026-01-24 17:41:06 +01:00
kempersc
6bb8ac20ba feat: Add MainPart and OutputData classes with detailed specifications
- Introduced MainPart class to represent principal portions with quantified values, including attributes for part type and currency code.
- Added OutputData class to specify output characteristics from devices/services, including format, description, and destination URL.
- Created canonical_value, capacity, capacity_type, and capacity_value slots for enhanced data representation.
- Archived and migrated various slots related to data sensitivity, dataset descriptions, and titles to align with new structures.
- Implemented has_or_had_caption and has_or_had_main_part slots to support media accessibility and primary portion representation.
- Enhanced data license policy slot to define custodian data licensing and openness policies.
2026-01-23 11:04:15 +01:00
kempersc
2a75ddf7cc feat: Add ConflictType and ConflictTypes schemas for heritage conflict taxonomy
- Introduced abstract class ConflictType to define a taxonomy for various conflict types affecting heritage institutions.
- Added concrete subclasses in ConflictTypes.yaml, detailing specific conflict types such as ArmedConflict, NaturalDisaster, CivilUnrest, Terrorism, Looting, Neglect, Occupation, and Sanctions.
- Implemented Permission and PermissionType schemas to represent authorization requirements for accessing heritage materials, including subclasses like BishopsPermission and InstitutionalAffiliation.
- Created SocialNetworkMember class for representing members in social/professional networks, facilitating heritage sector network analysis.
- Established slots for canonical access rules, conflict status, and connection metadata, enhancing the data model for heritage custodians.
- Developed ConnectionDegree and ConnectionDegreeType classes to represent degrees of connection in social networks, with subclasses for first, second, and third-plus degrees.
- Added slots for birth dates in EDTF and ISO formats, improving the representation of heritage custodian entities.
2026-01-22 20:41:06 +01:00
kempersc
be18d6761c feat: Update manifest generated timestamp and mark slot fixes as completed with detailed response 2026-01-22 20:17:33 +01:00
kempersc
2d09776856 Refactor StorageCondition schema: Migrate compliance_status to has_or_had_status with ComplianceStatus class
- Removed compliance_status slot and replaced it with has_or_had_status.
- Updated has_or_had_status to use ComplianceStatus for structured representation.
- Adjusted examples to reflect new structure for compliance status.
- Updated documentation to indicate migration and provide details on the ComplianceStatus class.
2026-01-22 16:22:16 +01:00
kempersc
6812524ae5 feat(entity-review): add 'provides match' toggle for source URLs
All checks were successful
Deploy Frontend / build-and-deploy (push) Successful in 2m23s
DSPy RAG Evaluation / Layer 1 - Unit Tests (push) Successful in 5m37s
DSPy RAG Evaluation / Layer 2 - DSPy Module Tests (push) Successful in 7m24s
DSPy RAG Evaluation / Layer 3 - Integration Tests (push) Successful in 5m47s
DSPy RAG Evaluation / Layer 4 - Comprehensive Evaluation (push) Successful in 6m52s
DSPy RAG Evaluation / Quality Gate (push) Successful in 1s
- Add toggle in source URL form to indicate when a source provides
  sufficient information to create a person profile without LinkedIn
- Store provides_match boolean in source observation data
- Display green badge on existing sources that have provides_match: true
- Include bilingual tooltip (EN/NL) explaining the toggle purpose
2026-01-18 18:25:45 +01:00
kempersc
b11223277c fix(entity-review): persist source URLs for WCMS-only profiles
All checks were successful
Deploy Frontend / build-and-deploy (push) Successful in 2m1s
DSPy RAG Evaluation / Layer 1 - Unit Tests (push) Successful in 5m34s
DSPy RAG Evaluation / Layer 2 - DSPy Module Tests (push) Successful in 7m43s
DSPy RAG Evaluation / Layer 3 - Integration Tests (push) Successful in 5m54s
DSPy RAG Evaluation / Layer 4 - Comprehensive Evaluation (push) Successful in 6m58s
DSPy RAG Evaluation / Quality Gate (push) Successful in 1s
- Add source_urls to WCMS-only profile detail response
- Update _candidates_by_wcms cache when creating new WCMS-only entries
- Use correct refresh method (fetchWcmsOnlyProfileDetail) after adding source URL

Fixes issue where source URLs added to WCMS-only profiles were not
displayed after page refresh because:
1. The wcms-only-profile/{email} endpoint wasn't returning source_urls
2. The frontend was calling fetchProfileDetail instead of
   fetchWcmsOnlyProfileDetail after adding a source URL
3. New WCMS-only entries weren't added to the lookup cache
2026-01-18 15:27:04 +01:00
kempersc
ed80fb316e refactor: migrate cataloging_standard to complies_or_complied_with and create CatalogingStandard class per Rule 53/56 2026-01-17 20:58:12 +01:00
kempersc
d99a7800e3 feat: enhance entity profile saving with PPID generation and backward compatibility 2026-01-17 01:55:38 +01:00
kempersc
54b26343c9 Add initial version of QUDT ontology file 2026-01-17 00:08:39 +01:00
kempersc
cbdf2c2b2b feat: Introduce new slots and classes for heritage content and modes
- Added `has_or_had_direction` slot to represent directional orientations of entities, migrating from `text_direction`.
- Introduced `has_or_had_mode` slot for linking entities to operational modes, migrating from `thinking_mode`.
- Created `Content` class to encapsulate intellectual content of heritage materials, migrating from `temporal_coverage`.
- Added `TextDirection` class to define text flow orientations, migrating from `text_direction` slot.
- Introduced `ThinkingMode` class for LLM thinking mode configurations, migrating from `thinking_mode` slot.
- Archived previous slots related to text direction, languages detected, and thinking modes for historical reference.
- Updated documentation and annotations for clarity and compliance with RiC-O naming conventions.
2026-01-16 19:43:50 +01:00
kempersc
d47bb5b097 standardise slots 2026-01-16 18:57:52 +01:00
kempersc
db389ed0a3 Refactor schema slots to resolve OWL ambiguity and enhance flexibility
- Updated ranges for multiple slots from `string` to `uriorcurie` to address OWL "Ambiguous type" warnings and allow for URI/CURIE references.
- Removed specialized slots for subtitle and transcript formats, consolidating them under broader predicates.
- Introduced new slots for structured descriptions, observation source documents, and entity statuses to improve data modeling.
- Implemented Rule 54 to broaden generic predicate ranges instead of creating bespoke predicates, promoting schema reuse and reducing complexity.
- Added a script for generating OWL ontology with type-object handling to ensure consistent ObjectProperty treatment for polymorphic slots.
2026-01-16 15:06:36 +01:00
kempersc
0a1f6c6f34 fix: update generated timestamp in manifest.json 2026-01-16 15:04:18 +01:00
kempersc
24cddb82dc enrich ppid profiles 2026-01-16 12:50:50 +01:00
kempersc
c2629f6d29 Fix LinkML schema validation errors (0 errors, 30 warnings)
Schema Migration Fixes:
- Fix YAML import indentation in ~650 slot files (linkml:types and enum imports)
- Rename slot reference: has_or_had_holds_record_set_type → hold_or_held_record_set_type
  (70+ archive class files, main schema, manifest.json)
- Fix ProvenanceBlock.yaml: remove invalid any_of range, use string with multivalued
- Fix has_or_had_provenance.yaml: remove nested template_specificity from annotations

Validation Status:
- 0 errors (was multiple import/reference errors)
- 30 warnings (missing descriptions on inline slots, intentional SCREAMING_CASE names)

Files changed: ~3,850 (slots, classes, main schema, manifest)
2026-01-15 23:21:38 +01:00
kempersc
416aa407cc Add new slots for financial and heritage documentation
- Introduced total expense, total frames analyzed, total investment, total liability, total net asset, and traditional product slots to enhance financial reporting capabilities.
- Added transition types detected, treatment description, type hypothesis, typical condition, typical HTTP methods, typical response formats, and typical scope slots for improved heritage documentation.
- Implemented user community, verified, web observation, WhatsApp business likelihood, wikidata equivalent, and wikidata mapping slots to enrich institutional data representation.
- Established has_or_had_asset, has_or_had_budget, has_or_had_expense, and is_or_was_threatened_by slots to capture asset, budget, expense relationships, and threats to heritage forms.
2026-01-15 19:35:39 +01:00
kempersc
37d923cae1 Refactor slot names and update imports for consistency
- Migrated `was_generated_by` to `is_or_was_generated_by` and `was_derived_from` to `is_or_was_derived_from` across multiple YAML schema files as per Rule 53.
- Updated relevant imports, slot lists, and slot usage keys to reflect the new naming conventions.
- Added migration comments for clarity and tracking.
- Introduced a migration script to automate the changes across all affected files.
2026-01-15 15:07:53 +01:00
kempersc
6c3fa6b5a3 Remove deprecated slots and add new slot definitions for enhanced data modeling
- Deleted obsolete slot definitions for work_location and workshop_space.
- Introduced new TaxonName class to represent scientific taxonomic names with detailed attributes.
- Archived existing slots related to surname_prefix, target_name, taxon_name, terminal_count, text_region_count, title, title_proper, total_chapter, total_characters_extracted, total_connections_extracted, track_name, transcript_format, traveling_venue, type_label, type_status, typical_responsibility, unesco_domain, unesco_inscription_year, unesco_list_status, uniform_title, unit_name, used_by_custodian, uv_filtered_required, valid_from_geo, valid_to_geo, validation_status, variant_of_name, verification_date, viability_status, within_auxiliary_place, and within_place.
- Updated slot descriptions and structures to improve clarity and compliance with standards.
2026-01-15 11:42:35 +01:00
kempersc
d5d970b513 Remove deprecated slot definitions and add archived versions for future reference
- Deleted the following slot definitions:
  - wikidata_class_slot
  - wikidata_entity_label_slot
  - wikidata_mapping_rationale_slot
  - word_count_slot

- Added archived versions of the deleted slots to preserve historical data:
  - wikidata_class_archived_20260114.yaml
  - wikidata_entity_label_archived_20260114.yaml
  - wikidata_mapping_rationale_archived_20260114.yaml
  - word_count_archived_20260114.yaml

- Introduced a new hook `usePersonSearch` for enhanced semantic search functionality in the frontend, supporting debounced queries and caching.
2026-01-14 22:57:09 +01:00
kempersc
58940582c3 Refactor warehouse and video slots: Migrate and archive multiple slots including warehouse_security_level, warehouse_name, and video_id. Introduce UnitIdentifier class to replace unit_id and unit_identifier slots. Update consuming classes and document migration details. Archive obsolete slot definitions for track_id, tracking_ids_assigned, vendor_name, and others. Ensure compliance with migration rules and maintain historical records in the archive. 2026-01-14 22:20:44 +01:00
kempersc
d3d5c5cdde feat: Update manifest and refactor EnvironmentalZone schema with new slot mappings and archived slots
- Updated generated timestamp in manifest.json
- Refactored EnvironmentalZone.yaml to replace zone_name and zone_description with has_or_had_label and has_or_had_description respectively
- Archived previous slots zone_name, zone_id, and zone_description with detailed migration notes
- Introduced new classes for ApprovalTimeType, ApprovalTimeTypes, ISO639-3Identifier, Investment, InvestmentArea, Language, Liability, NetAsset, ResourceType, ResponseFormat, ResponseFormatType, Token, TrackIdentifier, TraditionalProductType, TranscriptFormat, TypeStatus, UNESCODomain, UNESCODomainType, VenueTypes, and VideoFrames with appropriate attributes and slots
- Added subclasses for ApprovalTimeTypes, ResponseFormatTypes, TraditionalProductTypes, and UNESCODomainTypes
2026-01-14 20:40:08 +01:00
kempersc
7a72a1d096 Add new classes and slots for enhanced data modeling
- Introduced VerificationStatus, Verifier, VersionNumber, ViabilityStatus, VideoCategoryIdentifier, VideoIdentifier, WhatsAppProfile, WordCount, WorkRevision, and WorldCatIdentifier classes to capture various aspects of data verification, categorization, and identification.
- Created corresponding slots such as analyzes_or_analyzed, unit_type, years_restricted, benefits_provided, consumes_or_consumed, has_or_had_contact_details, has_or_had_investment, has_or_had_liability, has_or_had_likelihood_score, has_or_had_location, has_or_had_net_asset, is_or_was_affiliated_with, is_or_was_allocated_to, is_or_was_alternative_form_of, is_or_was_categorized_as, is_or_was_used_by, and was_last_updated_at to facilitate detailed tracking and categorization of entities and their attributes.
- Each class and slot includes detailed descriptions, usage examples, and mappings to relevant ontologies to ensure interoperability and clarity in data representation.
2026-01-14 20:32:45 +01:00
kempersc
13ba8fb09b style(entity-review): Improve header button styling and icon sizes
- Increase icon sizes from 16px to 20px for better visibility
- Add borders and shadows to header action buttons
- Improve hover states with color transitions
- Add proper dark mode styling for all button variants
2026-01-14 19:56:24 +01:00
kempersc
a981bb7ca3 feat(linkml): Add slot_usage comparison popup in schema viewer
- Add 'slot_usage' type to SchemaElementPopup for comparing generic slots vs class overrides
- Show side-by-side comparison table with property, generic value, and override value
- Display green 'changed' badges for modified properties
- Add dual navigation buttons (Go to class / Go to slot)
- Include comprehensive dark mode support
- Match styling to main page's comparison view (green color scheme)
2026-01-14 19:55:57 +01:00
kempersc
6da794ee38 feat: Introduce new slots and classes for enhanced heritage data modeling
- Added `has_or_had_place_of_birth` slot to capture structured birth place information with historical context.
- Introduced `has_or_had_quantity` slot for capturing quantified values with units and provenance.
- Created `has_or_had_service_area` slot to define geographic service areas for heritage custodians.
- Implemented `is_or_was_approximate` slot to indicate uncertainty in values (dates, quantities).
- Added `is_or_was_asserted_by` slot to track the agent responsible for assertions.
- Introduced `Asserter` class to model agents making assertions, including types like human, automated, and AI.
- Created `Quantity` class to represent quantified values with optional units and types.
- Added enums for `AsserterTypeEnum` and `QuantityTypeEnum` to standardize types of asserters and quantities.
- Archived outdated slots and replaced them with new structured alternatives following RiC-O conventions.
2026-01-14 16:54:10 +01:00
kempersc
5ddb7e818a Refactor schema: Migrate slots to new patterns and create new classes
- Migrated `audio_event_segments` to `has_or_had_segment` with range `AudioEventSegment` in VideoAudioAnnotation.yaml.
- Removed deprecated slots: `approved_by`, `audio_event_segments`, `bay_number`, `box_number`, and `budget_status`.
- Created new classes: `AudioEventSegment`, `BayNumber`, `BoxNumber`, and `BudgetStatus` to encapsulate previously slot-based data.
- Introduced `has_or_had_auxiliary_entities` slot to replace `auxiliary_places` and `auxiliary_platforms`.
- Archived removed slots to maintain historical context.
- Updated LinkMLViewerPage to utilize new schema element popup for better navigation.
2026-01-14 15:20:53 +01:00
kempersc
7691a11e79 chore: Update generated timestamp in manifest.json and archive budget_status slot 2026-01-14 15:14:23 +01:00
kempersc
7c7d8c0270 feat: Add SchemaElementPopup component for displaying LinkML schema element previews
- Implemented a draggable, resizable, and minimizable popup component for displaying previews of LinkML schema elements (classes, slots, enums).
- Integrated loading states and error handling for fetching element information.
- Added navigation functionality to go to full element view.
- Enhanced user experience with type badges and detailed descriptions for each element type.

chore: Migrate AudioEventSegment, BayNumber, BoxNumber, and BudgetStatus classes to new YAML schema format

- Created new YAML definitions for AudioEventSegment, BayNumber, BoxNumber, and BudgetStatus classes with detailed descriptions and attributes.
- Migrated from deprecated slots to new class structures as part of Rule 53.
- Updated imports and prefixes for consistency across schemas.

chore: Archive deprecated slots for audio_event_segments, bay_number, and box_number

- Archived previous slot definitions for audio_event_segments, bay_number, and box_number to maintain historical records.
- Updated slot descriptions and ensured proper URI mappings for future reference.
2026-01-14 15:13:06 +01:00
kempersc
b927bc4b43 Update manifest.json and migrate approved_by slot to is_or_was_approved_by; add includes_or_included slot to InformationCarrier; remove bookplate slot and archive it 2026-01-14 15:05:37 +01:00
kempersc
21c207c9da Refactor schema slots and classes for improved clarity and structure
- Migrated `archived_at` to `is_or_was_archived_at` in AuxiliaryDigitalPlatform, WebObservation, and other relevant classes to better reflect historical archival status.
- Removed `bold_id` slot and replaced it with `has_or_had_identifier` linked to the new `BOLDIdentifier` class in BiologicalObject.
- Introduced `Bookplate` and `Approver` classes to enhance provenance tracking and ownership documentation.
- Updated `InformationCarrier` to replace `bookplate` with `includes_or_included` for better representation of ownership marks.
- Added new slots `is_or_was_approved_by` and `is_or_was_archived_at` to capture historical approval and archival locations.
- Archived old slot definitions for `archived_at` and `bold_id` to maintain schema integrity.
- Enhanced LinkedIn profile extraction functionality by integrating Linkup API alongside Exa API.
2026-01-14 13:28:33 +01:00
kempersc
60e66d60f9 Add new slots and classes for enhanced documentation and availability tracking
- Introduced `is_or_was_created_through` slot to indicate content creation methods, replacing previous boolean flags.
- Added `is_or_was_required` slot for generic temporal boolean requirements, aligning with Schema.org.
- Created `AutoGeneration` class to represent automatic content generation, capturing methods and provenance.
- Established `AvailabilityStatus` class to model resource availability with temporal validity.
- Developed `Documentation` class for structured documentation resources, replacing domain-specific slots.
- Implemented `Taxon` class for biological classification in natural history collections.
- Archived previous slots related to API availability and documentation, ensuring a clean schema.
- Enhanced existing slots with detailed descriptions and examples for clarity and usability.
2026-01-14 13:09:31 +01:00
kempersc
b13674400f Refactor schema slots and classes for improved organization and clarity
- Removed deprecated slots: appraisal_notes, branch_id, is_or_was_real.
- Introduced new slots: has_or_had_notes, has_or_had_provenance.
- Created Notes class to encapsulate note-related metadata.
- Archived removed slots and classes in accordance with the new archive folder convention.
- Updated slot_fixes.yaml to reflect migration status and details.
- Enhanced documentation for new slots and classes, ensuring compliance with ontology alignment.
- Added new slots for note content, date, and type to support the Notes class.
2026-01-14 12:14:07 +01:00
kempersc
b8914761b8 standardise slots 2026-01-14 09:51:14 +01:00
kempersc
b30711fcfb update slots 2026-01-14 09:05:54 +01:00
kempersc
17da3a81e9 feat(review): add enhanced pagination with first/last page buttons and page input
- Add first page (<<) and last page (>>) navigation buttons
- Add direct page number input field for jumping to specific pages
- Update CSS styling for new pagination controls including input field
- Use stacked ChevronLeft/ChevronRight icons for first/last (lucide-react compatibility)
2026-01-13 23:27:28 +01:00
kempersc
ea8dc37905 feat(entity-review): add wrong person detection and confidence filtering
Some checks are pending
Deploy Frontend / build-and-deploy (push) Waiting to run
- Add is_likely_wrong_person and wrong_person_reason fields to MatchCandidate
- Add confidence_original field for tracking pre-adjustment scores
- Add visual indicators: AlertTriangle for wrong person, Star for high confidence
- Add filter checkboxes: 'Show high confidence (>80%)' and 'Hide wrong person'
- Add wrong person alert banner with bilingual labels (NL/EN)
- Add danger stat card showing count of likely wrong person matches
- Style signal badges by type: danger (birth_year_mismatch), success (validated)
- Add extensive CSS for wrong-person/high-confidence alerts and candidate styling
2026-01-13 20:49:47 +01:00
kempersc
fcf36f9a11 fix: prevent ontology popup flash by using useLayoutEffect for centering
All checks were successful
Deploy Frontend / build-and-deploy (push) Successful in 3m56s
DSPy RAG Evaluation / Layer 1 - Unit Tests (push) Successful in 11m5s
DSPy RAG Evaluation / Layer 2 - DSPy Module Tests (push) Successful in 12m50s
DSPy RAG Evaluation / Layer 3 - Integration Tests (push) Successful in 10m51s
DSPy RAG Evaluation / Layer 4 - Comprehensive Evaluation (push) Successful in 11m59s
DSPy RAG Evaluation / Quality Gate (push) Successful in 1s
2026-01-13 20:38:21 +01:00
kempersc
92b490d690 edit slots 2026-01-13 20:35:11 +01:00
kempersc
2907c0372a feat: add Getty AAT support and resolve PREMIS/BIBFRAME URIs to human-readable LOC docs
- Add Getty AAT (Art & Architecture Thesaurus) vocabulary support
  - fetchGettyAATEntity() fetches term info from vocab.getty.edu JSON-LD API
  - Extracts English labels, scope notes, and aliases
  - Shows 'concept' term type for SKOS concepts

- Add getHumanReadableUrl() to map RDF URIs to documentation pages
  - PREMIS 3.0: http://www.loc.gov/premis/rdf/v3/X → id.loc.gov HTML docs
  - BIBFRAME: http://id.loc.gov/ontologies/bibframe/X → id.loc.gov HTML docs
  - Uses c_ prefix for classes, p_ for properties

- Add Getty vocabulary prefixes (aat:, tgn:, ulan:)
- Add ontology badge colors for PREMIS 3, LOCN, Getty AAT
2026-01-13 19:14:31 +01:00