Paquete de código de cadena de Bond Marketplace
Oracle Blockchain Platform Digital Assets Edition incluye un código de cadena de ejemplo para el escenario de mercado de NFT de bonos.
El código de cadenas del mercado de bonos admite la gestión y el comercio de bonos, representados por tokens fraccionales no fungibles (NFT). Puede utilizar métodos de código de cadenas para emitir, comprar, canjear y negociar bonos NFT en un entorno descentralizado.
BondMarketplace.zip
, un archivo de almacenamiento que contiene el código de cadenas empaquetado para el despliegue.BondMarketplace.yaml
, un archivo de especificación que puede utilizar con Blockchain App Builder para andamiar el código de cadenaWholesaleCBDC
.BondMarketplace_postman_collection.json
, una recopilación de Postman que permite probar las API en el código de cadenas.README.md
, guía paso a paso para trabajar con el código de cadenas.
Para obtener el paquete de código de cadenas del mercado de bonos, en la consola de activos digitales de Oracle Blockchain Platform, haga clic en el separador Activos digitales y, a continuación, seleccione Aplicación Marketplace de enlace.
Archivo de Especificación
El archivo de especificación de mercado de bonos (Bond_Marketplace.yml
) se basa en el archivo de especificación ERC-1155 ampliado. Incluye un atributo model
, que genera el código de cadena específico de la aplicación. En este caso, model: bond
crea métodos adicionales para la aplicación de mercado de bonos cuando se genera el código de cadenas. Además, se deben definir parámetros específicos en la sección de metadatos del archivo.#
# Copyright (c) 2025, Oracle and/or its affiliates. All rights reserved.
#
# Token asset to manage the complete lifecycle of a Bond in a primary Bond marketplace.
assets:
- name: Bond #Asset name
type: token #Asset type
standard: erc1155+ # Token standard
events: true # Supports event code generation for non-GET methods
model: bond # Supports creation of additional methods for Primary Bond marketplace
anatomy:
type: nonfungible # Token type
unit: fractional #Token unit
behavior: # Bond token behaviors
- divisible:
- mintable:
- transferable
- burnable
- roles:
minter_role_name: minter
burner_role_name: burner
properties: # Custom asset attributes for non-fungible Bond token.
- name: status # Custom asset attribute maintains the status of the Bond.
type: string
mandatory: true
metadata: # To maintain the metadata on-chain, this tag will be used. Users won't be able to update the metadata attribute values after the bond token is minted.
- name: ISIN # A unique alphanumeric code that identifies a specific bond internationally.
type: string
mandatory: true
- name: Segment # The classification of bonds based on issuer type or purpose, such as corporate, government, sovereign, or green bonds.
type: string
- name: Issuer # The entity, such as a corporation or government, that issues the bond.
type: string
mandatory: true
- name: FaceValue # The principal amount of the bond that will be repaid at maturity.
type: number
mandatory: true
- name: IssueSize # The total monetary value or quantity of bonds issued by the issuer.
type: number
mandatory: true
- name: CouponRate # The annual interest rate that the bond pays, typically as a percentage of the face value.
type: float
mandatory: true
- name: InterestPaymentType # Specifies whether the bond pays simple or compound interest.
type: string
mandatory: true
validate: /^\\s*(simple)\\s*$/
- name: InterestFrequency # The regularity with which interest payments are made, such as monthly, quarterly, annually or at maturity.
type: string
mandatory: true
validate: /^\s*["]?((monthly|quarterly|annually|at maturity)\s*)["]?\s*$/
- name: IssueDate # The date when the bond was initially issued.
type: date
mandatory: true
- name: MaturityDate # The date on which the bond’s principal amount will be repaid to the bondholder.
type: date
mandatory: true
customMethods:
Tabla 4-1 Parámetros de metadatos para el archivo de especificación de Bond Marketplace
Entrada | Descripción |
---|---|
name: ISIN |
Cadena que es un código alfanumérico único de 12 caracteres que identifica un enlace. |
name: Segment |
Cadena que representa el tipo de segmento del enlace. |
name: Issuer |
Cadena que representa al emisor del bono. |
name: FaceValue |
Número que representa el valor nominal (precio) del token de enlace. |
name: IssueSize |
Número que representa el tamaño de emisión (cantidad total) del bono. |
name: CouponRate |
Número que representa la tasa de cupón (tipo de interés) del bono. Debe ser una tasa anual. |
name: InterestPaymentType |
Cadena que representa el tipo de pago de intereses. El único valor soportado es simple .
|
name: InterestFrequency |
Cadena que representa la frecuencia de interés del token de bono. La siguiente lista muestra los valores admitidos.
|
name: IssueDate |
Fecha que representa la fecha de emisión del bono. |
name: MaturityDate |
Una fecha que representa la fecha de vencimiento del bono. |