VN Core Deep Dive

VN Core v0.6.0 artifact map: what to read before the IG

The VN Core IG is the normative source for validating data. This page is a reading map for CIOs, developers, and domain teams: what each artifact type is for, how to read them in order, and when to jump into the corresponding IG page.

TL;DR

  • Do not read the IG alphabetically. Read by workflow: identity, EMR, BHYT, terminology, server capability, then individual profiles.
  • Profiles define data shape; CodeSystems and ValueSets define the allowed meaning of coded elements; CapabilityStatements define API capability.
  • Examples and Bundles are the bridge between constraints and real data. Read them before writing adapters.
  • The Knowledge Hub explains how to read; the IG remains the normative source for StructureDefinitions, package artifacts, and validation.

1. VN Core is more than a profile list

New readers often open the IG, see a long artifact index, and assume VN Core is a profile library. That misses the design intent. A profile such as VNCorePatient only makes sense together with NamingSystems for CCCD/BHYT/BHXH, ethnicity CodeSystems, address ValueSets, search parameters, Vietnam examples, and CapabilityStatements describing what servers must support.

Read VN Core as three layers. The conformance layer answers "what is valid data". The terminology layer answers "what does this code mean and where did it come from". The implementation layer answers "what API capability, operation, validation, and bundle behavior must a system support". The IG contains all three; this hub gives the orientation before deep reading.

2. Artifact table and roles

Artifact Count Read it to understand FHIR type
Profiles 73 Constraints on FHIR Resources for Vietnam: Patient, Coverage, Claim, EMR, health checkups, IPS, device, and clinical data. StructureDefinition
Extensions 48 Fields missing from FHIR base: ethnicity, ward/commune, BHYT, and Vietnam-specific data elements. StructureDefinition
CodeSystems 139 Source code systems: demographics, legal references, BHYT, administrative divisions, ICD-10 VN, shared terminology. CodeSystem
ValueSets 144 Allowed code sets bound to specific elements; they define which codes are valid in context. ValueSet
ConceptMaps 6 Mappings between code systems or between legacy data and FHIR-native structures. ConceptMap
NamingSystems 32 Registered URIs for identifiers: CCCD, BHYT, BHXH, facility codes, MRN. NamingSystem
SearchParameters 19 API contracts for searching by CCCD, BHYT, MA_LK, MA_CSKCB, and Vietnam identifiers. SearchParameter
CapabilityStatements 5 Minimum capability statements for servers, EMRs, BHYT gateways, and citizen apps. CapabilityStatement
OperationDefinitions 4 Explicit operations: validate/submit/reverse BHYT claims and generate IPS summaries. OperationDefinition
LogicalModels 16 Intermediate models for BHYT XML, health checkups, legal datasets, and forms before mapping to FHIR. StructureDefinition

3. Read by Vietnam workflow

BHYT and output data

Read Coverage, Claim, ClaimResponse, EOB, Invoice, XML1-XML12 logical models, and validate/submit/reverse operations.

4. Recommended reading order

  1. Read narrative pages first. The home page, Profiles, Terminology, and package architecture pages set the release boundary.
  2. Read examples before profiles. Real examples show workflow context and reference links.
  3. Read differential to see what VN Core added. Snapshot is long because it includes all inherited FHIR base content.
  4. Check terminology after the profile. Production errors often come from using the right element with the wrong system/code/version.
  5. Run the validator last. A payload is not compliant just because an application can parse the JSON.