Condividi tramite


Supporto dell'associazione all'elemento import

Questo argomento è specifico di una tecnologia legacy. Servizi Web XML e client di servizi Web XML devono essere creati attualmente tramite Windows Communication Foundation.

In .NET Framework è incluso un supporto parziale per l'associazione all'elemento <import>.

Per l'elemento <import>, lo strumento Xsd.exe ignora l'attributo schemaLocation, in quanto sono previsti file importati anziché argomenti aggiuntivi da riga di comando.

Descrizione

L'elemento <import> è simile all'elemento <include>. Entrambi gli elementi vengono visualizzati come figli dell'elemento radice <schema> e devono trovarsi prima degli altri figli. Entrambi vengono inoltre inseriti in una definizione <schema> separata, generalmente definita in un altro file xsd. Vi è un'unica distinzione principale, come illustrato di seguito:

  • <import>: importa definizioni dello schema e dichiarazioni all'interno di uno spazio dei nomi separato specificato mediante l'attributo namespace.

  • <include>: include ulteriori dichiarazioni dello schema e definizioni all'interno dello stesso spazio dei nomi specificato come targetNamespace per la definizione XML Schema esistente.

L'esempio di codice seguente mostra l'utilizzo di un elemento <import>.

<xsd:import  namespace="http://example.org/attr" schemaLocation="http://example.org/definitions/attr.xsd" />

Attributo schemaLocation

L'attributo schemaLocation specifica il percorso del file xsd importato. Tuttavia Xsd.exe ignora l'attributo schemaLocation quando viene visualizzato nell'elemento <import>. Per Xsd.exe i file importati vengono invece specificati come argomenti aggiuntivi da riga di comando.

Il file di origine generato ottiene il nome dell'ultimo file XSD passato come argomento. Si consideri come esempio la seguente chiamata di Xsd.exe dalla riga di comando:

xsd importedAttribute.xsd attributeRef.xsd /classes /language:CS

Al file sorgente risultante viene assegnato il nome attributeRef.cs.

ew6ts9yw.note(it-it,VS.100).gifNota:
Tuttavia Xsd.exe usa l'attributo schemaLocation quando viene visualizzato nell'elemento <include>. Durante la generazione di codice sorgente da un documento XML Schema, Xsd.exe riconosce un percorso assoluto del file system per il valore. Per ulteriori informazioni, vedere Supporto dell'associazione all'elemento include.

Attributo namespace

L' attributo namespace viene utilizzato per identificare lo spazio dei nomi importato, che deve essere diverso da quello di destinazione del documento XSD che effettua l'importazione, ovvero quello contenente l'elemento <import>.

Durante la generazione di codice sorgente da un documento XML Schema, Xsd.exe imposta una proprietà Namespace sull'attributo di .NET Framework applicato a ciascun tipo o campo corrispondente a un'entità importata. Anche quando non vengono importati spazi dei nomi aggiuntivi, Xsd.exe imposta la proprietà Namespace dei due attributi seguenti su quella dello spazio dei nomi di destinazione del documento XSD originale:

Uno spazio dei nomi importato può essere specificato mediante la proprietà Namespace di determinate classi di attributi relative a XML. La proprietà viene visualizzata nel modo seguente:

Attributi possibili Supporto per l'associazione

id

L'utilità Xsd.exe ignora l'attributo id che fornisce un identificatore univoco.

namespace

Vedere la sezione precedente, Namespace Attribute.

schemaLocation

Vedere la sezione precedente, SchemaLocation Attribute.

Elementi padre possibili: <schema>

Elementi figlio possibili: <annotation>

Vedere anche

Riferimento

XmlSchemaImport