Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
22.12.2009, 13:12
|
|||
---|---|---|---|
|
|||
доступ к параметрам XSD |
|||
#18+
Имеется XSD, с описание элемента в виде: <xs:element name="NAME_ELEMENT" type="TYPE_ELEMENT"> <xs:annotation> <xs:documentation>DESCRIPTION_ELEMENT</xs:documentation> </xs:annotation> </xs:element> Проверяю XML на соответствие XSD, используя msxml6 var xmlDoc : IXMLDOMDocument3; xsdDoc : IXMLDOMSchemaCollection2; xmlErr : IXMLDOMParseError2; begin xmlDoc:=CoDOMDocument60.Create; xmlDoc.async:=False; xmlDoc.validateOnParse:=False; xmlDoc.setProperty('MultipleErrorMessages',True); xmlDoc.load(FileName); xsdDoc:=CoXMLSchemaCache60.Create; xsdDoc.add('','SHEMA.xsd'); xmlDoc.schemas:=xsdDoc; xmlErr:=xmlDoc.validate as IXMLDOMParseError2; for i:=0 to xmlErr.allErrors.length-1 do begin for j:=0 to xmlErr.allErrors.item[i].errorParametersCount-1 do str:=str+#10#13+'Параметр'+IntToStr(j)+' '+xmlErr.allErrors.item[i].errorParameters(j)+#10#13; ShowMessage(str+#10#13+ 'CODE '+#10#13+IntToStr(xmlErr.allErrors.item[i].errorCode)+#10#13+ 'ERRORXPATH '+#10#13+xmlErr.allErrors.item[i].errorXPath+#10#13+ 'REASON '+#10#13+xmlErr.allErrors.item[i].reason+#10#13+ 'SRCTEXT '+#10#13+xmlErr.allErrors.item[i].srcText+#10#13+ 'URL '+#10#13+xmlErr.allErrors.item[i].url+#10#13+ 'LINE '+#10#13+IntToStr(xmlErr.allErrors.item[i].line)+#10#13+ 'LINEPOS '+#10#13+IntToStr(xmlErr.allErrors.item[i].linepos)+#10#13+ 'FILEPOS '+#10#13+IntToStr(xmlErr.allErrors.item[i].linepos)); end; end; Все работает. Как мне вывести DESCRIPTION_ELEMENT из <xs:documentation>? Плиз, помогите разобраться... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.12.2009, 22:34
|
|||
---|---|---|---|
|
|||
доступ к параметрам XSD |
|||
#18+
А никак. Доступ к <xsd:ahhotation> через SOM осуществляется только в режиме Write Only. Единственный выход - рассматривать схему как обычный XML документ и натравит на него DOM или SAX парсер. С уважением, Vasilisk ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=14&mobile=1&tid=1333360]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 132ms |
0 / 0 |