Skip to content

Conversation

@mickenordin
Copy link
Member

This updates IETF-RFC.md with a significantly expanded framework for describing OCM using ASCII diagrams in the vain of https://datatracker.ietf.org/doc/rfc3290/ as referenced by https://datatracker.ietf.org/doc/rfc3444/.

It introduces formal definitions of OCM functions, clarifies the roles of Sending and Receiving Servers, and adds detailed object models for Address Books, Contacts, Invites, Providers, Shares, Users, and Resources. The change reorganizes and expands terminology, adds diagrams to illustrate relationships, and alphabetizes and harmonizes defined terms. Legacy duplicated sections are removed or merged into the new structure.

This updates IETF-RFC.md with a significantly expanded conceptual
framework for OCM. It introduces formal definitions of OCM functions,
clarifies the roles of Sending and Receiving Servers, and adds detailed
object models for Address Books, Contacts, Invites, Providers, Shares,
Users, and Resources. The change reorganizes and expands terminology,
adds diagrams to illustrate relationships, and alphabetizes and
harmonizes defined terms. Legacy duplicated sections are removed or
merged into the new structure.

Signed-off-by: Micke Nordin <kano@sunet.se>
Copy link
Contributor

@KrausMatthias KrausMatthias left a comment

Choose a reason for hiding this comment

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

This is a great improvement! Adds a lot of clarity to the involved concepts.

I think a distinction on what is Binding Specification and what is helpful context should be added.

@KrausMatthias
Copy link
Contributor

KrausMatthias commented Nov 25, 2025

I think my main concern is still what is strictly necessary for interoperability, and what should be left open to implementations (while guidance regarding the concepts is still extremely helpful there).

So I'm not after removing details but clearly separating, "this must what a share payload looks like with these semantics so it works with other implementations" and "this is what you might keep track of in your implementation to build a working service, but doing it differently would still work".

So maybe we could have two separate sections? "Protocol Specification" and "Context and Implementation Guidance" ?

@glpatcern
Copy link
Member

I think my main concern is still what is strictly necessary for interoperability, and what should be left open to implementations (while guidance regarding the concepts is still extremely helpful there).

Overall I'm quite sympathetic with this comment. I appreciate the overall effort to "canonicalize" the implementations, but it has to be clear what is prescribed and what is guidance. I did not have time yet to review this PR in details and I thank both of you for the combined effort!

Copy link
Member

@glpatcern glpatcern left a comment

Choose a reason for hiding this comment

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

I started to give a full review and already have a few comments, possibly more to come, but overall I think it's an effort in the good direction

@glpatcern glpatcern marked this pull request as draft December 2, 2025 08:30
@mickenordin
Copy link
Member Author

I think my main concern is still what is strictly necessary for interoperability, and what should be left open to implementations (while guidance regarding the concepts is still extremely helpful there).

Overall I'm quite sympathetic with this comment. I appreciate the overall effort to "canonicalize" the implementations, but it has to be clear what is prescribed and what is guidance.

I think many of these concerns are addressed now, by moving it to an appendix and stating that it is non-normative.

@mickenordin mickenordin marked this pull request as ready for review December 12, 2025 10:47
Copy link
Member

@glpatcern glpatcern left a comment

Choose a reason for hiding this comment

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

I think this looks good now, the requested changes are just spelling mistakes.

@mickenordin mickenordin force-pushed the kano-definitions branch 3 times, most recently from 16145ce to 2177cf1 Compare December 18, 2025 12:17
glpatcern
glpatcern previously approved these changes Dec 18, 2025
Copy link
Member

@glpatcern glpatcern left a comment

Choose a reason for hiding this comment

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

I'm happy with this now. @KrausMatthias what about you?

Copy link
Contributor

@KrausMatthias KrausMatthias left a comment

Choose a reason for hiding this comment

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

Should we distinguish between Sent Shares and Received Shares in the Object models?

Otherwise I think it's perfect :)

MahdiBaghbani
MahdiBaghbani previously approved these changes Dec 19, 2025
Copy link
Member

@MahdiBaghbani MahdiBaghbani left a comment

Choose a reason for hiding this comment

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

I've read it now, It's great, nice ascii flowcharts! Thanks Micke

@glpatcern
Copy link
Member

Should we distinguish between Sent Shares and Received Shares in the Object models?

True that in a real implementation (e.g. in Reva) those two types are expected to be quite different, at least because in the Received Share the remote URI has to be stored. We may want to emphasize that.

@mickenordin
Copy link
Member Author

mickenordin commented Dec 19, 2025

Should we distinguish between Sent Shares and Received Shares in the Object models?

Otherwise I think it's perfect :)

This is a great point, I will add a 'direction' to the model.

mickenordin and others added 2 commits December 19, 2025 08:51
Co-authored-by: Giuseppe Lo Presti <giuseppe.lopresti@cern.ch>
@mickenordin
Copy link
Member Author

I added a direction to the share model now

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

Successfully merging this pull request may close these issues.

5 participants