id: https://nde.nl/ontology/hc/class/ConnectionNetwork name: connection_network_class title: Connection Network 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/ xsd: http://www.w3.org/2001/XMLSchema# imports: - linkml:types - ../metadata - ./PersonConnection - ./ConnectionSourceMetadata - ./NetworkAnalysis - ./HeritageTypeCount - ./SpecificityAnnotation - ./TemplateSpecificityScore # was: TemplateSpecificityScores - migrated per Rule 53 (2026-01-17) - ./TemplateSpecificityType - ./TemplateSpecificityTypes - ./SocialNetworkMember # MIGRATED 2026-01-22: connection → has_or_had_member + SocialNetworkMember (Rule 53) - ../slots/has_or_had_member - ../slots/network_analysis - ../slots/note - ../slots/source_metadata - ../slots/specificity_annotation - ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17) default_range: string classes: ConnectionNetwork: class_uri: schema:ItemList description: 'Collection of LinkedIn network connections with source metadata. This is the root class for connection JSON files stored at: `data/custodian/person/connection/bu/{linkedin_slug}_connections_{timestamp}.json` Each file contains: - **source_metadata**: Provenance about the extraction (who, when, how) - **connections**: Array of PersonConnection entries (the actual network data) - **network_analysis**: Optional aggregated statistics **Use Cases**: - Heritage sector network analysis - Cross-custodian relationship discovery - Staff member connection patterns - Professional community mapping **File Naming Convention**: `{linkedin-slug}_connections_{ISO-timestamp}.json` Example: `giovannafossati_connections_20251209T220000Z.json` ' exact_mappings: - schema:ItemList close_mappings: - prov:Collection slots: # MIGRATED 2026-01-22: connection → has_or_had_member (Rule 53) - has_or_had_member - network_analysis - source_metadata - specificity_annotation - has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17) slot_usage: source_metadata: range: ConnectionSourceMetadata required: true inlined: true # MIGRATED 2026-01-22: connection → has_or_had_member + SocialNetworkMember (Rule 53) has_or_had_member: range: PersonConnection # PersonConnection is a type of SocialNetworkMember required: true multivalued: true inlined: true inlined_as_list: true description: | Network connections/members extracted from LinkedIn. MIGRATED from connection slot per slot_fixes.yaml (Rule 53, 2026-01-22). Uses PersonConnection as range (subtype of SocialNetworkMember). network_analysis: range: NetworkAnalysis inlined: true comments: - Root class for connection network JSON files (validated with -C ConnectionNetwork) - 'Per AGENTS.md Rule 15: ALL connections must be fully registered' - Enables heritage sector network analysis - 'File naming: {linkedin-slug}_connections_{timestamp}.json' see_also: - https://schema.org/ItemList