标签: xsd

在文本框中的树视图中显示XML模式数据

我是这个项目的新手。它在C#中的Visual Studio 2010中。我正在尝试在具有树视图的文本框中显示此XML模式。我在使其成为树状视图时遇到问题。

            DataSet dsM= new DataSet("M");
            string filePath = @"C:\Documents and Settings\Administrator\Desktop\M.xsd";
            dsM.ReadXml(filePath);
            System.IO.StringWriter swXML = new System.IO.StringWriter();
            dsM.WriteXmlSchema(swXML);
            textBox.Text = swXML.ToString();
Run Code Online (Sandbox Code Playgroud)

c# xml xsd visual-studio-2010

0
推荐指数
1
解决办法
4426
查看次数

如何为单个XSD元素强制执行两种类型之一?

我有一个名为"PRICE"的xml元素.

我想在这个字段中允许枚举值{MAX,MIN,UNAV}中的数字或其中一个.这可能与XSD有关吗?

此代码段演示了我想要的内容,但它无效:

       <xs:choice>
           <xs:element name="PRICE">
               <xs:simpleType>
                   <xs:restriction base="xs:string">
                       <xs:enumeration value="MAX"/>
                       <xs:enumeration value="MIN"/>
                       <xs:enumeration value="UNAV"/>
                   </xs:restriction>
               </xs:simpleType>
           </xs:element>
           <xs:element name="PRICE">
               <xs:simpleType>
                   <xs:restriction base="xs:float"/>
               </xs:simpleType>
           </xs:element>
       </xs:choice>
Run Code Online (Sandbox Code Playgroud)

xml xsd choice

0
推荐指数
1
解决办法
1582
查看次数

如何在xml-schema中声明一个类型?

