diff --git a/src/dosdp/document.py b/src/dosdp/document.py index 2b2d136..57d68f6 100644 --- a/src/dosdp/document.py +++ b/src/dosdp/document.py @@ -80,7 +80,7 @@ def handle_one_of_definitions(plain_documentation): definitions = content["definitions"] for key in definitions.keys(): if "oneOf" in definitions[key]: - element_lines = ["One of:"] + element_lines = ["- **`annotations`** *(array)*: One of the followings:"] one_of_defs = definitions[key]["oneOf"] for one_of_item in one_of_defs: element_lines.append(" - **Items**: Refer to *"+one_of_item["$ref"]+"*.") @@ -99,7 +99,7 @@ def print_documentation_header(doc_type_elements, md_out): md_out.write("\n") -def print_element(element, md_out, plain_doc, prefix=""): +def print_element(element, md_out, plain_doc, prefix="", nesting_list=[]): """ Retrieves plain element documentation generated by the jsonschema2md and writes to the document. Additionally expands 'definitions' references to a specified depth (see NESTED_REFERENCE_LIMIT) @@ -107,11 +107,13 @@ def print_element(element, md_out, plain_doc, prefix=""): """ lines = plain_doc[element] for line in lines: - md_out.write("%s\n" % (prefix + line)) - if CROSS_REF_TERM in line and len(prefix) < NESTED_REFERENCE_LIMIT: + md_out.write("%s\n" % (prefix + (" " * (len(nesting_list) % 2)) + line)) + if CROSS_REF_TERM in line: + nesting_list.append(element) ref_term_start = line.index(CROSS_REF_TERM) + len(CROSS_REF_TERM) referred_element = line[ref_term_start:len(line) - 2] - print_element(DEFINITION_PREFIX + referred_element, md_out, plain_doc, ">"+prefix) + if (DEFINITION_PREFIX + referred_element) not in nesting_list: + print_element(DEFINITION_PREFIX + referred_element, md_out, plain_doc, ">"+prefix, nesting_list) def print_section_header(config, md_out, section): @@ -175,7 +177,7 @@ def generate_documentation(yaml_schema): print_section_header(config, md_out, section) for element in elements: - print_element(element, md_out, plain_doc) + print_element(element, md_out, plain_doc, nesting_list=[]) md_out.write("\n\n") diff --git a/src/schema/dosdp_schema.md b/src/schema/dosdp_schema.md index 1bf0fac..c7ee234 100644 --- a/src/schema/dosdp_schema.md +++ b/src/schema/dosdp_schema.md @@ -74,11 +74,11 @@ - **`substitutions`** *(array)* - **Items**: Refer to *#/definitions/regex_sub*. ->- **`regex_sub`** *(object)*: Cannot contain additional properties. -> - **`in`** *(string)*: name of input var. -> - **`out`** *(string)*: Name of output var. If input var specified an OWL entity then readable identifier is used as input to substitution. -> - **`match`** *(string)*: perl style regex match. -> - **`sub`** *(string)*: perl style regex sub. May include backreferences. +> - **`regex_sub`** *(object)*: Cannot contain additional properties. +> - **`in`** *(string)*: name of input var. +> - **`out`** *(string)*: Name of output var. If input var specified an OWL entity then readable identifier is used as input to substitution. +> - **`match`** *(string)*: perl style regex match. +> - **`sub`** *(string)*: perl style regex sub. May include backreferences. ### Axioms @@ -87,179 +87,171 @@ - **`annotations`** *(array)* - **Items**: Refer to *#/definitions/annotations*. ->One of: -> - **Items**: Refer to *#/definitions/printf_annotation*. +> - **`annotations`** *(array)*: One of the followings: +> - **Items**: Refer to *#/definitions/printf_annotation*. >>- **`printf_annotation`** *(object)*: Cannot contain additional properties. >> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. >> - **`annotations`** *(array)* >> - **Items**: Refer to *#/definitions/annotations*. ->>>One of: ->>> - **Items**: Refer to *#/definitions/printf_annotation*. ->>> - **Items**: Refer to *#/definitions/list_annotation*. ->>> - **Items**: Refer to *#/definitions/iri_value_annotation*. ->> - **`text`** *(string)*: A print format string. ->> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. ->> - **Items** *(string)* -> - **Items**: Refer to *#/definitions/list_annotation*. +>> - **`text`** *(string)*: A print format string. +>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. +>> - **Items** *(string)* +> - **Items**: Refer to *#/definitions/list_annotation*. >>- **`list_annotation`** *(object)*: Cannot contain additional properties. >> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. >> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. > - **Items**: Refer to *#/definitions/iri_value_annotation*. ->>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. ->> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. ->> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. ->> - **`annotations`** *(array)* ->> - **Items**: Refer to *#/definitions/annotations*. ->>>One of: ->>> - **Items**: Refer to *#/definitions/printf_annotation*. ->>> - **Items**: Refer to *#/definitions/list_annotation*. ->>> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>> - **`iri_value_annotation`** *(object)*: Cannot contain additional properties. +>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. +>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. +>> - **`annotations`** *(array)* +>> - **Items**: Refer to *#/definitions/annotations*. - **`logical_axioms`** *(array)* - **Items**: Refer to *#/definitions/printf_owl*. ->- **`printf_owl`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_owl`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`axiom_type`** *(string)*: OWL axiom type expressed as manchester syntax: equivalentTo, subClassOf, disjointWith. GCI - for general class inclusion axioms, is also valid (although missing from manchester syntax.) This specifies the axiom type to be generated from the text following substitution.'. Must be one of: `['equivalentTo', 'subClassOf', 'disjointWith', 'GCI']`. -> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. An empty var list can be specified simply by leaving this field out. -> - **Items** *(string)* +> - **`axiom_type`** *(string)*: OWL axiom type expressed as manchester syntax: equivalentTo, subClassOf, disjointWith. GCI - for general class inclusion axioms, is also valid (although missing from manchester syntax.) This specifies the axiom type to be generated from the text following substitution.'. Must be one of: `['equivalentTo', 'subClassOf', 'disjointWith', 'GCI']`. +> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. An empty var list can be specified simply by leaving this field out. +> - **Items** *(string)* - **`name`**: Refer to *#/definitions/printf_annotation_obo*. ->- **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. -> - **`text`** *(string)*: A print format string. -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. -> - **Items** *(string)* +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. +> - **`text`** *(string)*: A print format string. +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. +> - **Items** *(string)* - **`comment`**: Refer to *#/definitions/printf_annotation_obo*. ->- **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. -> - **`text`** *(string)*: A print format string. -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. -> - **Items** *(string)* +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. +> - **`text`** *(string)*: A print format string. +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. +> - **Items** *(string)* - **`def`**: Refer to *#/definitions/printf_annotation_obo*. ->- **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. -> - **`text`** *(string)*: A print format string. -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. -> - **Items** *(string)* +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. +> - **`text`** *(string)*: A print format string. +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. +> - **Items** *(string)* - **`namespace`**: Refer to *#/definitions/printf_annotation_obo*. ->- **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. -> - **`text`** *(string)*: A print format string. -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. -> - **Items** *(string)* +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. +> - **`text`** *(string)*: A print format string. +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. +> - **Items** *(string)* ### Logical Convenience Fields @@ -267,115 +259,115 @@ Where only one of any OWL axiom type is present, these convenience fields may be used. - **`equivalentTo`**: Refer to *#/definitions/printf_owl_convenience*. ->- **`printf_owl_convenience`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_owl_convenience`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. -> - **Items** *(string)* +> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. +> - **Items** *(string)* - **`subClassOf`**: Refer to *#/definitions/printf_owl_convenience*. ->- **`printf_owl_convenience`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_owl_convenience`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. -> - **Items** *(string)* +> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. +> - **Items** *(string)* - **`GCI`**: Refer to *#/definitions/printf_owl_convenience*. ->- **`printf_owl_convenience`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_owl_convenience`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. -> - **Items** *(string)* +> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. +> - **Items** *(string)* - **`disjointWith`**: Refer to *#/definitions/printf_owl_convenience*. ->- **`printf_owl_convenience`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_owl_convenience`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. -> - **Items** *(string)* +> - **`text`** *(string)*: A print format string in OWL Manchester syntax. Each entry must correspond to an entry in o the name of a var in the var field of the pattern. Entries in single quotes must correspond to the labels of entries in owl_entity dictionaries (classes, relations, dataProperties). +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. +> - **Items** *(string)* ### OBO fields @@ -383,153 +375,153 @@ Where only one of any OWL axiom type is present, these convenience fields may be - **`exact_synonym`**: Refer to *#/definitions/list_annotation_obo*. ->- **`list_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. +> - **`list_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. - **`narrow_synonym`**: Refer to *#/definitions/list_annotation_obo*. ->- **`list_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. +> - **`list_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. - **`related_synonym`**: Refer to *#/definitions/list_annotation_obo*. ->- **`list_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. +> - **`list_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. - **`broad_synonym`**: Refer to *#/definitions/list_annotation_obo*. ->- **`list_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. +> - **`list_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. - **`xref`**: Refer to *#/definitions/list_annotation_obo*. ->- **`list_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. +> - **`list_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. Use of this field should add the same xref set to all annotation axioms generated. - **`generated_synonyms`** *(array)*: An OBO convenience field to allow the specification of exact synonyms generated by interpolation of OWL entity names into printf text. Each entry may be annotated. - **Items**: Refer to *#/definitions/printf_annotation_obo*. ->- **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. -> - **`text`** *(string)*: A print format string. -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. -> - **Items** *(string)* +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. +> - **`text`** *(string)*: A print format string. +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. +> - **Items** *(string)* - **`generated_narrow_synonyms`** *(array)*: An OBO convenience field to allow the specification of narrow synonyms generated by interpolation of OWL entity names into printf text. Each entry may be annotated. - **Items**: Refer to *#/definitions/printf_annotation_obo*. ->- **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. -> - **`text`** *(string)*: A print format string. -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. -> - **Items** *(string)* +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. +> - **`text`** *(string)*: A print format string. +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. +> - **Items** *(string)* - **`generated_broad_synonyms`** *(array)*: An OBO convenience field to allow the specification of broad synonyms generated by interpolation of OWL entity names into printf text. Each entry may be annotated. - **Items**: Refer to *#/definitions/printf_annotation_obo*. ->- **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. -> - **`text`** *(string)*: A print format string. -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. -> - **Items** *(string)* +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. +> - **`text`** *(string)*: A print format string. +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. +> - **Items** *(string)* - **`generated_related_synonyms`** *(array)*: An OBO convenience field to allow the specification of related synonyms generated by interpolation of OWL entity names into printf text. Each entry may be annotated. - **Items**: Refer to *#/definitions/printf_annotation_obo*. ->- **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`printf_annotation_obo`** *(object)*: Cannot contain additional properties. +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. -> - **`text`** *(string)*: A print format string. -> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. -> - **Items** *(string)* +> - **`xrefs`** *(string)*: Takes the name of a single data_list_var specifying a list of database cross references. +> - **`text`** *(string)*: A print format string. +> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. +> - **Items** *(string)* ### Instance Graph Spec @@ -540,30 +532,30 @@ Where only one of any OWL axiom type is present, these convenience fields may be - **`nodes`** *(object)*: Key = name of individual within this pattern doc Value = Type of individual specified using either the quoted name of a class in the class dictionary of this pattern or a var name. This field does not support typing via anonymous class expressions. - **`edges`** *(array)* - **Items**: Refer to *#/definitions/opa*. ->- **`opa`** *(object)*: Cannot contain additional properties. -> - **`edge`** *(array)*: A triple specified as an ordered array with 3 elements [subject, rel, object] * rel must be the quoted name of a relation from the relations (object property) dictionary. * subject and object must be the name of an individual specified in the nodes field. -> - **Items** *(string)* -> - **`annotations`** *(array)* -> - **Items**: Refer to *#/definitions/annotations*. ->>One of: +> - **`opa`** *(object)*: Cannot contain additional properties. +> - **`edge`** *(array)*: A triple specified as an ordered array with 3 elements [subject, rel, object] * rel must be the quoted name of a relation from the relations (object property) dictionary. * subject and object must be the name of an individual specified in the nodes field. +> - **Items** *(string)* +> - **`annotations`** *(array)* +> - **Items**: Refer to *#/definitions/annotations*. +>>- **`annotations`** *(array)*: One of the followings: >> - **Items**: Refer to *#/definitions/printf_annotation*. ->>>- **`printf_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`annotations`** *(array)* ->>> - **Items**: Refer to *#/definitions/annotations*. +>>> - **`printf_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`annotations`** *(array)* +>>> - **Items**: Refer to *#/definitions/annotations*. >>> - **`text`** *(string)*: A print format string. >>> - **`vars`** *(array)*: An ordered list of variables for substitution into the accompanying print format string. Each entry must correspond to the name of a variable specified in either the 'vars' field or the data_var field of the pattern. Where an OWL entity is specified, the label for the OWL entity should be used in the substitution. An empty var list can be specified simply by leaving this field out. >>> - **Items** *(string)* >> - **Items**: Refer to *#/definitions/list_annotation*. ->>>- **`list_annotation`** *(object)*: Cannot contain additional properties. ->>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. ->>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. ->> - **Items**: Refer to *#/definitions/iri_value_annotation*. +>>> - **`list_annotation`** *(object)*: Cannot contain additional properties. +>>> - **`annotationProperty`** *(string)*: A string corresponding to the rdfs:label of an owl annotation property. If the annotation property has no label, the shortForm ID should be used. The annotation property must be listed in the annotation property dictionary.'. +>>> - **`value`** *(string)*: A single list variable (list_var or data_list_var). Each item in this list should be used to generate a separate annotation axiom. +>> - **Items**: Refer to *#/definitions/iri_value_annotation*. >>>- **`iri_value_annotation`** *(object)*: Cannot contain additional properties. >>> - **`annotationProperty`** *(string)*: A string corresponding to a key in the annotation property dictionary. >>> - **`var`** *(string)*: The name of a variable specified in the 'vars' field. The IRI of the variable value will be the object of the annotation axiom. >>> - **`annotations`** *(array)* >>> - **Items**: Refer to *#/definitions/annotations*. -> - **`not`** *(boolean)*: Optional field for negated OPAs. +> - **`not`** *(boolean)*: Optional field for negated OPAs.