From: The semantics of Chemical Markup Language (CML) for computational chemistry : CompChem
dictRef. | Rules |
---|---|
cc:jobList | - A jobList module element MUST have an id attribute the value of which MUST be unique within the module specifying the compchem convention. |
- A jobList module element MUST contain at least one job module child element. | |
- A jobList module element SHOULD have a title attribute the value of which MUST be a non-empty string specifying a human-readable title for the module. | |
- A jobList module element MAY contain more than one child element in any namespace. | |
cc:job | - A job module element MUST contain exactly one initialization module child element. |
- A job module element MAY contain zero or more calculation module child elements. | |
- A job module element MAY contain no more than one finalization module child element. | |
- A job module element MAY contain no more than one environment module element. | |
- The order of the calculation module elements in a job module MUST represent the order of the calculation steps but there is no restriction on the order of other child element types. | |
- If a calculation module element is present, a finalization module element MUST also be present as a child of a job module element. | |
- A job module element SHOULD have a title attribute, the value of which MUST be a non-empty string specifying a human-readable title for the module. | |
- A job module element MAY also contain other child elements in any namespace. | |
cc:initialization | - An initialization module element MUST NOT contain more than one <molecule> child element. The <molecule> MUST specify a convention using the convention attribute and the convention SHOULD be one of the RECOMMENDED molecular conventions. |
- An initialization module element MUST NOT contain more than one <parameterList> element. | |
- An initialization module element MAY contain any number of user defined module element. | |
- An initialization module element MUST contain at least one child of molecule, <parameterList> or user defined module elements. | |
- An initialization module element MAY contain more than one child element in any namespace but MUST NOT contain a property child element or a <propertyList> child element. | |
- A job module element MAY also contain other child elements in any namespace. | |
cc:initialization | - An initialization module element MUST NOT contain more than one <molecule> child element. The <molecule> MUST specify a convention using the convention attribute and the convention SHOULD be one of the RECOMMENDED molecular conventions. |
- An initialization module element MUST NOT contain more than one <parameterList> element. | |
- An initialization module element MAY contain any number of user defined module element. | |
- An initialization module element MUST contain at least one child of molecule, <parameterList> or user defined module elements. | |
- An initialization module element MAY contain more than one child element in any namespace but MUST NOT contain a property child element or a <propertyList> child element. | |
cc:calculation | - A calculation module element MUST NOT contain more than one molecule child element. The molecule MUST specify a convention using the convention attribute and the convention SHOULD be one of the RECOMMENDED molecular conventions. |
- A calculation module element MUST NOT contain more than one <parameterList> element. | |
- A calculation module element MUST NOT contain more than one <propertyList> element. | |
- A calculation module element MAY contain any number of user defined module elements. | |
- A calculation module element MUST contain at least one child of molecule, <parameterList>, <propertyList> or user defined module elements. | |
- A calculation module element MAY contain more than one child element in any namespace. | |
cc:finalization | - A finalization module element MUST NOT contain more than one molecule child element. The molecule MUST specify a convention using the convention attribute and the convention SHOULD be one of the RECOMMENDED molecular conventions. |
- A finalization module element MUST NOT contain more than one <propertyList> element. | |
- A finalization module element MAY contain any number of user defined module elements. | |
- A finalization module element MUST contain at least one molecule child, <propertyList> child or user defined module element. | |
- A finalization module element MAY contain more than one child element in any namespace but MUST NOT contain a parameter child element or a <parameterList> child element. | |
cc:environment | - An environment module element MUST NOT contain more than one <propertyList> element. |
- Any environment property element MUST be a child of a <propertyList> element. | |
- An environment module element MAY contain more than one child element in any namespace including any number of user defined module elements. However, CompChem can only understand a particular set of concepts. | |
- An environment module MUST contain at least one child of <parameterList> or userDefinedModule elements. | |
- An environment module element MAY contain more than one child element in any namespace but MUST NOT contain a parameter child element or a <parameterList> child element. |