Warning
Acrolinx has started to phase out support for this configuration option. If you’ve already enabled Targets, you won't be able to use it. Reach out to your Acrolinx contact if you have any questions, or view our Sunset Policy for more specific details.
The guidance package delivered with your Acrolinx Platform normally includes a terminology database and one or more language configuration files. The language configuration file contains instructions for the server on which term sets to load for the Acrolinx Integrations.
After you update your terminology and data model, you may wish to make new term sets available to Acrolinx users.
The quickest way to add a term set is in the term set configuration module. However, you can also configure a term set directly in the language configuration file.
There are two ways to configure a new term set in a language configuration file:
Tip
Regardless of the criteria defined for a term set, the Acrolinx only loads terms in the language that is defined in the language configuration file and any terms that have the language value Multiple Languages.
-
Add a Domain Reference to configure a basic term set based on the domain category
-
Add a Filter File Reference to configure an advanced term set based on several filter criteria
A Filter File is an xml file that can query the terminology database using several different criteria simultaneously. This functionality is very similar in structure to the filters in the Terminology Manager interface.
Filter Files are useful for creating term sets that represent different cross-sections of your terminology.
To load a new term set based one or more domains, follow these steps:
-
Open your overlay of the relevant language configuration file.
If you haven’t yet created an overlay of this file, create a new version of the file at the following location:
<config directory>/data/<LANG_ID>/configuration.properties
If this location doesn’t yet exist, create the required subdirectories first.
-
Add the following property:
<RULE_SET>.terminology.sources=<DOMAIN_REFERENCES>
Add each domain reference using the following syntax:
att:<DOMAIN_NAME>
separated by a semicolon.
Example: Standard.terminology.sources=att:acrolinx;att:switches
Note
Restriction: You can’t use spaces when referencing domains. If your domain name contains a space within the Terminology Manager interface, replace the space with an underscore when referencing the domain in the properties file. For example, if your domain is called 'test terms', add the reference att:test_terms.
-
You can also load terms from multiple domains into one term set by using the syntax:
att:<DOMAIN_NAME_1>,<DOMAIN_NAME_2>[set=<SET_NAME>]
Example: Standard.terminology.sources=att:planes,trains,automobiles[set=AllTransportDomains]; att:switches
Tip
The set parameter is an optional setting that enables you to customize the name of the term set. If you don’t use this parameter, the server assigns a default name to the term set based on the domain names. If the previous example didn’t contain the set parameter, the term set name would be planes_trains_automobiles.
-
-
Save your changes and reload the language configuration on the relevant language servers.
Note
Attention: If you have entered domain names or term set names that contain non-ASCII characters (such as umlauts or Japanese characters), save the configuration file with the encoding UTF-8. If the configuration file doesn’t have UTF-encoding, term set names may not display correctly in the Acrolinx Integration interface.
To load a new term set based on a filter file, follow these steps:
-
Open your overlay of the relevant language configuration file.
If you haven’t yet created an overlay of this file, create a new version of the file at the following location:
<config directory>/data/<LANG_ID>/configuration.properties
If this location doesn’t yet exist, create the required subdirectories first.
-
Add the following property:
<RULE_SET>.terminology.sources=<FILTER_FILE_REFERENCE>
Add a reference to the filter file using the following syntax:
att:file:<FILE_NAME>.xml[set=<SET_NAME>]
with multiple term sets separated by a semicolon.
Example: Standard.terminology.sources=att:file:auto_cmpnts20080501.xml[set=Components]; att:Switches
Tip
The
set
parameter is an optional setting that enables you to customize the name of the term set. If you don’t use this parameter, the server uses the name of the filter file as the term set name. -
Save your changes, restart the Acrolinx Platform, then reload the language configuration on the relevant language servers.
The following table lists the XML elements that you can use in a Filter File, with hierarchy indicated in the Level column:
Level |
Element Name |
Use To |
---|---|---|
1 |
compositeFilter |
Enclose a set of multiple categoryFilter or surfaceFilter criteria. You can use this element several times to nest different sets of criteria. |
1.1 |
composition |
Select a Boolean value for set of criteria in a composite filter Use this element within compositeFilter. |
1.1.1 |
negated |
Exclude a set of criteria from a composite filter. |
1.1.1 |
categoryFilter |
Enclose a search for terms within a given category The categoryFilter element has the attribute inclusive that you can set to true or false.
You can use this element several times within a compositeFilter. |
1.1.1.1 |
category |
Define the value of the category to filter on. Use this element within categoryFilter. |
1.1.1.1.1 |
categoryType |
Define the name of the category to filter on. Use this element within category. |
1.1.1. |
surfaceFilter |
Enclose a search for terms whose names match a certain pattern. You can also include the element <isCaseSensitive> to ensure the matching takes case into account. Example: <surfaceFilter> <isCaseSensitive> true</isCaseSensitive> <surface>a%</surface> </surfaceFilter> |
1.1.1.1 |
surface |
Define a search pattern to filter on. Use this element within surfaceFilter. |
The following illustration is an example of a Filter File that uses nested filters and multiple criteria:
The Filter Description for this filter would be:
Load all terms:
-
where the category ProductType is ElectronicComponents
-
and where the category domain is Switches or ACME
-
or where the term name is like ' %electric%
-
but not if the category WorkflowStatus is UnderReview
To create a new filter file, follow these steps:
-
Create a term export filter in the Dashboard. To create a term export filter, follow these steps:
-
In the Dashboard, navigate toTerminology > Import and Export > Export
-
Expand the Term Filter Selection panel, click Filter, and define the criteria for the terms to load. When you define the filter, make sure that your criteria include a language. Otherwise, terms might get loaded by a mismatching language server. For example, an English language server could attempt to load German terms. In this scenario, you would see the following error message:
No NLP service for language 'de' of term '<TERM_NAME>' with lemma part, skipping
You filter by language so that the language server only loads terms in the relevant language.
-
Enter a file name so that the Save Export Configuration button is enabled, and save the export configuration.
-
-
Copy the filter XML. To copy the filter, follow these steps:
-
In the Dashboard, navigate to Terminology > Import and Export > Saved Configurations
-
Select the export configuration that you saved in when you created the term export filter and click Download.
-
In the window that appears, click the link to open the properties file in a text editor.
-
Find the property
exportFilter
and copy the filter XML from the value of the property. The following example shows the filter XML for a filter that finds English terms in the domain "Standard_Terminology" with the process status "Finalized".<?xml version='1.0' encoding='UTF-8'?><compositeFilter> <composition>AND</composition> <categoryFilter inclusive="true"> <category>Standard_Terminology<categoryType>domain</categoryType> </category></categoryFilter> <customFieldCategoryFilter inclusive="true"><category>finalized <categoryType>process status</categoryType></category> <customField>processStatus</customField></customFieldCategoryFilter> <categoryFilter inclusive="true"><category>en<categoryType>language</categoryType> </category></categoryFilter> </compositeFilter>
-
-
Paste the filter XML into a new file with the following command:
kubectl cp -n acrolinx acrolinx-core-server-0:/opt/guidance/<path> /home/acrolinx/config/<path>
For example, to create a filter file for product terms in English, you would run the following:
kubectl cp -n acrolinx acrolinx-core-server-0:/opt/guidance/data/en/terms/productterms.xml <config directory>/data/en/terms
-
Save your changes.
-
(Optional) Configure your language server to load terms using the filter file.