basyx_rs/
data_specification_iec61360.rs1use crate::LangString as LangStringDefinitionTypeIec61360;
6use crate::LangString as LangStringPreferredNameTypeIec61360;
7use crate::LangString as LangStringShortNameTypeIec61360;
8use crate::{DataTypeIec61360, LevelType, Reference, ValueList};
9use serde::{Deserialize, Serialize};
10
11#[derive(Clone, PartialEq, Debug, Deserialize, Serialize)]
12#[serde(tag = "modelType")]
13pub struct DataSpecificationIec61360 {
14 #[serde(skip_serializing_if = "Option::is_none")]
15 #[serde(rename = "dataType")]
16 pub data_type: Option<DataTypeIec61360>,
17
18 #[serde(skip_serializing_if = "Option::is_none")]
19 pub definition: Option<Vec<LangStringDefinitionTypeIec61360>>,
20
21 #[serde(skip_serializing_if = "Option::is_none")]
22 #[serde(rename = "levelType")]
23 pub level_type: Option<LevelType>,
24
25 #[serde(rename = "preferredName")]
26 pub preferred_name: Vec<LangStringPreferredNameTypeIec61360>,
27
28 #[serde(skip_serializing_if = "Option::is_none")]
29 #[serde(rename = "shortName")]
30 pub short_name: Option<Vec<LangStringShortNameTypeIec61360>>,
31
32 #[serde(skip_serializing_if = "Option::is_none")]
33 #[serde(rename = "sourceOfDefinition")]
34 pub source_of_definition: Option<String>,
35
36 #[serde(skip_serializing_if = "Option::is_none")]
37 pub symbol: Option<String>,
38
39 #[serde(skip_serializing_if = "Option::is_none")]
40 pub unit: Option<String>,
41
42 #[serde(skip_serializing_if = "Option::is_none")]
43 #[serde(rename = "unitId")]
44 pub unit_id: Option<Reference>,
45
46 #[serde(skip_serializing_if = "Option::is_none")]
47 pub value: Option<String>,
48
49 #[serde(skip_serializing_if = "Option::is_none")]
50 #[serde(rename = "valueFormat")]
51 pub value_format: Option<String>,
52
53 #[serde(skip_serializing_if = "Option::is_none")]
54 #[serde(rename = "valueList")]
55 pub value_list: Option<ValueList>,
56}