How/where are EntryField objects displayed for Custom Terminology Providers?

I've built a custom terminology provider. The terms in the termbase have additional fields, such as gender, plurality, etc., which I have declared as instances of IEntryField on the EntryTerm object.

But where can I expect to see these fields?

And importantly, how can I present a term as being forbidden for us - i.e., indicate that a term should not be used?

The hitlist settings offer a preview showing the field values adjacent to the term's text...

Screenshot of Trados Studio's Sequential mode preview displaying two termbases with terms and their translations, but additional fields like gender and plurality are not visible.

...but my field values don't appear in the Term Recognition or Termbase Search panels...

Screenshot of Trados Studio's Term Recognition panel showing translations for 'Hallo Welt' but without any additional fields or indication of forbidden terms.

Here is the object which is being displayed, showing that it's Fields property is populated...

Screenshot of Trados Studio's object properties with an EntryTerm object expanded to show a populated Fields property, including a 'Forbidden' field set to 'False'.

What more do I need to do to have these fields presented in the UI?



Generated Image Alt-Text
[edited by: Trados AI at 1:13 PM (GMT 0) on 5 Mar 2024]
Parents
  • Hello   ,

     You can look as a reference on how to display the entry fields in the IATE Terminology application found as open source app on the Github https://github.com/sdl/Sdl-Community/tree/master/IATETerminologyProvider, in IATETerminologyProvider.cs class . I managed to display the entry fields by setting them up in the following places (all the below methods are defined in the IATETerminologyProvider.cs class):

    1. When creating the entry terms for the search result

    2. When setting the entry languages for the entry terms

     

    3. When creating the entry terms for the entry languages

     

    The method which generates the glossary descriptive fields based on the needed values looks like: (the method can be found in the same  IATETerminologyProvider.cs class)

     

    The descriptive fields which are shown in the Term Search/Term Recogniton grids and can be displayed using the Hitlist Settings option are defined as follows:

    (the method can be found in the same IATETerminologyProvider.cs class)

     

    For more references you can also check the documentation http://producthelp.sdl.com/SDK/TerminologyProviderApi/2017/html/3a2c3997-09ac-4c63-a1ac-a5dc463997f0.htm 

     

     

    The provider entry fields looks like in the below print screens in IATE Terminology Provider: (you can also setup the fonts of the entry fields from the Hitlist settings)

     

     

    With kind regards,

    Florentina Caputa

    With kind regards,

    Florentina Caputa

  • Hi Florentina,

    Could you please help me to find out, how can we modify/update Glossary Fields in hitlist settings runtime?.

    E.x.: I have Custom Terminology Providers. Inside that we have two options.

    If Option 1 selected then need to show  field as First Name, Last Name in hitlist settings.

    If Option 2 selected then need to show  field as Middle Name in hitlist settings.

    Currently its display Option 1 fields. If we select Option 2 then hitlist settings still display old values. If we restart SDL studio then only hitlist settings updated and display Option 2 fields.

    Thanks,

    -Harshad

  • Hi 

    I have double check if the behavior you've described can be reproduced in the IATE provider, which also have 2 options in the Hitlist Settings, but it cannot, so when I do the switch from one Option to the other one, the grid is automatically refreshed and the needed information is displayed nearby the search result. 

    You can see exactly how the entire logic for the Hitlist Settings was implemented in the IATE app,here  (the code is available on the Sdl Community Github repository and it is open source)

    Kind regards,

    Florentina

    With kind regards,

    Florentina Caputa

  • Hi Florentina,

    It seems like may be my query is not too clear or misunderstood.

    I have checked IATE and it has fix field as "Definition", "Domain" and "SubDomain"  in public IList<IDescriptiveField> GetDescriptiveFields() so i think no any issue.

    In my case this fields are not fixed. its different. If we take example of IATE in context of my query then in once OPTION 1 selected then it should display "Definition" and "Domain"  AND if OPTION 2 selected then it should display "SubDomain" only.

    See snap for reference. Only when we restart then only "SubDomain" will be display in Hitlist window.

    Screenshot of Trados Studio with an orange box highlighting 'Option 1 selected in my Custom Terminology Provider then 'Definition' and 'Domain' need to show.'

    Thanks,

    -Harshad



    Generated Image Alt-Text
    [edited by: Trados AI at 1:13 PM (GMT 0) on 5 Mar 2024]
  • Hi ,

    It all depends on how you define the descriptive field level (see below image). Did you use the GetDescriptiveFields() method to set the fields? This method is available thorough the APIs inside the Studio Terminology provider template

    Screenshot of Trados Studio code snippet showing the GetDescriptiveFields() method with 'Definition' and 'Domain' checked as Entry level.

    As you can see, the Definition and Domain can be checked independently and it will work as Option1 or Option 2 (as I described in the previews response), because both are defined at Entry level.  The Subdomain is define at LanguageLevel, so if you select one of the option or all, it will be refreshed and displayed based on the selection.

    Results when selecting Definition option 

    Trados Studio interface with 'Definition' option selected under Field Selection, and corresponding results displayed in Term Recognition panel.

    Results after selecting Domain option

    Trados Studio interface with 'Domain' option selected under Field Selection, and corresponding results displayed in Term Recognition panel.

    Results after selecting Subdomain option

    Trados Studio interface with 'Subdomain' option selected under Field Selection, and corresponding results displayed in Term Recognition panel.

    With kind regards,

    Florentina Caputa

    With kind regards,

    Florentina Caputa



    Generated Image Alt-Text
    [edited by: Trados AI at 1:14 PM (GMT 0) on 5 Mar 2024]
  • Hi ,

    I really appreciate your reply and it seems like all the mess with word "Option" in my post ;-) .

    Request  to see snap attached earlier in my post.

    Yes, i have used  GetDescriptiveFields() to set fields. For me, fields are appear properly and also display in Term Rec. window.

    My query is, how can we update/refresh HITLIST window at run time? so that its not require to restart SDL studio to see desired fields in HITLIST window. See below two images.

    In GetDescriptiveFields(), fileds configured properly but HITLIST Window does not refresh. Only refreshed when we restart studio.

    Image 1:- below is OK and working for me

    Screenshot of Trados Studio showing the GetDescriptiveFields() function with fields configured properly. A red arrow points to the 'Option' field in the Term Recognition window.

    Image 2:- Its only works WHEN we restart SDL studio. Want to achieve is w/o restarting studio it should display "SubDomain" field.

    Screenshot of Trados Studio's HITLIST window not updating in real-time. A red arrow indicates the absence of the 'SubDomain' field which only appears after restarting the studio.

    Thanks,

    -Harshad



    Generated Image Alt-Text
    [edited by: Trados AI at 1:14 PM (GMT 0) on 5 Mar 2024]
  • Hi ,

    I did a deeper investigation regarding your problem, currently there is no method which should refresh/update the Hitlist Setting window once the fields were setup. 

    The fields are defined in the Hitlist Settings grid when the provider is created, and any other changes are not reflected automatically, so currently, the only option to see the changes is to restart the Studio.

    With kind regards,

    Florentina Caputa

    With kind regards,

    Florentina Caputa

  • Hi ,

    Really thank full for your feedback.

    So conclusion is,  we dont have such public SDL API which allows refresh for HITLIST window setting and also for any other external window.

    Correct me if i am wrong or request to agree/confirm.

    Again thank you.

    Regards,

    -Harshad

Reply Children