2010-08-08 3 views
1

Я пытаюсь создать файл схемы XSD из существующего файла XML, но получаю ошибки. В настоящее время я пытаюсь использовать инструмент командной строки XSD для создания файла XSD. Любой совет по ошибкам с моим XML-файлом? Или любые другие инструменты, которые я должен попробовать? Вот мой XML-файл:Как создать файл схемы XSD из XML-файла?

<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882' 
    xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882' 
    xmlns:rs='urn:schemas-microsoft-com:rowset' 
    xmlns:z='#RowsetSchema'> 
<s:Schema id='RowsetSchema'> 
    <s:ElementType name='row' content='eltOnly'> 
     <s:AttributeType name="c0" rs:name="FIRST_NAME" rs:number="1" rs:nullable="true"> 
      <s:datatype dt:type="string" rs:dbtype="str" dt:maxLength="30"/> 
     </s:AttributeType> 
     <s:AttributeType name="c1" rs:name="MIDDLE_NAME" rs:number="2" rs:nullable="true"> 
      <s:datatype dt:type="string" rs:dbtype="str" dt:maxLength="30"/> 
     </s:AttributeType> 
     <s:AttributeType name="c2" rs:name="LAST_NAME" rs:number="3"> 
      <s:datatype dt:type="string" rs:dbtype="str" dt:maxLength="60" rs:maybenull="false"/> 
     </s:AttributeType> 
     <s:AttributeType name="c3" rs:name="OTHER_ID" rs:number="4" rs:nullable="true"> 
      <s:datatype dt:type="string" rs:dbtype="str" dt:maxLength="24"/> 
     </s:AttributeType> 
     <s:AttributeType name="c4" rs:name="FS_LUN_CODE_ID" rs:number="5" rs:nullable="true"> 
      <s:datatype dt:type="string" rs:dbtype="str" dt:maxLength="2"/> 
     </s:AttributeType> 
     <s:AttributeType name="c5" rs:name="FS_NAME_ID_PAYOR" rs:number="6" rs:nullable="true"> 
      <s:datatype dt:type="int" dt:maxLength="4" rs:precision="10" rs:fixedlength="true"/> 
     </s:AttributeType> 
     <s:AttributeType name="c6" rs:name="FS_TRAN_TIME" rs:number="7" rs:nullable="true"> 
      <s:datatype dt:type="int" dt:maxLength="4" rs:precision="10" rs:fixedlength="true"/> 
     </s:AttributeType> 
     <s:AttributeType name="c7" rs:name="NAME_ID" rs:number="8"> 
      <s:datatype dt:type="int" dt:maxLength="4" rs:precision="10" rs:fixedlength="true" rs:maybenull="false"/> 
     </s:AttributeType> 
     <s:AttributeType name="c8" rs:name="FS_TRAN_DATE" rs:number="9" rs:nullable="true"> 
      <s:datatype dt:type="date" dt:maxLength="6" rs:fixedlength="true"/> 
     </s:AttributeType> 
     <s:extends type="rs:rowbase"/> 
</s:ElementType> 
</s:Schema> 
<rs:data> 
    <z:row c0='SHELLI' c1='A' c2='AANENSON' c3='671590' c4='N' c5='0' c6='32885' c7='12' c8='2007-09-11'/> 
    <z:row c0='SHELLI' c1='A' c2='AANENSON' c3='671590' c4='N' c5='0' c6='32885' c7='12' c8='2007-09-11'/> 
    <z:row c0='SHELLI' c1='A' c2='AANENSON' c3='671590' c4='N' c5='0' c6='32885' c7='12' c8='2007-09-11'/> 
    <z:row c0='SHELLI' c1='A' c2='AANENSON' c3='671590' c4='N' c5='0' c6='32885' c7='12' c8='2007-09-11'/> 
    <z:row c0='WILLIAM' c1='' c2='AASEN' c3='916031' c4='N' c5='0' c6='55833' c7='13' c8='2007-07-27'/> 
    <z:row c0='WILLIAM' c1='' c2='AASEN' c3='916031' c4='N' c5='0' c6='55833' c7='13' c8='2007-07-27'/> 
    <z:row c0='WILLIAM' c1='' c2='AASEN' c3='916031' c4='N' c5='0' c6='55833' c7='13' c8='2007-07-27'/> 
</rs:data> 
</xml> 

ответ

0

Очень простой способ добиться этого - загрузить 30-дневную пробную версию Altova XML Spy. Он имеет очень приятную функцию XML для XSD, которую вы можете полностью настроить.

+0

Спасибо, Шпион - очень полезное программное обеспечение. Но он сгенерировал более одного файла XSD из вышеуказанного XML-файла. Мне нужен только один файл XSD, поэтому я хочу использовать его для создания пакета SSIS. Есть идеи? – salvationishere

0

Это выглядит как документ, определенный NOTE-XML-Data, в W3C Примечание (не Rec), а не XML-схеме документ. У вашего инструмента есть опции для типа вывода документа?

+0

Я не понимаю ваш вопрос, Джон. Можете ли вы уточнить? – salvationishere

+0

XSD Я обычно понимаю XMLSchema Document, как описано в http://www.w3.org/XML/Schema. Это не похоже на одно. Он не имеет пространства имен XMLSchema или использует любые его элементы. Это документ XML Data, очень отличный. –

1

Насколько я понимаю, документ схемы XSDL может описывать только одно пространство имен. В вашем XML-документе используется несколько пространств имен, поэтому для каждого пространства имен необходимо иметь файл XSD (например, dt.xsd, rs.xsd z.xsd и т. Д.)

Не знаком с SSIS, но я бы предположил, что если он поддерживает несколько пространств имен XML и может проверять каждое пространство имен по схеме, чтобы он поддерживал XSD для пространства имен.

Смежные вопросы