[json] JSON과 동등한 XSLT [닫기]

JSON과 동등한 XSLT 가 있습니까? XSLT가 XML을 처리하는 것처럼 JSON에서 변환을 수행 할 수있는 기능이 있습니다.



답변

재미있는 생각. Google에서 일부 검색을 수행하면 다음과 같은 몇 가지 관심있는 페이지가 생성되었습니다.

도움이 되었기를 바랍니다.


답변

JSON 용 XSLT 동등 항목-후보 목록 (도구 및 사양)

도구

  1. XSLT

    fn : json-to-xml 의 목표로 JSONXSLT를 사용할 수 있습니다 . .

    이 섹션에서는 XSLT를 사용하여 JSON 데이터를 처리 할 수있는 기능에 대해 설명합니다.

  2. jq

    jq는 JSON 데이터에 대한 sed와 같습니다.이를 사용하여 sed, awk, grep 및 friends가 텍스트로 재생할 수있는 것과 동일한 방식으로 구조화 된 데이터를 슬라이스 및 필터링하고 매핑하고 변환 할 수 있습니다. 다른 OS에 대한 설치 패키지가 있습니다.

  3. jj

    JJ는 JSON 문서에서 값을 검색하거나 업데이트하는 빠르고 간단한 방법을 제공하는 명령 줄 유틸리티입니다. GJSON과 SJSON이 제공합니다.

  4. fx

    명령 줄 JSON 처리 도구

    • 새로운 구문을 배울 필요가 없습니다
    • 일반 자바 스크립트
    • 서식 및 강조
    • 독립 바이너리
  5. jl

    jl ( “JSON lambda”)은 JSON 쿼리 및 조작을위한 작은 기능 언어입니다.

  6. 심한 상하의 움직임

    변환의 “사양”이 JSON 문서 인 Java로 작성된 JSON에서 JSON으로의 변환 라이브러리

  7. 그론

    JSON을 그렙 가능하게 만드십시오! gron은 JSON을 개별 할당으로 변환하여 원하는 것을 쉽게 잡을 수 있고 절대 ‘경로’를 볼 수 있습니다. 대량의 JSON을 반환하지만 끔찍한 문서를 가진 API를 쉽게 탐색 할 수 있습니다.

  8. json

    json은 JSON 작업을위한 빠른 CLI 도구입니다. 외부 파일이없는 단일 파일 node.js 스크립트입니다 (node.js 자체 제외).

  9. json-e

    JSON-e는 JSON 객체에 컨텍스트를 포함하기위한 데이터 구조 매개 변수화 시스템입니다. 중심 아이디어는 데이터 구조를 “템플릿”으로 취급하고 다른 데이터 구조를 컨텍스트로 사용하여 변환하여 출력 데이터 구조를 생성하는 것입니다.

  10. JSLT

    JSLT는 JSON을위한 완전한 쿼리 및 변환 언어입니다. 언어 디자인은 jq, XPath 및 XQuery에서 영감을 얻었습니다.

  11. JSONata

    JSONata는 JSON 데이터를위한 간단한 쿼리 및 변환 언어입니다. XPath 3.1의 ‘위치 경로’시맨틱에서 영감을 받아 정교한 쿼리를 작고 직관적 인 표기법으로 표현할 수 있습니다.

  12. json-transforms Last Commit 2017 년 12 월 1 일

    JSON 데이터 변환에 대한 재귀 패턴 일치 방식을 제공합니다. 변환은 JSON 객체의 구조와 일치하는 규칙 세트로 정의됩니다. 일치하는 경우 규칙은 변환 된 데이터를 내 보내며 선택적으로 하위 개체를 변환하기 위해 반복됩니다.

  13. jsawk Last commit 2015 년 3 월 4 일

    Jsawk는 awk와 비슷하지만 JSON입니다. stdin에서 읽은 JSON 객체 배열로 작업하고 JavaScript를 사용하여 필터링하여 stdout에 인쇄되는 결과 배열을 생성합니다.

  14. 예이 Last Commit 2017 년 3 월 13 일

    테스트는 문서로 사용할 수 있습니다 https://github.com/pasaran/yate/tree/master/tests

  15. jsonpath-object-transform 마지막 커밋 2017 년 1 월 18 일

    JSONPath를 사용하여 객체 리터럴에서 데이터를 가져 와서 템플릿을 기반으로 새 객체를 생성합니다.

  16. 스테이플 마지막 커밋 2013 년 9 월 16 일

    스테이플 링은 JSON 객체의 XSLT 형식을 활성화하는 JavaScript 라이브러리입니다. Stapling은 JavaScript 템플릿 엔진 및 텍스트 / html 템플릿을 사용하는 대신 Ajax와 함께 비동기식으로로드 된 다음 클라이언트 측에 캐시 된 XSLT 템플릿을 사용하여 JSON 데이터 소스를 구문 분석 할 수있는 기회를 제공합니다.

명세서:

  • JsonPointer

    JSON 포인터는 JSON (JavaScript Object Notation) 문서에서 특정 값을 식별하기위한 문자열 구문을 정의합니다.

  • JsonPath

    JSONPath 표현식은 XPath 표현식이 XML 문서와 함께 사용되는 것과 동일한 방식으로 항상 JSON 구조를 참조합니다.

  • JSPath

    JSON 용 JSPath는 XPath for XML과 같습니다. “

  • JSONiq

    JSONiq의 주요 영감 원천은 XQuery이며, 이는 지금까지 반 구조화 된 데이터를위한 성공적이고 생산적인 쿼리 언어로 입증되었습니다


답변

JOLT 시도하십시오 . Java로 작성된 JSON에서 JSON으로의 변환 라이브러리입니다.

“JSON-> XML-> XSLT-> XML-> JSON”게임을하지 않기 위해 특별히 만들어졌으며, 복잡한 변환을위한 템플릿을 사용할 수는 없습니다.


답변

jq-가볍고 유연한 명령 줄 JSON 프로세서

XSLT와 같은 템플릿 기반은 아니지만 더 간결합니다. 예를 들어, 추출 nameaddress필드를 배열로 :[.name, .address]

튜토리얼 은 Twitter의 JSON API를 변환하는 예제를 안내합니다. 매뉴얼 에는 많은 예제가 있습니다.


답변

XSLT는 http://www.w3.org/TR/xslt-30/#json에 표시된대로 JSON을 지원합니다 .

XML은 구분 기호 토큰에 꺾쇠 괄호를 사용하고 JSON은 괄호, 대괄호 등을 사용합니다. XML의 토큰 인식 비교가 적다는 것은 선언적 변환에 최적화 된 반면 스위치 문과 같은 더 많은 비교는 속도 때문에 스크립팅 언어의 명령형 코드가 유용한 추론 적 분기 예측을 가정합니다. 결과적으로 서로 다른 반 구조적 데이터 조합에 대해 반응 형 페이지의 일부로 XSLT 및 자바 스크립트 엔진의 성능을 벤치마킹 할 수 있습니다. 무시할 수있는 데이터 페이로드의 경우 XML 직렬화없이 JSON에서도 변환이 제대로 작동 할 수 있습니다. W3의 결정은 더 나은 분석을 기반으로해야합니다.


답변

최근에 JSON 스타일 지정을 위해 좋아하는 도구 인 https://github.com/twigkit/tempo 를 찾았습니다 . XPATH 쿼리가 없어도 XSLT보다 훨씬 사용하기 쉬운 도구입니다.


답변

jsonpath-object-transform을 살펴보십시오.