This page shows how OpenCRVS vocabulary codes map to PublicSchema canonical values. If you work with OpenCRVS and spot an error, please report it.

5 vocabularios covered: 5 correspondencia de valores.

Vocabularios

Vocabulario Nombre en el sistema Relación Cobertura Brechas
crvs/civil-status-record-type EventDocument.type (country-configured string) Correspondencia de valores 3/3 correspondencias 3 sin cobertura
crvs/registration-status EventStatus Correspondencia de valores 5/5 correspondencias 4 sin cobertura
gender-type Gender Correspondencia de valores 4/4 correspondencias
payment-status PaymentOutcomeType Correspondencia de valores 3/3 correspondencias 5 sin cobertura
sex Gender Correspondencia de valores 3/4 correspondencias

Correspondencias de conceptos

Entidades en OpenCRVS que se alinean con conceptos de PublicSchema.

Concepto PublicSchema Entidad del sistema Coincidencia Notas
VitalEvent EventDocument Cercana EventDocument is the generic event envelope in v2: id, type (a free string such as "BIRTH" or "DEATH"), createdAt, updatedAt, actions, and trackingId. Our VitalEvent is the abstract supertype for civil registration events. The correspondence is close: both represent the occurrence entity, but EventDocument carries no domain fields; all content lives in the EventConfig.declaration fields of individual actions.
Birth EventDocument (type='BIRTH', country-configured) Amplia In v2 core there is no BirthRegistration type. A birth event is an EventDocument whose type string is set to the country's birth event id (e.g. the Farajaland constant Event.Birth). All birth-specific fields (child name, birthDate, parentage, birthType, attendant, weight) live in the EventConfig.declaration form defined by the country config. Match is broad because the EventDocument envelope is genuinely wider than our Birth concept.
Death EventDocument (type='DEATH', country-configured) Amplia Same pattern as Birth. A death event is an EventDocument whose type string is set to the country's death event id. Death-specific fields (deceased name, cause of death, manner of death, medical certifier) are country-configured EventConfig.declaration fields; none are typed at the v2 core level.
Marriage EventDocument (type='marriage', country-configured) Amplia The Farajaland Event enum defines Event.Marriage = 'marriage', confirming the convention. A full EventConfig for marriage is not present in the Farajaland reference clone; the same EventDocument + country EventConfig pattern applies. Marriage-specific fields (bride/groom or party_1/party_2, witnesses, typeOfMarriage) would be country-configured EventConfig.declaration fields. Match is broad and confidence is null pending a concrete EventConfig example.
CivilStatusRecord RegisterAction Relacionada RegisterAction is an ActionDocument variant (type=REGISTER) that carries a registrationNumber field. This is the closest v2 core equivalent to our CivilStatusRecord: the act of registration produces a registration number, which is the legal acte identifier. However, RegisterAction is an action within an EventDocument, not a standalone record; the structural roles differ. The registrationNumber field is optional (nullable) and is always present on accepted registrations.
Certificate PrintCertificateAction Relacionada PrintCertificateAction is an ActionDocument variant (type=PRINT_CERTIFICATE). It carries an optional templateId content field. This is structurally narrower than our Certificate concept, which models the issued document with issuance metadata (issue date, issuing office, format, certificate number). PrintCertificateAction records the act of printing; it does not fully represent the certificate as a legal document object. Match is related rather than close because the scope has narrowed from v1's Certificate type.
PaternityRecognition RequestedCorrectionAction / ApprovedCorrectionAction Relacionada PaternityRecognition remains without a first-class event type in v2. The correction workflow (ActionType.REQUEST_CORRECTION followed by ActionType.APPROVE_CORRECTION) is the operational mechanism for amending a birth record to add or change parentage information. The match is related for the same reason as v1: the target is a workflow action pair, not an event type. A country config could define a dedicated "paternity recognition" event type using a separate EventConfig.

Brechas documentadas

