WS_XML_WRITER_PROPERTY_ID 열거형(webservices.h)

각 xml 기록기 속성은 ID로 식별되며 연결된 값을 가집니다. 이 열거형은 WsCreateWriter, WsSetOutput, WsSetOutputToBufferWsWriteXmlBufferToBytes매개 변수로 사용되는 WS_XML_WRITER_PROPERTY 구조 내에서 사용됩니다. 또한 WsGetWriterProperty매개 변수로 직접 사용됩니다.

통사론

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;

상수

 
WS_XML_WRITER_PROPERTY_MAX_DEPTH
값: 0
기록기에서 허용할 문서의 최대 깊이를 지정하는 ULONG.

깊이는 임의의 지점에서 중첩된 시작 요소 수로 측정됩니다.

깊이가 0이면 시작 요소가 기록되지 않습니다.

이 속성의 기본값은 32입니다.
WS_XML_WRITER_PROPERTY_ALLOW_FRAGMENT
값: 1
작성기가 문서의 최상위 수준에서 여러 요소와 공백이 아닌 공간을 허용할지 여부를 지정하는 WS_XML_WRITER_MTOM_ENCODING 구조체입니다. 이 속성
WS_XML_WRITER_MTOM_ENCODING사용하여 TRUE 설정되지 않을 수 있습니다.

이 속성은 기본적으로 FALSE
.
WS_XML_WRITER_PROPERTY_MAX_ATTRIBUTES
값: 2
지정하는 ULONG
작성기가 요소에 대해 허용할 최대 특성 수입니다.

이 속성의 기본값은 128입니다.
WS_XML_WRITER_PROPERTY_WRITE_DECLARATION
값: 3
작성기가 문서의 시작 부분에 적절한 xml 선언을 내보내야 하는지를 지정하는 BOOL.

이 속성은 기본적으로 FALSE.
WS_XML_WRITER_PROPERTY_INDENT
값: 4
xml의 서식을 지정하는 데 사용해야 하는 인덴팅 공간 수를 지정하는 ULONG. 들여쓰기가 0이면 서식이 지정되지 않습니다.

이 속성의 기본값은 0입니다.
WS_XML_WRITER_PROPERTY_BUFFER_TRIM_SIZE
값: 5
다음 중 하나를 지정하는 ULONG.

기록기가 WS_XML_WRITER_BUFFER_OUTPUT사용하는 경우 이 속성은 최대 바이트 수입니다.
작성기는 출력 버퍼링을 위해 WsSetOutput 대한 호출에서 유지됩니다.

작성기가 WS_XML_WRITER_STREAM_OUTPUT사용하는 경우 이 속성은 최대 바이트 수입니다.
작성기는 WsSetOutput 호출 및 WsFlushWriter 동안 유지됩니다.
는 출력을 버퍼링하는 용도로 사용됩니다.

이 속성은 WsSetOutputToBuffer지정한 경우에는 적용되지 않습니다.

이 속성의 기본값은 4096입니다.
WS_XML_WRITER_PROPERTY_CHARSET
값: 6
WS_CHARSET
는 작성기가 문서를 인코딩하는 데 사용하는 문자 집합을 반환합니다. 이 값은 다음에서만 사용할 수 있습니다.
텍스트 문서입니다.
WS_XML_WRITER_PROPERTY_BUFFERS
값: 7
WS_BUFFERS 구조체
생성된 xml 바이트를 포함하는 버퍼 집합을 반환하는 입니다.

작성기가 WS_XML_WRITER_BUFFER_OUTPUT사용하는 경우 생성된 모든 바이트가 반환되고
버퍼는 WsSetOutput 또는 WsFreeWriter 호출될 때까지 유효합니다.

작성기가 WS_XML_WRITER_MTOM_ENCODING사용하는 경우 열려 있는 요소가 없어야 합니다.
지원 MIME 부분이 생성되고 반환된 버퍼에 포함됩니다. 이 경우
이 발생하면 xml 문서에 더 많이 쓰려는 모든 API는 WS_E_INVALID_OPERATION반환합니다.
(Windows Web Services 반환 값참조하세요.)

