continue;
}
writer.writeStartElement(triple.getProperty().getURI());
RDFNode objectNode = triple.getObject();
if (!objectNode.isLiteral()) {
RDFResourceNode objectRes = (RDFResourceNode) objectNode;
if (objectRes.isAnonymous()) {
// Special rendering for lists
if (isObjectList(objectRes)) {
writer.writeParseTypeAttribute();
List<RDFNode> list = new ArrayList<RDFNode>();
toJavaList(objectRes, list);
for (RDFNode n : list) {
if (n.isAnonymous()) {
render((RDFResourceNode) n);
}
else {
if (n.isLiteral()) {
RDFLiteralNode litNode = (RDFLiteralNode) n;
writer.writeStartElement(OWLRDFVocabulary.RDFS_LITERAL.getURI());
if (litNode.getDatatype() != null) {
writer.writeDatatypeAttribute(litNode.getDatatype());
}
else if (litNode.getLang() != null) {
writer.writeLangAttribute(litNode.getLang());
}
writer.writeTextContent((litNode.getLiteral()));
writer.writeEndElement();
}
else {
writer.writeStartElement(RDF_DESCRIPTION.getURI());
writer.writeAboutAttribute(n.getURI());
writer.writeEndElement();
}
}
}
}
else {
render(objectRes);
}
}
else {
writer.writeResourceAttribute(objectRes.getURI());
}
}
else {
RDFLiteralNode rdfLiteralNode = ((RDFLiteralNode) objectNode);
if (rdfLiteralNode.getDatatype() != null) {