Elementos de PublicSchema que OpenCRVS no modela, con la razón documentada.

Elemento PublicSchema Razón
FetalDeath Not modelled as a distinct event type in v2 core. A country config could define a fetal death event; the Farajaland reference config does not. No fixed v2 core equivalent.
MarriageTermination Not modelled in v2 core or the Farajaland reference config. Neither divorce nor annulment registration exists as a first-class event type.
Adoption Not modelled in v2 core or the Farajaland reference config. Adoption scenarios would require a country-specific EventConfig.
Legitimation Not modelled in v2 core. Same pattern as PaternityRecognition: operationally a correction action on an existing birth record.
CivilStatusAnnotation No reified marginal-annotation type in v2. ActionBase carries an annotation field (an untyped key-value record) for action-specific metadata, but this is not an annotation in the legal CRVS sense (a signed marginal note on a register entry).
FamilyRegister V2 is event-record centric. There is no concept of a family register (livret de famille, koseki, hukou); families are not modelled as a tracked unit in v2 core or the Farajaland reference config.
Person V2 core has no Person type. All person data (name, date of birth, demographic attributes) lives in country-configured declaration fields inside EventDocument.actions[].declaration, a Record<string, FieldValue> keyed by country-specific strings. There is no reified temporal-snapshot Person entity in the event service.
Parent Our Parent is a reified link entity (Person + parental_role). V2 core has no such type. In Farajaland, parent data appears as declaration field groups with keys like mother.firstname, father.surname; the role is encoded in the field-key prefix, not a typed enum.
enrollment-status OpenCRVS has no concept of program enrollment. Civil registration records vital events; it does not track program participation.
eligibility-status No eligibility assessment in OpenCRVS. Eligibility determination is a social protection function with no CRVS equivalent.
benefit-frequency No benefit disbursement cycle in OpenCRVS. Payments in OpenCRVS are one-time service fees, not recurring benefit transfers.
benefit-modality No benefit type or modality concept in OpenCRVS. Cash, in-kind, and voucher transfers are social protection constructs absent from CRVS.
event-certainty No probability or certainty scoring in OpenCRVS. Used in v2 for targeting and assessment confidence levels with no CRVS analog.
conditionality-type Conditionalities (co-responsibilities attached to benefits) are a social protection concept with no equivalent in civil registration.
delivery-channel Delivery channel (how benefits reach beneficiaries) is a disbursement concept absent from OpenCRVS.
grievance-status OpenCRVS has no formal grievance management module. Complaints and appeals are social protection constructs.
grievance-type Same as grievance-status: no grievance classification in OpenCRVS.
group-role V2 group-role covers household membership roles in a social protection context. OpenCRVS captures family relationships as field-key prefixes in declaration data, not a shared enumeration.
group-type V2 group-type distinguishes household, family, farm, and other group structures used in social protection targeting. OpenCRVS has no equivalent grouping concept.
hazard-type Hazard classification is used in social protection for shock-responsive programming. No analog in civil registration.
referral-status Referral tracking between programs is a social protection construct with no civil registration equivalent.
event-severity Severity scoring (for shocks, grievances, or needs) is a social protection assessment concept absent from OpenCRVS.
targeting-approach Program targeting methodology is a social protection planning concept with no civil registration equivalent.
literacy OpenCRVS v2 (and the Farajaland reference config) does not include a literacy field. The UNSD binary literacy classification has no counterpart in v2 core or country configuration patterns.
employment-status OpenCRVS v2 does not include an employment status field. The ILO tripartite classification has no counterpart in v2 core.
status-in-employment OpenCRVS v2 does not include a status-in-employment field. The ILO ICSE-18 categories have no counterpart in v2 core.
crvs/registration-type Semantic mismatch. Our registration-type describes the timing and procedural route of registration (current, late, court_ordered, reconstruction). V2 EventDocument.type describes which event category is being registered (birth, death, marriage); that dimension maps to our civil-status-record-type vocabulary, not registration-type.