我有一个类似下面的架构,color元素defaultinstance相同restriction(red/ green/ blue).我想将限制移到更高级别并color使用它设置所有元素(就像在Java/C#中声明类型或枚举一样)

我该怎么做?

<xs:element name="something">
    <xs:complexType>
        <xs:sequence>
            <xs:element name="instance" maxOccurs="unbounded">
                <xs:complexType>
                    <xs:attribute name="name" type="xs:string" use="required"/>
                    <xs:attribute name="color" use="required">
                        <xs:simpleType>
                            <xs:restriction base="xs:string">
                                <xs:enumeration value="red"/>
                                <xs:enumeration value="green"/>
                                <xs:enumeration value="blue"/>
                            </xs:restriction>
                        </xs:simpleType>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
            <xs:element name="default">
                <xs:complexType>
                    <xs:attribute name="color" use="required">
                        <xs:simpleType>
                            <xs:restriction base="xs:string">
                                <xs:enumeration value="red"/>
                                <xs:enumeration value="green"/>
                                <xs:enumeration value="blue"/>
                            </xs:restriction>
                        </xs:simpleType>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
</xs:element>
Run Code Online (Sandbox Code Playgroud)

xsd

0
推荐指数
1
解决办法
273
查看次数

XML Schema:全部,序列和组

我是第一次编写XML模式,我找到了一些有用的工具来帮助我编写它.

现在我处于一种奇怪的境地.我写的模式对某些工具有效,而对其他工具则无效.该模式是"所有","序列"和"组"的混合.这是我的XML架构:

<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
     <xsd:group name="test">

        <xsd:all>
                <xsd:element name="e2" minOccurs="0" maxOccurs="1"/>
                <xsd:element name="e3" minOccurs="0" maxOccurs="1"/>
                <xsd:element name="e4" minOccurs="0" maxOccurs="1"/>
        </xsd:all>
    </xsd:group>

    <xsd:element name="e0">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="e1" maxOccurs="unbounded"/>
                <xsd:group ref="test"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
</xsd:schema>
Run Code Online (Sandbox Code Playgroud)

这个架构是对的吗?这项工作直接与此验证这一个了,但XML工具插件记事本++说:"无法解析架构文件".

PS:我写了这个模式,因为我想要一个元素"e0",这样可以混合使用e1,e2,e3和e4.e2,e3和e4应出现0或1次,e1可能出现在有限时间内.例如,这个XML文件应该通过:

<e0>
   <e1/>
   <e1/>
   <e1/>
   <e1/>
   <e1/>
   <e2/>
</e0>

<e0>
   <e2/>
   <e3/>
   <e4/>
</e0>

<e0>
   <e1/>
   <e2/>
   <e3/>
   <e4/>
</e0>
Run Code Online (Sandbox Code Playgroud)

你知道另一种方法吗?

谢谢

xml schema xsd

0
推荐指数
1
解决办法
6047
查看次数

使用Java DOM Parser在XML NODE中创建换行符

我正在使用Java DOM创建动态XML文档.请在下面找到相应的代码

Element cond = doc.createElement("condition");
Text value = doc.createTextNode("simulation/sim-time-sec  ge  0.25 \r\n\r\n dss");
cond.appendChild(value);
event.appendChild(cond);
Run Code Online (Sandbox Code Playgroud)

上面的代码结果

<condition>simulation/sim-time-sec ge 0.25 dss</condition> 
Run Code Online (Sandbox Code Playgroud)

但我想要下面的节点

<condition>
 simulation/sim-time-sec ge 0.25
 dss
</condition> 
Run Code Online (Sandbox Code Playgroud)

请用Java建议解决方案.提前致谢.

java xml xsd dom

0
推荐指数
1
解决办法
3891
查看次数

为什么Go的encoding/xml.Decoder.Token()不会产生xml.Attr标记呢?

使用encoding/xml.Decoder我试图手动解析从http://www.khronos.org/files/collada_schema_1_4加载的XML文件

出于测试目的,我只是迭代文档打印出遇到的任何令牌类型:

func Test (r io.Reader) {
    var t xml.Token
    var pa *xml.Attr
    var a xml.Attr
    var co xml.Comment
    var cd xml.CharData
    var se xml.StartElement
    var pi xml.ProcInst
    var ee xml.EndElement
    var is bool
    var xd = xml.NewDecoder(r)
    for i := 0; i < 24; i++ {
        if t, err = xd.Token(); (err == nil) && (t != nil) {
            if a, is = t.(xml.Attr); is { print("ATTR\t"); println(a.Name.Local) }
            if pa, is = t.(*xml.Attr); is { print("*ATTR\t"); …
Run Code Online (Sandbox Code Playgroud)

xml xsd xml-attribute go xml-parsing

0
推荐指数
1
解决办法
2084
查看次数

XML正则表达式中DD-MM-YYYY日期格式的正则表达式是什么?

我想知道日期dd-mm-yyyy格式的正则表达式.规则是

·day·value必须不超过30,如果·month·是4,6,9或11中的一个,如果·month·是2,则不超过28且·year·不能被4整除,或者可以整除100,但不是400,如果·月·是2,则不超过29,·年·可以被400整除,或者被4整除但不能被100整除.

我想在我的xsd中使用xml正则表达式.

接受 - 29-02-2000, 31-05-2013, 30-04-2012

拒绝 - 29-02-1900, 31-04-2013, 30-02-2000

regex xml xsd date

0
推荐指数
1
解决办法
2698
查看次数

WSDL肥皂响应验证

我有一个wsdl定义了一个模式:

<xsd:schema elementFormDefault="unqualified" 
            targetNamespace="http://www.xpto.com/xpto">
Run Code Online (Sandbox Code Playgroud)

和元素:

<xsd:element name="insertResponse">
  <xsd:complexType>
    <xsd:sequence>
      <xsd:element maxOccurs="1" minOccurs="1" name="sys_id" 
                   type="xsd:string"/>
      <xsd:element maxOccurs="1" minOccurs="1" name="table" 
                   type="xsd:string"/>
      <xsd:element maxOccurs="1" minOccurs="1" name="display_name"  
                   type="xsd:string"/>
      <xsd:element maxOccurs="1" minOccurs="1" name="display_value"  
                   type="xsd:string"/>
      <xsd:element maxOccurs="1" minOccurs="1" name="status"  
                   type="xsd:string"/>
      <xsd:element maxOccurs="1" minOccurs="0" name="status_message"  
                   type="xsd:string"/>
      <xsd:element maxOccurs="1" minOccurs="0" name="error_message" 
                    type="xsd:string"/>
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>
Run Code Online (Sandbox Code Playgroud)

但是当我执行操作并获得响应时,SoapUI说它无效:

<SOAP-ENV:Envelope 
  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
  xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <SOAP-ENV:Body>
      <insertResponse xmlns="http://www.xpto.com/xpto">
         <sys_id>something</sys_id>
         <table>something</table>
         <display_name>number</display_name>
         <display_value>something</display_value>
         <status>something</status>
      </insertResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Run Code Online (Sandbox Code Playgroud)

SoapUI消息(包含易读性的行):

line 4: Expected element 'sys_id' instead of
'sys_id@http://www.xpto.com/xpto' here in element 
insertResponse@http://www.xpto.com/xpto
Run Code Online (Sandbox Code Playgroud)

如果我将WSDL更改为包含elementFormDefault="qualified",则在模式中,相同的响应是有效的.

为什么没有这个响应无效 …

xsd wsdl

0
推荐指数
1
解决办法
5624
查看次数

解析器配置异常从类路径资源解析XML

我正在尝试运行一个junit测试用例来测试applicationcontext是否已初始化并抛出以下错误.它是与xml还是java版本相关的东西.我该如何解决?

  org.springframework.beans.factory.BeanDefinitionStoreException: Parser configuration exception parsing XML from class path resource [tasospring-online-context.xml]; nested exception is javax.xml.parsers.ParserConfigurationException: Unable to validate using XSD: Your JAXP provider [org.apache.crimson.jaxp.DocumentBuilderFactoryImpl@82701e] does not support XML Schema. Are you running on Java 1.4 with Apache Crimson? Upgrade to Apache Xerces (or Java 1.5) for full XSD support.
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:404)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:243)
    at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:127)
    at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:93)
    at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)
    at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:537)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:451)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
    at com.roger.tas.manager.util.OnlineSpringBootStrapper.initialize(OnlineSpringBootStrapper.java:23) …
