Grassroots Infrastructure
The Grassroots Infrastructure is a suite of computing tools to help users and developers use scientific data infrastructure that can easily be interconnected.
|
A datatype for specifying ontological terms as a way to describe the data that each of the Services consumes and produces. More...
#include <schema_term.h>
Public Member Functions | |
SchemaTerm * | AllocateExtendedSchemaTerm (const char *url_s, const char *name_s, const char *description_s, const char *abbreviation_s) |
Allocate a SchemaTerm with an abbreviation. More... | |
SchemaTerm * | AllocateSchemaTerm (const char *url_s, const char *name_s, const char *description_s) |
Allocate a SchemaTerm. More... | |
void | FreeSchemaTerm (SchemaTerm *term_p) |
Free a SchemaTerm. More... | |
void | ClearSchemaTerm (SchemaTerm *term_p) |
Clear all of the data within a SchemaTerm. More... | |
json_t * | GetSchemaTermAsJSON (const SchemaTerm *term_p) |
Get the JSON fragment for a given SchemaTerm. More... | |
bool | AddSchemaTermToJSON (const SchemaTerm *term_p, json_t *root_p) |
Populate a JSON fragment with the details for a given SchemaTerm. More... | |
SchemaTerm * | GetSchemaTermFromJSON (const json_t *term_json_p) |
Get the JSON fragment for a given SchemaTerm. More... | |
Data Fields | |
char * | st_url_s |
The URL for this SchemaTerm. More... | |
char * | st_name_s |
The user-friendly name for the term that should be displayed to the user. More... | |
char * | st_description_s |
A more-verbose description of this SchemaTerm to display to the user. More... | |
char * | st_abbreviation_s |
An optional abbreviation of this term. More... | |
A datatype for specifying ontological terms as a way to describe the data that each of the Services consumes and produces.
They are also used to categorise each of the Services.
SchemaTerm * AllocateExtendedSchemaTerm | ( | const char * | url_s, |
const char * | name_s, | ||
const char * | description_s, | ||
const char * | abbreviation_s | ||
) |
Allocate a SchemaTerm with an abbreviation.
url_s | The url for the SchemaTerm. |
name_s | The name to give to the SchemaTerm. |
description_s | The description to give to the SchemaTerm. |
abbreviation_s | The abbreviation to give to the SchemaTerm. |
NULL
upon error. SchemaTerm * AllocateSchemaTerm | ( | const char * | url_s, |
const char * | name_s, | ||
const char * | description_s | ||
) |
Allocate a SchemaTerm.
url_s | The url for the SchemaTerm. |
name_s | The name to give to the SchemaTerm. |
description_s | The description to give to the SchemaTerm. |
NULL
upon error. void FreeSchemaTerm | ( | SchemaTerm * | term_p | ) |
Free a SchemaTerm.
term_p | The SchemaTerm to free. |
void ClearSchemaTerm | ( | SchemaTerm * | term_p | ) |
Clear all of the data within a SchemaTerm.
term_p | The SchemaTerm to clear. |
json_t * GetSchemaTermAsJSON | ( | const SchemaTerm * | term_p | ) |
Get the JSON fragment for a given SchemaTerm.
term_p | The SchemaTerm to get the JSON for. |
NULL
upon error. bool AddSchemaTermToJSON | ( | const SchemaTerm * | term_p, |
json_t * | root_p | ||
) |
Populate a JSON fragment with the details for a given SchemaTerm.
term_p | The SchemaTerm to get the JSON for. |
The | JSON fragment to populate. |
true
upon success, false
upon failure. SchemaTerm * GetSchemaTermFromJSON | ( | const json_t * | term_json_p | ) |
Get the JSON fragment for a given SchemaTerm.
term_json_p | The JSON fragment for a given SchemaTerm. |
NULL
upon error. char* st_url_s |
The URL for this SchemaTerm.
char* st_name_s |
The user-friendly name for the term that should be displayed to the user.
char* st_description_s |
A more-verbose description of this SchemaTerm to display to the user.
char* st_abbreviation_s |
An optional abbreviation of this term.