Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for "multi-linguality" across webpages #26

Open
mukil opened this issue Dec 8, 2020 · 1 comment
Open

Support for "multi-linguality" across webpages #26

mukil opened this issue Dec 8, 2020 · 1 comment
Milestone

Comments

@mukil
Copy link
Owner

mukil commented Dec 8, 2020

No description provided.

@mukil mukil added this to the 0.9-release milestone Dec 10, 2020
@mukil
Copy link
Owner Author

mukil commented Aug 6, 2021

The main idea to implement mulit-linguality is now like this:

  • We utilize the multi-site capabilities of the dmx-webpages plugin, one Website for each language available
  • We associate Webpages in between the different Websites using "Translation" associations

Extensions to the Application Model:

  • Introduce "Website Language" type (Text) with a set of pre-installed BCP47 language tags (https://tools.ietf.org/rfc/bcp/bcp47.txt)
  • Add "Website Language" to "Website" type definitions
  • Introduce new assoc type "Translation" (Entity), with "Website Language" as a child topic

Add server-side logic:

  • Each webpage requested, with "Translation" associations, gets displayed with a dropdown menu / simple menu in the footer rendering a human readable "Label" for each existing "Website Language" tag associated with a "Webpage". Clicking that translation label, will request the visitor the associated "Webpage" (and therefore may switch Websites implicitly)
  • Each top level html element of a webpage inherits the "Website Language" value set from its associated Website topic (e.g. html lang="en" is added as an attribute.

Maybe, at a later stage, support for "Content negotiation" will be added server-side:

  • Each request to a webpage/website is parsed for a language preference through inspecting the values in the Accept-Language HTTP header sent by the visitors browser.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant