元素类型“xs:element”必须后面跟有属性规范,“>”或“/>”

问题描述:

XML Schema存在问题。它导致验证错误,我想知道问题是什么。元素类型“xs:element”必须后面跟有属性规范,“>”或“/>”

<?xml version="1.0" encoding="UTF-8"?> 
    <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
     <xs:element name="row"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element type="xs:string" name="abstract"/> 
      <xs:element type="xs:string" name="bibliography"/> 
      <xs:element type="xs:string" name="catno"/> 
      <xs:element type="xs:string" name="citation"/> 
      <xs:element type="xs:string" name="copyrightnotice"/> 
      <xs:element type="xs:string" name="description"/ minOccurs="0" maxOccurs="unbounded"/> 
      <xs:element type="xs:string" name="image"/> 
      <xs:element type="xs:string" name="metadatamodificationdate"/> 
      <xs:element type="xs:byte" name="pagetotal"/> 
      <xs:element type="xs:string" name="publisher"/> 
      <xs:element type="xs:string" name="publishercity"/> 
      <xs:element type="xs:string" name="publishercountry"/> 
      <xs:element type="xs:string" name="sponsor"/> 
      <xs:element type="xs:string" name="title"/> 
      <xs:element type="xs:string" name="titlelargerentity"/> 
      <xs:element type="xs:float" name="datemonth"/> 
      <xs:element type="xs:string" name="datetype"/> 
      <xs:element type="xs:float" name="dateyear"/> 
      <xs:element type="xs:string" name="era"/> 
      <xs:element type="xs:string" name="language" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
      <xs:attribute type="xs:byte" name="modid"/> 
      <xs:attribute type="xs:short" name="recordid"/> 
     </xs:complexType> 
     </xs:element> 
    </xs:schema> 

代码中的xsd:schema有什么问题?有什么缺失?由于第2行不能验证?

元素声明结构不良时会出现此错误。查找不属于元素声明的字符或关键字。

在你的情况下,你在description声明中有一个流浪/

变化

<xs:element type="xs:string" name="description"/ minOccurs="0" maxOccurs="unbounded"/> 

<xs:element type="xs:string" name="description" minOccurs="0" maxOccurs="unbounded"/> 

,你将消除错误。