I already have created a new xml document using VB.NET called objXmlResponseDoc but I was not able to add values for the nodes from objXmlSimpleTypeDoc xml document. Now I need help to find the correct EnumerationValue with @code that matches CourtNCIC. This CourtNCIC and be different. I already have it CourtNCIC = MN010015J. I need to look for this in the objXmlSimpleTypeDoc xml document EnumerationValue/@code. Also some nodes in objXmlSimpleTypeDoc xml document may not exist. I need to first check if a node exist before getting its value.
Here is how my new xml document (objXmlResponseDoc) looks with missing values.
<GetCaseInformationResponseMessage>
<CourtLocation>
<CourtName/>
<ORINumber/>
<MNCISNodeID/>
<PhoneNumber/>
</CourtLocation>
</GetCaseInformationResponseMessage>
Here is the objXmlSimpleTypeDoc xml document that have nodes that I want to get their values if the node exist.
<SimpleTypeCompanion enumerates="CourtLocationTextType">
<EnumerationValue code="MN010015J">
<Text>Emily County</Text>
<AssociatedValue type="MNCISNodeID">
<Text>111</Text>
</AssociatedValue>
<AssociatedValue type="CountyName">
<Text>Emily</Text>
</AssociatedValue>
<AssociatedValue type="PhoneNumber">
<Text>724-820-7123</Text>
</AssociatedValue>
</EnumerationValue>
<EnumerationValue code="DC19DAKDC">
<Text>Pope County</Text>
<AssociatedValue type="MNCISNodeID">
<Text>112</Text>
</AssociatedValue>
<AssociatedValue type="CountyName">
<Text>Pope</Text>
</AssociatedValue>
</EnumerationValue>
</SimpleTypeCompanion>
The final xml should look like this
<GetCaseInformationResponseMessage>
<CourtLocation>
<CourtName>Emily</CourtName>
<ORINumber>MN010015J</ORINumber>
<MNCISNodeID>111</MNCISNodeID>
<PhoneNumber>724-820-7123</PhoneNumber>
</CourtLocation>
</GetCaseInformationResponseMessage>
What I have tried:
Here is VB.NET code that I need help with to add node values into objXmlResponseDoc xml document.
objXmlResponseDoc = New XmlDocument
objXmlResponseDoc.AppendChild(objXmlResponseDoc.CreateElement("GetCaseInformationResponseMessage"))
objXmlMNCISData = Library.v4.Case.GetIxmlForCaseNumber(strCaseNumber, "CourtCaseHeaderGroup", False)
strCourtNCIC = objXmlMNCISData.DocumentElement.SelectSingleNode("Case/Court/CourtNCIC").InnerText
objXmlCourtNCICElement = objXmlMNCISData.DocumentElement.SelectSingleNode("Case/Court/CourtNCIC")
objXmlSimpleTypeDoc = Msc.Integration.CourtXml.Library.v4.SimpleType.GetCompanionFile("CourtLocationTextType")
objXmlCourtLocationNode = objXmlResponseDoc.CreateElement("CourtLocation")
objXmlResponseDoc.DocumentElement.AppendChild(objXmlCourtLocationNode)
objXmlCourtNameElement = objXmlResponseDoc.CreateElement("CourtName")
strCourtName = objXmlCourtLocationNode.SelectSingleNode("EnumerationValue[@code=" + strCourtNCIC + "]/Test").InnerText
objXmlCourtLocationNode.AppendChild(objXmlCourtNameElement)
objXmlORINumberElement = objXmlResponseDoc.CreateElement("ORINumber")
objXmlCourtLocationNode.AppendChild(objXmlORINumberElement)
objXmlMNCISNodeIDElement = objXmlResponseDoc.CreateElement("MNCISNodeID")
objXmlCourtLocationNode.AppendChild(objXmlMNCISNodeIDElement)
objXmlPhoneNumberElement = objXmlResponseDoc.CreateElement("PhoneNumber")
objXmlCourtLocationNode.AppendChild(objXmlPhoneNumberElement)