是否有适用于.NET的Relaxer? Relaxer活着吗? RelaxNG可行吗?

我读到了关于Relaxer的事情,它将.RNG编译成Java类。 BBut网站http://www.relaxer.org/已经死了。

Q1:
Relaxer活着吗? 这是真的吗,有效吗? 从.RNG生成Java类是否合理?

Q2:
是否有适用于.NET的Relaxer? 是否有一个工具可以从RelaxNG模式生成C#类?

问题3: Javascript是否有松弛剂?

而且,最后

Q4:
RelaxNG活着吗? 它可行吗? 在REST / JSON世界中相关且有用吗? 人们还在使用它还是会褪色,这个好主意已经被淘汰了? 我知道这是主观的,但我想知道你的评估。 我在stackoverflow上看到只有9或10个RelaxNG Q,所以我质疑这项技术的相关性。 如果不是RelaxNG,那又怎样? WADL? 什么都没有


有关相关问题,请参阅维护JavaScript和C#对象模型之间的一致性 。

只需使用Mono的RelaxngValidatingReader。

我通过编译Mono Commons.Xml.Relaxng项目制作了NuGet包 。

PS:我在一些AlpineBits项目的生产中使用它。

XmlReader instance = new XmlTextReader ("instance.xml"); XmlReader grammar = new XmlTextReader ("grammar.rng"); using (RelaxngValidatingReader reader = new RelaxngValidatingReader (instance, grammar)) { try { while (!reader.EOF) { reader.Read(); } Console.WriteLine("validation succeeded"); } catch (Exception ex) { Console.WriteLine("validation failed with message:"); Console.WriteLine(ex.Message); } } 

而不是让这个问题在这里永远得不到答案 ,并且继续根本没有答案的理论实际上是一个非常确定的答案,我将自己提供一个回应。

答案:

  1. 不,各种迹象表明,Relaxer并不活着。

  2. .NET没有Relaxer

  3. Javascript没有Relaxer

  4. RelaxNG显然也死了还活着,只是看起来很稳定,因为它很稳定,但它被用作XSD的替代品。 最近的一个补充是在Saxon forSQuery的RelaxNGvalidation和由Charles Foster完成的XSLT 。

  5. 正如评论和Martin的回答中所提到的,.NET中的RelaxNGvalidation还有很多选择。

Interesting Posts