我最近在Rowlex中遇到了一个问题。它与datetime检索相关。
在我的RDF文件中,有两个这样的实例:
<Ontologyowl:Note rdf:about="http://www.faraway_learning.edu/ehsanm/not106179">
<Ontologyowl:title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Test1</Ontologyowl:title>
<Ontologyowl:dateOfCreation rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2009-03-28T20:58:31Z</Ontologyowl:dateOfCreation>
<Ontologyowl:relatedToClass rdf:resource="clas000021"/>
<Ontologyowl:ranking_general_stuNum rdf:datatype="http://www.w3.org/2001/XMLSchema#int">0</Ontologyowl:ranking_general_stuNum>
<Ontologyowl:ranking_general_tchNum rdf:datatype="http://www.w3.org/2001/XMLSchema#int">0</Ontologyowl:ranking_general_tchNum>
<Ontologyowl:isShared rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">True</Ontologyowl:isShared>
<Ontologyowl:anonymousAuthor rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">False</Ontologyowl:anonymousAuthor>
</Ontologyowl:Note>
<Ontologyowl:Note rdf:about="http://www.faraway_learning.edu/ehsanm/not941065">
<Ontologyowl:title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Test 2</Ontologyowl:title>
<Ontologyowl:dateOfCreation rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2008-09-09T13:18:35Z</Ontologyowl:dateOfCreation>
<Ontologyowl:relatedToResource>
<Ontologyowl:LearningResource rdf:about="res323717"/>
</Ontologyowl:relatedToResource>
<Ontologyowl:ranking_general_stuNum rdf:datatype="http://www.w3.org/2001/XMLSchema#int">0</Ontologyowl:ranking_general_stuNum>
<Ontologyowl:ranking_general_tchNum rdf:datatype="http://www.w3.org/2001/XMLSchema#int">0</Ontologyowl:ranking_general_tchNum>
<Ontologyowl:isShared rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">True</Ontologyowl:isShared>
<Ontologyowl:anonymousAuthor rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">False</Ontologyowl:anonymousAuthor>
</Ontologyowl:Note>我使用以下代码来检索这两个实例的datetime:
OwlThing[] noteThing = rdfDoc.GetIndividuals(Note.Uri, false, false, false);
foreach (OwlThing item in noteThing)
{
DataRow dtRow = resultDt.NewRow();
dtRow["uri"] = ((Note_)item).ID;
dtRow["title"] = ((Note_)item).title.ToString();
dtRow["date"] = (DateTime)(((Note_)item).dateOfCreation);但是,part '((Note_)item).dateOfCreation‘的值与RDF值不同。对于上面的示例,它们是:
标题:测试2
取值: 2008-09-09T17:48:35Z
标题: Test1
取值: 2009-03-29T01:28:31Z
alt text http://img37.imageshack.us/img37/6489/26739420.jpg
我在这个过程中犯了什么错误吗?
提前谢谢你
发布于 2009-08-11 21:09:17
你的问题在日期时间上没有任何不一致之处。调试器屏幕截图窗口显示的日期时间与上述RdfDocument中的日期时间完全相同。
但是,由于计算机的区域设置,您可能会遇到日期时间问题。如果是这样,那么这是一个与ROWLEX无关的一般性问题。计算正确的日期时间不是一件微不足道的事情,它在很大程度上取决于您所在的地区、时区,甚至取决于您的鞋码:)
https://stackoverflow.com/questions/1251149
复制相似问题