1129 lines
26 KiB
JSON
1129 lines
26 KiB
JSON
{
|
|
"nodes": [
|
|
{
|
|
"id": "area_xiaoqikong",
|
|
"type": "ScenicArea",
|
|
"properties": {
|
|
"name": "小七孔景区",
|
|
"level": "AAAAA",
|
|
"rating": 4.9,
|
|
"open": true,
|
|
"tags": [
|
|
"喀斯特",
|
|
"亲子",
|
|
"自然风光"
|
|
],
|
|
"geo": {
|
|
"longitude": 107.741,
|
|
"latitude": 25.254
|
|
},
|
|
"description": "本文件中的业务属性均为创建流程测试样例,不作为真实经营信息。"
|
|
}
|
|
},
|
|
{
|
|
"id": "area_daqikong",
|
|
"type": "ScenicArea",
|
|
"properties": {
|
|
"name": "大七孔景区",
|
|
"level": "AAAA",
|
|
"rating": 4.7,
|
|
"open": true,
|
|
"tags": [
|
|
"峡谷",
|
|
"天生桥",
|
|
"徒步"
|
|
],
|
|
"geo": {
|
|
"longitude": 107.727,
|
|
"latitude": 25.287
|
|
},
|
|
"description": "复杂图谱手工测试使用的景区节点。"
|
|
}
|
|
},
|
|
{
|
|
"id": "spot_wolongtan",
|
|
"type": "ScenicSpot",
|
|
"properties": {
|
|
"name": "卧龙潭",
|
|
"spot_type": "waterfall",
|
|
"visit_minutes": 70,
|
|
"indoor": false,
|
|
"best_seasons": [
|
|
"spring",
|
|
"summer",
|
|
"autumn"
|
|
],
|
|
"description": "用于测试瀑布类景点和附近资源关系。"
|
|
}
|
|
},
|
|
{
|
|
"id": "spot_laya_waterfall",
|
|
"type": "ScenicSpot",
|
|
"properties": {
|
|
"name": "拉雅瀑布",
|
|
"spot_type": "waterfall",
|
|
"visit_minutes": 45,
|
|
"indoor": false,
|
|
"best_seasons": [
|
|
"summer",
|
|
"autumn"
|
|
],
|
|
"description": "用于测试摄影活动与路线游览顺序。"
|
|
}
|
|
},
|
|
{
|
|
"id": "spot_yuanyang_lake",
|
|
"type": "ScenicSpot",
|
|
"properties": {
|
|
"name": "鸳鸯湖",
|
|
"spot_type": "lake",
|
|
"visit_minutes": 100,
|
|
"indoor": false,
|
|
"best_seasons": [
|
|
"spring",
|
|
"summer"
|
|
],
|
|
"description": "用于测试游船活动。"
|
|
}
|
|
},
|
|
{
|
|
"id": "spot_tiansheng_bridge",
|
|
"type": "ScenicSpot",
|
|
"properties": {
|
|
"name": "天生桥",
|
|
"spot_type": "geological_landscape",
|
|
"visit_minutes": 90,
|
|
"indoor": false,
|
|
"best_seasons": [
|
|
"spring",
|
|
"autumn",
|
|
"winter"
|
|
],
|
|
"description": "用于测试地质景观节点。"
|
|
}
|
|
},
|
|
{
|
|
"id": "spot_yaofeng_cave",
|
|
"type": "ScenicSpot",
|
|
"properties": {
|
|
"name": "妖风洞测试点",
|
|
"spot_type": "cave",
|
|
"visit_minutes": 55,
|
|
"indoor": true,
|
|
"best_seasons": [
|
|
"all_year"
|
|
],
|
|
"description": "虚构测试点,仅用于验证室内景点和布尔属性。"
|
|
}
|
|
},
|
|
{
|
|
"id": "hotel_libo_mountain",
|
|
"type": "Hotel",
|
|
"properties": {
|
|
"name": "测试·荔波山水酒店",
|
|
"stars": 4,
|
|
"price_from": 468.0,
|
|
"family_friendly": true,
|
|
"amenities": [
|
|
"早餐",
|
|
"停车场",
|
|
"接送服务"
|
|
],
|
|
"address": "荔波县测试路 1 号",
|
|
"contact": {
|
|
"phone": "0854-0000001",
|
|
"service": "07:00-23:00"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "hotel_xiaoqikong_family",
|
|
"type": "Hotel",
|
|
"properties": {
|
|
"name": "测试·小七孔亲子酒店",
|
|
"stars": 5,
|
|
"price_from": 688.0,
|
|
"family_friendly": true,
|
|
"amenities": [
|
|
"亲子房",
|
|
"儿童餐",
|
|
"洗衣房"
|
|
],
|
|
"address": "小七孔东门测试区 8 号",
|
|
"contact": {
|
|
"phone": "0854-0000002",
|
|
"service": "24h"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "hotel_daqikong_riverside",
|
|
"type": "Hotel",
|
|
"properties": {
|
|
"name": "测试·大七孔河畔酒店",
|
|
"stars": 3,
|
|
"price_from": 328.0,
|
|
"family_friendly": false,
|
|
"amenities": [
|
|
"早餐",
|
|
"行李寄存"
|
|
],
|
|
"address": "大七孔测试区 3 号",
|
|
"contact": {
|
|
"phone": "0854-0000003",
|
|
"service": "06:30-22:00"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "restaurant_sour_fish",
|
|
"type": "Restaurant",
|
|
"properties": {
|
|
"name": "测试·荔波酸汤鱼馆",
|
|
"cuisine": "黔菜",
|
|
"avg_price": 92.0,
|
|
"specialties": [
|
|
"酸汤鱼",
|
|
"丝娃娃"
|
|
],
|
|
"vegetarian_options": true,
|
|
"opening_hours": "10:30-21:30"
|
|
}
|
|
},
|
|
{
|
|
"id": "restaurant_xiaoqikong_ecology",
|
|
"type": "Restaurant",
|
|
"properties": {
|
|
"name": "测试·小七孔生态餐厅",
|
|
"cuisine": "本地家常菜",
|
|
"avg_price": 68.0,
|
|
"specialties": [
|
|
"豆花烤鱼",
|
|
"时蔬拼盘"
|
|
],
|
|
"vegetarian_options": true,
|
|
"opening_hours": "09:30-20:30"
|
|
}
|
|
},
|
|
{
|
|
"id": "restaurant_yaoshan_flavor",
|
|
"type": "Restaurant",
|
|
"properties": {
|
|
"name": "测试·瑶山风味馆",
|
|
"cuisine": "瑶族风味",
|
|
"avg_price": 118.0,
|
|
"specialties": [
|
|
"长桌宴",
|
|
"竹筒饭"
|
|
],
|
|
"vegetarian_options": false,
|
|
"opening_hours": "11:00-22:00"
|
|
}
|
|
},
|
|
{
|
|
"id": "hub_libo_railway",
|
|
"type": "TransportHub",
|
|
"properties": {
|
|
"name": "荔波高铁站",
|
|
"hub_type": "railway_station",
|
|
"service_hours": "06:00-23:00",
|
|
"accessible": true,
|
|
"facilities": [
|
|
"无障碍通道",
|
|
"行李寄存",
|
|
"旅游咨询"
|
|
],
|
|
"geo": {
|
|
"longitude": 107.887,
|
|
"latitude": 25.401
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "hub_libo_bus",
|
|
"type": "TransportHub",
|
|
"properties": {
|
|
"name": "荔波汽车站",
|
|
"hub_type": "bus_station",
|
|
"service_hours": "06:30-20:30",
|
|
"accessible": true,
|
|
"facilities": [
|
|
"售票厅",
|
|
"候车室"
|
|
],
|
|
"geo": {
|
|
"longitude": 107.882,
|
|
"latitude": 25.413
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "hub_xiaoqikong_east",
|
|
"type": "TransportHub",
|
|
"properties": {
|
|
"name": "小七孔东门游客中心",
|
|
"hub_type": "visitor_center",
|
|
"service_hours": "07:30-18:30",
|
|
"accessible": true,
|
|
"facilities": [
|
|
"换乘车",
|
|
"卫生间",
|
|
"母婴室"
|
|
],
|
|
"geo": {
|
|
"longitude": 107.748,
|
|
"latitude": 25.251
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "route_family_3d",
|
|
"type": "TourRoute",
|
|
"properties": {
|
|
"name": "荔波亲子自然三日测试线路",
|
|
"days": 3,
|
|
"theme": "family_nature",
|
|
"suitable_for": [
|
|
"亲子家庭",
|
|
"自然爱好者"
|
|
],
|
|
"base_price": 1980.0,
|
|
"active": true,
|
|
"extra_metadata": {
|
|
"test_batch": "manual-20260805",
|
|
"difficulty": 2
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "route_depth_2d",
|
|
"type": "TourRoute",
|
|
"properties": {
|
|
"name": "荔波地貌深度两日测试线路",
|
|
"days": 2,
|
|
"theme": "geology_hiking",
|
|
"suitable_for": [
|
|
"摄影爱好者",
|
|
"徒步游客"
|
|
],
|
|
"base_price": 1360.0,
|
|
"active": true,
|
|
"extra_metadata": "允许自由扩展的测试文本"
|
|
}
|
|
},
|
|
{
|
|
"id": "day_family_1",
|
|
"type": "RouteDay",
|
|
"properties": {
|
|
"title": "高铁抵达与瀑布初体验",
|
|
"day_no": 1,
|
|
"summary": "抵达荔波后游览卧龙潭和拉雅瀑布。",
|
|
"estimated_cost": 520.0
|
|
}
|
|
},
|
|
{
|
|
"id": "day_family_2",
|
|
"type": "RouteDay",
|
|
"properties": {
|
|
"title": "鸳鸯湖亲子体验",
|
|
"day_no": 2,
|
|
"summary": "安排鸳鸯湖游船和自然课堂。",
|
|
"estimated_cost": 680.0
|
|
}
|
|
},
|
|
{
|
|
"id": "day_family_3",
|
|
"type": "RouteDay",
|
|
"properties": {
|
|
"title": "大七孔地貌探索",
|
|
"day_no": 3,
|
|
"summary": "游览天生桥并完成返程。",
|
|
"estimated_cost": 430.0
|
|
}
|
|
},
|
|
{
|
|
"id": "day_depth_1",
|
|
"type": "RouteDay",
|
|
"properties": {
|
|
"title": "小七孔摄影深度日",
|
|
"day_no": 1,
|
|
"summary": "按卧龙潭、拉雅瀑布、鸳鸯湖顺序深度游览。",
|
|
"estimated_cost": 620.0
|
|
}
|
|
},
|
|
{
|
|
"id": "day_depth_2",
|
|
"type": "RouteDay",
|
|
"properties": {
|
|
"title": "大七孔峡谷徒步日",
|
|
"day_no": 2,
|
|
"summary": "天生桥和洞穴测试点组合徒步。",
|
|
"estimated_cost": 510.0
|
|
}
|
|
},
|
|
{
|
|
"id": "activity_boat",
|
|
"type": "Activity",
|
|
"properties": {
|
|
"name": "鸳鸯湖测试游船",
|
|
"activity_type": "boat",
|
|
"duration_minutes": 45,
|
|
"min_age": 6,
|
|
"booking_required": true,
|
|
"equipment": [
|
|
"救生衣"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"id": "activity_photography",
|
|
"type": "Activity",
|
|
"properties": {
|
|
"name": "瀑布慢门摄影体验",
|
|
"activity_type": "photography",
|
|
"duration_minutes": 60,
|
|
"min_age": 12,
|
|
"booking_required": false,
|
|
"equipment": [
|
|
"三脚架",
|
|
"减光镜"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"id": "activity_stargazing",
|
|
"type": "Activity",
|
|
"properties": {
|
|
"name": "河畔星空讲解",
|
|
"activity_type": "education",
|
|
"duration_minutes": 50,
|
|
"min_age": 8,
|
|
"booking_required": true,
|
|
"equipment": [
|
|
"望远镜",
|
|
"防潮垫"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"id": "activity_nature_class",
|
|
"type": "Activity",
|
|
"properties": {
|
|
"name": "喀斯特亲子自然课堂",
|
|
"activity_type": "family_education",
|
|
"duration_minutes": 80,
|
|
"min_age": 5,
|
|
"booking_required": true,
|
|
"equipment": [
|
|
"观察手册",
|
|
"放大镜"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"id": "ticket_xiaoqikong",
|
|
"type": "TicketPolicy",
|
|
"properties": {
|
|
"name": "小七孔 2026 测试票务政策",
|
|
"adult_price": 170.0,
|
|
"child_price": 85.0,
|
|
"free_policy": "测试规则:身高 1.2 米以下儿童免票。",
|
|
"valid_from": "2026-01-01",
|
|
"refundable": true
|
|
}
|
|
},
|
|
{
|
|
"id": "ticket_daqikong",
|
|
"type": "TicketPolicy",
|
|
"properties": {
|
|
"name": "大七孔 2026 测试票务政策",
|
|
"adult_price": 90.0,
|
|
"child_price": 45.0,
|
|
"free_policy": "测试规则:证件优惠以现场为准。",
|
|
"valid_from": "2026-01-01",
|
|
"refundable": false
|
|
}
|
|
},
|
|
{
|
|
"id": "tip_rainy",
|
|
"type": "TravelTip",
|
|
"properties": {
|
|
"title": "雨季步道安全测试提示",
|
|
"content": "雨天路面湿滑,请穿防滑鞋并预留更长游览时间。",
|
|
"severity": "warning",
|
|
"audiences": [
|
|
"老人",
|
|
"儿童",
|
|
"徒步游客"
|
|
],
|
|
"updated_at": "2026-08-05T09:00:00+08:00"
|
|
}
|
|
},
|
|
{
|
|
"id": "tip_peak_booking",
|
|
"type": "TravelTip",
|
|
"properties": {
|
|
"title": "高峰期预约测试提示",
|
|
"content": "节假日建议提前预约门票、酒店和体验活动。",
|
|
"severity": "info",
|
|
"audiences": [
|
|
"全部游客"
|
|
],
|
|
"updated_at": "2026-08-05T09:15:00+08:00"
|
|
}
|
|
},
|
|
{
|
|
"id": "tip_family",
|
|
"type": "TravelTip",
|
|
"properties": {
|
|
"title": "亲子装备测试提示",
|
|
"content": "建议携带替换衣物、驱蚊用品和儿童饮水。",
|
|
"severity": "info",
|
|
"audiences": [
|
|
"亲子家庭"
|
|
],
|
|
"updated_at": "2026-08-05T09:30:00+08:00"
|
|
}
|
|
}
|
|
],
|
|
"relations": [
|
|
{
|
|
"type": "CONTAINS",
|
|
"source": "area_xiaoqikong",
|
|
"target": "spot_wolongtan",
|
|
"properties": {
|
|
"recommended_order": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "CONTAINS",
|
|
"source": "area_xiaoqikong",
|
|
"target": "spot_laya_waterfall",
|
|
"properties": {
|
|
"recommended_order": 2
|
|
}
|
|
},
|
|
{
|
|
"type": "CONTAINS",
|
|
"source": "area_xiaoqikong",
|
|
"target": "spot_yuanyang_lake",
|
|
"properties": {
|
|
"recommended_order": 3
|
|
}
|
|
},
|
|
{
|
|
"type": "CONTAINS",
|
|
"source": "area_daqikong",
|
|
"target": "spot_tiansheng_bridge",
|
|
"properties": {
|
|
"recommended_order": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "CONTAINS",
|
|
"source": "area_daqikong",
|
|
"target": "spot_yaofeng_cave",
|
|
"properties": {
|
|
"recommended_order": 2
|
|
}
|
|
},
|
|
{
|
|
"type": "NEARBY",
|
|
"source": "spot_wolongtan",
|
|
"target": "hotel_xiaoqikong_family",
|
|
"properties": {
|
|
"distance_km": 6.8,
|
|
"drive_minutes": 15,
|
|
"walkable": false
|
|
}
|
|
},
|
|
{
|
|
"type": "NEARBY",
|
|
"source": "spot_wolongtan",
|
|
"target": "restaurant_xiaoqikong_ecology",
|
|
"properties": {
|
|
"distance_km": 5.2,
|
|
"drive_minutes": 12,
|
|
"walkable": false
|
|
}
|
|
},
|
|
{
|
|
"type": "NEARBY",
|
|
"source": "spot_laya_waterfall",
|
|
"target": "hub_xiaoqikong_east",
|
|
"properties": {
|
|
"distance_km": 4.0,
|
|
"drive_minutes": 10,
|
|
"walkable": false
|
|
}
|
|
},
|
|
{
|
|
"type": "NEARBY",
|
|
"source": "spot_laya_waterfall",
|
|
"target": "restaurant_xiaoqikong_ecology",
|
|
"properties": {
|
|
"distance_km": 4.8,
|
|
"drive_minutes": 11,
|
|
"walkable": false
|
|
}
|
|
},
|
|
{
|
|
"type": "NEARBY",
|
|
"source": "spot_yuanyang_lake",
|
|
"target": "hotel_xiaoqikong_family",
|
|
"properties": {
|
|
"distance_km": 3.2,
|
|
"drive_minutes": 8,
|
|
"walkable": false
|
|
}
|
|
},
|
|
{
|
|
"type": "NEARBY",
|
|
"source": "spot_yuanyang_lake",
|
|
"target": "restaurant_xiaoqikong_ecology",
|
|
"properties": {
|
|
"distance_km": 3.6,
|
|
"drive_minutes": 9,
|
|
"walkable": false
|
|
}
|
|
},
|
|
{
|
|
"type": "NEARBY",
|
|
"source": "spot_tiansheng_bridge",
|
|
"target": "hotel_daqikong_riverside",
|
|
"properties": {
|
|
"distance_km": 4.5,
|
|
"drive_minutes": 10,
|
|
"walkable": false
|
|
}
|
|
},
|
|
{
|
|
"type": "NEARBY",
|
|
"source": "spot_tiansheng_bridge",
|
|
"target": "restaurant_yaoshan_flavor",
|
|
"properties": {
|
|
"distance_km": 12.0,
|
|
"drive_minutes": 22,
|
|
"walkable": false
|
|
}
|
|
},
|
|
{
|
|
"type": "NEARBY",
|
|
"source": "spot_yaofeng_cave",
|
|
"target": "hub_libo_bus",
|
|
"properties": {
|
|
"distance_km": 26.0,
|
|
"drive_minutes": 40,
|
|
"walkable": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ROUTE_HAS_DAY",
|
|
"source": "route_family_3d",
|
|
"target": "day_family_1",
|
|
"properties": {
|
|
"order": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "ROUTE_HAS_DAY",
|
|
"source": "route_family_3d",
|
|
"target": "day_family_2",
|
|
"properties": {
|
|
"order": 2
|
|
}
|
|
},
|
|
{
|
|
"type": "ROUTE_HAS_DAY",
|
|
"source": "route_family_3d",
|
|
"target": "day_family_3",
|
|
"properties": {
|
|
"order": 3
|
|
}
|
|
},
|
|
{
|
|
"type": "ROUTE_HAS_DAY",
|
|
"source": "route_depth_2d",
|
|
"target": "day_depth_1",
|
|
"properties": {
|
|
"order": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "ROUTE_HAS_DAY",
|
|
"source": "route_depth_2d",
|
|
"target": "day_depth_2",
|
|
"properties": {
|
|
"order": 2
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_family_1",
|
|
"target": "spot_wolongtan",
|
|
"properties": {
|
|
"order": 1,
|
|
"stay_minutes": 70,
|
|
"must_visit": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_family_1",
|
|
"target": "spot_laya_waterfall",
|
|
"properties": {
|
|
"order": 2,
|
|
"stay_minutes": 45,
|
|
"must_visit": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_family_2",
|
|
"target": "spot_yuanyang_lake",
|
|
"properties": {
|
|
"order": 1,
|
|
"stay_minutes": 120,
|
|
"must_visit": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_family_3",
|
|
"target": "spot_tiansheng_bridge",
|
|
"properties": {
|
|
"order": 1,
|
|
"stay_minutes": 90,
|
|
"must_visit": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_family_3",
|
|
"target": "spot_yaofeng_cave",
|
|
"properties": {
|
|
"order": 2,
|
|
"stay_minutes": 55,
|
|
"must_visit": false
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_depth_1",
|
|
"target": "spot_wolongtan",
|
|
"properties": {
|
|
"order": 1,
|
|
"stay_minutes": 100,
|
|
"must_visit": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_depth_1",
|
|
"target": "spot_laya_waterfall",
|
|
"properties": {
|
|
"order": 2,
|
|
"stay_minutes": 80,
|
|
"must_visit": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_depth_1",
|
|
"target": "spot_yuanyang_lake",
|
|
"properties": {
|
|
"order": 3,
|
|
"stay_minutes": 110,
|
|
"must_visit": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_depth_2",
|
|
"target": "spot_tiansheng_bridge",
|
|
"properties": {
|
|
"order": 1,
|
|
"stay_minutes": 120,
|
|
"must_visit": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_VISITS",
|
|
"source": "day_depth_2",
|
|
"target": "spot_yaofeng_cave",
|
|
"properties": {
|
|
"order": 2,
|
|
"stay_minutes": 70,
|
|
"must_visit": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_STAYS_AT",
|
|
"source": "day_family_1",
|
|
"target": "hotel_xiaoqikong_family",
|
|
"properties": {
|
|
"check_in": "18:30",
|
|
"nights": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_STAYS_AT",
|
|
"source": "day_family_2",
|
|
"target": "hotel_xiaoqikong_family",
|
|
"properties": {
|
|
"check_in": "19:00",
|
|
"nights": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_STAYS_AT",
|
|
"source": "day_family_3",
|
|
"target": "hotel_libo_mountain",
|
|
"properties": {
|
|
"check_in": "17:30",
|
|
"nights": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_STAYS_AT",
|
|
"source": "day_depth_1",
|
|
"target": "hotel_libo_mountain",
|
|
"properties": {
|
|
"check_in": "20:00",
|
|
"nights": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_STAYS_AT",
|
|
"source": "day_depth_2",
|
|
"target": "hotel_daqikong_riverside",
|
|
"properties": {
|
|
"check_in": "18:00",
|
|
"nights": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_DINES_AT",
|
|
"source": "day_family_1",
|
|
"target": "restaurant_sour_fish",
|
|
"properties": {
|
|
"meal": "dinner",
|
|
"reservation_required": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_DINES_AT",
|
|
"source": "day_family_2",
|
|
"target": "restaurant_xiaoqikong_ecology",
|
|
"properties": {
|
|
"meal": "lunch",
|
|
"reservation_required": false
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_DINES_AT",
|
|
"source": "day_family_3",
|
|
"target": "restaurant_yaoshan_flavor",
|
|
"properties": {
|
|
"meal": "lunch",
|
|
"reservation_required": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_DINES_AT",
|
|
"source": "day_depth_1",
|
|
"target": "restaurant_xiaoqikong_ecology",
|
|
"properties": {
|
|
"meal": "dinner",
|
|
"reservation_required": false
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_DINES_AT",
|
|
"source": "day_depth_2",
|
|
"target": "restaurant_sour_fish",
|
|
"properties": {
|
|
"meal": "dinner",
|
|
"reservation_required": true
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_USES_HUB",
|
|
"source": "day_family_1",
|
|
"target": "hub_libo_railway",
|
|
"properties": {
|
|
"mode": "high_speed_rail",
|
|
"departure_time": "10:20"
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_USES_HUB",
|
|
"source": "day_family_2",
|
|
"target": "hub_xiaoqikong_east",
|
|
"properties": {
|
|
"mode": "scenic_shuttle",
|
|
"departure_time": "08:00"
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_USES_HUB",
|
|
"source": "day_family_3",
|
|
"target": "hub_libo_bus",
|
|
"properties": {
|
|
"mode": "coach",
|
|
"departure_time": "16:30"
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_USES_HUB",
|
|
"source": "day_depth_1",
|
|
"target": "hub_xiaoqikong_east",
|
|
"properties": {
|
|
"mode": "scenic_shuttle",
|
|
"departure_time": "07:30"
|
|
}
|
|
},
|
|
{
|
|
"type": "DAY_USES_HUB",
|
|
"source": "day_depth_2",
|
|
"target": "hub_libo_railway",
|
|
"properties": {
|
|
"mode": "chartered_bus",
|
|
"departure_time": "17:20"
|
|
}
|
|
},
|
|
{
|
|
"type": "OFFERS_ACTIVITY",
|
|
"source": "spot_yuanyang_lake",
|
|
"target": "activity_boat",
|
|
"properties": {
|
|
"season": "summer",
|
|
"extra_fee": 60.0
|
|
}
|
|
},
|
|
{
|
|
"type": "OFFERS_ACTIVITY",
|
|
"source": "spot_laya_waterfall",
|
|
"target": "activity_photography",
|
|
"properties": {
|
|
"season": "all_year",
|
|
"extra_fee": 0.0
|
|
}
|
|
},
|
|
{
|
|
"type": "OFFERS_ACTIVITY",
|
|
"source": "spot_tiansheng_bridge",
|
|
"target": "activity_stargazing",
|
|
"properties": {
|
|
"season": "autumn",
|
|
"extra_fee": 88.0
|
|
}
|
|
},
|
|
{
|
|
"type": "OFFERS_ACTIVITY",
|
|
"source": "spot_wolongtan",
|
|
"target": "activity_nature_class",
|
|
"properties": {
|
|
"season": "spring",
|
|
"extra_fee": 120.0
|
|
}
|
|
},
|
|
{
|
|
"type": "HAS_TICKET_POLICY",
|
|
"source": "area_xiaoqikong",
|
|
"target": "ticket_xiaoqikong",
|
|
"properties": {
|
|
"channel": "official_test_channel"
|
|
}
|
|
},
|
|
{
|
|
"type": "HAS_TICKET_POLICY",
|
|
"source": "area_daqikong",
|
|
"target": "ticket_daqikong",
|
|
"properties": {
|
|
"channel": "official_test_channel"
|
|
}
|
|
},
|
|
{
|
|
"type": "APPLIES_TIP",
|
|
"source": "tip_rainy",
|
|
"target": "area_xiaoqikong",
|
|
"properties": {
|
|
"context": "rainy_season",
|
|
"priority": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "APPLIES_TIP",
|
|
"source": "tip_rainy",
|
|
"target": "spot_tiansheng_bridge",
|
|
"properties": {
|
|
"context": "wet_trail",
|
|
"priority": 1
|
|
}
|
|
},
|
|
{
|
|
"type": "APPLIES_TIP",
|
|
"source": "tip_peak_booking",
|
|
"target": "route_family_3d",
|
|
"properties": {
|
|
"context": "public_holiday",
|
|
"priority": 2
|
|
}
|
|
},
|
|
{
|
|
"type": "APPLIES_TIP",
|
|
"source": "tip_peak_booking",
|
|
"target": "hotel_xiaoqikong_family",
|
|
"properties": {
|
|
"context": "room_inventory",
|
|
"priority": 2
|
|
}
|
|
},
|
|
{
|
|
"type": "APPLIES_TIP",
|
|
"source": "tip_family",
|
|
"target": "route_family_3d",
|
|
"properties": {
|
|
"context": "family_trip",
|
|
"priority": 3
|
|
}
|
|
},
|
|
{
|
|
"type": "APPLIES_TIP",
|
|
"source": "tip_family",
|
|
"target": "hub_xiaoqikong_east",
|
|
"properties": {
|
|
"context": "visitor_center",
|
|
"priority": 3
|
|
}
|
|
},
|
|
{
|
|
"type": "ROUTE_STARTS_AT",
|
|
"source": "route_family_3d",
|
|
"target": "hub_libo_railway",
|
|
"properties": {
|
|
"departure_time": "10:30"
|
|
}
|
|
},
|
|
{
|
|
"type": "ROUTE_STARTS_AT",
|
|
"source": "route_depth_2d",
|
|
"target": "hub_libo_bus",
|
|
"properties": {
|
|
"departure_time": "07:00"
|
|
}
|
|
},
|
|
{
|
|
"type": "ROUTE_ENDS_AT",
|
|
"source": "route_family_3d",
|
|
"target": "hub_libo_railway",
|
|
"properties": {
|
|
"arrival_time": "18:10"
|
|
}
|
|
},
|
|
{
|
|
"type": "ROUTE_ENDS_AT",
|
|
"source": "route_depth_2d",
|
|
"target": "hub_libo_railway",
|
|
"properties": {
|
|
"arrival_time": "17:40"
|
|
}
|
|
},
|
|
{
|
|
"type": "ALTERNATIVE_TO",
|
|
"source": "hotel_xiaoqikong_family",
|
|
"target": "hotel_libo_mountain",
|
|
"properties": {
|
|
"reason": "亲子房满房时可替换为县城酒店。",
|
|
"score": 0.82
|
|
}
|
|
},
|
|
{
|
|
"type": "ALTERNATIVE_TO",
|
|
"source": "restaurant_xiaoqikong_ecology",
|
|
"target": "restaurant_sour_fish",
|
|
"properties": {
|
|
"reason": "景区餐厅满位时可切换到县城餐厅。",
|
|
"score": 0.76
|
|
}
|
|
},
|
|
{
|
|
"type": "CONNECTS",
|
|
"source": "hub_libo_railway",
|
|
"target": "hub_libo_bus",
|
|
"properties": {
|
|
"mode": "city_bus",
|
|
"duration_minutes": 25,
|
|
"distance_km": 14.5
|
|
}
|
|
},
|
|
{
|
|
"type": "CONNECTS",
|
|
"source": "hub_libo_bus",
|
|
"target": "hub_xiaoqikong_east",
|
|
"properties": {
|
|
"mode": "tourist_coach",
|
|
"duration_minutes": 45,
|
|
"distance_km": 29.0
|
|
}
|
|
},
|
|
{
|
|
"type": "CONNECTS",
|
|
"source": "hub_libo_railway",
|
|
"target": "hub_xiaoqikong_east",
|
|
"properties": {
|
|
"mode": "direct_shuttle",
|
|
"duration_minutes": 55,
|
|
"distance_km": 36.0
|
|
}
|
|
},
|
|
{
|
|
"type": "CONNECTS",
|
|
"source": "hub_xiaoqikong_east",
|
|
"target": "hub_libo_railway",
|
|
"properties": {
|
|
"mode": "return_shuttle",
|
|
"duration_minutes": 60,
|
|
"distance_km": 36.0
|
|
}
|
|
},
|
|
{
|
|
"type": "RECOMMENDS",
|
|
"source": "route_family_3d",
|
|
"target": "activity_boat",
|
|
"properties": {
|
|
"priority": 1,
|
|
"reason": "适合亲子共同参与。"
|
|
}
|
|
},
|
|
{
|
|
"type": "RECOMMENDS",
|
|
"source": "route_family_3d",
|
|
"target": "activity_nature_class",
|
|
"properties": {
|
|
"priority": 2,
|
|
"reason": "补充自然科普体验。"
|
|
}
|
|
},
|
|
{
|
|
"type": "RECOMMENDS",
|
|
"source": "route_depth_2d",
|
|
"target": "activity_photography",
|
|
"properties": {
|
|
"priority": 1,
|
|
"reason": "符合摄影主题。"
|
|
}
|
|
},
|
|
{
|
|
"type": "RECOMMENDS",
|
|
"source": "route_depth_2d",
|
|
"target": "activity_stargazing",
|
|
"properties": {
|
|
"priority": 2,
|
|
"reason": "适合作为徒步后的夜间活动。"
|
|
}
|
|
}
|
|
]
|
|
}
|