Replies: 4 comments 8 replies
-
Hey @roehst, good question. At the moment our samples are not meant to be a read together as a single, internally-consistent cap table. The various objects in the samples are syntactically correct to show what OCF looks like, but are not meant to be read together. We do have an open issue to write detailed walkthroughs (#158 - see more below), so we will be creating some material that shows more accurately what "real world" OCF looks like. So here: Open-Cap-Format-OCF/samples/Transactions.ocf.json Lines 711 to 722 in 616d972 You are correct there are three To create the new security ids, you'd need to create three Stock Issuance Events, one for each of the new security ids. Each issuance event would set for the number of applicable shares and the stakeholders who now own them, so that's how you'd determine ownership for the resulting securities. So, to recap, to actually model this transfer in real life, you'd need four events: three issuance events and one transfer event. Each issuance will refer to its stakeholder. If they don't already exist, you'll need to add stakeholder objects for them too, but that doesn't require an event, you just add to the stakeholder ocf file / list. As for the exercise, you are seeing a similar pattern. The exercise event example you noted would need two issuance events to create securities with ids Since you're already working through this, do you have an interest in helping us write some walkthroughs / how-tos for basic transactions like this? We have an open issue #158 where we've been discussing the need for these kinds of how-tos for a while. If you want to write a short write-up for how to do a transfer, for example, or an option exercise, we'd certainly welcome the contribution. |
Beta Was this translation helpful? Give feedback.
-
Just checking, I have so much to share on this issue after many months of research into the matter. |
Beta Was this translation helpful? Give feedback.
-
Hi victor, I would be glad to.
I am finishing writing my master’s thesis on a formalized version of the
model, and I do compare it to bitcoins utxo, so I would be interested to
exchange ideas.
I will reach you on email
Em qui., 3 de ago. de 2023 às 20:16, Victor Mimo ***@***.***>
escreveu:
… Hi @roehst <https://github.com/roehst>, I'm currently translating parts
of this standard to be used on-chain. I've spent months also digging into
OCF. Want to jump on a call to share notes?
my email is ***@***.***
—
Reply to this email directly, view it on GitHub
<#278 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AFASTCZHA7G4633CI26MQHTXTQWLVANCNFSM6AAAAAARBT7MUM>
.
You are receiving this because you were mentioned.Message ID:
<Open-Cap-Table-Coalition/Open-Cap-Format-OCF/repo-discussions/278/comments/6632528
@github.com>
|
Beta Was this translation helpful? Give feedback.
-
Hey guys, I have a few questions relating to security_id, custom_id, and shares_numbers_issued, the above discussion has helped but I'm looking for confirmation. In this tutorial We see that for a full transfer between Bob and Alice, we have 3 events (initial Bob issuance, Alice issuance, and Transfer). So far everything is clear. My assumption is that security_id is created during the TX_STOCK_ISSUANCE transaction right, does this imply that a security_id is an ID for the entire position of a stakeholder? so bob-stock-1 is an ID that maps to this issuance TX that indicates Bob has 1000 shares of SeriesA stock that was priced at USD 1/share. I'm currently operating with this assumption since every time a transfer is done, we need to create another issuance event for Bob (and I'm thinking this is for their new position). Let me know if that's accurate. Now, if the assumption above is correct, how is the custom_id related to security_id? Eg. in the first issuance event below, security_id is "bob-stock-1" in a prod environment this would be a UUID, so custom_id: "PA-1" can indicate that this is the first position in Preferred Stock for Series A (assuming that stock_class_id is for preferred shares). So is custom_id used to make the position more human readable than security_id? Lastly, can someone point me to a use-case where shares_numbers_issued would be used in practice? I gather from this description [ Thanks! I truly appreciate the work being done here. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello Folks,
I need to ask a quick question about a specific point in how transactions work.
Transfer transaction
The transfer transaction has a balance security ID and possibly many resulting security IDs.
So I understand that if a stakeholder owns 1000 shares and transfer 800, we should create a security for 200 shares (balance) and another one for 800 shares (result).
Now let's compare that to some lines from the sample dataset.
Open-Cap-Format-OCF/samples/Transactions.ocf.json
Lines 711 to 722 in 616d972
This creates 3 resulting securities.
So I have a question.
How can we tell how many shares each security owns? One hypothesis was that a new Issuance transaction would actually define how many shares each has. But I don't see that in the sample file. Is this how it should work?
Exercise transaction
In the same vein, I see that there is a sample exercise transaction that creates two securities.
Open-Cap-Format-OCF/samples/Transactions.ocf.json
Lines 272 to 282 in 616d972
Again, how should I interpret this event? I expected that an exercise would create a single new security.
Thanks in advance
Beta Was this translation helpful? Give feedback.
All reactions