-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Hi Thibault,
I have an issue with joining three objects.
There are trips, their legs (subtrips), origin and destination for each leg. Here is the mapping file and input:
prefixes:
schema: "http://schema.org/"
wasaFunc: "http://actions.semantify.it/wasa/func/"
mappings:
action:
sources:
- ["input~jsonpath", "$"]
po:
- [a, schema:Action]
- [schema:actionStatus, "http://schema.org/CompletedActionStatus"]
- [schema:result, {mapping: result}]
result:
sources:
- ["input~jsonpath", "$.Trip.*"]
po:
- [a, schema:Trip]
- [schema:name, "A trip from $(LegList.Leg.0.Origin.name) to $(LegList.Leg[-1:].Destination.name)"]
- [schema:arrivalTime, "$(LegList.Leg.0.Origin.time)"]
- [schema:departureTime, "$(LegList.Leg[-1:].Destination.time)"]
- [vao:origin, {mapping: origin, join: [idx, idx]}]
- [vao:destination, {mapping: destination, join: [idx, idx]}]
- [schema:subTrip, {mapping: subTrip, join: [idx, ^^^idx]}]
origin:
sources:
- ["input~jsonpath", "$.Trip.*"]
s: "https://verkehrsauskunftoesterreich.at/location/$(LegList.Leg.0.Origin.id)"
po:
- [a, schema:Place]
- [schema:name, "$(LegList.Leg.0.Origin.name)"]
- [schema:geo, {mapping: originGeoCoordinates, join: [idx, idx]}]
originGeoCoordinates:
sources:
- ["input~jsonpath", "$.Trip.*"]
s: "http://adasd.com/$(LegList.Leg.0.Origin.id)/geo"
po:
- [a, schema:GeoCoordinates]
- [schema:latitude, "$(LegList.Leg.0.Origin.lat)"]
- [schema:longitude, "$(LegList.Leg.0.Origin.lon)"]
destination:
sources:
- ["input~jsonpath", "$.Trip.*"]
s: "https://verkehrsauskunftoesterreich.at/location/$(LegList.Leg[-1:].Destination.id)"
po:
- [a, schema:Place]
- [schema:name, "$(LegList.Leg[-1:].Destination.name)"]
- [schema:geo, {mapping: destinationGeoCoordinates, join: [idx, idx]}]
destinationGeoCoordinates:
sources:
- ["input~jsonpath", "$.Trip.*"]
s: "http://adasd.com/$(LegList.Leg[-1:].Destination.id)/geo"
po:
- [a, schema:GeoCoordinates]
- [schema:latitude, "$(LegList.Leg[-1:].Destination.lat)"]
- [schema:longitude, "$(LegList.Leg[-1:].Destination.lon)"]
subTrip:
sources:
- ["input~jsonpath", "$.Trip.*.LegList.Leg.*"]
s: "http://verkehrstauskunftoesterreich.at/trip/$(^^^idx)/leg/$(idx)"
po:
- [a schema:Trip]
- [schema:departureTime, "$(Origin.time)"]
- [vao:origin, {mapping: subTripOrigin, join: [idx, ^idx]}]
- [vao:destination, {mapping: subTripDestination, join: [idx, ^idx]}]
- [schema:arrivalTime, "$(Destination.time)"]
subTripOrigin:
sources:
- ["input~jsonpath", "$.Trip.*.LegList.Leg.*.Origin"]
s: "http://verkehrstauskunftoesterreich.at/location/$(id)"
po:
- [a schema:Place]
subTripDestination:
sources:
- ["input~jsonpath", "$.Trip.*.LegList.Leg.*.Destination"]
s: "http://verkehrstauskunftoesterreich.at/location/$(id)"
po:
- [a schema:Place]
Here is the input file:
{
"Trip": [
{
"LegList": {
"Leg": [
{
"Origin": {
"name": "47.266450, 11.389962",
"type": "ADR",
"id": "A=2@O=47.266450, 11.389962@l=@X=11389962@Y=47266450@u=0@",
"lon": 11.389962,
"lat": 47.26645,
"time": "17:16:00",
"date": "2021-04-12"
},
"Destination": {
"name": "Innsbruck Terminal Marktplatz",
"type": "ST",
"id": "A=1@O=Innsbruck Terminal Marktplatz@X=11390304@Y=47266639@U=81@L=476439605@",
"lon": 11.390304,
"lat": 47.266639,
"time": "17:18:00",
"date": "2021-04-12"
},
"idx": 0
},
{
"Origin": {
"name": "Innsbruck Terminal Marktplatz",
"type": "ST",
"id": "A=1@O=Innsbruck Terminal Marktplatz@X=11390304@Y=47266639@U=81@L=476439605@",
"lon": 11.390304,
"lat": 47.266639,
"time": "17:18:00",
"date": "2021-04-12"
},
"Destination": {
"name": "Innsbruck Mühlauer Brücke",
"type": "ST",
"id": "A=1@O=Innsbruck Mühlauer Brücke@X=11403266@Y=47278828@U=81@L=476434003@",
"lon": 11.403266,
"lat": 47.278828,
"time": "17:23:00",
"date": "2021-04-12"
},
"idx": 1
},
{
"Origin": {
"name": "Innsbruck Mühlauer Brücke",
"type": "ST",
"id": "A=1@O=Innsbruck Mühlauer Brücke@X=11403266@Y=47278828@U=81@L=476434003@",
"lon": 11.403266,
"lat": 47.278828,
"time": "17:23:00",
"date": "2021-04-12"
},
"Destination": {
"name": "Innsbruck Mühlauer Brücke",
"type": "ST",
"id": "A=1@O=Innsbruck Mühlauer Brücke@X=11402951@Y=47278801@U=81@L=476434001@",
"lon": 11.402951,
"lat": 47.278801,
"time": "17:26:00",
"date": "2021-04-12"
},
"idx": 2
},
{
"Origin": {
"name": "Innsbruck Mühlauer Brücke",
"type": "ST",
"id": "A=1@O=Innsbruck Mühlauer Brücke@X=11402951@Y=47278801@U=81@L=476434001@",
"lon": 11.402951,
"lat": 47.278801,
"time": "17:26:00",
"date": "2021-04-12"
},
"Destination": {
"name": "Innsbruck Technologiezentrum Ost",
"type": "ST",
"id": "A=1@O=Innsbruck Technologiezentrum Ost@X=11435124@Y=47264670@U=81@L=476162202@",
"lon": 11.435124,
"lat": 47.26467,
"time": "17:37:00",
"date": "2021-04-12"
},
"idx": 3
},
{
"Origin": {
"name": "Innsbruck Technologiezentrum Ost",
"type": "ST",
"id": "A=1@O=Innsbruck Technologiezentrum Ost@X=11435124@Y=47264670@U=81@L=476162202@",
"lon": 11.435124,
"lat": 47.26467,
"time": "17:37:00",
"date": "2021-04-12"
},
"Destination": {
"name": "47.265000, 11.441450",
"type": "ADR",
"id": "A=2@O=47.265000, 11.441450@l=@X=11441450@Y=47265000@u=0@",
"lon": 11.44145,
"lat": 47.265,
"time": "17:43:00",
"date": "2021-04-12"
},
"idx": 4
}
]
},
"idx": 0
},
{
"LegList": {
"Leg": [
{
"Origin": {
"name": "47.266450, 11.389962",
"type": "ADR",
"id": "A=2@O=47.266450, 11.389962@l=@X=11389962@Y=47266450@u=0@",
"lon": 11.389962,
"lat": 47.26645,
"time": "17:16:00",
"date": "2021-04-12"
},
"Destination": {
"name": "Innsbruck Terminal Marktplatz",
"type": "ST",
"id": "A=1@O=Innsbruck Terminal Marktplatz@X=11390304@Y=47266639@U=81@L=476439605@",
"lon": 11.390304,
"lat": 47.266639,
"time": "17:18:00",
"date": "2021-04-12"
},
"idx": 0
},
{
"Origin": {
"name": "Innsbruck Terminal Marktplatz",
"type": "ST",
"id": "A=1@O=Innsbruck Terminal Marktplatz@X=11390304@Y=47266639@U=81@L=476439605@",
"lon": 11.390304,
"lat": 47.266639,
"time": "17:18:00",
"date": "2021-04-12"
},
"Destination": {
"name": "Innsbruck Sillpark",
"type": "ST",
"id": "A=1@O=Innsbruck Sillpark@X=11403059@Y=47265488@U=81@L=476158902@",
"lon": 11.403059,
"lat": 47.265488,
"time": "17:24:00",
"date": "2021-04-12"
},
"idx": 1
},
{
"Origin": {
"name": "Innsbruck Sillpark",
"type": "ST",
"id": "A=1@O=Innsbruck Sillpark@X=11403059@Y=47265488@U=81@L=476158902@",
"lon": 11.403059,
"lat": 47.265488,
"time": "17:24:00",
"date": "2021-04-12"
},
"Destination": {
"name": "Innsbruck Sillpark",
"type": "ST",
"id": "A=1@O=Innsbruck Sillpark@X=11403131@Y=47266639@U=81@L=476158904@",
"lon": 11.403131,
"lat": 47.266639,
"time": "17:27:00",
"date": "2021-04-12"
},
"idx": 2
},
{
"Origin": {
"name": "Innsbruck Sillpark",
"type": "ST",
"id": "A=1@O=Innsbruck Sillpark@X=11403131@Y=47266639@U=81@L=476158904@",
"lon": 11.403131,
"lat": 47.266639,
"time": "17:30:00",
"date": "2021-04-12"
},
"Destination": {
"name": "Innsbruck Baggersee",
"type": "ST",
"id": "A=1@O=Innsbruck Baggersee@X=11442702@Y=47265632@U=81@L=476162302@",
"lon": 11.442702,
"lat": 47.265632,
"time": "17:44:00",
"date": "2021-04-12"
},
"idx": 3
},
{
"Origin": {
"name": "Innsbruck Baggersee",
"type": "ST",
"id": "A=1@O=Innsbruck Baggersee@X=11442702@Y=47265632@U=81@L=476162302@",
"lon": 11.442702,
"lat": 47.265632,
"time": "17:44:00",
"date": "2021-04-12"
},
"Destination": {
"name": "47.265000, 11.441450",
"type": "ADR",
"id": "A=2@O=47.265000, 11.441450@l=@X=11441450@Y=47265000@u=0@",
"lon": 11.44145,
"lat": 47.265,
"time": "17:46:00",
"date": "2021-04-12"
},
"idx": 4
}
]
},
"idx": 1
}
]
}Here is the result. Pay attention that there are double entries for origin and destination
of each subtrip.
{
"@context": {
"sh": "http://www.w3.org/ns/shacl#",
"wasa": "https://vocab.sti2.at/wasa/",
"vao": "https://vocab.sti2.at/vao/",
"@vocab": "http://schema.org/"
},
"@id": "_:http%3A%2F%2Fmapping.example.com%2Fmap_action_000_1",
"@type": "Action",
"actionStatus": "http://schema.org/CompletedActionStatus",
"result": [
{
"@id": "_:http%3A%2F%2Fmapping.example.com%2Fmap_result_000_1",
"@type": "Trip",
"arrivalTime": "17:16:00",
"departureTime": "17:43:00",
"name": "A trip from 47.266450, 11.389962 to 47.265000, 11.441450",
"subTrip": [
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/0/leg/0",
"arrivalTime": "17:18:00",
"departureTime": "17:16:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Terminal%20Marktplatz%40X%3D11390304%40Y%3D47266639%40U%3D81%40L%3D476439605%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Terminal%20Marktplatz%40X%3D11390304%40Y%3D47266639%40U%3D81%40L%3D476439605%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D2%40O%3D47.266450%2C%2011.389962%40l%3D%40X%3D11389962%40Y%3D47266450%40u%3D0%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D2%40O%3D47.266450%2C%2011.389962%40l%3D%40X%3D11389962%40Y%3D47266450%40u%3D0%40"
}
]
},
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/0/leg/1",
"arrivalTime": "17:23:00",
"departureTime": "17:18:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20M%C3%BChlauer%20Br%C3%BCcke%40X%3D11403266%40Y%3D47278828%40U%3D81%40L%3D476434003%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Sillpark%40X%3D11403059%40Y%3D47265488%40U%3D81%40L%3D476158902%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Terminal%20Marktplatz%40X%3D11390304%40Y%3D47266639%40U%3D81%40L%3D476439605%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Terminal%20Marktplatz%40X%3D11390304%40Y%3D47266639%40U%3D81%40L%3D476439605%40"
}
]
},
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/0/leg/2",
"arrivalTime": "17:26:00",
"departureTime": "17:23:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20M%C3%BChlauer%20Br%C3%BCcke%40X%3D11402951%40Y%3D47278801%40U%3D81%40L%3D476434001%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Sillpark%40X%3D11403131%40Y%3D47266639%40U%3D81%40L%3D476158904%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20M%C3%BChlauer%20Br%C3%BCcke%40X%3D11403266%40Y%3D47278828%40U%3D81%40L%3D476434003%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Sillpark%40X%3D11403059%40Y%3D47265488%40U%3D81%40L%3D476158902%40"
}
]
},
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/0/leg/3",
"arrivalTime": "17:37:00",
"departureTime": "17:26:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Technologiezentrum%20Ost%40X%3D11435124%40Y%3D47264670%40U%3D81%40L%3D476162202%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Baggersee%40X%3D11442702%40Y%3D47265632%40U%3D81%40L%3D476162302%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20M%C3%BChlauer%20Br%C3%BCcke%40X%3D11402951%40Y%3D47278801%40U%3D81%40L%3D476434001%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Sillpark%40X%3D11403131%40Y%3D47266639%40U%3D81%40L%3D476158904%40"
}
]
},
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/0/leg/4",
"arrivalTime": "17:43:00",
"departureTime": "17:37:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D2%40O%3D47.265000%2C%2011.441450%40l%3D%40X%3D11441450%40Y%3D47265000%40u%3D0%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D2%40O%3D47.265000%2C%2011.441450%40l%3D%40X%3D11441450%40Y%3D47265000%40u%3D0%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Technologiezentrum%20Ost%40X%3D11435124%40Y%3D47264670%40U%3D81%40L%3D476162202%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Baggersee%40X%3D11442702%40Y%3D47265632%40U%3D81%40L%3D476162302%40"
}
]
}
],
"vao:destination": {
"@id": "https://verkehrsauskunftoesterreich.at/location/A%3D2%40O%3D47.265000%2C%2011.441450%40l%3D%40X%3D11441450%40Y%3D47265000%40u%3D0%40",
"@type": "Place",
"geo": {
"@id": "http://verkehrsauskunftoesterreich.at/A%3D2%40O%3D47.265000%2C%2011.441450%40l%3D%40X%3D11441450%40Y%3D47265000%40u%3D0%40/geo",
"@type": "GeoCoordinates",
"latitude": "47.265",
"longitude": "11.44145"
},
"name": "47.265000, 11.441450"
},
"vao:origin": {
"@id": "https://verkehrsauskunftoesterreich.at/location/A%3D2%40O%3D47.266450%2C%2011.389962%40l%3D%40X%3D11389962%40Y%3D47266450%40u%3D0%40",
"@type": "Place",
"geo": {
"@id": "http://adasd.com/A%3D2%40O%3D47.266450%2C%2011.389962%40l%3D%40X%3D11389962%40Y%3D47266450%40u%3D0%40/geo",
"@type": "GeoCoordinates",
"latitude": "47.26645",
"longitude": "11.389962"
},
"name": "47.266450, 11.389962"
}
},
{
"@id": "_:http%3A%2F%2Fmapping.example.com%2Fmap_result_000_2",
"@type": "Trip",
"arrivalTime": "17:16:00",
"departureTime": "17:46:00",
"name": "A trip from 47.266450, 11.389962 to 47.265000, 11.441450",
"subTrip": [
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/1/leg/0",
"arrivalTime": "17:18:00",
"departureTime": "17:16:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Terminal%20Marktplatz%40X%3D11390304%40Y%3D47266639%40U%3D81%40L%3D476439605%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Terminal%20Marktplatz%40X%3D11390304%40Y%3D47266639%40U%3D81%40L%3D476439605%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D2%40O%3D47.266450%2C%2011.389962%40l%3D%40X%3D11389962%40Y%3D47266450%40u%3D0%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D2%40O%3D47.266450%2C%2011.389962%40l%3D%40X%3D11389962%40Y%3D47266450%40u%3D0%40"
}
]
},
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/1/leg/1",
"arrivalTime": "17:24:00",
"departureTime": "17:18:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20M%C3%BChlauer%20Br%C3%BCcke%40X%3D11403266%40Y%3D47278828%40U%3D81%40L%3D476434003%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Sillpark%40X%3D11403059%40Y%3D47265488%40U%3D81%40L%3D476158902%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Terminal%20Marktplatz%40X%3D11390304%40Y%3D47266639%40U%3D81%40L%3D476439605%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Terminal%20Marktplatz%40X%3D11390304%40Y%3D47266639%40U%3D81%40L%3D476439605%40"
}
]
},
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/1/leg/2",
"arrivalTime": "17:27:00",
"departureTime": "17:24:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20M%C3%BChlauer%20Br%C3%BCcke%40X%3D11402951%40Y%3D47278801%40U%3D81%40L%3D476434001%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Sillpark%40X%3D11403131%40Y%3D47266639%40U%3D81%40L%3D476158904%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20M%C3%BChlauer%20Br%C3%BCcke%40X%3D11403266%40Y%3D47278828%40U%3D81%40L%3D476434003%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Sillpark%40X%3D11403059%40Y%3D47265488%40U%3D81%40L%3D476158902%40"
}
]
},
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/1/leg/3",
"arrivalTime": "17:44:00",
"departureTime": "17:30:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Technologiezentrum%20Ost%40X%3D11435124%40Y%3D47264670%40U%3D81%40L%3D476162202%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Baggersee%40X%3D11442702%40Y%3D47265632%40U%3D81%40L%3D476162302%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20M%C3%BChlauer%20Br%C3%BCcke%40X%3D11402951%40Y%3D47278801%40U%3D81%40L%3D476434001%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Sillpark%40X%3D11403131%40Y%3D47266639%40U%3D81%40L%3D476158904%40"
}
]
},
{
"@id": "http://verkehrstauskunftoesterreich.at/trip/1/leg/4",
"arrivalTime": "17:46:00",
"departureTime": "17:44:00",
"vao:destination": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D2%40O%3D47.265000%2C%2011.441450%40l%3D%40X%3D11441450%40Y%3D47265000%40u%3D0%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D2%40O%3D47.265000%2C%2011.441450%40l%3D%40X%3D11441450%40Y%3D47265000%40u%3D0%40"
}
],
"vao:origin": [
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Technologiezentrum%20Ost%40X%3D11435124%40Y%3D47264670%40U%3D81%40L%3D476162202%40"
},
{
"@id": "http://verkehrstauskunftoesterreich.at/location/A%3D1%40O%3DInnsbruck%20Baggersee%40X%3D11442702%40Y%3D47265632%40U%3D81%40L%3D476162302%40"
}
]
}
],
"vao:destination": {
"@id": "https://verkehrsauskunftoesterreich.at/location/A%3D2%40O%3D47.265000%2C%2011.441450%40l%3D%40X%3D11441450%40Y%3D47265000%40u%3D0%40",
"@type": "Place",
"geo": {
"@id": "http://verkehrsauskunftoesterreich.at/A%3D2%40O%3D47.265000%2C%2011.441450%40l%3D%40X%3D11441450%40Y%3D47265000%40u%3D0%40/geo",
"@type": "GeoCoordinates",
"latitude": "47.265",
"longitude": "11.44145"
},
"name": "47.265000, 11.441450"
},
"vao:origin": {
"@id": "https://verkehrsauskunftoesterreich.at/location/A%3D2%40O%3D47.266450%2C%2011.389962%40l%3D%40X%3D11389962%40Y%3D47266450%40u%3D0%40",
"@type": "Place",
"geo": {
"@id": "http://adasd.com/A%3D2%40O%3D47.266450%2C%2011.389962%40l%3D%40X%3D11389962%40Y%3D47266450%40u%3D0%40/geo",
"@type": "GeoCoordinates",
"latitude": "47.26645",
"longitude": "11.389962"
},
"name": "47.266450, 11.389962"
}
}
]
}
The problem here is that the subtriporigin and subtripdestination mappings are joined with subtrip, but not with the trip mapping so for each trip there is an origin and destination in each subtrip. This happens because the idx value of a leg is only unique within a trip and there is no other property that can serve as a primary key. Is there a way to solve this? I was thinking about adding a second join condition like idx, ^^^^idx, basically joining the trip idx reached from each origin and destination. Would that work with the current implementation?