Changes between Version 215 and Version 216 of CMDI 1.2/Specification
- Timestamp:
- 06/27/16 12:38:12 (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
CMDI 1.2/Specification
v215 v216 407 407 </cmd:Resource> 408 408 <cmd:Resource ref="rp2"> 409 {TODO} Add ConceptLink for target, i.e., add a concept to the CCR to get a handle 409 410 <cmd:Role>target</cmd:Role> 410 411 </cmd:Resource> … … 434 435 == The components == 435 436 This section of the CMDI file forms what may be referred to as descriptive metadata about the described resource. 436 437 437 438 438 '''{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. … … 457 457 458 458 === Example 6 CMD instance payload === 459 460 * '''{TODO}''' add setences to describe what is shown 461 * '''{TODO}''' add an attribute 459 462 460 463 {{{ … … 506 509 [[Image(CCSL.png, 80%)]] 507 510 511 '''{TODO}''' Finish diagram. Source: https://clarineric.slack.com/files/seaton/F1FQZDM39/ccslstructure_4.png 508 512 {{{#!comment 509 TODO: finish diagram. Source: https://clarineric.slack.com/files/seaton/F1FQZDM39/ccslstructure_4.png510 513 Draw.io source at https://www.dropbox.com/s/6vbfz3j0ctpt0ys/CCSLStructure_v4?dl=0 511 514 }}} 512 515 513 516 A 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 518 The following table describes the root element and its direct descendants. The described structure and order `MUST` be followed. 514 519 515 520 ||||= Name =||= Valuetype =||= Occurrences =||= Description =|| … … 541 546 The 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>`. 542 547 548 The following table describes the header element and its direct descendants. The described structure and order `MUST` be followed. 549 543 550 ||||= Name =||= Valuetype =||= Occurrences =||= Description =|| 544 551 |||| `<Header>` || `xs:complexType` || || Descriptive information about the component. || … … 546 553 || || `<Name>` || `xs:string` || 1 || Name of the component. || 547 554 || || `<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. || 549 556 || || `<StatusComment>` || `xs:string` || 0 or 1 || Comment about the status. || 550 557 || || `<Successor>` || `xs:anyURI` || 0 or 1 || ID of successor component, if available. || … … 562 569 * A successor `SHOULD` only be present if the status of the CMD component is deprecated. 563 570 564 === Example 8 CCSL Header ===571 === Example 8 CCSL header === 565 572 566 573 {{{ … … 574 581 }}} 575 582 576 === Example 9 CCSL Header for deprecated profile with successor ===583 === Example 9 CCSL header for deprecated profile with successor === 577 584 578 585 {{{ … … 590 597 Components 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`. 591 598 599 The following table describes the element for defining CMD components and its direct descendants. The described structure and order `MUST` be followed. 592 600 593 601 ||||||= Name =||= Valuetype =||= Occurrences =||= Description =|| … … 635 643 == CMD element definition == 636 644 CMD 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 646 The following table describes the element for defining CMD elements and its direct descendants. The described structure and order `MUST` be followed. 637 647 638 648 ||||||= Name =||= Valuetype =||= Occurrences =||= Description =|| … … 690 700 Both 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. 691 701 702 The following table describes the element for defining CMD attributes and its direct descendants. The described structure and order `MUST` be followed. 703 692 704 ||||||= Name =||= Valuetype =||= Occurrences =||= Description =|| 693 705 |||||| `<Attribute>` || `xs:complexType` || || Root element of every CMD attribute definition. || … … 727 739 * specifying all allowed values with `OPTIONAL` attributes for every value to include a concept link and a description of the specific value, or 728 740 * 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 742 The order and structure described in the following table `MUST` be followed when specifying value restrictions: 729 743 730 744 ||||||||||= Name =||= Valuetype =||= Occurrences =||= Description =|| … … 800 814 === Example 17 Cue for CMD Component === 801 815 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 805 832 806 833 = Transformation of CCSL into a CMD profile schema definition =