'''Note:''' this issue has now been addressed with [changeset:2011 a schematron check] (= solution 1 + a warning, to be incorporated somehow in the Component Registry) == problem == cmdi-price component: {{{
clarin.eu:cr1:c_1271859438115 Price Component Price contains information about the (different) price(s) for a resource
}}} This results in instances such as: {{{ }}} I know that this is not a problem in XML but one of my colleagues here says: Bad style same element within the same element with different content models. Do you have any recommendations for us? I mean usually I would say that it should be ......... etc. avoiding the "problem". He is sort of right and if he wants to use RegEx for processing, it is certainly nicer. == possible solutions == === 1. leave it as it is === pro: * less work con: * not really stylish * potentially confusing === 2. styleguide: use a suffix to indicate components === (non-binding) advice for the creators of a component to use a certain suffix, eg "c_" (or similar: use the plural for the components, singular for embedded elements) {{{ }}} pro: * less confusion * still leaves the possibility to freely choose the instance tags (eg for interoperability with TEI headers) con: * non-binding, so confusion is still possible if users do not adhere to the advice === 3. automatically append a suffix when generating XSD === {{{ }}} results in: {{{ }}} and thus in: {{{ }}} pro: * binding, so no confusion anymore con: * intransparent, because the instance tags (c_Price) look different than the component tags (Price), although this might be masked by the software (hiding the c_ prefix eg) * impossible to "emulate" other schemas literally like TEI (eg tags instead of ) === 4. remove outer components in XSLT === change the XSD-generation XSLT so that it removes the outer component, so you would get {{{ ... ... }}} instead of {{{ }}} pro: * more intuitive (?) * easier to use in arbil (?) con: * does not work when the component has other elements (eg in a component, both and ) * (probably) complex changes to the XSLT