Joins Metadata Endpoints¶
Left Non Matching Rows¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/leftnomatchrows
¶ Lists rows on the left hand side that did not join
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/leftnomatchrows HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The response will be a Standard Response, with a list of not matching rows on the left side of the join.
Right Non Matching Rows¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/rightnomatchrows
¶ Lists rows on the right hand side that did not join
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/rightnomatchrows HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The response will be a Standard Response, with a list of not matching rows on the right side of the join.
Inner Joined Rows¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/innerrows
¶ Lists rows in the inner join - joining rows only
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/innerrows HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The response will be a Standard Response, with a list of inner joining rows. The column names is in the form of L_e<entity_id>:<column name> for left hand side columns and R_e<entity_id>:<column name> for right hand side columns.
Outer Joined Rows¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/outerrows
¶ Lists rows in the outer join - joining rows and non-joining rows from both sides
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/innerrows HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The response will be a Standard Response, with a list of outer joining rows. The column names is in the form of L_e<entity_id>:<column name> for left hand side columns and R_e<entity_id>:<column name> for right hand side columns.
Left Outer Joined Rows¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/leftouterrows
¶ Lists rows in the left outer join - joining rows and non-joining left rows
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/leftouterrows HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The response will be a Standard Response, with a list of rows in the left outer join. The column names is in the form of L_e<entity_id>:<column name> for left hand side columns and R_e<entity_id>:<column name> for right hand side columns.
Right Outer Joined Rows¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/rightouterrows
¶ Lists rows in the right outer join - joining rows and non-joining right rows
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/rightouterrows HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The response will be a Standard Response, with a list of rows in the right outer join. The column names is in the form of L_e<entity_id>:<column name> for left hand side columns and R_e<entity_id>:<column name> for right hand side columns.
Venn Diagram¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/venndiagram
¶ This view will bring back a single row of information for a particular join. The Venn component will access the information by position in most cases.
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/venndiagram HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The response will be a Standard Response, with a single row of venn diagram information.
The columns displayed are:
Human Name | Column Name | Description |
---|---|---|
_LhsJoinLabel | Left Name | The (humanised) combined name of the entity and attributes on the left hand side of the join. |
_LhsNullText | Left Nulls | Distribution of null values on the left hand side. |
_left_not_match_values | Left no match values | Total non-matching values on left hand side of the join |
_left_not_match_rows | Left no match rows | This is the total non-matching rows on the left hand side of the join |
_LhsCardinality | Left Cardinality | Left hand side of the exact cardinality. |
_RhsJoinLabel | Right name | The (humanised) combined name of the entity and attributes on the left hand side of the join. |
_RhsNullText | Right nulls | Distribution of null values on the right hand side. |
_right_not_match_values | Right no match values | This is the total non-matching values on right hand side of the join |
_right_not_match_rows | Right no match rows | This is the total non-matching rows on the right hand side of the join |
_RhsCardinality | Right Cardinality | The right hand side of the exact cardinality. |
_common_values | Matching Values | Total matching values (values common to both sides) |
_inner_product | Matching rows | Total matching rows (rows containing matching values) |
_TotalRows | Total rows | The total number of rows involved in the join. |
The rows
array will contain one row for the venn diagram information:
{
"dataRow": [
"Train Accounts(1) filtered : Account_id, Customer_id, Account_rep, Billing_address1 (value)",
"",
"0",
"(0)",
"1.004",
"Train Accounts(3) filtered : Account_id, Customer_id, Account_rep, Billing_address1 (value)",
"",
"0",
"(0)",
"1.004",
"1597",
"(1618)",
"1618"
]
}
Join Matching Values¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/matchingvalues
¶ Lists distinct joined rows. Only displays values where both LEFT & RIGHT frequency are non-zero
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/matchingvalues HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The columns displayed are:
Human Name | Column Name | Description |
---|---|---|
value<pos> | Component <pos+1> | <LHS_ENTITYID>.{LHS_ATTRIBUTE} = <RHS_ENTITYID>.{RHS_ATTRIBUTE} |
LEFT | Left Frequency | The number of times this value occurs in the Left Hand Side entity. |
RIGHT | Right Frequency | The number of times this value occurs in the Right Hand Side entity. |
_product | Join Product | The number of joined rows produced by this value. |
pos in the above table is the position of the join expression in the join. There will be n components where n is the number of attribute on which joins is created.
Example of columns:
{
"columns": [
{
"columnisedName": "value0",
"humanisedName": "Component 1",
"description": "1.{Account_id} = 3.{Account_id}"
},
{
"columnisedName": "value1",
"humanisedName": "Component 2",
"description": "1.{Customer_id} = 3.{Customer_id}"
},
{
"columnisedName": "value2",
"humanisedName": "Component 3",
"description": "1.{Account_rep} = 3.{Account_rep}"
},
{
"columnisedName": "value3",
"humanisedName": "Component 4",
"description": "1.{Billing_address1} = 3.{Billing_address1}"
},
{
"columnisedName": "LEFT",
"humanisedName": "Left Frequency",
"description": "The number of times this value occurs in the Left Hand Side entity."
},
{
"columnisedName": "RIGHT",
"humanisedName": "Right Frequency",
"description": "The number of times this value occurs in the Right Hand Side entity."
},
{
"columnisedName": "_product",
"humanisedName": "Join Product",
"description": "The number of joined rows produced by this value."
}
]
}
The response will be a Standard Response, with a list of distinct joined rows.
{
"dataRow": [
"71002",
"A00855",
"610",
"",
"1",
"1",
"1"
]
}
Left Non Matching Values¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/leftnomatchvalues
¶ List of values on the left hand side that did not join. Only displays values where the RIGHT frequency is zero.
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/leftnomatchvalues HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The columns displayed are:
Human Name | Column Name | Description |
---|---|---|
value<pos> | Component <pos+1> | <LHS_ENTITYID>.{LHS_ATTRIBUTE} = <RHS_ENTITYID>.{RHS_ATTRIBUTE} |
LEFT | Left Frequency | The number of times this value occurs in the Left Hand Side entity. |
pos in the above table is the position of the join expression in the join. There will be n components where n is the number of attribute on which joins is created.
Example of columns:
{
"columns": [
{
"columnisedName": "value0",
"humanisedName": "Component 1",
"description": "1.{Account_id} = 3.{Account_id}"
},
{
"columnisedName": "value1",
"humanisedName": "Component 2",
"description": "1.{Customer_id} = 3.{Customer_id}"
},
{
"columnisedName": "value2",
"humanisedName": "Component 3",
"description": "1.{Account_rep} = 3.{Account_rep}"
},
{
"columnisedName": "value3",
"humanisedName": "Component 4",
"description": "1.{Billing_address1} = 3.{Billing_address1}"
},
{
"columnisedName": "LEFT",
"humanisedName": "Left Frequency",
"description": "The number of times this value occurs in the Left Hand Side entity."
}
]
}
The response will be a Standard Response, with a list of values on the left hand side that did not join.
Right Non Matching Values¶
-
GET
/api/repositories/
(string: repository)/joins/
(string: joinId)/rightnomatchvalues
¶ List of values on the right hand side that did not join. Only displays values where the LEFT frequency is zero.
GET /api/repositories/jupiter/joins/1-1_2_3_4-3-1_2_3_4-2/rightnomatchvalues HTTP/1.1
Accept: application/json
Response Code | Reason |
---|---|
200 | No error |
500 | Server error |
The columns displayed are:
Human Name | Column Name | Description |
---|---|---|
value<pos> | Component <pos+1> | <LHS_ENTITYID>.{LHS_ATTRIBUTE} = <RHS_ENTITYID>.{RHS_ATTRIBUTE} |
RIGHT | Right Frequency | The number of times this value occurs in the Right Hand Side entity. |
pos in the above table is the position of the join expression in the join. There will be n components where n is the number of attribute on which joins is created.
Example of columns:
{
"columns": [
{
"columnisedName": "value0",
"humanisedName": "Component 1",
"description": "1.{Account_id} = 3.{Account_id}"
},
{
"columnisedName": "value1",
"humanisedName": "Component 2",
"description": "1.{Customer_id} = 3.{Customer_id}"
},
{
"columnisedName": "value2",
"humanisedName": "Component 3",
"description": "1.{Account_rep} = 3.{Account_rep}"
},
{
"columnisedName": "value3",
"humanisedName": "Component 4",
"description": "1.{Billing_address1} = 3.{Billing_address1}"
},
{
"columnisedName": "RIGHT",
"humanisedName": "Right Frequency",
"description": "The number of times this value occurs in the Right Hand Side entity."
}
]
}
The response will be a Standard Response, with a list of values on the right hand side that did not join.