Skip to content

Commit ca6b6af

Browse files
committed
Refactor Dashlet schema: replace xs:decimal and xs:string types with alteredFloat and alteredString
1 parent 8fcc45a commit ca6b6af

File tree

2 files changed

+161
-119
lines changed

2 files changed

+161
-119
lines changed

3.2/itop_design.xsd

Lines changed: 38 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -2914,8 +2914,8 @@
29142914
<xs:complexContent>
29152915
<xs:extension base="Dashlet">
29162916
<xs:all>
2917-
<xs:element name="rank" type="xs:decimal" minOccurs="0" />
2918-
<xs:element name="class" type="xs:string" minOccurs="0" />
2917+
<xs:element name="rank" type="alteredFloat" minOccurs="0" />
2918+
<xs:element name="class" type="alteredString" minOccurs="0" />
29192919
</xs:all>
29202920
</xs:extension>
29212921
</xs:complexContent>
@@ -2927,7 +2927,7 @@
29272927
<xs:complexContent>
29282928
<xs:extension base="Dashlet">
29292929
<xs:all>
2930-
<xs:element name="rank" type="xs:decimal" minOccurs="0" />
2930+
<xs:element name="rank" type="alteredFloat" minOccurs="0" />
29312931
</xs:all>
29322932
</xs:extension>
29332933
</xs:complexContent>
@@ -2939,8 +2939,8 @@
29392939
<xs:complexContent>
29402940
<xs:extension base="Dashlet">
29412941
<xs:all>
2942-
<xs:element name="rank" type="xs:string" minOccurs="0" />
2943-
<xs:element name="text" type="xs:string" minOccurs="0" />
2942+
<xs:element name="rank" type="alteredFloat" minOccurs="0" />
2943+
<xs:element name="text" type="alteredString" minOccurs="0" />
29442944
</xs:all>
29452945
</xs:extension>
29462946
</xs:complexContent>
@@ -2952,13 +2952,13 @@
29522952
<xs:complexContent>
29532953
<xs:extension base="Dashlet">
29542954
<xs:all>
2955-
<xs:element name="rank" type="xs:string" minOccurs="0" />
2956-
<xs:element name="title" type="xs:string" minOccurs="0" />
2957-
<xs:element name="icon" type="xs:string" minOccurs="0" />
2958-
<xs:element name="subtitle" type="xs:string" minOccurs="0" />
2959-
<xs:element name="query" type="xs:string" minOccurs="0" />
2960-
<xs:element name="group_by" type="xs:string" minOccurs="0" />
2961-
<xs:element name="values" type="xs:string" minOccurs="0" />
2955+
<xs:element name="rank" type="alteredFloat" minOccurs="0" />
2956+
<xs:element name="title" type="alteredString" minOccurs="0" />
2957+
<xs:element name="icon" type="alteredString" minOccurs="0" />
2958+
<xs:element name="subtitle" type="alteredString" minOccurs="0" />
2959+
<xs:element name="query" type="alteredString" minOccurs="0" />
2960+
<xs:element name="group_by" type="alteredString" minOccurs="0" />
2961+
<xs:element name="values" type="alteredString" minOccurs="0" />
29622962
</xs:all>
29632963
</xs:extension>
29642964
</xs:complexContent>
@@ -2970,24 +2970,26 @@
29702970
<xs:complexContent>
29712971
<xs:extension base="Dashlet">
29722972
<xs:all>
2973-
<xs:element name="rank" type="xs:string" minOccurs="0" />
2974-
<xs:element name="title" type="xs:string" minOccurs="0" />
2975-
<xs:element name="query" type="xs:string" minOccurs="0" />
2976-
<xs:element name="group_by" type="xs:string" minOccurs="0" />
2973+
<xs:element name="rank" type="alteredFloat" minOccurs="0" />
2974+
<xs:element name="title" type="alteredString" minOccurs="0" />
2975+
<xs:element name="query" type="alteredString" minOccurs="0" />
2976+
<xs:element name="group_by" type="alteredString" minOccurs="0" />
29772977
<xs:element name="style" minOccurs="0">
2978-
<xs:simpleType>
2979-
<xs:restriction base="xs:string">
2980-
<xs:enumeration value="pie" />
2981-
<xs:enumeration value="bars" />
2982-
<xs:enumeration value="table" />
2983-
</xs:restriction>
2984-
</xs:simpleType>
2978+
<xs:complexType>
2979+
<xs:simpleContent>
2980+
<xs:restriction base="alteredString">
2981+
<xs:enumeration value="pie" />
2982+
<xs:enumeration value="bars" />
2983+
<xs:enumeration value="table" />
2984+
</xs:restriction>
2985+
</xs:simpleContent>
2986+
</xs:complexType>
29852987
</xs:element>
2986-
<xs:element name="aggregation_function" type="xs:string" minOccurs="0" />
2987-
<xs:element name="aggregation_attribute" type="xs:string" minOccurs="0" />
2988-
<xs:element name="limit" type="xs:string" minOccurs="0" />
2989-
<xs:element name="order_by" type="xs:string" minOccurs="0" />
2990-
<xs:element name="order_direction" type="xs:string" minOccurs="0" />
2988+
<xs:element name="aggregation_function" type="alteredString" minOccurs="0" />
2989+
<xs:element name="aggregation_attribute" type="alteredString" minOccurs="0" />
2990+
<xs:element name="limit" type="alteredString" minOccurs="0" />
2991+
<xs:element name="order_by" type="alteredString" minOccurs="0" />
2992+
<xs:element name="order_direction" type="alteredString" minOccurs="0" />
29912993
</xs:all>
29922994
</xs:extension>
29932995
</xs:complexContent>
@@ -3023,10 +3025,10 @@
30233025
<xs:complexContent>
30243026
<xs:extension base="Dashlet">
30253027
<xs:all>
3026-
<xs:element name="rank" type="xs:string" minOccurs="0" />
3027-
<xs:element name="title" type="xs:string" minOccurs="0" />
3028-
<xs:element name="subtitle" type="xs:string" minOccurs="0" />
3029-
<xs:element name="icon" type="xs:string" minOccurs="0" />
3028+
<xs:element name="rank" type="alteredFloat" minOccurs="0" />
3029+
<xs:element name="title" type="alteredString" minOccurs="0" />
3030+
<xs:element name="subtitle" type="alteredString" minOccurs="0" />
3031+
<xs:element name="icon" type="alteredString" minOccurs="0" />
30303032
</xs:all>
30313033
</xs:extension>
30323034
</xs:complexContent>
@@ -3038,10 +3040,10 @@
30383040
<xs:complexContent>
30393041
<xs:extension base="Dashlet">
30403042
<xs:all>
3041-
<xs:element name="rank" type="xs:string" minOccurs="0" />
3042-
<xs:element name="title" type="xs:string" minOccurs="0" />
3043-
<xs:element name="query" type="xs:string" minOccurs="0" />
3044-
<xs:element name="menu" type="xs:boolean" minOccurs="0" />
3043+
<xs:element name="rank" type="alteredFloat" minOccurs="0" />
3044+
<xs:element name="title" type="alteredString" minOccurs="0" />
3045+
<xs:element name="query" type="alteredString" minOccurs="0" />
3046+
<xs:element name="menu" type="alteredBoolean" minOccurs="0" />
30453047
</xs:all>
30463048
</xs:extension>
30473049
</xs:complexContent>

