Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 读取DTD或模式,并列出给定元素的所有有效子元素或属性_C#_Java_C++_Xml_Schema - Fatal编程技术网

C# 读取DTD或模式,并列出给定元素的所有有效子元素或属性

C# 读取DTD或模式,并列出给定元素的所有有效子元素或属性,c#,java,c++,xml,schema,C#,Java,C++,Xml,Schema,我想开发一个类似XML编辑器的应用程序。。当用户键入一个元素时,提供类似intellisense的特性,应用程序将读取DTD或模式,并列出有效的子元素和属性(类似于XML编辑器) 是否有一个API可以完成此任务?我不熟悉执行此任务的API 但是,如果您选择自己实现此功能,以下是一些想法: XML模式本身就是一个XML文件,它是根据元模式构建的。您可以轻松地使用一个现有的API将模式解组到一个对象结构中,以便在内存中轻松使用 DTD不是XML结构,但任何DTD都可以表示为简单模式。因此,您应该尝

我想开发一个类似XML编辑器的应用程序。。当用户键入一个元素时,提供类似intellisense的特性,应用程序将读取DTD或模式,并列出有效的子元素和属性(类似于XML编辑器)


是否有一个API可以完成此任务?

我不熟悉执行此任务的API

但是,如果您选择自己实现此功能,以下是一些想法:

  • XML模式本身就是一个XML文件,它是根据元模式构建的。您可以轻松地使用一个现有的API将模式解组到一个对象结构中,以便在内存中轻松使用
  • DTD不是XML结构,但任何DTD都可以表示为简单模式。因此,您应该尝试并找到将DTD转换为模式的方法(并应用您的模式解决方案)
HTH

您可能会发现以下内容很有用:

XSD4J是一个解析XML模式的库 将文件转换为Java结构 对象,将其转换回 XML DOM树(因此是纯文本) 再次强调,并允许执行 对XSD对象的若干查询。 该库目前支持大多数 真实世界的功能,如简单和 复杂类型、类型限制和 属性