func (s *Suite) GetCanonicalDocument(doc map[string]interface{}, opts ...jsonld.ProcessorOpts) ([]byte, error) {
	if v, ok := doc["type"]; ok {
		docType, ok := v.(string)
		if ok && strings.HasSuffix(docType, signatureProofType) {
			docType = strings.Replace(docType, signatureProofType, signatureType, 1)
			doc["type"] = docType
		}
	}
	return s.jsonldProcessor.GetCanonicalDocument(doc, opts...)
}
GetCanonicalDocument will return normalized/canonical version of the document.
BbsBlsSignatureProof2020 signature suite uses RDF Dataset Normalization as canonicalization algorithm.
package bbsblssignatureproof2020
import (
	"strings"
	"github.com/hyperledger/aries-framework-go/pkg/doc/signature/jsonld"
	"github.com/hyperledger/aries-framework-go/pkg/doc/signature/suite"
)
type Suite struct {
	suite.SignatureSuite
	jsonldProcessor *jsonld.Processor
}
const (
	signatureType      = "BbsBlsSignature2020"
	signatureProofType = "BbsBlsSignatureProof2020"
	rdfDataSetAlg      = "URDNA2015"
)
func New(opts ...suite.Opt) *Suite {
	s := &Suite{jsonldProcessor: jsonld.NewProcessor(rdfDataSetAlg)}
	suite.InitSuiteOptions(&s.SignatureSuite, opts...)
	return s
}