Example
App Settings Theme checkoutButtonLabel
app.settings.theme checkout.button.label
Where dot.case is used
dot.case shows up in configuration keys, translation keys in i18n files, logger names, and Java package names.
How the conversion works
Each line is converted separately. Anything that isn't a letter or digit (spaces, underscores, hyphens, punctuation) counts as a word break, and so does each case change inside camelCase or PascalCase names. The words are lowercased and joined with periods, so checkoutButtonLabel becomes checkout.button.label.
Dots usually mean nesting
In many config and translation formats, each dot is one level of nesting: app.settings.theme points to theme inside settings inside app. Choose your words with that structure in mind. If you need a single flat key instead, use snake_case or kebab-case.