Innehållsmonteringsmekanism

Content Assembly Mechanism ( CAM ) är en XML -baserad standard för att skapa och hantera informationsutbyten som är interoperabla och deterministiska beskrivningar av maskinbearbetningsbart informationsinnehåll som strömmar in i och ut ur XML-strukturer. CAM är en produkt från OASIS Content Assembly Technical Committee.

CAM-metoden överensstämmer med den nationella informationsutbytesmodellen ( NIEM ) och hjälper till att producera informationsutbytespaketdokumentation ( IEPD ).

Kameraprocessorverktygen gör det möjligt att skapa realistiska XML-exempel från XSD-schemastrukturdefinitioner. Dessa XML-exempel simulerar testfall för användning i interoperabilitetstestning och bestämning av mallar för användning i faktiska affärsinformationsutbyten.

Det enskilt viktigaste problemet som CAM löser är enklare och mer tillförlitlig interoperabilitet för utbyte av affärsinformation. Dagens elektroniska handel via internet är extremt begränsad i mängden automatisering eller integration som sker. Möjligheten att dela exakta koncisa och verifierbara definitioner av informationsutbyte är ett avgörande nästa steg för att möjliggöra enklare och billigare global handel.

CAM växer fram som den definitiva standarden för effektiv hantering av informationsutbyten genom den kritiska massan som genereras av lösningen med öppen källkod. [ citat behövs ]

Ett brett utbud av OASIS-standarddefinitioner dokumenteras nu, valideras och förbättras med hjälp av CAM-verktygen och tillvägagångssättet med öppen källkod. Hittills inkluderar dessa EDXL, CIQ och EML. CAM-användningen sträcker sig också till externa branschgrupper som PESC, MISMO, STAR Automotive, CAQH och sedan för statlig användning inklusive stratML, LEXS och NIEM.

Varje grupp står inför samma utmaningar när det gäller att främja lokaliseringar av sina övergripande standarder på ett sätt som snabbt kan verifieras och antas. Med CAM kan de ta sitt befintliga XSD-schemaarbete och snabbt utveckla lokaliseringsmallar, XML-testfall, nya delmängderscheman för användning med webbtjänster och skapa återanvändbara önskelistor och innehållstips. Dessutom används CAM-mallar för att bygga domänordböcker direkt från XSD-schemadefinitionerna och sedan producera korsreferensark för individuella mallar till huvudordboksdefinitionerna.

Alla dessa funktioner syftar till att förbättra kvaliteten och hastigheten på implementeringen och interoperabiliteten med hjälp av affärsinformationsutbyten baserat på XML .

Historien om CAM

OASIS Content Assembly Technical Committee (CAM TC), som träffades för första gången i januari 2003, chartrades "för att ta fram en specifikation av en generaliserad mekanism i XML där implementerare kan tillhandahålla medel för att sammanföra affärsprocesskontext och den lokaliserade implementeringen affärsregler som behövs för att ta en rå industristandardschemainstans och kombinera den med verkligt affärsinformationsinnehåll, sammanhang och roller och producera en giltig konsekvent XML-dokumentinstans." [1]

OASIS utvecklar specifikationer för affärsprocessmekanismer, industristandardscheman, registersystem och schemamekanismer. CAM-specifikationen kommer att tillåta dessa fyra komponenter att sammanföras på ett konsekvent och standardiserat sätt och publicera monteringsinstruktioner baserat på dessa OASIS-specifikationer. Detta kommer att underlätta arbetet för branschgrupper och möjliggöra utveckling av mjukvaruverktyg som fungerar konsekvent med alla dessa specifikationer.

Det ursprungliga arbetet som föregick CAM påbörjades under de senare dagarna av ebXML -initiativet som en utlöpare av ebXML-registrets arbete. Denna arbetsgrupp kallades för "BRIM" – Business Registry Interface Model och fokus var Registry Content assembly-tjänster och innehållssyntaxlagringsspecifikationer länk till BRIM-referens på CEFACT . Dessutom var BRIM-arbetet också positionerat för att möjliggöra core component message assembly (CCMA) för affärsprocesser. Arbetet flyttades till OASIS i slutet av 2002 för att bättre underlätta den nödvändiga XML-utvecklingen.

Implementeringar och distributioner av CAM V1.1 pågår när detta skrivs (januari-2009), inklusive lösningar med öppen källkod som använder Java och XSLT .

