Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TCF EU extension update #36

Open
janwinkler opened this issue Dec 11, 2022 · 3 comments
Open

TCF EU extension update #36

janwinkler opened this issue Dec 11, 2022 · 3 comments

Comments

@janwinkler
Copy link

The Publisher restrictions field is not really compatible with GPP since it does not reflect one (1) datatype but mutlitple in an unknown amount. The correct datatype would be:

Name: "RestrictionDataType" (or whatever)
Encoding: variable
JS API output: Object of Name-Number pairs (e.g. {1: {13:2, 15:1, 17:0, 18:0}, 2:{11:2, 12:1, 13:0, 15:0}}

"RestrictionDataType" : consists of

  • "num" as Int(12)
  • Per Amount of "num":
    • "purposeID" int(6)
    • "value" int(2)
    • "ids" Range (int)

Where "num" defines the amount of restrictions to come. for each restriction there is a prupose ID and a restriction type followed by a range of IDs for which these restrictsion are valid.

janwinkler added a commit to janwinkler/Global-Privacy-Platform that referenced this issue Mar 9, 2023
@janwinkler janwinkler mentioned this issue Mar 9, 2023
@HeinzBaumann
Copy link
Collaborator

@janwinkler this is quite old. Is this still wrong in the latest EEA/UK Section spec?
This is what I currently have:

Publisher Restrictions Section The content of this section is optional EXCEPT for NumPubRestrictions. Encodes any number of single or range restriction entries. NumPubRestrictions Int(12) Number of restriction records to follow.
Value is required even if it is 0 PurposeID Int(6) The Vendor’s declared Purpose ID that the publisher has indicated that they are overriding. RestrictionType Int 0 Purpose Flatly Not Allowed by Publisher (regardless of Vendor declarations)
1 Require Consent (if Vendor has declared the Purpose IDs legal basis as Legitimate Interest and flexible)
2 Require Legitimate Interest (if Vendor has declared the Purpose IDs legal basis as Consent and flexible)
3 UNDEFINED (not used) PubRestrictionEntry* OptimizedIntRange A single or range of Vendor ID(s) who the publisher has designated as restricted under the Purpose ID in this PubRestrictionsEntry

Equivalent of the fields listed under the Publisher Restrictions Section as defined in the TCF v2 specification:
MaxVendorId,
IsRangeEncoding,
BitField, NumEntries, IsARange, StartOrOnlyVendorId, EndVendorId

@janwinkler
Copy link
Author

The encoding would work but the JS API wouldnt know what to output. Thats why with the last iteration of the core spec we added ArrayOfRanges and N-ArrayOfRanges. ArrayOfRanges would be the correct datatype for the Restriction replacing all fields from NumPubRestrictions up to the end with one field (call it PubRestrictions or something)

@janwinkler
Copy link
Author

ps: see tcf canada, there we already went one step further and used N-ArrayOfRanges instead of ArrayOfRanges

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants