Administrator
|
Hi Adrian,
It's minor, but since recent changes (maybe not yours here) on ofbiz-properties.xsd I get this kind of messages when editing: Error: [Xerces] cvc-datatype-valid.1.2.3: 'pt_BR' is not a valid value of union type '#AnonType_lang'. @see: http://www.w3.org/TR/xmlschema11-2/ #cvc-datatype-valid Error: [Xerces] cvc-attribute.3: The value 'pt_BR' of attribute 'xml:lang' on element 'value' is not valid with respect to its type, '#AnonType_lang'. @see: http://www.w3.org/TR/xmlschema11-1/#cvc-attribute I had a quick look at http://www.w3.org/TR/xmlschema11-2/#cvc-datatype-valid but I can't really warp my head around this jargon :/ It's more clear here: http://www.opentag.com/xfaq_lang.htm#lang_xmllangvalues So I see no solutions, do you have an idea? Thanks Jacques Le 05/01/2015 22:51, [hidden email] a écrit : > 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> > > > |
Administrator
|
Le 10/01/2015 10:01, Jacques Le Roux a écrit :
> Hi Adrian, > > It's minor, but since recent changes (maybe not yours here) on ofbiz-properties.xsd I get this kind of messages when editing: > > Error: [Xerces] cvc-datatype-valid.1.2.3: 'pt_BR' is not a valid > value of union type '#AnonType_lang'. > @see: http://www.w3.org/TR/xmlschema11-2/ > #cvc-datatype-valid > Error: [Xerces] cvc-attribute.3: The value 'pt_BR' of attribute > 'xml:lang' on element 'value' is not valid with respect to > its type, '#AnonType_lang'. > @see: http://www.w3.org/TR/xmlschema11-1/#cvc-attribute > > I had a quick look at http://www.w3.org/TR/xmlschema11-2/#cvc-datatype-valid but I can't really warp my head around this jargon :/ > > It's more clear here: http://www.opentag.com/xfaq_lang.htm#lang_xmllangvalues BTW, if you prefer a more formal reference http://www.w3.org/TR/xmlschema11-2/#language > So I see no solutions, do you have an idea? Of course we could switch from underscores to dashes but I can't clearly remember what this entails Jacques > > Thanks > > Jacques > > Le 05/01/2015 22:51, [hidden email] a écrit : >> 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> >> >> >> > |
In reply to this post by Jacques Le Roux
The underscores need to be replaced with dashes.
pt_BR -> pt-BR I made the change to deliberately cause those validation errors so they will get fixed. Adrian Crum Sandglass Software www.sandglass-software.com On 1/10/2015 1:01 AM, Jacques Le Roux wrote: > Hi Adrian, > > It's minor, but since recent changes (maybe not yours here) on > ofbiz-properties.xsd I get this kind of messages when editing: > > Error: [Xerces] cvc-datatype-valid.1.2.3: 'pt_BR' is not a valid > value of union type '#AnonType_lang'. > @see: http://www.w3.org/TR/xmlschema11-2/ > #cvc-datatype-valid > Error: [Xerces] cvc-attribute.3: The value 'pt_BR' of attribute > 'xml:lang' on element 'value' is not valid with respect to > its type, '#AnonType_lang'. > @see: http://www.w3.org/TR/xmlschema11-1/#cvc-attribute > > I had a quick look at > http://www.w3.org/TR/xmlschema11-2/#cvc-datatype-valid but I can't > really warp my head around this jargon :/ > > It's more clear here: > http://www.opentag.com/xfaq_lang.htm#lang_xmllangvalues > > So I see no solutions, do you have an idea? > > Thanks > > Jacques > > Le 05/01/2015 22:51, [hidden email] a écrit : >> 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> >> >> >> |
Administrator
|
Le 10/01/2015 18:13, Adrian Crum a écrit : > The underscores need to be replaced with dashes. > > pt_BR -> pt-BR > > I made the change to deliberately cause those validation errors so they will get fixed. In a message between I wrote <<Of course we could switch from underscores to dashes but I can't clearly remember what this entails >> Nothing to fear? Else it's really a simple change of 26 390 occurences... Jacques > > Adrian Crum > Sandglass Software > www.sandglass-software.com > > On 1/10/2015 1:01 AM, Jacques Le Roux wrote: >> Hi Adrian, >> >> It's minor, but since recent changes (maybe not yours here) on >> ofbiz-properties.xsd I get this kind of messages when editing: >> >> Error: [Xerces] cvc-datatype-valid.1.2.3: 'pt_BR' is not a valid >> value of union type '#AnonType_lang'. >> @see: http://www.w3.org/TR/xmlschema11-2/ >> #cvc-datatype-valid >> Error: [Xerces] cvc-attribute.3: The value 'pt_BR' of attribute >> 'xml:lang' on element 'value' is not valid with respect to >> its type, '#AnonType_lang'. >> @see: http://www.w3.org/TR/xmlschema11-1/#cvc-attribute >> >> I had a quick look at >> http://www.w3.org/TR/xmlschema11-2/#cvc-datatype-valid but I can't >> really warp my head around this jargon :/ >> >> It's more clear here: >> http://www.opentag.com/xfaq_lang.htm#lang_xmllangvalues >> >> So I see no solutions, do you have an idea? >> >> Thanks >> >> Jacques >> >> Le 05/01/2015 22:51, [hidden email] a écrit : >>> 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> >>> >>> >>> > |
Keep in mind this commit is based on your work:
https://issues.apache.org/jira/browse/OFBIZ-4723 Adrian Crum Sandglass Software www.sandglass-software.com On 1/10/2015 10:11 AM, Jacques Le Roux wrote: > > Le 10/01/2015 18:13, Adrian Crum a écrit : >> The underscores need to be replaced with dashes. >> >> pt_BR -> pt-BR >> >> I made the change to deliberately cause those validation errors so >> they will get fixed. > > In a message between I wrote > > <<Of course we could switch from underscores to dashes but I can't > clearly remember what this entails >> > > Nothing to fear? Else it's really a simple change of 26 390 occurences... > > Jacques > >> >> Adrian Crum >> Sandglass Software >> www.sandglass-software.com >> >> On 1/10/2015 1:01 AM, Jacques Le Roux wrote: >>> Hi Adrian, >>> >>> It's minor, but since recent changes (maybe not yours here) on >>> ofbiz-properties.xsd I get this kind of messages when editing: >>> >>> Error: [Xerces] cvc-datatype-valid.1.2.3: 'pt_BR' is not a valid >>> value of union type '#AnonType_lang'. >>> @see: http://www.w3.org/TR/xmlschema11-2/ >>> #cvc-datatype-valid >>> Error: [Xerces] cvc-attribute.3: The value 'pt_BR' of attribute >>> 'xml:lang' on element 'value' is not valid with respect to >>> its type, '#AnonType_lang'. >>> @see: http://www.w3.org/TR/xmlschema11-1/#cvc-attribute >>> >>> I had a quick look at >>> http://www.w3.org/TR/xmlschema11-2/#cvc-datatype-valid but I can't >>> really warp my head around this jargon :/ >>> >>> It's more clear here: >>> http://www.opentag.com/xfaq_lang.htm#lang_xmllangvalues >>> >>> So I see no solutions, do you have an idea? >>> >>> Thanks >>> >>> Jacques >>> >>> Le 05/01/2015 22:51, [hidden email] a écrit : >>>> 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> >>>> >>>> >>>> >> |
Administrator
|
Thanks for the pointer, I had a doubt and it's now clear. I will double-check though...
Jacques Le 10/01/2015 19:21, Adrian Crum a écrit : > Keep in mind this commit is based on your work: > > https://issues.apache.org/jira/browse/OFBIZ-4723 > > Adrian Crum > Sandglass Software > www.sandglass-software.com > > On 1/10/2015 10:11 AM, Jacques Le Roux wrote: >> >> Le 10/01/2015 18:13, Adrian Crum a écrit : >>> The underscores need to be replaced with dashes. >>> >>> pt_BR -> pt-BR >>> >>> I made the change to deliberately cause those validation errors so >>> they will get fixed. >> >> In a message between I wrote >> >> <<Of course we could switch from underscores to dashes but I can't >> clearly remember what this entails >> >> >> Nothing to fear? Else it's really a simple change of 26 390 occurences... >> >> Jacques >> >>> >>> Adrian Crum >>> Sandglass Software >>> www.sandglass-software.com >>> >>> On 1/10/2015 1:01 AM, Jacques Le Roux wrote: >>>> Hi Adrian, >>>> >>>> It's minor, but since recent changes (maybe not yours here) on >>>> ofbiz-properties.xsd I get this kind of messages when editing: >>>> >>>> Error: [Xerces] cvc-datatype-valid.1.2.3: 'pt_BR' is not a valid >>>> value of union type '#AnonType_lang'. >>>> @see: http://www.w3.org/TR/xmlschema11-2/ >>>> #cvc-datatype-valid >>>> Error: [Xerces] cvc-attribute.3: The value 'pt_BR' of attribute >>>> 'xml:lang' on element 'value' is not valid with respect to >>>> its type, '#AnonType_lang'. >>>> @see: http://www.w3.org/TR/xmlschema11-1/#cvc-attribute >>>> >>>> I had a quick look at >>>> http://www.w3.org/TR/xmlschema11-2/#cvc-datatype-valid but I can't >>>> really warp my head around this jargon :/ >>>> >>>> It's more clear here: >>>> http://www.opentag.com/xfaq_lang.htm#lang_xmllangvalues >>>> >>>> So I see no solutions, do you have an idea? >>>> >>>> Thanks >>>> >>>> Jacques >>>> >>>> Le 05/01/2015 22:51, [hidden email] a écrit : >>>>> 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> >>>>> >>>>> >>>>> >>> > |
Free forum by Nabble | Edit this page |