test/datamodel.must-validate.xml

Lines changed: 123 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -904,111 +904,151 @@
904904
</classes>
905905
<!-- ***************** Menus ***************** -->
906906
<menus>
907-
<menu id="1" xsi:type="MenuGroup">
908-
<rank>1.2</rank>
909-
<enable_admin_only>1</enable_admin_only>
910-
<enable_class>name</enable_class>
911-
<enable_action>UR_ACTION_MODIFY</enable_action>
912-
<enable_permission>UR_ALLOWED_YES</enable_permission>
913-
<enable_stimulus>ev_assign</enable_stimulus>
914-
<style>
915-
<decoration_classes>aaa</decoration_classes>
907+
<menu id="1" xsi:type="MenuGroup" _delta="define">
908+
<rank _delta="define">1.2</rank>
909+
<enable_admin_only _delta="define">1</enable_admin_only>
910+
<enable_class _delta="define" >name</enable_class>
911+
<enable_action _delta="define">UR_ACTION_READ</enable_action>
912+
<enable_permission _delta="define">UR_ALLOWED_YES</enable_permission>
913+
<enable_stimulus _delta="define">ev_assign</enable_stimulus>
914+
<style _delta="define">
915+
<decoration_classes _delta="define">aaa</decoration_classes>
916916
</style>
917917
</menu>
918-
<menu id="2" xsi:type="DashboardMenuNode">
919-
<enable_action>UR_ACTION_BULK_READ</enable_action>
920-
<enable_admin_only>1</enable_admin_only>
921-
<enable_class>class</enable_class>
922-
<enable_permission>UR_ALLOWED_NO</enable_permission>
923-
<enable_stimulus>aaa</enable_stimulus>
924-
<parent>123</parent>
925-
<rank>22.3</rank>
926-
<definition>
927-
<cells>
928-
<cell id="1">
929-
<rank>10</rank>
930-
<dashlets>
931-
<dashlet id="badge1" xsi:type="DashletBadge">
932-
<rank>10</rank>
933-
<class>class1</class>
918+
<menu id="2" xsi:type="DashboardMenuNode" _delta="define">
919+
<enable_action _delta="define">UR_ACTION_BULK_READ</enable_action>
920+
<enable_admin_only _delta="define">1</enable_admin_only>
921+
<enable_class _delta="define">class</enable_class>
922+
<enable_permission _delta="define">UR_ALLOWED_NO</enable_permission>
923+
<enable_stimulus _delta="define">aaa</enable_stimulus>
924+
<parent _delta="define">123</parent>
925+
<rank _delta="define">22.3</rank>
926+
<definition _delta="define">
927+
<cells _delta="define">
928+
<cell id="1" _delta="define">
929+
<rank _delta="define">10</rank>
930+
<dashlets _delta="define">
931+
<dashlet id="badge1" xsi:type="DashletBadge" _delta="define">
932+
<rank _delta="define">10</rank>
933+
<class _delta="define">class1</class>
934+
</dashlet>
935+
<dashlet id="badge2" xsi:type="DashletEmptyCell" _delta="define">
936+
<rank _delta="define">10</rank>
937+
</dashlet>
938+
<dashlet id="badge3" xsi:type="DashletPlainText" _delta="define">
939+
<rank _delta="define">10.1</rank>
940+
<text _delta="define">the text</text>
941+
</dashlet>
942+
<dashlet id="badge4" xsi:type="DashletHeaderStatic" _delta="define">
943+
<rank _delta="define">10.1</rank>
944+
<title _delta="define">the title</title>
945+
<subtitle _delta="define">the subtitle</subtitle>
946+
<icon _delta="define">icon</icon>
947+
</dashlet>
948+
<dashlet id="badge5" xsi:type="DashletHeaderDynamic" _delta="define">
949+
<rank _delta="define">10.1</rank>
950+
<title _delta="define">the title</title>
951+
<subtitle _delta="define">the subtitle</subtitle>
952+
<icon _delta="define">icon</icon>
953+
<query _delta="define">SELECT</query>
954+
<group_by _delta="define">group</group_by>
955+
<values _delta="define">item1, item2</values>
956+
</dashlet>
957+
<dashlet id="badge6" xsi:type="DashletGroupByTable" _delta="define">
958+
<rank _delta="define">10.1</rank>
959+
<title _delta="define">the title</title>
960+
<query _delta="define">SELECT</query>
961+
<group_by _delta="define">group</group_by>
962+
<style _delta="define">table</style>
963+
<aggregation_function _delta="define">function</aggregation_function>
964+
<aggregation_attribute _delta="define">attribute</aggregation_attribute>
965+
<limit _delta="define">10</limit>
966+
<order_by _delta="define">item1</order_by>
967+
<order_direction _delta="define">asc</order_direction>
968+
</dashlet>
969+
<dashlet id="badge7" xsi:type="DashletObjectList" _delta="define">
970+
<rank _delta="define">10.1</rank>
971+
<title _delta="define">the title</title>
972+
<query _delta="define">SELECT</query>
973+
<menu _delta="define">true</menu>
934974
</dashlet>
935975
</dashlets>
936976
</cell>
937977
</cells>
938978
</definition>
939-
<definition_file>filename</definition_file>
979+
<definition_file _delta="define">filename</definition_file>
940980
</menu>
941981
<menu id="3" xsi:type="NewObjectMenuNode" _delta="define">
942-
<rank>123.45</rank>
943-
<enable_admin_only>1</enable_admin_only>
944-
<parent>parent</parent>
945-
<class>class1</class>
946-
<enable_class>class2</enable_class>
947-
<enable_action>UR_ACTION_BULK_READ</enable_action>
948-
<enable_permission>UR_ALLOWED_YES</enable_permission>
982+
<rank _delta="define">123.45</rank>
983+
<enable_admin_only _delta="define">1</enable_admin_only>
984+
<parent _delta="define">parent</parent>
985+
<class _delta="define">class1</class>
986+
<enable_class _delta="define">class2</enable_class>
987+
<enable_action _delta="define">UR_ACTION_BULK_READ</enable_action>
988+
<enable_permission _delta="define">UR_ALLOWED_YES</enable_permission>
949989
</menu>
950990
<menu id="4" xsi:type="SearchMenuNode">
951-
<rank>12.3</rank>
952-
<enable_admin_only>0</enable_admin_only>
953-
<parent>1</parent>
954-
<class>class3</class>
955-
<enable_class>class4</enable_class>
956-
<enable_action>UR_ACTION_DELETE</enable_action>
991+
<rank _delta="define">12.3</rank>
992+
<enable_admin_only _delta="define">0</enable_admin_only>
993+
<parent _delta="define">1</parent>
994+
<class _delta="define">class3</class>
995+
<enable_class _delta="define">class4</enable_class>
996+
<enable_action _delta="define">UR_ACTION_DELETE</enable_action>
957997
</menu>
958-
<menu id="5" xsi:type="TemplateMenuNode">
959-
<rank>1.2</rank>
960-
<parent>1</parent>
961-
<template_file>filename</template_file>
962-
<enable_class>class3</enable_class>
963-
<enable_action>UR_ACTION_BULK_MODIFY</enable_action>
998+
<menu id="5" xsi:type="TemplateMenuNode" _delta="define">
999+
<rank _delta="define">1.2</rank>
1000+
<parent _delta="define">1</parent>
1001+
<template_file _delta="define">filename</template_file>
1002+
<enable_class _delta="define">class3</enable_class>
1003+
<enable_action _delta="define">UR_ACTION_BULK_MODIFY</enable_action>
9641004
</menu>
965-
<menu id="6" xsi:type="OQLMenuNode">
966-
<rank>6.2</rank>
967-
<parent>1</parent>
968-
<auto_reload>none</auto_reload>
969-
<oql>SELECT</oql>
970-
<do_search>1</do_search>
971-
<search_form_open>1</search_form_open>
972-
<enable_class>class2</enable_class>
973-
<enable_admin_only>0</enable_admin_only>
1005+
<menu id="6" xsi:type="OQLMenuNode" _delta="define">
1006+
<rank _delta="define">6.2</rank>
1007+
<parent _delta="define">1</parent>
1008+
<auto_reload _delta="define">none</auto_reload>
1009+
<oql _delta="define">SELECT</oql>
1010+
<do_search _delta="define">1</do_search>
1011+
<search_form_open _delta="define">1</search_form_open>
1012+
<enable_class _delta="define">class2</enable_class>
1013+
<enable_admin_only _delta="define">0</enable_admin_only>
9741014
</menu>
975-
<menu id="6.3" xsi:type="OQLMenuNode">
976-
<rank>6.3</rank>
977-
<parent>1</parent>
978-
<auto_reload>120</auto_reload>
979-
<oql>SELECT</oql>
980-
<do_search>1</do_search>
981-
<search_form_open>1</search_form_open>
982-
<enable_class>class2</enable_class>
983-
<enable_admin_only>1</enable_admin_only>
1015+
<menu id="6.3" xsi:type="OQLMenuNode" _delta="define">
1016+
<rank _delta="define">6.3</rank>
1017+
<parent _delta="define">1</parent>
1018+
<auto_reload _delta="define">120</auto_reload>
1019+
<oql _delta="define">SELECT</oql>
1020+
<do_search _delta="define">1</do_search>
1021+
<search_form_open _delta="define">1</search_form_open>
1022+
<enable_class _delta="define">class2</enable_class>
1023+
<enable_admin_only _delta="define">1</enable_admin_only>
9841024
</menu>
985-
<menu id="7" xsi:type="WebPageMenuNode">
986-
<rank>7</rank>
987-
<parent>1</parent>
988-
<url>$$https://www.openitop.com/</url>
989-
<in_new_window>true</in_new_window>
990-
<enable_admin_only>1</enable_admin_only>
1025+
<menu id="7" xsi:type="WebPageMenuNode" _delta="define">
1026+
<rank _delta="define">7</rank>
1027+
<parent _delta="define">1</parent>
1028+
<url _delta="define">$$https://www.openitop.com/</url>
1029+
<in_new_window _delta="define" >true</in_new_window>
1030+
<enable_admin_only _delta="define">1</enable_admin_only>
9911031
</menu>
992-
<menu id="8" xsi:type="ShortcutContainerMenuNode">
993-
<parent>1</parent>
994-
<rank>8</rank>
1032+
<menu id="8" xsi:type="ShortcutContainerMenuNode" _delta="define">
1033+
<parent _delta="define">1</parent>
1034+
<rank _delta="define">8</rank>
9951035
</menu>
9961036
<menu id="Typology" xsi:type="DashboardMenuNode" _delta="if_exists">
997-
<rank>80</rank>
998-
<parent>Catalogs</parent>
999-
<definition>
1000-
<layout>DashboardLayoutOneCol</layout>
1001-
<title>Menu:ConfigManagement:Typology</title>
1002-
<cells>
1037+
<rank _delta="define">80</rank>
1038+
<parent _delta="define">Catalogs</parent>
1039+
<definition _delta="define">
1040+
<layout _delta="define">DashboardLayoutOneCol</layout>
1041+
<title _delta="define">Menu:ConfigManagement:Typology</title>
1042+
<cells _delta="define">
10031043
<cell id="0" _delta="if_exists">
1004-
<dashlets>
1044+
<dashlets _delta="define">
10051045
<dashlet id="20" xsi:type="DashletBadge" _delta="define">
1006-
<rank>20</rank>
1007-
<class>class1</class>
1046+
<rank _delta="define">20</rank>
1047+
<class _delta="define">class1</class>
10081048
</dashlet>
10091049
<dashlet id="21" xsi:type="DashletBadge" _delta="define">
1010-
<rank>21</rank>
1011-
<class>class2</class>
1050+
<rank _delta="define">21</rank>
1051+
<class _delta="define">class2</class>
10121052
</dashlet>
10131053
</dashlets>
10141054
</cell>

0 commit comments

Comments
 (0)