컨텐츠 어셈블리 메커니즘
Content Assembly Mechanism컨텐츠 조립 메커니즘(CAM)[1]은 XML 구조로 들어오고 나가는 기계 처리 가능한 정보 컨텐츠의 흐름의 상호운용성 및 결정론적 기술인 정보 교환을 만들고 관리하기 위한 XML 기반의 표준이다.CAM은 OASIS 콘텐츠 어셈블리 기술위원회의 제품이다.
CAM 접근방식은 NIEM(National Information Exchange Model) 접근방식과 일치하며 IEPD(Information Exchange Package Documentation) 제작을 지원한다.
Camprocessor 도구는 XSD 스키마 구조 정의에서 실제적인 XML 예를 만들 수 있다.이러한 XML 샘플은 상호운용성 테스트 및 실제 비즈니스 정보 교환에 사용할 템플릿 결정에 사용하기 위한 테스트 사례를 시뮬레이션한다.
CAM이 해결하고 있는 가장 중요한 한 가지 문제는 비즈니스 정보 교환을 위한 보다 간단하고 신뢰할 수 있는 상호운용성이다.인터넷을 통한 오늘날의 전자 상거래는 일어나고 있는 자동화나 통합의 양에 있어서 극히 제한적이다.정확하고 간결하고 검증 가능한 정보 교환 정의를 공유하는 능력은 보다 쉽고 저렴한 글로벌 상거래를 가능하게 하는 중요한 다음 단계다.
CAM은 오픈 소스 솔루션에 의해 생성되는 중요 질량을 통한 정보 교환의 효과적인 관리의 기반이 되는 확정 표준으로 떠오르고 있다.[citation needed]
다양한 OASIS 표준 정의가 현재 CAM 오픈 소스 툴셋과 접근방식을 사용하여 문서화, 검증 및 강화되고 있다.현재까지 EDXL, CIQ 및 EML. CAM 사용은 또한 PESC, MISSO, STAR Automotive, CAQH와 같은 외부 산업 그룹으로 확장되고 있으며, 그 다음 STATML, LELS, NIEM을 포함한 정부용도로도 확장되고 있다.
각 그룹은 신속하게 검증하고 채택할 수 있는 방식으로 전체 표준의 지역화를 촉진하는 데 있어서 동일한 어려움에 직면한다.CAM을 사용하여 기존 XSD 스키마 작업을 수행하고 지역화 템플릿, XML 테스트 사례, 웹 서비스와 함께 사용할 수 있는 새로운 하위 집합 스키마를 신속하게 개발하고 재사용 가능한 요청 목록 및 콘텐츠 힌트를 만들 수 있다.또한 CAM 템플릿은 XSD 스키마 정의에서 직접 도메인 사전을 빌드한 다음 개별 템플릿에 대한 상호 참조 스프레드시트를 마스터 사전 정의에 생성하기 위해 사용된다.
이 모든 기능은 XML을 기반으로 한 비즈니스 정보 교환을 이용하여 구현 및 상호운용성의 품질과 속도를 향상시키는 것을 목적으로 한다.
CAM의 역사
2003년 1월 처음 개최된 OASIS Content Assembly Technical Committee(CAM TC)는 "실행자가 비즈니스 프로세스 컨텍스트와 원시 산업 표준화에 필요한 지역화된 구현 비즈니스 규칙을 통합할 수 있는 XML의 일반화된 메커니즘의 규격을 제작하기 위해" 허가되었다.d 스키마 인스턴스(instance)를 실제 비즈니스 정보 콘텐츠, 컨텍스트 및 역할과 결합하여 유효하고 일관된 XML 문서 인스턴스를 생성하십시오. [1]
OASIS는 비즈니스 프로세스 메커니즘, 산업 표준 스키마, 레지스트리 시스템, 스키마 메커니즘에 대한 사양을 개발하고 있다.CAM 규격은 이 네 가지 구성 요소를 일관되고 표준적인 방법으로 조합할 수 있도록 하며, 이러한 OASIS 규격에 근거한 조립 이행 지침을 발행할 것이다.이것은 산업집단의 작업을 용이하게 하고 이러한 모든 사양과 일관되게 작동하는 소프트웨어 도구의 개발을 가능하게 할 것이다.
ebXML 레지스트리 작업의 오프슈트로서 ebXML 이니셔티브의 후기에 CAM을 선행하는 원래의 작업이 시작되었다.이 작업 그룹은 "BRIM" – Business Registry Interface Model이라고 불렸으며, CEFACT의 BIM 참조에 대한 Registry 컨텐츠 어셈블리 서비스와 컨텐츠 구문 스토리지 사양 링크에 초점을 맞췄다.또한 비즈니스 프로세스를 위한 핵심 구성 요소 메시지 어셈블리(CCMA)가 가능하도록 BIM 작업을 배치하였다.이 작업은 필요한 XML 개발을 더 쉽게 하기 위해 2002년 말에 OASIS로 옮겨졌다.
Java와 XSLT를 이용한 오픈 소스 솔루션을 포함한 CAM V1.1 구현 및 구축이 본 문서(1~2009년 1월)를 기점으로 진행 중이다.
CAM 버전
- CAM 1.1은 2007년 6월에 OASIS 표준으로 채택되었다.
- 현재 진행 중인 작업은 2009년 V1.5를 새로 출시하기 위해 명확화, 수정 및 제한적 확장에 초점을 맞춘 수정 및 확장에 초점을 맞추고 있다.CAM의 핵심 역할은 XML 콘텐츠를 정의, 구성 및 검증하는 것과 동일하다.
스크립팅을 위한 CAM 템플릿 구문은 명확하고, 사람이 읽을 수 있고 선언적이 되도록 설계되었다.
CAM 빌딩 블록
CAM은 다양한 기존 표준을 기반으로 구축된다.
- 확장 가능한 마크업 언어(XML)
- CAM 템플릿은 표준화된 XML로 표시됨
- XML 스키마
- CAM은 XSD 스키마 전용 XML 스키마를 사용하는 것보다 비즈니스 정보 교환 템플릿을 조작하고 정의하는 것을 훨씬 쉽게 해주는 XSD 스키마에 추상화 레이어를 제공한다.
- XPath V2.0
- CAM은 CAM 검증자 처리의 핵심에 있는 규칙과 경로 대상 식을 정의하기 위해 XPath를 광범위하게 사용한다.
- XSLT 스크립팅
- 기존의 오픈 소스 솔루션은 XSLT를 광범위하게 활용한다.
- 전자 비즈니스 XML(ebXML)
- ebXML(ISO15000)용으로 개발된 핵심 구성요소 및 레지스트리 개념은 컨텐츠 어셈블리에 대한 CAM 접근방식에 중요한 개념적 기초를 제공한다.
CAM 템플릿
CAM 템플릿은 4개의 코어 섹션으로 구성된다.헤더 섹션, 구조 섹션 및 비즈니스 규칙 섹션과 확장 섹션.
이를 XML 구문으로 요약하면 다음과 같다.
<캠> CAM레벨="1" 버전="1.1"> <헤더/> < AssemblyStructure/> <BusinessUseContext/> <연장/> <!--선택사항, 반복가능 --> </CAM>
헤더 섹션의 목적은 CAM 프로세스가 참조할 특성 및 파라미터를 선언하는 것이다.조립구조 섹션의 목적은 특정 비즈니스 정보 교환에 필요한 컨텐츠 구조나 구조를 포착하는 것이다.
어셈블리 구조가 정의되면 다음 단계는 해당 내용에 적용되는 컨텍스트 규칙을 정의하는 것이다.사용되는 기법은 XPath 표적 로케이터 참조를 사용하여 구조물의 일부를 가리키고 그 목적으로 제공된 구조 술어 중 하나를 사용하여 주장을 적용하는 것이다.
이러한 비즈니스 컨텍스트 규칙에는 일반적으로 적용되는 기본 규칙과 특정 규칙 블록이 true로 평가되는 경우에만 적용되는 조건부 규칙의 두 섹션이 있다.규칙은 CAM이 제공하는 추가적인 구조 술어 집합과 함께 XPath 2.0 구문을 사용하여 표현되며, 구조와 그 정보 콘텐츠 모델에 대한 제어를 단순화한다.
CAM function predicates include: excludeAttribute(), useAttribute() excludeElement(), useChoice() excludeTree(), useElement() makeOptional(), useTree() makeMandatory(), useAttributeByID() makeRepeatable(), useChoiceByID() setChoice(), useElementByID() setId(), useTreeByID() setLength(), startBlock() setLimit(), endBlock() setValue(), checkCondition() setDateMask(), makeRecursive() setStringMask(), setUID() setNumberMask(), restrictValues() datatype() or setDataType(), restrictValuesByUID() setRequired(), orderChildren() allowNulls(), setDefault() setNumberRange()
그런 다음 확장 섹션에서는 코드 목록 값과 같은 기타 항목을 정의할 수 있다.
CAM 템플릿 접근 방식에 대한 자세한 내용은 공식 OASIS 표준 사양 OASIS CAM v1.1 표준을 참조하십시오.
표준 XML 사전
CAM 규격은 Blueprint 템플릿과 xslt 확장기 도구를 사용하여 컨텐츠 어셈블리를 지원하는 표준 XML 사전을 포함하도록 확장되고 있다.이러한 예로는 NIEM 도메인 사전과 OASIS EDXL 및 EML 사전을 들 수 있다.이러한 기능에 대한 개요는 OASIS CAM Blueprint 및 사전 빠른 가이드를 참조하십시오.
스키마 모델
CAM 템플릿 형식은 UML/XMI와 마인드 맵과 같은 구조 구성요소 모델의 생성도 지원한다.이는 CAM 템플릿 구조, 규칙 및 문서 구성요소를 XMI 또는 MM 모델 형식으로 렌더링하는 xslt 변환을 통해 달성된다.
참조
- ^ http://docs.oasis-open.org/cam/에 정의된 표준
- [XSDvCAM] David Webber 등, CAM v1.1 및 XSD Schema V1.1 Insights OASIS 초안, 2008년.문서 링크 CAM 백서
- [SchematronvCAM] Rick Jelliffe, 2009년 8월, Schematron v CAM O'Reilly 기사 [2].
- [Incon] Kateřina Opochenska, Michal Kopecký 등, al., Incox – XML 무결성 제약 조건 설명 백서, 독일 Aachen, 2009 [3]
외부 링크
- OASIS 컨텐츠 어셈블리 메커니즘 기술 위원회
- 표지:CAM 개요
- CAM의 이점에 대한 IBM Developer Works 기사
- SOA Magazine CAM 관련 기사
- Java jCAM CAM 구현을 위한 기본 리소스 사이트
- CAM용 OASIS 위키 리소스 사이트
- XML2008에서 NIEM 및 CAM에 대한 프레젠테이션[영구적 데드링크]
- 2009년 3월 DEVX 기사 "XML 유효성 검사를 한 단계 업그레이드:Michael Sorns의 "CAM" 소개
- 타사 NIEM 도구
- SOA Magazine, 2007년 7월 "CAM(Content Assembly Mechanism) 및 SOA 데이터 서비스 계층"
- IBM DeveloperWorks 기사, 2010년 5월 "OASIS CAM(CAMV)을 사용한 XML 검증 프레임워크"
- RuleML 2010, "NIEM 표준 XML 사전 및 규칙 엔진 시스템" 절차
- RuleML 2013, "Rules and Policy based of XML 처리"
- CAMed(편집기) 및 CAMV(Validator) Wiki 페이지