{
    "supplier": "DYNAmore-PDB",
    "product": "WSID",
    "anthropometry": "50M",
    "fineLocation3": "WS",
    "version": "8.1 RHS ribs",
    "body_parts": [
        {
            "component_type": "head",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10123,
                    "iso": "HEAD00GBWS",
                    "components": ["DCX", "DCY", "DCZ"],
                    "history_title": " HEAD00GBWSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10001,
                    "iso": "HEAD0000WS",
                    "components": ["ACX", "ACY", "ACZ", "VEX", "VEY", "VEZ"],
                    "history_title": " HEAD0000WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10006,
                    "iso": "HEAD0000WS",
                    "components": ["AAX", "AAY", "AAZ", "AVX", "AVY", "AVZ", "ANX", "ANY", "ANZ"],
                    "history_title": " HEAD0000WSAA"
                },
                {
                    "entity_type": "node",
                    "id": 32190,
                    "name": "Head Offset (for C-NCAP calculation)",
                    "iso": "HEADOFF0WS",
                    "components": ["DSX", "DSY", "DSZ"]
                }
            ]
        },
        {
            "component_type": "neck",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10000,
                    "iso": "NECKUP00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " NECKUP00WS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10001,
                    "iso": "NECKLO00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " NECKLO00WS"
                }
            ]
        },
        {
            "component_type": "shoulder",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10010,
                    "iso": "SHRILE00WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " SHRILE00WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10020,
                    "iso": "SHRIRI00WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " SHRIRI00WSAC"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10300,
                    "iso": "SHRIRI00WS",
                    "components": ["DSY"],
                    "history_title": " SH1DRI00WSDC0"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10360,
                    "name": "Shoulder Rib Right: Displacement (2D IR-TRACC)",
                    "iso": "SHRIRI00WS",
                    "components": ["DS#"],
                    "history_title": " SHRIRI00WSDC0"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10320,
                    "name": "Shoulder Rib Right: Rotation (2D IR-TRACC)",
                    "iso": "SHRIRI00WS",
                    "components": ["AN#"],
                    "history_title": " SHRIRI00WSANZ"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10330,
                    "iso": "SHRIRI00WS",
                    "components": ["ANX"],
                    "history_title": " SHRIRI00WSANX"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10002,
                    "iso": "SHLDLE00WS",
                    "components": ["FOX", "FOY", "FOZ"],
                    "history_title": " SHLDLE00WS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10003,
                    "iso": "SHLDRI00WS",
                    "components": ["FOX", "FOY", "FOZ"],
                    "history_title": " SHLDRI00WS"
                }
            ]
        },
        {
            "component_type": "chest",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10011,
                    "iso": "TRRILE01WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " TRRILE01WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10012,
                    "iso": "TRRILE02WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " TRRILE02WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10013,
                    "iso": "TRRILE03WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " TRRILE03WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10021,
                    "iso": "TRRIRI01WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " THRIRI01WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10022,
                    "iso": "TRRIRI02WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " THRIRI02WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10023,
                    "iso": "TRRIRI03WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " THRIRI03WSAC"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10301,
                    "iso": "TRRIRI01WS",
                    "components": ["DSY"],
                    "history_title": " TR1DRI01WSDC0"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10302,
                    "iso": "TRRIRI02WS",
                    "components": ["DSY"],
                    "history_title": " TR1DRI02WSDC0"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10303,
                    "iso": "TRRIRI03WS",
                    "components": ["DSY"],
                    "history_title": " TR1DRI03WSDC0"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10361,
                    "name": "Thorax Rib Right 01: Displacement (2D IR-TRACC)",
                    "iso": "TRRIRI01WS",
                    "components": ["DS#"],
                    "history_title": " TRRIRI01WSDC0",
                    "transfer_function": {
                        "M": 0.1185,
                        "derived_components": ["DC0"]
                    }
                },
                {
                    "entity_type": "spring tr",
                    "id": 10362,
                    "name": "Thorax Rib Right 02: Displacement (2D IR-TRACC)",
                    "iso": "TRRIRI02WS",
                    "components": ["DS#"],
                    "history_title": " TRRIRI02WSDC0",
                    "transfer_function": {
                        "M": 0.1185,
                        "derived_components": ["DC0"]
                    }
                },
                {
                    "entity_type": "spring tr",
                    "id": 10363,
                    "name": "Thorax Rib Right 03: Displacement (2D IR-TRACC)",
                    "iso": "TRRIRI03WS",
                    "components": ["DS#"],
                    "history_title": " TRRIRI03WSDC0",
                    "transfer_function": {
                        "M": 0.1185,
                        "derived_components": ["DC0"]
                    }
                },
                {
                    "entity_type": "spring rot",
                    "id": 10321,
                    "name": "Thorax Rib Right 01: Rotation (2D IR-TRACC)",
                    "iso": "TRRIRI01WS",
                    "components": ["AN#"],
                    "history_title": " TRRIRI01WSANZ",
                    "transfer_function": {
                        "M": 1.57079633,
                        "derived_components": ["ANZ"]
                    }
                },
                {
                    "entity_type": "spring rot",
                    "id": 10322,
                    "name": "Thorax Rib Right 02: Rotation (2D IR-TRACC)",
                    "iso": "TRRIRI02WS",
                    "components": ["AN#"],
                    "history_title": " TRRIRI02WSANZ",
                    "transfer_function": {
                        "M": 1.57079633,
                        "derived_components": ["ANZ"]
                    }
                },
                {
                    "entity_type": "spring rot",
                    "id": 10323,
                    "name": "Thorax Rib Right 03: Rotation (2D IR-TRACC)",
                    "iso": "TRRIRI03WS",
                    "components": ["AN#"],
                    "history_title": " TRRIRI03WSANZ",
                    "transfer_function": {
                        "M": 1.57079633,
                        "derived_components": ["ANZ"]
                    }
                },
                {
                    "entity_type": "spring rot",
                    "id": 10331,
                    "iso": "TRRIRI01WS",
                    "components": ["ANX"],
                    "history_title": " TRRIRI01WSANX"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10332,
                    "iso": "TRRIRI02WS",
                    "components": ["ANX"],
                    "history_title": " TRRIRI02WSANX"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10333,
                    "iso": "TRRIRI03WS",
                    "components": ["ANX"],
                    "history_title": " TRRIRI03WSANX"
                },
                {
                    "entity_type": "node",
                    "id": 10002,
                    "iso": "THSP0100WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " THSP0100WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10140,
                    "iso": "THSP04GBWS",
                    "components": ["DCX", "DCY", "DCZ"],
                    "history_title": " THSP04GBWSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10003,
                    "iso": "THSP0400WS",
                    "components": ["ACX", "ACY", "ACZ", "VEX", "VEY", "VEZ"],
                    "history_title": " THSP0400WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10141,
                    "iso": "THSP12GBWS",
                    "components": ["DCX", "DCY", "DCZ"],
                    "history_title": " THSP12GBWSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10004,
                    "iso": "THSP1200WS",
                    "components": ["ACX", "ACY", "ACZ", "VEX", "VEY", "VEZ"],
                    "history_title": " THSP1200WSAC"
                }
            ]
        },
        {
            "component_type": "abdomen",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10014,
                    "iso": "ABRILE01WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " ABRILE01WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10015,
                    "iso": "ABRILE02WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " ABRILE02WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10024,
                    "iso": "ABRIRI01WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " ABRIRI01WSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10025,
                    "iso": "ABRIRI02WS",
                    "components": ["ACX", "ACY", "ACZ"],
                    "history_title": " ABRIRI02WSAC"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10304,
                    "iso": "ABRIRI01WS",
                    "components": ["DSY"],
                    "history_title": " AB1DRI01WSDC0"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10305,
                    "iso": "ABRIRI02WS",
                    "components": ["DSY"],
                    "history_title": " AB1DRI02WSDC0"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10364,
                    "name": "Abdominal Rib Right 01: Displacement (2D IR-TRACC)",
                    "iso": "ABRIRI01WS",
                    "components": ["DS#"],
                    "history_title": " ABRIRI01WSDC0"
                },
                {
                    "entity_type": "spring tr",
                    "id": 10365,
                    "name": "Abdominal Rib Right 02: Displacement (2D IR-TRACC)",
                    "iso": "ABRIRI02WS",
                    "components": ["DS#"],
                    "history_title": " ABRIRI02WSDC0"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10324,
                    "name": "Abdominal Rib Right 01: Rotation (2D IR-TRACC)",
                    "iso": "ABRIRI01WS",
                    "components": ["AN#"],
                    "history_title": " ABRIRI01WSANZ"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10325,
                    "name": "Abdominal Rib Right 02: Rotation (2D IR-TRACC)",
                    "iso": "ABRIRI02WS",
                    "components": ["AN#"],
                    "history_title": " ABRIRI02WSANZ"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10334,
                    "iso": "ABRIRI01WS",
                    "components": ["ANX"],
                    "history_title": " ABRIRI01WSANX"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10335,
                    "iso": "ABRIRI02WS",
                    "components": ["ANX"],
                    "history_title": " ABRIRI02WSANX"
                }
            ]
        },
        {
            "component_type": "lumbar",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10004,
                    "iso": "LUSP0000WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " LUSP0000WS"
                }
            ]
        },
        {
            "component_type": "pelvis",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10142,
                    "iso": "PELV00GBWS",
                    "components": ["DCX", "DCY", "DCZ"],
                    "history_title": " PELV00GBWSAC"
                },
                {
                    "entity_type": "node",
                    "id": 10005,
                    "iso": "PELV0000WS",
                    "components": ["ACX", "ACY", "ACZ", "VEX", "VEY", "VEZ"],
                    "history_title": " PELV0000WSAC"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10005,
                    "iso": "SACRLE00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " SACRLE00WS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10006,
                    "iso": "SACRRI00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " SACRRI00WS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10007,
                    "iso": "PUBC0000WS",
                    "components": ["FOY"],
                    "history_title": " PUBC0000WS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10008,
                    "iso": "FEACLE00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " FEACLE00WS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10009,
                    "iso": "FEACRI00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " FEACRI00WS"
                }
            ]
        },
        {
            "component_type": "femur",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10010,
                    "iso": "FEMRLE00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " FEMRLE00WS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10011,
                    "iso": "FEMRRI00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " FEMRRI00WS"
                }
            ]
        },
        {
            "component_type": "knee",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10012,
                    "iso": "KNEELEOUWS",
                    "components": ["FOY"],
                    "history_title": " KNEELEOUWS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10013,
                    "iso": "KNEERIOUWS",
                    "components": ["FOY"],
                    "history_title": " KNEERIOUWS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10014,
                    "iso": "KNEELEINWS",
                    "components": ["FOY"],
                    "history_title": " KNEELEINWS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10015,
                    "iso": "KNEERIINWS",
                    "components": ["FOY"],
                    "history_title": " KNEERIINWS"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10041,
                    "iso": "KNEERI00WS",
                    "components": ["ANY"],
                    "history_title": " KNEERI00WSANY"
                }
            ]
        },
        {
            "component_type": "tibia",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10016,
                    "iso": "TIBILEUPWS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " TIBILEUPWS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10017,
                    "iso": "TIBIRIUPWS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " TIBIRIUPWS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10018,
                    "iso": "TIBILELOWS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " TIBILELOWS"
                },
                {
                    "entity_type": "beam basic",
                    "id": 10019,
                    "iso": "TIBIRILOWS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"],
                    "history_title": " TIBIRILOWS"
                }
            ]
        },
        {
            "component_type": "foot",
            "entities": [
                {
                    "entity_type": "spring rot",
                    "id": 10047,
                    "iso": "ANKLRI00WS",
                    "components": ["ANX"],
                    "history_title": " ANKLRI00WSANX"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10045,
                    "iso": "ANKLRI00WS",
                    "components": ["ANY"],
                    "history_title": " ANKLRI00WSANY"
                },
                {
                    "entity_type": "spring rot",
                    "id": 10043,
                    "iso": "ANKLRI00WS",
                    "components": ["ANZ"],
                    "history_title": " ANKLRI00WSANZ"
                }
            ]
        }
    ],
    "operations": [
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["HEAD00GBWSDCX0", 1],
            "output": "HEAD0000WSDCX0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["HEAD00GBWSDCY0", 1],
            "output": "HEAD0000WSDCY0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["HEAD00GBWSDCZ0", 1],
            "output": "HEAD0000WSDCZ0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["THSP04GBWSDCX0", 1],
            "output": "THSP0400WSDCX0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["THSP04GBWSDCY0", 1],
            "output": "THSP0400WSDCY0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["THSP04GBWSDCZ0", 1],
            "output": "THSP0400WSDCZ0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["THSP12GBWSDCX0", 1],
            "output": "THSP1200WSDCX0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["THSP12GBWSDCY0", 1],
            "output": "THSP1200WSDCY0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["THSP12GBWSDCZ0", 1],
            "output": "THSP1200WSDCZ0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["PELV00GBWSDCX0", 1],
            "output": "PELV0000WSDCX0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["PELV00GBWSDCY0", 1],
            "output": "PELV0000WSDCY0",
            "iso": true
        },
        {
            "comment": "Converting GB to 00 as that is the expected channel ISO code for VTC protocol",
            "operation": "mul",
            "input": ["PELV00GBWSDCZ0", 1],
            "output": "PELV0000WSDCZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["ABRIRI01WSDS#0", 0.1185],
            "output": "ABRIRI01WSDC00",
            "iso": true
        },
        {
            "comment": "Adding PI/2 for right side rib to make it consitent with hardware",
            "operation": "add",
            "input": ["ABRIRI01WSAN#0", 1.570796],
            "output": "ABRIRI01WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["ABRIRI02WSDS#0", 0.1185],
            "output": "ABRIRI02WSDC00",
            "iso": true
        },
        {
            "comment": "Adding PI/2 for right side rib to make it consitent with hardware",
            "operation": "add",
            "input": ["ABRIRI02WSAN#0", 1.570796],
            "output": "ABRIRI02WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["TRRIRI01WSDS#0", 0.1185],
            "output": "TRRIRI01WSDC00",
            "iso": true
        },
        {
            "comment": "Adding PI/2 for right side rib to make it consitent with hardware",
            "operation": "add",
            "input": ["TRRIRI01WSAN#0", 1.570796],
            "output": "TRRIRI01WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["TRRIRI02WSDS#0", 0.1185],
            "output": "TRRIRI02WSDC00",
            "iso": true
        },
        {
            "comment": "Adding PI/2 for right side rib to make it consitent with hardware",
            "operation": "add",
            "input": ["TRRIRI02WSAN#0", 1.570796],
            "output": "TRRIRI02WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["TRRIRI03WSDS#0", 0.1185],
            "output": "TRRIRI03WSDC00",
            "iso": true
        },
        {
            "comment": "Adding PI/2 for right side rib to make it consitent with hardware",
            "operation": "add",
            "input": ["TRRIRI03WSAN#0", 1.570796],
            "output": "TRRIRI03WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["SHRIRI00WSDS#0", 0.1185],
            "output": "SHRIRI00WSDC00",
            "iso": true
        },
        {
            "comment": "Flipping sign of shoulder rotation as rotation vector points up but should point down do be consistent with Z axis as defined in SAE-J11. Note IR-TRACC in hardware is also upside down but the angle output will be corrected by post-procesisng in (data aquisition system) DAS to make angle consistent with right hand rule",
            "operation": "mul",
            "input": ["SHRIRI00WSAN#0", -1],
            "output": "SHRIRI_SAE-J11_rotation",
            "iso": false
        },
        {
            "comment": "Adding PI/2 for right side rib to make it consitent with hardware (note IR-TRACC is upside down for shoulder, but angle is corrected before outputting)",
            "operation": "add",
            "input": ["SHRIRI_SAE-J11_rotation", 1.570796],
            "output": "SHRIRI00WSANZ0",
            "iso": true
        }
    ]
}
