powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Найти и исправить ошибки в XSD
7 сообщений из 7, страница 1 из 1
Найти и исправить ошибки в XSD
    #39034647
nygger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задание препод выслал отсюда http://forum.onliner.by/viewtopic.php?t=1624846 , найти и исправить ошибки в XSD схеме.
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema targetNamespace=" http://tempuri.org/XMLSchema.xsd"
elementFormDefault="qualified"
xmlns=" http://tempuri.org/XMLSchema.xsd"
xmlns:mstns=" http://tempuri.org/XMLSchema.xsd"
xmlns:xs=" http://www.w3.org/2001/XMLSchema">
<xs:complexType name="officeType" minOccurs="0" maxOccurs="unbounded">
<xs:sequence name="officeTypeSequence">
<xs:element name="worker" type="plankton">
<xs:complexType>
<xs:all minOccurs="1" maxOccurs="1">
<xs:element name="firstname" type="xs:string" ref="nameElement"/>
<xs:element name="lastname" ref="lastname" />
<xs:element name="workerID">
<xs:complexType>
<xs:simpleContent name="workingYear">
<xs:extension base="xs:positiveInteger">
<xs:attribute name="first working year" type="xs:gYear" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="nameElement" type="xs:string">
<xs:simpleType name="nameElementType">
<xs:restriction base="xs:string">
<xs:lengthMax value="50" />
<xs:lengthMin value="0" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="lastname" type="nameElementType"/>

<!--Global complex element-->
<xs:element name="officeList">
<xs:complexType base="officeType">
<xs:sequence maxOccurs="unbounded">
<xs:element name="office" type="officeType"/>
</xs:sequence>
<xs:anyAttribute/>
</xs:complexType>
</xs:element>
</xs:schema>
Да только что-то валидатор не выдаёт ошибок. Кто-то может помочь разобрвться есть тут ошибки или нет?
...
Рейтинг: 0 / 0
Найти и исправить ошибки в XSD
    #39034652
nygger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сори за первую простыню, не увидел в редакторе src
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema targetNamespace="http://tempuri.org/XMLSchema.xsd" elementFormDefault="qualified" xmlns="http://tempuri.org/XMLSchema.xsd" xmlns:mstns="http://tempuri.org/XMLSchema.xsd"
                  xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:complexType name="officeType" minOccurs="0" maxOccurs="unbounded">
        <xs:sequence name="officeTypeSequence">
            <xs:element name="worker" type="plankton">
                <xs:complexType>
                    <xs:all minOccurs="1" maxOccurs="1">
                        <xs:element name="firstname" type="xs:string" ref="nameElement"/>
                        <xs:element name="lastname" ref="lastname" />
                        <xs:element name="workerID">
                            <xs:complexType>
                                <xs:simpleContent name="workingYear">
                                    <xs:extension base="xs:positiveInteger">
                                        <xs:attribute name="first working year" type="xs:gYear" />
                                    </xs:extension>
                                </xs:simpleContent>
                            </xs:complexType>
                        </xs:element>
                    </xs:all>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:element name="nameElement" type="xs:string">
        <xs:simpleType name="nameElementType">
            <xs:restriction base="xs:string">
                <xs:lengthMax value="50" />
                <xs:lengthMin value="0" />
            </xs:restriction>
        </xs:simpleType>
    </xs:element>
    <xs:element name="lastname" type="nameElementType"/>

    <!--Global complex element-->
    <xs:element name="officeList">
        <xs:complexType base="officeType">
            <xs:sequence maxOccurs="unbounded">
                <xs:element name="office" type="officeType"/>
            </xs:sequence>
            <xs:anyAttribute/>
        </xs:complexType>
    </xs:element>
</xs:schema>
...
Рейтинг: 0 / 0
Найти и исправить ошибки в XSD
    #39034729
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да тут прорва ошибок.
...
Рейтинг: 0 / 0
Найти и исправить ошибки в XSD
    #39034914
nygger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema targetNamespace="http://tempuri.org/XMLSchema.xsd" elementFormDefault="qualified" xmlns="http://tempuri.org/XMLSchema.xsd" xmlns:mstns="http://tempuri.org/XMLSchema.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="officeType" >
    <!--minOccurs="0" maxOccurs="unbounded" - закоменченные неподдерживаемые атрибуты -->
    <xs:sequence>
      <!--name="officeTypeSequence"-->
      <xs:element name="worker">
        <!--type="plankton"-->
        <xs:complexType>
          <xs:all minOccurs="1" maxOccurs="1">
            <xs:element name="firstname" type="xs:string" />
            <!--ref="nameElement"/-->
            <xs:element name="lastname"></xs:element>
            <!--ref="lastname" /-->
            <xs:element name="workerID">
              <xs:complexType>
                <xs:simpleContent>
                  <!--name="workingYear"-->
                  <xs:extension base="xs:positiveInteger">
                    <xs:attribute name="year" type="xs:gYear" />
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:all>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:element name="nameElement">
    <!--type="xs:string"-->
    <xs:simpleType>
      <!--name="nameElementType"-->
    <xs:restriction base="xs:string">
      <xs:maxLength value="50" />
      <xs:minLength value="0" />
      <!--lengthMin заменён на minLenth-->
     
      <!--lengthMax заменён на maxLength и поменян местами с minLenth -->
    </xs:restriction>
    </xs:simpleType>
  </xs:element>
  <xs:element name="lastname" type="xs:string"/>

  <!--Global complex element-->
  <xs:element name="officeList">
    <xs:complexType>
      <!--name="officeType"-->
      <xs:sequence maxOccurs="unbounded">
        <xs:element name="office" type="officeType"/>
      </xs:sequence>
      <xs:anyAttribute/>
    </xs:complexType>
  </xs:element>
</xs:schema>

Мда ошибок действительно не мало, это я на глаз валидировал. Исправил.
Сталкнулся с такой интересной особенностью в notepad++ не выдаёт варнинга на наличие ref="nameElement" рядом с name и последующем перечислении остальных атрибутов. Валидировал по схеме http://www.w3.org/2001/XMLSchema.xsd. Скрин успешности прилогаю.
...
Рейтинг: 0 / 0
Найти и исправить ошибки в XSD
    #39034918
nygger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И те же самые условия не прокатывают в visual studio 2013. Я интуитивно предполагаю что студия права, однако пояснить причину ненахождения этой оплошности в xml плагине npp не могу.
...
Рейтинг: 0 / 0
Найти и исправить ошибки в XSD
    #39034968
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nygger Сталкнулся с такой интересной особенностью в notepad++ не выдаёт варнинга на наличие ref="nameElement" рядом с name и последующем перечислении остальных атрибутов. Валидировал по схеме http://www.w3.org/2001/XMLSchema.xsd. Потому что это правило нельзя описать в xsd в принципе. Нет в нем инструкций для взаимоисключающих атрибутов.
...
Рейтинг: 0 / 0
Найти и исправить ошибки в XSD
    #39034970
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nygger И те же самые условия не прокатывают в visual studio 2013. Я интуитивно предполагаю что студия права, однако пояснить причину ненахождения этой оплошности в xml плагине npp не могу. Студия валидирует xsd собственными силами, а не схемой.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Найти и исправить ошибки в XSD
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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