Только что получил новую проблему xml, с которой я немного застрял. Может быть, кто-нибудь может толкать меня в правильном направлении :)Найти определенный родительский узел из любого возможного дочернего узла
У меня есть XML, глядя, как это:
<import xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="file:///XXXXXXXXX/TraumaSchema.xsd">
<creationDate>2016-10-18</creationDate>
<hospitalCode>XXXXXXXXXXXX</hospitalCode>
<importCasesWithErrors>0</importCasesWithErrors>
<caseState>1</caseState>
<caseList>
<case>
<patientCode>XXXXXXXXXXX</patientCode>
<internalPatientId>XXXXXXXXXXXXXXX</internalPatientId>
<masterData>
<patient>
<age/>
<sex>1</sex>
<asa>1</asa>
</patient>
<accident>
<cause>1</cause>
<trauma>1</trauma>
<dateTime>
<date>2016-05-15</date>
<time>01:30:00</time>
</dateTime>
</accident>
</masterData>
<preClinicalData>
<alarm>
<date>2016-05-15</date>
<time>02:00:00</time>
</alarm>
<arrival>
<date>2016-05-15</date>
<time>01:30:00</time>
</arrival>
<departure>
<date>2016-05-15</date>
<time/>
</departure>
<vitalSign>
<capnometry>0</capnometry>
<systolicBloodPressure>
<mmHg>140</mmHg>
</systolicBloodPressure>
<heartRate>
<perMinute>130</perMinute>
</heartRate>
<respiratoryRate>
<perMinute>20</perMinute>
</respiratoryRate>
<oxygenSaturation>
<percent>97</percent>
</oxygenSaturation>
</vitalSign>
....
....
....
</case>
<case>
....
....
....
XML-довольно большие и две вещи важно знать. Существует элемент «caseList», который содержит переменное число случаев -> «case». Каждый «корпус» состоит из многих других элементов. Элемент в фокусе «patientCode», который содержится в любой группе случаев.
Что нужно, так это получить этот родительский элемент «patientCode», начиная с любого возможного дочернего узла.
Я не знаю, откуда в иерархии я должен начать. Единственное, что я знаю, это то, что мне нужно получить этого конкретного родителя.
Есть ли у кого-нибудь идеи, как достичь этого?
Любая помощь очень ценится.
вид касается Сандро
Загрузите xml в XDocument. Затем просмотрите принятый ответ здесь http://stackoverflow.com/questions/451950/get-the-xpath-to-an-xelement. Затем, после того как вы получите путь к текущему элементу, выполните поиск родителя и получите только нужную вам часть. – Lidaranis
заметил, что определенный текст не был записан в моем тексте запроса -> исправлено Спасибо, Лидаранис, но это не работает для меня. Я получаю огромный список путей, но все же у меня проблема, что я не знаю, где будет начальный пионт. пожалуйста, еще раз взгляните на мой вопрос –
Дайте мне знать, если я это понимаю. Вы хотите, чтобы searchCode был основан на одном из дочерних элементов элемента case. Например, получите код pacient, где oxygenSaturation/percent == 97, но узел, на котором вы основываете свой поиск (здесь oxygenSaturation/percent), является динамическим. Я на правильном пути? – Lidaranis