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_quantity - ../slots/retrieved_at default_prefix: hc classes: SourceCommentCount: class_uri: hc:SourceCommentCount description: "Comment count metadata from an external source (API, web page).\n\ \n**PURPOSE**:\n\nStructured representation of comment retrieval metadata, tracking\n\ how many comments were fetched versus the total available at the source.\nReplaces\ \ simple integer count with rich provenance data.\n\n**DESIGN RATIONALE**:\n\ \nCreated per slot_fixes.yaml migration from `comments_fetched` integer\nto\ \ structured `was_fetched_at` + `Timestamp` + `part_of_total`\n+ `SourceCommentCount`\ \ for complete retrieval tracking.\n\n**USE CASES**:\n\n- YouTube API: Track\ \ fetched comments vs total comment count\n- Social media: Partial comment retrieval\ \ with pagination\n- Web scraping: Track scraped vs visible comments\n\n**EXAMPLE**:\n\ \n```yaml\npart_of_total:\n fetched_count: 100\n total_count: 500\n\ \ fetch_complete: false\n was_fetched_at:\n has_timestamp: \"2025-01-14T10:30:00Z\"\ \n```\n" close_mappings: - schema:InteractionCounter - prov:Entity slots: - retrieved_at - has_quantity slot_usage: retrieved_at: range: Timestamp inlined: true required: false examples: - value: has_timestamp: '2025-01-14T10:30:00Z' has_quantity: range: integer inlined: false # Fixed invalid inline for primitive type required: false examples: - value: retrieved_at: has_timestamp: '2025-01-14T10:30:00Z' - value: null - value: null 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.