Страница: 1 |
Страница: 1 |
Вопрос: XSLT: иерархические данные
Добавлено: 24.08.04 06:38
Автор вопроса: Павел | Web-сайт:
Как вывести что-то типа дерева с помощью XSLT?
Линейные XML я выводить научился... А вот с иерархией не соображу :(
Например, такой XML... Нужно вывести список элементов Group (выводить
нужно значение атрибута Name). Чтобы получилось что-то вроде:
- comp
- - soft
- - - prog
- - hard
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="Test.xslt"?>
<!DOCTYPE FAQs [
<!ELEMENT FAQs (Group)>
<!ELEMENT Group (FAQ|Group)*>
<!ELEMENT FAQ (ShortQuestion, Question, Answer)*>
<!ELEMENT ShortQuestion (#PCDATA)>
<!ELEMENT Question (#PCDATA)>
<!ELEMENT Answer (#PCDATA)>
<!ATTLIST FAQs
copyright CDATA #IMPLIED
>
<!ATTLIST Group
Name CDATA #REQUIRED
State (raw|processing|done) "raw"
Bankir CDATA #IMPLIED
>
<!ENTITY cp "Павел Сурменок">
]>
<FAQs copyright="&cp;">
<Group Name="comp" State="processing" Bankir="Иван Иваныч Иванов днем ходит без штанов">
<Group Name="soft" State="done" Bankir="Иванов Иван Иваныч одевает штаны на ночь">
<FAQ>
<ShortQuestion>Короткий вопрос</ShortQuestion>
<Question>Вопрос</Question>
<Answer>Ответ</Answer>
</FAQ>
<Group Name="prog" State="done" Bankir="Вася Пупкин">
<FAQ>
<ShortQuestion>Короткий вопрос</ShortQuestion>
<Question>Вопрос</Question>
<Answer>Ответ</Answer>
</FAQ>
</Group>
</Group>
<Group Name="hard" State="done" Bankir="дядя Веня из Олубки">
<FAQ>
<ShortQuestion>Короткий вопрос</ShortQuestion>
<Question>Вопрос</Question>
<Answer>Ответ</Answer>
</FAQ>
</Group>
<FAQ>
<ShortQuestion>Короткий вопрос</ShortQuestion>
<Question>Вопрос</Question>
<Answer>Ответ</Answer>
</FAQ>
</Group>
</FAQs>
Ответы
Всего ответов: 2
Номер ответа: 1
Автор ответа:
Андрей Никитин
ICQ: 325172082
Вопросов: 3
Ответов: 81
Профиль | | #1
Добавлено: 24.08.04 11:23
Павел, что-то я не соображу, что ты хочешь...
Ты хочешь отобразить иерархически структуру XSLT например в контроле "TreeView", где узлами являются значения "Name" элемента "Group", правильно?
Я не силен в XML, но по приведенному тобой фрагменту можно довольно легко написать алгоритм парсинга файла вручную (если требуется именно это)...
Номер ответа: 2
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #2
Добавлено: 24.08.04 12:36
Код парсинга я и сам в состоянии написать.
Но мне нужен именно XSLT.