return errors;
}
-int yaz_sparql_lookup_schema(yaz_sparql_t s, const char *schema)
+struct sparql_entry *lookup_schema(yaz_sparql_t s, const char *schema)
{
struct sparql_entry *e;
break;
}
}
- return e ? 1 : 0;
+ return e;
+}
+
+int yaz_sparql_lookup_schema(yaz_sparql_t s, const char *schema)
+{
+ return lookup_schema(s, schema) ? 1 : 0;
}
int yaz_sparql_from_uri_stream(yaz_sparql_t s,
const char *uri, const char *schema)
{
int r = 0, errors = emit_prefixes(s, addinfo, pr, client_data);
- struct sparql_entry *e;
-
- for (e = s->conf; e; e = e->next)
- {
- if (!strncmp(e->pattern, "uri.", 4))
- {
- if (!schema || !strcmp(e->pattern + 4, schema))
- break;
- }
- }
+ struct sparql_entry *e = lookup_schema(s, schema);
if (!e)
errors++;
if (!errors)