Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Oдна XSD ссылкается на другую XSD / 4 сообщений из 4, страница 1 из 1
10.05.2008, 14:23
    #35304375
Youra Polishuk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oдна XSD ссылкается на другую XSD
Есть две xsd схемы fio1 и fio2. Это для примера.
Приминить их обе для разметки и выгрузки данных из документа MS Word 2003 в xml
вроде как нельзя. Я как понимаю из-за двух root.
Можно ли создать схему данных ссылающуюся на схемы fio1,2 чтобы в ней использовать типы данных из них TInicial и TIni.
Т.е. будет какая-то обощающая схема в ней ссылки на схемы fio1,2 и в обощающей я могу использовать типы, описанные в fio1,2.
Это все будет использоваться локально и все три схемы будут находится в одной папке.
Напишите пример пожалуйста.
Заранее спасибо.
Это fio1:
Код: plaintext
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.
<?xml version="1.0" encoding="windows-1251"?>
<xs:schema targetNamespace="urn:fio1" xmlns="urn:fio1" xmlns:mstns="urn:fio1" 
 xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:complexType name="TInicial" mixed="true">
		<xs:annotation>
			<xs:documentation>Ф.И.О.</xs:documentation>
		</xs:annotation>
		<xs:all>
			<xs:element name="SerName" type="xs:string">
				<xs:annotation>
					<xs:documentation>Фамилия</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="FirstName" type="xs:string">
				<xs:annotation>
					<xs:documentation>Имя</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="SecondName" type="xs:string">
				<xs:annotation>
					<xs:documentation>Отчество</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>	
	<xs:element name="Root" type="TInicial"/>
</xs:schema>
Это fio2:
Код: plaintext
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.
<?xml version="1.0" encoding="windows-1251"?>
<xs:schema targetNamespace="urn:fio2" xmlns="urn:fio2" xmlns:mstns="urn:fio2" 
  xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:complexType name="TIni" mixed="true">
		<xs:annotation>
			<xs:documentation>Ф.И.О.</xs:documentation>
		</xs:annotation>
		<xs:all>
			<xs:element name="Familya" type="xs:string">
				<xs:annotation>
					<xs:documentation>Фамилия</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Imya" type="xs:string">
				<xs:annotation>
					<xs:documentation>Имя</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Otchestvo" type="xs:string">
				<xs:annotation>
					<xs:documentation>Отчество</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>	
	<xs:element name="Root" type="TIni"/>
</xs:schema>
...
Рейтинг: 0 / 0
11.05.2008, 13:16
    #35305032
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oдна XSD ссылкается на другую XSD
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
<?xml version="1.0" encoding="windows-1251"?>
<xs:schema targetNamespace="urn:fio3" xmlns="urn:fio3" 
  xmlns:mstns="urn:fio3"
  xmlns:mstns_1="urn:fio1" 
  xmlns:mstns_2="urn:fio2" 
 xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xsd:import namespace="urn:fio1" schemaLocation="fio1.xsd"/>
  <xsd:import namespace="urn:fio2" schemaLocation="fio2.xsd"/>
  ...........................
</xs:schema>
...
Рейтинг: 0 / 0
13.05.2008, 06:53
    #35307871
Youra Polishuk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oдна XSD ссылкается на другую XSD
Получилось вот так вот.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<?xml version="1.0" encoding="windows-1251"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xs:include schemaLocation="fio1.xsd"/>
  <xs:include schemaLocation="fio2.xsd"/>
         <xs:complexType name="TComplex" mixed="true">
		<xs:annotation>
			<xs:documentation>Два ФИО</xs:documentation>
		</xs:annotation>
		<xs:all>
                        <xs:element name="FIO1" type="TInicial"></xs:element>
                        <xs:element name="FIO2" type="TIni"></xs:element>
		</xs:all>
	</xs:complexType>	
 <xs:element name="Root" type="TComplex"/>
</xs:schema>
Нашел вот такую вот ссылку http://soa.it-consultants.ru:8888/?q=node/12
Мне бы лучше всего подошел вариант без пространства имен.
Но как я понимаю с MS Word такой вариант не сработает. Так как там для каждой схемы нужно
указывать пространство имен.
Где можно скачать книгу или статью с полным описанием xml+xsd? Напишите пожалуйста ссылку.
...
Рейтинг: 0 / 0
13.05.2008, 14:09
    #35308964
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oдна XSD ссылкается на другую XSD
Youra PolishukГде можно скачать книгу или статью с полным описанием xml+xsd? Напишите пожалуйста ссылку.
MSDN MSXML SDK
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Oдна XSD ссылкается на другую XSD / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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