Changes between Version 215 and Version 216 of CMDI 1.2/Specification


Ignore:
Timestamp:
06/27/16 12:38:12 (8 years ago)
Author:
Twan Goosen
Comment:

Transferred changes and TODOs into CCSL section

Legend:

Unmodified
Added
Removed
Modified
  • CMDI 1.2/Specification

    v215 v216  
    407407        </cmd:Resource>
    408408        <cmd:Resource ref="rp2">
     409         {TODO} Add ConceptLink for target, i.e., add a concept to the CCR to get a handle
    409410            <cmd:Role>target</cmd:Role>
    410411        </cmd:Resource>
     
    434435==      The components ==
    435436This section of the CMDI file forms what may be referred to as descriptive metadata about the described resource.
    436 
    437437
    438438'''{TODO}:''' couple of lines that describe the nature of the components section, i.e. it has a partially fixed structure and the rest is determined by the profile definition.
     
    457457
    458458=== Example 6 CMD instance payload ===
     459
     460* '''{TODO}''' add setences to describe what is shown
     461* '''{TODO}''' add an attribute
    459462
    460463{{{
     
    506509[[Image(CCSL.png, 80%)]]
    507510
     511'''{TODO}''' Finish diagram. Source: https://clarineric.slack.com/files/seaton/F1FQZDM39/ccslstructure_4.png
    508512{{{#!comment
    509 TODO: finish diagram. Source: https://clarineric.slack.com/files/seaton/F1FQZDM39/ccslstructure_4.png
    510513Draw.io source at https://www.dropbox.com/s/6vbfz3j0ctpt0ys/CCSLStructure_v4?dl=0
    511514}}}
    512515
    513516A CCSL document `MUST` contain a CCSL header and the actual CMD component description. Its root element `MUST` contain an XML attribute `@isProfile` to indicate if the document specifies a CMD profile or a CMD component and it `MUST` contain an XML attribute `@CMDVersion` specifying the CMDI version ("1.2"). The root element `MAY` also contain an XML attribute `@CMDOriginalVersion` specifying the CMDI version that was originally used to create the component.
     517
     518The following table describes the root element and its direct descendants. The described structure and order `MUST` be followed.
    514519
    515520||||= Name =||= Valuetype =||= Occurrences =||= Description =||
     
    541546The CCSL header provides information relevant to identify and describe the component. This part includes a persistent identifier, the name, the description of the component and information about the status of the specification. The header `MUST` contain an element indicating the component's status in its lifecycle (using the three lifecycles ''development'', ''production'', or ''deprecated'') and `MAY` contain  the element `<StatusComment>` to contain information about the reason for the current status. In the case of a deprecated specification that was succeeded by a new specification, the identifier of the direct successor `MAY` be stored in the element `<Successor>`.
    542547
     548The following table describes the header element and its direct descendants. The described structure and order `MUST` be followed.
     549
    543550||||= Name =||= Valuetype =||= Occurrences =||= Description =||
    544551|||| `<Header>` || `xs:complexType` || || Descriptive information about the component. ||
     
    546553|| || `<Name>` || `xs:string` || 1 || Name of the component. ||
    547554|| || `<Description>` || `xs:string` || 0 or 1 || Description of the component. ||
    548 || || `<Status>` || `xs:string` ("development", "production", "deprecated") || 1 || Status in lifecycle. ||
     555|| || `<Status>` || `xs:string` ("development", "production", "deprecated"; see below for a description of each of the possible values) || 1 || Status in lifecycle. ||
    549556|| || `<StatusComment>` || `xs:string` || 0 or 1 || Comment about the status. ||
    550557|| || `<Successor>` || `xs:anyURI` || 0 or 1 || ID of successor component, if available. ||
     
    562569* A successor `SHOULD` only be present if the status of the CMD component is deprecated.
    563570
    564 === Example 8 CCSL Header ===
     571=== Example 8 CCSL header ===
    565572
    566573{{{
     
    574581}}}
    575582
    576 === Example 9 CCSL Header for deprecated profile with successor ===
     583=== Example 9 CCSL header for deprecated profile with successor ===
    577584
    578585{{{
     
    590597Components are defined as a sequence of elements which `MAY` be followed by other components. The latter is allowed because components may be included in other components, either by referencing already defined components (i.e. a CMD component with its own identifier) or providing an inline component definition. The former `MUST` be done by assigning the identifier of the referenced component as the value of `@ComponentRef`.
    591598
     599The following table describes the element for defining CMD components and its direct descendants. The described structure and order `MUST` be followed.
    592600
    593601||||||= Name =||= Valuetype =||= Occurrences =||= Description =||
     
    635643==      CMD element definition ==
    636644CMD elements are a template for storing atomic values constrained by a value scheme in a CMD instance. The CCSL specification of an CMD element `MUST` contain the name of the element and `MAY` contain a concept link, the value schema, and information about the allowed cardinality of the element. Furthermore, it `MAY` be indicated if the element allows for values in more than one language, in which case an  unlimited upper cardinality bound is implied. A CMD element `MUST` either have one of the standard XML schema datatypes assigned to it, or be constrained by using regular expressions or vocabularies. The latter can be specified by giving the complete list of allowed values or by stating the URI of an external vocabulary (for details see [#valuerestrictions Value restrictions for elements and attributes]). If the instance's content of the element can be derived from other values, the element  `AutoValue` `MAY` be used to give indication about the derivation function. The CCSL does not prescribe or suggest a specific set of derivation functions.
     645
     646The following table describes the element for defining CMD elements and its direct descendants. The described structure and order `MUST` be followed.
    637647
    638648||||||= Name =||= Valuetype =||= Occurrences =||= Description =||
     
    690700Both the CMD element and component description allow the specification of additional CMD attributes. Every CMD attribute definition `MUST` contain a `@name` attribute and `MAY` contain other attributes or elements for a more detailed description.
    691701
     702The following table describes the element for defining CMD attributes and its direct descendants. The described structure and order `MUST` be followed.
     703
    692704||||||= Name =||= Valuetype =||= Occurrences =||= Description =||
    693705|||||| `<Attribute>` || `xs:complexType` || || Root element of every CMD attribute definition. ||
     
    727739* specifying all allowed values with `OPTIONAL` attributes for every value to include a concept link and a description of the specific value, or
    728740* referring to an external vocabulary via a URI specified in `@URI`. The `OPTIONAL` XML attributes `@ValueProperty` and `@ValueLanguage` `MAY` be used to give more information about preferred label and language in the chosen vocabulary.
     741
     742The order and structure described in the following table `MUST` be followed when specifying value restrictions:
    729743
    730744||||||||||= Name =||= Valuetype =||= Occurrences =||= Description =||
     
    800814=== Example 17 Cue for CMD Component ===
    801815
    802 {{{#!comment
    803 TODO: Example with cues on <Component>
    804 }}}
     816{{{#!xml
     817<Component name="Person"
     818    cue:LabelElement="Name,Initials,Id">
     819    <Element name="Name" CardinalityMin="0" />
     820    <Element name="Initials" CardinalityMin="0" />
     821    <Element name="Id" CardinalityMin="0" />
     822    <Component name="Address" CardinalityMin="0" CardinalityMax="1"
     823        cue:DisplayInline="true">
     824        <Element name="Street" />
     825        <Element name="Place" />
     826        <Element name="Country" />
     827    </Component>
     828</Component>
     829}}}
     830
     831'''{TODO}''' Caption should explain the envisioned behaviour of the different cues but also make clear that they are hypothetical
    805832
    806833= Transformation of CCSL into a CMD profile schema definition =