nl-digigo / visi

Beheeromgeving van de VISI open standaard.
https://nl-digigo.github.io/visi/
6 stars 4 forks source link

Implementatie: Promotor #84

Closed edelater closed 4 years ago

edelater commented 5 years ago

Dit issue is onderdeel van een serie issues waar Future Insight tegenaan liep tijdens implementatie van VISI.

Promotor

ArneBruinse commented 4 years ago

dit wordt opgelost in #87

jvgeijlswijk commented 2 years ago

T.a.v. het eerste punt "namespace uit projectType in _7.xml wordt niet overgenomen in 10.xsd" kwam ik bijgevoegde e-mail van Peter Bonsma uit 2012 tegen. In deze e-mail staat een wijziging aan de Promotor beschreven.: "De verandering betreft een aanpassing in VISI systematiek 1.3. Hierin wordt op berichtenniveau een raamwerkspecifieke namespace gespecificeerd. Deze specificatie is onderdeel van het raamwerk zelf (ProjectType element). De promotor gebruikt de waarde van dit veld om in de gegenereerde XSD (XML schema file) de zogenaamde target namespace te specificeren. Voor compatibiliteit met voorgaande versies van de VISI systematiek kan deze namespace nog steeds worden ingevuld. In dat geval moet deze waarde identiek zijn aan de namespace van de VISI systematiek versie zelf."

20120223_1116_email_Peter_Bonsma_Nieuwe_Promotor_versie_op_SVN_geplaatst.pdf

jvgeijlswijk commented 2 years ago

T.a.v. het laatste punt "C++ source code van Promotor is vrijwel niet aan te passen zonder heel specifieke kennis (ondanks source code)" bevat de documentatie van VISI Standaard versie 1.4 een document van de hand van Peter Bonsma: [https://github.com/bimloket/visi/blob/master/1_technische_documentatie/archief/VISI%201.4%20documentatie/VISI%20syst.1.4%20Bijlage%209%20Toelichting%20op%20werking%20Promotor%20CC-BY-NC-SA.pdf](Toelichting op de werking van de Promotor)

Dit document heeft de kwalificatie "INFORMATIEF", en geeft een beschrijving op hoofdlijnen van de technische opbouw van de VISI Standaard (_2.exp, _3.xsd, _5.exp, _7.xml, etc.) en welke function calls uit de dll van de Promotor gebruikt kunnen worden voor een bepaalde conversie. Bijvoorbeeld conversie van _2.exp naar _3.xsd.

Het document beschrijft niet de functionele logica, die toegepast wordt bij een conversie. Op pagina 5 wordt slechts één voorbeeld van dergelijke logica gegeven: "_For example, the ID attribute value of a *Type data element is interpreted as the name of its XSD complex element counterpart. As a result, the ID attribute in an interaction framework shouldn't be something like ID=”Role003” but more like ID=”ProjectManager”."

Een andere voorbeeld van dergelijke logica is: Eerste letter van het ID van een SimpleElementType uit raamwerk (_7.xml) wordt geconverteerd naar een kleine letter in het gepromote raamwerk (10.xsd). Dus (uit het raamwerk) wordt 2022-02-22

N.B. Ook voor de eerste letter van het ID van een ComplexElementType uit het raamwerk past de Promotor een dergelijke logica toe. Echter dan een conversie naar een hoofdletter.