Author: adrianc Date: Mon Jan 5 21:51:13 2015 New Revision: 1649676 URL: http://svn.apache.org/r1649676 Log: Update web site with recent schema changes.
Added: ofbiz/site/dtds/widget-common.xsd Modified: ofbiz/site/dtds/ofbiz-properties.xsd ofbiz/site/dtds/widget-form.xsd ofbiz/site/dtds/widget-menu.xsd ofbiz/site/dtds/widget-screen.xsd ofbiz/site/dtds/widget-tree.xsd Modified: ofbiz/site/dtds/ofbiz-properties.xsd URL: http://svn.apache.org/viewvc/ofbiz/site/dtds/ofbiz-properties.xsd?rev=1649676&r1=1649675&r2=1649676&view=diff ============================================================================== --- ofbiz/site/dtds/ofbiz-properties.xsd (original) +++ ofbiz/site/dtds/ofbiz-properties.xsd Mon Jan 5 21:51:13 2015 @@ -23,7 +23,8 @@ under the License. <xs:complexType name="valueType"> <xs:simpleContent> <xs:extension base="xs:string"> - <xs:attribute ref="xml:lang" use="required"/> + <xs:attribute ref="xml:lang" use="required" /> + <xs:attribute ref="xml:space" /> </xs:extension> </xs:simpleContent> </xs:complexType> Added: ofbiz/site/dtds/widget-common.xsd URL: http://svn.apache.org/viewvc/ofbiz/site/dtds/widget-common.xsd?rev=1649676&view=auto ============================================================================== --- ofbiz/site/dtds/widget-common.xsd (added) +++ ofbiz/site/dtds/widget-common.xsd Mon Jan 5 21:51:13 2015 @@ -0,0 +1,519 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> + + <xs:complexType name="ConditionRootType"> + <xs:choice> + <xs:element ref="and" /> + <xs:element ref="or" /> + <xs:element ref="xor" /> + <xs:element ref="not" /> + <xs:element ref="if-service-permission" /> + <xs:element ref="if-has-permission" /> + <xs:element ref="if-entity-permission" /> + <xs:element ref="if-validate-method" /> + <xs:element ref="if-compare" /> + <xs:element ref="if-compare-field" /> + <xs:element ref="if-regexp" /> + <xs:element ref="if-empty" /> + </xs:choice> + </xs:complexType> + <xs:element name="AllConditionals" abstract="true" /> + <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-service-permission" substitutionGroup="AllConditionals"> + <xs:complexType> + <xs:attribute type="xs:string" name="service-name" use="required" /> + <xs:attribute type="xs:string" name="resource-description" use="optional" /> + <xs:attribute type="xs:string" name="context-map" use="optional" /> + <xs:attribute name="main-action" use="optional"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="CREATE" /> + <xs:enumeration value="UPDATE" /> + <xs:enumeration value="DELETE" /> + <xs:enumeration value="VIEW" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:complexType> + </xs:element> + <xs:element name="if-has-permission" substitutionGroup="AllConditionals"> + <xs:complexType> + <xs:attribute type="xs:string" name="permission" use="required" /> + <xs:attribute type="xs:string" name="action" /> + </xs:complexType> + </xs:element> + <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:attribute type="xs:string" name="entity-name" use="required" /> + <xs:attribute type="xs:string" name="entity-id" use="required"> + <xs:annotation> + <xs:documentation>Can have multiple pipe separated values, but don't use spaces.</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="target-operation" use="required"> + <xs:annotation> + <xs:documentation>Can have multiple pipe separated values, but don't use spaces.</xs:documentation> + </xs:annotation> + </xs:attribute> + <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:complexType> + </xs:element> + <xs:element name="permission-condition-getter"> + <xs:complexType> + <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:complexType> + </xs:element> + <xs:element name="related-role-getter"> + <xs:complexType> + <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:complexType> + </xs:element> + <xs:element name="auxiliary-value-getter"> + <xs:complexType> + <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:complexType> + </xs:element> + <xs:element name="if-validate-method" substitutionGroup="AllConditionals"> + <xs:annotation> + <xs:documentation>Calls a static Java method that takes a String and returns a boolean.</xs:documentation> + </xs:annotation> + <xs:complexType> + <xs:attribute type="xs:string" name="field" 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:complexType> + </xs:element> + <xs:element name="if-compare" substitutionGroup="AllConditionals"> + <xs:complexType> + <xs:attribute name="field" type="xs:string" 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 name="value" type="xs:string" 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="BigDecimal" /> + <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:complexType> + </xs:element> + <xs:element name="if-compare-field" substitutionGroup="AllConditionals"> + <xs:complexType> + <xs:attribute name="field" type="xs:string" 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 name="to-field" type="xs:string" /> + <xs:attribute name="type" default="String"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="PlainString" /> + <xs:enumeration value="String" /> + <xs:enumeration value="BigDecimal" /> + <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:complexType> + </xs:element> + <xs:element name="if-regexp" substitutionGroup="AllConditionals"> + <xs:complexType> + <xs:attribute type="xs:string" name="field" use="required" /> + <xs:attribute type="xs:string" name="expr" use="required" /> + </xs:complexType> + </xs:element> + <xs:element name="if-empty" substitutionGroup="AllConditionals"> + <xs:complexType> + <xs:attribute type="xs:string" name="field" use="required" /> + </xs:complexType> + </xs:element> + + <xs:element name="AllActions" abstract="true" /> + <xs:element name="set" substitutionGroup="AllActions"> + <xs:complexType> + <xs:attribute type="xs:string" name="field" use="required" /> + <xs:attribute type="xs:string" name="from-field" /> + <xs:attribute type="xs:string" name="value" /> + <xs:attribute type="xs:string" name="default-value" /> + <xs:attribute name="global" default="false"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="true" /> + <xs:enumeration value="false" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="type"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="PlainString" /> + <xs:enumeration value="String" /> + <xs:enumeration value="BigDecimal" /> + <xs:enumeration value="Double" /> + <xs:enumeration value="Float" /> + <xs:enumeration value="List" /> + <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:enumeration value="NewList" /> + <xs:enumeration value="NewMap" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="to-scope" default="screen"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="screen" /> + <xs:enumeration value="user" /> + <xs:enumeration value="application" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="from-scope" default="screen"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="screen" /> + <xs:enumeration value="user" /> + <xs:enumeration value="application" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:complexType> + </xs:element> + <xs:element name="property-map" substitutionGroup="AllActions"> + <xs:complexType> + <xs:attribute type="xs:string" name="resource" use="required" /> + <xs:attribute type="xs:string" name="map-name" use="required" /> + <xs:attribute name="global" default="false"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="true" /> + <xs:enumeration value="false" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:complexType> + </xs:element> + <xs:element name="property-to-field" substitutionGroup="AllActions"> + <xs:complexType> + <xs:attribute type="xs:string" name="resource" use="required" /> + <xs:attribute type="xs:string" name="property" use="required" /> + <xs:attribute type="xs:string" name="field" use="required" /> + <xs:attribute type="xs:string" name="default" /> + <xs:attribute name="no-locale" default="false"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="true" /> + <xs:enumeration value="false" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute type="xs:string" name="arg-list-name" /> + </xs:complexType> + </xs:element> + <xs:element name="script" substitutionGroup="AllActions"> + <xs:complexType> + <xs:attribute type="xs:string" name="location" use="required" /> + </xs:complexType> + </xs:element> + <xs:element name="entity-one" substitutionGroup="AllActions"> + <xs:complexType> + <xs:sequence> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="field-map" /> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="select-field" /> + </xs:sequence> + <xs:attribute name="entity-name" type="xs:string" use="required" /> + <xs:attribute name="value-field" type="xs:string" use="required" /> + <xs:attribute name="use-cache" default="false"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="true" /> + <xs:enumeration value="false" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="auto-field-map" default="true"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="true" /> + <xs:enumeration value="false" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:complexType> + </xs:element> + <xs:element name="get-related-one" substitutionGroup="AllActions"> + <xs:complexType> + <xs:attribute name="value-field" type="xs:string" use="required" /> + <xs:attribute name="relation-name" type="xs:string" use="required" /> + <xs:attribute name="use-cache" type="xs:string" default="false" /> + <xs:attribute name="to-value-field" type="xs:string" use="required" /> + </xs:complexType> + </xs:element> + <xs:element name="get-related" substitutionGroup="AllActions"> + <xs:complexType> + <xs:attribute type="xs:string" name="value-field" use="required" /> + <xs:attribute type="xs:string" name="relation-name" use="required" /> + <xs:attribute type="xs:string" name="map" /> + <xs:attribute type="xs:string" name="order-by-list" /> + <xs:attribute type="xs:string" name="use-cache" default="false" /> + <xs:attribute type="xs:string" name="list" use="required" /> + </xs:complexType> + </xs:element> + <xs:element name="condition-list"> + <xs:complexType> + <xs:choice maxOccurs="unbounded"> + <xs:element ref="condition-expr" /> + <xs:element ref="condition-list" /> + <xs:element ref="condition-object" /> + </xs:choice> + <xs:attribute name="combine" default="and"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="and" /> + <xs:enumeration value="or" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:complexType> + </xs:element> + <xs:element name="having-condition-list"> + <xs:complexType> + <xs:choice maxOccurs="unbounded"> + <xs:element ref="condition-expr" /> + <xs:element ref="condition-list" /> + <xs:element ref="condition-object" /> + </xs:choice> + <xs:attribute name="combine" default="and"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="and" /> + <xs:enumeration value="or" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:complexType> + </xs:element> + <xs:element name="condition-expr"> + <xs:complexType> + <xs:attribute type="xs:string" name="field-name" use="required" /> + <xs:attribute name="operator" default="equals"> + <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="in" /> + <xs:enumeration value="not-in" /> + <xs:enumeration value="between" /> + <xs:enumeration value="like" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute type="xs:string" name="from-field" /> + <xs:attribute type="xs:string" name="value" /> + <xs:attribute name="ignore-if-null" default="false"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="true" /> + <xs:enumeration value="false" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="ignore-if-empty" default="false"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="true" /> + <xs:enumeration value="false" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="ignore-case" default="false"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="true" /> + <xs:enumeration value="false" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="ignore" default="false"> + <xs:annotation> + <xs:documentation> + Ignore the condition if flag is true. + Defaults to false. + </xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:complexType> + </xs:element> + <xs:element name="condition-object"> + <xs:complexType> + <xs:attribute type="xs:string" name="field" use="required" /> + </xs:complexType> + </xs:element> + <xs:element name="select-field"> + <xs:complexType> + <xs:attribute type="xs:string" name="field-name" use="required" /> + </xs:complexType> + </xs:element> + <xs:element name="order-by"> + <xs:complexType> + <xs:attribute type="xs:string" name="field-name" use="required" /> + </xs:complexType> + </xs:element> + <xs:element name="limit-range"> + <xs:complexType> + <xs:attribute name="start" type="xs:string" use="required"> + <xs:annotation> + <xs:documentation>Should resolve into a non-negative integer.</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="size" type="xs:string" use="required"> + <xs:annotation> + <xs:documentation>Should resolve into a non-negative integer.</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:complexType> + </xs:element> + <xs:element name="limit-view"> + <xs:complexType> + <xs:attribute name="view-index" type="xs:string" use="required"> + <xs:annotation> + <xs:documentation>Should resolve into a non-negative integer.</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="view-size" type="xs:string" use="required"> + <xs:annotation> + <xs:documentation>Should resolve into a positive integer.</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:complexType> + </xs:element> + <xs:element name="use-iterator" /> + <xs:element name="field-map"> + <xs:complexType> + <xs:attribute type="xs:string" name="field-name" use="required" /> + <xs:attribute type="xs:string" name="from-field" /> + <xs:attribute type="xs:string" name="value" /> + </xs:complexType> + </xs:element> +</xs:schema> Modified: ofbiz/site/dtds/widget-form.xsd URL: http://svn.apache.org/viewvc/ofbiz/site/dtds/widget-form.xsd?rev=1649676&r1=1649675&r2=1649676&view=diff ============================================================================== --- ofbiz/site/dtds/widget-form.xsd (original) +++ ofbiz/site/dtds/widget-form.xsd Mon Jan 5 21:51:13 2015 @@ -18,6 +18,7 @@ specific language governing permissions under the License. --> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> + <xs:include schemaLocation="http://ofbiz.apache.org/dtds/widget-common.xsd" /> <!-- ================== FORMS ==================== --> <xs:element name="forms"> @@ -1798,7 +1799,6 @@ under the License. </xs:element> <!-- ================== ACTIONS ==================== --> - <xs:element name="AllActions" abstract="true"/> <xs:element name="actions"> <xs:complexType> <xs:sequence> @@ -1813,42 +1813,6 @@ under the License. </xs:sequence> </xs:complexType> </xs:element> - <xs:element name="property-map" substitutionGroup="AllActions"> - <xs:complexType> - <xs:attribute type="xs:string" name="resource" use="required" /> - <xs:attribute type="xs:string" name="map-name" use="required" /> - <xs:attribute name="global" default="false"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="true" /> - <xs:enumeration value="false" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - </xs:complexType> - </xs:element> - <xs:element name="property-to-field" substitutionGroup="AllActions"> - <xs:complexType> - <xs:attribute type="xs:string" name="resource" use="required" /> - <xs:attribute type="xs:string" name="property" use="required" /> - <xs:attribute type="xs:string" name="field" use="required" /> - <xs:attribute type="xs:string" name="default" /> - <xs:attribute name="no-locale" default="false"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="true" /> - <xs:enumeration value="false" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute type="xs:string" name="arg-list-name" /> - </xs:complexType> - </xs:element> - <xs:element name="script" substitutionGroup="AllActions"> - <xs:complexType> - <xs:attribute type="xs:string" name="location" use="required" /> - </xs:complexType> - </xs:element> <xs:element name="service" substitutionGroup="AllActions"> <xs:complexType> <xs:sequence> @@ -1873,44 +1837,7 @@ under the License. </xs:attribute> </xs:complexType> </xs:element> - <xs:element name="set" substitutionGroup="AllActions"> - <xs:complexType> - <xs:attribute type="xs:string" name="field" use="required" /> - <xs:attribute type="xs:string" name="from-field" /> - <xs:attribute type="xs:string" name="value" /> - <xs:attribute type="xs:string" name="default-value" /> - <xs:attribute name="global" default="false"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="true" /> - <xs:enumeration value="false" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="type" default="String"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="PlainString" /> - <xs:enumeration value="String" /> - <xs:enumeration value="BigDecimal" /> - <xs:enumeration value="Double" /> - <xs:enumeration value="Float" /> - <xs:enumeration value="List" /> - <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:enumeration value="NewList" /> - <xs:enumeration value="NewMap" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - </xs:complexType> - </xs:element> - + <xs:element name="call-parent-actions" substitutionGroup="AllActions" /> <xs:element name="entity-and" substitutionGroup="AllActions"> <xs:complexType> <xs:sequence> @@ -1923,8 +1850,7 @@ under the License. <xs:element ref="use-iterator" /> </xs:choice> </xs:sequence> - <xs:attribute name="entity-name" type="xs:string" use="required" /> - <xs:attribute name="list" type="xs:string" use="optional" /> + <xs:attribute type="xs:string" name="entity-name" use="required" /> <xs:attribute name="use-cache" default="false"> <xs:simpleType> <xs:restriction base="xs:token"> @@ -1942,6 +1868,7 @@ under the License. </xs:restriction> </xs:simpleType> </xs:attribute> + <xs:attribute type="xs:string" name="list" /> <xs:attribute name="result-set-type" default="scroll"> <xs:simpleType> <xs:restriction base="xs:token"> @@ -1969,8 +1896,7 @@ under the License. <xs:element ref="use-iterator" /> </xs:choice> </xs:sequence> - <xs:attribute name="entity-name" type="xs:string" use="required" /> - <xs:attribute name="list" type="xs:string" use="optional" /> + <xs:attribute type="xs:string" name="entity-name" use="required" /> <xs:attribute name="use-cache" default="false"> <xs:simpleType> <xs:restriction base="xs:token"> @@ -1996,7 +1922,8 @@ under the License. </xs:restriction> </xs:simpleType> </xs:attribute> - <xs:attribute name="delegator-name" /> + <xs:attribute type="xs:string" name="delegator-name" /> + <xs:attribute type="xs:string" name="list" /> <xs:attribute name="result-set-type" default="scroll"> <xs:simpleType> <xs:restriction base="xs:token"> @@ -2007,172 +1934,4 @@ under the License. </xs:attribute> </xs:complexType> </xs:element> - <xs:element name="entity-one" substitutionGroup="AllActions"> - <xs:complexType> - <xs:sequence> - <xs:element minOccurs="0" maxOccurs="unbounded" ref="field-map" /> - <xs:element minOccurs="0" maxOccurs="unbounded" ref="select-field" /> - </xs:sequence> - <xs:attribute type="xs:string" name="entity-name" use="required" /> - <xs:attribute type="xs:string" name="value-field" /> - <xs:attribute name="use-cache" default="false"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="true" /> - <xs:enumeration value="false" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="auto-field-map" default="true"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="true" /> - <xs:enumeration value="false" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - </xs:complexType> - </xs:element> - - <xs:element name="condition-expr"> - <xs:complexType> - <xs:attribute name="field-name" type="xs:string" use="required" /> - <xs:attribute name="operator" default="equals"> - <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="in" /> - <xs:enumeration value="between" /> - <xs:enumeration value="like" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="from-field" type="xs:string" /> - <xs:attribute name="value" type="xs:string" /> - <xs:attribute name="ignore-if-null" default="false"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="true" /> - <xs:enumeration value="false" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="ignore-if-empty" default="false"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="true" /> - <xs:enumeration value="false" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="ignore-case" default="false"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="true" /> - <xs:enumeration value="false" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="ignore" default="false"> - <xs:annotation> - <xs:documentation> - Ignore the condition if flag is true. - Defaults to false. - </xs:documentation> - </xs:annotation> - </xs:attribute> - </xs:complexType> - </xs:element> - <xs:element name="condition-list"> - <xs:complexType> - <xs:choice maxOccurs="unbounded"> - <xs:element ref="condition-expr" /> - <xs:element ref="condition-list" /> - <xs:element ref="condition-object" /> - </xs:choice> - <xs:attribute name="combine" default="and"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="and" /> - <xs:enumeration value="or" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - </xs:complexType> - </xs:element> - <xs:element name="condition-object"> - <xs:complexType> - <xs:attribute type="xs:string" name="field" use="required" /> - </xs:complexType> - </xs:element> - <xs:element name="field-map"> - <xs:complexType> - <xs:attribute type="xs:string" name="field-name" use="required" /> - <xs:attribute type="xs:string" name="from-field" /> - <xs:attribute type="xs:string" name="value" /> - </xs:complexType> - </xs:element> - <xs:element name="having-condition-list"> - <xs:complexType> - <xs:choice maxOccurs="unbounded"> - <xs:element ref="condition-expr" /> - <xs:element ref="condition-list" /> - <xs:element ref="condition-object" /> - </xs:choice> - <xs:attribute name="combine" default="and"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="and" /> - <xs:enumeration value="or" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - </xs:complexType> - </xs:element> - <xs:element name="limit-range"> - <xs:complexType> - <xs:attribute name="start" type="xs:string" use="required"> - <xs:annotation> - <xs:documentation>Should resolve into a non-negative integer.</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="size" type="xs:string" use="required"> - <xs:annotation> - <xs:documentation>Should resolve into a non-negative integer.</xs:documentation> - </xs:annotation> - </xs:attribute> - </xs:complexType> - </xs:element> - <xs:element name="limit-view"> - <xs:complexType> - <xs:attribute name="view-index" type="xs:string" use="required"> - <xs:annotation> - <xs:documentation>Should resolve into a non-negative integer.</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="view-size" type="xs:string" use="required"> - <xs:annotation> - <xs:documentation>Should resolve into a positive integer.</xs:documentation> - </xs:annotation> - </xs:attribute> - </xs:complexType> - </xs:element> - <xs:element name="use-iterator" /> - <xs:element name="order-by"> - <xs:complexType> - <xs:attribute type="xs:string" name="field-name" use="required" /> - </xs:complexType> - </xs:element> - <xs:element name="select-field"> - <xs:complexType> - <xs:attribute type="xs:string" name="field-name" use="required" /> - </xs:complexType> - </xs:element> - - <xs:element name="call-parent-actions" substitutionGroup="AllActions" /> </xs:schema> Modified: ofbiz/site/dtds/widget-menu.xsd URL: http://svn.apache.org/viewvc/ofbiz/site/dtds/widget-menu.xsd?rev=1649676&r1=1649675&r2=1649676&view=diff ============================================================================== --- ofbiz/site/dtds/widget-menu.xsd (original) +++ ofbiz/site/dtds/widget-menu.xsd Mon Jan 5 21:51:13 2015 @@ -18,6 +18,7 @@ specific language governing permissions under the License. --> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> + <xs:include schemaLocation="http://ofbiz.apache.org/dtds/widget-common.xsd" /> <xs:element name="menus"> <xs:complexType> <xs:sequence> @@ -96,7 +97,32 @@ under the License. <xs:element name="menu-item"> <xs:complexType> <xs:sequence> - <xs:element minOccurs="0" ref="condition" /> + <xs:element name="condition" minOccurs="0"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="ConditionRootType"> + <xs:attribute type="xs:string" name="pass-style"> + <xs:annotation> + <xs:documentation> + If a pass-style provided and the condition passes, the widget-style of + the parent menu-item is set with the pass-style. If no pass-style is given, + the widget-style is not changed. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="disabled-style"> + <xs:annotation> + <xs:documentation> + If a disabled-style provided and the condition fails, the disabled-style of + the parent menu-item is set with the disabled-style and processing is allowed to continue. + If no disabled-style is given, the widget-style is not changed and the menu-item is not rendered. + </xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> <xs:element minOccurs="0" ref="actions" /> <xs:element minOccurs="0" ref="link" /> <xs:element minOccurs="0" maxOccurs="unbounded" ref="menu-item" /> @@ -294,8 +320,6 @@ under the License. </xs:complexType> </xs:element> - <!-- ================ ACTIONS ================ --> - <xs:element name="AllActions" abstract="true"/> <xs:element name="actions"> <xs:complexType> <xs:sequence> @@ -303,27 +327,20 @@ under the License. </xs:sequence> </xs:complexType> </xs:element> - <xs:element name="property-map" substitutionGroup="AllActions"> + <xs:element name="entity-and" substitutionGroup="AllActions"> <xs:complexType> - <xs:attribute type="xs:string" name="resource" use="required" /> - <xs:attribute type="xs:string" name="map-name" use="required" /> - <xs:attribute name="global" default="false"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="true" /> - <xs:enumeration value="false" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - </xs:complexType> - </xs:element> - <xs:element name="property-to-field" substitutionGroup="AllActions"> - <xs:complexType> - <xs:attribute type="xs:string" name="resource" use="required" /> - <xs:attribute type="xs:string" name="property" use="required" /> - <xs:attribute type="xs:string" name="field" use="required" /> - <xs:attribute type="xs:string" name="default" /> - <xs:attribute name="no-locale" default="false"> + <xs:sequence> + <xs:element maxOccurs="unbounded" ref="field-map" /> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="select-field" /> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="order-by" /> + <xs:choice minOccurs="0"> + <xs:element ref="limit-range" /> + <xs:element ref="limit-view" /> + <xs:element ref="use-iterator" /> + </xs:choice> + </xs:sequence> + <xs:attribute type="xs:string" name="entity-name" use="required" /> + <xs:attribute name="use-cache" default="false"> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="true" /> @@ -331,166 +348,45 @@ under the License. </xs:restriction> </xs:simpleType> </xs:attribute> - <xs:attribute type="xs:string" name="arg-list-name" /> - </xs:complexType> - </xs:element> - <xs:element name="script" substitutionGroup="AllActions"> - <xs:complexType> - <xs:attribute type="xs:string" name="location" use="required" /> - </xs:complexType> - </xs:element> - <xs:element name="set" substitutionGroup="AllActions"> - <xs:complexType> - <xs:attribute type="xs:string" name="field" use="required" /> - <xs:attribute type="xs:string" name="from-field" /> - <xs:attribute type="xs:string" name="value" /> - <xs:attribute type="xs:string" name="default-value" /> - <xs:attribute name="global" default="false"> + <xs:attribute name="filter-by-date" default="false"> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="true" /> <xs:enumeration value="false" /> + <xs:enumeration value="by-name" /> </xs:restriction> </xs:simpleType> </xs:attribute> - <xs:attribute name="type" default="String"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="PlainString" /> - <xs:enumeration value="String" /> - <xs:enumeration value="BigDecimal" /> - <xs:enumeration value="Double" /> - <xs:enumeration value="Float" /> - <xs:enumeration value="List" /> - <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:enumeration value="NewList" /> - <xs:enumeration value="NewMap" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="to-scope" default="screen"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="screen" /> - <xs:enumeration value="user" /> - <xs:enumeration value="application" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="from-scope" default="screen"> + <xs:attribute type="xs:string" name="list" use="required" /> + <xs:attribute name="result-set-type" default="scroll"> <xs:simpleType> <xs:restriction base="xs:token"> - <xs:enumeration value="screen" /> - <xs:enumeration value="user" /> - <xs:enumeration value="application" /> + <xs:enumeration value="forward" /> + <xs:enumeration value="scroll" /> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> </xs:element> - - <!-- ================ CONDITIONS ================ --> - <xs:element name="AllConditionals" abstract="true"/> - <xs:element name="condition"> - <xs:complexType> - <xs:sequence> - <xs:element minOccurs="1" maxOccurs="1" ref="AllConditionals" /> - </xs:sequence> - <xs:attribute type="xs:string" name="pass-style"> - <xs:annotation> - <xs:documentation> - If a pass-style provided and the condition passes, the widget-style of - the parent menu-item is set with the pass-style. If no pass-style is given, - the widget-style is not changed. - </xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute type="xs:string" name="disabled-style"> - <xs:annotation> - <xs:documentation> - If a disabled-style provided and the condition fails, the disabled-style of - the parent menu-item is set with the disabled-style and processing is allowed to continue. - If no disabled-style is given, the widget-style is not changed and the menu-item is not rendered. - </xs:documentation> - </xs:annotation> - </xs:attribute> - </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:element name="entity-condition" substitutionGroup="AllActions"> <xs:complexType> <xs:sequence> - <xs:element maxOccurs="unbounded" ref="AllConditionals"/> + <xs:choice minOccurs="0"> + <xs:element ref="condition-expr" /> + <xs:element ref="condition-list" /> + <xs:element ref="condition-object" /> + </xs:choice> + <xs:element minOccurs="0" ref="having-condition-list" /> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="select-field" /> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="order-by" /> + <xs:choice minOccurs="0"> + <xs:element ref="limit-range" /> + <xs:element ref="limit-view" /> + <xs:element ref="use-iterator" /> + </xs:choice> </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-service-permission" substitutionGroup="AllConditionals"> - <xs:complexType> - <xs:attribute type="xs:string" name="service-name" use="required" /> - <xs:attribute type="xs:string" name="resource-description" use="optional" /> - <xs:attribute name="main-action" use="optional"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="CREATE" /> - <xs:enumeration value="UPDATE" /> - <xs:enumeration value="DELETE" /> - <xs:enumeration value="VIEW" /> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - </xs:complexType> - </xs:element> - <xs:element name="if-has-permission" substitutionGroup="AllConditionals"> - <xs:complexType> - <xs:attribute type="xs:string" name="permission" use="required" /> - <xs:attribute type="xs:string" name="action" /> - </xs:complexType> - </xs:element> - <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:attribute type="xs:string" name="entity-name" use="required" /> - <xs:attribute type="xs:string" name="entity-id" use="required"> - <xs:annotation> - <xs:documentation>Can have multiple pipe separated values, but don't use spaces.</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute type="xs:string" name="target-operation" use="required"> - <xs:annotation> - <xs:documentation>Can have multiple pipe separated values, but don't use spaces.</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="display-fail-cond" default="false"> + <xs:attribute name="use-cache" default="false"> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="true" /> @@ -498,130 +394,33 @@ under the License. </xs:restriction> </xs:simpleType> </xs:attribute> - </xs:complexType> - </xs:element> - <xs:element name="permission-condition-getter"> - <xs:complexType> - <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:complexType> - </xs:element> - <xs:element name="related-role-getter"> - <xs:complexType> - <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:complexType> - </xs:element> - <xs:element name="auxiliary-value-getter"> - <xs:complexType> - <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:complexType> - </xs:element> - <xs:element name="if-validate-method" substitutionGroup="AllConditionals"> - <xs:annotation> - <xs:documentation>Calls a static Java method that takes a String and returns a boolean.</xs:documentation> - </xs:annotation> - <xs:complexType> - <xs:attribute name="field" use="required" /> - <xs:attribute name="method" use="required" /> - <xs:attribute name="class" default="org.ofbiz.base.util.UtilValidate" /> - </xs:complexType> - </xs:element> - <xs:element name="if-compare" substitutionGroup="AllConditionals"> - <xs:complexType> - <xs:attribute name="field" 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 name="value" use="required" /> - <xs:attribute name="type" default="String"> + <xs:attribute name="filter-by-date" default="false"> <xs:simpleType> <xs:restriction base="xs:token"> - <xs:enumeration value="PlainString" /> - <xs:enumeration value="String" /> - <xs:enumeration value="BigDecimal" /> - <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:enumeration value="true" /> + <xs:enumeration value="false" /> + <xs:enumeration value="by-name" /> </xs:restriction> </xs:simpleType> </xs:attribute> - <xs:attribute name="format" /> - </xs:complexType> - </xs:element> - <xs:element name="if-compare-field" substitutionGroup="AllConditionals"> - <xs:complexType> - <xs:attribute name="field" use="required" /> - <xs:attribute name="operator" use="required"> + <xs:attribute name="distinct" default="false"> <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:enumeration value="true" /> + <xs:enumeration value="false" /> </xs:restriction> </xs:simpleType> </xs:attribute> - <xs:attribute name="to-field" /> - <xs:attribute name="type" default="String"> + <xs:attribute type="xs:string" name="delegator-name" /> + <xs:attribute type="xs:string" name="list" use="required" /> + <xs:attribute name="result-set-type" default="scroll"> <xs:simpleType> <xs:restriction base="xs:token"> - <xs:enumeration value="PlainString" /> - <xs:enumeration value="String" /> - <xs:enumeration value="BigDecimal" /> - <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:enumeration value="forward" /> + <xs:enumeration value="scroll" /> </xs:restriction> </xs:simpleType> </xs:attribute> - <xs:attribute name="format" /> - </xs:complexType> - </xs:element> - <xs:element name="if-regexp" substitutionGroup="AllConditionals"> - <xs:complexType> - <xs:attribute name="field" use="required" /> - <xs:attribute name="expr" use="required" /> - </xs:complexType> - </xs:element> - <xs:element name="if-empty" substitutionGroup="AllConditionals"> - <xs:complexType> - <xs:attribute name="field" use="required" /> </xs:complexType> </xs:element> </xs:schema>