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

Devkit schemas #659

Merged
merged 217 commits into from
Jul 6, 2022
Merged

Devkit schemas #659

merged 217 commits into from
Jul 6, 2022

Conversation

milstan
Copy link
Member

@milstan milstan commented May 30, 2022

Making of the Schemas component of the HLA

milstan and others added 30 commits May 19, 2022 13:48
a formal representation of Rights Requests so systems and components cna share them

@Clementinev please have a look and add the current work you're doing here.
Architecture proposal for v2 of Privateform (#596)
Update request list, treatments list and data categories list
refs/schemas/priv/RFC-PRIV.md Outdated Show resolved Hide resolved
refs/schemas/priv/RFC-PRIV.md Show resolved Hide resolved
refs/schemas/priv/expected-behavior.md Outdated Show resolved Hide resolved
refs/schemas/priv/expected-behavior.md Outdated Show resolved Hide resolved
- **Configuration Maps**, defined at configuration time:
- *Retention Policies*: For each **Known Selector** (or Data Category implying every `selector` used within that Data Category) a data [Retention Policy](./RFC-PRIV.md#retention-policy),

- *Provenance*: For every **Known Selector** keep track of one or more [Provenance](./RFC-PRIV.md#provenance) objects.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the RFC document, concept Provenance has a property system which is defined as

the ID of the System having generated the Data Capture Fragment ... or ID of the System having initiated a transfer

I concluded Provenance is related to a Data Capture Fragment, not a selector so

For every **Known Selector** keep track of one or more Provenance

is confusing.

What is provenance in the context of selectors?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Provenance has System
System generates Data Capture Fragments
Data Capture Fragments have selectors

So you may be able in a situation to answer for CONTACT.ADDRESS.SHIPPING that it is the kind of data thay you obtain from other Systems (System A, System B,,...), while BEHAVIOR.CONNECTION is something you (System ID of your System) generate DERIVED.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So: if CONTACT.ADDRESS.SHIPPING selector has a retention policy RT_a and scope S_a, and if we, for a particular fragment, manually define the retention policy RT_f and S_f, the fragment will have retention policy RF_f and scope S_f (no union)?
If we don't define those 2 properties, the fragment will inherit them from the selector?

@m4rk055 : my understanding is that in this case, if S_a includes CONTACT.ADDRESS.SHIPPING, then the the Fragment both inherits the global policy RT_a and in addition abides to RT_f.

You can have two policies at the same time:

  • Delete after 1 year after collection
  • Delete after contract end

We must have a way to correctly resolve them.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

my understanding is that in this case, if S_a includes CONTACT.ADDRESS.SHIPPING, then the the Fragment both inherits the global policy RT_a and in addition abides to RT_f.

Can you add the information to this document that the final scope of a fragment in this case is union of both scopes?

You can have two policies at the same time:

What happens if two policies are conflicting?

  • Delete after 1 month
  • Keep for at least 1 year

Can you add information on how to resolve them?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added clarity about this

@milstan
Copy link
Member Author

milstan commented Jun 30, 2022

@m4rk055 @filipblnt , please:

  • If you haven't finished your review, please do it
  • If you have finished your review, incdicate clearly the state "Approve" or "Request changes"
  • If you request chnages, please whenever possible, include a concrete suggestion on what you propose to change instead of just describing it in a comment. as indicated in the Best Practice for Reviews.

Please follow DR-0002. Filip is marked as the Assignee, and it is written that It is the responsibility of the Assignee to act and not let PR remain at a stale point

refs/schemas/priv/RFC-PRIV.md Show resolved Hide resolved
- **Configuration Maps**, defined at configuration time:
- *Retention Policies*: For each **Known Selector** (or Data Category implying every `selector` used within that Data Category) a data [Retention Policy](./RFC-PRIV.md#retention-policy),

- *Provenance*: For every **Known Selector** keep track of one or more [Provenance](./RFC-PRIV.md#provenance) objects.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

my understanding is that in this case, if S_a includes CONTACT.ADDRESS.SHIPPING, then the the Fragment both inherits the global policy RT_a and in addition abides to RT_f.

Can you add the information to this document that the final scope of a fragment in this case is union of both scopes?

You can have two policies at the same time:

What happens if two policies are conflicting?

  • Delete after 1 month
  • Keep for at least 1 year

Can you add information on how to resolve them?

milstan added 4 commits July 5, 2022 11:14
It can be modeled using Privacy Scope + Data Range. No need for it now, and it would have complicated things for the relational databases.
@nweldev nweldev requested a review from m4rk055 July 5, 2022 22:24
@nweldev
Copy link

nweldev commented Jul 5, 2022

LGTM after a quick review.
Can be merged right after @m4rk055 add an "approve" review.

@nweldev nweldev merged commit 2e2f277 into main Jul 6, 2022
@nweldev nweldev deleted the devkit-schemas branch July 6, 2022 11:55
@milstan
Copy link
Member Author

milstan commented Jul 6, 2022

Thank you @noelmace for this dram-come-true merge I have been waiting for quite some time. I celebrate today. 🍾

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

Successfully merging this pull request may close these issues.

6 participants