ConsentRecord
type: Class
label: ConsentRecord
comment: ConsentRecord documents the lawful basis for processing a data subject's personal data. Despite the name, consent is only one of six possible legal bases under GDPR Article 6(1); records with legal_basis other than consent still use this concept because the standards (W3C DPV, ISO/IEC TS 27560) converge on the name. Records are produced individually in office workflows and in bulk during community intake sessions; the schema does not distinguish these at v1.
comment: ConsentRecord documente la base juridique du traitement des données personnelles d'une personne concernée. Malgré son nom, le consentement n'est qu'une des six bases juridiques possibles au titre de l'article 6, paragraphe 1, du RGPD; les enregistrements dont la base juridique n'est pas le consentement utilisent aussi ce concept parce que les normes (W3C DPV, ISO/IEC TS 27560) convergent sur ce nom. Les enregistrements sont produits individuellement dans les circuits de bureau et en masse lors des sessions d'enregistrement communautaire; le schéma ne distingue pas ces deux cas en v1. @fr
comment: ConsentRecord documenta la base jurídica del tratamiento de los datos personales de un interesado. A pesar de su nombre, el consentimiento es solo una de las seis bases jurídicas posibles en virtud del artículo 6, apartado 1, del RGPD; los registros cuya base jurídica no es el consentimiento también utilizan este concepto porque las normas (W3C DPV, ISO/IEC TS 27560) convergen en este nombre. Los registros se producen individualmente en los flujos de oficina y en masa durante las sesiones de captación comunitaria; el esquema no distingue ambos casos en v1. @es
maturity: draft
exact match: https://w3id.org/dpv#ConsentRecord
close match: http://hl7.org/fhir/StructureDefinition/Consent

identifier
type: Property
label: Record identifier
label: Identifiant de l'enregistrement @fr
label: Identificador del registro @es
comment: A unique identifier for this record (e.g., a ULID, UUID, or program-assigned ID). Scoped to the record's namespace; not necessarily globally unique.
comment: Un identifiant unique pour cet enregistrement (par exemple, un ULID, UUID ou identifiant attribué par le programme). La portée est limitée à l'espace de nommage de l'enregistrement ; il n'est pas nécessairement unique à l'échelle mondiale. @fr
comment: Un identificador único para este registro (por ejemplo, un ULID, UUID o ID asignado por el programa). Su alcance se limita al espacio de nombres del registro; no es necesariamente único a nivel global. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single

identifiers
type: Property
label: Identifiers
label: Identifiants @fr
label: Identificadores @es
comment: Identifiers carried by this entity, such as national ID numbers, program IDs, or identifiers asserted by an identity document.
comment: Identifiants portés par cette entité, tels que numéros d'identité nationale, identifiants de programme ou identifiants attestés par un document d'identité. @fr
comment: Identificadores que porta esta entidad, como números de identidad nacional, ID de programa o identificadores acreditados por un documento de identidad. @es
maturity: normative
domain includes: ConsentRecord
range includes: https://publicschema.org/Identifier
cardinality: multiple
references: https://publicschema.org/Identifier

external id
type: Property
label: External ID
label: Identifiant externe @fr
label: Identificador externo @es
comment: Identifiers assigned by external systems (CRM, case management, etc.). Multiple allowed because a record may carry identifiers from several systems.
comment: Identifiants attribués par des systèmes externes (CRM, gestion de cas, etc.). Plusieurs valeurs sont autorisées car un enregistrement peut porter des identifiants provenant de plusieurs systèmes. @fr
comment: Identificadores asignados por sistemas externos (CRM, gestión de casos, etc.). Se permiten múltiples valores porque un registro puede tener identificadores de varios sistemas. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: multiple

consent record type
type: Property
label: Consent record type
label: Type d'enregistrement de consentement @fr
label: Tipo de registro de consentimiento @es
comment: Whether this record is an internal storage record or an externally-issued consent receipt. Internal records are the controller's working state; receipts are artefacts delivered to the data subject.
comment: Indique si cet enregistrement est un enregistrement de stockage interne ou un reçu de consentement émis de manière externe. Les enregistrements internes constituent l'état de travail du responsable du traitement ; les reçus sont des artefacts remis à la personne concernée. @fr
comment: Indica si este registro es un registro de almacenamiento interno o un recibo de consentimiento emitido externamente. Los registros internos representan el estado de trabajo del responsable del tratamiento; los recibos son artefactos entregados a la persona interesada. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single
vocabulary: https://publicschema.org/vocab/consent-record-type

schema version
type: Property
label: Schema version
label: Version du schéma @fr
label: Versión del esquema @es
comment: Identifies the version of the PublicSchema (or other) consent record schema this instance conforms to. Enables forward migration tooling. Typically a dereferenceable URI, for example 'https://publicschema.org/ConsentRecord/v1'.
comment: Identifie la version du schéma d'enregistrement de consentement PublicSchema (ou autre) auquel cette instance est conforme. Permet les outils de migration vers les versions ultérieures. Il s'agit généralement d'un URI déréférençable, par exemple 'https://publicschema.org/ConsentRecord/v1'. @fr
comment: Identifica la versión del esquema de registro de consentimiento de PublicSchema (u otro) al que se ajusta esta instancia. Permite las herramientas de migración hacia versiones posteriores. Normalmente es un URI desreferenciable, por ejemplo 'https://publicschema.org/ConsentRecord/v1'. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:anyURI
cardinality: single

conforms to
type: Property
label: Conforms to
label: Conforme à @fr
label: Conforme a @es
comment: URIs of standards or specifications this record conforms to (ISO/IEC TS 27560, Kantara Consent Receipt, W3C DPV, etc.). Purely declarative; no validation is performed against the cited standards at schema level.
comment: URI des normes ou spécifications auxquelles cet enregistrement est conforme (ISO/IEC TS 27560, Kantara Consent Receipt, W3C DPV, etc.). Purement déclaratif ; aucune validation n'est effectuée par rapport aux normes citées au niveau du schéma. @fr
comment: URIs de las normas o especificaciones con las que este registro es conforme (ISO/IEC TS 27560, Kantara Consent Receipt, W3C DPV, etc.). Puramente declarativo; no se realiza ninguna validación contra las normas citadas a nivel de esquema. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:anyURI
cardinality: multiple

created at
type: Property
label: Created at
label: Créé le @fr
label: Creado el @es
comment: System-generated timestamp marking when this record was persisted. This is the digitisation timestamp, not the consent-giving date. Distinct from 'signed_date' (the day the data subject indicated consent) and 'effective_date' (when the record becomes operative). For paper-first workflows the three timestamps may all differ.
comment: Horodatage généré par le système indiquant quand cet enregistrement a été conservé. Il s'agit de l'horodatage de numérisation, et non de la date de consentement. Distinct de 'signed_date' (le jour où la personne concernée a indiqué son consentement) et de 'effective_date' (quand l'enregistrement entre en vigueur). Pour les flux de travail papier, les trois horodatages peuvent tous différer. @fr
comment: Marca de tiempo generada por el sistema que indica cuándo se almacenó este registro. Es la marca de tiempo de digitalización, no la fecha de otorgamiento del consentimiento. Distinta de 'signed_date' (el día en que la persona interesada indicó su consentimiento) y de 'effective_date' (cuando el registro entra en vigor). Para los flujos de trabajo en papel, las tres marcas de tiempo pueden diferir. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:dateTime
cardinality: single

collection session ref
type: Property
label: Collection session reference
label: Référence de session de collecte @fr
label: Referencia de sesión de recopilación @es
comment: Opaque correlation key for records produced in the same intake session. A 'CollectionSession' concept is planned in ADR-013 and will formalize this; in v1 adopters use a free-form session id (e.g., a field-visit id).
comment: Clé de corrélation opaque pour les enregistrements produits lors de la même session d'enregistrement. Un concept 'CollectionSession' est prévu dans ADR-013 et formalisera cela ; dans la version 1, les adoptants utilisent un identifiant de session libre (par exemple, un identifiant de visite sur le terrain). @fr
comment: Clave de correlación opaca para los registros producidos en la misma sesión de registro. Un concepto 'CollectionSession' está planificado en ADR-013 y lo formalizará; en la versión 1, los adoptantes utilizan un identificador de sesión de forma libre (por ejemplo, un identificador de visita de campo). @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single

data subject
type: Property
label: Data subject
label: Personne concernée @fr
label: Persona interesada @es
comment: The natural person (or occasionally group) whose personal data is being processed under this record. Party is the abstract supertype covering Person and Group. Farm is excluded: farms are not natural persons or legal beneficiaries under any data protection law. When 'data_subject' is a Group, 'delegation_type' must not be 'self'.
comment: La personne physique (ou parfois le groupe) dont les données personnelles sont traitées dans le cadre de cet enregistrement. Party est le supertype abstrait couvrant Person et Group. Farm est exclu : les exploitations agricoles ne sont pas des personnes physiques ni des bénéficiaires légaux au titre d'aucune loi sur la protection des données. Lorsque 'data_subject' est un Group, 'delegation_type' ne doit pas être 'self'. @fr
comment: La persona física (o en ocasiones el grupo) cuyos datos personales se tratan bajo este registro. Party es el supertipo abstracto que abarca Person y Group. Farm está excluido: las explotaciones agrícolas no son personas físicas ni beneficiarias legales bajo ninguna ley de protección de datos. Cuando 'data_subject' es un Group, 'delegation_type' no debe ser 'self'. @es
maturity: draft
domain includes: ConsentRecord
range includes: https://publicschema.org/Party
cardinality: single
references: https://publicschema.org/Party
immutable after status: given
close match: https://w3id.org/dpv#hasDataSubject

controllers
type: Property
label: Controllers
label: Responsables du traitement @fr
label: Responsables del tratamiento @es
comment: Organizations determining the purposes and means of processing. Cardinality multiple covers joint controllership (two or more organizations jointly responsible under GDPR Art 26 or equivalent national provisions); the normative case is one controller. See 'recipient_role' to distinguish processors from controllers among recipients.
comment: Organisations qui déterminent les finalités et les moyens du traitement. La cardinalité multiple couvre la responsabilité conjointe (deux organisations ou plus conjointement responsables au titre de l'article 26 du RGPD ou des dispositions nationales équivalentes) ; le cas normatif est un seul responsable du traitement. Voir 'recipient_role' pour distinguer les sous-traitants des responsables parmi les destinataires. @fr
comment: Organizaciones que determinan los fines y los medios del tratamiento. La cardinalidad múltiple cubre la corresponsabilidad (dos o más organizaciones conjuntamente responsables en virtud del Art. 26 del RGPD o disposiciones nacionales equivalentes); el caso normativo es un único responsable del tratamiento. Véase 'recipient_role' para distinguir los encargados del tratamiento de los responsables entre los destinatarios. @es
maturity: draft
domain includes: ConsentRecord
range includes: https://publicschema.org/Organization
cardinality: multiple
references: https://publicschema.org/Organization
immutable after status: given
close match: https://w3id.org/dpv#hasDataController

recipients
type: Property
label: Recipients
label: Destinataires @fr
label: Destinatarios @es
comment: Organizations that receive the data or its derivatives. Includes processors, joint controllers, and independent controllers. See the parallel property 'recipient_role' for the role of each recipient.
comment: Organisations qui reçoivent les données ou leurs dérivés. Comprend les sous-traitants, les responsables conjoints du traitement et les responsables indépendants du traitement. Voir la propriété parallèle 'recipient_role' pour le rôle de chaque destinataire. @fr
comment: Organizaciones que reciben los datos o sus derivados. Incluye encargados del tratamiento, corresponsables del tratamiento y responsables del tratamiento independientes. Véase la propiedad paralela 'recipient_role' para conocer el rol de cada destinatario. @es
maturity: draft
domain includes: ConsentRecord
range includes: https://publicschema.org/Organization
cardinality: multiple
references: https://publicschema.org/Organization
immutable after status: given
close match: https://w3id.org/dpv#hasRecipient

recipient role
type: Property
label: Recipient role
label: Rôle du destinataire @fr
label: Rol del destinatario @es
comment: The role each recipient plays: processor, joint-controller, independent-controller, or sub-processor. Known limitation: v1 uses positional alignment with 'recipients' (the Nth recipient_role value corresponds to the Nth recipient). A future ADR will reify per-link roles. Adopters that cannot guarantee positional alignment should use only one recipient and one role per record, or represent the relationship externally.
comment: Le rôle joué par chaque destinataire : sous-traitant, responsable conjoint du traitement, responsable indépendant du traitement ou sous-traitant de rang inférieur. Limitation connue : la version 1 utilise un alignement positionnel avec 'recipients' (la Nième valeur de recipient_role correspond au Nième destinataire). Un futur ADR réifiera les rôles par lien. Les adoptants qui ne peuvent pas garantir l'alignement positionnel devraient utiliser un seul destinataire et un seul rôle par enregistrement, ou représenter la relation de manière externe. @fr
comment: El rol que desempeña cada destinatario: encargado del tratamiento, corresponsable del tratamiento, responsable independiente del tratamiento o subencargado del tratamiento. Limitación conocida: la versión 1 usa alineación posicional con 'recipients' (el N-ésimo valor de recipient_role corresponde al N-ésimo destinatario). Un futuro ADR reificará los roles por enlace. Los adoptantes que no puedan garantizar la alineación posicional deben usar un único destinatario y un único rol por registro, o representar la relación externamente. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: multiple
vocabulary: https://publicschema.org/vocab/recipient-role
immutable after status: given

allowed recipient categories
type: Property
label: Allowed recipient categories
label: Catégories de destinataires autorisées @fr
label: Categorías de destinatarios permitidos @es
comment: Categories of organizations permitted to receive the data, as described to the data subject in the notice. Complements 'recipients', which names specific organizations. Use when specific recipient organizations are not pre-identified at the time of consent.
comment: Catégories d'organisations autorisées à recevoir les données, telles que décrites à la personne concernée dans l'avis. Complète 'recipients', qui désigne des organisations spécifiques. À utiliser lorsque les organisations destinataires spécifiques ne sont pas préidentifiées au moment du consentement. @fr
comment: Categorías de organizaciones autorizadas a recibir los datos, tal como se describen a la persona interesada en el aviso. Complementa 'recipients', que nombra organizaciones específicas. Se usa cuando las organizaciones destinatarias específicas no están preidentificadas en el momento del consentimiento. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: multiple
vocabulary: https://publicschema.org/vocab/organization-type
immutable after status: given

indicated by
type: Property
label: Indicated by
label: Indiqué par @fr
label: Indicado por @es
comment: The agent (usually a Person, sometimes a SoftwareAgent) who indicated the consent act. For self-consent, the same Person as 'data_subject'. For delegated consent, a legal guardian, parent, or representative. See 'delegation_type' to describe the delegation basis.
comment: L'agent (généralement une Person, parfois un SoftwareAgent) qui a indiqué l'acte de consentement. Pour le consentement propre, la même Person que 'data_subject'. Pour le consentement délégué, un tuteur légal, un parent ou un représentant. Voir 'delegation_type' pour décrire la base de la délégation. @fr
comment: El agente (generalmente una Person, a veces un SoftwareAgent) que indicó el acto de consentimiento. Para el consentimiento propio, la misma Person que 'data_subject'. Para el consentimiento delegado, un tutor legal, padre o representante. Véase 'delegation_type' para describir la base de la delegación. @es
maturity: draft
domain includes: ConsentRecord
range includes: https://publicschema.org/Agent
cardinality: single
references: https://publicschema.org/Agent

delegation type
type: Property
label: Delegation type
label: Type de délégation @fr
label: Tipo de delegación @es
comment: The basis under which 'indicated_by' acts on behalf of 'data_subject'. The value 'self' indicates no delegation: the data subject indicated their own consent. All other values indicate that a third party acted on the data subject's behalf.
comment: La base selon laquelle 'indicated_by' agit au nom de 'data_subject'. La valeur 'self' indique l'absence de délégation : la personne concernée a indiqué son propre consentement. Toutes les autres valeurs indiquent qu'un tiers a agi au nom de la personne concernée. @fr
comment: La base bajo la cual 'indicated_by' actúa en nombre de 'data_subject'. El valor 'self' indica que no hay delegación: la persona interesada indicó su propio consentimiento. Todos los demás valores indican que un tercero actuó en nombre de la persona interesada. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single
vocabulary: https://publicschema.org/vocab/delegation-type

witnessed by
type: Property
label: Witnessed by
label: Témoigné par @fr
label: Atestiguado por @es
comment: Persons who witnessed the data subject's indication of consent. Field-critical for verbal consent ('collection_medium = verbal') and for biometric-as-signature ('consent_expression = opt-in-biometric') and witnessed signatures ('consent_expression = opt-in-witnessed'); adopters should populate this field even when the data-entry UI does not require it.
comment: Personnes qui ont été témoins de l'indication du consentement par la personne concernée. Essentiel sur le terrain pour le consentement verbal ('collection_medium = verbal') et pour la biométrie en tant que signature ('consent_expression = opt-in-biometric') et les signatures témoignées ('consent_expression = opt-in-witnessed') ; les adoptants devraient renseigner ce champ même si l'interface de saisie de données ne l'exige pas. @fr
comment: Personas que fueron testigos de la indicación de consentimiento de la persona interesada. Crítico en el campo para el consentimiento verbal ('collection_medium = verbal') y para la biometría como firma ('consent_expression = opt-in-biometric') y las firmas presenciadas ('consent_expression = opt-in-witnessed'); los adoptantes deben completar este campo incluso cuando la interfaz de entrada de datos no lo requiera. @es
maturity: draft
domain includes: ConsentRecord
range includes: https://publicschema.org/Person
cardinality: multiple
references: https://publicschema.org/Person

purposes
type: Property
label: Processing purposes
label: Finalités du traitement @fr
label: Finalidades del tratamiento @es
comment: Values are W3C DPV URIs, normatively subclasses of `dpv:Purpose` (e.g., `dpv:ServiceProvision`, `dpv:ResearchAndDevelopment`). Each URI identifies a purpose for which personal data is processed under this record. See `docs/dpv-vocabulary-reference.md` for a curated starter list.
comment: Les valeurs sont des URI W3C DPV, sous-classes normatives de `dpv:Purpose` (par exemple `dpv:ServiceProvision`, `dpv:ResearchAndDevelopment`). Chaque URI identifie une finalité pour laquelle des données personnelles sont traitées dans le cadre de cet enregistrement. Voir `docs/dpv-vocabulary-reference.md` pour une liste de démarrage. @fr
comment: Los valores son URI W3C DPV, subclases normativas de `dpv:Purpose` (por ejemplo, `dpv:ServiceProvision`, `dpv:ResearchAndDevelopment`). Cada URI identifica una finalidad para la cual se procesan datos personales en este registro. Consulte `docs/dpv-vocabulary-reference.md` para una lista de inicio seleccionada. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:anyURI
cardinality: multiple
immutable after status: given
close match: https://w3id.org/dpv#hasPurpose

personal data categories
type: Property
label: Personal data categories
label: Catégories de données personnelles @fr
label: Categorías de datos personales @es
comment: Values are W3C DPV URIs, normatively subclasses of `dpv:PersonalData` (from the DPV core; the DPV-PD extension defines finer taxa). Cross-reference: this is distinct from biometric capture method, which is `consent_expression = opt-in-biometric` on this record. Biometric data categories are values of this property (e.g., a URI for fingerprint, face image).
comment: Les valeurs sont des URI W3C DPV, sous-classes normatives de `dpv:PersonalData` (du noyau DPV ; l'extension DPV-PD définit des taxons plus fins). À ne pas confondre avec la méthode de collecte biométrique, qui est `consent_expression = opt-in-biometric` sur cet enregistrement. Les catégories de données biométriques sont des valeurs de cette propriété (par exemple, un URI pour empreinte digitale, image faciale). @fr
comment: Los valores son URI W3C DPV, subclases normativas de `dpv:PersonalData` (del núcleo DPV; la extensión DPV-PD define taxones más específicos). No confundir con el método de captura biométrica, que es `consent_expression = opt-in-biometric` en este registro. Las categorías de datos biométricos son valores de esta propiedad (por ejemplo, un URI para huella dactilar, imagen facial). @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:anyURI
cardinality: multiple
immutable after status: given
close match: https://w3id.org/dpv#hasPersonalData

processing operations
type: Property
label: Processing operations
label: Opérations de traitement @fr
label: Operaciones de tratamiento @es
comment: Values are W3C DPV URIs, normatively subclasses of `dpv:Processing` (e.g., `dpv:Collect`, `dpv:Store`, `dpv:Share`). Describes the operations being consented to. Cross-reference GDPR Art 4(2) for the definition of 'processing'.
comment: Les valeurs sont des URI W3C DPV, sous-classes normatives de `dpv:Processing` (par exemple `dpv:Collect`, `dpv:Store`, `dpv:Share`). Décrit les opérations faisant l'objet du consentement. Référence : RGPD Art 4(2) pour la définition du terme 'traitement'. @fr
comment: Los valores son URI W3C DPV, subclases normativas de `dpv:Processing` (por ejemplo, `dpv:Collect`, `dpv:Store`, `dpv:Share`). Describe las operaciones para las que se otorga el consentimiento. Referencia: RGPD Art 4(2) para la definición de 'tratamiento'. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:anyURI
cardinality: multiple
immutable after status: given
close match: https://w3id.org/dpv#hasProcessing

legal basis
type: Property
label: Legal basis
label: Base juridique @fr
label: Base legal @es
comment: The legal basis under GDPR Art 6(1) (or equivalent law) authorizing the processing. Cardinality multiple because a single record may rely on more than one basis; normative usage on a ConsentRecord is one basis. On a PrivacyNotice, multiple bases may coexist if the notice covers multiple processing operations. Field-critical: populate even if your UI does not require it.
comment: La base juridique au sens de l'Art 6(1) du RGPD (ou équivalent national) autorisant le traitement. Cardinalité multiple car un enregistrement peut s'appuyer sur plus d'une base ; l'usage normatif sur un ConsentRecord est d'une base. Sur un PrivacyNotice, plusieurs bases peuvent coexister si l'avis couvre plusieurs opérations de traitement. Champ critique : à renseigner même si votre interface ne l'exige pas. @fr
comment: La base legal conforme al Art 6(1) del RGPD (o ley equivalente) que autoriza el tratamiento. Cardinalidad múltiple porque un registro puede apoyarse en más de una base; el uso normativo en un ConsentRecord es una sola base. En un PrivacyNotice, múltiples bases pueden coexistir si el aviso cubre varias operaciones de tratamiento. Campo crítico: completar incluso si su interfaz no lo exige. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: multiple
vocabulary: https://publicschema.org/vocab/legal-basis
immutable after status: given
close match: https://w3id.org/dpv#hasLegalBasis

special category basis
type: Property
label: Special category basis
label: Base catégorie spéciale @fr
label: Base de categoría especial @es
comment: When `personal_data_categories` includes a special category (GDPR Art 9 / `dpv:SpecialCategoryPersonalData`), this property identifies the Art 9(2) basis that authorizes processing. Required when Art 9 data is in scope; omitted otherwise. Field-critical: populate even if your UI does not require it.
comment: Lorsque `personal_data_categories` comprend une catégorie particulière (RGPD Art 9 / `dpv:SpecialCategoryPersonalData`), cette propriété identifie la base au titre de l'Art 9(2) qui autorise le traitement. Obligatoire lorsque des données Art 9 sont concernées ; omis sinon. Champ critique : à renseigner même si votre interface ne l'exige pas. @fr
comment: Cuando `personal_data_categories` incluye una categoría especial (RGPD Art 9 / `dpv:SpecialCategoryPersonalData`), esta propiedad identifica la base del Art 9(2) que autoriza el tratamiento. Obligatorio cuando hay datos Art 9 en alcance; omitido en caso contrario. Campo crítico: completar incluso si su interfaz no lo exige. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: multiple
vocabulary: https://publicschema.org/vocab/special-category-basis
immutable after status: given

legal basis reference
type: Property
label: Legal basis reference
label: Référence de la base juridique @fr
label: Referencia de la base legal @es
comment: Jurisdiction-specific legal reference (e.g., a national act, article, or case citation) supporting `legal_basis`. Free-form string; use per-jurisdiction norms. Example: 'Ley 1581 de 2012, Art 6(a)' in Colombia.
comment: Référence juridique propre à une juridiction (par exemple, une loi nationale, un article ou une citation jurisprudentielle) étayant `legal_basis`. Chaîne libre ; utiliser les normes de la juridiction concernée. Exemple : 'Ley 1581 de 2012, Art 6(a)' en Colombie. @fr
comment: Referencia legal específica de la jurisdicción (por ejemplo, una ley nacional, artículo o cita jurisprudencial) que sustenta `legal_basis`. Texto libre; usar las normas de la jurisdicción correspondiente. Ejemplo: 'Ley 1581 de 2012, Art 6(a)' en Colombia. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: multiple

joint controller arrangement ref
type: Property
label: Joint controller arrangement
label: Accord de responsabilité conjointe @fr
label: Acuerdo de corresponsabilidad @es
comment: Reference to the joint-controllership arrangement between the parties listed in `controllers` (GDPR Art 26). Typically a URI to a published arrangement; a local identifier is acceptable if URI is not applicable. Populated when cardinality of `controllers` is greater than one.
comment: Référence à l'accord de responsabilité conjointe entre les parties listées dans `controllers` (RGPD Art 26). Généralement un URI vers un accord publié ; un identifiant local est acceptable si un URI n'est pas applicable. À renseigner lorsque la cardinalité de `controllers` est supérieure à un. @fr
comment: Referencia al acuerdo de corresponsabilidad entre las partes listadas en `controllers` (RGPD Art 26). Típicamente un URI hacia un acuerdo publicado; un identificador local es aceptable si no aplica un URI. Completar cuando la cardinalidad de `controllers` es mayor que uno. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single

notice ref
type: Property
label: Privacy notice
label: Avis de confidentialité @fr
label: Aviso de privacidad @es
comment: The PrivacyNotice record that was presented to the data subject at the time of consent. Anchors the record to a specific notice version.
comment: L'enregistrement PrivacyNotice qui a été présenté à la personne concernée au moment du consentement. Ancre l'enregistrement à une version précise de l'avis. @fr
comment: El registro PrivacyNotice que fue presentado a la persona interesada en el momento del consentimiento. Vincula el registro a una versión específica del aviso. @es
maturity: draft
domain includes: ConsentRecord
range includes: https://publicschema.org/PrivacyNotice
cardinality: single
references: https://publicschema.org/PrivacyNotice
immutable after status: given

notice version
type: Property
label: Notice version
label: Version de l'avis @fr
label: Versión del aviso @es
comment: Denormalized snapshot of the PrivacyNotice `version` at the time of consent. Pinned by design: if the PrivacyNotice is later corrected or reversioned, this value MUST NOT be updated. Enables demonstrating which notice text the data subject actually saw (GDPR Art 7(1) demonstrability).
comment: Instantané dénormalisé de la valeur `version` du PrivacyNotice au moment du consentement. Épinglé par conception : si le PrivacyNotice est ultérieurement corrigé ou reversionné, cette valeur NE DOIT PAS être mise à jour. Permet de démontrer quel texte de l'avis la personne concernée a effectivement vu (RGPD Art 7(1), démontabilité). @fr
comment: Instantánea desnormalizada de la `version` del PrivacyNotice en el momento del consentimiento. Fijada por diseño: si el PrivacyNotice es corregido o reversionado posteriormente, este valor NO DEBE actualizarse. Permite demostrar qué texto del aviso vio realmente la persona interesada (RGPD Art 7(1), demostrabilidad). @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single
immutable after status: given

notice presentation language
type: Property
label: Notice presentation language
label: Langue de présentation de l'avis @fr
label: Idioma de presentación del aviso @es
comment: The ISO 639-3 language code in which the notice was presented to the data subject at the time of consent. Field-critical: populate even if the UI does not require it. When the notice is available in multiple languages (see PrivacyNotice `available_languages`), this records which one the data subject actually saw. For witnessed verbal consent, this records the language of the verbal delivery.
comment: Le code de langue ISO 639-3 dans lequel l'avis a été présenté à la personne concernée au moment du consentement. Champ critique : à renseigner même si l'interface ne l'exige pas. Lorsque l'avis est disponible en plusieurs langues (voir PrivacyNotice `available_languages`), ce champ enregistre celle que la personne concernée a effectivement vue. Pour le consentement verbal avec témoin, il enregistre la langue de la délivrance verbale. @fr
comment: El código de idioma ISO 639-3 en que el aviso fue presentado a la persona interesada en el momento del consentimiento. Campo crítico: completar incluso si la interfaz no lo exige. Cuando el aviso está disponible en varios idiomas (véase PrivacyNotice `available_languages`), este campo registra cuál vio realmente la persona interesada. Para el consentimiento verbal presenciado, registra el idioma de la entrega verbal. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single
vocabulary: https://publicschema.org/vocab/language

effective date
type: Property
label: Effective date
label: Date d'entrée en vigueur @fr
label: Fecha de vigencia @es
comment: The date on which this record or notice becomes operative. On a ConsentRecord, it may be later than signed_date (the day the data subject indicated consent) and later than created_at (the digitisation timestamp); for paper workflows, signed_date is the day of the paper signature and effective_date is typically the same day but may be delayed by program logic. On a PrivacyNotice, it is the date from which this notice version applies; records collected before this date reference the superseded version via supersedes_ref.
comment: La date à laquelle cet enregistrement ou cet avis devient opérationnel. Sur un ConsentRecord, elle peut être postérieure à signed_date (le jour où la personne concernée a indiqué son consentement) et à created_at (l'horodatage de numérisation); pour les flux sur support papier, signed_date est le jour de la signature du formulaire papier et effective_date est généralement le même jour, mais peut être retardée par la logique du programme. Sur un PrivacyNotice, il s'agit de la date à partir de laquelle cette version de l'avis s'applique; les enregistrements recueillis avant cette date renvoient à la version antérieure via supersedes_ref. @fr
comment: La fecha en que este registro o aviso se vuelve operativo. En un ConsentRecord, puede ser posterior a signed_date (el día en que la persona afectada indicó su consentimiento) y a created_at (la marca de tiempo de digitalización); en flujos en papel, signed_date es el día de la firma del formulario en papel y effective_date es normalmente el mismo día, pero puede retrasarse según la lógica del programa. En un PrivacyNotice, es la fecha a partir de la cual se aplica esta versión del aviso; los registros recogidos antes de esa fecha remiten a la versión anterior mediante supersedes_ref. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:date
cardinality: single
immutable after status: given

signed date
type: Property
label: Signed date
label: Date de signature @fr
label: Fecha de firma @es
comment: The day the data subject indicated consent. For paper workflows, the day the paper form was signed; for witnessed verbal, the day of the verbal indication; for digital, the day of the click-through. MUST NOT be confused with created_at (the digitisation timestamp, which may be days or weeks later in paper-first programs) or effective_date (when the record becomes operative). Field-critical: populate even if the UI only captures created_at.
comment: Le jour où la personne concernée a indiqué son consentement. Pour les flux sur support papier, le jour de la signature du formulaire papier; pour le consentement verbal avec témoin, le jour de l'indication verbale; pour le numérique, le jour du clic de validation. NE PAS confondre avec created_at (l'horodatage de numérisation, qui peut intervenir plusieurs jours ou semaines plus tard dans les programmes prioritairement sur papier) ni avec effective_date (la date d'entrée en vigueur de l'enregistrement). Critique pour la collecte: à renseigner même si l'interface ne capture que created_at. @fr
comment: El día en que la persona afectada indicó su consentimiento. En flujos en papel, el día en que se firmó el formulario; para consentimiento verbal con testigo, el día de la indicación verbal; en digital, el día del clic de aceptación. NO debe confundirse con created_at (la marca de tiempo de digitalización, que puede ser días o semanas posterior en programas con soporte papel) ni con effective_date (cuando el registro se vuelve operativo). Crítico para la recolección: registrar aunque la interfaz solo capture created_at. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:date
cardinality: single

expiry date
type: Property
label: Expiry date
label: Date d'expiration @fr
label: Fecha de expiración @es
comment: The date on which this record or document expires or becomes invalid.
comment: La date à laquelle cet enregistrement ou document expire ou devient invalide. @fr
comment: La fecha en que este registro o documento expira o deja de ser válido. @es
maturity: normative
domain includes: ConsentRecord
range includes: xsd:date
cardinality: single

jurisdiction
type: Property
label: Jurisdiction
label: Juridiction @fr
label: Jurisdicción @es
comment: ISO 3166-1 alpha-2 country code of the jurisdiction whose data protection law governs this record. Cardinality single: multi-jurisdictional records are the rare case; a follow-on ADR will lift cardinality if adopters hit it. Under joint controllership, this is the lead controller's primary establishment jurisdiction.
comment: Code pays ISO 3166-1 alpha-2 de la juridiction dont la législation sur la protection des données régit cet enregistrement. Cardinalité simple: les enregistrements multi-juridictionnels sont rares; un ADR ultérieur lèvera la contrainte si les adoptants en ont besoin. En cas de responsabilité conjointe, il s'agit de la juridiction du siège principal du responsable chef de file. @fr
comment: Código de país ISO 3166-1 alpha-2 de la jurisdicción cuya ley de protección de datos rige este registro. Cardinalidad simple: los registros multi-jurisdiccionales son el caso excepcional; un ADR posterior podrá ampliar la cardinalidad si los adoptantes lo necesitan. En caso de responsabilidad conjunta, corresponde a la jurisdicción de establecimiento principal del responsable principal. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single
vocabulary: https://publicschema.org/vocab/country
immutable after status: given

collection medium
type: Property
label: Collection medium
label: Support de collecte @fr
label: Medio de recopilación @es
comment: The medium through which consent was collected: paper, electronic, verbal, or mixed. Paper is the dominant medium in humanitarian and rural social-protection programs; electronic systems that ignore paper workflows exclude real practice. Field-critical: populate even if the system defaults to assuming electronic.
comment: Le support par lequel le consentement a été recueilli: papier, électronique, verbal ou mixte. Le papier est le support dominant dans les programmes humanitaires et de protection sociale en milieu rural; les systèmes électroniques qui ignorent les flux papier excluent la pratique réelle. Critique pour la collecte: à renseigner même si le système suppose par défaut un support électronique. @fr
comment: El medio a través del cual se recopiló el consentimiento: papel, electrónico, verbal o mixto. El papel es el medio dominante en programas humanitarios y de protección social en zonas rurales; los sistemas electrónicos que ignoran los flujos en papel excluyen la práctica real. Crítico para la recolección: registrar aunque el sistema asuma por defecto el medio electrónico. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single
vocabulary: https://publicschema.org/vocab/collection-medium
immutable after status: given

consent expression
type: Property
label: Consent expression
label: Expression du consentement @fr
label: Expresión del consentimiento @es
comment: The form in which consent was expressed: explicit opt-in, signed opt-in, witnessed opt-in, biometric opt-in, opt-out, or implied. IMPORTANT cross-reference: opt-in-biometric refers to the capture method (for example, fingerprint as signature), not to the data category. Processing biometric data is expressed via personal_data_categories (a URI from dpv-pd or equivalent).
comment: La forme sous laquelle le consentement a été exprimé: opt-in explicite, opt-in signé, opt-in avec témoin, opt-in biométrique, opt-out ou implicite. Référence croisée importante: opt-in-biometric désigne la méthode de capture (par exemple, empreinte digitale comme signature), et non la catégorie de données. Le traitement de données biométriques est exprimé via personal_data_categories (un URI de dpv-pd ou équivalent). @fr
comment: La forma en que se expresó el consentimiento: opt-in explícito, opt-in firmado, opt-in con testigo, opt-in biométrico, opt-out o implícito. Referencia cruzada importante: opt-in-biometric se refiere al método de captura (por ejemplo, huella dactilar como firma), no a la categoría de datos. El tratamiento de datos biométricos se expresa mediante personal_data_categories (un URI de dpv-pd o equivalente). @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single
vocabulary: https://publicschema.org/vocab/consent-expression
immutable after status: given

evidence ref
type: Property
label: Evidence reference
label: Référence aux pièces justificatives @fr
label: Referencia a evidencias @es
comment: References to the evidence artefact(s) backing this record. Values are typically URIs (for example, a signed object-store URL) but a local identifier is acceptable when a URI is not applicable. Artefact types include: PDF scans of signed paper forms, photographs of consent records, audio recordings of witnessed verbal consent, and signed digital documents. At least one evidence_ref is strongly recommended for collection_medium in {paper, verbal, mixed}. Field-critical: capture even when the artefact URI is only available after upload.
comment: Références aux artefacts de preuve appuyant cet enregistrement. Les valeurs sont généralement des URI (par exemple, une URL signée vers un objet stocké) mais un identifiant local est acceptable si un URI n'est pas applicable. Les types d'artefacts comprennent: scans PDF de formulaires papier signés, photos de registres de consentement, enregistrements audio de consentements verbaux avec témoin, et documents numériques signés. Au moins un evidence_ref est fortement recommandé pour collection_medium dans {papier, verbal, mixte}. Critique pour la collecte: à renseigner même si l'URI de l'artefact n'est disponible qu'après le téléversement. @fr
comment: Referencias a los artefactos de evidencia que respaldan este registro. Los valores son típicamente URIs (por ejemplo, una URL firmada de almacenamiento de objetos), pero un identificador local es aceptable cuando no aplica una URI. Los tipos de artefactos incluyen: escaneos PDF de formularios en papel firmados, fotografías de registros de consentimiento, grabaciones de audio de consentimientos verbales con testigo, y documentos digitales firmados. Se recomienda al menos un evidence_ref cuando collection_medium es {paper, verbal, mixed}. Crítico para la recolección: registrar aunque la URI del artefacto solo esté disponible tras la carga. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: multiple

verified by
type: Property
label: Verified by
label: Vérifié par @fr
label: Verificado por @es
comment: Person who verified the consent record (for example, a case worker reviewing a scanned paper form, or an auditor confirming a sample of records). Distinct from witnessed_by (who observed the consent act) and from indicated_by (who expressed the consent). Optional but valuable for auditable workflows.
comment: Personne ayant vérifié l'enregistrement de consentement (par exemple, un travailleur social examinant un formulaire papier numérisé, ou un auditeur confirmant un échantillon d'enregistrements). À distinguer de witnessed_by (qui a observé l'acte de consentement) et de indicated_by (qui a exprimé le consentement). Facultatif mais précieux pour les flux de travail auditables. @fr
comment: Persona que verificó el registro de consentimiento (por ejemplo, un trabajador social que revisa un formulario en papel escaneado, o un auditor que confirma una muestra de registros). Distinto de witnessed_by (quien observó el acto de consentimiento) y de indicated_by (quien expresó el consentimiento). Opcional pero valioso para flujos de trabajo auditables. @es
maturity: draft
domain includes: ConsentRecord
range includes: https://publicschema.org/Person
cardinality: single
references: https://publicschema.org/Person

verified date
type: Property
label: Verification date
label: Date de vérification @fr
label: Fecha de verificación @es
comment: Date of the verification act performed by verified_by. Typically after signed_date.
comment: Date de l'acte de vérification effectué par verified_by. Généralement postérieure à signed_date. @fr
comment: Fecha del acto de verificación realizado por verified_by. Típicamente posterior a signed_date. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:date
cardinality: single

status
type: Property
label: Status
label: Statut @fr
label: Estado @es
comment: The current lifecycle state of the record: requested, given, renewed, refused, withdrawn, revoked, expired, invalidated, or unknown. Transitions follow the state machine documented in docs/consent-lifecycle.md. given triggers the immutability of terms-fields (data_subject, controllers, recipients, purposes, etc.); see the per-property immutable_after_status annotation.
comment: L'état actuel du cycle de vie de l'enregistrement: demandé, accordé, renouvelé, refusé, retiré, révoqué, expiré, invalidé ou inconnu. Les transitions suivent la machine d'état documentée dans docs/consent-lifecycle.md. given déclenche l'immutabilité des champs de conditions (data_subject, controllers, recipients, purposes, etc.); voir l'annotation immutable_after_status sur chaque propriété concernée. @fr
comment: El estado actual del ciclo de vida del registro: solicitado, otorgado, renovado, rechazado, retirado, revocado, expirado, invalidado o desconocido. Las transiciones siguen la máquina de estados documentada en docs/consent-lifecycle.md. given activa la inmutabilidad de los campos de condiciones (data_subject, controllers, recipients, purposes, etc.); consulte la anotación immutable_after_status en cada propiedad correspondiente. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single
vocabulary: https://publicschema.org/vocab/consent-status
close match: https://w3id.org/dpv#hasConsentStatus

withdrawal channel
type: Property
label: Withdrawal channel
label: Canal de retrait @fr
label: Canal de retiro @es
comment: The channel through which the data subject withdrew consent: web, mobile, api, paper, verbal, in-person-office, community-worker, or other. Recorded when status transitions to withdrawn. Field-critical: adopters should record the channel even when the withdrawal arrives through a non-digital path.
comment: Le canal par lequel la personne concernée a retiré son consentement: web, mobile, api, papier, verbal, en-personne-bureau, agent-communautaire ou autre. À renseigner lorsque le statut passe à withdrawn. Critique pour la collecte: les adoptants doivent enregistrer le canal même lorsque le retrait arrive par une voie non numérique. @fr
comment: El canal por el que la persona afectada retiró su consentimiento: web, móvil, api, papel, verbal, en-persona-oficina, agente-comunitario u otro. Se registra cuando el estado pasa a withdrawn. Crítico para la recolección: los adoptantes deben registrar el canal incluso cuando el retiro llega por una vía no digital. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single
vocabulary: https://publicschema.org/vocab/withdrawal-channel

withdrawal uri
type: Property
label: Withdrawal URI
label: URI de retrait @fr
label: URI de retiro @es
comment: URI exposed to the data subject for self-service withdrawal of consent. Required by GDPR Art 7(3) ('it shall be as easy to withdraw as to give consent'). Populated on the ConsentRecord when the controller offers a self-service endpoint.
comment: URI exposée à la personne concernée pour le retrait autonome de son consentement. Exigée par l'article 7(3) du RGPD ('il doit être aussi facile de retirer son consentement que de le donner'). À renseigner sur le ConsentRecord lorsque le responsable du traitement propose un point d'accès en libre-service. @fr
comment: URI expuesta a la persona afectada para el retiro autónomo de su consentimiento. Requerida por el Art. 7(3) del RGPD ('debe ser tan fácil retirar el consentimiento como otorgarlo'). Se rellena en el ConsentRecord cuando el responsable del tratamiento ofrece un punto de acceso de autoservicio. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:anyURI
cardinality: single

withdrawal reason
type: Property
label: Withdrawal reason
label: Motif de retrait @fr
label: Motivo de retiro @es
comment: Free-form reason for withdrawal, if disclosed by the data subject. The data subject is not required to give a reason; this field exists for when they do, for the controller's service-improvement purposes.
comment: Motif de retrait en texte libre, si la personne concernée le communique. La personne concernée n'est pas tenue de donner un motif; ce champ existe pour les cas où elle le fait, à des fins d'amélioration du service par le responsable du traitement. @fr
comment: Motivo de retiro en texto libre, si la persona afectada lo comunica. La persona afectada no está obligada a dar un motivo; este campo existe para cuando lo hace, con fines de mejora del servicio por parte del responsable del tratamiento. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single

refusal reason
type: Property
label: Refusal reason
label: Motif de refus @fr
label: Motivo de rechazo @es
comment: Free-form reason for refusal when the data subject declined to consent (status = refused). Distinct from withdrawal_reason, which applies after consent was initially given and later withdrawn.
comment: Motif de refus en texte libre lorsque la personne concernée a décliné le consentement (statut = refused). À distinguer de withdrawal_reason, qui s'applique après qu'un consentement a été initialement accordé puis retiré ultérieurement. @fr
comment: Motivo de rechazo en texto libre cuando la persona afectada declinó consentir (estado = refused). Distinto de withdrawal_reason, que se aplica después de que el consentimiento fue otorgado inicialmente y luego retirado. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:string
cardinality: single

storage duration days
type: Property
label: Storage duration (days)
label: Durée de conservation (jours) @fr
label: Plazo de conservación (días) @es
comment: Planned storage duration for the personal data covered by this record, expressed in days. Drives retention logic in downstream systems. Zero means: do not persist after processing. Null (unpopulated) means: duration is described in prose in the PrivacyNotice retention_description rather than coded.
comment: Durée de conservation prévue pour les données personnelles couvertes par cet enregistrement, exprimée en jours. Pilote la logique de rétention dans les systèmes en aval. Zéro signifie: ne pas conserver après le traitement. Null (non renseigné) signifie: la durée est décrite en prose dans le champ retention_description de la PrivacyNotice plutôt que codée. @fr
comment: Duración de almacenamiento planificada para los datos personales cubiertos por este registro, expresada en días. Dirige la lógica de retención en sistemas posteriores. Cero significa: no conservar tras el procesamiento. Nulo (no rellenado) significa: la duración se describe en prosa en el campo retention_description de la PrivacyNotice en lugar de codificarse. @es
maturity: draft
domain includes: ConsentRecord
range includes: xsd:integer
cardinality: single