{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "title": "Representation of a fluid medium.",
    "description": "Contains relevant property values of a fluid medium.\nSchema on github: https://github.com/Engineer2B/PowerCalculator-Schemas",
    "type": "object",
    "required": [
        "Name",
        "Density",
        "Acoustic attenuation",
        "Speed of sound",
        "Heat absorption fraction",
        "Isobaric mass heat capacity",
        "Thermal conductivity"
    ],
    "properties": {
        "Name": {
            "type": "string",
            "description": "A unique identifier of the fluid medium.",
            "examples": [
                "Water",
                "Markoil",
                "Muscle"
            ]
        },
        "Speed of sound": {
            "description": "The speed of sound in the medium.\n\ud83d\udd17https://en.wikipedia.org/wiki/Speed_of_sound \nUnit: [m/s].",
            "type": "number",
            "exclusiveMinimum": 0,
            "examples": [
                997,
                1500
            ]
        },
        "Acoustic attenuation": {
            "description": "The attenuation of an acoustic wave in the medium.\nCan also be an equation string with parameter 'T' for temperature in [K].\n\ud83d\udd17https://en.wikipedia.org/wiki/Attenuation \n\ud83d\udd17https://en.wikipedia.org/wiki/Neper\nUnit: [Np/m].",
            "oneOf": [
                {
                    "type": "number",
                    "inclusiveMinimum": 0,
                    "examples": [
                        0,
                        2,
                        3.3
                    ]
                },
                {
                    "type": "string",
                    "examples": [
                        "e^(T-37)"
                    ]
                }
            ]
        },
        "Density": {
            "description": "The amount of mass per volume.\nCan also be an equation string with parameter 'T' for temperature in [K].\n \ud83d\udd17https://en.wikipedia.org/wiki/Density \nUnit: [kg/(m^3)].",
            "oneOf": [
                {
                    "type": "number",
                    "exclusiveMinimum": 0,
                    "examples": [
                        997,
                        1500
                    ]
                },
                {
                    "type": "string",
                    "examples": [
                        "1000*(T-37)"
                    ]
                }
            ]
        },
        "Heat absorption fraction": {
            "description": "The fraction of the heat that contributes to a temperature increase.\nUnit: [-].",
            "type": "number",
            "inclusiveMinimum": 0,
            "inclusiveMaximum": 1,
            "examples": [
                1,
                0,
                0.3
            ]
        },
        "Isobaric mass heat capacity": {
            "description": "The ratio of the heat added to (or removed from) an object to the resulting temperature change per unit mass at a constant pressure.\n\ud83d\udd17https://en.wikipedia.org/w/index.php?title=Table_of_specific_heat_capacities&oldid=896766640 \nUnit: [(m^2)/(K s^2)] or, more familiar, [J/(kg K)].",
            "type": "number",
            "exclusiveMinimum": 0,
            "examples": [
                0.84
            ]
        },
        "Thermal conductivity": {
            "description": "The property of a material to conduct heat evaluated in terms of Fourier's Law for heat conduction.\n\ud83d\udd17https://en.wikipedia.org/wiki/Thermal_conductivity \n\ud83d\udd17https://en.wikipedia.org/wiki/Laser_flash_analysis \nUnit: [(kg m)/(s^3 K)] or, more familiar, [(W m)/K].",
            "type": "number",
            "exclusiveMinimum": 0,
            "examples": [
                0.15
            ]
        },
        "Atmospheric pressure freezing point": {
            "description": "The temperature at 1 atm at which the medium changes to the solid phase.\nUnit: [K]",
            "type": "number",
            "exclusiveMinimum": 0,
            "examples": [
                273
            ]
        }
    }
}