以文本方式查看主题

-  W3CHINA.ORG讨论区 - 语义网·描述逻辑·本体·RDF·OWL  (http://bbs.xml.org.cn/index.asp)
--  『 XML源码及示例(仅原创和转载) 』  (http://bbs.xml.org.cn/list.asp?boardid=32)
----  菜鸟请教解决load一个XML文件的问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=32&rootid=&id=40992)


--  作者:xushaoxi
--  发布时间:12/8/2006 5:02:00 PM

--  菜鸟请教解决load一个XML文件的问题
/***************需要load一个xml文件相应的code如下:*******************/

int nRetCode = 0;
CoInitialize(NULL);
IXMLDOMDocument2Ptr pXMLDoc = NULL;
HRESULT hr;
hr = pXMLDoc.CreateInstance(__uuidof(DOMDocument40));
if (FAILED(hr))
{
       printf("Failed to instantiate DOMDocument40 class\n");
       return -1;
}
pXMLDoc->async = VARIANT_FALSE;
if ( pXMLDoc->load("147.mp7.xml") != VARIANT_TRUE)
    {
       printf("Failed load xml data from file.\n%s\n",
          (LPCSTR)pXMLDoc->parseError->Getreason());
       return -1;
    }
else
    {
        printf("succeed!");
    }
/*****************************************************************/

/*******************相应的xml文件为*********************************/
<?xml version="1.0" encoding="UTF-8" ?>
- <Mpeg7 xmlns="urn:mpeg:mpeg7:schema:2001" xmlns:mpeg7="urn:mpeg:mpeg7:schema:2001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <Description xsi:type="ContentEntityType">
- <MultimediaContent xsi:type="VideoType">
- <Video id="VIDEO_147">
- <MediaLocator>
  <MediaUri>20041101_150000_CNN_LIVEFROM_ENG.mpg</MediaUri>
  </MediaLocator>
- <MediaTime>
  <MediaTimePoint>T00:00:00:0F30000</MediaTimePoint>
  <MediaDuration>PT00H28M19S29949N30000F</MediaDuration>
  </MediaTime>
</Video>
  </MultimediaContent>
  </Description>
  </Mpeg7>

/****************************************************************/

根据执行(LPCSTR)pXMLDoc->parseError->Getreason()函数所报出的错误是:
“Type '{urn:mpeg:mpeg7:schema:2001}ContentEntityType' is not find in Schema."
请问高手产生这个错误的原因是什么?将如何修改代码或工程项目才能解决这个问题呀?


--  作者:wbo2056
--  发布时间:12/24/2006 3:10:00 PM

--  
你可以用这个试试:
var xmlDoc=new ActiveXObject("MSXML2.DOMDocument.4.0");
xmlDoc.load("xmlfile.xml");
我在我这儿是用这个方法装载的,不知你那儿行不.
--  作者:Richards
--  发布时间:12/25/2006 2:46:00 PM

--  求助
以下是引用xushaoxi在2006-12-8 17:02:00的发言:
/***************需要load一个xml文件相应的code如下:*******************/

int nRetCode = 0;
CoInitialize(NULL);
IXMLDOMDocument2Ptr pXMLDoc = NULL;
HRESULT hr;
hr = pXMLDoc.CreateInstance(__uuidof(DOMDocument40));
  if (FAILED(hr))
  {
        printf("Failed to instantiate DOMDocument40 class\n");
        return -1;
  }
pXMLDoc->async = VARIANT_FALSE;
  if ( pXMLDoc->load("147.mp7.xml") != VARIANT_TRUE)
     {
        printf("Failed load xml data from file.\n%s\n",
           (LPCSTR)pXMLDoc->parseError->Getreason());
        return -1;
     }
else
     {
         printf("succeed!");
     }
/*****************************************************************/

/*******************相应的xml文件为*********************************/
  <?xml version="1.0" encoding="UTF-8" ?>
- <Mpeg7 xmlns="urn:mpeg:mpeg7:schema:2001" xmlns:mpeg7="urn:mpeg:mpeg7:schema:2001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <Description xsi:type="ContentEntityType">
- <MultimediaContent xsi:type="VideoType">
- <Video id="VIDEO_147">
- <MediaLocator>
   <MediaUri>20041101_150000_CNN_LIVEFROM_ENG.mpg</MediaUri>
   </MediaLocator>
- <MediaTime>
   <MediaTimePoint>T00:00:00:0F30000</MediaTimePoint>
   <MediaDuration>PT00H28M19S29949N30000F</MediaDuration>
   </MediaTime>
  </Video>
   </MultimediaContent>
   </Description>
   </Mpeg7>

/****************************************************************/

根据执行(LPCSTR)pXMLDoc->parseError->Getreason()函数所报出的错误是:
“Type '{urn:mpeg:mpeg7:schema:2001}ContentEntityType' is not find in Schema."
请问高手产生这个错误的原因是什么?将如何修改代码或工程项目才能解决这个问题呀?




--  作者:yjs_lh
--  发布时间:1/10/2007 5:14:00 AM

--  
它找不到你的Schema来验证。你可以试着指定一个有效的url路径。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms