static void raptor_dot_serializer_write_node(raptor_serializer * serializer, const void* term, raptor_identifier_type type, raptor_uri* literal_datatype, const unsigned char * literal_language) { switch(type) { case RAPTOR_IDENTIFIER_TYPE_LITERAL: case RAPTOR_IDENTIFIER_TYPE_XML_LITERAL: raptor_dot_iostream_write_string(serializer->iostream, (const unsigned char*)term); if(literal_language && type == RAPTOR_IDENTIFIER_TYPE_LITERAL) { raptor_iostream_write_byte(serializer->iostream, '|'); raptor_iostream_write_string(serializer->iostream, "Language: "); raptor_iostream_write_string(serializer->iostream, literal_language); } if(type == RAPTOR_IDENTIFIER_TYPE_XML_LITERAL) { raptor_iostream_write_byte(serializer->iostream, '|'); raptor_iostream_write_string(serializer->iostream, "Datatype: "); raptor_iostream_write_string(serializer->iostream, raptor_xml_literal_datatype_uri_string); } else if(literal_datatype) { raptor_iostream_write_byte(serializer->iostream, '|'); raptor_iostream_write_string(serializer->iostream, "Datatype: "); raptor_dot_serializer_write_uri(serializer, (raptor_uri*)literal_datatype); } break; case RAPTOR_IDENTIFIER_TYPE_ANONYMOUS: raptor_iostream_write_counted_string(serializer->iostream, "_:", 2); raptor_iostream_write_string(serializer->iostream, term); break; case RAPTOR_IDENTIFIER_TYPE_RESOURCE: case RAPTOR_IDENTIFIER_TYPE_PREDICATE: raptor_dot_serializer_write_uri(serializer, (raptor_uri*)term); break; case RAPTOR_IDENTIFIER_TYPE_ORDINAL: case RAPTOR_IDENTIFIER_TYPE_UNKNOWN: default: RAPTOR_FATAL2("Unknown type %d", type); } }
static void raptor_dot_serializer_write_term(raptor_serializer * serializer, raptor_term* term) { switch(term->type) { case RAPTOR_TERM_TYPE_LITERAL: raptor_dot_iostream_write_string(serializer->iostream, term->value.literal.string); if(term->value.literal.language) { raptor_iostream_write_byte('|', serializer->iostream); raptor_iostream_string_write("Language: ", serializer->iostream); raptor_iostream_string_write(term->value.literal.language, serializer->iostream); } if(term->value.literal.datatype) { raptor_iostream_write_byte('|', serializer->iostream); raptor_iostream_string_write("Datatype: ", serializer->iostream); raptor_dot_serializer_write_uri(serializer, term->value.literal.datatype); } break; case RAPTOR_TERM_TYPE_BLANK: raptor_iostream_counted_string_write("_:", 2, serializer->iostream); raptor_iostream_string_write(term->value.blank.string, serializer->iostream); break; case RAPTOR_TERM_TYPE_URI: raptor_dot_serializer_write_uri(serializer, term->value.uri); break; case RAPTOR_TERM_TYPE_UNKNOWN: default: raptor_log_error_formatted(serializer->world, RAPTOR_LOG_LEVEL_ERROR, NULL, "Triple has unsupported term type %d", term->type); } }