powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / XSD -> XML с разными элементами в произвольной последовательности
8 сообщений из 8, страница 1 из 1
XSD -> XML с разными элементами в произвольной последовательности
    #37718823
aldegid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мне нужно получить xml вроде следующего
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
    <BalloonSequence>
      <Balloon name="Straight simpy" count="1"/>
      <BalloonGroup name="BalloonGroup1" count="5"/>
      <Balloon name="Straight simpy" count="2"/>
      <Balloon name="Straight fast" count="1"/>
      <BalloonGroup name="BalloonGroup2" count="3"/>
      <Balloon name="FirstBoss" count="1"/>
    </BalloonSequence>


то есть элементы <Balloon> и <BalloonGroup> внутри элемента <BallonSequence> могут встречаться в любой последовательности сколько угодно раз.
Вопрос простой: как написать XSD схему, описывающую такую возможность?
...
Рейтинг: 0 / 0
XSD -> XML с разными элементами в произвольной последовательности
    #37718931
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: xml
1.
2.
3.
4.
<xsd:all>
  <xsd:element name="Balloon" minOccurs="0" maxOccurs="unbounded" />
  <xsd:element name="BalloonGroup" minOccurs="0" maxOccurs="unbounded" />
</xsd:all>
...
Рейтинг: 0 / 0
XSD -> XML с разными элементами в произвольной последовательности
    #37718946
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:element name="BalloonSequence">
        <xsd:complexType>
            <xsd:choice minOccurs="0" maxOccurs="unbounded">
                <xsd:element name="Balloon"/>
                <xsd:element name="BalloonGroup"/>
            </xsd:choice>
        </xsd:complexType>
    </xsd:element>
</xsd:schema>
    <BalloonSequence>
        <Balloon name="Straight simpy" count="1"/>
        <BalloonGroup name="BalloonGroup1" count="5"/>
        <Balloon name="Straight simpy" count="2"/>
        <Balloon name="Straight fast" count="1"/>
        <BalloonGroup name="BalloonGroup2" count="3"/>
        <Balloon name="FirstBoss" count="1"/>
    </BalloonSequence>
</root>
...
Рейтинг: 0 / 0
XSD -> XML с разными элементами в произвольной последовательности
    #37718957
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или так:

Код: xml
1.
2.
3.
4.
            <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                <xsd:element name="Balloon" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="BalloonGroup" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
...
Рейтинг: 0 / 0
XSD -> XML с разными элементами в произвольной последовательности
    #37720682
aldegid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Re: _Vasilisk_
Нельзя в <xs:all> поставить атрибут maxOccurs="unbounded". Только "0" или "1"

Re: Antonariy
Спасибо. Оба варианта заработали. Мне больше нравится вариант с <choise>'ом
...
Рейтинг: 0 / 0
XSD -> XML с разными элементами в произвольной последовательности
    #37720696
aldegid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И раз здесь мне помогли, задам ещё вопрос. В другой ветке.
...
Рейтинг: 0 / 0
XSD -> XML с разными элементами в произвольной последовательности
    #37781844
mega12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте. Помогите пожст. Я пишу процедуру в девелопере(первый раз) где надо выгрузить в хмл такие данные:
<portfolio>
<portfolio>' r.KSBU '</portfolio>
<portfolio_msfo>' r.Msfo '</portfolio_msfo>
</portfolio>

в данный момент, все выгружается, но есть такая вещь - значения r.KSBU и r.Msfo не во всех записях базы заполнено. У какой-то записи может быть оба элемента, у другой только один из них. Если, например, r.Msfo пустой, то в хмл выводится <portfolio_msfo/>. НО В схеме стоит условие, что если тэг описан, то он обязательно должен содержать данные, т.е пустой тэг <portfolio_msfo/>
выводить нельзя.
Как мне прописать в процедуре, чтобы тэг появлялся только в том случае, если он не пустой. Посоветуйте пожст, вопрос очень срочный.
...
Рейтинг: 0 / 0
XSD -> XML с разными элементами в произвольной последовательности
    #37781859
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вам нужно прописать условия в процедуре, почему вы пишете сюда? Это не проблема xml/xsl.
Единственный девелопер, который я знаю, это ферромагнитный порошок, заправляющийся в драм-юниты копировальных аппаратов.
Но речь ведь не о нем?
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / XSD -> XML с разными элементами в произвольной последовательности
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]