{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "definitions": { "nsDatasetTypes": { "definitions": { "defAscanAmplitude": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "dataClass": { "enum": [ "AScanAmplitude" ] }, "storageMode": { "$ref": "#/definitions/nsGeneralTypes/definitions/defStorageMode" }, "dataValue": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "unitMin": { "type": "number" }, "unitMax": { "type": "number" }, "unit": { "enum": [ "Percent" ] } }, "additionalProperties": false, "required": [ "min", "max", "unitMin", "unitMax", "unit" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "uniqueItems": true, "anyOf": [ { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/ultrasound" } ], "description": "One Line Scan UT [U,V,Ultrasound]\nRaster Scan PA 0 Deg Paintbrush [U,V,Ultrasound]\n", "minItems": 3, "maxItems": 3 }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/ultrasound" } ], "description": "One Line Scan UT [V,U,Ultrasound]\nRaster Scan PA 0 Deg Paintbrush [V,U,Ultrasound]\n", "minItems": 3, "maxItems": 3 }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "oneOf": [ { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/beam" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/stackedAScan" } ] }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/ultrasound" } ], "description": "One Line Scan PA Angle Beam [U,Beam,Ultrasound]\nOne Line Scan FMC [U,StackedAScan] \n \n", "minItems": 2, "maxItems": 3 }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/beam" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/ultrasound" } ], "description": "Raster Scan PA Angle Beam [U,V,Beam,Ultrasound]\n", "minItems": 4, "maxItems": 4 }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/beam" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/ultrasound" } ], "description": "Raster Scan PA Angle Beam [V,U,Beam,Ultrasound]\n", "title": "", "minItems": 4, "maxItems": 4 } ] } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] }, "defAscanStatus": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "AScanStatus" ] }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "storageMode": { "$ref": "#/definitions/nsGeneralTypes/definitions/defStorageMode" }, "dataValue": { "type": "object", "properties": { "unit": { "enum": [ "Bitfield" ] }, "hasData": { "type": "integer", "minimum": 1 }, "noSynchro": { "type": "integer", "minimum": 1 }, "saturated": { "type": "integer", "minimum": 1 } }, "additionalProperties": false, "required": [ "unit", "hasData" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 2, "maxItems": 3, "uniqueItems": true, "anyOf": [ { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" } ] }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" } ] }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/beam" } ] }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/beam" } ] }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAxis/definitions/beam" } ] } ] } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] }, "defTfmValue": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "dataClass": { "enum": [ "TfmValue" ] }, "storageMode": { "$ref": "#/definitions/nsGeneralTypes/definitions/defStorageMode" }, "dataValue": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "unitMin": { "type": "number" }, "unitMax": { "type": "number" }, "unit": { "enum": [ "Coherence", "Percent" ] } }, "additionalProperties": false, "required": [ "min", "max", "unitMin", "unitMax", "unit" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 3, "maxItems": 3, "uniqueItems": true, "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/wCoordinate" } ] } }, "additionalProperties": false, "required": [ "dimensions", "path", "dataValue" ] }, "defTfmStatus": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "TfmStatus" ] }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "storageMode": { "$ref": "#/definitions/nsGeneralTypes/definitions/defStorageMode" }, "dataValue": { "type": "object", "properties": { "unit": { "enum": [ "Bitfield" ] }, "hasData": { "type": "integer", "minimum": 1 }, "noSynchro": { "type": "integer", "minimum": 1 }, "saturated": { "type": "integer", "minimum": 1 } }, "additionalProperties": false, "required": [ "unit", "hasData" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 2, "maxItems": 2, "uniqueItems": true, "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" } ] } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] }, "defFiringSource": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "FiringSource" ] }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "storageMode": { "$ref": "#/definitions/nsGeneralTypes/definitions/defStorageMode" }, "dataValue": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "unit": { "enum": [ "BeamId", "ColumnId" ] } }, "additionalProperties": false, "required": [ "min", "max", "unit" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 2, "maxItems": 2, "uniqueItems": true, "anyOf": [ { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" } ] }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" } ] } ] } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] }, "defCscanPeak": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "CScanPeak" ] }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "storageMode": { "$ref": "#/definitions/nsGeneralTypes/definitions/defStorageMode" }, "dataValue": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "unitMin": { "type": "number" }, "unitMax": { "type": "number" }, "unit": { "enum": [ "Percent" ] } }, "additionalProperties": false, "required": [ "min", "max", "unitMin", "unitMax", "unit" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 2, "maxItems": 2, "uniqueItems": true, "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" } ] } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] }, "defCscanTime": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "CScanTime" ] }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "storageMode": { "$ref": "#/definitions/nsGeneralTypes/definitions/defStorageMode" }, "dataValue": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "unitMin": { "type": "number" }, "unitMax": { "type": "number" }, "unit": { "enum": [ "Seconds" ] } }, "additionalProperties": false, "required": [ "min", "max", "unitMin", "unitMax", "unit" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 2, "maxItems": 2, "uniqueItems": true, "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" } ] } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] }, "defCscanStatus": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "CScanStatus" ] }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "storageMode": { "$ref": "#/definitions/nsGeneralTypes/definitions/defStorageMode" }, "dataValue": { "type": "object", "properties": { "unit": { "enum": [ "Bitfield" ] }, "hasData": { "type": "integer", "minimum": 1 }, "noSynchro": { "type": "integer", "minimum": 1 }, "saturated": { "type": "integer", "minimum": 1 } }, "additionalProperties": false, "required": [ "unit", "hasData" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 2, "maxItems": 2, "uniqueItems": true, "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" } ] } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] }, "defImpedance": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "Impedance" ] }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "dataValue": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "unitMin": { "type": "number" }, "unitMax": { "type": "number" }, "unit": { "type": "string" } }, "additionalProperties": false, "required": [ "min", "max", "unitMin", "unitMax", "unit" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 2, "maxItems": 2, "uniqueItems": true, "items": [ { "$ref": "#/definitions/nsEddyCurrentTypes/definitions/defAxis/definitions/channel" }, { "$ref": "#/definitions/nsEddyCurrentTypes/definitions/defAxis/definitions/acquisitionCycle" } ] } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] }, "defImpedanceStatus": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "ImpedanceStatus" ] }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataTransformations": { "$ref": "#/definitions/nsGeneralTypes/definitions/defTransformations" }, "dataValue": { "type": "object", "properties": { "unit": { "enum": [ "Bitfield" ] }, "hasData": { "type": "integer", "minimum": 1 }, "saturated": { "type": "integer", "minimum": 1 } }, "additionalProperties": false, "required": [ "unit" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 2, "maxItems": 2, "uniqueItems": true, "items": [ { "$ref": "#/definitions/nsEddyCurrentTypes/definitions/defAxis/definitions/channel" }, { "$ref": "#/definitions/nsEddyCurrentTypes/definitions/defAxis/definitions/acquisitionCycle" } ] } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] }, "defEncoderPosition": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "Encoder" ] }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "dataValue": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "unitMin": { "type": "number" }, "unitMax": { "type": "number" }, "unit": { "type": "string" } }, "additionalProperties": false, "required": [ "min", "max", "unitMin", "unitMax", "unit" ] }, "path": { "type": "string" }, "dimensions": { "type": "array", "minItems": 1, "maxItems": 1, "uniqueItems": true, "additionalItems": false, "items": { "type": "object", "properties": { "axis": { "enum": [ "AcquisitionCycle" ] }, "quantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" }, "lastCellRewrited": { "type": "integer", "minimum": 0 }, "motionDeviceId": { "$ref": "#/properties/motionDevices/items/properties/id" } }, "additionalProperties": false, "required": [ "axis", "quantity", "motionDeviceId" ] } } }, "additionalProperties": false, "required": [ "dimensions", "dataValue" ] } } }, "nsDatasets": { "type": "array", "minItems": 0, "uniqueItems": false, "items": { "anyOf": [ { "description": "Ascan Amplitude", "$ref": "#/definitions/nsDatasetTypes/definitions/defAscanAmplitude" }, { "description": "Ascan Status", "$ref": "#/definitions/nsDatasetTypes/definitions/defAscanStatus" }, { "description": "TFM Value", "$ref": "#/definitions/nsDatasetTypes/definitions/defTfmValue" }, { "description": "TFM Status", "$ref": "#/definitions/nsDatasetTypes/definitions/defTfmStatus" }, { "description": "Firing Source", "$ref": "#/definitions/nsDatasetTypes/definitions/defFiringSource" }, { "description": "C-Scan Peak", "$ref": "#/definitions/nsDatasetTypes/definitions/defCscanPeak" }, { "description": "C-Scan Time", "$ref": "#/definitions/nsDatasetTypes/definitions/defCscanTime" }, { "description": "C-Scan Status", "$ref": "#/definitions/nsDatasetTypes/definitions/defCscanStatus" }, { "description": "Impedance", "$ref": "#/definitions/nsDatasetTypes/definitions/defImpedance" }, { "description": "Impedance Status", "$ref": "#/definitions/nsDatasetTypes/definitions/defImpedanceStatus" } ] } }, "nsProcessTypes": { "definitions": { "defUltrasonicConventional": { "oneOf": [ { "type": "object", "description": "Pulse Echo", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware" ] }, "ultrasonicConventional": { "type": "object", "properties": { "pulseEcho": { "type": "object", "properties": { "probeId": { "anyOf": [ { "description": "Conventional Round Probe Id", "$ref": "#/properties/probes/items/oneOf/0/properties/id" }, { "description": "Conventional Rectangular Probe Id", "$ref": "#/properties/probes/items/oneOf/1/properties/id" } ] } } }, "waveMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaveMode" }, "velocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "wedgeDelay": { "type": "number", "minimum": 0 }, "rectification": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defRectification" }, "ascanSynchroMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanSynchroMode" }, "ascanCompressionFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanCompressionFactor" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "ultrasoundMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUltrasoundMode" }, "referenceAmplitude": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defReferenceAmplitude" }, "referenceGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "digitalBandPassFilter": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defDigitalBandPassFilter" }, "smoothingFilter": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "averagingFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAveragingFactor" }, "digitizingFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "pulse": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPulse" }, "beams": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUtBeam" }, "gates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSinglePositionGates" }, "calibrationStates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCalibrationStates" } }, "additionalProperties": false, "required": [ "pulseEcho", "waveMode", "velocity", "wedgeDelay", "rectification", "beams" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "ultrasonicConventional" ] }, { "type": "object", "description": "Pitch Catch", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware" ] }, "ultrasonicConventional": { "type": "object", "properties": { "pitchCatch": { "type": "object", "properties": { "pulserProbeId": { "anyOf": [ { "description": "Conventional Round Probe Id", "$ref": "#/properties/probes/items/oneOf/0/properties/id" }, { "description": "Conventional Rectangular Probe Id", "$ref": "#/properties/probes/items/oneOf/1/properties/id" } ] }, "receiverProbeId": { "anyOf": [ { "description": "Conventional Round Probe Id", "$ref": "#/properties/probes/items/oneOf/0/properties/id" }, { "description": "Conventional Rectangular Probe Id", "$ref": "#/properties/probes/items/oneOf/1/properties/id" } ] } } }, "waveMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaveMode" }, "velocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "wedgeDelay": { "type": "number", "minimum": 0 }, "rectification": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defRectification" }, "ascanSynchroMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanSynchroMode" }, "ascanCompressionFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanCompressionFactor" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "ultrasoundMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUltrasoundMode" }, "referenceAmplitude": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defReferenceAmplitude" }, "referenceGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "digitalBandPassFilter": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defDigitalBandPassFilter" }, "smoothingFilter": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "averagingFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAveragingFactor" }, "digitizingFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "pulse": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPulse" }, "beams": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUtBeam" }, "gates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSinglePositionGates" }, "calibrationStates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCalibrationStates" } }, "additionalProperties": false, "required": [ "pitchCatch", "waveMode", "velocity", "wedgeDelay", "rectification", "beams" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "ultrasonicConventional" ] }, { "type": "object", "description": "TOFD", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware" ] }, "ultrasonicConventional": { "type": "object", "properties": { "tofd": { "type": "object", "properties": { "pulserProbeId": { "anyOf": [ { "description": "Conventional Round Probe Id", "$ref": "#/properties/probes/items/oneOf/0/properties/id" }, { "description": "Conventional Rectangular Probe Id", "$ref": "#/properties/probes/items/oneOf/1/properties/id" } ] }, "receiverProbeId": { "anyOf": [ { "description": "Conventional Round Probe Id", "$ref": "#/properties/probes/items/oneOf/0/properties/id" }, { "description": "Conventional Rectangular Probe Id", "$ref": "#/properties/probes/items/oneOf/1/properties/id" } ] }, "pcs": { "type": "number", "minimum": 0 } } }, "waveMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaveMode" }, "velocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "wedgeDelay": { "type": "number", "minimum": 0 }, "rectification": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defRectification" }, "ascanSynchroMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanSynchroMode" }, "ascanCompressionFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanCompressionFactor" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "ultrasoundMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUltrasoundMode" }, "referenceAmplitude": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defReferenceAmplitude" }, "referenceGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "digitalBandPassFilter": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defDigitalBandPassFilter" }, "smoothingFilter": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "averagingFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAveragingFactor" }, "digitizingFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "pulse": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPulse" }, "beams": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUtBeam" }, "gates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSinglePositionGates" }, "calibrationStates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCalibrationStates" } }, "additionalProperties": false, "required": [ "tofd", "waveMode", "velocity", "wedgeDelay", "rectification", "beams" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "ultrasonicConventional" ] } ] }, "defUltrasonicPhasedArray": { "oneOf": [ { "type": "object", "description": "Pulse Echo", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware" ] }, "ultrasonicPhasedArray": { "type": "object", "properties": { "pulseEcho": { "oneOf": [ { "type": "object", "additionalProperties": false, "properties": { "probeId": { "description": "Phased Array Linear Probe Id", "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "linearFormation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defLinearFormation" } }, "required": [ "linearFormation" ] }, { "type": "object", "additionalProperties": false, "properties": { "probeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id", "description": "Phased Array Linear Probe Id" }, "sectorialFormation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSectorialFormation" } }, "required": [ "sectorialFormation" ] }, { "type": "object", "additionalProperties": false, "properties": { "probeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "compoundFormation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCompoundFormation" } }, "required": [ "compoundFormation" ] } ] }, "waveMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaveMode" }, "velocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "pulse": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPulse" }, "focusing": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defFocusing" }, "beams": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPaBeams" }, "gates": { "oneOf": [ { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSinglePositionGates" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defMultiPositionGates" } ] }, "rectification": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defRectification" }, "digitizingFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "ascanSynchroMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanSynchroMode" }, "ascanCompressionFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanCompressionFactor" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "wedgeDelay": { "type": "number", "minimum": 0 }, "ultrasoundMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUltrasoundMode" }, "referenceAmplitude": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defReferenceAmplitude" }, "referenceGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "digitalBandPassFilter": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defDigitalBandPassFilter" }, "smoothingFilter": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "averagingFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAveragingFactor" }, "calibrationStates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCalibrationStates" }, "lawFile": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defLawFile" } }, "additionalProperties": false, "required": [ "pulseEcho", "waveMode", "velocity", "focusing", "beams", "rectification" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "ultrasonicPhasedArray" ] }, { "type": "object", "description": "Pitch Catch", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware" ] }, "ultrasonicPhasedArray": { "type": "object", "properties": { "pitchCatch": { "oneOf": [ { "type": "object", "additionalProperties": false, "required": [ "linearFormation" ], "properties": { "pulserProbeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "receiverProbeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "linearFormation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defLinearFormation" } } }, { "type": "object", "additionalProperties": false, "required": [ "sectorialFormation" ], "properties": { "pulserProbeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "receiverProbeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "sectorialFormation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSectorialFormation" } } }, { "type": "object", "additionalProperties": false, "required": [ "compoundFormation" ], "properties": { "pulserProbeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "receiverProbeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "compoundFormation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCompoundFormation" } } } ] }, "waveMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaveMode" }, "velocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "pulse": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPulse" }, "focusing": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defFocusing" }, "beams": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPaBeams" }, "gates": { "oneOf": [ { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSinglePositionGates" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defMultiPositionGates" } ] }, "rectification": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defRectification" }, "digitizingFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "ascanSynchroMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanSynchroMode" }, "ascanCompressionFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanCompressionFactor" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "wedgeDelay": { "type": "number", "minimum": 0 }, "ultrasoundMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUltrasoundMode" }, "referenceAmplitude": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defReferenceAmplitude" }, "referenceGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "digitalBandPassFilter": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defDigitalBandPassFilter" }, "smoothingFilter": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "averagingFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAveragingFactor" }, "calibrationStates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCalibrationStates" }, "lawFile": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defLawFile" } }, "additionalProperties": false, "required": [ "pitchCatch", "waveMode", "velocity", "focusing", "beams", "rectification" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "ultrasonicPhasedArray" ] }, { "type": "object", "description": "Tandem", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware" ] }, "ultrasonicPhasedArray": { "type": "object", "properties": { "tandem": { "type": "object", "properties": { "pulserProbeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "receiverProbeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "pulserFormation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSingleFormation" }, "receiverFormation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSingleFormation" } }, "additionalProperties": false, "required": [ "pulserProbeId", "receiverProbeId", "pulserFormation", "receiverFormation" ] }, "waveMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaveMode" }, "pulse": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPulse" }, "beams": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPaBeams" }, "gates": { "oneOf": [ { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSinglePositionGates" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defMultiPositionGates" } ] }, "rectification": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defRectification" }, "digitizingFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "ascanSynchroMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanSynchroMode" }, "ascanCompressionFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAscanCompressionFactor" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "wedgeDelay": { "type": "number", "minimum": 0 }, "ultrasoundMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUltrasoundMode" }, "referenceAmplitude": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defReferenceAmplitude" }, "referenceGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "digitalBandPassFilter": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defDigitalBandPassFilter" }, "smoothingFilter": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "averagingFactor": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAveragingFactor" }, "calibrationStates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCalibrationStates" }, "lawFile": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defLawFile" } }, "additionalProperties": false, "required": [ "tandem", "waveMode", "beams", "rectification" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "ultrasonicPhasedArray" ] } ] }, "defUltrasonicMatrixCapture": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware" ] }, "ultrasonicMatrixCapture": { "oneOf": [ { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUltrasonicCaptureFMC" }, { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defUltrasonicCapturePWI" } ] } }, "additionalProperties": false, "required": [ "id" ] }, "defTotalFocusingMethod": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware" ] }, "totalFocusingMethod": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defTotalFocusingMethod" } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "totalFocusingMethod" ] }, "defGain": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware", "Software" ] }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "gain" ] }, "defSinglePositionGates": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware", "Software" ] }, "ultrasonicGates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defSinglePositionGates" } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "ultrasonicGates" ] }, "defMultiPositionGates": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware", "Software" ] }, "ultrasonicGates": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defMultiPositionGates" } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "ultrasonicGates" ] }, "defTcg": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Software" ] }, "ultrasonicTcg": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defTcg" } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "ultrasonicTcg" ] }, "defThickness": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Software" ] }, "thickness": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "gates": { "type": "array", "minItems": 1, "maxItems": 2, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "gateDetection": { "enum": [ "Crossing", "MaximumPeak", "FirstPeak", "LastPeak" ] } }, "additionalProperties": false, "required": [ "id", "gateDetection" ] } } }, "additionalProperties": false, "required": [ "min", "max", "gates" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "thickness" ] }, "defTfmBoxGates": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Software" ] }, "tfmBoxGates": { "type": "array", "minItems": 1, "uniqueItems": true, "items": [ { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "threshold": { "type": "number" }, "yImagingMin": { "type": "number" }, "yImagingMax": { "type": "number" }, "zImagingMin": { "type": "number", "minimum": 0 }, "zImagingMax": { "type": "number" } }, "additionalProperties": false, "required": [ "id", "threshold", "yImagingMin", "yImagingMax", "zImagingMin", "zImagingMax" ] } ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "implementation", "tfmBoxGates" ] }, "defEddyCurrentLowPassFilter": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware", "Software" ] }, "lowPassFilter": { "type": "object", "properties": { "cutoffFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "filterType": { "enum": [ "IIR", "FIR" ] }, "cutoffUnits": { "enum": [ "Hz", "PerMeter" ] } }, "required": [ "cutoffFrequency", "filterType", "cutoffUnits" ], "additionalProperties": false } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "lowPassFilter" ] }, "defEddyCurrentHighPassFilter": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware", "Software" ] }, "highPassFilter": { "type": "object", "properties": { "cutoffFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "filterType": { "enum": [ "IIR", "FIR" ] }, "cutoffUnits": { "enum": [ "Hz", "PerMeter" ] } }, "additionalProperties": false, "required": [ "cutoffFrequency", "filterType", "cutoffUnits" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "highPassFilter" ] }, "defEddyCurrentFigure6Filter": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware", "Software" ] }, "figure6Filter": { "type": "object", "properties": { "cutoffFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "cutoffUnits": { "enum": [ "Hz", "PerMeter" ] } }, "additionalProperties": false, "required": [ "cutoffUnits", "cutoffFrequency" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "figure6Filter" ] }, "defEddyCurrentFigure8Filter": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware", "Software" ] }, "figure8Filter": { "type": "object", "properties": { "cutoffFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "cutoffUnits": { "enum": [ "Hz", "PerMeter" ] } }, "additionalProperties": false, "required": [ "cutoffFrequency", "cutoffUnits" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "figure8Filter" ] }, "defMapToDiscrete": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Software" ] }, "mapToDiscrete": { "type": "object", "properties": {} } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "mapToDiscrete" ] }, "defEddyCurrent": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "maxItems": 0 }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware" ] }, "eddyCurrent": { "type": "object", "properties": { "channels": { "$ref": "#/definitions/nsEddyCurrentTypes/definitions/defChannels" }, "probeId": { "$ref": "#/properties/probes/items/oneOf/3/properties/id" }, "sensorGroupId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "driveAmplitude": { "type": "number", "minimum": 0 }, "frequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" } }, "additionalProperties": false, "required": [ "channels", "probeId", "sensorGroupId", "driveAmplitude", "frequency" ] } }, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "eddyCurrent" ], "additionalProperties": false }, "defImpedanceTransformation": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware", "Software" ] }, "impedanceTransformation": { "type": "object", "properties": { "realGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "imaginaryGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "rotation": { "type": "number" }, "channels": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "rotation": { "type": "number" } }, "additionalProperties": false, "required": [ "id", "gain", "rotation" ] } } }, "additionalProperties": false, "required": [ "realGain", "imaginaryGain", "rotation" ] } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "impedanceTransformation" ] }, "defConductivity": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Software" ] }, "conductivity": { "type": "object", "properties": { "references": { "type": "array", "minItems": 1, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "conductivity": { "type": "number" }, "lift": { "type": "number" }, "impedance": { "type": "object", "properties": { "real": { "type": "number" }, "imaginary": { "type": "number" } }, "required": [ "real", "imaginary" ] } }, "required": [ "id", "conductivity", "lift", "impedance" ] } } }, "required": [ "references" ], "additionalProperties": false } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "conductivity" ] }, "defEddyCurrentLayerDetection": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Hardware", "Software" ] }, "layerDetection": { "type": "object", "properties": {}, "additionalProperties": false } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "layerDetection" ] }, "defEddyCurrentMix": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "inputs": { "type": "array", "minItems": 2, "maxItems": 2, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessInput" } }, "outputs": { "type": "array", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProcessOutput" } }, "dataMappingId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "implementation": { "enum": [ "Software" ] }, "eddyCurrentMix": { "type": "object", "properties": { "z1InputId": {"$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId"}, "z2InputId": {"$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId"}, "channels": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": {"$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId"}, "k1": {"type": "number"}, "k2": {"type": "number"}, "k3": {"type": "number"}, "k4": {"type": "number"} }, "additionalProperties": false, "required": [ "id", "k1", "k2", "k3", "k4" ] } } }, "required": [ "z1InputId", "z2InputId", "channels" ], "additionalProperties": false } }, "additionalProperties": false, "required": [ "id", "inputs", "outputs", "dataMappingId", "implementation", "eddyCurrentMix" ] } } }, "nsProcesses": { "type": "array", "minItems": 1, "uniqueItems": false, "items": { "anyOf": [ { "description": "Ultrasonic Conventional", "$ref": "#/definitions/nsProcessTypes/definitions/defUltrasonicConventional" }, { "description": "Ultrasonic Phased Array", "$ref": "#/definitions/nsProcessTypes/definitions/defUltrasonicPhasedArray" }, { "description": "Ultrasonic Matrix Capture", "$ref": "#/definitions/nsProcessTypes/definitions/defUltrasonicMatrixCapture" }, { "description": "Total Focusing Method", "$ref": "#/definitions/nsProcessTypes/definitions/defTotalFocusingMethod" }, { "description": "Gain", "$ref": "#/definitions/nsProcessTypes/definitions/defGain" }, { "description": "Gates per beam", "$ref": "#/definitions/nsProcessTypes/definitions/defSinglePositionGates" }, { "description": "Gates per group", "$ref": "#/definitions/nsProcessTypes/definitions/defMultiPositionGates" }, { "description": "TCG", "$ref": "#/definitions/nsProcessTypes/definitions/defTcg" }, { "description": "Thickness", "$ref": "#/definitions/nsProcessTypes/definitions/defThickness" }, { "description": "Tfm Box Gates", "$ref": "#/definitions/nsProcessTypes/definitions/defTfmBoxGates" }, { "description": "Eddy Current low pass filter", "$ref": "#/definitions/nsProcessTypes/definitions/defEddyCurrentLowPassFilter" }, { "description": "Eddy Current high pass filter", "$ref": "#/definitions/nsProcessTypes/definitions/defEddyCurrentHighPassFilter" }, { "description": "Eddy Current Figure 6 filter", "$ref": "#/definitions/nsProcessTypes/definitions/defEddyCurrentFigure6Filter" }, { "description": "Eddy Current Figure 8 filter", "$ref": "#/definitions/nsProcessTypes/definitions/defEddyCurrentFigure8Filter" }, { "description": "Map To Discrete", "$ref": "#/definitions/nsProcessTypes/definitions/defMapToDiscrete" }, { "description": "Eddy Current Acquisition", "$ref": "#/definitions/nsProcessTypes/definitions/defEddyCurrent" }, { "description": "Impedance Transformation", "$ref": "#/definitions/nsProcessTypes/definitions/defImpedanceTransformation" }, { "description": "Eddy Current Conductivity", "$ref": "#/definitions/nsProcessTypes/definitions/defConductivity" }, { "description": "Eddy Current Mix", "$ref": "#/definitions/nsProcessTypes/definitions/defEddyCurrentMix" }, { "description": "Eddy Current layer detection", "$ref": "#/definitions/nsProcessTypes/definitions/defEddyCurrentLayerDetection" } ] } }, "nsProbeTypes": { "definitions": { "defConventionalRectangular": { "type": "object", "properties": { "centralFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "length": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "width": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "elements": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "pinId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "acquisitionUnitId": { "$ref": "#/properties/acquisitionUnits/items/properties/id" }, "connectorName": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" } }, "additionalProperties": false, "required": [ "id", "acquisitionUnitId", "connectorName" ] } } }, "additionalProperties": false, "required": [ "centralFrequency", "length", "width", "elements" ] }, "defConventionalRound": { "type": "object", "properties": { "centralFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "diameter": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "elements": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "pinId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "acquisitionUnitId": { "$ref": "#/properties/acquisitionUnits/items/properties/id" }, "connectorName": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" } }, "additionalProperties": false, "required": [ "id", "acquisitionUnitId", "connectorName" ] } } }, "additionalProperties": false, "required": [ "centralFrequency", "diameter", "elements" ] }, "defPhasedArrayLinear": { "type": "object", "properties": { "centralFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "elements": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "pinId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "acquisitionUnitId": { "$ref": "#/properties/acquisitionUnits/items/properties/id" }, "connectorName": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "primaryIndex": { "type": "integer", "minimum": 0 }, "secondaryIndex": { "type": "integer", "minimum": 0 }, "enabled": { "type": "boolean" } }, "additionalProperties": false, "required": [ "id", "pinId", "acquisitionUnitId", "connectorName" ] } }, "primaryAxis": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProbeAxis" }, "secondaryAxis": { "$ref": "#/definitions/nsGeneralTypes/definitions/defProbeAxis" } }, "additionalProperties": false, "required": [ "centralFrequency", "elements", "primaryAxis", "secondaryAxis" ] }, "defEddyCurrentProbe": { "type": "object", "properties": { "sensorGroups": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "sensors": { "type": "array", "minItems": 1, "items": { "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "primaryOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "secondaryOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "acquisitionUnitId": { "$ref": "#/properties/acquisitionUnits/items/properties/id" } }, "required": [ "primaryOffset", "secondaryOffset", "acquisitionUnitId", "id" ] } } }, "additionalProperties": false, "required": [ "id", "name", "sensors" ] } } }, "additionalProperties": false, "required": [ "sensorGroups" ] } } }, "nsGeneralTypes": { "definitions": { "defRange": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "resolution": { "$ref": "#/definitions/nsGeneralTypes/definitions/defResolution" } }, "additionalProperties": false, "required": [ "min", "max", "resolution" ] }, "defUniqueId": { "type": "integer", "minimum": 0 }, "defIds": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "integer", "minimum": 0 } }, "defNonNullString": { "type": "string", "minLength": 1 }, "defFrequency": { "type": "number", "minimum": 0 }, "defAngle": { "type": "number" }, "defQuantity": { "type": "integer", "minimum": 1 }, "defSpeed": { "type": "number", "minimum": 0 }, "defResolution": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "defOffset": { "type": "number" }, "defStorageMode": { "enum": [ "Independent", "Paintbrush" ] }, "defGain": { "type": "number" }, "defRecurrence": { "type": "number", "minimum": 0 }, "defProbeAxis": { "type": "object", "properties": { "elementGap": { "type": "number", "minimum": 0 }, "elementQuantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" }, "elementLength": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "referencePoint": { "type": "number" }, "casingLength": { "type": "number", "minimum": 0, "exclusiveMinimum": true } }, "additionalProperties": false, "required": [ "elementGap", "elementQuantity", "elementLength", "referencePoint" ] }, "defTransformations": { "type": "array", "uniqueItems": false, "items": [ { "type": "object", "properties": { "processId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "groupId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" } }, "additionalProperties": false, "required": [ "processId" ] } ] }, "defProcessInput": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "processId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "groupId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" } }, "additionalProperties": false, "required": [ "processId" ] }, "defProcessOutput": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "datasetId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "dataClass": { "enum": [ "AScanAmplitude", "AScanStatus", "FiringSource", "TfmValue", "TfmStatus", "ElementaryAscan", "CScanPeak", "CScanTime", "CScanStatus", "Impedance", "ImpedanceStatus" ] }, "parameters": { "anyOf": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defGateOutputParameters" } ] } }, "additionalProperties": false, "required": [ "id" ] }, "defGateOutputParameters": { "type": "object", "properties": { "gateId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "gateDetection": { "enum": [ "Crossing", "MaximumPeak", "FirstPeak", "LastPeak" ] } }, "additionalProperties": false, "required": [ "gateId" ] }, "defAxis": { "definitions": { "uCoordinate": { "type": "object", "properties": { "axis": { "enum": [ "UCoordinate" ] }, "quantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" }, "resolution": { "$ref": "#/definitions/nsGeneralTypes/definitions/defResolution" }, "offset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "motionDeviceId": { "$ref": "#/properties/motionDevices/items/properties/id" }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "unit": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "lastCellRewrited": { "type": "integer", "description": "When the acquisition has been done in Time mode (no encoder) this axis is a circular buffer in which the first position is given in lastCellRewrited", "minimum": 0 } }, "additionalProperties": false, "required": [ "axis", "quantity", "resolution" ] }, "wCoordinate": { "type": "object", "properties": { "axis": { "enum": [ "WCoordinate" ] }, "quantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" }, "resolution": { "$ref": "#/definitions/nsGeneralTypes/definitions/defResolution" }, "offset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" } }, "additionalProperties": false, "required": [ "axis", "quantity", "resolution" ] }, "vCoordinate": { "type": "object", "properties": { "axis": { "enum": [ "VCoordinate" ] }, "quantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" }, "resolution": { "$ref": "#/definitions/nsGeneralTypes/definitions/defResolution" }, "offset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "motionDeviceId": { "$ref": "#/properties/motionDevices/items/properties/id" }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "unit": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" } }, "additionalProperties": false, "required": [ "axis", "quantity", "resolution" ] }, "polar": { "type": "object", "properties": { "axis": { "enum": [ "Polar" ] }, "quantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" }, "resolution": { "$ref": "#/definitions/nsGeneralTypes/definitions/defResolution" }, "offset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "motionDeviceId": { "$ref": "#/properties/motionDevices/items/properties/id" }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "unit": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" } }, "additionalProperties": false, "required": [ "axis", "quantity", "resolution" ] } } }, "defCalibrationState": { "type": "object", "properties": { "calibrated": { "type": "boolean" } }, "additionalProperties": false, "required": [ "calibrated" ] }, "defUnitDefinedAxis": { "type": "object", "properties": { "axis": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "unit": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" } }, "required": [ "axis", "unit" ], "additionalProperties": false }, "defUnspecifiedGeometry": { "type": "object", "properties": { "surfaces": { "type": "array", "minItems": 1, "maxItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" } }, "additionalProperties": false, "required": ["id"] } } }, "additionalProperties": false, "required": ["surfaces"] } } }, "nsUltrasonicTypes": { "definitions": { "defUltrasonicCaptureFMC": { "type": "object", "properties": { "acquisitionPattern": { "enum": [ "FMC" ] }, "digitalBandPassFilter": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defDigitalBandPassFilter" }, "waveforms": { "type": "array", "minItems": 1, "uniqueItems": false, "items": [ { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "pulse": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPulse" } } } ] }, "pulserFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "digitizingFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "beams": { "type": "array", "minItems": 1, "uniqueItems": false, "items": [ { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "pulsers": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defElementsPulser" }, "receivers": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defElementsReceiver" } } } ] } } }, "defUltrasonicCapturePWI": { "type": "object", "properties": { "acquisitionPattern": { "enum": [ "PWI" ] }, "planeWaveImaging": { "type": "object", "properties": { "waveMode": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaveMode" }, "velocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "waveLocation": { "enum": [ "Wedge", "FirstLeg", "SecondLeg" ] }, "startAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "stopAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "quantityAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" } }, "additionalProperties": false, "required": [ "waveMode", "waveLocation", "startAngle", "stopAngle", "quantityAngle" ] }, "digitalBandPassFilter": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defDigitalBandPassFilter" }, "waveforms": { "type": "array", "minItems": 1, "uniqueItems": false, "items": [ { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "pulse": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPulse" } } } ] }, "pulserFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "digitizingFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "beams": { "type": "array", "minItems": 1, "uniqueItems": false, "items": [ { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "pulsers": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defElementsPWIPulser" }, "receivers": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defElementsReceiver" } } } ] } } }, "defTcg": { "type": "object", "properties": { "synchroMode": { "enum": [ "Pulse", "AscanSynchroRelative", "SynchroGateRelative" ] }, "points": { "type": "array", "uniqueItems": true, "items": { "type": "object", "properties": { "time": { "type": "number" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" } }, "additionalProperties": false, "required": [ "time", "gain" ] } } }, "additionalProperties": false, "required": [ "points" ] }, "defAxis": { "definitions": { "ultrasound": { "type": "object", "properties": { "axis": { "enum": [ "Ultrasound" ] }, "quantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" }, "resolution": { "$ref": "#/definitions/nsGeneralTypes/definitions/defResolution" }, "offset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" } }, "additionalProperties": false, "required": [ "axis", "quantity", "resolution" ] }, "beam": { "type": "object", "properties": { "axis": { "enum": [ "Beam" ] }, "beams": { "type": "array", "minItems": 1, "uniqueItems": true, "items": [ { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "velocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "skewAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "refractedAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "uCoordinateOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "vCoordinateOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "ultrasoundOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" } }, "additionalProperties": false, "required": [ "velocity", "skewAngle", "refractedAngle", "uCoordinateOffset", "vCoordinateOffset", "ultrasoundOffset" ] } ] } }, "additionalProperties": false, "required": [ "axis", "beams" ] }, "stackedAScan": { "type": "object", "properties": { "axis": { "enum": [ "StackedAScan" ] }, "quantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" }, "resolution": { "$ref": "#/definitions/nsGeneralTypes/definitions/defResolution" } }, "additionalProperties": false, "required": [ "axis", "quantity", "resolution" ] } } }, "defVelocity": { "type": "number", "minimum": 0 }, "defPositiveAngle": { "type": "number", "minimum": 0 }, "defRectification": { "enum": [ "None", "Positive", "Negative", "Full" ] }, "defWaveMode": { "enum": [ "Longitudinal", "TransversalVertical" ] }, "defAscanSynchroMode": { "enum": [ "Pulse", "SynchroGateRelative" ] }, "defAscanCompressionFactor": { "type": "integer", "minimum": 1 }, "defAveragingFactor": { "type": "integer", "minimum": 1 }, "defUltrasoundMode": { "enum": [ "TrueDepth", "SoundPath", "Time" ] }, "defReferenceAmplitude": { "type": "number" }, "defPulse": { "type": "object", "properties": { "width": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "voltage": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "polarity": { "enum": [ "Bipolar", "UnipolarPositive", "UnipolarNegative" ] } }, "additionalProperties": true, "required": [ "width", "voltage" ] }, "defFocusing": { "type": "object", "properties": { "mode": { "enum": [ "TrueDepth", "HalfPath", "Unfocused", "Projection" ] }, "distance": { "type": "number", "minimum": 0 }, "angle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" } }, "additionalProperties": false, "required": [ "mode" ] }, "defPaBeams": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "skewAngle": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPositiveAngle" }, "refractedAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "beamDelay": { "type": "number", "minimum": 0 }, "ascanStart": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAScanStart" }, "ascanLength": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAScanLength" }, "gainOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "recurrence": { "$ref": "#/definitions/nsGeneralTypes/definitions/defRecurrence" }, "sumGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "sumGainMode": { "enum": [ "Manual", "Automatic" ] }, "tcg": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defTcg" }, "pulsers": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defElementDelays" }, "receivers": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defElementDelays" } }, "additionalProperties": false, "required": [ "id", "skewAngle", "refractedAngle", "beamDelay", "ascanStart", "ascanLength" ] } }, "defUtBeam": { "type": "array", "minItems": 1, "maxItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "refractedAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "ascanStart": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAScanStart" }, "ascanLength": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAScanLength" }, "tcg": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defTcg" }, "recurrence": { "$ref": "#/definitions/nsGeneralTypes/definitions/defRecurrence" } }, "additionalProperties": false, "required": [ "id", "refractedAngle", "ascanStart", "ascanLength" ] } }, "defLawFile": { "type": "object", "properties": { "filename": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "path": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" } }, "additionalProperties": false, "required": [ "filename", "path" ] }, "defDigitalBandPassFilter": { "type": "object", "properties": { "filterType": { "enum": [ "None", "LowPass", "HighPass", "BandPass" ] }, "highCutOffFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "lowCutOffFrequency": { "$ref": "#/definitions/nsGeneralTypes/definitions/defFrequency" }, "characteristic": { "enum": [ "None", "TOFD" ] } }, "additionalProperties": false, "required": [ "filterType", "highCutOffFrequency", "lowCutOffFrequency", "characteristic" ] }, "defElementsPulser": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "elementId": { "$ref": "#/definitions/nsProbeTypes/definitions/defPhasedArrayLinear/properties/elements/items/properties/id" }, "probeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "waveformId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" } }, "additionalProperties": false, "required": [ "id", "elementId", "probeId", "waveformId" ] } }, "defElementsReceiver": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "elementId": { "$ref": "#/definitions/nsProbeTypes/definitions/defPhasedArrayLinear/properties/elements/items/properties/id" }, "probeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "ascanStart": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAScanStart" }, "ascanLength": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defAScanLength" } }, "additionalProperties": false, "required": [ "id", "elementId", "probeId" ] } }, "defElementsPWIPulser": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "elementId": { "$ref": "#/definitions/nsProbeTypes/definitions/defPhasedArrayLinear/properties/elements/items/properties/id" }, "probeId": { "$ref": "#/properties/probes/items/oneOf/2/properties/id" }, "waveformId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "delay": { "type": "number" } }, "additionalProperties": false, "required": [ "id", "elementId", "probeId", "waveformId", "delay" ] } }, "defElementDelays": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "elementId": { "$ref": "#/definitions/nsProbeTypes/definitions/defPhasedArrayLinear/properties/elements/items/properties/id" }, "delay": { "type": "number", "minimum": 0 } }, "additionalProperties": false, "required": [ "id", "elementId", "delay" ] } }, "defLinearFormation": { "type": "object", "properties": { "probeFirstElementId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "probeLastElementId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "elementStep": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "elementAperture": { "type": "integer", "minimum": 0, "exclusiveMinimum": true }, "beamRefractedAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" } }, "additionalProperties": false, "required": [ "probeFirstElementId", "probeLastElementId", "elementStep", "elementAperture", "beamRefractedAngle" ] }, "defSectorialFormation": { "type": "object", "properties": { "probeFirstElementId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "elementAperture": { "type": "integer", "minimum": 0, "exclusiveMinimum": true }, "beamRefractedAngles": { "type": "object", "properties": { "start": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "stop": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "step": { "type": "number", "minimum": 0, "exclusiveMinimum": true } }, "additionalProperties": false, "required": [ "start", "stop", "step" ] } }, "additionalProperties": false, "required": [ "probeFirstElementId", "elementAperture", "beamRefractedAngles" ] }, "defCompoundFormation": { "type": "object", "properties": { "probeFirstElementId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "probeLastElementId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "elementAperture": { "type": "integer", "minimum": 0, "exclusiveMinimum": true }, "beamRefractedAngles": { "type": "object", "properties": { "start": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "stop": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "step": { "type": "number", "minimum": 0, "exclusiveMinimum": true } }, "additionalProperties": false, "required": [ "start", "stop", "step" ] } }, "additionalProperties": false, "required": [ "probeFirstElementId", "probeLastElementId", "elementAperture", "beamRefractedAngles" ] }, "defSingleFormation": { "type": "object", "properties": { "probeFirstElementId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "elementAperture": { "type": "integer", "minimum": 0, "exclusiveMinimum": true }, "beamRefractedAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "velocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "focusingDistance": { "type": "number", "minimum": 0, "exclusiveMinimum": true } }, "additionalProperties": false, "required": [ "probeFirstElementId", "elementAperture", "beamRefractedAngle" ] }, "defTotalFocusingMethod": { "type": "object", "properties": { "signalSource": { "enum": [ "Analytic", "Real" ] }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "referenceAmplitude": { "type": "number" }, "referenceGain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" }, "rectangularGrid": { "type": "object", "properties": { "yImagingLimits": { "$ref": "#/definitions/nsGeneralTypes/definitions/defRange" }, "zImagingLimits": { "$ref": "#/definitions/nsGeneralTypes/definitions/defRange" } }, "additionalProperties": false, "required": [ "yImagingLimits", "zImagingLimits" ] }, "fmcPulserIds": { "$ref": "#/definitions/nsGeneralTypes/definitions/defIds" }, "fmcReceiverIds": { "$ref": "#/definitions/nsGeneralTypes/definitions/defIds" }, "pathName": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "waveSet": { "type": "object", "properties": { "pulsings": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaves" }, "receivings": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaves" } }, "additionalProperties": false, "required": [ "pulsings", "receivings" ] }, "columns": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "gainMap": { "type": "object", "properties": { "points": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "position": { "type": "number" }, "gain": { "$ref": "#/definitions/nsGeneralTypes/definitions/defGain" } }, "additionalProperties": false, "required": [ "position", "gain" ] } } }, "additionalProperties": false, "required": [ "points" ] } }, "additionalProperties": false, "required": [ "id", "gainMap" ] } } }, "additionalProperties": false, "required": [ "gain", "rectangularGrid", "pathName", "waveSet" ] }, "defWaves": { "type": "array", "minItems": 1, "items": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWaveMode" } }, "defWave": { "type": "object", "properties": { "nominalVelocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "attenuationCoefficient": { "type": "number", "minimum": 0 } }, "additionalProperties": false, "required": [ "nominalVelocity" ] }, "defMaterial": { "type": "object", "properties": { "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "longitudinalWave": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWave" }, "transversalVerticalWave": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWave" }, "density": { "type": "number", "minimum": 0, "exclusiveMinimum": true } }, "additionalProperties": false, "required": [ "name", "longitudinalWave", "transversalVerticalWave" ] }, "defWeldGeometry": { "type": "object", "properties": { "weldAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "material": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defMaterial" }, "bevelShape": { "enum": [ "U", "V" ] }, "symmetry": { "enum": [ "Symmetric", "StraightLeft", "StraightRight" ] }, "heatAffectedZoneWidth": { "type": "number" }, "offset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "upperCap": { "type": "object", "properties": { "width": { "type": "number", "minimum": 0 }, "height": { "type": "number", "minimum": 0 } }, "additionalProperties": false, "required": [ "height" ] }, "lowerCap": { "type": "object", "properties": { "width": { "type": "number", "minimum": 0 }, "height": { "type": "number", "minimum": 0 } }, "additionalProperties": false, "required": [ "height" ] }, "fills": { "type": "array", "minItems": 1, "items": { "type": "object", "properties": { "angle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "height": { "type": "number", "minimum": 0 } }, "additionalProperties": false, "required": [ "angle", "height" ] } }, "hotPass": { "type": "object", "properties": { "angle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "height": { "type": "number", "minimum": 0 } }, "additionalProperties": false, "required": [ "angle", "height" ] }, "land": { "type": "object", "properties": { "height": { "type": "number", "minimum": 0 } }, "additionalProperties": false, "required": [ "height" ] }, "root": { "type": "object", "properties": { "angle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "height": { "type": "number", "minimum": 0 } }, "additionalProperties": false, "required": [ "angle", "height" ] } }, "additionalProperties": false, "required": [ "weldAngle", "bevelShape", "symmetry" ] }, "defPlateGeometry": { "type": "object", "properties": { "width": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "length": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "thickness": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "material": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defMaterial" }, "surfaces": { "type": "array", "minItems": 1, "maxItems": 2, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "enum": [ "Top", "Bottom" ] } }, "additionalProperties": false, "required": [ "id", "name" ] } } }, "additionalProperties": false, "required": [ "thickness", "surfaces" ] }, "defPipeGeometry": { "type": "object", "properties": { "length": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "thickness": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "outerRadius": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "angularOpening": { "type": "number", "minimum": 0, "maximum": 360, "exclusiveMinimum": true }, "material": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defMaterial" }, "surfaces": { "type": "array", "minItems": 1, "maxItems": 2, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "enum": [ "Inside", "Outside" ] } }, "additionalProperties": false, "required": [ "id", "name" ] } } }, "additionalProperties": false, "required": [ "thickness", "surfaces" ] }, "defBarGeometry": { "type": "object", "properties": { "length": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "diameter": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "material": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defMaterial" }, "surfaces": { "type": "array", "minItems": 1, "maxItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "enum": [ "Outside" ] } }, "additionalProperties": false, "required": [ "id", "name" ] } } }, "additionalProperties": false, "required": [ "length", "diameter", "surfaces" ] }, "defCoordinate": { "type": "object", "properties": { "x": { "type": "number" }, "y": { "type": "number" }, "z": { "type": "number" } }, "additionalProperties": false, "required": [ "x", "y", "z" ] }, "defCustomOverlay2D": { "type": "object", "properties": { "filename": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "format": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "extension": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "path": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "localScale": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCoordinate" }, "localTranslation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCoordinate" }, "translation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCoordinate" }, "scale": { "type": "number" }, "rotation": { "type": "number" }, "width": { "type": "number" }, "thickness": { "type": "number" } }, "additionalProperties": false, "required": [ "filename", "format", "extension", "path", "scale", "rotation", "width", "thickness" ] }, "defPositioning": { "type": "object", "properties": { "specimenId": { "anyOf": [ { "description": "Plate Id", "$ref": "#/properties/specimens/items/oneOf/0/properties/id" }, { "description": "Pipe Id", "$ref": "#/properties/specimens/items/oneOf/1/properties/id" }, { "description": "Bar Id", "$ref": "#/properties/specimens/items/oneOf/2/properties/id" } ] }, "surfaceId": { "anyOf": [ { "description": "Plate Surface Id", "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPlateGeometry/properties/surfaces/items/properties/id" }, { "description": "Pipe Surface Id", "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPipeGeometry/properties/surfaces/items/properties/id" }, { "description": "Bar Surface Id", "$ref": "#/definitions/nsUltrasonicTypes/definitions/defBarGeometry/properties/surfaces/items/properties/id" } ] }, "uCoordinateOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "vCoordinateOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "skewAngle": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPositiveAngle" } }, "additionalProperties": false, "required": [ "specimenId", "surfaceId", "uCoordinateOffset", "vCoordinateOffset", "skewAngle" ] }, "defCalibrationStates": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "anyOf": [ { "type": "object", "properties": { "sensitivityCalibration": { "$ref": "#/definitions/nsGeneralTypes/definitions/defCalibrationState" } } }, { "type": "object", "properties": { "tcgCalibration": { "$ref": "#/definitions/nsGeneralTypes/definitions/defCalibrationState" } } }, { "type": "object", "properties": { "velocityCalibration": { "$ref": "#/definitions/nsGeneralTypes/definitions/defCalibrationState" } } }, { "type": "object", "properties": { "wedgeDelayCalibration": { "$ref": "#/definitions/nsGeneralTypes/definitions/defCalibrationState" } } }, { "type": "object", "properties": { "dacCalibration": { "$ref": "#/definitions/nsGeneralTypes/definitions/defCalibrationState" } } }, { "type": "object", "properties": { "dgsCalibration": { "$ref": "#/definitions/nsGeneralTypes/definitions/defCalibrationState" } } }, { "type": "object", "properties": { "tofdWedgeDelayCalibration": { "$ref": "#/definitions/nsGeneralTypes/definitions/defCalibrationState" } } } ] } }, "defWedgeAssociation": { "type": "object", "properties": { "wedgeId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "mountingLocationId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "orientation": { "enum": [ "Normal", "Reverse" ] } }, "additionalProperties": false, "required": [ "wedgeId", "mountingLocationId" ] }, "defSinglePositionGates": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "type": "string", "minLength": 1 }, "geometry": { "enum": [ "SoundPath", "TrueDepth" ] }, "start": { "type": "number" }, "length": { "type": "number", "minimum": 0, "exclusiveMinimum": true }, "threshold": { "type": "number" }, "thresholdPolarity": { "enum": [ "Absolute", "Positive", "Negative" ] }, "synchronization": { "type": "object", "properties": { "mode": { "enum": [ "Pulse", "GateRelative" ] }, "triggeringEvent": { "enum": [ "Peak", "Crossing" ] }, "gateId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" } } } }, "additionalProperties": false, "required": [ "id", "start", "length", "threshold", "thresholdPolarity", "synchronization" ] } }, "defMultiPositionGates": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "type": "string", "minLength": 1 }, "geometry": { "enum": [ "SoundPath", "TrueDepth" ] }, "starts": { "type": "array", "minItems": 1, "items": { "type": "number" } }, "lengths": { "type": "array", "minItems": 1, "items": { "type": "number", "minimum": 0, "exclusiveMinimum": true } }, "threshold": { "type": "number" }, "thresholdPolarity": { "enum": [ "Absolute", "Positive", "Negative" ] }, "synchronization": { "type": "object", "properties": { "mode": { "enum": [ "Pulse", "GateRelative" ] }, "triggeringEvent": { "enum": [ "Peak", "Crossing" ] }, "gateId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" } }, "required": [ "mode" ], "additionalProperties": false } }, "additionalProperties": false, "required": [ "id", "starts", "lengths", "threshold", "thresholdPolarity", "synchronization" ] } }, "defAScanStart": { "type": "number" }, "defAScanLength": { "type": "number", "minimum": 0 } } }, "nsEddyCurrentTypes": { "definitions": { "defChannels": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "sensorId": { "$ref": "#/definitions/nsProbeTypes/definitions/defEddyCurrentProbe/properties/sensorGroups/items/properties/id" }, "inputId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "timeslot": { "type": "integer", "minimum": 0 } }, "additionalProperties": false, "required": [ "id", "sensorId" ] } }, "defAxis": { "definitions": { "acquisitionCycle": { "type": "object", "properties": { "axis": { "enum": [ "AcquisitionCycle" ] }, "quantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" }, "lastCellRewrited": { "type": "integer", "minimum": 0 } }, "additionalProperties": false, "required": [ "axis", "quantity" ] }, "channel": { "type": "object", "properties": { "axis": { "enum": [ "Channel" ] }, "quantity": { "$ref": "#/definitions/nsGeneralTypes/definitions/defQuantity" } }, "additionalProperties": false, "required": [ "axis", "quantity" ] } } }, "defCalibrationStates": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "anyOf": [ { "type": "object", "properties": { "conductivityCalibration": { "$ref": "#/definitions/nsGeneralTypes/definitions/defCalibrationState" } } } ] } }, "defWedgeAssociation": { "type": "object", "properties": { "wedgeId": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "orientation": { "enum": [ "Normal", "Reverse", "FlipPrimary", "FlipSecondary" ] } }, "additionalProperties": false, "required": [ "wedgeId", "orientation" ] } } } }, "properties": { "$schema": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "version": { "type": "string", "enum": [ "4.0.0", "4.1.0", "4.2.0", "4.3.0" ] }, "scenario": { "enum": [ "General Weld", "General Mapping" ] }, "groups": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "usage": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "datasets": { "$ref": "#/definitions/nsDatasets" }, "processes": { "$ref": "#/definitions/nsProcesses" } }, "additionalProperties": false, "required": [ "id" ] }, "additionalProperties": false }, "dataMappings": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "oneOf": [ { "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "specimenId": { "anyOf": [ { "description": "Plate Id", "$ref": "#/properties/specimens/items/oneOf/0/properties/id" }, { "description": "Pipe Id", "$ref": "#/properties/specimens/items/oneOf/1/properties/id" }, { "description": "Bar Id", "$ref": "#/properties/specimens/items/oneOf/2/properties/id" } ] }, "surfaceId": { "anyOf": [ { "description": "Plate Surface Id", "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPlateGeometry/properties/surfaces/items/properties/id" }, { "description": "Pipe Surface Id", "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPipeGeometry/properties/surfaces/items/properties/id" }, { "description": "Bar Surface Id", "$ref": "#/definitions/nsUltrasonicTypes/definitions/defBarGeometry/properties/surfaces/items/properties/id" } ] }, "discreteGrid": { "type": "object", "properties": { "scanPattern": { "enum": [ "OneLineScan", "RasterScan" ] }, "uCoordinateOrientation": { "enum": [ "Around", "Along", "Width", "Length" ] }, "dimensions": { "type": "array", "minItems": 1, "maxItems": 2, "uniqueItems": true, "additionalItems": false, "oneOf": [ { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" } ] }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/vCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" } ] }, { "type": "array", "items": [ { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/uCoordinate" }, { "$ref": "#/definitions/nsGeneralTypes/definitions/defAxis/definitions/polar" } ] } ] } }, "additionalProperties": false, "required": [ "scanPattern", "uCoordinateOrientation", "dimensions" ] } }, "additionalProperties": false, "required": [ "id", "specimenId", "surfaceId", "discreteGrid" ] }, { "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "specimenId": { "anyOf": [ { "description": "Plate Id", "$ref": "#/properties/specimens/items/oneOf/0/properties/id" }, { "description": "Pipe Id", "$ref": "#/properties/specimens/items/oneOf/1/properties/id" }, { "description": "Bar Id", "$ref": "#/properties/specimens/items/oneOf/2/properties/id" } ] }, "surfaceId": { "anyOf": [ { "description": "Plate Surface Id", "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPlateGeometry/properties/surfaces/items/properties/id" }, { "description": "Pipe Surface Id", "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPipeGeometry/properties/surfaces/items/properties/id" }, { "description": "Bar Surface Id", "$ref": "#/definitions/nsUltrasonicTypes/definitions/defBarGeometry/properties/surfaces/items/properties/id" } ] }, "allCycle": { "type": "object", "properties": { "datasets": { "type": "array", "minItems": 1, "items": { "$ref": "#/definitions/nsDatasetTypes/definitions/defEncoderPosition" } } }, "additionalProperties": false } }, "additionalProperties": false, "required": [ "id", "specimenId", "surfaceId", "allCycle" ] } ] } }, "probes": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "oneOf": [ { "type": "object", "description": "Conventional Round", "required": [ "id", "conventionalRound", "wedgeAssociation" ], "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "model": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serie": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serialNumber": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "conventionalRound": { "$ref": "#/definitions/nsProbeTypes/definitions/defConventionalRound" }, "wedgeAssociation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWedgeAssociation" } }, "additionalProperties": false }, { "type": "object", "description": "Conventional Rectangular", "required": [ "id", "conventionalRectangular", "wedgeAssociation" ], "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "model": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serie": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serialNumber": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "conventionalRectangular": { "$ref": "#/definitions/nsProbeTypes/definitions/defConventionalRectangular" }, "wedgeAssociation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWedgeAssociation" } }, "additionalProperties": false }, { "type": "object", "description": "Phased Array Linear", "required": [ "id", "phasedArrayLinear", "wedgeAssociation" ], "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "model": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serie": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serialNumber": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "phasedArrayLinear": { "$ref": "#/definitions/nsProbeTypes/definitions/defPhasedArrayLinear" }, "wedgeAssociation": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWedgeAssociation" } }, "additionalProperties": false }, { "type": "object", "description": "Eddy Current Probe", "required": [ "id", "eddyCurrentProbe", "wedgeAssociation" ], "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "model": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serialNumber": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "eddyCurrentProbe": { "$ref": "#/definitions/nsProbeTypes/definitions/defEddyCurrentProbe" }, "wedgeAssociation": { "$ref": "#/definitions/nsEddyCurrentTypes/definitions/defWedgeAssociation" } }, "additionalProperties": false } ] }, "additionalProperties": false }, "wedges": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "oneOf": [ { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "model": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serie": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serialNumber": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "angleBeamWedge": { "type": "object", "properties": { "width": { "type": "number", "minimum": 0 }, "height": { "type": "number", "minimum": 0 }, "length": { "type": "number", "minimum": 0 }, "longitudinalVelocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "mountingLocations": { "type": "array", "minItems": 1, "maxItems": 2, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "wedgeAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "squintAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "roofAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "primaryOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "secondaryOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "tertiaryOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" } }, "additionalProperties": false, "required": [ "id", "wedgeAngle", "primaryOffset", "secondaryOffset", "tertiaryOffset" ] } }, "pocketDepth": { "type": "number" } }, "additionalProperties": false, "required": [ "width", "height", "length", "longitudinalVelocity", "mountingLocations" ] }, "positioning": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPositioning" } }, "description": "angleBeamWedge", "additionalProperties": false, "required": [ "id", "model", "angleBeamWedge", "positioning" ] }, { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "model": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serie": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serialNumber": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "fluidColumn": { "type": "object", "properties": { "nominalHeight": { "type": "number", "minimum": 0 }, "longitudinalVelocity": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defVelocity" }, "mountingLocations": { "type": "array", "minItems": 1, "maxItems": 2, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "wedgeAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "squintAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "roofAngle": { "$ref": "#/definitions/nsGeneralTypes/definitions/defAngle" }, "primaryOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "secondaryOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" }, "tertiaryOffset": { "$ref": "#/definitions/nsGeneralTypes/definitions/defOffset" } }, "additionalProperties": false, "required": [ "id", "wedgeAngle", "primaryOffset", "secondaryOffset", "tertiaryOffset" ] } } }, "additionalProperties": false, "required": [ "nominalHeight", "longitudinalVelocity", "mountingLocations" ] }, "positioning": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPositioning" } }, "description": "fluidColumn", "additionalProperties": false, "required": [ "id", "model", "fluidColumn", "positioning" ] }, { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "model": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serie": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serialNumber": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "positioning": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPositioning" } }, "description": "Eddy Current Wedge", "additionalProperties": false, "required": [ "id", "model", "positioning" ] } ] } }, "specimens": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "oneOf": [ { "type": "object", "description": "Plate", "required": [ "id", "plateGeometry" ], "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "plateGeometry": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPlateGeometry" }, "weldGeometry": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWeldGeometry" }, "customOverlay2D": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCustomOverlay2D" } }, "additionalProperties": false }, { "type": "object", "description": "Pipe", "required": [ "id", "pipeGeometry" ], "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "pipeGeometry": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defPipeGeometry" }, "weldGeometry": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defWeldGeometry" }, "customOverlay2D": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defCustomOverlay2D" } }, "additionalProperties": false }, { "type": "object", "description": "Bar", "required": [ "id", "barGeometry" ], "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "barGeometry": { "$ref": "#/definitions/nsUltrasonicTypes/definitions/defBarGeometry" } }, "additionalProperties": false }, { "type": "object", "description": "Unspecified", "required": [ "id", "unspecifiedGeometry" ], "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "unspecifiedGeometry": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUnspecifiedGeometry" } }, "additionalProperties": false } ] }, "additionalProperties": false }, "acquisitionUnits": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "platform": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "model": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "serialNumber": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "acquisitionRate": { "type": "number", "minimum": 0, "exclusiveMinimum": true } }, "additionalProperties": false, "required": [ "id", "platform", "model", "acquisitionRate" ] } }, "motionDevices": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "$ref": "#/definitions/nsGeneralTypes/definitions/defUniqueId" }, "name": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "encoder": { "type": "object", "properties": { "serialNumber": { "$ref": "#/definitions/nsGeneralTypes/definitions/defNonNullString" }, "mode": { "enum": [ "Quadrature", "ClockDir", "PulseUp", "PulseDown", "Tach", "Index" ] }, "stepResolution": { "$ref": "#/definitions/nsGeneralTypes/definitions/defResolution" }, "preset": { "type": "number" }, "inverted": { "type": "boolean" }, "unit": { "enum": [ "StepPerMeter", "StepPerRevolution" ] } }, "additionalProperties": false, "required": [ "mode", "stepResolution" ] } }, "additionalProperties": false, "required": [ "id", "encoder" ] } } }, "additionalProperties": false, "required": [ "$schema", "version", "scenario", "groups" ] }