In my integration using ECL I'm defining a metadataSchema.

var schema = BrandCenterProvider.HostServices.CreateSchemaDefinition("Metadata", "http://gdata.youtube.com/schemas/2007");
schema.Fields.Add(BrandCenterProvider.HostServices.CreateMultiLineTextFieldDefinition("Description", "Description", 0, 1, 7));
schema.Fields.Add(BrandCenterProvider.HostServices.CreateSingleLineTextFieldDefinition("BrandcenterImageID", "BrandCenter Image ID", 0, 1));
schema.Fields.Add(BrandCenterProvider.HostServices.CreateSingleLineTextFieldDefinition("MimeType", "MIME Type", 0, 1));

I have two doubts:

  • It seems that these fields are read-only. How can I allow to the user modify the metadata content?
  • I want to add some keyword fields. Is it possible?

Thank you.


The ECL components have indeed two types of metadata. There is External metadata, which you define in your ECL provider code (the code you show as an example). This metadata is read-only.

But, and ECL component can also have regular Tridion metadata. This metadata can be defined just like you would define metadata fields of a regular schema. To do this, you need to edit the stub schema that the Tridion creates when you register your ECL provider.

Then, you can use some event system code to initialize the regular metadata (copy external metadata to regular metadata) on creation of a new ECL component. For more information on how to do this, you can check here http://www.tridiondeveloper.com/ecl-event-handlers

Another option would be this GUI extension : https://github.com/bkoopman/sdl-tridion-world/wiki/EclImport.

I don't think there is support for keyword fields in the ecl metadata fields. As far as I remember, it only supports text fields (single/multiline), number fields and date fields.

| improve this answer | |
  • Thank you. Only one question more? How are created the schema in the stub folder? Which process create this schemas? Now, in the stub folder, I have an schema for folders and another to the multimedia item but I need to know how to relate with my ECL code. Thank you. – Guskermitt Sep 16 '15 at 7:47
  • 1
    ECL will create the schema automatically once it is needed. For example open an ECL item in the UI. You cannot create the schema yourself. – Lars Møllebjerg Sep 16 '15 at 9:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.