Namespace and Mosaic

One core backbone of NEM platform is the smart asset called ‘Mosaic’. You can think of it as the tokens circulating within the NEM ecosystem, something similar to ERC-20, ERC-721, ERC-998 and other token standards on Ethereum.

To create Mosaic, users must create a namespace in advance. A namespace can be seen as a domain space on the Internet, which is used to host different files — Mosaic in the case of NEM. Just like we can create and manage different subdomains with a domain, namespace can have up to 3 different levels, and its root/parent namespace must remain unique within the NEM network.

Once created a namespace, user can deploy Mosaic. Like mentioned above, it is a token that belongs to the specific namespace. It could be used for payments, medium of exchange or any other functions just like tokens on Ethereum (learn more about Mosaic and Namespace).

For a better understanding, let’s look into a scenario.

Imagine a car manufacturer wants to start a business on NEM blockchain. So to start a business, it registered its root namespace at NEM called ‘Car’. Car has three production line, so it created a three different sub-namespace called ‘sports’, ‘luxury’, ‘modern’. And lastly, the company decides to name the Mosaic with a common name ‘token’, that could be used to purchase their products. So the assets that could be traded with the manufacturer would look like something like the following:

car.sports*token car.luxury*token car.modern*token

Each of these tokens could be used to purchase the corresponding product. But here comes one problem. It is definitely easy to distinguish each Mosaic and its corresponding production line due to this naming feature. Nonetheless, the purchasing procedure would always involve complex alphanumeric address that are used to send and receive tokens, something that looks like ‘NCKZD7…JGDLNDIVVP’ in the case of NEM. Users are prone to make mistakes because a single difference in address could mean losing the entire transaction.

And this is where NEM Name Service comes in.

NNS (NEM Name Service)

NNS is a blockchain domain name service that is built on NEM blockchain. It removes the necessity to copy or type long hashed cryptographic addresses, enabling users to send and receive tokens with simple addresses like ‘myfriend.nem’ instead of a default address like ‘NDFRSC-6OVQUO-…..-’.

So in this case, users can purchase a luxury car by simply sending their “car.luxury*token” to an address like “car123.xem”, simplifying the procedure and greatly reduce the possibility of human error.

NEM namespace provides identities to the smart assets, and NNS provides identities to its users. Together, they possess a promise to have a seamless interaction with NEM network.

Thank you for reading.