Modelo XForms
- Página anterior Introdução ao XForms
- Próxima página Espaço de nomes XForms
O modelo XForms define um modelo para dados concentrados no formulário.
Quadro XForms
O papel do formulário HTML é coletar dados. O papel do XForms é o mesmo.
Através do XForms, os dados de entrada são descritos em duas partes diferentes:
- Modelo XForms (descrição de dados e lógica)
- Interface do usuário XForms (exibição e entrada de dados)
Modelo XFormsDefine o que é um formulário, quais dados ele contém e o que ele deve fazer.
Interface do usuário do XFormsDefine os domínios de entrada e como eles devem ser exibidos.
Modelo XForms
XForms ModeloUsado paraDescriçãoDado.
O modelo de dados é uma instância de documento XML (um modelo).
O modelo XForms define um modelo de dados dentro de um elemento <model>:
<model> <instance> <person> <fname/> <lname/> </person> </instance> <submission id="form1" action="submit.asp" method="get"/> </model>
Do exemplo acima, você pode ver que o modelo XForms usa um <instance> O elemento para definir o modelo XML de dados a serem coletados e usar um <submission> elemento para descrever como os dados devem ser enviados.
O modelo <submission>SemExpressar qualquer informação sobre a parte visível do formulário (interface do usuário).
Espaço de nomes XForms
Se você ignorou esses exemplos de espaço de nomes do XForms ou se você não está familiarizado com o conceito de espaço de nomes, apresentaremos esse conteúdo na próxima seção.
O elemento <instance>
Modelo XForms <instance> elemento para definir os dados a serem coletados.
XForms éColeta de dados para algum documento XMLNo modelo XForms, o elemento <instance> define este documento XML.
No exemplo acima, o exemplo de dados coletados pelo formulário (documento XML) pode parecer assim:
<person> <fname/> <lname/> </person>
Após a coleta de dados concluída, este documento XML pode parecer assim:
<person> <fname>John</fname> <lname>Smith</lname> </person>
O elemento <submission>
O modelo XForms usa <submission> elemento para descrever como os dados devem ser enviados.
O elemento <submission> pode definir o formulário e como ele deve ser enviado. No exemplo acima,id="form1" é usado para identificar este formulário,action="submit.asp" A propriedade define a URL para onde o formulário será enviado, enquanto method="get" A propriedade define o método usado durante o processo de envio do formulário.
Interface do usuário do XForms
XForms Interface do usuárioUsado paraExibição e entradaDado.
Os elementos da interface do usuário do XForms são chamadosControleOu controle de entrada:
<input ref="fname"><label>Nome</label></input> <input ref="lname"><label>Sobrenome</label></input> <submit submission="form1"><label>Enviar</label></submit>
No exemplo acima, dois elementos <input> definem dois campos de entrada. As propriedades ref="fname" e ref="lname" apontam para os elementos <fname> e <lname> do modelo XForms.
A propriedade submission="form1" do elemento <submit> pode referenciar o elemento <submission> do modelo XForms. O elemento submit geralmente é exibido como um botão.
Atente para o elemento <label> no exemplo. Com XForms, cada elemento de controle de entrada deve ter um elemento <label>.
Você precisará de um contêiner
XForms não foi projetado para funcionar de forma isolada. Não há nada chamado documento XForms.
XForms deve funcionar em outro documento XML. Ele pode ser executado no XHTML 1.0, e também funcionará no XHTML 2.0.
Agora, vamos combinar tudo
Se os combinarmos, o documento ficará assim:
<xforms> <model> <instance> <person> <fname/> <lname/> </person> </instance> <submission id="form1" action="submit.asp" method="get"/> </model> <input ref="fname"><label>Nome</label></input> <input ref="lname"><label>Sobrenome</label></input> <submit submission="form1"><label>Enviar</label></submit> </xforms>
A página será exibida assim:

Processador XForms
Integrado no navegador Processador XFormsSerá responsável por submeter dados XForms ao destino.
Os dados podem ser submetidos como XML, algo assim:
<person> <fname>David</fname> <lname>Smith</lname> </person>
Ou submetido como texto, algo assim:
fname=David;lname=Smith
- Página anterior Introdução ao XForms
- Próxima página Espaço de nomes XForms