ConsenSysMesh / web3studio-bootleg

The Shared Royalty Non-Fungible Token (a.k.a Bootleg) is an open source project started by the ConsenSys Web3Studio team. The purpose of the Shared Royalty Non-Fungible Token (SRNFT) is to make any royalty business model, from the oil and gas industry to entertainment, easy to manage with the Ethereum blockchain .
https://consensys.net/web3studio/bootleg/
Apache License 2.0
91 stars 30 forks source link

Decide on name space and domain model names #4

Closed humbitious closed 5 years ago

humbitious commented 5 years ago

Overview

As a developer/designer so I know what to call things in our project and that I use names consistently get everyone to agree to (and document) the names of key objects/concepts in our proposed Bootleg system.

Reference

Bootlegger = Maker/submitter of scarce resource file

Creator = The original artist/band/musician/movie-producer/etc that the Bootlegger is "bootlegging" [This opens up a big notion: is this about scarcity marketing of any mod of a digital creation, so long as the original creator approves/mints tokens?? Interesting.]

Creation = The original artwork or performance in digital or non-digital form (legally both?) that constitutes the Creator's legal right/copyright.

Fan = Buyer/Seller in the chain of custody. [Not sold on this name yet, but....hmmm.]

Admin = Some decisions will determine nature of this role. Admin of Bootleg the service? Admin of a company like Patreon that is using Bootleg as a standard/dApp? Admin of the party that creates/authorizes the Bootlegger to use the creation.

Venue = Seat seller. [Are concerts/live-performances the only type of bootleggable creation where this actor has a role in the workflow? Note, I think the venue is totally on the SaaS side of this embodiment, right? No object in the smart contract necessary for Venue?]

MainFile = The primary (encrypted/scrambled/sliced?) digital asset, which should be able to be stored anywhere with minimal concern for it being copied and used without the token holders' keys.

Slice = The part of the mainfile that constitutes the token payload and key, so that the MainFile can be used. (May be unnecessary as an object if we opt for simple encryption and some sort of rule for adding token holders' keys to decrypt.)

Sell =

Submit =

Approve =

Upload =

brian-lc commented 5 years ago

Results of our namespace discussion are captured in this diagram. All team agreed that these are the names we are using for things (both on the app/UI domain and in ethereum domain).

DomainModel.png

brian-lc commented 5 years ago

Diagram added to Readme as part of this PR https://github.com/ConsenSys/web3studio-bootleg/pull/85