IP Modifications & Restrictions

IP Asset Modifications

IP Assets can be modified/customized a few ways. For example, by setting the License Config which allows you to change a few things as you'll see below, changing its metadata, and more. These things can always be changed unless there is a certain condition.

Action

Conditions

Via The...

Modify License Minting Fee

N/A

License Config

Modify Licensing Hook

N/A

License Config

ModifyΒ commercialRevShare

Cannot decrease commercialRevShare percentage. You can only increase it.

License Config

Disable/Enable the License

License can be disabled or re-enabled at any time.

Note that disabling a license disallows future licenses from being minted, but does not affect existing ones.

License Config

Modify Metadata

Cannot modify if the metadata is frozen. This is done by calling freezeMetadata in the CoreMetadataModule.sol.

CoreMetadataModule.sol

License Hook Modifications

The IP can be further customized or modified using the License Hook. This is a function that gets set within the License Config that gets called before a License Token (or more simply, a "license") is minted. There are various features you can implement with the License Hook, and are always modifiable:

FeatureDescription
Dynamic License FeeYou can dynamically set the price of a license. For example, it can be updated dynamically via bonding curve logic.
Total # of LicensesYou can abort the function based on a maximum number of license tokens that can be minted.
Specific ReceiversYou can restrict minting of license to a specific receiver.
More...Additional licensing hook features can be implemented as required.

Group IPA Restrictions

In addition, Group IPAs are subject to the following additional restrictions:

ActionRestriction
Add IP Asset to a GroupYou can only add an IP Asset to a group if that group is not "locked". A group becomes locked once the first license token is minted from it or a derivative is linked to it.
Remove IP Asset from a GroupYou can only remove an IP Asset from a group if that group is not "locked". A group becomes locked once the first license token is minted from it or a derivative is linked to it.