glam/schemas/20251121/linkml/modules/classes/SourceCommentCount.yaml
kempersc ca4a54181e Refactor schema files to improve clarity and maintainability
- Updated WorldCatIdentifier.yaml to remove unnecessary description and ensure consistent formatting.
- Enhanced WorldHeritageSite.yaml by breaking long description into multiple lines for better readability and removed unused attributes.
- Simplified WritingSystem.yaml by removing redundant attributes and ensuring consistent formatting.
- Cleaned up XPathScore.yaml by removing unnecessary attributes and ensuring consistent formatting.
- Improved YoutubeChannel.yaml by breaking long description into multiple lines for better readability.
- Enhanced YoutubeEnrichment.yaml by breaking long description into multiple lines for better readability.
- Updated YoutubeVideo.yaml to break long description into multiple lines and removed legacy field name.
- Refined has_or_had_affiliation.yaml by removing unnecessary comments and ensuring clarity.
- Cleaned up is_or_was_retrieved_at.yaml by removing unnecessary comments and ensuring clarity.
- Added rules for generic slots and avoiding rough edits in schema files to maintain structural integrity.
- Introduced changes_or_changed_through.yaml to define a new slot for linking entities to change events.
2026-01-31 00:46:23 +01:00

143 lines
3.9 KiB
YAML

id: https://nde.nl/ontology/hc/class/SourceCommentCount
name: source_comment_count_class
title: Source Comment Count Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../metadata
- ../slots/has_or_had_quantity
- ../slots/was_fetched_at
- ./Quantity
- ./Timestamp
default_prefix: hc
classes:
SourceCommentCount:
class_uri: hc:SourceCommentCount
description: |
Comment count metadata from an external source (API, web page).
**PURPOSE**:
Structured representation of comment retrieval metadata, tracking
how many comments were fetched versus the total available at the source.
Replaces simple integer count with rich provenance data.
**DESIGN RATIONALE**:
Created per slot_fixes.yaml migration from `comments_fetched` integer
to structured `was_fetched_at` + `Timestamp` + `is_or_was_part_of_total`
+ `SourceCommentCount` for complete retrieval tracking.
**USE CASES**:
- YouTube API: Track fetched comments vs total comment count
- Social media: Partial comment retrieval with pagination
- Web scraping: Track scraped vs visible comments
**EXAMPLE**:
```yaml
is_or_was_part_of_total:
fetched_count: 100
total_count: 500
fetch_complete: false
was_fetched_at:
has_or_had_timestamp: "2025-01-14T10:30:00Z"
```
close_mappings:
- schema:InteractionCounter
- prov:Entity
slots:
- was_fetched_at
- has_or_had_quantity
attributes:
fetched_count:
description: |
Number of items actually fetched/retrieved.
range: integer
required: true
minimum_value: 0
examples:
- value: 100
description: 100 comments fetched
total_count:
description: |
Total number of items available at the source.
May be null if source doesn't provide total.
range: integer
required: false
minimum_value: 0
examples:
- value: 500
description: 500 total comments at source
fetch_complete:
description: |
Whether all available items were fetched.
True if fetched_count equals total_count.
range: boolean
required: false
ifabsent: "false"
examples:
- value: true
description: All comments fetched
- value: false
description: Partial fetch
source_api:
description: |
API or source from which data was fetched.
range: string
required: false
examples:
- value: "youtube_data_api_v3"
description: YouTube Data API
- value: "web_scrape"
description: Web scraping
slot_usage:
was_fetched_at:
range: Timestamp
inlined: true
required: false
examples:
- value:
has_or_had_timestamp: "2025-01-14T10:30:00Z"
has_or_had_quantity:
range: integer
inlined: true
required: false
examples:
- value:
was_fetched_at:
has_or_had_timestamp: "2025-01-14T10:30:00Z"
- value:
- value:
comments:
- Created 2026-01-22 from comments_fetched migration (Rule 53)
- Tracks fetched vs total comment counts
- Includes fetch timestamp for provenance
- Supports partial/paginated data retrieval
see_also:
- https://schema.org/InteractionCounter
annotations:
custodian_types: '["*"]'
custodian_types_rationale: >-
Universal - any custodian with video/social media content.
specificity_score: "0.70"
specificity_rationale: >-
Specific to video/social media comment fetching contexts.