PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 25 → WX - Trabalhando com arquivos XSD
WX - Trabalhando com arquivos XSD
Iniciado por BOLLER ADRIANO, ago., 10 2016 9:18 PM - Sem resposta
Membro registado
3.655 mensagems
Popularité : +175 (223 votes)
Publicado em agosto, 10 2016 - 9:18 PM
Prezados,


WINDEV, WINDEV Mobile e Webdev incluem várias funções usadas para lidar com o código XML. O código XML usado deve estar em conformidade com o padrão XML. Veja a documentação específica para XML para obter mais detalhes. Veja XML para mais detalhes.

WINDEV, Webdev e WINDEV Móvel permitem que você importar arquivos no formato XSD. Um arquivo XSD contém a descrição do arquivo XML com o mesmo nome. Conhecer a estrutura de um documento XML permite verificar a validade deste documento. A linguagem de descrição para o conteúdo de um documento XSD também está no formato XML.
Um exemplo de arquivo XSD:

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="person">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="lastname" type="xsd:string"/>
<xsd:element name="firstname" type="xsd:string"/>
<xsd:element name="dob" type="xsd:date"/>
<xsd:element name="email" type="xsd:string" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>


Seguido de um arquivo XML válido:

<?xml version="1.0" encoding="UTF-8"?>
<person xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="person.xsd">
<lastname>Johnson</lastname>
<firstname>John</firstname>
<dob>1967-08-13</dob>
<email>test@yahoo.com</email>
</person>


Importando um arquivo XSD em um projeto
Para importar um arquivo XSD em um projeto:

No painel "Project Explorer", selecione "descrições XML".
Botão direito do mouse e selecione "Importar um arquivo de descrição XML".
Selecione o arquivo XSD da descrição para importar.
Validar. O XSD é adicionado automaticamente para o Project Explorer (na "descrição XML" ramo). Ele está pronto para usar.

Cuidado: Para operar em tempo de execução, o arquivo XSD não deve ser encontrado em um sub-diretório do projeto ou em um sub-diretório do executável.
Usando uma descrição importado para o projeto
Para usar a descrição do documento XML, tudo que você tem a fazer é usar as variáveis ​​geradas automaticamente pela importação.

Declare um documento XML no formato da descrição importado.
Por exemplo, se a descrição importado é chamado de "pessoa":

cMyDoc is XMLDocument <Description="person">
//Note: You can specify the file extension during the declaration. For example:
cMyDoc is XMLDocument <Description="person.xsd">
//Initialize the different variables that are included in the description of the XML document. For example, if the document //includes the last name and the first name of a person:
cMyDoc.person.lastname = "MOORE"
cMyDoc.person.firstname = "VINCE"


notas:

Cada elemento é separada por um ponto . .
A ajuda é proposto ao inserir os nomes das variáveis.
Se o nome de um elemento contém um caractere especial (traço por exemplo), ele deve ser colocado entre aspas simples:

CMyDoc . pessoa . ' id-pessoa ' = "valueid"


Várias funções podem ser usadas para manipular o arquivo XSD, a fim de validar a descrição do arquivo XML:

XMLValidDocument Valida um documento XML de um esquema XSD.
XMLValidNode Valida um nó XML, seus filhos e seus atributos de sua descrição no esquema XSD vinculada ao documento XML.
XMLSave Salva um documento XML em um arquivo.

Exemplo: criação completa de um arquivo de acordo com a descrição dada XSD no exemplo:

cMyDoc is XMLDocument <Description="person.xsd">

cMyDoc.person.lastname = "Moore"
cMyDoc.person.firstname = "Vince"
cMyDoc.person.dob = "19710211"
cMyDoc.person.email[1] = "vince.moore@mydomain.com"
cMyDoc.person.email[2] = "vince.moore@otherdomain.com"

XMLSave(cMyDoc, fExeDir() + ["\"] + "test.xml")

// Or with an intermediate check:
IF XMLValidDocument(cMyDoc) = True THEN
XMLSave(cMyDoc, fExeDir() + ["\"] + "test.xml")
IF ErrorOccurred = True THEN
Error("Unable to save the XML document", ErrorInfo())
ELSE
Info("OK", fExeDir() + ["\"] + "test.xml")
END
ELSE
Error("The XML document is invalid", ErrorInfo())
END


:merci:

--
Adriano José Boller
______________________________________________
Consultor e Representante Oficial da
PcSoft no Brasil
+55 (41) 9949 1800
adrianoboller@gmail.com
skype: adrianoboller
http://wxinformatica.com.br/
Mensagem modificada, agosto, 10 2016 - 9:20 PM