|
|
|
Помогите плиз - уже замучился((
|
|||
|---|---|---|---|
|
#18+
Приветствую всех!!! есть вот такой xml файл: <?xml-stylesheet type="text/xsl" href="data_XSD.xsl"?> <DataSet1 xmlns="http://tempuri.org/DataSet1.xsd"> <xs:schema id="DataSet1" targetNamespace="http://tempuri.org/DataSet1.xsd" xmlns:mstns="http://tempuri.org/DataSet1.xsd" xmlns="http://tempuri.org/DataSet1.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified"> <xs:element name="DataSet1" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="OWNER"> <xs:complexType> <xs:sequence> <xs:element name="OWNER_ID" type="xs:string" minOccurs="0" /> <xs:element name="OWNER_NAME" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="RES"> <xs:complexType> <xs:sequence> <xs:element name="RES_ID" type="xs:string" minOccurs="0" /> <xs:element name="OWNER_ID" type="xs:string" minOccurs="0" /> <xs:element name="RES_NAME" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> <xs:unique name="Constraint1"> <xs:selector xpath=".//mstns:OWNER" /> <xs:field xpath="mstns:OWNER_ID" /> </xs:unique> <xs:keyref name="FK_OWNER_RES" refer="Constraint1"> <xs:selector xpath=".//mstns:RES" /> <xs:field xpath="mstns:OWNER_ID" /> </xs:keyref> </xs:element> </xs:schema> <OWNER> <OWNER_ID>1</OWNER_ID> <OWNER_ID>N1</OWNER_ID> </OWNER> <OWNER> <OWNER_ID>2</OWNER_ID> <OWNER_ID>N2</OWNER_ID> </OWNER> <RES> <RES_ID>1</RES_ID> <OWNER_ID>1</OWNER_ID> <RES_NAME>NOKIO</RES_NAME> </RES> <RES> <RES_ID>2</RES_ID> <OWNER_ID>1</OWNER_ID> <RES_NAME>I DON'T CARE ABOUT RES</RES_NAME> </RES> <RES> <RES_ID>3</RES_ID> <OWNER_ID>2</OWNER_ID> <RES_NAME>NO</RES_NAME> </RES> </DataSet1> и к нему вот такой XSL: <?xml version="1.0" encoding="windows-1251"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl"> <xsl:template match="/"> <H1>СПИСОК КОНТРАГЕНТОВ</H1> <xsl:for-each select="DataSet1/OWNER" > <br/> <SPAN style="font-style:italic"> OWNER_ID: </SPAN> <xsl:value-of select="OWNER_ID" /> <br/> <xsl:for-each select="//RES" > ^^^^^^^^^^Вот сдесь идет вложенный цикл <SPAN style="font-style:italic"> ID_RES: </SPAN> <xsl:value-of select="RES_ID" /> <SPAN style="font-style:italic"> OWNER_ID: </SPAN> <xsl:value-of select=" OWNER_ID" /> <br/> ВОПРОС!!!!!! КАК мне сделать чтобы тут выбирались элементы которые соответствуют вышестоящему OWNER_ID????????? <SPAN style="font-style:italic"> RES_NAME: </SPAN> <xsl:value-of select="RES_NAME" /> <br/> </xsl:for-each> ^^^^^^^^^^^Конец вложенного цикла </xsl:for-each> </xsl:template> </xsl:stylesheet> т.е. на выходе должно получится: КОНТРАГЕНТ, его OWNER_ID (идентификационный номер) свойства КОНТРАГЕНТА с OWNER_ID = OWNER_ID Помогите плиз!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 15:06 |
|
||
|
Помогите плиз - уже замучился((
|
|||
|---|---|---|---|
|
#18+
Попробуй такой XPath во вложенном цикле <xsl:for-each select="//RES[/DataSet1/OWNER/OWNER_ID = OWNER_ID]"> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 20:14 |
|
||
|
Помогите плиз - уже замучился((
|
|||
|---|---|---|---|
|
#18+
не понял сразу что ты хотел, тут просто переменную надо ввести, так попробуй Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 20:19 |
|
||
|
|

start [/forum/topic.php?fid=14&msg=34919120&tid=1334098]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 246ms |
| total: | 378ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...