énumération WS_XML_WRITER_PROPERTY_ID (webservices.h)
Chaque propriété d’enregistreur xml est identifiée par un ID et a une valeur associée. Cette énumération est utilisée dans la structure WS_XML_WRITER_PROPERTY, qui est utilisée comme paramètre pour WsCreateWriter, WsSetOutput, WsSetOutputToBufferet WsWriteXmlBufferToBytes. Il est également utilisé directement comme paramètre pour WsGetWriterProperty.
Syntaxe
typedef enum {
WS_XML_WRITER_PROPERTY_MAX_DEPTH = 0,
WS_XML_WRITER_PROPERTY_ALLOW_FRAGMENT = 1,
WS_XML_WRITER_PROPERTY_MAX_ATTRIBUTES = 2,
WS_XML_WRITER_PROPERTY_WRITE_DECLARATION = 3,
WS_XML_WRITER_PROPERTY_INDENT = 4,
WS_XML_WRITER_PROPERTY_BUFFER_TRIM_SIZE = 5,
WS_XML_WRITER_PROPERTY_CHARSET = 6,
WS_XML_WRITER_PROPERTY_BUFFERS = 7,
WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE = 8,
WS_XML_WRITER_PROPERTY_BYTES = 9,
WS_XML_WRITER_PROPERTY_IN_ATTRIBUTE = 10,
WS_XML_WRITER_PROPERTY_MAX_MIME_PARTS_BUFFER_SIZE = 11,
WS_XML_WRITER_PROPERTY_INITIAL_BUFFER = 12,
WS_XML_WRITER_PROPERTY_ALLOW_INVALID_CHARACTER_REFERENCES = 13,
WS_XML_WRITER_PROPERTY_MAX_NAMESPACES = 14,
WS_XML_WRITER_PROPERTY_BYTES_WRITTEN = 15,
WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE = 16,
WS_XML_WRITER_PROPERTY_COMPRESS_EMPTY_ELEMENTS = 17,
WS_XML_WRITER_PROPERTY_EMIT_UNCOMPRESSED_EMPTY_ELEMENTS = 18
} WS_XML_WRITER_PROPERTY_ID;
Constantes
WS_XML_WRITER_PROPERTY_MAX_DEPTH Valeur : 0 Une ULONG qui spécifie la profondeur maximale du document que l’enregistreur autorise. La profondeur est mesurée à n’importe quel point par le nombre d’éléments de début imbriqués. Une profondeur de 0 empêche l’écriture d’éléments de début. Cette propriété est par défaut 32. |
WS_XML_WRITER_PROPERTY_ALLOW_FRAGMENT Valeur : 1 Structure WS_XML_WRITER_MTOM_ENCODING qui spécifie si l’enregistreur autorise plusieurs éléments et espaces non blancs au niveau supérieur du document. Cette propriété peut ne pas être défini sur TRUE avec WS_XML_WRITER_MTOM_ENCODING. Cette propriété a la valeur par défaut FALSE. |
WS_XML_WRITER_PROPERTY_MAX_ATTRIBUTES Valeur : 2 Un ULONG le nombre maximal d’attributs que l’enregistreur autorise sur un élément. Cette propriété est par défaut 128. |
WS_XML_WRITER_PROPERTY_WRITE_DECLARATION Valeur : 3 Un BOOL qui spécifie si l’enregistreur doit émettre une déclaration xml appropriée au début du document. Cette propriété a la valeur par défaut FALSE. |
WS_XML_WRITER_PROPERTY_INDENT Valeur : 4 Un ULONG qui spécifie le nombre d’espaces de retrait à utiliser pour mettre en forme le xml. Si le retrait est égal à zéro, aucune mise en forme ne se produit. Cette propriété a la valeur 0 par défaut. |
WS_XML_WRITER_PROPERTY_BUFFER_TRIM_SIZE Valeur : 5 Une ULONG qui spécifie l’une des options suivantes. Si l’enregistreur utilise WS_XML_WRITER_BUFFER_OUTPUT, cette propriété est le nombre maximal d’octets l’enregistreur conserve les appels à WsSetOutput à des fins de mise en mémoire tampon de sortie. Si l’enregistreur utilise WS_XML_WRITER_STREAM_OUTPUT, cette propriété est le nombre maximal d’octets l’enregistreur conserve les appels à WsSetOutput et WsFlushWriter pour objectifs de la sortie de mise en mémoire tampon. Cette propriété n’a aucun effet lorsqu’elle est spécifiée avec WsSetOutputToBuffer. Cette propriété est par défaut 4096. |
WS_XML_WRITER_PROPERTY_CHARSET Valeur : 6 Valeur WS_CHARSET qui retourne le jeu de caractères que l’enregistreur utilise pour encoder le document. Cette valeur est disponible uniquement pour documents texte. |
WS_XML_WRITER_PROPERTY_BUFFERS Valeur : 7 Structure de WS_BUFFERS qui retourne un ensemble de mémoires tampons contenant les octets xml générés. Si l’enregistreur utilise WS_XML_WRITER_BUFFER_OUTPUT, tous les octets générés sont retournés et les mémoires tampons sont valides jusqu’à ce que WsSetOutput ou WsFreeWriter soit appelée. Si l’enregistreur utilise WS_XML_WRITER_MTOM_ENCODING, il ne doit pas y avoir d’éléments ouverts. Les parties MIME de prise en charge seront générées et incluses dans les mémoires tampons retournées. Une fois cela se produit, toute API qui tente d’écrire plus loin dans le document xml retourne WS_E_INVALID_OPERATION. (Consultez valeurs de retour des services web Windows.) Cette propriété n’est pas disponible lors de l’utilisation de WS_XML_WRITER_STREAM_OUTPUT. Cette propriété n’est pas disponible sur un enregistreur défini sur un WS_XML_BUFFER. Cela peut être moins pratique mais plus efficace que l’utilisation de WS_XML_WRITER_PROPERTY_BYTES, car le writer n’a pas besoin de concaténer les mémoires tampons qui composent le document en une seule mémoire tampon. |
WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE Valeur : 8 Un ULONG spécifie le nombre maximal d’octets que l’enregistreur met en mémoire tampon. Si l’enregistreur utilise WS_XML_WRITER_BUFFER_OUTPUT, il s’agit du nombre maximal de Octets qui seront mis en mémoire tampon pour l’ensemble du document. Les appels à WsFlushWriter n’ont aucun effet. Si l’enregistreur utilise WS_XML_WRITER_STREAM_OUTPUT, il s’agit de la quantité maxmimum de données qui seront mises en mémoire tampon entre appels WsFlushWriter. Cette propriété n’a aucun effet lorsqu’elle est spécifiée avec WsSetOutputToBuffer. |
WS_XML_WRITER_PROPERTY_BYTES Valeur : 9 Structure de WS_BUFFERS qui retourne une mémoire tampon unique contenant les octets xml générés. Si l’enregistreur utilise WS_XML_WRITER_BUFFER_OUTPUT, tous les octets générés sont retournés et la mémoire tampon est valide jusqu’à ce que WsSetOutput ou WsFreeWriter soit appelée. Si l’enregistreur utilise WS_XML_WRITER_MTOM_ENCODING, il ne doit pas y avoir d’éléments ouverts. Les parties MIME de prise en charge seront générées et incluses dans les mémoires tampons retournées. Une fois cela se produit, toute API qui tente d’écrire plus loin dans le document xml retourne WS_E_INVALID_OPERATION. Cette propriété n’est pas disponible lors de l’utilisation de WS_XML_WRITER_STREAM_OUTPUT. Cette propriété n’est pas disponible sur un enregistreur défini sur un WS_XML_BUFFER. Cela peut être plus pratique mais moins efficace que d’utiliser WS_XML_WRITER_PROPERTY_BUFFERS parce que l’enregistreur peut avoir besoin de concaténer les mémoires tampons qui composent le document en une seule mémoire tampon. |
WS_XML_WRITER_PROPERTY_IN_ATTRIBUTE Valeur : 10 Un BOOL indique que WsWriteStartAttribute a été appelée et que l’enregistreur est positionné sur le contenu d’attribut. |
WS_XML_WRITER_PROPERTY_MAX_MIME_PARTS_BUFFER_SIZE Valeur : 11 Une ULONG sera mis en mémoire tampon à des fins d’écriture des parties MIME. WsWriteBytes et WsPullBytes devez mettre en mémoire tampon les données afin d’émettre les données en tant que partie MIME distincte qui suit le document, et cela peut être utilisé pour limiter la quantité de mémoires tampons. Cette propriété est par défaut 65536. |
WS_XML_WRITER_PROPERTY_INITIAL_BUFFER Valeur : 12 Structure WS_BYTES qui contient une mémoire tampon que l’enregistreur peut utiliser pour encoder le document xml. C’est utile lorsqu’une limite supérieure sur la taille des données xml générées est connue ou que l’appelant souhaite posséder mémoire tampon dans laquelle les octets sont placés. Si la taille spécifiée est supérieure ou égale à WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE, la l’enregistreur n’alloue pas à partir de ses mémoires tampons internes. Cette mémoire tampon peut apparaître comme l’une des mémoires tampons retournées par la propriété WS_XML_WRITER_PROPERTY_BUFFERS ou WS_XML_WRITER_PROPERTY_BYTES. L’appelant doit s’assurer que la mémoire tampon spécifiée est valide pour la durée de vie de l’enregistreur. |
WS_XML_WRITER_PROPERTY_ALLOW_INVALID_CHARACTER_REFERENCES Valeur : 13 Un BOOL utilisé avec WS_XML_WRITER_TEXT_ENCODING. Définir cette valeur sur TRUE autorise les références de caractères des caractères considérés comme non valides par XML 1.0 à accepter. La définition de cette propriété sur VRAI peut affecter l’interopérabilité. Cette propriété a la valeur par défaut FALSE. |
WS_XML_WRITER_PROPERTY_MAX_NAMESPACES Valeur : 14 Une ULONG qui spécifie le nombre maximal de déclarations uniques xmlns qui peuvent apparaître dans l’étendue à tout moment lors de l’écriture du document. Cette propriété est par défaut 32. |
WS_XML_WRITER_PROPERTY_BYTES_WRITTEN Valeur : 15 Une ULONG qui spécifie l’une des options suivantes. Si l’enregistreur utilise WS_XML_WRITER_BUFFER_OUTPUT, cette propriété retourne le nombre d’octets qui ont été écrits dans l’enregistreur. Si l’enregistreur utilise WS_XML_WRITER_STREAM_OUTPUT, cette propriété retourne le nombre d’octets qui ont été écrits dans l’enregistreur depuis le dernier appel à WsFlushWriter. Si l’enregistreur écrit actuellement une balise de début d’élément, la taille de la balise de début n’est pas incluse dans valeur retournée. Cette propriété n’est pas disponible sur un enregistreur défini à l’aide de WsSetOutputToBuffer. |
WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE Valeur : 16 Un ULONG qui retourne le nombre maximal d’octets nécessaires pour fermer les éléments ouverts. Une application peut utiliser WS_XML_WRITER_PROPERTY_BYTES_WRITTEN et WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE pour estimer la quantité d’éléments supplémentaires les données peuvent être écrites dans le document. Dans ce cas, l’application doit prendre en compte encodage du document en cours d’écriture. Cette propriété n’est pas disponible sur un enregistreur défini à l’aide de WsSetOutputToBuffer. |
WS_XML_WRITER_PROPERTY_COMPRESS_EMPTY_ELEMENTS Valeur : 17 Un BOOL qui contrôle la façon dont WsCopyNode copie des éléments sans contenu. Lorsque cette propriété est définie sur FALSE, WsCopyNode conserve si chaque élément est représenté en tant que paire d’étiquettes de début/fin, ou en tant qu’élément vide. Lorsque cette propriété est définie sur TRUE, WsCopyNode convertissez des éléments sans contenu en éléments vides. L’encodage binaire ne prend pas en charge les éléments vides. Lors de l’utilisation de WsCopyNode avec un enregistreur utilisant l’encodage binaire de cette propriété n’a aucun effet d’une façon ou d’une autre. Tous les éléments vides sont converti en éléments sans contenu. Par défaut, cette propriété est FALSE. Pour une chaîne XML d’entrée telle que :
Si cette propriété est FALSE, WsCopyNode génère le xml suivant :
Si cette propriété est TRUE, WsCopyNode génère le xml suivant :
|
WS_XML_WRITER_PROPERTY_EMIT_UNCOMPRESSED_EMPTY_ELEMENTS Valeur : 18 Windows 8 ou version ultérieure : BOOL qui contrôle la façon dont les éléments vides sont émis. Si la valeur est FALSE, un élément créé uniquement par des appels à WsWriteStartElement et WsWriteEndElement sera émis comme suit :
Si la valeur est TRUE, cet élément est émis comme suit : xml La valeur par défaut est FALSE |
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 7 [applications de bureau | Applications UWP] |
serveur minimum pris en charge | Windows Server 2008 R2 [applications de bureau | Applications UWP] |
d’en-tête | webservices.h |