How to use internationalization and labeling for models, components and strategies.
PillarOne RiskAnalytics offers a combination of naming
conventions and internationalization methods to offer the utmost flexibility in
setting display names. Meaningful display names are very important,
in particular, if the model builders are not the same group of people as the
users.
To create the display name of a component or its
parameters in a model, Risk Analytics performs the following steps:
Rule 1:
Model specific display names
Search the component’s or parameter’s path in
the model resource bundle.
The model resource bundle is in the same package
(directory) as the model. For the CapitalEagleModel the file names look like
this:
- CapitalEagleModelResources.properties
- CapitalEagleModelResources_de.properties (for German display names)
- CapitalEagleModelResources_fr.properties (for French display names)
- ...
The key is the path in the model. For the Earth
Quake Generator in the Capital Eagle Model a key/value pair looks like this:
property.subClaimsGenerator.subEQGenerator=EQ Generator
Note that the default naming schema would yield
e q generator. This rule serves the purpose to give components
and parameters model specific names.
If no information is found, then apply Rule 2 if it is a parameter else apply
Rule 3.
Rule 2: Internationalization of parameters in
strategy types
If it is a parameter in a strategy type,
then search the parameter name in the corresponding strategy type resource
bundle. This resource bundle is located in the same package (i.e. directory) as
the strategy type definition. For claims generators it is
org.pillarone.modelling.domain.generators.claims.
Example: German display names of the
reinsurance contract type parameters it is
#this is the display name of the strategy
displayName=Vertragsparameter
type=Typ
type.QUOTASHARE=Quote
type.QUOTASHAREAAL=Quote mit Jahreshaftungslimite
type.SURPLUS=Summenexzedent
type.WXL=Schadenexzedent
type.CXL=Schadenexzedent je Schadenereignis
type.STOPLOSS=Jahresüberschaden-RV
type.TRIVIAL=keine Deckung
type.AggregateXL=Schadenexzedent für gemeinsame Rechnung
quotaShare=Quote
commission=Provision
coveredByReinsurer=akzeptierter Anteil
premiumBase=Prämienbasis
premiumBase.ABSOLUTE=absolute
premiumBase.NUMBER_OF_POLICIES=Anzahl Policen
Never mind if you don’t speak German
;-) You can write the property files for any language.
Note: The parameter “type” is a
combobox and hence, its values have to be internationalized using the syntax type.*.