Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Как создать собственный атрибут для описания элементов схемы / 4 сообщений из 4, страница 1 из 1
04.04.2007, 00:20
    #34435750
ssppeedd
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать собственный атрибут для описания элементов схемы
Как объявить вид атрибута conf для элементов схемы?
Естественно то что здесь написано не позволяет элементу element иметь атрибут conf.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.ibm.com" xmlns:InfolineData="http://www.ibm.com">
	<element name="Employee">
		<attribute name="name"/>
		<complexType>
			<sequence>
				<element name="ShortName" conf="false" type="string"/>
				<element name="FullName" conf="true" type="string"/>
			</sequence>
		</complexType>
	</element>
	<attribute name="conf">
		<simpleType>
			<restriction base="string">
				<enumeration value="true"/>
				<enumeration value="false"/>
			</restriction>
		</simpleType>
	</attribute>
</schema>
...
Рейтинг: 0 / 0
06.04.2007, 13:11
    #34443267
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать собственный атрибут для описания элементов схемы
именно для элементов схемы или для элементов целевого документа? Попробуй подключить своё пространство имён.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.ibm.com"
 xmlns:InfolineData="http://www.ibm.com" xmlns:myns="myns">
 <element name="Employee">
  <attribute name="name"/>
  <complexType>
   <sequence>
    <element name="ShortName" myns:conf="false" type="string"/>
    <element name="FullName" myns:conf="true" type="string"/>
   </sequence>
  </complexType>
 </element>
</schema>
...
Рейтинг: 0 / 0
07.04.2007, 11:20
    #34445043
ssppeedd
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать собственный атрибут для описания элементов схемы
Не, не работает.
Ругается на неопределенный аттрибут myns:conf

вот так вроде при описании не ругается
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
	<element name="Employee">
	<complexType>
		<sequence>
			<element name="LastName" type="xis:string"/>
			<element name="FirstName" type="xis:string"/>
		</sequence>
	</complexType>
</element>
<attribute name="conf">
	<simpleType>
		<restriction base="boolean"/>
	</simpleType>
</attribute>
<complexType name="string">
	<simpleContent>
		<extension base="string">
			<attribute ref="xis:conf" default="false" use="optional" />
		</extension>
	</simpleContent>
</complexType>

но в самом xml по этой схеме значение аттрибута по умолчанию не виден, толи парсер кривит, то ли не нельзя так

Вообще кто нибудь может код скинуть? реально работающий, на любом языке (желательно через какой либо стандартный COM, но можно и на яве) где xml парсится жестко по схеме, а то тот пример который я с мелкомягкого сайта скачал пропускает даже отсутствие схемы, даже при установленных параметрах обязательной проверки
...
Рейтинг: 0 / 0
10.04.2007, 11:00
    #34449253
ssppeedd
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать собственный атрибут для описания элементов схемы
нашел нуже похожую проблему, оказывается вся проблема с игнорированием xsd была в версии COM объекта, так работает:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
  xmlDOM=Новый COMОбъект("msxml2.DOMDocument.5.0");
  xmlDOM.async = ложь;
  xmlDOM.validateOnParse = истина;
  xmlDOM.resolveExternals = истина;
  xmlDOM.load("d:\NewFile10.xml");
  если xmlDOM.parseError.errorCode <>  0  тогда
    сообщить(сокрлп(xmlDOM.parseError.errorCode));
    xmlDOM=неопределено;
  КонецЕсли;
  а= 0 ;

схема проверяется и выдается ошибка при несоответствии схемы. НО идя в отладчике, видно, что несмотря, например, на то что элемент объявлен как число там(в отладчике при просмотре содержимого объекта) он все равно как строка существует, и самое главное, зачем я эту ветку и создал, не видно значение атрибута по умолчанию .
Вообще реально добиться того, чтобы типы нормально понимались при разборе и атрибуты по умолчнию были видны в соответствии со схемой?
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Как создать собственный атрибут для описания элементов схемы / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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