NodeIterator ni = ctx.getModel().getSeq(r).iterator();
while (ni.hasNext()) {
Statement stmt = element.asStatement((Resource) ni.nextNode());
if (stmt.getPredicate().equals(RDF.value)) {
// add literal value
RDFNode value = stmt.getObject();
if (value.isLiteral())
elem.appendChild(doc.createTextNode(value.toString()));
}
else {
Element e = noSchemaToElement(elem,stmt.getPredicate(),ctx);
if (e!=null) {
elem.appendChild(e);
noSchemaToXML(e,stmt.getObject(),qualify,ctx);
}
}
}
// add (unsequenced) properties
Set pending = element.unsequenced((Resource) rdf);
for (Iterator ui = pending.iterator(); ui.hasNext(); ) {
Statement stmt = (Statement) ui.next();
if (stmt.getPredicate().equals(RDF.value)) {
RDFNode n = stmt.getObject();
if (n.isLiteral()) {
Literal l = (Literal) n;
elem.appendChild(doc.createTextNode(l.getString()));
if (l.getLanguage()!=null) elem.setAttributeNS(XML,"lang",l.getLanguage());
}
}