static CodeListType createCodelist(Variable var) { CodeListType codelist = new CodeListType(); codelist.agencyID = var.Meta.Agency().CleanID(); codelist.id = ("CL_" + var.Name).CleanID(); codelist.version = "1.0"; List <TextType> name = new List <TextType>(); { TextType enName = new TextType(); enName.lang = "en"; enName.Value = var.Name + " Code List"; name.Add(enName); } codelist.Name = name.ToArray(); List <CodeType> codes = new List <CodeType>(); foreach (Value val in var.Values) { codes.Add(createCode(val, var.Values.IsCodesFictional)); } codelist.Code = codes.ToArray(); return(codelist); }
/// <summary> /// /// </summary> /// <param name="model"></param> /// <returns></returns> static List <CodeListType> createCommonCodes(PXModel model) { List <CodeListType> codeLists = new List <CodeListType>(); // Frequency { CodeListType codeList = new CodeListType(); codeList.id = "CL_FREQ"; codeList.agencyID = "SDMX"; codeList.version = "1.0"; List <TextType> name = new List <TextType>(); { TextType enName = new TextType(); enName.lang = "en"; enName.Value = "Code list for Frequency (FREQ)"; name.Add(enName); } codeList.Name = name.ToArray(); List <CodeType> codes = new List <CodeType>(); { CodeType code = new CodeType(); code.value = "A"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Annual"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "B"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Daily - business week"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "D"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Daily"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "M"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Monthly"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "N"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Minutely"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "Q"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Quarterly"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "S"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Half Yearly, semester"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "W"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Weekly"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } codeList.Code = codes.ToArray(); codeLists.Add(codeList); } // Observation status { CodeListType codeList = new CodeListType(); codeList.id = "CL_OBS_STATUS"; codeList.agencyID = "SDMX"; codeList.version = "1.0"; List <TextType> name = new List <TextType>(); { TextType enName = new TextType(); enName.lang = "en"; enName.Value = "Observation status"; name.Add(enName); } codeList.Name = name.ToArray(); List <CodeType> codes = new List <CodeType>(); { CodeType code = new CodeType(); code.value = "A"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Normal"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "B"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Break"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "E"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Estimated value"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "F"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Forecast value"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "I"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Imputed value (CCSA definition)"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "M"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Missing value"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "P"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Provisional value"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "S"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Strike"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } codeList.Code = codes.ToArray(); codeLists.Add(codeList); } // Unit of measure { CodeListType codeList = new CodeListType(); codeList.id = "CL_UNIT_MEASURE"; codeList.agencyID = model.Meta.Agency().CleanID(); codeList.version = "1.0"; List <TextType> name = new List <TextType>(); { TextType enName = new TextType(); enName.lang = "en"; enName.Value = "Unit of measure code list"; name.Add(enName); } codeList.Name = name.ToArray(); List <CodeType> codes = new List <CodeType>(); if (model.Meta.ContentVariable == null) { CodeType code = new CodeType(); code.value = model.Meta.ContentInfo.Units.CleanID(); List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = model.Meta.ContentInfo.Units; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } else { List <String> codeValues = new List <String>(); foreach (Value value in model.Meta.ContentVariable.Values) { String codeValue = value.ContentInfo.Units.CleanID(); if (!codeValues.Contains(codeValue)) { CodeType code = new CodeType(); code.value = codeValue; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = value.ContentInfo.Units; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); codeValues.Add(codeValue); } } } codeList.Code = codes.ToArray(); codeLists.Add(codeList); } // Stock/flow/average indicator { CodeListType codeList = new CodeListType(); codeList.id = "CL_SFA_INDICATOR"; codeList.agencyID = model.Meta.Agency().CleanID(); codeList.version = "1.0"; List <TextType> name = new List <TextType>(); { TextType enName = new TextType(); enName.lang = "en"; enName.Value = "Stock, flow, average indicator code list"; name.Add(enName); } codeList.Name = name.ToArray(); List <CodeType> codes = new List <CodeType>(); { CodeType code = new CodeType(); code.value = "A"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Average"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "F"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Flow"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "S"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Stock"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } codeList.Code = codes.ToArray(); codeLists.Add(codeList); } // Price basis { CodeListType codeList = new CodeListType(); codeList.id = "CL_PRICE_BASIS"; codeList.agencyID = model.Meta.Agency().CleanID(); codeList.version = "1.0"; List <TextType> name = new List <TextType>(); { TextType enName = new TextType(); enName.lang = "en"; enName.Value = "Price basis code list"; name.Add(enName); } codeList.Name = name.ToArray(); List <CodeType> codes = new List <CodeType>(); { CodeType code = new CodeType(); code.value = "C"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Current Price"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } { CodeType code = new CodeType(); code.value = "F"; List <TextType> description = new List <TextType>(); { TextType enDesc = new TextType(); enDesc.lang = "en"; enDesc.Value = "Fixed Price"; description.Add(enDesc); } code.Description = description.ToArray(); codes.Add(code); } codeList.Code = codes.ToArray(); codeLists.Add(codeList); } return(codeLists); }
private static List<string> Get_CodeValues_From_CodeList(CodeListType CodeList) { List<string> RetVal; RetVal = new List<string>(); foreach (CodeType Code in CodeList.Code) { RetVal.Add(Code.value); } return RetVal; }