Versioner av CAM

  • CAM 1.1 antogs som en OASIS-standard i juni 2007.
  • Pågående arbete fortsätter med att förfina och utöka mot en ny version av version 1.5 under 2009, främst med fokus på förtydliganden, korrigeringar och begränsade tillägg. Kärnrollen för CAM förblir densamma – definiera, komponera och validera XML-innehåll.

CAM-mallens syntax för skript är utformad för att vara uppenbar, läsbar och deklarativ.

CAM byggstenar

CAM bygger på ett antal befintliga standarder:

Extensible Markup Language (XML)
CAM-mallar uttrycks i ett standardiserat XML
XML Schema
CAM tillhandahåller ett abstraktionslager för XSD-schema som gör det betydligt enklare att manipulera och definiera mallar för affärsinformationsutbyte än att bara använda XSD-schema XML Schema .
XPath V2.0
CAM använder XPath i stor utsträckning för att definiera regler och sökvägsmåluttryck som är kärnan i CAM-valideringsbearbetningen.
XSLT-skriptning av
befintliga lösningar med öppen källkod utnyttjar XSLT i stor utsträckning.
elektroniska affärer XML(ebXML)
kärnkomponenter och registerkoncept utvecklade för ebXML (ISO15000) ger en betydande konceptuell grund för CAM-metoden för innehållssammansättning.

CAM-mallar

En CAM- mall består av fyra kärnsektioner. Rubriksektionen, struktursektionen och affärsreglersektionen och tilläggssektionen.

Dessa kan sammanfattas i XML-syntax som:

   
 
 
 
  
  <CAM  CAMlevel=  "1"  version=  "1.1"  >  <Header/>  <AssemblyStructure/>  <BusinessUseContext/>  <Extension/>  <!-- Valfritt, repeterbart -->  </CAM> 

Syftet med rubriksektionen är att deklarera egenskaper och parametrar för CAM-processen att referera till. Syftet med AssemblyStructure-avsnittet är att fånga den eller de nödvändiga innehållsstrukturerna som behövs för det specifika affärsinformationsutbytet.

När sammansättningsstrukturen/-erna har definierats är nästa steg att definiera de sammanhangsregler som gäller för det innehållet. Tekniken som används är att identifiera en del av strukturen genom att peka på den med hjälp av en XPath-mållokaliseringsreferens och sedan även tillämpa ett påstående med hjälp av ett av strukturpredikaten som tillhandahålls för det ändamålet.

Det finns två avsnitt i dessa affärskontextregler, standardregler gäller normalt och villkorliga regler som endast gäller om ett visst regelblock utvärderas till sant. Regler uttrycks med XPath 2.0- syntax tillsammans med ytterligare en uppsättning strukturpredikat som CAM tillhandahåller som förenklar kontrollen över strukturen och dess informationsinnehållsmodell.

CAM -funktionspredikat inkluderar: 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() eller setDataType(), restrictValuesByUID() setRequired(), orderChildren() allowNulls(), setDefault() setNumberRange()

Tilläggssektionen tillåter sedan definition av diverse objekt som kodlistvärden.

För mer information om CAM-mallmetoden, se den formella OASIS standardspecifikationen OASIS CAM v1.1 standard

Kanoniska XML-ordböcker

CAM-specifikationen utökas till att omfatta kanoniska XML-ordböcker för att stödja Content Assembly med hjälp av ritningsmallar och xslt-expanderverktyg. Exempel på dessa inkluderar NIEM- domänordböcker och OASIS EDXL- och EML-ordböcker. För en översikt över dessa funktioner, se OASIS CAM Blueprints and Dictionaries Quick Guide

Schema modeller

CAM-mallformatet stöder också generering av strukturkomponentmodeller som UML / XMI och tankekartor . Detta uppnås via en xslt-transformation som gör CAM-mallstrukturen, regler och dokumentationskomponenter till XMI- eller MM-modellformaten.

  • [XSDvCAM] David Webber et al., vitbok om CAM v1.1 och XSD Schema V1.1 Insights OASIS Draft, 2008. Dokumentlänk CAM-vitbok .
  • [SchematronvCAM] Rick Jelliffe , augusti 2009, Jämförelse mellan Schematron v CAM O'Reilly Artikel [2] .
  • [Incon] Kateřina Opočenská, Michal Kopecký et al., Incox – Ett språk för XML-integritetsbegränsningar Beskrivning White Paper, Aachen, Tyskland, 2009 [3] .

externa länkar