{
    "org.chrome.cloud4chrome": {
        "name": "Cloud4Chrome",
        "contexts": {
            "OS": [
                {
                    "id": "web"
                }
            ]
        },
        "settingsHandlers": {
            "myconf": {
                "type": "gpii.settingsHandlers.noSettings",
                "liveness": "live",
                "supportedSettings": {
                    "screenReaderTTS/enabled": {
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    "fontSize": {
                        "schema": {
                            "title": "Font Size",
                            "description": "Font size.",
                            "enum": ["medium", "large", "x-large"],
                            "enumLabels": ["Medium", "Large", "Extra Large"]
                        }
                    },
                    "magnifierEnabled": {
                        "schema": { "type":  "boolean" }
                    },
                    "magnification": {
                        "schema": {
                            "type": "number"
                        }
                    },
                    "highContrast/enabled": {
                        "schema": { "type":  "boolean" }
                    },
                    "highContrastTheme": {
                        "schema": {
                            "type": "string"
                        }
                    },
                    "invertColours": {
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    "simplifier": {
                        "schema": {
                            "type": "boolean"
                        }
                    }
                },
                "capabilitiesTransformations": {
                    "screenReaderTTS/enabled": "http://registry\\.gpii\\.net/common/screenReaderTTS/enabled",
                    "fontSize": {
                        "transform":{
                            "type": "fluid.transforms.quantize",
                            "inputPath": "http://registry\\.gpii\\.net/common/fontSize",
                            "ranges": [
                                {
                                    "upperBound": 12,
                                    "output": "medium"
                                },
                                {
                                    "upperBound": 18,
                                    "output": "large"
                                },
                                {
                                    "output": "x-large"
                                }
                            ]
                        }
                    },
                    "magnifierEnabled": "http://registry\\.gpii\\.net/common/magnification/enabled",
                    "magnification": {
                        "transform": {
                            "type": "fluid.transforms.quantize",
                            "inputPath": "http://registry\\.gpii\\.net/common/magnification",
                            "ranges": [
                                {
                                    "upperBound": 1.2,
                                    "output": 1
                                },
                                {
                                    "upperBound": 2.5,
                                    "output": 2
                                },
                                {
                                    "output": 3
                                }
                            ]
                        }
                    },
                    "highContrast/enabled": "http://registry\\.gpii\\.net/common/highContrast/enabled",
                    "highContrastTheme": "http://registry\\.gpii\\.net/common/highContrastTheme",
                    "invertColours": "http://registry\\.gpii\\.net/common/invertColours"
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "org.mozilla.cloud4firefox": {
        "name": "Cloud4Firefox",
        "contexts": {
            "OS": [
                {
                    "id": "web"
                }
            ]
        },
        "settingsHandlers": {
            "myconf": {
                "type": "gpii.settingsHandlers.noSettings",
                "liveness": "live",
                "supportedSettings": {
                    "screenReaderTTS/enabled": {
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    "fontSize": {
                        "schema": {
                            "title": "Font Size",
                            "description": "Font size.",
                            "enum": ["medium", "large", "x-large"],
                            "enumLabels": ["Medium", "Large", "Extra Large"]
                        }
                    },
                    "magnifierEnabled": {
                        "schema": { "type":  "boolean" }
                    },
                    "magnification": {
                        "schema": {
                            "type": "number"
                        }
                    },
                    "highContrast/enabled": {
                        "schema": { "type":  "boolean" }
                    },
                    "highContrastTheme": {
                        "schema": {
                            "type": "string"
                        }
                    },
                    "invertColours": {
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    "simplifier": {
                        "schema": {
                            "type": "boolean"
                        }
                    }
                },
                "capabilitiesTransformations": {
                    "screenReaderTTS/enabled": "http://registry\\.gpii\\.net/common/screenReaderTTS/enabled",
                    "fontSize": {
                        "transform":{
                            "type": "fluid.transforms.quantize",
                            "inputPath": "http://registry\\.gpii\\.net/common/fontSize",
                            "ranges": [
                                {
                                    "upperBound": 12,
                                    "output": "medium"
                                },
                                {
                                    "upperBound": 18,
                                    "output": "large"
                                },
                                {
                                    "output": "x-large"
                                }
                            ]
                        }
                    },
                    "magnifierEnabled": "http://registry\\.gpii\\.net/common/magnification/enabled",
                    "magnification": {
                        "transform": {
                            "type": "fluid.transforms.quantize",
                            "inputPath": "http://registry\\.gpii\\.net/common/magnification",
                            "ranges": [
                                {
                                    "upperBound": 1.2,
                                    "output": 1
                                },
                                {
                                    "upperBound": 2.5,
                                    "output": 2
                                },
                                {
                                    "output": 3
                                }
                            ]
                        }
                    },
                    "highContrast/enabled": "http://registry\\.gpii\\.net/common/highContrast/enabled",
                    "highContrastTheme": "http://registry\\.gpii\\.net/common/highContrastTheme",
                    "invertColours": "http://registry\\.gpii\\.net/common/invertColours"
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "com.bdigital.easit4all": {
        "name": "Easit4all",
        "contexts": {
            "OS": [
                {
                    "id": "web"
                }
            ]
        },
        "settingsHandlers": {
            "myconf": {
                "type": "gpii.settingsHandlers.noSettings",
                "liveness": "live",
                "supportedSettings": {
                    "fontSize": {},
                    "fontFaceFontName": {},
                    "foregroundColor": {},
                    "backgroundColor": {},
                    "lineSpacing": {},
                    "inputsLarger": {},
                    "toc": {},
                    "links": {},
                    "layout": {},
                    "invertImages": {},
                    "tracking": {},
                    "magnification": {}
                },
                "capabilitiesTransformations": {
                    "fontSize": {
                        "transform":{
                            "type": "fluid.transforms.linearScale",
                            "inputPath": "http://registry\\.gpii\\.net/common/fontSize",
                            "factor": 10
                        }
                    },
                    "fontFaceFontName": {
                        "transform":{
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/fontName",
                            "match": {
                                "times": "Times New Roman",
                                "comic": "Comic Sans",
                                "arial": "Arial",
                                "verdana": "Verdana"
                            },
                            "noMatch": {
                                "outputUndefinedValue": true
                            }
                        }
                    },
                    "foregroundColor": {
                        "transform": {
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/foregroundColor",
                            "match": {
                                "black": "Black",
                                "yellow": "Yellow",
                                "white": "White"
                            },
                            "noMatch": {
                                "outputUndefinedValue": true
                            }
                        }
                    },
                    "backgroundColor": {
                        "transform":{
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/backgroundColor",
                            "defaultInputValue": "default",
                            "match": {
                                "black": {
                                    "outputValue": "Black"
                                },
                                "yellow": {
                                    "outputValue": "Yellow"
                                },
                                "white": {
                                    "outputValue": "White"
                                },
                                "default": {
                                    "undefinedOuputValue": true
                                }
                            }
                        }
                    },
                    "lineSpacing": "http://registry\\.gpii\\.net/common/lineSpacing",
                    "inputsLarger": "http://registry\\.gpii\\.net/common/inputsLarger",
                    "toc": "http://registry\\.gpii\\.net/common/tableOfContents",
                    "links": "http://registry\\.gpii\\.net/common/emphasizeLinks",
                    "layout": "http://registry\\.gpii\\.net/common/simplifyLayout",
                    "invertImages": "http://registry\\.gpii\\.net/common/invertColours",
                    "tracking": "http://registry\\.gpii\\.net/common/magnifierFollows",
                    "magnification": {
                        "transform": {
                            "type": "fluid.transforms.quantize",
                            "inputPath": "http://registry\\.gpii\\.net/common/magnification",
                            "ranges": [
                                {
                                    "output": 1
                                }
                            ]
                        }
                    }
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "info.cloud4all.JME": {
        "name": "JME Cloud4all Themes",
        "contexts": {
            "OS": [
                {
                    "id": "web"
                }
            ]
        },
        "settingsHandlers": {
            "conf": {
                "type": "gpii.settingsHandlers.noSettings",
                "liveness": "live",
                "supportedSettings": {
                    "fontSize": {
                        "schema": {
                            "type": "string"
                        }
                    },
                    "hapticFeedback": {
                        "schema": {
                            "type": "integer"
                        }
                    },
                    "language": {
                        "schema": {
                            "type": "string"
                        }
                    },
                    "theme": {
                        "schema": {
                            "type": "string"
                        }
                    },
                    "volume": {
                        "schema": {
                            "type": "integer"
                        }
                    }
                },
                "capabilitiesTransformations": {
                    "theme": {
                        "transform": {
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/highContrastTheme",
                            "match": {
                                "black-white": "Black-White",
                                "white-black": "White-Black",
                                "yellow-black": "Yellow-Black",
                                "leather": "Leather"
                            },
                            "noMatch": {
                                "outputValue": "Leather"
                            }
                        }
                    },
                    "fontSize": {
                        "transform": {
                            "type": "fluid.transforms.quantize",
                            "inputPath": "http://registry\\.gpii\\.net/common/fontSize",
                            "ranges": [
                                {
                                    "upperBound": 12,
                                    "output": "small"
                                },
                                {
                                    "upperBound": 24,
                                    "output": "medium"
                                },
                                {
                                    "upperBound": 32,
                                    "output": "large"
                                },
                                {
                                    "upperBound": 42,
                                    "output": "veryLarge"
                                },
                                {
                                    "output": "huge"
                                }
                            ]
                        }
                    },
                    "volume": {
                        "transform": {
                            "type": "fluid.transforms.binaryOp",
                            "leftPath": "http://registry\\.gpii\\.net/common/volume",
                            "operator": "*",
                            "right": 100
                        }
                    },
                    "language": {
                        "transform": {
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/language",
                            "match": {
                                "el": "Greek",
                                "en": "English",
                                "es": "Spanish",
                                "de": "German"
                            },
                            "noMatch": {
                                "outputValue": "German"
                            }
                        }
                    }
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "net.gpii.smarthouses": {
        "name": "smarthouse",
        "id": "net.gpii.smarthouses",
        "contexts": {
            "OS": [
                {
                    "id": "web"
                }
            ]
        },
        "settingsHandlers": {
            "conf": {
                "type": "gpii.settingsHandlers.noSettings",
                "liveness": "live",
                "supportedSettings": {
                    "fontSize": {},
                    "language": {},
                    "highContrastTheme": {},
                    "volume": {}
                },
                "capabilitiesTransformations": {
                    "fontSize": {
                        "transform": {
                            "type": "fluid.transforms.round",
                            "input": {
                                "transform": {
                                    "type": "fluid.transforms.linearScale",
                                    "inputPath": "http://registry\\.gpii\\.net/common/fontSize",
                                    "factor": 1.33
                                }
                            }
                        }
                    },
                    "language": "http://registry\\.gpii\\.net/common/language",
                    "highContrastTheme": "http://registry\\.gpii\\.net/common/highContrastTheme",
                    "volume": {
                        "transform": {
                            "type": "fluid.transforms.quantize",
                            "inputPath": "http://registry\\.gpii\\.net/common/volume",
                            "ranges": [
                                {
                                    "upperBound": 0,
                                    "output": 0
                                },
                                {
                                    "upperBound": 1,
                                    "output": {
                                        "transform": {
                                            "type": "fluid.transforms.round",
                                            "input": {
                                                "transform": {
                                                    "type": "fluid.transforms.linearScale",
                                                    "inputPath": "http://registry\\.gpii\\.net/common/volume",
                                                    "factor": 100
                                                }
                                            }
                                        }
                                    }
                                },
                                {
                                    "output": 100
                                }
                            ]
                        }
                    }
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "es.codefactory.android.app.ma": {
        "name": "Mobile Accessibility",
        "contexts": {
            "OS": [
                {
                    "id": "web"
                }
            ]
        },
        "settingsHandlers": {
            "conf": {
                "type": "gpii.settingsHandlers.noSettings",
                "liveness": "live",
                "supportedSettings": {
                    "access_commonprefs_speechrate": {},
                    "access_commonprefs_speechpitch": {},
                    "access_commonprefs_editingkeyboardecho": {},
                    "access_commonprefs_punctuation": {},
                    "access_commonprefs_capitalization": {},
                    "access_commonprefs_c4a_enable_braille": {}
                },
                "capabilitiesTransformations": {
                    "access_commonprefs_speechrate": {
                        "transform": {
                            "type": "fluid.transforms.binaryOp",
                            "leftPath": "http://registry\\.gpii\\.net/common/speechRate",
                            "operator": "/",
                            "right": 40
                        }
                    },
                    "access_commonprefs_speechpitch": {
                        "transform": {
                            "type": "fluid.transforms.binaryOp",
                            "leftPath": "http://registry\\.gpii\\.net/common/pitch",
                            "operator": "*",
                            "right": 10
                        }
                    },
                    "access_commonprefs_editingkeyboardecho": {
                        "transform": {
                            "type": "fluid.transforms.condition",
                            "conditionPath": "http://registry\\.gpii\\.net/common/keyEcho",
                            "true": {
                                "transform": {
                                    "type": "fluid.transforms.condition",
                                    "conditionPath": "http://registry\\.gpii\\.net/common/wordEcho",
                                    "true": "3",
                                    "false": "1"
                                }
                            },
                            "false": {
                                "transform": {
                                    "type": "fluid.transforms.condition",
                                    "conditionPath": "http://registry\\.gpii\\.net/common/wordEcho",
                                    "true": "2",
                                    "false": "0"
                                }
                            }
                        }
                    },
                    "access_commonprefs_punctuation": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                    "access_commonprefs_capitalization": "http://registry\\.gpii\\.net/common/announceCapitals",
                    "access_commonprefs_c4a_enable_braille": "http://registry\\.gpii\\.net/common/screenReaderBrailleOutput"
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "de.fraunhofer.iao.C4A-TVM": {
        "name": "C4A-TVM",
        "contexts": {
            "OS": [
                {
                    "id": "web"
                }
            ]
        },
        "settingsHandlers": {
            "conf": {
                "type": "gpii.settingsHandlers.noSettings",
                "liveness": "live",
                "supportedSettings": {
                    "language": {
                        "schema": { "type":  "string" }
                    },
                    "contrastTheme": {
                        "schema": { "type":  "string" }
                    },
                    // We need at least one setting with a schema in order for the solution to show in the "codex" at all.
                    "fontSize": {
                        schema: {
                            "title": "Font Size",
                            "description": "Font size.",
                            "enum": ["default", "big"],
                            "enumLabels": ["Default", "Big"]
                        }
                    },
                    "timeOut": {},
                    "buttonSize": {
                        "schema": { "type":  "string" }
                    },
                    "fontFace": {
                        "schema": { "type":  "string" }
                    }
                },
                "capabilitiesTransformations": {
                    "language": "http://registry\\.gpii\\.net/common/language",
                    "contrastTheme": {
                        "transform": {
                            "type": "fluid.transforms.condition",
                            "conditionPath": "http://registry\\.gpii\\.net/common/highContrast/enabled",
                            "true": {
                                "transform": {
                                    "type": "fluid.transforms.valueMapper",
                                    "defaultInputPath": "http://registry\\.gpii\\.net/common/highContrastTheme",
                                    "match": {
                                        "white-black": "yellow-black",
                                        "yellow-black": "yellow-black"
                                    }
                                }
                            }
                        }
                    },
                    "fontSize": {
                        "transform": {
                            "type": "fluid.transforms.quantize",
                            "inputPath": "http://registry\\.gpii\\.net/common/fontSize",
                            "ranges": [
                                {
                                    "upperBound": 18,
                                    "output": "default"
                                }, {
                                    "output": "big"
                                }
                            ]
                        }
                    },
                    "timeOut": {
                        "transform": {
                            "type": "fluid.transforms.quantize",
                            "inputPath": "http://registry\\.gpii\\.net/common/sessionTimeout",
                            "ranges": [
                                {
                                    "upperBound": 30,
                                    "output": "default"
                                }, {
                                    "output": "long"
                                }
                            ]
                        }
                    }
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },

    "eu.gpii.olb": {
        "name": "Online Banking Demonstrator",
        "contexts": {
            "OS": [
                {
                    "id": "web"
                }
            ]
        },
        "settingsHandlers": {
            "conf": {
                "type": "gpii.settingsHandlers.noSettings",
                "liveness": "live",
                "supportedSettings": {
                    "language": {},
                    "textSize": {},
                    "toc": {},
                    "links": {},
                    "contrastTheme": {},
                    "signLanguageEnabled": {},
                    "signLanguage": {},
                    "interpreterType": {},
                    "interpreterName": {},
                    "pictogramsEnabled": {},
                    "simplifiedUiEnabled": {
                        "schema": { "type":  "boolean" }
                    },
                    "textStyle": {},
                    "lineSpacing": {},
                    "inputsLarger": {}

                },
                "capabilitiesTransformations": {
                    "language": "http://registry\\.gpii\\.net/common/language",
                    "textSize": {
                        "transform": {
                            "type": "fluid.transforms.binaryOp",
                            "leftPath": "http://registry\\.gpii\\.net/common/fontSize",
                            "operator": "/",
                            "right": 12
                        }
                    },
                    "toc": {
                        "transform": {
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/navigationAdaptation",
                            "match": {
                                "showToC": true,
                                "default": false
                            }
                        }
                    },
                    "links": {
                        "transform": {
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/linkAdaptation",
                            "match": {
                                "emphasizeLinks": true
                            }
                        }
                    },
                    "contrastTheme": {
                        "transform": {
                            "type": "fluid.transforms.condition",
                            "conditionPath": "http://registry\\.gpii\\.net/common/highContrast/enabled",
                            "true": {
                                "transform": {
                                    "type": "fluid.transforms.valueMapper",
                                    "defaultInputPath": "http://registry\\.gpii\\.net/common/highContrastTheme",
                                    "match": {
                                        "black-white": "bw",
                                        "white-black": "wb",
                                        "black-yellow": "by",
                                        "yellow-black": "yb"
                                    }
                                }
                            }
                        }
                    },
                    "signLanguageEnabled": "http://registry\\.gpii\\.net/common/signLanguage/enabled",
                    "signLanguage": {
                        "transform": {
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/signLanguage",
                            "match": {
                                "ase": "ase",
                                "gsg": "gsg",
                                "ils": "ils"
                            },
                            "noMatch": {
                                "outputValue": "ils"
                            }
                        }
                    },
                    "interpreterType": {
                        "transform": {
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/signLanguageInterpreterType",
                            "match": {
                                "avatar": "avatar",
                                "human": "human"
                            }
                        }
                    },
                    "pictogramsEnabled": "http://registry\\.gpii\\.net/common/pictograms/enabled",
                    "simplifiedUiEnabled": "http://registry\\.gpii\\.net/common/simplifiedUi/enabled"
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    }
}
