<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Paul<div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 23 Feb 2023, at 14:47, Harrison Paul <<a href="mailto:harripa@gmail.com" class="">harripa@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="content-type" content="text/html; charset=utf-8" class=""><div style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div class=""><br class=""><blockquote type="cite" class=""><div class="">On 23 Feb 2023, at 12:49, Laurent Michel <<a href="mailto:laurent.michel@astro.unistra.fr" class="">laurent.michel@astro.unistra.fr</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta charset="UTF-8" class=""><div class=""><blockquote type="cite" style="font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" class="">However the VOMDL spec tells that a name must be unique within its scope.<br class="">- nothing about the way to construct VODML-ID (a good reason not to parse them)<br class="">- nothing about the consistency between names and VOMDL-IDs<br class=""></blockquote><br class="">The spec might not say anything explicit, but in fact the VODML-ID does have structure in that it is built from the names of an element and its parents.<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">I understand, but there is no reason but he common sense, to give a particular structure to the VOMDL-IDs.<span class="Apple-converted-space"> </span></span><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">We you generate VODML from XMI (modelio), you first get random IDs for the VOMDL-ID and in a second steps, there are built from [model-name, attr-name , ID of the host class], but the XSLT doing this is not part of the standard. If you edit your VOMDL by hand, like Pat did, you may introduce a distortion to this rule without breaking the schema compliance.</span><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">This is why I suggest to tell the users:</span><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">- do not rely on names</span><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">- do no parse VODML-IDs</span><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""></div></div></blockquote><div class=""><br class=""></div><div class="">I agree that technically the VODML-IDs are just XMLIDs andlong as they are unique within a single VODML instance that they can have any value/structure. However, this is precisely the problem, as simply regarded like this, then two instances of a VO-DML document describing a particular model could both be valid, but with entirely different sets of VODML-IDs, and in this situation another standard like MIVOT cannot use those VODML-IDs without also saying precisely which instance document is being used to describe the model. Unless there is some guarantee about the form of the VODML-ID  then there could also be undesirable behaviour that new versions of a model did not retain the exact same VODML-ID for a particular attribute.</div><div class=""><br class=""></div></div></div></div></blockquote><div><br class=""></div>I do not agree with this. Once the VODML-IDs have been set, no matter how you do it, they are part of the standard - of the VOMDL description of the model -. None is allowed to change them later on.</div><div><br class=""><blockquote type="cite" class=""><div class=""><div style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class=""><div class="">I think that the XSLT in the VO-DML tooling is effectively part of the standard, and the actual document standard should be updated to clarify that the VODML-ID does have more structure than </div><div class="page" title="Page 21"><div class="layoutArea"><div class="column"><pre class=""><span style="font-size: 12pt; font-family: CourierNewPSMT;" class="">[a-zA-Z][a-zA-Z0-9_\.]*<br class=""></span></pre></div></div></div></div></div></div></blockquote><div><br class=""></div>Sorry, I do not agree again. XSLT haven’t been reviewed AFAR. The only thing we can say is that the VODML files issued by those XSLT are valid VODML files.</div><div>I think that adding a requirement about the way VODML-ID are built is out of the scope of an errata since this will invalidate former model files that do not follow this new rule.</div><div><br class=""><blockquote type="cite" class=""><div class=""><div style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class=""><br class=""><blockquote type="cite" class=""><div class=""><div class=""><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">In this sense the name is a redundant piece of information, but it is quite difficult to say in words how to create the VODML-IDs without making reference to the name element at each level in the tree.<br class=""></blockquote><span style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">Finally we do not have to say this as long as VODML-IDs are meant not  to be parsable.<span class="Apple-converted-space"> </span></span><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">Let’s  XSLT working as now and the users dealing with VODML-IDs as atomic strings.</span><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Monaco; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""></div></div></blockquote></div><br class=""><div class="">I think that if we say that the VODML-IDs have structure, then we can allow Markus’s desire for non-qualified attribute names as it is possible to work them out with simple string manipulations.</div></div></div></blockquote>This discussion strengthens my conviction to require MIVOT working with the VODML-IDs. They are identifiers, better controlled and managed,  thus safer to use.</div><div>Anyway, this MIVOT topic is closed after Markus has proposed a little spec update.</div><div><br class=""></div><div>Laurent</div><div><br class=""></div><br class=""></div></body></html>