DavidStables (talk | contribs) No edit summary |
DavidStables (talk | contribs) No edit summary |
||
Line 64: | Line 64: | ||
| | | | ||
|- | |- | ||
|<span style="color:green" id="rule_query">'''query'''<br> (subtype of [[#rule_ModelHeading|ModelHeading]])</span> | |rowspan="7"|<span style="color:green" id="rule_query">'''query'''<br> (subtype of [[#rule_ModelHeading|ModelHeading]])</span> | ||
|A Query definition holding the logical definition of a query in a standard language | |rowspan="7"|A Query definition holding the logical definition of a query in a standard language | ||
|0..1<br> | |||
|colspan="2"|<span title="Whether the result set is required flat select style json or a nested graphql json object style 'RELATIONAL' or 'OBJECT. Default is OBJECT"> [[#rule_resultFormat|resultFormat]]</span> | |||
|- | |||
|0..1<br> | |||
|colspan="2"|<span title="true if you want the results to use IRI prefixes"> [[#rule_usePrefixes|usePrefixes]]</span> | |||
|- | |||
|0..1<br> | |||
|colspan="2"|<span title="Whether only active entities are included in the match clauses or select clauses"> [[#rule_activeOnly|activeOnly]]</span> | |||
|- | |||
|rowspan="2"|1..1<br>or | |||
|1..1<br> | |||
|<span title="Select query clause logically similar to SQL/SPARQL select but with GraphQL nesting ability"> [[#rule_select|select]]</span> | |||
|- | |||
| | | | ||
0..1<br> | |||
|<span title="If the query is a boolean true or false use match clauses as an ask"> [[#rule_ask|ask]]</span> | |||
|- | |- | ||
|0..*<br> | |||
|colspan="2"|<span title="For a query with column groups such as a list report, the select query for each group"> [[#rule_subselect|subselect]]</span> | |||
|- | |||
|0..1<br> | |||
|colspan="2"|<span title="The main entity to which all matches must be related e.g. Patient or organisation."> [[#rule_mainEntity|mainEntity]]</span> | |||
|- | |- | ||
|<span style="color:green" id="rule_queryIri">'''queryIri'''</span> | |<span style="color:green" id="rule_queryIri">'''queryIri'''</span> | ||
Line 77: | Line 97: | ||
|reference date for date ranges that use reference date. Note that it could be passed in as an argeument | |reference date for date ranges that use reference date. Note that it could be passed in as an argeument | ||
| | | | ||
|colspan="2"|span title="im date time format">im:DateTime</span> | |colspan="2"|<span title="im date time format">im:DateTime</span> | ||
|- | |- | ||
|<span style="color:green" id="rule_pageNumber">'''pageNumber'''</span> | |<span style="color:green" id="rule_pageNumber">'''pageNumber'''</span> | ||
|Page number (starting at 1) | |Page number (starting at 1) | ||
| | | | ||
|colspan="2"|span title="whole number">Integer</span> | |colspan="2"|<span title="whole number">Integer</span> | ||
|- | |- | ||
|<span style="color:green" id="rule_pageSize">'''pageSize'''</span> | |<span style="color:green" id="rule_pageSize">'''pageSize'''</span> | ||
|number of entries per page | |number of entries per page | ||
| | | | ||
|colspan="2"|span title="whole number">Integer</span> | |colspan="2"|<span title="whole number">Integer</span> | ||
|- | |- | ||
|<span style="color:green" id="rule_parameter">'''parameter'''</span> | |<span style="color:green" id="rule_parameter">'''parameter'''</span> | ||
Line 105: | Line 125: | ||
|- | |- | ||
|<span style="color:green" id="rule_valueSelect">'''valueSelect'''</span> | |<span style="color:green" id="rule_valueSelect">'''valueSelect'''</span> | ||
| | |Select query clause logically similar to SQL/SPARQL select but with GraphQL nesting ability | ||
| | | | ||
|- | |- | ||
Line 111: | Line 131: | ||
|<span style="color:green" id="rule_valueIri">'''valueIri'''</span> | |<span style="color:green" id="rule_valueIri">'''valueIri'''</span> | ||
|Argument value that is an iri | |Argument value that is an iri | ||
| | |||
|colspan="2"|<span title="international resource identifier">IRI</span> | |||
|- | |||
|<span style="color:green" id="rule_resultFormat">'''resultFormat'''</span> | |||
|Whether the result set is required flat select style json or a nested graphql json object style 'RELATIONAL' or 'OBJECT. Default is OBJECT | |||
| | |||
|colspan="2"|<span title="any valid json value characters with json escapes">Text</span> | |||
|- | |||
|<span style="color:green" id="rule_usePrefixes">'''usePrefixes'''</span> | |||
|true if you want the results to use IRI prefixes | |||
| | |||
|colspan="2"|xsd:boolean | |||
|- | |||
|<span style="color:green" id="rule_activeOnly">'''activeOnly'''</span> | |||
|Whether only active entities are included in the match clauses or select clauses | |||
| | |||
|colspan="2"|xsd:boolean | |||
|- | |||
|<span style="color:green" id="rule_select">'''select'''</span> | |||
|null | |||
| | |||
|- | |||
|- | |||
|<span style="color:green" id="rule_ask">'''ask'''</span> | |||
|A clause that matches a path to entity, its properties and its values or intersections unions or negation. Equivalent to a sparql wheew filter clause | |||
| | |||
|- | |||
|- | |||
|- | |||
|<span style="color:green" id="rule_mainEntity">'''mainEntity'''</span> | |||
|The main entity to which all matches must be related e.g. Patient or organisation. | |||
| | | | ||
|colspan="2"|<span title="international resource identifier">IRI</span> | |colspan="2"|<span title="international resource identifier">IRI</span> |
Revision as of 16:21, 23 August 2022
Rule/property/API | Overview | Cardinality | Subrule/property or literal type | |
---|---|---|---|---|
.../queryIM | A request containing a query to be passed as a payload to the queryIM API. | 0..1 |
page | |
0..1 |
textSearch | |||
0..* |
argument | |||
1..1 or |
1..1 |
query | ||
1..1 |
queryIri | |||
0..1 |
referenceDate | |||
page | Information about paging if the client wishes to page results, including page number and page size | 1..1 |
pageNumber | |
1..1 |
pageSize | |||
textSearch | If a free text search is part of the query | Text | ||
argument | A named parameter and a value for passing into a function | 1..1 |
parameter | |
1..1 or |
1..1 |
valueData | ||
1..1 |
valueVariable | |||
1..1 |
valueSelect | |||
1..1 |
valueIri | |||
query (subtype of ModelHeading) |
A Query definition holding the logical definition of a query in a standard language | 0..1 |
resultFormat | |
0..1 |
usePrefixes | |||
0..1 |
activeOnly | |||
1..1 or |
1..1 |
select | ||
0..1 |
ask | |||
0..* |
subselect | |||
0..1 |
mainEntity | |||
queryIri | The IRI of a predefined query in the information model. i.e. request the system to run query X | IRI | ||
referenceDate | reference date for date ranges that use reference date. Note that it could be passed in as an argeument | im:DateTime | ||
pageNumber | Page number (starting at 1) | Integer | ||
pageSize | number of entries per page | Integer | ||
parameter | Parameter name for a function or the parameter name for an argument | Text | ||
valueData | Vaue that is a literal such as a string or number | Text | ||
valueVariable | argumetn value which is a variable name to be resolved at run time | Text | ||
valueSelect | Select query clause logically similar to SQL/SPARQL select but with GraphQL nesting ability | |||
valueIri | Argument value that is an iri | IRI | ||
resultFormat | Whether the result set is required flat select style json or a nested graphql json object style 'RELATIONAL' or 'OBJECT. Default is OBJECT | Text | ||
usePrefixes | true if you want the results to use IRI prefixes | xsd:boolean | ||
activeOnly | Whether only active entities are included in the match clauses or select clauses | xsd:boolean | ||
select | null | |||
ask | A clause that matches a path to entity, its properties and its values or intersections unions or negation. Equivalent to a sparql wheew filter clause | |||
mainEntity | The main entity to which all matches must be related e.g. Patient or organisation. | IRI | ||
ModelHeading (subtype of Entity) |
General headings such as name description and alias | 1..1 |
alias | |
Entity | The super class and data model for all named resources in the model i.e. the data model of the entities that are labelled with iri label and status | 1..1 |
label | |
0..1 |
comment | |||
1..1 |
type | |||
1..1 |
status | |||
1..1 |
scheme | |||
alias | An alias or reference term that can be used throughout a query as shorthand for the result set | Text | ||
label | the name of the entity | Text | ||
comment | the description of the entity | Text | ||
type | the base type of the entity i.e. one of the high level entity types | rdfs:Resource | ||
status | the status of the entity being active, inactive, draft or unassigned | im:Status | ||
scheme | The code scheme or graph which the entity belongs to | im:Graph |