Um Esquema XML ou documento WSDL pode incluir outros Esquemas
XML no documento principal, usando Inclusão de
Esquema, Inclusão de Esquema com
Redefinição ou Importando um Namespace.
Sobre Esta Tarefa
- Inclusão de Esquema
- É possível incluir outros fragmentos de Esquema XML no Esquema XML principal
ou WSDL usando o elemento de inclusão, conforme mostrado no seguinte exemplo:
<xsd:include schemaLocation="myTypes.xsd"/>
- Inclusão de Esquema com Redefinição
- A especificação de Esquema XML suporta a redefinição de definições incluídas
por outros fragmentos de Esquema XML no Esquema XML ou WSDL atual. Por
exemplo, o fragmento de Esquema XML myTypes.xsd define
um tipo complexo chamado PurchaseOrderType. Um outro
Esquema XML chamado PurchaseOrder.xsd inclui o fragmento de Esquema
XML myTypes.xsd usando o elemento de redefinição e redefine o tipo
complexo chamado PurchaseOrderType.
- É possível incluir outros fragmentos de Esquema XML no Esquema XML principal
ou WSDL usando o elemento redefine, conforme mostrado
no seguinte exemplo: <xsd:redefine schemaLocation="myTypes.xsd"/>
- Importando um Espaço de Nomes
- É possível incluir um namespace no documento atual usando o elemento
import, conforme mostrado no exemplo a seguir:
<xs:import namespace="http://acme.com/ns/example
schemaLocation="mySchema.xsd" /> .
Quando você inclui ou faz upload do Esquema XML ou WSDL principal no
projeto usando a caixa de diálogo Incluir Documento, é solicitado que
localize qualquer Esquema XML incluído, ou Esquemas XML, no projeto,
conforme mostrado no procedimento a seguir. Todos os Esquemas XML
incluídos devem ser localizados antes do Esquema XML ou documento WSDL
principal ser mostrado na guia Projeto e podem ser
usados no projeto.
Procedimento
- Faça upload de um Esquema XML ou documento WSDL para o projeto
atual. Se o Esquema XML ou documento WSDL incluir outros Esquemas XML, a
caixa de diálogo Fazendo Upload dos Esquemas XML Incluídos será exibida
listando todos os Esquemas XML incluídos, conforme mostrado em
Figura 1.
Figura 1. Fazendo Upload de Esquemas XML Incluídos
Se o Esquema XML incluído for localizado
automaticamente, o ícone de visto
será exibido próximo ao Esquema XML na
caixa de diálogo Fazendo Upload dos Esquemas XML Incluídos, conforme
mostrado para o Esquema XML commonTypes.xsd na figura
precedente. Se o Esquema XML ou WSDL principal foi localizado no sistema
de arquivos local, o Studio procurará os Esquemas XML incluídos no mesmo
diretório e os localizará automaticamente; por exemplo, se você transferiu
por upload mySchema.xsd a partir do diretório
C:\temp e mySchema.xsd incluir o
Esquema XML commonTypes.xsd, o Studio localizará
automaticamente o Esquema XML commonTypes.xsd no
diretório C:\temp. Se o Esquema XML incluído não for localizado automaticamente, o
ícone de aviso
será exibido próximo ao Esquema XML na caixa de
diálogo Fazendo Upload dos Esquemas XML Incluídos, conforme mostrado para
o Esquema XML poTypes.xsd em
Figura 1.
- Repita as seguintes etapas para localizar todos os Esquemas XML
não localizados:
- Selecione o Esquema XML na caixa de diálogo Fazendo Upload de Esquemas
XML Incluídos. O Esquema XML é destacado na tabela, conforme mostrado em
Figura 2.
Figura 2. Fazer Upload de um Esquema XML
- Clique em Localizar. A caixa de diálogo Localizar o Esquema XML Selecionado é
exibida.
- No campo Local, especifique
o local do Esquema XML incluído a partir de um local da Web externo
ou do sistema de arquivos.
- Clique em OK. Se
o Esquema XML for localizado, o ícone de visto
será exibido
próximo ao Esquema XML na caixa de diálogo Fazendo Upload de Esquemas XML
Incluídos.
- Por padrão, a caixa de opção Armazenar todas as inclusões no
mesmo nó do projeto que o documento principal está selecionada.
Quando essa caixa de opção é selecionada, os Esquemas XML incluídos e o
Esquema XML principal ou WSDL são transferidos por upload como um único nó do projeto. Quando
essa caixa de opção é desmarcada, todos os Esquemas XML incluídos e o Esquema XML
principal ou WSDL são exibidos separadamente na guia Projeto. Um ícone de visto é mostrado próximo a cada Esquema XML
listado, indicando que todos os Esquemas XML incluídos foram localizados.
- Clique em OK.
Exemplo
Se a caixa de seleção
Armazenar todas as inclusões
no mesmo nó do projeto que o documento principal estiver
selecionada, apenas o Esquema XML ou WSDL principal será exibido na guia
Projeto, conforme mostrado em
Figura 3.
Figura 3. Exemplo
Com a caixa de opção selecionada,
os Esquemas XML incluídos ainda são transferidos por upload para o
projeto, mas não são exibidos na guia
Projeto, assim, não é possível atualizar
individualmente esses Esquemas XML no projeto conforme descrito em
Fazendo Upload de Esquemas XML Incluídos.
Se a caixa
de seleção
Armazenar todas as inclusões no mesmo nó do projeto
que o documento principal estiver desmarcada, o Esquema XML ou
WSDL principal será exibido e todos os Esquemas XML incluídos serão
transferidos por upload no projeto e mostrados na guia
Projeto, conforme mostrado em
Figura 4.
Figura 4. Exemplo
Com a caixa de seleção desmarcada,
todos os Esquemas XML incluídos poderão ser atualizados individualmente,
conforme descrito em
Fazendo Upload de Esquemas XML Incluídos.
Nota: Se
possível, sempre carregue o Esquema XML ou WSDL principal com esta caixa
de seleção selecionada (como um nó do projeto) para reduzir os conflitos
de dependência em potencial entre Esquemas XML. Por exemplo, se você fizer
upload do arquivo
myTypes.xsd principal no projeto com
a caixa de seleção
Armazenar todas as inclusões no mesmo nó do
projeto que o documento principal desmarcada, os seguintes
arquivos XSD também serão transferidos por upload e mostrados na guia
Projeto:
- commonTypes.xsd
- poTypes.xsd
Se você criou e
transferiu por upload um terceiro arquivo XSD chamado
myTypesTwo.xsd que também incluía e usava os tipos
definidos no arquivo commonTypes.xsd e, em seguida,
alterou os nomes dos tipos definidos no commonTypes.xsd
e usados em myTypes.xsd fora do Studio e transferiu por
upload novas versões destes arquivos, o arquivo
myTypesTwo.xsd no projeto ainda fará referência aos
nomes originais dos tipos e agora será inválido.