이 속성은 WS_XML_WRITER_STREAM_OUTPUT사용할 수 없습니다.

이 속성은 WS_XML_BUFFER설정된 기록기에서 사용할 수 없습니다.

이는 WS_XML_WRITER_PROPERTY_BYTES 사용하는 것보다 덜 편리하지만 더 효율적일 수 있습니다.
작성기는 문서를 구성하는 버퍼를 단일 버퍼에 연결할 필요가 없습니다.
WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE
값: 8
ULONG
는 작성기가 버퍼링할 최대 바이트 수를 지정합니다.

작성기가 WS_XML_WRITER_BUFFER_OUTPUT사용하는 경우 최대 수입니다.
전체 문서에 대해 버퍼링되는 바이트입니다. WsFlushWriter
호출은 영향을 주지 않습니다.

작성기가 WS_XML_WRITER_STREAM_OUTPUT사용하는 경우 최대 크기입니다.
WsFlushWriter 호출 간에 버퍼링되는 데이터입니다.

이 속성은 WsSetOutputToBuffer지정한 경우에는 적용되지 않습니다.
WS_XML_WRITER_PROPERTY_BYTES
값: 9
WS_BUFFERS 구조체
생성된 xml 바이트를 포함하는 단일 버퍼를 반환하는 입니다.

작성기가 WS_XML_WRITER_BUFFER_OUTPUT사용하는 경우 생성된 모든 바이트가 반환되고
버퍼는 WsSetOutput 또는 WsFreeWriter 호출될 때까지 유효합니다.

작성기가 WS_XML_WRITER_MTOM_ENCODING사용하는 경우 열려 있는 요소가 없어야 합니다.
지원 MIME 부분이 생성되고 반환된 버퍼에 포함됩니다. 이 경우
이 발생하면 xml 문서에 더 많이 쓰려는 모든 API는 WS_E_INVALID_OPERATION반환합니다.

이 속성은 WS_XML_WRITER_STREAM_OUTPUT사용할 수 없습니다.

이 속성은 WS_XML_BUFFER설정된 기록기에서 사용할 수 없습니다.

이는 WS_XML_WRITER_PROPERTY_BUFFERS 사용하는 것보다 더 편리하지만 효율성이 낮을 수 있습니다.
작성기는 문서를 구성하는 버퍼를 단일 버퍼로 연결해야 할 수 있습니다.
WS_XML_WRITER_PROPERTY_IN_ATTRIBUTE
값: 10
BOOL
WsWriteStartAttribute 호출되었고 작성기가 임을 나타냅니다.
특성 콘텐츠에 배치됩니다.
WS_XML_WRITER_PROPERTY_MAX_MIME_PARTS_BUFFER_SIZE
값: 11
WS_XML_WRITER_MTOM_ENCODING함께 사용되는 ULONG. 최대 데이터 양을 지정합니다.
는 MIME 파트를 작성하기 위해 버퍼링됩니다. WsWriteBytes
WsPullBytes 데이터를 별도의 MIME 부분으로 내보내기 위해 데이터를 버퍼링해야 합니다.
는 문서를 따르며 버퍼링되는 양을 제한하는 데 사용할 수 있습니다.

이 속성의 기본값은 65536입니다.
WS_XML_WRITER_PROPERTY_INITIAL_BUFFER
값: 12
작성기가 xml 문서를 인코딩하는 데 사용할 수 있는 버퍼를 포함하는 WS_BYTES 구조체입니다. 이것은
생성된 xml 데이터의 크기에 대한 상한이 알려지거나 호출자가 소유하려고 할 때 유용합니다.
바이트가 배치되는 버퍼입니다.

지정된 크기가 WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE보다 크거나 같으면
작성기는 내부 버퍼에서 할당되지 않습니다.

이 버퍼는 속성 WS_XML_WRITER_PROPERTY_BUFFERS 또는 WS_XML_WRITER_PROPERTY_BYTES반환된 버퍼 중 하나로 나타날 수 있습니다.

