Quais as tecnologias relacionadas a XML Eu tenho que aprender? (C # centrada)
Pergunta
No meu trabalho como desenvolvedor eu faço um monte de escrita XML e analisar usando C #. Eu li muito pouco sobre XAML, XSLT e esquemas XML na Wikipedia e eu não ver se eles iriam fazer o meu XML-driven de codificação mais fácil. Devo estudar qualquer uma dessas tecnologias? Qual deles? Qualquer outra?
Solução
Eles são todos diferentes.
- XAML é um exemplo de dados armazenados em xml (o mesmo que XHTML, etc.), utilizado no WCF / WPF / Silverlight etc
- XSLT é uma linguagem de transformação declarativa
- esquemas XML (XSD) definir xml válido
Cada um tem diferentes casos de uso, e todos são úteis para diferentes cenários. XSD vale a pena conhecer, pois permite ao autor documentos XML válidos, por exemplo.
Outras dicas
Eles são todos úteis, e depende das aplicações que você trabalhar, mas para mim, XML Schema é crucial. Ele permite que você definir, mais do que a DTD, a estrutura do que os seus documentos XML deve ser parecida. Você pode definir restrições mais detalhadas sobre o que valoriza elementos e atributos podem ter, e você pode facilmente validar um documento XML contra o esquema. Outra coisa chave com Schema, é todas as ligações de linguagem que tem. Você pode compilar o seu esquema em Java ou C ++ usando JAXB ou CodeSynthesis respectivamente. Isso permite que você não tem que lidar com quaisquer tags XML por conta própria, apenas estruturas de dados.