Use normalization algorithm

master
teknomunk 1 year ago
parent f38e204f07
commit a290056b3c

@ -1 +1 @@
Subproject commit 021380b65db1dc447fef82baf1bb15e52bc1bab9
Subproject commit 67dd64fef873c6f3fa71cd30851ec1114d722ba7

@ -3,6 +3,10 @@
#include "model/ap/activity.h"
#include "rdf/serial.h"
#include "rdf/memory_store.h"
#include "rdf/normalize.h"
#include "collections/iface.h"
#include <string.h>
#include <stdio.h>
@ -40,32 +44,45 @@ struct rdf_serialize_field serial[] = {
{ NULL, sizeof(struct ap_activity) },
};
void debug_quad( struct rdf_quad* q )
{
printf( "%s %s %s %s\n", q->subject, q->predicate, q->object, q->graph );
}
void debug_emit_quad( struct rdf_serializer* rs, struct rdf_quad* q )
{
printf( "%s %s %s %s\n", q->subject, q->predicate, q->object, q->graph );
free(q->subject);
free(q->predicate);
free(q->object);
free(q->graph);
free(q);
rdf_quad_free(q);
}
void ap_activity_create_rsa_signature_2017( struct ap_activity* act )
{
printf( "ap_activity_create_rsa_signature_2017\n" );
// Serialize activity to RDF
struct rdf_serializer rs;
memset(&rs,0,sizeof(rs));
char* subject;
asprintf( &subject, "<%s>", act->id );
rs.subject = subject;
rs.graph = strdup(".");
rs.emit_quad = debug_emit_quad;
printf( "\nRDF:\n" );
struct rdf_memory_store* ms = rdf_memory_store_new();
rdf_memory_store_init_serializer( ms, &rs );
rdf_serialize_object( &rs, serial, act );
// Normalize
struct collection_iface i;
rdf_memory_store_as_collection( ms, &i );
rdf_normalize(i);
printf( "\nRDF:\n" );
rdf_memory_store_dump( ms, stdout );
printf( "\n" );
rdf_memory_store_free(ms);
cleanup:
free((char*)rs.subject);
free((char*)rs.graph);

@ -1 +1 @@
Subproject commit 9e72859052e1fd9191ec7a55498f75a1820d55a1
Subproject commit 5e461a8cb31094c2a0e205b7f4db0c9bf220e26f
Loading…
Cancel
Save