Especificações XSD dos formulários Vitruvio
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

152 lines
5.7 KiB

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<!-- Parametros comuns nos Campos -->
<xs:include schemaLocation="vitruvio-form-common-attrs.xsd" />
<xs:include schemaLocation="vitruvio-form-field-validators.xsd" />
<xs:include schemaLocation="vitruvio-form-field-events.xsd" />
<!--
Componentes de aplicacao especifica, geralmente associados a dados internos do Vitruvio
-->
<!-- Atribute groups -->
<xs:attributeGroup name="usercontext-attrs">
<xs:attribute name="load" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="none"/>
<xs:enumeration value="processInitiator"/>
<xs:enumeration value="taskAssignee"/>
<xs:enumeration value="loggedUser"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:attributeGroup>
<xs:complexType name="loadInfo">
<xs:attributeGroup ref="usercontext-attrs" />
</xs:complexType>
<xs:complexType name="loadOrBind">
<xs:choice>
<xs:element name="load" type="loadInfo" />
<xs:element name="bind" type="bindInfo" />
</xs:choice>
</xs:complexType>
<!-- Campo para selecionar/visualizar usuarios do Vitruvio -->
<xs:complexType name="UserField">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="validation" type="fieldValidators" minOccurs="0" maxOccurs="1" />
<xs:element name="events" type="allEvents" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attributeGroup ref="fieldAttrs" />
<xs:attributeGroup ref="usercontext-attrs" />
<xs:attribute name="modelMember" type="xs:boolean" />
</xs:complexType>
<xs:complexType name="UserComboBox">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="validation" type="fieldValidators" minOccurs="0" maxOccurs="1" />
<xs:element name="events" type="allEvents" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attributeGroup ref="fieldAttrs" />
<xs:attributeGroup ref="usercontext-attrs" />
<xs:attribute name="modelMember" type="xs:boolean" />
<xs:attribute name="onlyActiveUsers" type="xs:boolean" />
<xs:attribute name="bindTagField" type="xs:string" />
</xs:complexType>
<xs:complexType name="UserMultiSelect">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="validation" type="fieldValidators" minOccurs="0" maxOccurs="1" />
<xs:element name="events" type="allEvents" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="multivalue" type="xs:boolean" fixed="true" use="required" />
<xs:attribute name="modelMember" type="xs:boolean" />
<xs:attributeGroup ref="fieldAttrs" />
</xs:complexType>
<xs:complexType name="RoleMultiSelect">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="validation" type="fieldValidators" minOccurs="0" maxOccurs="1" />
<xs:element name="events" type="allEvents" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="multivalue" type="xs:boolean" fixed="true" use="required" />
<xs:attribute name="modelMember" type="xs:boolean" />
<xs:attributeGroup ref="fieldAttrs" />
</xs:complexType>
<xs:complexType name="RoleComboBox">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="validation" type="fieldValidators" minOccurs="0" maxOccurs="1" />
<xs:element name="events" type="allEvents" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attributeGroup ref="fieldAttrs" />
<xs:attribute name="modelMember" type="xs:boolean" />
</xs:complexType>
<!-- Campo para exibir propriedades do usuario -->
<xs:complexType name="UserPropertyField">
<xs:sequence>
<xs:choice>
<xs:element name="load" type="loadInfo" />
<xs:element name="bind" type="bindInfo" />
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="fieldAttrs" />
<xs:attribute name="propertyKey" type="xs:string" use="required" />
<xs:attribute name="modelMember" type="xs:boolean" fixed="false" use="required" />
</xs:complexType>
<!-- Campo para exibir o codigo do processo -->
<xs:complexType name="ProcessInstanceIdField">
<xs:attributeGroup ref="fieldAttrs" />
<xs:attribute name="modelMember" type="xs:boolean" fixed="false" use="required"/>
<xs:attribute name="value" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="businessKey"/>
<xs:enumeration value="processInstanceId"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<!-- Campo para exibir informacoes de data e hora -->
<xs:complexType name="ContextDateTimeField">
<xs:attributeGroup ref="fieldAttrs" />
<xs:attribute name="modelMember" type="xs:boolean" fixed="false" use="required"/>
<xs:attribute name="value" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="currentDate"/>
<xs:enumeration value="taskStartDate"/>
<xs:enumeration value="taskEndDate"/>
<xs:enumeration value="processStartDate"/>
<xs:enumeration value="processFinishDate"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="MarcadorField">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="validation" type="fieldValidators" minOccurs="0" maxOccurs="1" />
<xs:element name="events" type="allEvents" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attributeGroup ref="numberTypefieldAttrs" />
<xs:attribute name="setProcessTag" type="xs:boolean" />
</xs:complexType>
<xs:complexType name="GoogleMapsField">
<xs:attributeGroup ref="stringFieldAttrs" />
<xs:attribute name="mapDraggable" type="xs:boolean" />
<xs:attribute name="zoom" type="xs:integer" />
<xs:attribute name="minZoom" type="xs:integer" />
<xs:attribute name="maxZoom" type="xs:integer" />
<xs:attribute name="disableDefaultUI" type="xs:boolean" />
</xs:complexType>
</xs:schema>