토큰 분류법 프레임워크에 대한 입력 사양 파일

Blockchain App Builder 초기화 명령은 입력 사양 파일을 읽고 체인 코드 개발 프로세스를 지원하는 여러 가지 도구를 사용하여 스캐폴드 프로젝트를 생성합니다.

동일한 사양 파일에서 토큰 분류법 프레임워크를 기반으로 하는 표준 자산 및 토큰 자산을 정의할 수 있습니다. 동일한 사양 파일에서 둘 이상의 표준을 기반으로 토큰 자산을 정의할 수 없습니다.

사양 파일에 표준 자산을 포함하는 방법에 대한 자세한 내용은 입력 사양 파일을 참조하십시오.

블록체인 앱 빌더 패키지에서는 대체 가능한 토큰 자산에 대한 다음 샘플 사양 파일을 사용할 수 있습니다.
  • FiatMoneyToken.yml
  • LoyaltyToken-Go.yml

표준 등록 정보 및 섹션 외에도 대체 가능한 토큰 자산은 사양 파일에서 behavioranatomy 섹션을 지원합니다. Fungible 토큰 자산은 standard 속성도 지원합니다. 다음 예에서는 토큰 분류법 프레임워크를 기반으로 하는 대체 가능 토큰 자산에 대한 사양 파일의 구조를 보여 줍니다.

assets:
    - name: OBPTOK # Asset name
      type: token  # Asset type

      anatomy: 
          type: fungible # Token type
          unit: fractional # Token unit

      behavior: # Token behaviors
          - divisible: 
                decimal: 2  
          - mintable: 
                max_mint_quantity: 1000 
          - transferable
          - burnable 
          - roles: 
                minter_role_name: minter 

      properties:
          - name: currency_name # Custom attribute to represent the token in certain currency. This attribute is helpful for exchanging the tokens with fiat currency.
            type: string

          - name: token_to_currency_ratio # Custom attribute to specify the token to currency ratio. This attribute is helpful for exchanging the tokens with fiat currency.
            type: number

표 7-5 Fungible Token Specification 파일에 대한 매개변수 설명 및 예

항목 설명
type:

assets 섹션에서 type: token를 지정해야 합니다.

assets:
    - name: OBPTOK # Asset name
      type: token  # Asset type
standard: standard 속성은 체인코드 생성 중 따라야 할 토큰 표준을 나타냅니다. 대체 가능한 토큰에는 ttf+ 값만 지원됩니다. 대체 가능 토큰에 대해 standard 속성이 지정되지 않은 경우 TTF(토큰 분류법 프레임워크) 표준이 따릅니다.

      standard: ttf+ # Token standard
anatomy:
anatomy 섹션에는 대체 가능 토큰에 대한 두 가지 필수 매개변수가 있습니다.
  • type: fungible

    대체 가능한 토큰의 수량은 동일한 토큰 클래스의 다른 동일한 수량과 동일한 값을 가집니다.

  • unit: fractional

    소수 토큰은 지정된 소수 자릿수에 따라 더 작은 단위로 나눌 수 있습니다.

anatomy: 
          type: fungible # Token type
          unit: fractional # Token unit
behavior: 이 절에서는 토큰의 기능과 제한 사항에 대해 설명합니다. 대체 가능한 토큰의 경우 mintabletransferable 동작이 필수입니다.
  • mintable: 이 필수 동작은 새 토큰 인스턴스 연동을 지원합니다. 선택적 max_mint_quantity 매개변수는 연동할 수 있는 총 토큰 수를 지정합니다. max_mint_quantity 매개변수를 지정하지 않으면 원하는 수의 토큰을 민트할 수 있습니다.
  • transferable: 이 필수 동작은 토큰 소유권 이전을 지원합니다.
  • divisible: 이 선택적 동작은 토큰을 세분화하는 방법에 대해 설명합니다. decimal 매개변수는 사용할 수 있는 소수점 자리 수를 지정합니다. 소수점 자릿수로 가능한 가장 작은 부분은 소유할 수 있는 토큰의 가장 작은 단위입니다. decimal 매개변수를 지정하지 않으면 기본값은 0 소수점 자릿수입니다.
  • burnable: 이 선택적 동작은 토큰 비활성화 또는 레코딩을 지원합니다. 레코딩은 토큰을 삭제하지 않고 대신 사용할 수 없는 영구 상태로 둡니다. 불타는 것은 되돌릴 수 없다.
  • holdable: 이 선택적 동작은 지급인과 수취인 간에 토큰 잔액을 보류할 수 있는지 여부를 나타냅니다.
  • roles: 이 선택적 동작은 토큰 동작을 특정 롤을 가진 사용자로 제한합니다. 현재 세 가지 역할(minter_role_name, burner_role_namenotary_role_name)을 사용할 수 있습니다. 역할을 지정하지 않으면 모든 사용자가 광부, 버너 또는 공증인 역할을 할 수 있습니다. 예를 들어, 버너 역할이 지정되지 않은 경우 모든 계정 사용자에게는 버너 역할이 암시적으로 지정됩니다. 버너 역할이 지정된 경우 토큰 설정 프로세스 중 Token Admin 사용자가 다른 사용자에게 명시적으로 버너 역할을 지정해야 합니다.
behavior:
  - mintable:
        max_mint_quantity: 20000
  - transferable
  - divisible:
        decimal: 1
  - burnable
  - holdable
  - roles:
        minter_role_name: minter
        burner_role_name: burner
        notary_role_name: notary

서로 다른 max_mint_quantity 매개변수를 사용하는 여러 대체 가능 토큰 ID를 만들려면 사양 파일에서 각 토큰 ID에 대해 토큰 자산과 토큰 ID 간의 1:1 관계를 사용하여 별도의 토큰 자산을 만듭니다.

동일한 max_mint_quantity 매개변수를 사용하거나 max_mint_quantity 매개변수를 사용하지 않는 여러 대체 가능 토큰 ID를 생성하려면 모든 토큰 ID에 사용할 사양 파일에 단일 토큰 자산을 생성합니다.