I was exploring the token standard and application interoperability and I came across a question/thought that I had. Given I have a holding that was created in a different application that adheres to the holding token standard, is it possible for me to then convert that holding into a holding within my application if my holding also conforms to the token standard? Or would I essentially have to use the token standard view to create my holding then archive the other one via the token standard contractId?
It is possible to work with multiple types of contracts that have the Holding interface. But probably not possible to convert one of them into becoming another type of Holding because the additional data they carry (beyond what’s needed for the implementation of Holding) may be totally different.
You could potentially burn one and create the other, though nothing would guarantee that this is reversible.
I came to a similar conclusion when I was doing some testing, it seems like burn and create would be the only way to bring a holding from another application into my application. My thought would be to potentially make use of the metadata type from the token standard to store any other fields that were on the original holding to help make it reversible