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.

85 lines
3.9 KiB

<?xml version="1.0"?>
<xs:schema xmlns="http://www.davinti.com.br/vitruvio/form" xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.davinti.com.br/vitruvio/form"
elementFormDefault="qualified">
<!-- Parametros comuns nos Campos -->
<xs:include schemaLocation="vitruvio-subform-base.xsd" />
<xs:complexType name="vitruvio-form-default-button">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="caption" type="xs:string" use="required" />
<xs:attribute name="visible" type="xs:boolean" />
</xs:complexType>
<xs:complexType name="vitruvio-form-custom-button">
<xs:sequence>
<xs:element name="onClickScript" type="script" minOccurs="1" maxOccurs="1" />
<xs:element name="description" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required" />
<xs:attribute name="caption" type="xs:string" use="required" />
</xs:complexType>
<xs:complexType name="vitruvio-process-end-rules">
<xs:all>
<xs:element name="preConfirmCancelValidationScript" type="script" minOccurs="0" maxOccurs="1" />
<xs:element name="afterConfirmCancelValidationScript" type="script" minOccurs="0" maxOccurs="1" />
</xs:all>
</xs:complexType>
<!-- Componente de Form ROOT -->
<xs:complexType name="vitruvio-form">
<xs:complexContent>
<xs:extension base="vitruvio-subform-enabled-form">
<xs:sequence>
<xs:element name="buttons" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element name="save" type="vitruvio-form-default-button" minOccurs="0" maxOccurs="1" />
<xs:element name="complete" type="vitruvio-form-default-button" minOccurs="0" maxOccurs="1" />
<xs:element name="rollback" type="vitruvio-form-default-button" minOccurs="0" maxOccurs="1" />
<xs:element name="customButton" type="vitruvio-form-custom-button" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="loadWithPreviousForm" type="xs:boolean" />
<xs:attribute name="hideWhenFinished" type="xs:boolean" />
<xs:attribute name="requiredDurationNotes" type="xs:boolean" />
<xs:attribute name="shouldDisplayNextTask" type="xs:boolean" />
<xs:attribute name="shouldDisplayNextTaskWithoutConfirmation" type="xs:boolean" />
<xs:attribute name="preventAttach" type="xs:boolean" />
<xs:attribute name="minimumVersion" type="xs:string" />
<xs:attribute name="minimumVersionNotMeetMessage" type="xs:string" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- Por fim, a definicao dos elementos principais -->
<xs:element name="forms">
<xs:complexType>
<xs:sequence>
<xs:element name="library" type="library" minOccurs="0" maxOccurs="1" />
<xs:element name="descriptorScript" type="script" minOccurs="0" maxOccurs="1" />
<xs:element name="ProcessEndRules" type="vitruvio-process-end-rules" minOccurs="0" maxOccurs="1" />
<xs:element name="form" type="vitruvio-form" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="processKey" type="xs:string" />
<xs:attribute name="allowAttachments" type="xs:boolean" />
<xs:attribute name="allowDeleteAttachments" type="xs:boolean" />
<!-- Determina se as notas e anexos devem ser exibidas dentro do mesmo form, ou atraves de formularios externos -->
<xs:attribute name="embeddedNotes" type="xs:boolean" />
<xs:attribute name="embeddedNotesOrder" type="xs:positiveInteger" />
<xs:attribute name="embeddedAttachments" type="xs:boolean" />
<xs:attribute name="embeddedAttachmentsOrder" type="xs:positiveInteger" />
<xs:attribute name="showOnlyActiveTasks" type="xs:boolean" />
<xs:attribute name="showOnlyLastHistoricTask" type="xs:boolean" />
<xs:attribute name="requiredDurationNotes" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:schema>