parser

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

 

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

странно. при поиске в xml если указать пространство имен то ...

527 03.11.2003 19:56

Parser перестает видеть в документе элемент с xmlns.
вот пример:
$xml[^xdoc::create{<?xml version="1.0" encoding="windows-1251" ?>
<document xmlns="urn:my-name-space">
	<cars>
		<car>Альфа Ромео</car>
		<car>Астон Мартин</car>
		<car>Ауди</car>
		<car>Бентли</car>
		<car>БМВ</car>
		<car>Мерседес</car>
		<car>Лексус</car>
		<car>Тойота</car>
		<car>Феррари</car>
		<car>Фольксваген</car>
	</cars>
</document>}]

$cars[^xml.select[//car]]
найдено ^cars._count[] записей<br/>
^for[i](0;$cars-1){
	$car[$cars.$i]
	$marka[$car.firstChild.nodeValue]
	$marka<br/>
	
}
Результат:
найдено 0 записей

А если вот этот код:
$xml[^xdoc::create{<?xml version="1.0" encoding="windows-1251" ?>
<document>
	<cars>
		<car>Альфа Ромео</car>
		<car>Астон Мартин</car>
		<car>Ауди</car>
		<car>Бентли</car>
		<car>БМВ</car>
		<car>Мерседес</car>
		<car>Лексус</car>
		<car>Тойота</car>
		<car>Феррари</car>
		<car>Фольксваген</car>
	</cars>
</document>}]

$cars[^xml.select[//car]]
найдено ^cars._count[] записей<br/>
^for[i](0;$cars-1){
	$car[$cars.$i]
	$marka[$car.firstChild.nodeValue]
	$marka<br/>
	
}
то всё окей
Результат:

найдено 10 записей
Альфа Ромео
Астон Мартин
Ауди
Бентли
БМВ
Мерседес
Лексус
Тойота
Феррари
Фольксваген

например если попробовать передвинуть xmlns в car :
$xml[^xdoc::create{<?xml version="1.0" encoding="windows-1251" ?>
<document>
	<cars>
		<car>Альфа Ромео</car>
		<car>Астон Мартин</car>
		<car>Ауди</car>
		<car>Бентли</car>
		<car xmlns="urn:my-name-space">БМВ</car>
		<car>Мерседес</car>
		<car>Лексус</car>
		<car>Тойота</car>
		<car>Феррари</car>
		<car>Фольксваген</car>
	</cars>
</document>}]

$cars[^xml.select[//car]]
найдено ^cars._count[] записей<br/>
^for[i](0;$cars-1){
	$car[$cars.$i]
	$marka[$car.firstChild.nodeValue]
	$marka<br/>
	
}
то результат:

найдено 9 записей
Альфа Ромео
Астон Мартин
Ауди
Бентли
Мерседес
Лексус
Тойота
Феррари
Фольксваген


такое ощущение что что-то не так, хотя я еще не профи в xml, думается что так быть не должно.

parser 3.1 winXP apache 1.3