XML 파이프라인

XML pipeline

소프트웨어에서 XML 파이프라인XML(Extensible Markup Language) 프로세스, 특히 XML 변환XML 검증이 연결될 때 형성된다.

예를 들어, T와1 T의2 두 변환이 주어지면 T에1 의해 입력 XML 문서가 변환된 다음 T의1 출력이2 T에 입력 문서로 공급되도록 두 변환을 연결할 수 있다.위에서 설명한 것과 같은 간단한 파이프라인을 선형이라고 하며, 단일 입력 문서는 항상 동일한 변환 순서를 거쳐 단일 출력 문서를 만든다.

선형 연산

선형 연산은 최소한 두 부분으로 나눌 수 있다.

마이크로 오퍼레이션

내부 문서 수준에서 작동함

  • 이름 변경 - 내용을 수정하지 않고 요소 또는 특성의 이름 변경
  • 바꾸기 - 요소 또는 속성을 대체
  • 삽입 - 지정된 지점의 출력 스트림에 새 데이터 요소 추가
  • 삭제 - 요소 또는 속성 제거(입력 트리 정리라고도 함)
  • 래핑 - 추가 요소로 요소 래핑
  • 순서 변경 - 요소의 순서 변경

문서 작업

그들은 입력 문서를 전체적으로 가져간다.

  • ID 변환 - 출력에 입력된 데이터를 그대로 복사
  • 비교 - 두 개의 문서가 필요하며 비교
  • 변환 - 지정된 XSLT 파일을 사용하여 입력 파일에서 변환을 실행하십시오.버전 1.0 또는 2.0을 지정해야 한다.
  • 분할 - 단일 XML 문서를 가져와서 고유한 문서로 분할

시퀀스 연산

그것들은 주로 XProc에 도입되며 문서 전체의 순서를 처리하는 것을 돕는다.

  • 카운트 - 일련의 문서를 사용하고 카운트
  • ID 변환 - 출력물에 대한 문서의 입력 시퀀스를 그대로 복사
  • 분할 분할 - 일련의 문서를 입력으로 가져와서 일치 규칙에 따라 다른 출력으로 라우팅
  • 바꿈 - 일련의 문서를 입력으로 가져와서 하나 이상의 문서로 포장

비선형

파이프라인의 비선형 운영에는 다음이 포함될 수 있다.

  • 조건 — 조건이 충족되는 경우 주어진 변환이 실행되는 반면 다른 변환은 그렇지 않은 경우
  • 루프 - 문서에서 선택한 노드 세트의 각 노드에서 변환이 실행되거나 조건이 false로 평가될 때까지 변환이 실행되는 경우
  • (Te) - 문서가 동시에 발생할 수 있는 여러 변환에 공급되는 위치
  • 집계 - 여러 문서가 단일 문서로 집계되는 경우
  • 예외 처리 - 처리 실패 시 대체 파이프라인이 처리될 수 있는 경우

일부 표준은 변환을 매크로(전체 파일에 영향을 미치는 변경) 또는 마이크로(요소 또는 속성만 영향을 미치는)로 분류하기도 한다.

XML 파이프라인 언어

XML 파이프라인 언어는 파이프라인을 정의하는 데 사용된다.XML 파이프라인 언어로 작성된 프로그램은 XML 파이프라인 엔진으로 알려진 소프트웨어에 의해 구현되며, 이 프로그램은 프로세스를 생성하고 서로 연결하며 최종적으로 파이프라인을 실행한다.기존 XML 파이프라인 언어에는 다음이 포함된다.

표준

제품별

  • W3C XML 파이프라인 정의 언어는 W3C 참고에 지정되어 있다.[2]
  • W3C XML Pipeline Language(XPL) 버전 1.0(Draft)은 W3C Submission 및 Orbeon Presentation Server OPS(현재의 Orbeon Forms)의 구성요소(현재의 Orbeon Forms)에 지정되어 있다.이 규격은 이전 버전의 언어를 구현한다.XPL은 조건, 루프, 티, 집계 및 하위 파이프라인으로 복잡한 파이프라인을 선언할 수 있다.XProc는 대략 XPL의 상위 집합이다.[5]
  • 코코넛 시트맵은 다른 기능 중에서도 XML 파이프라인 선언을 허용한다.코코넛 시트맵은 XML 파이프라인 개념을 가장 먼저 구현한 것 중 하나이다.
  • smallx XML 파이프라인은 smallx 프로젝트에서 사용된다.
  • 서빙XML은 파이프라인에서 플랫-XML, XML-플랫, 플랫-플랫 및 XML-XML 변환을 표현하기 위한 어휘를 정의한다.
  • XML 파이프라인을 정의하기 위해 PolarLake의 런타임에 사용되는 PolarLake 회로 마크업 언어.회로는 XML 스트림의 조각(대개 색스 또는 DOM 이벤트)이 통과하는 경로 모음입니다.구성요소는 짧은 대기 시간 프로세스에서 스트림(및/또는 외부 세계)과 상호작용하기 위한 경로에 배치된다.
  • xmlsh는 xml 및 텍스트 파이프라인을 기본적으로 지원하는 셸 유닉스 기반의 스크립트 언어 [1]
  • 스타일러스 스튜디오 XML 파이프라인(Stylus Studio XML Pipeline)은 다음 작업을 정의하는 시각적 문법이다.입력, 출력, XQuery, XSLT, 검증, XSL-FO를 PDF로, XML로 변환, XML에서 변환, 선택, 경고, 중지.

파이프 세밀도

서로 다른 XML 파이프라인 구현은 서로 다른 세분화된 흐름을 지원한다.

  • 문서:전체 문서가 파이프를 통해 원자 단위로 흐른다.문서는 한 번에 한 위치만 있을 수 있다.대개는 한 번에 여러 개의 문서가 파이프에 들어갈 수 있다.
  • 이벤트: 요소/텍스트 노드 이벤트는 다른 경로를 통해 흐를 수 있다.문서는 동시에 많은 구성요소를 통해 흐를 수 있다.

표준화

2010년 5월까지 XML 파이프라인 언어에 널리 사용되는 표준은 없었다.그러나 W3C XProc 표준이 2010년 5월 현재 W3C 권장사항으로 도입됨에 따라 광범위한 채택을 기대할 수 있다.[6]

역사

참고 항목

참조

  1. ^ "XProc: An XML Pipeline Language". W3.org. Retrieved 2013-06-14.
  2. ^ "W3C XML Pipeline Definition Language".
  3. ^ "XML Pipeline Language (XPL) Version 1.0 (Draft)". W3.org. Retrieved 2013-06-14.
  4. ^ "XML Pipeline Definition Language Version 1.0". W3.org. 2002-02-28. Retrieved 2013-06-14.
  5. ^ "XML pipelines: XPL and XProc". Orbeon. 22 May 2007. Retrieved 14 March 2012.
  6. ^ "XProc: An XML Pipeline Language". W3.org. Retrieved 2013-06-14.
  7. ^ "Early Unix history and evolution". Cm.bell-labs.com. Archived from the original on April 8, 2015. Retrieved 2013-06-14.
  8. ^ "FAQ". Xpipe.sourceforge.net. 2001-12-09. Retrieved 2013-06-14.

외부 링크

표준

추천 사항

작업 초안

상품별