호출자는 지정된 버퍼가 기록기의 수명 동안 유효한지 확인해야 합니다.
WS_XML_WRITER_PROPERTY_ALLOW_INVALID_CHARACTER_REFERENCES
값: 13
WS_XML_WRITER_TEXT_ENCODING함께 사용되는 BOOL. 이를 TRUE 설정하면 문자 참조가 허용됩니다.
XML 1.0에서 유효하지 않은 것으로 간주되는 문자를 허용합니다.

이 속성을 TRUE 설정하면 상호 운용성에 영향을 줄 수 있습니다.

이 속성은 기본적으로 FALSE.
WS_XML_WRITER_PROPERTY_MAX_NAMESPACES
값: 14
범위에서 언제든지 나타날 수 있는 최대 xmlns 고유 선언 수를 지정하는 ULONG
문서를 작성하는 동안

이 속성의 기본값은 32입니다.
WS_XML_WRITER_PROPERTY_BYTES_WRITTEN
값: 15
다음 중 하나를 지정하는 ULONG.

작성기가 WS_XML_WRITER_BUFFER_OUTPUT사용하는 경우 이 속성
는 작성기에 기록된 바이트 수를 반환합니다.

작성기가 WS_XML_WRITER_STREAM_OUTPUT사용하는 경우 이 속성
는 마지막 호출 이후 작성기에 기록된 바이트 수를 반환합니다.
WsFlushWriter.

작성기가 현재 요소 시작 태그를 작성하는 경우 시작 태그의 크기는 포함되지 않습니다.
반환된 값입니다.

이 속성은 WsSetOutputToBuffer사용하여 설정된 기록기에서 사용할 수 없습니다.
WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE
값: 16
열려 있는 요소를 닫는 데 필요한 최대 바이트 수를 반환하는 ULONG.

애플리케이션은 WS_XML_WRITER_PROPERTY_BYTES_WRITTEN
추가 양을 근사값으로 WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE
데이터를 문서에 쓸 수 있습니다. 이렇게 할 때 애플리케이션을 고려해야 합니다.
작성 중인 문서의 인코딩입니다.

이 속성은 WsSetOutputToBuffer사용하여 설정된 기록기에서 사용할 수 없습니다.
WS_XML_WRITER_PROPERTY_COMPRESS_EMPTY_ELEMENTS
값: 17
WsCopyNode 콘텐츠 없이 요소를 복사하는 방법을 제어하는 BOOL.

이 속성이 FALSE설정되면 WsCopyNode 각 요소가 표시되는지 여부를 유지합니다.
시작/끝 태그 쌍 또는 빈 요소로 이 속성이 TRUE
설정되면 WsCopyNode
콘텐츠가 없는 요소를 빈 요소로 변환합니다.

이진 인코딩은 빈 요소를 지원하지 않습니다. WsCopyNode
사용하는 경우
이 속성을 인코딩하는 이진 인코딩을 사용하는 기록기는 어느 쪽이든 영향을 주지 않습니다. 모든 빈 요소는 다음과 같습니다.
는 콘텐츠가 없는 요소로 변환됩니다.

기본적으로 이 속성은 FALSE
.

다음과 같은 입력 XML 문자열의 경우:









이 속성이 FALSE
경우 WsCopyNode 다음 xml을 생성합니다.









이 속성이 TRUE
경우 WsCopyNode 다음 xml을 생성합니다.







WS_XML_WRITER_PROPERTY_EMIT_UNCOMPRESSED_EMPTY_ELEMENTS
값: 18
Windows 8 이상: 빈 요소를 내보내는 방법을 제어하는 BOOL.

FALSE설정하면 WsWriteStartElementWsWriteEndElement 호출하여 만든 요소는 다음과 같이 내보내집니다.





TRUE
설정하면 해당 요소가 다음과 같이 내보내됩니다.

xml



기본값은 FALSE

요구 사항

요구
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱 | UWP 앱]
헤더 webservices.h