혼합 예제로 모델 비교
기본 예제는 객체로 변환됩니다. 혼합 예제에서는 오류를 확인한 뒤 순서 보존 모드로 바꾸세요. content의 노드 순서를 보고 수신 프로그램이 이 구조를 읽을 수 있는지 확인합니다.
JSON 도구
반복 요소 예제로 시작하거나 혼합 예제를 불러와 두 출력 모델을 비교하세요.
현재 브라우저에서 처리하며 입력을 업로드하거나 저장하지 않습니다.
속성과 한정 이름을 항상 유지하며 값은 문자열로 남습니다.
결과가 오래되어 내보낼 수 없습니다.
XML JSON 변환은 SOAP 응답이나 기존 설정을 객체와 배열을 사용하는 코드에 연결할 때 유용합니다. 하지만 태그 이름만으로 숫자와 식별자를 구분하거나, 항목 하나를 배열로 만들지 결정할 수는 없습니다.
이 XML JSON 변환기는 구조 선택을 명시적으로 제공합니다. 간단한 레코드에는 객체 모델을, 태그 사이에 문장이 있는 문서에는 순서 보존 모델을 사용하세요. 변환만으로 API 계약이 검증되지는 않습니다.
XML JSON 변환은 기본적으로 인접한 같은 이름의 요소를 배열로 묶습니다. 항상 배열 옵션을 켜면 자식이 하나일 때도 목록 형태를 유지합니다. 최상위 루트 이름은 별도의 배열로 감싸지 않습니다.
간결한 객체는 혼합 텍스트나 a,b,a 순서를 표현할 수 없어 변환을 중단합니다. 순서 보존 모드에서는 텍스트와 요소가 하나의 content 배열에 원래 순서대로 들어갑니다.
기본 예제는 객체로 변환됩니다. 혼합 예제에서는 오류를 확인한 뒤 순서 보존 모드로 바꾸세요. content의 노드 순서를 보고 수신 프로그램이 이 구조를 읽을 수 있는지 확인합니다.
말단 텍스트는 trim하지 않습니다. 기본값은 요소 사이의 서식 공백만 제외하며 xml:space="preserve"는 상속되어 우선 적용됩니다. 모든 공백을 남기면 순서 보존 모드가 필요할 수 있습니다.
자동 변환은 350ms 뒤 실행됩니다. 끄면 변환 버튼이나 Ctrl/Cmd+Enter로 실행할 수 있습니다. 입력 또는 옵션을 바꾸는 즉시 이전 결과의 복사와 다운로드가 비활성화됩니다.
객체 모델의 @id는 속성이고 #text는 속성이 있는 말단 요소의 본문입니다. p:item과 q:item은 다른 키이며 xmlns 선언도 보존합니다. 순서 보존 요소에는 namespaceURI가 추가됩니다.
순서 보존 모델은 요소, 텍스트, CDATA, 주석, 처리 명령을 content 배열에 저장합니다. XML 선언은 별도 메타데이터입니다. 객체 모델은 CDATA 값을 텍스트로 합치지만 주석과 처리 명령은 거부합니다.
001, 12.00, true와 큰 정수도 문자열입니다. 빈 요소는 객체 모드에서 빈 문자열이 됩니다. 스키마가 없으므로 숫자, 불리언, null을 임의로 만들지 않아 식별자의 앞자리 0을 지킵니다.
속성은 항상 보존하며 객체 모델에서는 이름 앞에 @를 붙입니다. 자식 요소 id와 속성 @id는 서로 다른 키입니다. 순서 보존 모델에서는 attributes에 원래 한정 이름과 값을 담습니다.
XML JSON 변환은 인접한 같은 이름의 자식을 배열로 묶습니다. 항상 배열 옵션은 자식이 하나인 경우에도 적용됩니다. a,b,a처럼 교차하는 반복은 객체 모드에서 중단되고 순서 보존 모델이 필요합니다.
가능합니다. 객체 모드는 CDATA 안의 값을 일반 텍스트와 이어 붙입니다. CDATA 경계 자체가 필요하면 순서 보존 모델에서 type이 cdata인 노드를 확인하세요.
JSON 들여쓰기에서 압축을 선택하면 한 줄로 출력됩니다. 내용 모델과는 별도 설정이므로 순서 보존 결과도 압축할 수 있습니다. 문자열 속 줄바꿈은 올바른 JSON 이스케이프로 남습니다.
응답 구조를 검토하는 데 쓸 수 있지만 SOAP 호출이나 REST 요청을 실행하지는 않습니다. 네임스페이스와 속성을 확인하고, 수신 API에 필요한 자료형이나 필드 변환은 별도로 구현해야 합니다.
예상하지 못한 결과가 나왔나요?