Run Code Online (Sandbox Code Playgroud)

java xml spring xsd xsd-validation

0
推荐指数
1
解决办法
1万
查看次数

样式表:SchemaLocation属性

在我的研究中,一旦我们有XML Schema Instance命名空间可用,我们就可以使用schemaLocation属性.

就它们在XML标记中的位置而言,命名空间是否始终位于模式位置之前?

这是我的样式表代码.

CarriageDelivery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:SchemaLocation="Carriage_Delivery.xsd"
Run Code Online (Sandbox Code Playgroud)

而我正在尝试切换xmlns:xsi属性的位置,xsi:SchemaLocation就像这样..

CarriageDelivery xsi:SchemaLocation="Carriage_Delivery.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Run Code Online (Sandbox Code Playgroud)

但在我生成的输出中,什么也没发生.

CarriageDelivery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:SchemaLocation="Carriage_Delivery.xsd"
Run Code Online (Sandbox Code Playgroud)

我希望我能得到一个解释,为什么它总是出现在最后.

xml xslt schema xsd

0
推荐指数
1
解决办法
138
查看次数

标签 统计

xsd ×10

xml ×8

java ×2

schema ×2

c# ×1

choice ×1

date ×1

dom ×1

go ×1

regex ×1

spring ×1

visual-studio-2010 ×1

wsdl ×1

xml-attribute ×1

xml-parsing ×1

xsd-validation ×1

xslt ×1