как да xml схема с помощта на xsd валидатор за вътрешен текст?

имам xml файл със схема както по-долу. генерирах xsd валидиращ файл за валидиране. и сега искам да добавя валидиране, че вътрешният текст на елемента Tickettype може да бъде празен. и как мога да направя това?

<?xml version="1.0" encoding="utf-8" ?>
<AppStatusDetails>
  <Patronid>G5032788W</Patronid>
  <PatronidType>1</PatronidType>
  <Birthdate>19870716</Birthdate>
  <Tickettype>49</Tickettype>
</AppStatusDetails>

и имам xsd валидатор файл, както е показано по-долу, за валидиране на xml схемата

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="AppStatusDetails">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Patronid" type="xs:string" />
        <xs:element name="PatronidType" type="xs:unsignedByte" />
        <xs:element name="Birthdate" type="xs:unsignedInt" />
        <xs:element name="Tickettype" type="xs:unsignedByte" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

сега какъв атрибут трябва да добавите към xsd, за да направите вътрешния текст на типа билет нула


person subash    schedule 15.02.2014    source източник


Отговори (1)


Можете да добавите nillable="true" към XSD:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="AppStatusDetails">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Patronid" type="xs:string" />
        <xs:element name="PatronidType" type="xs:unsignedByte" />
        <xs:element name="Birthdate" type="xs:unsignedInt" />
        <xs:element name="Tickettype" type="xs:unsignedByte" nillable="true"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

И след това xsi:nil="true" до Tickettype в екземпляра на документа:

<?xml version="1.0" encoding="utf-8" ?>
<AppStatusDetails xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Patronid>G5032788W</Patronid>
  <PatronidType>1</PatronidType>
  <Birthdate>19870716</Birthdate>
  <Tickettype xsi:nil="true"></Tickettype>
</AppStatusDetails>
person kjhughes    schedule 15.02.2014