2016-08-03 5 views
1

Ich versuche, eine einfache XML-Datei mit einem einfachen XSD zu schreiben.cvc-complex-type.2.4.a: Ungültiger Inhalt wurde gefunden, beginnend mit Element Tag. Eine von {HiTemp} wird erwartet

Hier ist meine XML:

<?xml version="1.0" encoding="UTF-8"?> 
<forecast week="June 1st 2016" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:noNamespaceSchemaLocation="forecast.xsd"> 
    <day name="Monday"> 
     <HiTemp>84</HiTemp> 
     <LoTemp>74</LoTemp> 
     <Wind>SSE 18 mph</Wind> 
     <Humidity>59%</Humidity> 
     <DewPoint>68 degrees</DewPoint> 
     <Visibility>10 miles</Visibility> 
     <UVIndex>4 of 10</UVIndex> 
     <Sunrise>6:01 AM</Sunrise> 
     <Sunset>8:49 PM</Sunset> 
    </day> 
    <day name="Tuesday"> 
     <HiTemp>89</HiTemp> 
     <LoTemp>77</LoTemp> 
     <Wind>NW 6 mph</Wind> 
     <Humidity>68%</Humidity> 
     <DewPoint>54 degrees</DewPoint> 
     <Visibility>8 miles</Visibility> 
     <UVIndex>6 of 10</UVIndex> 
     <Sunrise>6:03 AM</Sunrise> 
     <Sunset>8:51 PM</Sunset> 
    </day> 
    <day name="Wednesday"> 
     <HiTemp>91</HiTemp> 
     <LoTemp>76</LoTemp> 
     <Wind>NE 27 mph</Wind> 
     <Humidity>48%</Humidity> 
     <DewPoint>44 degrees</DewPoint> 
     <Visibility>10 miles</Visibility> 
     <UVIndex>8 of 10</UVIndex> 
     <Sunrise>6:05 AM</Sunrise> 
     <Sunset>8:53 PM</Sunset> 
    </day> 
    <day name="Thursday"> 
     <HiTemp>91</HiTemp> 
     <LoTemp>74</LoTemp> 
     <Wind>SSE 20 mph</Wind> 
     <Humidity>61%</Humidity> 
     <DewPoint>68 degrees</DewPoint> 
     <Visibility>7 miles</Visibility> 
     <UVIndex>5 of 10</UVIndex> 
     <Sunrise>6:07 AM</Sunrise> 
     <Sunset>8:55 PM</Sunset> 
    </day> 
    <day name="Friday"> 
     <HiTemp>97</HiTemp> 
     <LoTemp>76</LoTemp> 
     <Wind>SE 10 mph</Wind> 
     <Humidity>79%</Humidity> 
     <DewPoint>54 degrees</DewPoint> 
     <Visibility>10 miles</Visibility> 
     <UVIndex>8 of 10</UVIndex> 
     <Sunrise>6:10 AM</Sunrise> 
     <Sunset>8:57 PM</Sunset> 
    </day> 
</forecast> 

Und meine XSD:

<?xml version="1.0" encoding="UTF-8"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" elementFormDefault="qualified" 
    vc:minVersion="1.1"> 

<xs:element name="forecast"> 
    <xs:complexType> 
     <xs:sequence maxOccurs="unbounded"> 
      <xs:element name="HiTemp" type="xs:integer"/> 
      <xs:element name="Lotemp" type="xs:integer"/> 
      <xs:element name="Wind" type="xs:string"/> 
      <xs:element name="Humidity" type="xs:string"/> 
      <xs:element name="Dewpoint" type="xs:string"/> 
      <xs:element name="Visibility" type="xs:string"/> 
      <xs:element name="UVIndex" type="xs:string"/> 
      <xs:element name="Sunrise" type="xs:time"/> 
      <xs:element name="Sunset" type="xs:time"/> 
     </xs:sequence> 
     <xs:attribute name="week" type="xs:string" use="required"/> 
    </xs:complexType> 
    </xs:element> 
</xs:schema> 

Der Fehler, dass ich in oXygen bekommen ist

cvc-Komplex-type.2.4 .a: Ungültiger Inhalt wurde gefunden, beginnend mit Element day. Einer von {HiTemp} wird erwartet.

Es ist wahrscheinlich etwas Einfaches. Ich habe nach anderen Antworten gesucht, aber ich kann nicht genau feststellen, was das bei mir verursacht, da es normalerweise etwas mit etwas anderem zu tun hat, was die anderen Antworten angeht.

Antwort

0

Ihre XSD benötigt einige Anpassungen, einschließlich:

  • Added day Wrapperelement mit name Attribut fehlt.
  • Korrigierter Fall von Lotemp und Dewpoint.

Hier ist Ihre XSD aktualisiert Ihre XML in der Lage sein zu überprüfen erfolgreich:

<?xml version="1.0" encoding="UTF-8"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
      xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" 
      elementFormDefault="qualified" 
      vc:minVersion="1.1"> 

    <xs:element name="forecast"> 
    <xs:complexType> 
     <xs:sequence> 
     <xs:element name="day" maxOccurs="unbounded"> 
      <xs:complexType> 
      <xs:sequence> 
       <xs:element name="HiTemp" type="xs:integer"/> 
       <xs:element name="LoTemp" type="xs:integer"/> 
       <xs:element name="Wind" type="xs:string"/> 
       <xs:element name="Humidity" type="xs:string"/> 
       <xs:element name="DewPoint" type="xs:string"/> 
       <xs:element name="Visibility" type="xs:string"/> 
       <xs:element name="UVIndex" type="xs:string"/> 
       <xs:element name="Sunrise" type="xs:string"/> 
       <xs:element name="Sunset" type="xs:string"/> 
      </xs:sequence> 
      <xs:attribute name="name" type="xs:string" use="required"/> 
      </xs:complexType> 
     </xs:element> 
     </xs:sequence> 
     <xs:attribute name="week" type="xs:string" use="required"/> 
    </xs:complexType> 
    </xs:element> 
</xs:schema> 
Verwandte Themen