Valueflows plans to add the offer/request code to Proposal, I re-opened the issue. Although you correctly pointed out the trade-offs, we think clarity of understanding is the most important. Also, the first choice on the page in all timebank software I’ve seen is a dropdown of offer or request. We haven’t named it yet, if you have suggestions, they are welcome. I thought of Proposal.activity, but I don’t know if that would be confusing or helpful vs. ActivityStreams? On the other hand, if we could actually get Request
defined as a new AS Activity, then maybe you wouldn’t even need this new code, it could be redundant. Or not, don’t know, see question below about Create.
There is one other new element you might want to consider, that was requested by a user group (a supply chain network, not a marketplace). That is Intent.minimumQuantity
. This would be a unitBased
proposal where the provider had a minimum order quantity. I don’t know if marketplaces would run into a need. Buying clubs and other groups doing wholesale purchases would need that.
And a change, sorry about that: where you have Agreement.commitments, we’ve been defining some inverse relationships explicitly, and we’d like to use Agreement.clauses (inverse of .clauseOf).
I spent some time reviewing your FEP again. It is really clearly written, and will be useful to me and others to write the next VF one.
Question: What is the Activity you would use for Proposal and Commitment objects? Would it be Create, and then Update/Delete if needed? And should that be defined explicitly in the example?
A note: Alice wouldn’t need availableQuantity in this case, because the bike is not unitBased. On the other hand, maybe it is still good to have in the example?
The satisfies property of this Commitment object MUST reference the primary intent of the proposal.
I’m wondering about this. If there is negotiating going on, wouldn’t that frequently involve the reciprocal side? Like paying more or less for what is offered, or something else entirely like barter or another currency? I’m not exactly sure how to do this with 2 commitments (objects) in the message though. Because often you do need to specify the quantity you want on the primary side. Or maybe we can assume there isn’t negotiating in a marketplace?