keepset 0.25.0 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/{bundled-Dkvod55t.js → bundled-qRweq3SB.js} +578 -36
- package/dist/{categories-zC2eMs6y.d.ts → categories-Dwo8gSp_.d.ts} +139 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/node/fetch-dataset.d.ts +1 -1
- package/dist/node/fetch-dataset.js +855 -58
- package/dist-cli/keepset.mjs +13 -3
- package/package.json +1 -1
- package/schemas/entry.schema.json +1 -1
- package/schemas/manifest.schema.json +1 -1
|
@@ -453,8 +453,21 @@ const CitationSchema = z.object({
|
|
|
453
453
|
}).strict();
|
|
454
454
|
/** A relative path inside an archive or a catalogue: `/`-separated segments, none empty, `.` or `..`, so it can never climb out of the directory it is resolved against. */
|
|
455
455
|
const RelativePathSchema = z.string().refine((path) => path.split("/").every((segment) => segment !== "" && segment !== "." && segment !== ".."), { message: "must be a relative path of non-empty segments with no '.' or '..'" });
|
|
456
|
-
/**
|
|
457
|
-
const
|
|
456
|
+
/** A regular expression a member path must match in full, in JavaScript syntax; it must compile, so a recipe with a malformed pattern is refused when the entry is parsed and not when it runs. */
|
|
457
|
+
const MemberPatternSchema = z.string().min(1).refine((pattern) => {
|
|
458
|
+
try {
|
|
459
|
+
new RegExp(`^(?:${pattern})$`, "u");
|
|
460
|
+
return true;
|
|
461
|
+
} catch {
|
|
462
|
+
return false;
|
|
463
|
+
}
|
|
464
|
+
}, { message: "must be a valid regular expression" });
|
|
465
|
+
/** Which file of an archive to read: a member path, matched against a member's whole path or its trailing segments (so `net.gml` finds `net/net.gml`), the member whose name ends with one of a list of extensions (a format can have several, such as Pajek's `.net` and `.paj`), or the member whose whole path matches a regular expression (for an archive whose instance files cannot be told from its readmes and solutions by extension). A `member` selector must match exactly one member when the recipe runs, a `members` selector at least one; macOS resource-fork members (`__MACOSX/` and `._` files) never match. */
|
|
466
|
+
const ArchiveMemberSchema = z.union([
|
|
467
|
+
z.object({ path: RelativePathSchema }).strict(),
|
|
468
|
+
z.object({ extensions: z.array(z.string().regex(/^\.[A-Za-z0-9][A-Za-z0-9.]*$/, { message: "must be a file extension such as .mtx" })).min(1) }).strict(),
|
|
469
|
+
z.object({ pattern: MemberPatternSchema }).strict()
|
|
470
|
+
]);
|
|
458
471
|
/** The archive kinds that hold several files, from which a recipe selects one (`member`) or every one a selector matches (`members`). */
|
|
459
472
|
const FileArchiveKindSchema = z.enum([
|
|
460
473
|
"zip",
|
|
@@ -517,6 +530,10 @@ const ParserSchema = z.discriminatedUnion("format", [
|
|
|
517
530
|
format: z.literal("pajek"),
|
|
518
531
|
encoding: EncodingSchema
|
|
519
532
|
}).strict(),
|
|
533
|
+
z.object({
|
|
534
|
+
format: z.literal("customer-points"),
|
|
535
|
+
encoding: EncodingSchema
|
|
536
|
+
}).strict(),
|
|
520
537
|
z.object({
|
|
521
538
|
format: z.literal("solomon"),
|
|
522
539
|
encoding: EncodingSchema
|
|
@@ -529,6 +546,18 @@ const ParserSchema = z.discriminatedUnion("format", [
|
|
|
529
546
|
format: z.literal("toptw"),
|
|
530
547
|
encoding: EncodingSchema
|
|
531
548
|
}).strict(),
|
|
549
|
+
z.object({
|
|
550
|
+
format: z.literal("tsplib"),
|
|
551
|
+
encoding: EncodingSchema
|
|
552
|
+
}).strict(),
|
|
553
|
+
z.object({
|
|
554
|
+
format: z.literal("verolog-2019"),
|
|
555
|
+
encoding: z.literal("utf-8")
|
|
556
|
+
}).strict(),
|
|
557
|
+
z.object({
|
|
558
|
+
format: z.literal("vrp-rep"),
|
|
559
|
+
encoding: z.literal("utf-8")
|
|
560
|
+
}).strict(),
|
|
532
561
|
z.object({
|
|
533
562
|
format: z.literal("csv-table"),
|
|
534
563
|
encoding: EncodingSchema,
|
|
@@ -988,7 +1017,7 @@ var catalogue_default = {
|
|
|
988
1017
|
"id": "keepset",
|
|
989
1018
|
"name": "keepset",
|
|
990
1019
|
"description": "The keepset catalogue: datasets with machine-readable recipes that fetch each one and normalise it into its category's target shape.",
|
|
991
|
-
"version": "1.
|
|
1020
|
+
"version": "1.17.0",
|
|
992
1021
|
"repository": "https://github.com/Mearman/keepset",
|
|
993
1022
|
"namespaceAliases": {
|
|
994
1023
|
"networkrepository": ["nr"],
|
|
@@ -7077,7 +7106,7 @@ var catalogue_default = {
|
|
|
7077
7106
|
"citations": [],
|
|
7078
7107
|
"recipe": {
|
|
7079
7108
|
"status": "not-fetchable",
|
|
7080
|
-
"reason": "The instances are keyword format text files
|
|
7109
|
+
"reason": "The instances are keyword format text files with node positions, time windows, service durations and a travel time matrix, but the repository holds them as a very large number of separate files in size directories and publishes no archive of the curated selection, so a recipe has no single download to read; the repository's own archive holds every instance and is several gigabytes."
|
|
7081
7110
|
},
|
|
7082
7111
|
"crosswalk": { "file": "crosswalks/or-v1/nodes.json" },
|
|
7083
7112
|
"expectedCounts": {},
|
|
@@ -7095,20 +7124,153 @@ var catalogue_default = {
|
|
|
7095
7124
|
"skills",
|
|
7096
7125
|
"travelTime"
|
|
7097
7126
|
],
|
|
7098
|
-
"category": "or/v1",
|
|
7127
|
+
"category": "or-set/v1",
|
|
7099
7128
|
"sources": [{
|
|
7100
7129
|
"url": "https://github.com/BasCoding/VeRoLog-2019",
|
|
7101
7130
|
"retrieved": "2026-10-19",
|
|
7102
7131
|
"status": "live"
|
|
7132
|
+
}, {
|
|
7133
|
+
"url": "https://codeload.github.com/BasCoding/VeRoLog-2019/zip/refs/heads/main",
|
|
7134
|
+
"retrieved": "2026-10-19",
|
|
7135
|
+
"status": "live"
|
|
7103
7136
|
}],
|
|
7104
7137
|
"licence": { "kind": "unrecorded" },
|
|
7105
7138
|
"citations": [],
|
|
7106
7139
|
"recipe": {
|
|
7107
|
-
"status": "
|
|
7108
|
-
"
|
|
7140
|
+
"status": "fetchable",
|
|
7141
|
+
"source": 1,
|
|
7142
|
+
"archive": {
|
|
7143
|
+
"kind": "zip",
|
|
7144
|
+
"members": { "pattern": "VeRoLog-2019-main/All Instances/VSC2019_(?:EX\\d\\d|ORTEC_early_\\d\\d)\\.txt" }
|
|
7145
|
+
},
|
|
7146
|
+
"parser": {
|
|
7147
|
+
"format": "verolog-2019",
|
|
7148
|
+
"encoding": "utf-8"
|
|
7149
|
+
}
|
|
7109
7150
|
},
|
|
7110
|
-
"crosswalk": {
|
|
7111
|
-
|
|
7151
|
+
"crosswalk": {
|
|
7152
|
+
"source": "verolog-2019",
|
|
7153
|
+
"target": "or-set/v1",
|
|
7154
|
+
"rules": [
|
|
7155
|
+
{
|
|
7156
|
+
"op": "move",
|
|
7157
|
+
"from": "meta",
|
|
7158
|
+
"to": "meta"
|
|
7159
|
+
},
|
|
7160
|
+
{
|
|
7161
|
+
"op": "move",
|
|
7162
|
+
"from": "members[].id",
|
|
7163
|
+
"to": "instances[].id"
|
|
7164
|
+
},
|
|
7165
|
+
{
|
|
7166
|
+
"op": "move",
|
|
7167
|
+
"from": "members[].meta.dataset",
|
|
7168
|
+
"to": "instances[].meta.dataset"
|
|
7169
|
+
},
|
|
7170
|
+
{
|
|
7171
|
+
"op": "move",
|
|
7172
|
+
"from": "members[].meta.name",
|
|
7173
|
+
"to": "instances[].meta.name"
|
|
7174
|
+
},
|
|
7175
|
+
{
|
|
7176
|
+
"op": "move",
|
|
7177
|
+
"from": "members[].meta.days",
|
|
7178
|
+
"to": "instances[].meta.days"
|
|
7179
|
+
},
|
|
7180
|
+
{
|
|
7181
|
+
"op": "move",
|
|
7182
|
+
"from": "members[].meta.truckCapacity",
|
|
7183
|
+
"to": "instances[].meta.truckCapacity"
|
|
7184
|
+
},
|
|
7185
|
+
{
|
|
7186
|
+
"op": "move",
|
|
7187
|
+
"from": "members[].meta.truckMaxDistance",
|
|
7188
|
+
"to": "instances[].meta.truckMaxDistance"
|
|
7189
|
+
},
|
|
7190
|
+
{
|
|
7191
|
+
"op": "move",
|
|
7192
|
+
"from": "members[].meta.truckDistanceCost",
|
|
7193
|
+
"to": "instances[].meta.truckDistanceCost"
|
|
7194
|
+
},
|
|
7195
|
+
{
|
|
7196
|
+
"op": "move",
|
|
7197
|
+
"from": "members[].meta.truckDayCost",
|
|
7198
|
+
"to": "instances[].meta.truckDayCost"
|
|
7199
|
+
},
|
|
7200
|
+
{
|
|
7201
|
+
"op": "move",
|
|
7202
|
+
"from": "members[].meta.truckCost",
|
|
7203
|
+
"to": "instances[].meta.truckCost"
|
|
7204
|
+
},
|
|
7205
|
+
{
|
|
7206
|
+
"op": "move",
|
|
7207
|
+
"from": "members[].meta.technicianDistanceCost",
|
|
7208
|
+
"to": "instances[].meta.technicianDistanceCost"
|
|
7209
|
+
},
|
|
7210
|
+
{
|
|
7211
|
+
"op": "move",
|
|
7212
|
+
"from": "members[].meta.technicianDayCost",
|
|
7213
|
+
"to": "instances[].meta.technicianDayCost"
|
|
7214
|
+
},
|
|
7215
|
+
{
|
|
7216
|
+
"op": "move",
|
|
7217
|
+
"from": "members[].meta.technicianCost",
|
|
7218
|
+
"to": "instances[].meta.technicianCost"
|
|
7219
|
+
},
|
|
7220
|
+
{
|
|
7221
|
+
"op": "move",
|
|
7222
|
+
"from": "members[].meta.technicians",
|
|
7223
|
+
"to": "instances[].meta.technicians"
|
|
7224
|
+
},
|
|
7225
|
+
{
|
|
7226
|
+
"op": "move",
|
|
7227
|
+
"from": "members[].nodes[].id",
|
|
7228
|
+
"to": "instances[].nodes[].id"
|
|
7229
|
+
},
|
|
7230
|
+
{
|
|
7231
|
+
"op": "move",
|
|
7232
|
+
"from": "members[].nodes[].machine",
|
|
7233
|
+
"to": "instances[].nodes[].skill"
|
|
7234
|
+
},
|
|
7235
|
+
{
|
|
7236
|
+
"op": "move",
|
|
7237
|
+
"from": "members[].nodes[].x",
|
|
7238
|
+
"to": "instances[].nodes[].x"
|
|
7239
|
+
},
|
|
7240
|
+
{
|
|
7241
|
+
"op": "move",
|
|
7242
|
+
"from": "members[].nodes[].y",
|
|
7243
|
+
"to": "instances[].nodes[].y"
|
|
7244
|
+
},
|
|
7245
|
+
{
|
|
7246
|
+
"op": "move",
|
|
7247
|
+
"from": "members[].nodes[].kind",
|
|
7248
|
+
"to": "instances[].nodes[].kind"
|
|
7249
|
+
},
|
|
7250
|
+
{
|
|
7251
|
+
"op": "move",
|
|
7252
|
+
"from": "members[].nodes[].location",
|
|
7253
|
+
"to": "instances[].nodes[].location"
|
|
7254
|
+
},
|
|
7255
|
+
{
|
|
7256
|
+
"op": "move",
|
|
7257
|
+
"from": "members[].nodes[].fromDay",
|
|
7258
|
+
"to": "instances[].nodes[].fromDay"
|
|
7259
|
+
},
|
|
7260
|
+
{
|
|
7261
|
+
"op": "move",
|
|
7262
|
+
"from": "members[].nodes[].toDay",
|
|
7263
|
+
"to": "instances[].nodes[].toDay"
|
|
7264
|
+
},
|
|
7265
|
+
{
|
|
7266
|
+
"op": "move",
|
|
7267
|
+
"from": "members[].nodes[].amount",
|
|
7268
|
+
"to": "instances[].nodes[].amount"
|
|
7269
|
+
}
|
|
7270
|
+
],
|
|
7271
|
+
"oneWay": []
|
|
7272
|
+
},
|
|
7273
|
+
"expectedCounts": { "instances": 27 },
|
|
7112
7274
|
"properties": { "surveyId": "or-24" }
|
|
7113
7275
|
},
|
|
7114
7276
|
{
|
|
@@ -17174,7 +17336,7 @@ var catalogue_default = {
|
|
|
17174
17336
|
"citations": [],
|
|
17175
17337
|
"recipe": {
|
|
17176
17338
|
"status": "not-fetchable",
|
|
17177
|
-
"reason": "The instances are keyword format text files
|
|
17339
|
+
"reason": "The instances are keyword format text files that the Wayback Machine serves one at a time, as the archive zips of each set were not captured, and a recipe reads one download, so no recipe reaches the collection."
|
|
17178
17340
|
},
|
|
17179
17341
|
"crosswalk": { "file": "crosswalks/or-v1/nodes.json" },
|
|
17180
17342
|
"expectedCounts": {},
|
|
@@ -56309,20 +56471,119 @@ var catalogue_default = {
|
|
|
56309
56471
|
"territory",
|
|
56310
56472
|
"travelTime"
|
|
56311
56473
|
],
|
|
56312
|
-
"category": "or/v1",
|
|
56474
|
+
"category": "or-set/v1",
|
|
56313
56475
|
"sources": [{
|
|
56314
56476
|
"url": "http://www.vrp-rep.org/datasets/download/angelelli-et-al-2014.zip",
|
|
56315
56477
|
"retrieved": "2026-10-19",
|
|
56316
56478
|
"status": "live"
|
|
56479
|
+
}, {
|
|
56480
|
+
"url": "https://www.vrp-rep.org/datasets/download/angelelli-et-al-2014.zip",
|
|
56481
|
+
"retrieved": "2026-10-19",
|
|
56482
|
+
"status": "live"
|
|
56317
56483
|
}],
|
|
56318
56484
|
"licence": { "kind": "unrecorded" },
|
|
56319
56485
|
"citations": [],
|
|
56320
56486
|
"recipe": {
|
|
56321
|
-
"status": "
|
|
56322
|
-
"
|
|
56487
|
+
"status": "fetchable",
|
|
56488
|
+
"source": 1,
|
|
56489
|
+
"archive": {
|
|
56490
|
+
"kind": "zip",
|
|
56491
|
+
"members": { "extensions": [".cop"] }
|
|
56492
|
+
},
|
|
56493
|
+
"parser": {
|
|
56494
|
+
"format": "tsplib",
|
|
56495
|
+
"encoding": "utf-8"
|
|
56496
|
+
}
|
|
56323
56497
|
},
|
|
56324
|
-
"crosswalk": {
|
|
56325
|
-
|
|
56498
|
+
"crosswalk": {
|
|
56499
|
+
"source": "tsplib",
|
|
56500
|
+
"target": "or-set/v1",
|
|
56501
|
+
"rules": [
|
|
56502
|
+
{
|
|
56503
|
+
"op": "move",
|
|
56504
|
+
"from": "meta",
|
|
56505
|
+
"to": "meta"
|
|
56506
|
+
},
|
|
56507
|
+
{
|
|
56508
|
+
"op": "move",
|
|
56509
|
+
"from": "members[].id",
|
|
56510
|
+
"to": "instances[].id"
|
|
56511
|
+
},
|
|
56512
|
+
{
|
|
56513
|
+
"op": "move",
|
|
56514
|
+
"from": "members[].meta.name",
|
|
56515
|
+
"to": "instances[].meta.name"
|
|
56516
|
+
},
|
|
56517
|
+
{
|
|
56518
|
+
"op": "move",
|
|
56519
|
+
"from": "members[].meta.type",
|
|
56520
|
+
"to": "instances[].meta.type"
|
|
56521
|
+
},
|
|
56522
|
+
{
|
|
56523
|
+
"op": "move",
|
|
56524
|
+
"from": "members[].meta.budget",
|
|
56525
|
+
"to": "instances[].meta.budget"
|
|
56526
|
+
},
|
|
56527
|
+
{
|
|
56528
|
+
"op": "move",
|
|
56529
|
+
"from": "members[].meta.edgeWeightType",
|
|
56530
|
+
"to": "instances[].meta.edgeWeightType"
|
|
56531
|
+
},
|
|
56532
|
+
{
|
|
56533
|
+
"op": "move",
|
|
56534
|
+
"from": "members[].meta.setPrizes",
|
|
56535
|
+
"to": "instances[].meta.setPrizes"
|
|
56536
|
+
},
|
|
56537
|
+
{
|
|
56538
|
+
"op": "move",
|
|
56539
|
+
"from": "members[].nodes[].id",
|
|
56540
|
+
"to": "instances[].nodes[].id"
|
|
56541
|
+
},
|
|
56542
|
+
{
|
|
56543
|
+
"op": "move",
|
|
56544
|
+
"from": "members[].nodes[].lat",
|
|
56545
|
+
"to": "instances[].nodes[].lat"
|
|
56546
|
+
},
|
|
56547
|
+
{
|
|
56548
|
+
"op": "move",
|
|
56549
|
+
"from": "members[].nodes[].lon",
|
|
56550
|
+
"to": "instances[].nodes[].lon"
|
|
56551
|
+
},
|
|
56552
|
+
{
|
|
56553
|
+
"op": "move",
|
|
56554
|
+
"from": "members[].nodes[].x",
|
|
56555
|
+
"to": "instances[].nodes[].x"
|
|
56556
|
+
},
|
|
56557
|
+
{
|
|
56558
|
+
"op": "move",
|
|
56559
|
+
"from": "members[].nodes[].y",
|
|
56560
|
+
"to": "instances[].nodes[].y"
|
|
56561
|
+
},
|
|
56562
|
+
{
|
|
56563
|
+
"op": "move",
|
|
56564
|
+
"from": "members[].nodes[].clusters",
|
|
56565
|
+
"to": "instances[].nodes[].clusters"
|
|
56566
|
+
}
|
|
56567
|
+
],
|
|
56568
|
+
"oneWay": [
|
|
56569
|
+
{
|
|
56570
|
+
"op": "drop",
|
|
56571
|
+
"from": "members[].meta.totalPrize",
|
|
56572
|
+
"direction": "encode"
|
|
56573
|
+
},
|
|
56574
|
+
{
|
|
56575
|
+
"op": "drop",
|
|
56576
|
+
"from": "members[].nodes[].prize",
|
|
56577
|
+
"direction": "encode"
|
|
56578
|
+
},
|
|
56579
|
+
{
|
|
56580
|
+
"op": "drop",
|
|
56581
|
+
"from": "members[].nodes[].probability",
|
|
56582
|
+
"direction": "encode"
|
|
56583
|
+
}
|
|
56584
|
+
]
|
|
56585
|
+
},
|
|
56586
|
+
"expectedCounts": { "instances": 924 },
|
|
56326
56587
|
"properties": { "surveyId": "or-4" }
|
|
56327
56588
|
},
|
|
56328
56589
|
{
|
|
@@ -56333,7 +56594,7 @@ var catalogue_default = {
|
|
|
56333
56594
|
"description": "Park-and-loop routing instances built from real client locations in France, with coordinates and service times in minutes.",
|
|
56334
56595
|
"domain": "Vehicle routing with time windows",
|
|
56335
56596
|
"tags": ["location", "duration"],
|
|
56336
|
-
"category": "or/v1",
|
|
56597
|
+
"category": "or-set/v1",
|
|
56337
56598
|
"sources": [{
|
|
56338
56599
|
"url": "http://www.vrp-rep.org/datasets/download/cabrera-et-al-2021.zip",
|
|
56339
56600
|
"retrieved": "2026-10-19",
|
|
@@ -56346,12 +56607,86 @@ var catalogue_default = {
|
|
|
56346
56607
|
"licence": { "kind": "unrecorded" },
|
|
56347
56608
|
"citations": [],
|
|
56348
56609
|
"recipe": {
|
|
56349
|
-
"status": "
|
|
56350
|
-
"
|
|
56610
|
+
"status": "fetchable",
|
|
56611
|
+
"source": 1,
|
|
56612
|
+
"archive": {
|
|
56613
|
+
"kind": "zip",
|
|
56614
|
+
"members": { "pattern": "Coordinates_\\d+\\.txt" }
|
|
56615
|
+
},
|
|
56616
|
+
"parser": {
|
|
56617
|
+
"format": "csv-table",
|
|
56618
|
+
"encoding": "utf-8",
|
|
56619
|
+
"delimiter": "comma",
|
|
56620
|
+
"skipLines": 0,
|
|
56621
|
+
"idColumn": "ID",
|
|
56622
|
+
"numericColumns": [
|
|
56623
|
+
{
|
|
56624
|
+
"column": "Longitude",
|
|
56625
|
+
"factor": 1
|
|
56626
|
+
},
|
|
56627
|
+
{
|
|
56628
|
+
"column": "Latitude",
|
|
56629
|
+
"factor": 1
|
|
56630
|
+
},
|
|
56631
|
+
{
|
|
56632
|
+
"column": "ServiceTime_min",
|
|
56633
|
+
"factor": 60
|
|
56634
|
+
}
|
|
56635
|
+
],
|
|
56636
|
+
"columns": [
|
|
56637
|
+
"ServiceTime_min",
|
|
56638
|
+
"Latitude",
|
|
56639
|
+
"Longitude"
|
|
56640
|
+
]
|
|
56641
|
+
}
|
|
56351
56642
|
},
|
|
56352
|
-
"crosswalk": {
|
|
56353
|
-
|
|
56354
|
-
|
|
56643
|
+
"crosswalk": {
|
|
56644
|
+
"source": "csv-table",
|
|
56645
|
+
"target": "or-set/v1",
|
|
56646
|
+
"rules": [
|
|
56647
|
+
{
|
|
56648
|
+
"op": "move",
|
|
56649
|
+
"from": "meta",
|
|
56650
|
+
"to": "meta"
|
|
56651
|
+
},
|
|
56652
|
+
{
|
|
56653
|
+
"op": "move",
|
|
56654
|
+
"from": "members[].id",
|
|
56655
|
+
"to": "instances[].id"
|
|
56656
|
+
},
|
|
56657
|
+
{
|
|
56658
|
+
"op": "move",
|
|
56659
|
+
"from": "members[].meta",
|
|
56660
|
+
"to": "instances[].meta"
|
|
56661
|
+
},
|
|
56662
|
+
{
|
|
56663
|
+
"op": "move",
|
|
56664
|
+
"from": "members[].nodes[].id",
|
|
56665
|
+
"to": "instances[].nodes[].id"
|
|
56666
|
+
},
|
|
56667
|
+
{
|
|
56668
|
+
"op": "move",
|
|
56669
|
+
"from": "members[].nodes[].ServiceTime_min",
|
|
56670
|
+
"to": "instances[].nodes[].duration"
|
|
56671
|
+
},
|
|
56672
|
+
{
|
|
56673
|
+
"op": "move",
|
|
56674
|
+
"from": "members[].nodes[].Latitude",
|
|
56675
|
+
"to": "instances[].nodes[].lat"
|
|
56676
|
+
},
|
|
56677
|
+
{
|
|
56678
|
+
"op": "move",
|
|
56679
|
+
"from": "members[].nodes[].Longitude",
|
|
56680
|
+
"to": "instances[].nodes[].lon"
|
|
56681
|
+
}
|
|
56682
|
+
],
|
|
56683
|
+
"oneWay": []
|
|
56684
|
+
},
|
|
56685
|
+
"expectedCounts": { "instances": 60 },
|
|
56686
|
+
"properties": {
|
|
56687
|
+
"surveyId": "or-10",
|
|
56688
|
+
"timeUnit": "seconds"
|
|
56689
|
+
}
|
|
56355
56690
|
},
|
|
56356
56691
|
{
|
|
56357
56692
|
"id": "vrp-rep-probabilistic-orienteering",
|
|
@@ -56365,20 +56700,116 @@ var catalogue_default = {
|
|
|
56365
56700
|
"location",
|
|
56366
56701
|
"travelTime"
|
|
56367
56702
|
],
|
|
56368
|
-
"category": "or/v1",
|
|
56703
|
+
"category": "or-set/v1",
|
|
56369
56704
|
"sources": [{
|
|
56370
56705
|
"url": "http://www.vrp-rep.org/datasets/download/angelelli-et-al-2017.zip",
|
|
56371
56706
|
"retrieved": "2026-10-19",
|
|
56372
56707
|
"status": "live"
|
|
56708
|
+
}, {
|
|
56709
|
+
"url": "https://www.vrp-rep.org/datasets/download/angelelli-et-al-2017.zip",
|
|
56710
|
+
"retrieved": "2026-10-19",
|
|
56711
|
+
"status": "live"
|
|
56373
56712
|
}],
|
|
56374
56713
|
"licence": { "kind": "unrecorded" },
|
|
56375
56714
|
"citations": [],
|
|
56376
56715
|
"recipe": {
|
|
56377
|
-
"status": "
|
|
56378
|
-
"
|
|
56716
|
+
"status": "fetchable",
|
|
56717
|
+
"source": 1,
|
|
56718
|
+
"archive": {
|
|
56719
|
+
"kind": "zip",
|
|
56720
|
+
"members": { "extensions": [".pop"] }
|
|
56721
|
+
},
|
|
56722
|
+
"parser": {
|
|
56723
|
+
"format": "tsplib",
|
|
56724
|
+
"encoding": "utf-8"
|
|
56725
|
+
}
|
|
56379
56726
|
},
|
|
56380
|
-
"crosswalk": {
|
|
56381
|
-
|
|
56727
|
+
"crosswalk": {
|
|
56728
|
+
"source": "tsplib",
|
|
56729
|
+
"target": "or-set/v1",
|
|
56730
|
+
"rules": [
|
|
56731
|
+
{
|
|
56732
|
+
"op": "move",
|
|
56733
|
+
"from": "meta",
|
|
56734
|
+
"to": "meta"
|
|
56735
|
+
},
|
|
56736
|
+
{
|
|
56737
|
+
"op": "move",
|
|
56738
|
+
"from": "members[].id",
|
|
56739
|
+
"to": "instances[].id"
|
|
56740
|
+
},
|
|
56741
|
+
{
|
|
56742
|
+
"op": "move",
|
|
56743
|
+
"from": "members[].meta.name",
|
|
56744
|
+
"to": "instances[].meta.name"
|
|
56745
|
+
},
|
|
56746
|
+
{
|
|
56747
|
+
"op": "move",
|
|
56748
|
+
"from": "members[].meta.type",
|
|
56749
|
+
"to": "instances[].meta.type"
|
|
56750
|
+
},
|
|
56751
|
+
{
|
|
56752
|
+
"op": "move",
|
|
56753
|
+
"from": "members[].meta.budget",
|
|
56754
|
+
"to": "instances[].meta.budget"
|
|
56755
|
+
},
|
|
56756
|
+
{
|
|
56757
|
+
"op": "move",
|
|
56758
|
+
"from": "members[].meta.edgeWeightType",
|
|
56759
|
+
"to": "instances[].meta.edgeWeightType"
|
|
56760
|
+
},
|
|
56761
|
+
{
|
|
56762
|
+
"op": "move",
|
|
56763
|
+
"from": "members[].meta.totalPrize",
|
|
56764
|
+
"to": "instances[].meta.totalPrize"
|
|
56765
|
+
},
|
|
56766
|
+
{
|
|
56767
|
+
"op": "move",
|
|
56768
|
+
"from": "members[].nodes[].id",
|
|
56769
|
+
"to": "instances[].nodes[].id"
|
|
56770
|
+
},
|
|
56771
|
+
{
|
|
56772
|
+
"op": "move",
|
|
56773
|
+
"from": "members[].nodes[].lat",
|
|
56774
|
+
"to": "instances[].nodes[].lat"
|
|
56775
|
+
},
|
|
56776
|
+
{
|
|
56777
|
+
"op": "move",
|
|
56778
|
+
"from": "members[].nodes[].lon",
|
|
56779
|
+
"to": "instances[].nodes[].lon"
|
|
56780
|
+
},
|
|
56781
|
+
{
|
|
56782
|
+
"op": "move",
|
|
56783
|
+
"from": "members[].nodes[].prize",
|
|
56784
|
+
"to": "instances[].nodes[].prize"
|
|
56785
|
+
},
|
|
56786
|
+
{
|
|
56787
|
+
"op": "move",
|
|
56788
|
+
"from": "members[].nodes[].probability",
|
|
56789
|
+
"to": "instances[].nodes[].prizeProbability"
|
|
56790
|
+
},
|
|
56791
|
+
{
|
|
56792
|
+
"op": "move",
|
|
56793
|
+
"from": "members[].nodes[].x",
|
|
56794
|
+
"to": "instances[].nodes[].x"
|
|
56795
|
+
},
|
|
56796
|
+
{
|
|
56797
|
+
"op": "move",
|
|
56798
|
+
"from": "members[].nodes[].y",
|
|
56799
|
+
"to": "instances[].nodes[].y"
|
|
56800
|
+
}
|
|
56801
|
+
],
|
|
56802
|
+
"oneWay": [{
|
|
56803
|
+
"op": "drop",
|
|
56804
|
+
"from": "members[].meta.setPrizes",
|
|
56805
|
+
"direction": "encode"
|
|
56806
|
+
}, {
|
|
56807
|
+
"op": "drop",
|
|
56808
|
+
"from": "members[].nodes[].clusters",
|
|
56809
|
+
"direction": "encode"
|
|
56810
|
+
}]
|
|
56811
|
+
},
|
|
56812
|
+
"expectedCounts": { "instances": 264 },
|
|
56382
56813
|
"properties": { "surveyId": "or-3" }
|
|
56383
56814
|
},
|
|
56384
56815
|
{
|
|
@@ -56394,20 +56825,93 @@ var catalogue_default = {
|
|
|
56394
56825
|
"duration",
|
|
56395
56826
|
"travelTime"
|
|
56396
56827
|
],
|
|
56397
|
-
"category": "or/v1",
|
|
56828
|
+
"category": "or-set/v1",
|
|
56398
56829
|
"sources": [{
|
|
56399
56830
|
"url": "http://www.vrp-rep.org/datasets/download/pillac-et-al-2013.zip",
|
|
56400
56831
|
"retrieved": "2026-10-19",
|
|
56401
56832
|
"status": "live"
|
|
56833
|
+
}, {
|
|
56834
|
+
"url": "https://www.vrp-rep.org/datasets/download/pillac-et-al-2013.zip",
|
|
56835
|
+
"retrieved": "2026-10-19",
|
|
56836
|
+
"status": "live"
|
|
56402
56837
|
}],
|
|
56403
56838
|
"licence": { "kind": "unrecorded" },
|
|
56404
56839
|
"citations": [],
|
|
56405
56840
|
"recipe": {
|
|
56406
|
-
"status": "
|
|
56407
|
-
"
|
|
56841
|
+
"status": "fetchable",
|
|
56842
|
+
"source": 1,
|
|
56843
|
+
"archive": {
|
|
56844
|
+
"kind": "zip",
|
|
56845
|
+
"members": { "extensions": [".xml"] }
|
|
56846
|
+
},
|
|
56847
|
+
"parser": {
|
|
56848
|
+
"format": "vrp-rep",
|
|
56849
|
+
"encoding": "utf-8"
|
|
56850
|
+
}
|
|
56408
56851
|
},
|
|
56409
|
-
"crosswalk": {
|
|
56410
|
-
|
|
56852
|
+
"crosswalk": {
|
|
56853
|
+
"source": "vrp-rep",
|
|
56854
|
+
"target": "or-set/v1",
|
|
56855
|
+
"rules": [
|
|
56856
|
+
{
|
|
56857
|
+
"op": "move",
|
|
56858
|
+
"from": "meta",
|
|
56859
|
+
"to": "meta"
|
|
56860
|
+
},
|
|
56861
|
+
{
|
|
56862
|
+
"op": "move",
|
|
56863
|
+
"from": "members[].id",
|
|
56864
|
+
"to": "instances[].id"
|
|
56865
|
+
},
|
|
56866
|
+
{
|
|
56867
|
+
"op": "move",
|
|
56868
|
+
"from": "members[].meta.dataset",
|
|
56869
|
+
"to": "instances[].meta.dataset"
|
|
56870
|
+
},
|
|
56871
|
+
{
|
|
56872
|
+
"op": "move",
|
|
56873
|
+
"from": "members[].meta.name",
|
|
56874
|
+
"to": "instances[].meta.name"
|
|
56875
|
+
},
|
|
56876
|
+
{
|
|
56877
|
+
"op": "move",
|
|
56878
|
+
"from": "members[].nodes[].id",
|
|
56879
|
+
"to": "instances[].nodes[].id"
|
|
56880
|
+
},
|
|
56881
|
+
{
|
|
56882
|
+
"op": "move",
|
|
56883
|
+
"from": "members[].nodes[].skill",
|
|
56884
|
+
"to": "instances[].nodes[].skill"
|
|
56885
|
+
},
|
|
56886
|
+
{
|
|
56887
|
+
"op": "move",
|
|
56888
|
+
"from": "members[].nodes[].x",
|
|
56889
|
+
"to": "instances[].nodes[].x"
|
|
56890
|
+
},
|
|
56891
|
+
{
|
|
56892
|
+
"op": "move",
|
|
56893
|
+
"from": "members[].nodes[].y",
|
|
56894
|
+
"to": "instances[].nodes[].y"
|
|
56895
|
+
},
|
|
56896
|
+
{
|
|
56897
|
+
"op": "move",
|
|
56898
|
+
"from": "members[].nodes[].type",
|
|
56899
|
+
"to": "instances[].nodes[].type"
|
|
56900
|
+
},
|
|
56901
|
+
{
|
|
56902
|
+
"op": "move",
|
|
56903
|
+
"from": "members[].nodes[].skills",
|
|
56904
|
+
"to": "instances[].nodes[].skills"
|
|
56905
|
+
},
|
|
56906
|
+
{
|
|
56907
|
+
"op": "move",
|
|
56908
|
+
"from": "members[].nodes[].resources",
|
|
56909
|
+
"to": "instances[].nodes[].resources"
|
|
56910
|
+
}
|
|
56911
|
+
],
|
|
56912
|
+
"oneWay": []
|
|
56913
|
+
},
|
|
56914
|
+
"expectedCounts": { "instances": 57 },
|
|
56411
56915
|
"properties": { "surveyId": "or-21" }
|
|
56412
56916
|
},
|
|
56413
56917
|
{
|
|
@@ -57456,6 +57960,10 @@ var catalogue_default = {
|
|
|
57456
57960
|
"url": "https://zenodo.org/records/5823834",
|
|
57457
57961
|
"retrieved": "2026-10-19",
|
|
57458
57962
|
"status": "live"
|
|
57963
|
+
}, {
|
|
57964
|
+
"url": "https://zenodo.org/records/5823834/files/MeterReading_Instance.zip?download=1",
|
|
57965
|
+
"retrieved": "2026-10-19",
|
|
57966
|
+
"status": "live"
|
|
57459
57967
|
}],
|
|
57460
57968
|
"licence": {
|
|
57461
57969
|
"kind": "spdx",
|
|
@@ -57463,11 +57971,45 @@ var catalogue_default = {
|
|
|
57463
57971
|
},
|
|
57464
57972
|
"citations": [],
|
|
57465
57973
|
"recipe": {
|
|
57466
|
-
"status": "
|
|
57467
|
-
"
|
|
57974
|
+
"status": "fetchable",
|
|
57975
|
+
"source": 1,
|
|
57976
|
+
"archive": {
|
|
57977
|
+
"kind": "zip",
|
|
57978
|
+
"member": { "path": "customers.txt" }
|
|
57979
|
+
},
|
|
57980
|
+
"parser": {
|
|
57981
|
+
"format": "customer-points",
|
|
57982
|
+
"encoding": "utf-8"
|
|
57983
|
+
}
|
|
57468
57984
|
},
|
|
57469
|
-
"crosswalk": {
|
|
57470
|
-
|
|
57985
|
+
"crosswalk": {
|
|
57986
|
+
"source": "customer-points",
|
|
57987
|
+
"target": "or/v1",
|
|
57988
|
+
"rules": [
|
|
57989
|
+
{
|
|
57990
|
+
"op": "move",
|
|
57991
|
+
"from": "meta",
|
|
57992
|
+
"to": "meta"
|
|
57993
|
+
},
|
|
57994
|
+
{
|
|
57995
|
+
"op": "move",
|
|
57996
|
+
"from": "nodes[].id",
|
|
57997
|
+
"to": "nodes[].id"
|
|
57998
|
+
},
|
|
57999
|
+
{
|
|
58000
|
+
"op": "move",
|
|
58001
|
+
"from": "nodes[].x",
|
|
58002
|
+
"to": "nodes[].x"
|
|
58003
|
+
},
|
|
58004
|
+
{
|
|
58005
|
+
"op": "move",
|
|
58006
|
+
"from": "nodes[].y",
|
|
58007
|
+
"to": "nodes[].y"
|
|
58008
|
+
}
|
|
58009
|
+
],
|
|
58010
|
+
"oneWay": []
|
|
58011
|
+
},
|
|
58012
|
+
"expectedCounts": { "nodes": 6067 },
|
|
57471
58013
|
"properties": { "surveyId": "or-6" }
|
|
57472
58014
|
},
|
|
57473
58015
|
{
|
|
@@ -57535,7 +58077,7 @@ var catalogue_default = {
|
|
|
57535
58077
|
"citations": [],
|
|
57536
58078
|
"recipe": {
|
|
57537
58079
|
"status": "not-fetchable",
|
|
57538
|
-
"reason": "The
|
|
58080
|
+
"reason": "The instances are a custom sectioned text format whose tasks have no positions, and the collection is hundreds of megabytes compressed, almost all of it a pairwise travel time matrix that or/v1 has no arcs to hold, so reading it would hold gigabytes in memory to keep a few fields per task."
|
|
57539
58081
|
},
|
|
57540
58082
|
"crosswalk": { "file": "crosswalks/or-v1/nodes.json" },
|
|
57541
58083
|
"expectedCounts": {},
|