parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

xpath и кириллица

Alx 31.10.2013 15:51

При попытке разобрать xml выгрузку из 1с вида:
<?xml version="1.0" encoding="UTF-8"?>
<КоммерческаяИнформация ВерсияСхемы="2.05" ДатаФормирования="2013-10-16T8:38:37">
	<Каталог СодержитТолькоИзменения="false">
		<Товары>
			<Товар>
				<Наименование>газонокосилка эл. колесн. Bosch Rotak 1000</Наименование>
				<Группы>
					<Ид>31c0dc8f-2728-11e3-9f5c-001bfcb40055</Ид>
				</Группы>
			</Товар>
		</Товары>
	</Каталог>
</КоммерческаяИнформация>
Загружаю
$catalog[^xdoc::load[import.xml]]
И пробую достать товары нужной группы
$items[^catalog.select[/КоммерческаяИнформация/Каталог/Товары/Товар[Группы/Ид='31c0dc8f-2728-11e3-9f5c-001bfcb40055']]]
Парсер сваливается с ошибкой Invalid expression select
Если же попробовать пройтись по всему документу:
$items[^catalog.select[//Товар[Группы/Ид='31c0dc8d-2728-11e3-9f5c-001bfcb40055']]]
то всё работает.
Сваливается в ошибку при появлении в xpath пути с кириллическими символами и любым условием, например /КоммерческаяИнформация/Каталог/Товары/Товар[*] или /КоммерческаяИнформация/Каталог/Товары/child::* и т.п.
Есть ли вариант поправить как-нибудь?