我创建了一个文件系统本体。我将文件创建日期的范围设置为dateTime,如下面的代码所示。

<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/administrator/ontologies/2014/2/untitled-ontology-5#created">
  <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime"/>
  <rdfs:domain rdf:resource="http://www.semanticweb.org/administrator/ontologies/2014/2/untitled-ontology-5#File"/>
  <rdfs:comment>Time when the file was last accessed.</rdfs:comment>
  <rdfs:label>fileLastAccessed</rdfs:label>




在date create属性中,我正在存储java date Date date = new Date();(转换为String之后)

它正确存储为:

<File rdf:about="http://www.semanticweb.org/administrator/ontologies/2014/2/untitled-ontology-5#8117c6b9-3db8-4ab9-8de4-ba67f52ac615">
<created>Wed Apr 16 14:37:30 PKT 2014</created>
<hasPath>/Documents/Untitled Document 5</hasPath>




我的问题是:在XMLSchema#dateTime中存储Java Date是否安全/正确?

我是正确还是错误?

最佳答案

这不是XML架构dateTime格式正确的值。而是应采用以下格式:

yyyy-MM-dd'T'HH:mm:ss


您可以利用SimpleDateFormat来控制String表示形式,也可以使用XMLGregorianCalendar代替Date

08-17 17:44