On Wed, 10 Sep 2008, Ian Kelly wrote: > One thing I'd like to see happen this time is to have contract-defined > cards available right from the get-go. Contracts should not share the > same Deck and Dealor, however, so these concepts should be > generalized.
Hm, how's this for a generic card description: A Set of Cards is a set of defined currency classes (card types) which are defined by a backing document as being part of a particular Deck defined in the same backing document. A single Card is an instance of one of the classes. The recordkeepor of a Deck, as defined by its backing document, is the recordkeepor for all card classes that are part of that deck. The recordkeepor of a Deck generally CAN perform actions on behalf of that Deck by announcement as allowed by its backing document. To Deal a card from a particular deck to an entity is to select a card from its deck and transfer it to the entity. If the method of selection is not further specified, it is random among all cards currently in the possession of that deck. To Reshuffle a Deck is to return all card instances of a particular deck to the Deck. [Any better generalizations? Any other useful generalizations?] -Goethe