📄 widget-tree.xsd
字号:
</xs:complexType> </xs:element> <xs:element name="and" substitutionGroup="AllConditionals"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" ref="AllConditionals"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="xor" substitutionGroup="AllConditionals"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" ref="AllConditionals"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="or" substitutionGroup="AllConditionals"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" ref="AllConditionals"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="not" substitutionGroup="AllConditionals"> <xs:complexType> <xs:sequence> <xs:element ref="AllConditionals"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="if-has-permission" substitutionGroup="AllConditionals"> <xs:complexType> <xs:attributeGroup ref="attlist.if-has-permission"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.if-has-permission"> <xs:attribute type="xs:string" name="permission" use="required"/> <xs:attribute type="xs:string" name="action"/> </xs:attributeGroup> <xs:element name="if-entity-permission" substitutionGroup="AllConditionals"> <xs:complexType> <xs:choice minOccurs="0"> <xs:element minOccurs="0" maxOccurs="1" ref="permission-condition-getter"/> <xs:element minOccurs="0" maxOccurs="1" ref="related-role-getter"/> <xs:element minOccurs="0" maxOccurs="1" ref="auxiliary-value-getter"/> </xs:choice> <xs:attributeGroup ref="attlist.if-entity-permission"/> </xs:complexType> </xs:element> <!-- entity-id and target-operation can have multiple pipe separated values. Don't use spaces. --> <xs:attributeGroup name="attlist.if-entity-permission"> <xs:attribute type="xs:string" name="entity-name" use="required"/> <xs:attribute type="xs:string" name="entity-id" use="required"/> <xs:attribute type="xs:string" name="target-operation" use="required"/> <xs:attribute name="display-fail-cond" default="false"> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="true"/> <xs:enumeration value="false"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:attributeGroup> <xs:element name="permission-condition-getter"> <xs:complexType> <xs:attributeGroup ref="attlist.permission-condition-getter"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.permission-condition-getter"> <xs:attribute type="xs:string" name="entity-name" /> <xs:attribute type="xs:string" name="operation-field-name" /> <xs:attribute type="xs:string" name="role-field-name" /> <xs:attribute type="xs:string" name="auxiliary-field-name" /> <xs:attribute type="xs:string" name="status-field-name" /> <xs:attribute type="xs:string" name="privilege-field-name" /> </xs:attributeGroup> <xs:element name="related-role-getter"> <xs:complexType> <xs:attributeGroup ref="attlist.related-role-getter"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.related-role-getter"> <xs:attribute type="xs:string" name="entity-name" /> <xs:attribute type="xs:string" name="role-entity-name" /> <xs:attribute type="xs:string" name="role-type-field-name" /> <xs:attribute type="xs:string" name="party-field-name" /> <xs:attribute type="xs:string" name="owner-entity-field-name" /> <xs:attribute type="xs:string" name="entity-id-name" /> </xs:attributeGroup> <xs:element name="auxiliary-value-getter"> <xs:complexType> <xs:attributeGroup ref="attlist.auxiliary-value-getter"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.auxiliary-value-getter"> <xs:attribute type="xs:string" name="entity-name" /> <xs:attribute type="xs:string" name="auxiliary-field-name" /> <xs:attribute type="xs:string" name="entity-id-name" /> </xs:attributeGroup> <!-- if-validate-method calls a static Java method that takes a String and returns a boolean --> <xs:element name="if-validate-method" substitutionGroup="AllConditionals"> <xs:complexType> <xs:attributeGroup ref="attlist.if-validate-method"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.if-validate-method"> <xs:attribute type="xs:string" name="field-name" use="required"/> <xs:attribute type="xs:string" name="method" use="required"/> <xs:attribute type="xs:string" name="class" default="org.ofbiz.base.util.UtilValidate"/> </xs:attributeGroup> <xs:element name="if-compare" substitutionGroup="AllConditionals"> <xs:complexType> <xs:attributeGroup ref="attlist.if-compare"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.if-compare"> <xs:attribute type="xs:string" name="field-name" use="required"/> <xs:attribute name="operator" use="required"> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="less"/> <xs:enumeration value="greater"/> <xs:enumeration value="less-equals"/> <xs:enumeration value="greater-equals"/> <xs:enumeration value="equals"/> <xs:enumeration value="not-equals"/> <xs:enumeration value="contains"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute type="xs:string" name="value" use="required"/> <xs:attribute name="type" default="String"> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="PlainString"/> <xs:enumeration value="String"/> <xs:enumeration value="Double"/> <xs:enumeration value="Float"/> <xs:enumeration value="Long"/> <xs:enumeration value="Integer"/> <xs:enumeration value="Date"/> <xs:enumeration value="Time"/> <xs:enumeration value="Timestamp"/> <xs:enumeration value="Boolean"/> <xs:enumeration value="Object"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute type="xs:string" name="format"/> </xs:attributeGroup> <xs:element name="if-compare-field" substitutionGroup="AllConditionals"> <xs:complexType> <xs:attributeGroup ref="attlist.if-compare-field"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.if-compare-field"> <xs:attribute type="xs:string" name="field-name" use="required"/> <xs:attribute name="operator" use="required"> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="less"/> <xs:enumeration value="greater"/> <xs:enumeration value="less-equals"/> <xs:enumeration value="greater-equals"/> <xs:enumeration value="equals"/> <xs:enumeration value="not-equals"/> <xs:enumeration value="contains"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute type="xs:string" name="to-field-name"/> <xs:attribute name="type" default="String"> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="PlainString"/> <xs:enumeration value="String"/> <xs:enumeration value="Double"/> <xs:enumeration value="Float"/> <xs:enumeration value="Long"/> <xs:enumeration value="Integer"/> <xs:enumeration value="Date"/> <xs:enumeration value="Time"/> <xs:enumeration value="Timestamp"/> <xs:enumeration value="Boolean"/> <xs:enumeration value="Object"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute type="xs:string" name="format"/> </xs:attributeGroup> <xs:element name="if-regexp" substitutionGroup="AllConditionals"> <xs:complexType> <xs:attributeGroup ref="attlist.if-regexp"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.if-regexp"> <xs:attribute type="xs:string" name="field-name" use="required"/> <xs:attribute type="xs:string" name="expr" use="required"/> </xs:attributeGroup> <xs:element name="if-empty" substitutionGroup="AllConditionals"> <xs:complexType> <xs:attributeGroup ref="attlist.if-empty"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.if-empty"> <xs:attribute type="xs:string" name="field-name" use="required"/> </xs:attributeGroup></xs:schema><!-- examples <trees> <tree name="ProductCategoryTree" root-node-name="ChildProductCategory"> <node name="ChildProductCategory"> <entity-one entity-name="ProductCategory"/> <label text="${description} [${productCategoryId}]" style="tabletext"/> <sub-node node-name="ChildProductCategory"> <entity-and entity-name="ProductCategoryRollup"> <constraint field-name="parentProductCategoryId" env-name="productCategoryId"/> <order-by field-name="sequenceNum"/> </entity-many> </sub-node> <out-field-map field-name="productCategoryId"/> </node> </tree> <tree name="ProductCategoryAndProductsTree" root-node-name="ChildProductCategory"> <node name="ChildProductCategory"> <entity-one entity-name="ProductCategory"/> <label text="${description} [${productCategoryId}]" style="tableheadtext"/> <sub-node node-name="ChildProductCategory"> <entity-and entity-name="ProductCategoryRollup"> <constraint field-name="parentProductCategoryId" env-name="productCategoryId"/> <order-by field-name="sequenceNum"/> </entity-many> <out-field-map field-name="productCategoryId"/> </sub-node> <sub-node node-name="ChildProduct"> <entity-and entity-name="ProductCategoryMember"> <constraint field-name="productCategoryId"/> <order-by field-name="sequenceNum"/> </entity-many> <out-field-map field-name="productId"/> </sub-node> </node> <node name="ChildProduct"> <service service-name="getProductInfo"/> <label text="${productName} [${productId}] - ${price}" style="tabletext"/> </node> </tree> </trees>-->
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -