Any table T1:
| T1.A |
T1.B |
T1.C |
| value_A1 |
value_B1 |
value_C1 |
| value_A2 |
value_B2 |
value_C2 |
| value_A3 |
value_B3 |
value_C3 |
Can be viewed as a table with an extra key:
| Key |
T1.A |
T1.B |
T1.C |
| 1 |
value_A1 |
value_B1 |
value_C1 |
| 2 |
value_A2 |
value_B2 |
value_C2 |
| 3 |
value_A3 |
value_B3 |
value_C3 |
(Note: This step is unnecessary if the table already has a primary key)
Which can be viewed as a set of tables (one per column):
| Key |
T1.A |
| 1 |
value_A1 |
| 2 |
value_A2 |
| 3 |
value_A3 |
|
| Key |
T1.B |
| 1 |
value_B1 |
| 2 |
value_B2 |
| 3 |
value_B3 |
|
| Key |
T1.C |
| 1 |
value_C1 |
| 2 |
value_C2 |
| 3 |
value_C3 |
|
With column names moved to data:
| Key |
Column |
Value |
| 1 |
T1.A |
value_A1 |
| 2 |
T1.A |
value_A2 |
| 3 |
T1.A |
value_A3 |
|
| Key |
Column |
Value |
| 1 |
T1.B |
value_B1 |
| 2 |
T1.B |
value_B2 |
| 3 |
T1.B |
value_B3 |
|
| Key |
Column |
Value |
| 1 |
T1.C |
value_C1 |
| 2 |
T1.C |
value_C2 |
| 3 |
T1.C |
value_C3 |
|
Which can be viewed as a single table of triples:
| Key |
Column |
Value |
| 1 |
T1.A |
value_A1 |
| 2 |
T1.A |
value_A2 |
| 3 |
T1.A |
value_A3 |
| 1 |
T1.B |
value_B1 |
| 2 |
T1.B |
value_B2 |
| 3 |
T1.B |
value_B3 |
| 1 |
T1.C |
value_C1 |
| 2 |
T1.C |
value_C2 |
| 3 |
T1.C |
value_C3 |
Correspondence to RDF Triples:
- Key = Subject
- Column = Predicate/Property
- Value = Value