id: https://nde.nl/ontology/hc/class/ConnectionSourceMetadata name: connection_source_metadata_class title: Connection Source Metadata Class version: 1.0.0 prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ schema: http://schema.org/ prov: http://www.w3.org/ns/prov# dct: http://purl.org/dc/terms/ dcterms: http://purl.org/dc/terms/ crm: http://www.cidoc-crm.org/cidoc-crm/ skos: http://www.w3.org/2004/02/skos/core# rdfs: http://www.w3.org/2000/01/rdf-schema# org: http://www.w3.org/ns/org# xsd: http://www.w3.org/2001/XMLSchema# imports: - linkml:types - ../enums/ScrapeMethodEnum - ../slots/document - ../slots/has_label - ../slots/has_profile - ../slots/has_score - ../slots/has_note - ../slots/has_method - ../slots/retrieved_at - ../slots/has_url default_prefix: hc classes: ConnectionSourceMetadata: class_uri: prov:Activity description: 'Provenance metadata about how the connections were extracted. Records the extraction context including: - Source URL (LinkedIn search or profile page) - When the extraction occurred - Which method was used (manual browse, automated scrape) - Target profile being analyzed - Count of connections extracted **Scrape Methods**: - manual_linkedin_browse: Manual copy-paste while logged in - linkedin_html_parser: Parsed from saved HTML file - exa_search: Extracted via Exa API ' exact_mappings: - prov:Activity slots: - document - has_note - has_method - retrieved_at - has_url - has_label - has_profile - has_score slot_usage: has_url: range: uri required: true examples: - value: https://www.linkedin.com/search/results/people/?network=%5B%22F%22%2C%22S%22%2C%22O%22%5D retrieved_at: range: datetime required: true examples: - value: '2025-12-09T22:00:00Z' has_method: range: ScrapeMethodEnum required: true examples: - value: alexandr-belov-bb547b46 has_label: # range: string inlined: false # Fixed invalid inline for primitive type required: true examples: - value: "Label:\n label_value: \"Giovanna Fossati\"\n label_type: \"person_name\"\n" has_profile: range: SocialMediaProfile inlined: true required: true examples: - value: social_media_profile_id: https://nde.nl/ontology/hc/social-media/giovanna-fossati-linkedin platform_type: LINKEDIN profile_url: https://www.linkedin.com/in/giovanna-fossati-12345/ refers_to_custodian: https://nde.nl/ontology/hc/nl-nh-ams-m-efm - value: social_media_profile_id: https://nde.nl/ontology/hc/social-media/alexandr-belov-linkedin platform_type: LINKEDIN profile_url: https://www.linkedin.com/in/alexandr-belov-bb547b46/ document: range: integer required: true minimum_value: 0 examples: - value: 776 has_note: # range: string examples: - value: Raw scrape in giovannafossati_connections_20251209T220000Z_note-max100p-1st2nd3th.md comments: - Aligns with PROV-O Activity pattern - scraped_timestamp maps to prov:endedAtTime - has_profile links to SocialMediaProfile representing the LinkedIn profile analyzed annotations: specificity_score: 0.1 specificity_rationale: Generic utility class/slot created during migration custodian_types: "['*']"