User Tools

Site Tools


graph_manipulation

This is an old revision of the document!


A PCRE internal error occured. This might be caused by a faulty plugin

APIs for graph manipulation (derived from CTS2 specification) [[start|Link to API4KB Main Page]] The terminology and requirements are derived from the CTS2 specification. A note on the terminology used below: * **Graph** - A named collection of assertions. Graphs are assumed to be immutable - if the set of assertions changes in a graph, the graph is given a different name. Graphs implicitly include any logical conclusions that can be drawn from the application of one or more sound, monotonic reasoning algorithms to the assertions in the graph. * **Assertion** - a "triple" consisting of a named predicate, a subject and an object where: * **Subject** - the name of a resource * **Predicate** - a binary relation * **Target** - one of: - the name of a resource - string, number, date or other structured data type - A collection of one or more predicate/target tuples (referred to as a "BNODE" in the RDF world) - an unordered set or ordered sequence of targets The key distinction between the terminology used above and that used in classic RDF is that the subject of an assertion must be the name of a persistent resource - not a BNODE. * Requirements: * Return the URI of a graph given the URI of a source file (RDF / OWL / ...). * Inputs: URI of source file * Return: URI of graph * Notes: * Provenance needs to be maintained in the resulting graph. Assertions from resources that referenced in the source file (i.e. imports) need to be traceable to the graph from which they were imported. * Assertions that are are derived from the application of one or more sound, monotonic reasoning algorithms need to be identified as "derived" (vs. "asserted") and it should be possible to determine which algorithm(s) were used to reach the conclusion * Assertions that are both asserted //and// derived should be marked as asserted. * Create a new graph that contains the union of two or more existing graphs * Inputs: List of graph URIs * Return: URI of new graph * Notes: Assertion provenance must be maintained - every assertion must include the name of the graph(s) from which it was derived * Return a graph that contains the intersection of two or more existing graphs * Inputs: List of graph URIs * Return:

graph_manipulation.1353891212.txt.gz · Last modified: 2012/11/25 19:53 by hsolbrig