我正在尝试针对架构“http://xml.ra.se/e-arkiv/METS/CSPackageMETS.xsd”验证xml文件,并且我收到以下验证错误:
cvc-elt.4.2:无法将'premis:file'解析为元素'premis:object'的类型定义
在xml文件中我有:
<premis:object xmlns:premis="info:lc/xmlns/premis-v2" version="2.2" xsi:schemaLocation="info:lc/xmlns/premis-v2 http://www.loc.gov/standards/premis/v2/premis-v2-2.xsd" xsi:type="premis:file">
问题在于,据我所知,“premis:file”是根据premis定义的类型定义。但也许我没有正确解释这一点,我是模式的新手,实际上是xml。
我搜索过的信息可以帮助我了解xml文件中发生的情况以及它与模式的关系,以便了解错误但我无法找到这个问题的答案。我非常感谢你的帮助。
xml文件:
<?xml version="1.0" encoding="ASCII" standalone="no"?>
<mets:mets xmlns:mets="http://www.loc.gov/METS/" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" OBJID="bc198c15-cd31-41e6-98aa-5e85caf97d6c" PROFILE="http://xml.ra.se/e-arkiv/METS/CommonSpecificationSwedenPackageProfile.xml" TYPE="Economics" xsi:schemaLocation="http://www.loc.gov/METS/ http://www.loc.gov/standards/mets/version18/mets.xsd http://xml.ra.se/e-arkiv/METS/CSPackageMETS.xsd">
<mets:metsHdr CREATEDATE="2016-04-22T08:39:09"><mets:agent ROLE="ARCHIVIST" TYPE="ORGANIZATION"><mets:name>arkivbildare</mets:name></mets:agent><mets:agent ROLE="ARCHIVIST" TYPE="ORGANIZATION"><mets:name>nummer</mets:name></mets:agent><mets:agent OTHERTYPE="SOFTWARE" ROLE="ARCHIVIST" TYPE="OTHER"><mets:name>system</mets:name></mets:agent><mets:agent ROLE="CREATOR" TYPE="ORGANIZATION"><mets:name>levorg</mets:name></mets:agent><mets:altRecordID TYPE="SUBMISSIONAGREEMENT">bet;2016-05-31</mets:altRecordID></mets:metsHdr>
<mets:amdSec ID="amdSec_1">
<mets:techMD ID="techMD_1">
<mets:mdWrap MDTYPE="PREMIS:OBJECT">
<mets:xmlData>
<premis:object xmlns:premis="info:lc/xmlns/premis-v2" version="2.2" xsi:schemaLocation="info:lc/xmlns/premis-v2 http://www.loc.gov/standards/premis/v2/premis-v2-2.xsd" xsi:type="premis:file"> some elements </premis:object>
</mets:xmlData>
</mets:mdWrap>
</mets:techMD>
some elements
</mets:amdSec>
some elements
</mets:mets>
答案 0 :(得分:1)
添加 <document>
<alertTemplate>
<background>
<img src="/resources/images/background/bg_dark.jpg" />
</background>
<title>Title</title>
<button>
<text>Button 1</text>
</button>
<button>
<text>Button 2</text>
</button>
</alertTemplate>
</document>
名称空间前缀
xsi
到 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
元素,
premis:object
然后您将超越<premis:object version="2.2"
xmlns:premis="info:lc/xmlns/premis-v2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="info:lc/xmlns/premis-v2
http://www.loc.gov/standards/premis/v2/premis-v2-2.xsd"
xsi:type="premis:file"/>
问题。
当然,上述xsi:schemaLocation
元素不完整,因此您遇到的下一个错误将是
[错误] try.xml:6:40:cvc-complex-type.2.4.b:元素的内容 &#39; PREMIS:对象&#39;不完整。之一 &#39; {&#34;信息:LC / XMLNS / PREMIS-V2&#34;:为ObjectIdentifier}&#39;是预期的。
但可能是你未发布的XML的其余部分将解决这个问题。