Newsgroup: it.comp.lang.visual-basic
Titolo: [.NET] ReadXmlSchema

Buongiorno a tutti!
Ho un problema col metodo ReadXmlSchema, ovvero non riesco a capire perchè
si "rifiuta" di validare un documento XML col suo XSD associato.
La chiamata è fatta in questo modo (e ordine):
    Dim ds As New DataSet()
 
    ds.ReadXml("C:\file.xml")
    ds.ReadXmlSchema("C:\file.xsd") '<=== Qui si inchioda!
L'errore è qualcosa del tipo: "An unhandled exception of type
'System.Xml.Schema.XmlSchemaException' occured in system.xml.dll"
:-(
Qualcuno mi può aiutare? Dove sbaglio?
Grazie in anticipo a chi vorrà aiutarmi!
Lorenzo
--- file.xml ---
<?xml version="1.0" encoding="UTF-8"?>
<EXPORT>
  <ANAGRAFICA>
    <REC>
      <ID>8810</ID>
      <COGNOME>ROSSI</COGNOME>
      <NOME>LUCIANO</NOME>
      <NATO_IL>23/10/1967</NATO_IL>
      <NOTE></NOTE>
    </REC>
    <REC>
      <ID>7654</ID>
      <COGNOME>PAVESE</COGNOME>
      <NOME>MARIO</NOME>
      <NATO_IL>04/09/1969</NATO_IL>
      <NOTE>DETTO MARIETTO</NOTE>
    </REC>
  </ANAGRAFICA>
</EXPORT>
--- file.xsd ---
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema id="file" xmlns="" xmlns:xs="
http://www.w3.org/2001/XMLSchema
"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
  <xs:element name="EXPORT">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ANAGRAFICA" minOccurs="0" maxOccurs="unbounded">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="REC" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:sequence>
                     <xs:element name="ID" type="xs:decimal" />
                     <xs:element name="COGNOME" type="xs:string" />
                     <xs:element name="NOME" type="xs:string" />
                     <xs:element name="NATO_IL" type="xs:date" />
                     <xs:element name="NOTE" type="xs:string"
minOccurs="0" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


Ho fatto una prova con i tuoi file, e non ho avuto nessun problema!
Framework 1.1.
Ciao!

 si "rifiuta" di validare un documento XML col suo XSD associato.
Taglio
L'esecuzione non costruisce errori.
Ma la lettura restituisce record 0
Penso dopo Element, ci dovrebbero essere degli elementi.
Il seguente funziona:
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema id="file2" targetNamespace="
http://tempuri.org/file2.xsd
"
elementFormDefault="qualified" xmlns="
http://tempuri.org/file2.xsd
"
xmlns:mstns="
http://tempuri.org/file2.xsd
"
xmlns:xs="
http://www.w3.org/2001/XMLSchema
">
 <xs:element name="Rec">
  <xs:complexType>
   <xs:sequence>
    <xs:element name="ID" type="xs:decimal" />
    <xs:element name="COGNOME" type="xs:string" />
    <xs:element name="NOME" type="xs:string" />
    <xs:element name="NATO_IL" type="xs:date" />
    <xs:element name="NOTE" type="xs:string" />
   </xs:sequence>
  </xs:complexType>
 </xs:element>
</xs:schema>
A me risulta, spero di essere smentito,
che il controllo dei tipi non c'č.
Se provo a inserire, nel file xml, la seguente data  54/89/1969,
in lettura non viene rilevato l'errore.
Quindi, il file.xsd puň essere utilizzato per un controllo dei tipi in
lettura ?
Ave
giuseppeD

 Ciao!


 giuseppeD
