Interface Objects JSON examples¶
This section gives some examples of interface objects in JSON format
Product JSON¶
Example interface object in JSON format:
{
"DEBUG": true,
"Name": "OldGearBox",
"Description": "",
"STEPFile": "c:/NEW/PATH/TO/THE/STEPFILE",
"parameterList": [
{
"DEBUG": true,
"Name": "Parameter1",
"Description": "First parameter",
"Key": "",
"GUID": "PAR1",
"Value": 10.0,
"StopCriteria": "maxDepth=0"
},
{
"DEBUG": true,
"Name": "Parameter2",
"Description": "Second parameter",
"Key": "",
"GUID": "PAR2",
"Value": 81.0,
"StopCriteria": "maxDepth=0"
}
]
}
Product Part JSON¶
Example interface object in JSON format:
{
"DEBUG": true,
"Name": "(3) Input Shaft",
"Description": "Description NEW",
"ProductType": "Unknown",
"Quantity": 115,
"parameterList": [
{
"DEBUG": true,
"Name": "Name NEW",
"Description": "",
"Key": "Input",
"GUID": "",
"Value": "[10mm]",
"StopCriteria": "Not defined"
},
{
"DEBUG": true,
"Name": "Name NEW",
"Description": "",
"Key": "Output",
"GUID": "",
"Value": "[50Nm^-1]",
"StopCriteria": "Not defined"
}
],
"partList": [
{
"DEBUG": true,
"Name": "(8) Small Gear",
"Description": "Description NEW",
"ProductType": "GEAR",
"Quantity": 1,
"parameterList": [],
"partList": [],
"material": [
"Structural Steel(SS)",
0.0,
0.0,
7850.0,
0.0,
""
]
}
],
"material": [
"Structural Steel(SS)",
0.0,
0.0,
7850.0,
0.0,
""
]
}
Assembly Sequence JSON¶
Example interface object in JSON format:
{
"DEBUG": true,
"Name": "SUB-1",
"Description": "NOT IN MM",
"AssemblyMetric": [
"OP-1",
"0.89"
],
"AssemblyOptions": [
"SUB-1",
[
{
"DEBUG": true,
"Name": "SCREW-2-3",
"Description": "NOT IN MM",
"Fastners": [
"Part-1"
],
"OperationMetric": [
"OP-2",
"0.57"
],
"Operators": [
[
"Joachim",
65.0,
180.0,
55.0,
120.0
]
],
"Tool": [
[
"Screwdriver-1",
150.0,
0.0,
"0.0.0.0",
"c:/../../../",
[
"Joachim"
]
]
]
}
],
[
[
"SUB-2",
[],
[]
],
[
"SUB-3",
[
{
"DEBUG": true,
"Name": "SCREW-4-5",
"Description": "NOT IN MM",
"Fastners": [
"Part-1",
"Part-2"
],
"OperationMetric": [
"OP-2",
"0.57"
],
"Operators": [
[
"Moharram",
65.0,
175.0,
110.0,
60.0
]
],
"Tool": [
[
"Screwdriver-1",
150.0,
0.0,
"0.0.0.0",
"c:/../../../",
[
"Moharram"
]
]
]
}
],
[
[
"SUB-4",
[],
[]
],
[
"SUB-5",
[],
[]
]
]
]
]
]
}
DFA Rule JSON¶
Example interface object in JSON format:
{
"DFARule": {
"Name": "rule-height-max",
"Description": "Hello World",
"RuleType": "DFA_MaxValue",
"isAppliedToProduct": "True",
"isAppliedToProductPart": "False",
"isAppliedToAssemblySequence": "False",
"hasScorePropagation": "0",
"hasScoreType": "0",
"optionList": [
{
"Name": "TE",
"Value1": "True",
"Value2": "None"
},
{
"Name": "Option1",
"Value1": "OptionEnumSelect",
"Value2": "None"
}
],
"property": [
{
"Name": "Weight",
"Value1": "100.0",
"Value2": "None"
}
]
}
}
Performance model JSON¶
Example interface object in JSON format:
{
"DEBUG": true,
"Name": "OPTIMIZATION-v1",
"Description": "Optimization problem v1",
"OptimizationMethod": [
"HEURISTIC-M01",
"Heuristic method",
"Heuristic"
],
"StopConditionList": [
{
"DEBUG": true,
"Name": "STOP-1",
"Description": "Stop criterion 1",
"Value": 3600.0,
"StopCriteria": "maxTime"
},
{
"DEBUG": true,
"Name": "STOP-2",
"Description": "Stop criterion 2",
"Value": 15001.0,
"StopCriteria": "maxDepth"
}
],
"MethodPerformance": [],
"RAWResults": [],
"interpretedResults": [],
"parameterList": [
{
"DEBUG": true,
"Name": "Mass_var",
"Description": "Total mass variable",
"InitialValue": 10.0,
"MinValue": 10.0,
"MaxValue": 100.0,
"Optimum": 81.0,
"Resolution": 0.1,
"parameterList": [
{
"DEBUG": true,
"Name": "Mass",
"Description": "Total mass parameter",
"Key": "MASS",
"GUID": null,
"Value": null,
"StopCriteria": "maxDepth=0"
}
]
}
],
"ObjectiveList": [
{
"DEBUG": true,
"Name": "MIN-MASS",
"Description": "Minimize the total mass",
"ObjectiveOption": [
"Mass_var",
"Total mass variable",
81.0
]
}
],
"ConstraintList": [
{
"DEBUG": true,
"Name": "CONSTRAINT1",
"Description": "Constraint1",
"Expression": [
[
"LEFT",
"Mass_var",
"Total mass variable",
81.0
],
[
"RIGHT",
85.0
],
"<"
]
}
]
}
ASG JSON¶
Example interface object in JSON format:
{
"DEBUG": true,
"Name": "ASG-1-config",
"Description": "AssemblySequenceDraft1 NEW",
"ProcessingType": "Full",
"Generator": [
"Gen-1 NEW",
"SinglePartGenerator"
],
"Selector": [
"Sel-1 NEW",
"RuleSelector"
],
"SelectorDFARuleList": [],
"Evaluator": [
"Eval-1 NEW",
"RuleEvaluator"
],
"EvaluatorDFARuleList": [],
"StopConditionList": [
{
"DEBUG": true,
"Name": "Stop-1",
"Description": "Maximum depth of search NEW",
"Value": 100.0,
"StopCriteria": "maxDepth"
},
{
"DEBUG": true,
"Name": "Stop-2",
"Description": "Maximum time of search NEW",
"Value": 3600.0,
"StopCriteria": "maxTime"
}
]
}
Contract JSON¶
Example interface object in JSON format:
{
"DEBUG": true,
"Name": "C-1",
"Description": "Co-desgin contract C-1",
"Assumptions": [
[
{
"DEBUG": true,
"Name": "Lid weight",
"Description": null,
"Unit": "kg"
},
"<",
10.0
],
[
{
"DEBUG": true,
"Name": "NumberOfParts",
"Description": null,
"Unit": "-"
},
"<",
10.0
],
[
{
"DEBUG": true,
"Name": "NumberOfParts",
"Description": null,
"Unit": "-"
},
">=",
2.0
]
],
"Guarantees": [
[
{
"DEBUG": true,
"Name": "Assembalibility score",
"Description": null,
"Unit": "-"
},
">=",
0.85
],
[
{
"DEBUG": true,
"Name": "Stiffness",
"Description": null,
"Unit": "N/m"
},
">=",
15000.0
]
]
}
Ontology JSON¶
Example interface object in JSON format:
{
"DEBUG": true,
"Name": "Not in MM",
"Description": "Not in MM",
"Relations": [
{
"DEBUG": true,
"Name": "FootprintStiffness",
"Description": null,
"Source": {
"DEBUG": true,
"Name": "House footprint",
"Description": null,
"Unit": "mm2"
},
"Destination": {
"DEBUG": true,
"Name": "Stiffness",
"Description": null,
"Unit": "N/m"
},
"SensitivityDirection": "Positive",
"Weight": 0.0
},
{
"DEBUG": true,
"Name": "WeightAssembelebility",
"Description": null,
"Source": {
"DEBUG": true,
"Name": "Lid weight",
"Description": null,
"Unit": "kg"
},
"Destination": {
"DEBUG": true,
"Name": "Assembalibility score",
"Description": null,
"Unit": "-"
},
"SensitivityDirection": "Negative",
"Weight": 0.0
}
]
}