Sorry, I think this is too complicated and quickly becomes unmanageable 😔 The translations and color scheme example hits at the problem.
I'd like to explore something like:
{
"user_preferences": {
"color-scheme: dark": {},
"color-scheme: dark, language: es": {},
"color-scheme: dark, language: fr": {}
}
}
This could solve for the specificity problem. It flattens the structure into something manageable, and is quite easy to read and parse.
(If we can solve the above using CSS syntax, even better... then we don't need to create a new micro-syntax... however, it might not be unavoidable because we need to translate these values into things OSs can use, which is are not a CSS environment.)
Originally posted by @marcoscaceres in WICG/manifest-incubations#57 (comment)