Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / XML, XSL, XPath, XQuery Новый топик    Ответить
 Ссылки внутри одного XML  [new]
alHaos
Member

Откуда:
Сообщений: 176
Добрый день уважаемые начитался многого в голове каша, решил спросить вашего мнения.

Описываю инфраструктуру серверов и сервисов имею что то типа

<?xml version="1.0" encoding="UTF-8"?>
<objects>
	<servers>
		<server id = "1">
			<service id = "1"></service>
		</server>
		<server id = "2">
			<service id = "2"></service>
		</server>
		<server id = "3">
			<service id = "2"></service>
			<service id = "3"></service>
		</server>
	</servers>
	<services>
		<service id = "1">
			<server id = "1"></server>
			<server id = "2"></server>
		</service>	
		<service id = "2">
			<server id = "3"></server>
		</service>
		<service id = "3">
			<server id = "3"></server>
		</service>
	</services>
</objects>


Отношение многие к многим, один сервер может содержать несколько сервисов, и один сервис может располагаться, что хочу вместо самого элемента service или server вставлять ссылку на него.

Читал про XLink, XPointer хорошо описано как на внешние ресурсы ссылаться.

Подскажите пожалуйста можно ли это сделать и как по вашему мнению лучше.
30 апр 19, 09:50    [21875230]     Ответить | Цитировать Сообщить модератору
 Re: Ссылки внутри одного XML  [new]
vvvait
Member

Откуда:
Сообщений: 83
я бы сделал так
<?xml version="1.0" encoding="UTF-8"?>
<objects>
	<server id = "1"/>
	<server id = "2"/>
	<service id = "1"/>
	<service id = "2"/>
	<link server="1" service="1"/>
	<link server="2" service="2"/>
</objects>

но вообще это зависит от того, для каких целей используется этот xml
30 апр 19, 13:25    [21875492]     Ответить | Цитировать Сообщить модератору
 Re: Ссылки внутри одного XML  [new]
alHaos
Member

Откуда:
Сообщений: 176
vvvait, Хочу собрать слабо структурированные данные по нашей инфраструктуре, и делать запросы и отчеты.

vvvait, А при таком варианте получится использовать XSLT чтобы построить отчет к примеру по сервисам?

т.е. из вот этого
<?xml version="1.0" encoding="UTF-8"?>
<objects>
	<server id = "1"/>
	<server id = "2"/>
	<service id = "1"/>
	<service id = "2"/>
	<link server="1" service="1"/>
	<link server="2" service="2"/>
</objects>


получить вот это

<?xml version="1.0" encoding="UTF-8"?>
<report>
	<service id = "1">
		<server id = "1"></server>
		<server id = "2"></server>
	</service>	
	<service id = "2">
		<server id = "3"></server>
	</service>
	<service id = "3">
		<server id = "3"></server>
	</service>
</report>
6 май 19, 06:36    [21878348]     Ответить | Цитировать Сообщить модератору
 Re: Ссылки внутри одного XML  [new]
Alibek B.
Member

Откуда:
Сообщений: 3315
Цикл, внутри вложенный цикл.
Для XSL2 можно использовать словари, будет красиво и быстро.
6 май 19, 10:28    [21878476]     Ответить | Цитировать Сообщить модератору
 Re: Ссылки внутри одного XML  [new]
alHaos
Member

Откуда:
Сообщений: 176
Спасибо, почитал, кажется понял как это должно быть. осталось чуток XSL подучить.
6 май 19, 14:39    [21878995]     Ответить | Цитировать Сообщить модератору
Все форумы / XML, XSL, XPath, XQuery Ответить