WS_FIELD_MAPPING enumeração (webservices.h)
Especifica como um campo de uma estrutura é representado em XML. Isso é usado em um WS_FIELD_DESCRIPTION.
Sintaxe
typedef enum {
WS_TYPE_ATTRIBUTE_FIELD_MAPPING = 0,
WS_ATTRIBUTE_FIELD_MAPPING = 1,
WS_ELEMENT_FIELD_MAPPING = 2,
WS_REPEATING_ELEMENT_FIELD_MAPPING = 3,
WS_TEXT_FIELD_MAPPING = 4,
WS_NO_FIELD_MAPPING = 5,
WS_XML_ATTRIBUTE_FIELD_MAPPING = 6,
WS_ELEMENT_CHOICE_FIELD_MAPPING = 7,
WS_REPEATING_ELEMENT_CHOICE_FIELD_MAPPING = 8,
WS_ANY_ELEMENT_FIELD_MAPPING = 9,
WS_REPEATING_ANY_ELEMENT_FIELD_MAPPING = 10,
WS_ANY_CONTENT_FIELD_MAPPING = 11,
WS_ANY_ATTRIBUTES_FIELD_MAPPING = 12
} WS_FIELD_MAPPING;
Constantes
WS_TYPE_ATTRIBUTE_FIELD_MAPPING Valor: 0 O campo corresponde ao atributo de tipo XML (xsi:type). Isso só pode ser usado com WS_DESCRIPTION_TYPE.
Esse mapeamento não dá suporte à especificação de um WS_DEFAULT_VALUE. |
WS_ATTRIBUTE_FIELD_MAPPING Valor: 1 O campo corresponde a um único atributo. O localName/ns do campo é usado como o nome do atributo XML e o namespace. A menos que especificado, o atributo deve aparecer no XML. Se WS_FIELD_OPTIONAL for especificado, o atributo não será necessário para aparecer no XML. Se opcional e não estiver presente, o campo será definido como o WS_DEFAULT_VALUEou zero se o valor padrão não for especificado.
Para descartar o atributo, um WS_VOID_TYPE deve ser usado. Nesse caso, um campo não é necessário na estrutura. Consulte WS_VOID_TYPE para obter mais informações. |
WS_ELEMENT_FIELD_MAPPING Valor: 2 O campo corresponde a um único elemento. O localName/ns do campo é usado como o nome e o namespace do elemento XML. A menos que especificado, o elemento deve aparecer no XML. Se WS_FIELD_OPTIONAL for especificado, o elemento não será necessário para aparecer no XML. Se opcional e não estiver presente, o campo será definido como o WS_DEFAULT_VALUEou zero se o valor padrão não for especificado.
Para descartar o elemento, um WS_VOID_TYPE deve ser usado. Nesse caso, um campo não é necessário na estrutura. Consulte WS_VOID_TYPE para obter mais informações. |
WS_REPEATING_ELEMENT_FIELD_MAPPING Valor: 3 O campo corresponde a um conjunto repetido de elementos. O localName/ns do campo é usado como o nome do elemento XML e o namespace a ser usado para o elemento wrapper (o elemento que é o pai dos elementos recorrentes). Se nenhum elemento wrapper for desejado, o localName/ns deverá ser NULL. Se um elemento wrapper tiver sido especificado, o elemento wrapper deverá aparecer no XML se a contagem de elementos recorrentes não for 0. Um WS_DEFAULT_VALUE pode não ser especificado para este mapeamento de campo. O itemLocalName e os itemNs são usados como o nome do elemento XML e o namespace para o elemento recorrente.
O número de elementos na matriz desserializada pode ser restringido especificando uma estrutura de |
WS_TEXT_FIELD_MAPPING Valor: 4 O campo corresponde a todo o conteúdo do caractere do elemento. Quando esse mapeamento é usado, elementos filho não são permitidos. Esse mapeamento é comumente usado em conjunto com WS_ATTRIBUTE_FIELD_MAPPING para definir uma estrutura que é mapeada para um elemento que contém alguns atributos e texto (mas nenhum elemento filho).
Esse mapeamento não dá suporte à especificação de um WS_DEFAULT_VALUE. |
WS_NO_FIELD_MAPPING Valor: 5 O campo não é serializado nem desserializado. O campo é ignorado ao serializar e é inicializado para o valor padrão ao desserializar. Se o campo for mapeado para um dos tipos existentes (por exemplo, WS_INT32_TYPE), o tipo poderá ser especificado. Se o tipo do campo não for um dos tipos existentes, WS_VOID_TYPE poderá ser usado para especificar um campo de um tipo e tamanho arbitrários. Um WS_DEFAULT_VALUE pode ser especificado para fornecer o valor para inicializar o campo ao desserializar o campo. Se um valor padrão não for especificado, o campo será inicializado como zero. O mapeamento de campo só pode ser usado com WS_FIELD_OPTIONS valor de 0.
|
WS_XML_ATTRIBUTE_FIELD_MAPPING Valor: 6 O campo corresponde a um atributo xml reservado (como xml:lang). O localName do campo é usado para identificar o nome do atributo XML. A menos que WS_FIELD_OPTIONAL seja especificado, o atributo deve aparecer no XML. Se WS_FIELD_OPTIONAL for especificado, o atributo não será necessário para aparecer no XML. Se opcional e não estiver presente, o campo será definido como o WS_DEFAULT_VALUEou zero se o valor padrão não for especificado.
|
WS_ELEMENT_CHOICE_FIELD_MAPPING Valor: 7 O campo corresponde a uma escolha entre um conjunto de elementos possíveis. Cada elemento é mapeado para um dos campos de uma união. Cada campo da união tem um valor de enumeração correspondente, que é usado para identificar a escolha atual.
Esse mapeamento de campo deve ser usado com WS_UNION_TYPE. Os nomes e namespaces das opções de elemento são especificados no WS_UNION_DESCRIPTION. O localName e ns do campo devem ser NULL. A menos que WS_FIELD_OPTIONAL seja especificado, um dos elementos deve aparecer no XML. Se WS_FIELD_OPTIONAL for especificado, nenhum dos elementos será necessário para aparecer no XML. Se forem opcionais e nenhum dos elementos estiverem presentes, o valor do seletor do campo será definido como o valor nenhum da enumeração (conforme especificado no campo noneEnumValue do WS_UNION_DESCRIPTION). Devido ao fato de que nonEnumValue é usado como o valor padrão, esse valor de mapeamento não dá suporte à especificação de um WS_DEFAULT_VALUE.
O campo corresponde a uma escolha entre um conjunto de elementos possíveis. Cada elemento é mapeado para um dos campos de uma união. Cada campo da união tem um valor de enumeração correspondente, que é usado para identificar a escolha atual.
Esse mapeamento de campo deve ser usado com WS_UNION_TYPE. Os nomes e namespaces das opções de elemento são especificados no WS_UNION_DESCRIPTION. O localName e ns do campo devem ser NULL. A menos que WS_FIELD_OPTIONAL seja especificado, um dos elementos deve aparecer no XML. Se WS_FIELD_OPTIONAL for especificado, nenhum dos elementos será necessário para aparecer no XML. Se forem opcionais e nenhum dos elementos estiverem presentes, o valor do seletor do campo será definido como o valor nenhum da enumeração (conforme especificado no campo noneEnumValue do WS_UNION_DESCRIPTION). Devido ao fato de que nonEnumValue é usado como o valor padrão, esse valor de mapeamento não dá suporte à especificação de um WS_DEFAULT_VALUE.
O valor do seletor indica quais dos campos da união estão definidos. Outros campos são deixados não inicializados quando o valor é desserializado. Um aplicativo sempre deve consultar o valor do seletor para verificar se um campo da união está acessível. |
WS_REPEATING_ELEMENT_CHOICE_FIELD_MAPPING Valor: 8 O campo corresponde a um conjunto repetido de opções de elemento. Cada item é representado por uma união com o valor do seletor. Esse mapeamento deve ser usado com WS_UNION_TYPE. O localName/ns do campo é usado como o nome do elemento XML e o namespace a ser usado para o elemento wrapper (o elemento que é o pai dos elementos recorrentes). Se nenhum elemento wrapper for desejado, o localName/ns deverá ser NULL. Se um elemento wrapper tiver sido especificado, o elemento wrapper deverá aparecer no XML se a contagem de elementos recorrentes não for 0. Um WS_DEFAULT_VALUE pode não ser especificado para este mapeamento de campo. Os campos itemLocalName e itemNs devem ser NULL. O nome e o namespace do elemento XML são definidos no WS_UNION_DESCRIPTION.
O número de elementos na matriz desserializada pode ser restringido especificando uma estrutura de |
WS_ANY_ELEMENT_FIELD_MAPPING Valor: 9 TBD |
WS_REPEATING_ANY_ELEMENT_FIELD_MAPPING Valor: 10 O campo é usado para descartar ou armazenar uma sequência de elementos com qualquer nome e namespace. Para armazenar os elementos, um WS_XML_BUFFER_TYPE deve ser usado. Isso corresponde a uma matriz de WS_XML_BUFFERs, da seguinte maneira:
Para descartar os elementos, um WS_VOID_TYPE deve ser usado. Nesse caso, um campo não é necessário na estrutura. Consulte WS_VOID_TYPE para obter mais informações. O número de elementos permitidos durante a desserialização pode ser restringido especificando uma estrutura de Esse mapeamento não dá suporte à especificação de um WS_DEFAULT_VALUE. |
WS_ANY_CONTENT_FIELD_MAPPING Valor: 11 O campo é usado para descartar ou armazenar qualquer conteúdo restante (qualquer mistura de texto ou elementos) que ocorra antes do final de um elemento. Para armazenar os elementos, um WS_XML_BUFFER_TYPE deve ser usado, da seguinte maneira:
Para descartar os elementos, um WS_VOID_TYPE deve ser usado. Nesse caso, um campo não é necessário na estrutura. Consulte WS_VOID_TYPE para obter mais informações. Esse mapeamento não dá suporte à especificação de um WS_DEFAULT_VALUE. |
WS_ANY_ATTRIBUTES_FIELD_MAPPING Valor: 12 O campo é usado para descartar ou armazenar quaisquer atributos que não foram mapeados usando outros valores WS_FIELD_MAPPING. Se esse mapeamento de campo não for especificado, os atributos não mapeados causarão um erro ao desserializar. O campo de nome do WS_FIELD_DESCRIPTION deve ser NULL. O campo ns do WS_FIELD_DESCRIPTION restringe o namespace dos atributos permitidos da seguinte maneira:
Para armazenar os atributos, WS_ANY_ATTRIBUTES_TYPE deve ser usado. Isso corresponde a WS_ANY_ATTRIBUTES da seguinte maneira:
Para descartar os atributos não mapeados, um WS_VOID_TYPE deve ser usado. Nesse caso, um campo não é necessário na estrutura. Consulte WS_VOID_TYPE para obter mais informações. Esse mapeamento não dá suporte à especificação de um WS_DEFAULT_VALUE. |
Observações
O WS_FIELD_MAPPING indica como diferentes partes do conteúdo XML são mapeadas para os campos de uma estrutura. Por exemplo, WS_ELEMENT_FIELD_MAPPING pode ser usado para mapear o valor de um elemento filho e WS_ATTRIBUTE_FIELD_MAPPING pode ser usado para mapear um atributo. Qualquer conteúdo XML lido que não esteja explicitamente mapeado fará com que WS_E_INVALID_FORMAT sejam retornados quando o XML for desserializado (consulte Os Serviços Web do Windows retornam valores.)
A ordem do WS_FIELD_DESCRIPTION em um WS_STRUCT_DESCRIPTION é determinada pelo valor WS_FIELD_MAPPING do WS_FIELD_DESCRIPTION. Consulte WS_STRUCT_DESCRIPTION para obter mais informações sobre a ordenação.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 7 [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
cabeçalho | webservices.h |