@graphty/graph-io 0.3.16 → 0.3.18

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.
Files changed (111) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +29 -3
  3. package/dist/chunks/{escape-D1f9-cwf.js → escape-D-gZWO26.js} +3 -2
  4. package/dist/chunks/{escape-D1f9-cwf.js.map → escape-D-gZWO26.js.map} +1 -1
  5. package/dist/chunks/{importer-D7ZcGCeb.js → importer-Br_QeAeE.js} +4 -3
  6. package/dist/chunks/{importer-D7ZcGCeb.js.map → importer-Br_QeAeE.js.map} +1 -1
  7. package/dist/chunks/{importer-CXEiicAN.js → importer-DHagxvDD.js} +4 -3
  8. package/dist/chunks/{importer-CXEiicAN.js.map → importer-DHagxvDD.js.map} +1 -1
  9. package/dist/chunks/{importer-C7mnGdr_.js → importer-Du5crN9l.js} +510 -26
  10. package/dist/chunks/importer-Du5crN9l.js.map +1 -0
  11. package/dist/chunks/importer-aNJfe0qu.js +1614 -0
  12. package/dist/chunks/importer-aNJfe0qu.js.map +1 -0
  13. package/dist/chunks/{importer-B8lsjFWx.js → importer-d0uQxFp6.js} +4 -3
  14. package/dist/chunks/{importer-B8lsjFWx.js.map → importer-d0uQxFp6.js.map} +1 -1
  15. package/dist/chunks/ontology-BnrJ4I98.js +113 -0
  16. package/dist/chunks/ontology-BnrJ4I98.js.map +1 -0
  17. package/dist/chunks/{records-IHsCfv7s.js → records-Bk9jgodz.js} +2 -2
  18. package/dist/chunks/{records-IHsCfv7s.js.map → records-Bk9jgodz.js.map} +1 -1
  19. package/dist/chunks/{writer-BtWpUaiH.js → report-BOk0p5y8.js} +181 -912
  20. package/dist/chunks/report-BOk0p5y8.js.map +1 -0
  21. package/dist/chunks/writer-GAdltGmC.js +827 -0
  22. package/dist/chunks/writer-GAdltGmC.js.map +1 -0
  23. package/dist/csv.js +4 -3
  24. package/dist/csv.js.map +1 -1
  25. package/dist/dot.js +1 -1
  26. package/dist/gexf.js +3 -2
  27. package/dist/gexf.js.map +1 -1
  28. package/dist/gml.js +3 -2
  29. package/dist/gml.js.map +1 -1
  30. package/dist/graph-io.js +191 -134
  31. package/dist/graph-io.js.map +1 -1
  32. package/dist/graphml.js +1 -1
  33. package/dist/json.js +1 -1
  34. package/dist/neo4j.js +4 -3
  35. package/dist/neo4j.js.map +1 -1
  36. package/dist/obo.d.ts +1 -0
  37. package/dist/obo.js +6 -0
  38. package/dist/obo.js.map +1 -0
  39. package/dist/pajek.js +1 -1
  40. package/dist/src/common/codes.d.ts +43 -0
  41. package/dist/src/common/codes.d.ts.map +1 -1
  42. package/dist/src/common/codes.js +43 -0
  43. package/dist/src/common/codes.js.map +1 -1
  44. package/dist/src/common/input.d.ts +9 -0
  45. package/dist/src/common/input.d.ts.map +1 -1
  46. package/dist/src/common/input.js +16 -0
  47. package/dist/src/common/input.js.map +1 -1
  48. package/dist/src/common/ontology.d.ts +59 -0
  49. package/dist/src/common/ontology.d.ts.map +1 -0
  50. package/dist/src/common/ontology.js +147 -0
  51. package/dist/src/common/ontology.js.map +1 -0
  52. package/dist/src/common/options.d.ts +12 -1
  53. package/dist/src/common/options.d.ts.map +1 -1
  54. package/dist/src/common/options.js +51 -1
  55. package/dist/src/common/options.js.map +1 -1
  56. package/dist/src/formats/json/dialect.d.ts +8 -6
  57. package/dist/src/formats/json/dialect.d.ts.map +1 -1
  58. package/dist/src/formats/json/dialect.js +26 -3
  59. package/dist/src/formats/json/dialect.js.map +1 -1
  60. package/dist/src/formats/json/importer.d.ts +324 -7
  61. package/dist/src/formats/json/importer.d.ts.map +1 -1
  62. package/dist/src/formats/json/importer.js +154 -23
  63. package/dist/src/formats/json/importer.js.map +1 -1
  64. package/dist/src/formats/json/obographs.d.ts +21 -0
  65. package/dist/src/formats/json/obographs.d.ts.map +1 -0
  66. package/dist/src/formats/json/obographs.js +476 -0
  67. package/dist/src/formats/json/obographs.js.map +1 -0
  68. package/dist/src/formats/obo/importer.d.ts +90 -0
  69. package/dist/src/formats/obo/importer.d.ts.map +1 -0
  70. package/dist/src/formats/obo/importer.js +1248 -0
  71. package/dist/src/formats/obo/importer.js.map +1 -0
  72. package/dist/src/formats/obo/index.d.ts +7 -0
  73. package/dist/src/formats/obo/index.d.ts.map +1 -0
  74. package/dist/src/formats/obo/index.js +7 -0
  75. package/dist/src/formats/obo/index.js.map +1 -0
  76. package/dist/src/formats/obo/syntax.d.ts +121 -0
  77. package/dist/src/formats/obo/syntax.d.ts.map +1 -0
  78. package/dist/src/formats/obo/syntax.js +424 -0
  79. package/dist/src/formats/obo/syntax.js.map +1 -0
  80. package/dist/src/index.d.ts +5 -4
  81. package/dist/src/index.d.ts.map +1 -1
  82. package/dist/src/index.js +4 -3
  83. package/dist/src/index.js.map +1 -1
  84. package/dist/src/registry.d.ts +21 -3
  85. package/dist/src/registry.d.ts.map +1 -1
  86. package/dist/src/registry.js +32 -1
  87. package/dist/src/registry.js.map +1 -1
  88. package/dist/src/sniff.d.ts +1 -1
  89. package/dist/src/sniff.d.ts.map +1 -1
  90. package/dist/src/sniff.js +23 -3
  91. package/dist/src/sniff.js.map +1 -1
  92. package/dist/src/types.d.ts +31 -0
  93. package/dist/src/types.d.ts.map +1 -1
  94. package/dist/src/types.js.map +1 -1
  95. package/package.json +6 -1
  96. package/src/common/codes.ts +58 -0
  97. package/src/common/input.ts +16 -0
  98. package/src/common/ontology.ts +169 -0
  99. package/src/common/options.ts +78 -2
  100. package/src/formats/json/dialect.ts +37 -7
  101. package/src/formats/json/importer.ts +206 -28
  102. package/src/formats/json/obographs.ts +563 -0
  103. package/src/formats/obo/importer.ts +1695 -0
  104. package/src/formats/obo/index.ts +7 -0
  105. package/src/formats/obo/syntax.ts +466 -0
  106. package/src/index.ts +6 -0
  107. package/src/registry.ts +38 -3
  108. package/src/sniff.ts +35 -5
  109. package/src/types.ts +40 -1
  110. package/dist/chunks/importer-C7mnGdr_.js.map +0 -1
  111. package/dist/chunks/writer-BtWpUaiH.js.map +0 -1
package/dist/obo.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from "./src/formats/obo/index.js";
package/dist/obo.js ADDED
@@ -0,0 +1,6 @@
1
+ import { O, o } from "./chunks/importer-aNJfe0qu.js";
2
+ export {
3
+ O as OBO_ISSUE,
4
+ o as oboImporter
5
+ };
6
+ //# sourceMappingURL=obo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"obo.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
package/dist/pajek.js CHANGED
@@ -1,4 +1,4 @@
1
- import { P, a, p, b } from "./chunks/importer-B8lsjFWx.js";
1
+ import { P, a, p, b } from "./chunks/importer-d0uQxFp6.js";
2
2
  export {
3
3
  P as PAJEK_ISSUE,
4
4
  a as PAJEK_LOSS,
@@ -74,6 +74,49 @@ export declare const BAD_DEFAULT_CODE = "W_BAD_DEFAULT";
74
74
  export declare const BAD_OPTIONS_CODE = "W_BAD_OPTIONS";
75
75
  /** A repeated edge id in a format whose edge ids are unique; the second edge is skipped. */
76
76
  export declare const DUPLICATE_EDGE_ID_CODE = "E_DUPLICATE_EDGE_ID";
77
+ /** A value does not parse as its declared type; the cell is left unset. */
78
+ export declare const BAD_VALUE_CODE = "E_BAD_VALUE";
79
+ /**
80
+ * A column's dtype was widened (design section 5.1) because a later value did not fit: an i32
81
+ * column meeting a value above 2^31, two declared types for one attribute.
82
+ */
83
+ export declare const WIDENED_CODE = "W_WIDENED";
84
+ /**
85
+ * A reference that is not a containment link (an attribute's element id, a layout or bypass
86
+ * entry, a subnetwork member, a view's network, an undeclared target) names nothing; reported
87
+ * once per kind with the count.
88
+ */
89
+ export declare const DANGLING_REFERENCE_CODE = "W_DANGLING_REFERENCE";
90
+ /** The same attribute twice on one element; one value is kept (the later, unless the format's specification says the first). */
91
+ export declare const DUPLICATE_ATTRIBUTE_CODE = "W_DUPLICATE_ATTRIBUTE";
92
+ /** A containment link would close a parent cycle; that one link is dropped. */
93
+ export declare const PARENT_CYCLE_CODE = "E_PARENT_CYCLE";
94
+ /** A formula (Cytoscape's `=ABS($x)`) is kept as its text; it is never evaluated. */
95
+ export declare const EQUATION_AS_TEXT_CODE = "W_EQUATION_AS_TEXT";
96
+ /**
97
+ * The file's style rules (defaults, mappings, dependencies, visual property aspects) are not
98
+ * applied to the snapshot; recorded once per import, the message names what was not applied.
99
+ */
100
+ export declare const STYLES_NOT_IMPORTED_CODE = "W_STYLES_NOT_IMPORTED";
101
+ /** A CX array member that is not a one-key object holding an array or an object; the block is skipped. */
102
+ export declare const BAD_ASPECT_BLOCK_CODE = "E_BAD_ASPECT_BLOCK";
103
+ /** A CX aspect out of its place (after the post-metadata, a status that is not last, a block buffered for what it depends on). */
104
+ export declare const ASPECT_ORDER_CODE = "W_ASPECT_ORDER";
105
+ /** A declared element count disagrees with what was read. */
106
+ export declare const COUNT_MISMATCH_CODE = "W_COUNT_MISMATCH";
107
+ /** The producer marked the document as failed (CX `status.success: false`): it is incomplete (fatal). */
108
+ export declare const STATUS_FAILED_CODE = "E_STATUS_FAILED";
109
+ /** The producer marked the document as successful but attached an error text. */
110
+ export declare const STATUS_WARNING_CODE = "W_STATUS_WARNING";
111
+ /**
112
+ * The input is beyond a size limit (a zip's uncompressed total or ratio, a document longer than
113
+ * one string); the same string as graph-format's E_TOO_LARGE, recorded with category "unsupported".
114
+ */
115
+ export declare const TOO_LARGE_CODE = "E_TOO_LARGE";
116
+ /** `graphIndex` is beyond the graphs of the input, or `graphName` names none of them (fatal). */
117
+ export declare const GRAPH_NOT_FOUND_CODE = "E_GRAPH_NOT_FOUND";
118
+ /** `graphName` names more than one graph of the input; the message lists their indexes (fatal). */
119
+ export declare const AMBIGUOUS_GRAPH_NAME_CODE = "E_AMBIGUOUS_GRAPH_NAME";
77
120
  /** A role column the format has no slot for is written as a plain attribute (the role is lost). */
78
121
  export declare const ROLE_DROPPED_CODE = "W_ROLE_DROPPED";
79
122
  /** A parents (multi-parent) column in a format with single containment only. */
@@ -1 +1 @@
1
- {"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../../src/common/codes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../../src/common/codes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,uFAAuF;AACvF,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAE9C,0CAA0C;AAC1C,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,qDAAqD;AACrD,eAAO,MAAM,aAAa,eAAe,CAAC;AAE1C,+DAA+D;AAC/D,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AAExD,kCAAkC;AAClC,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAEhD,0FAA0F;AAC1F,eAAO,MAAM,WAAW,aAAa,CAAC;AAEtC,uFAAuF;AACvF,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAE9C,uEAAuE;AACvE,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AAExD,8DAA8D;AAC9D,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAE9C,2EAA2E;AAC3E,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,kEAAkE;AAClE,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAE5C,4DAA4D;AAC5D,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,6GAA6G;AAC7G,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAE9C,mFAAmF;AACnF,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAE5C,uFAAuF;AACvF,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAE5C,uGAAuG;AACvG,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAEhD,uHAAuH;AACvH,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,sDAAsD;AACtD,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD,4GAA4G;AAC5G,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,gGAAgG;AAChG,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAE5D,0GAA0G;AAC1G,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,mGAAmG;AACnG,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAE5D,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,wHAAwH;AACxH,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AAExD,wEAAwE;AACxE,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAE9C,qFAAqF;AACrF,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAE5D,2FAA2F;AAC3F,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAEhD,sFAAsF;AACtF,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAEhD,4FAA4F;AAC5F,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAE5D,2EAA2E;AAC3E,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,YAAY,cAAc,CAAC;AAExC;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,yBAAyB,CAAC;AAE9D,gIAAgI;AAChI,eAAO,MAAM,wBAAwB,0BAA0B,CAAC;AAEhE,+EAA+E;AAC/E,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD,qFAAqF;AACrF,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D;;;GAGG;AACH,eAAO,MAAM,wBAAwB,0BAA0B,CAAC;AAEhE,0GAA0G;AAC1G,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,kIAAkI;AAClI,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,yGAAyG;AACzG,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AAEpD,iFAAiF;AACjF,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAE5C,iGAAiG;AACjG,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AAExD,mGAAmG;AACnG,eAAO,MAAM,yBAAyB,2BAA2B,CAAC;AAIlE,mGAAmG;AACnG,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD,gFAAgF;AAChF,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AAExD,6EAA6E;AAC7E,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,8EAA8E;AAC9E,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AAExD,yGAAyG;AACzG,eAAO,MAAM,yBAAyB,2BAA2B,CAAC;AAElE,6FAA6F;AAC7F,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD,yEAAyE;AACzE,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAE5D,gFAAgF;AAChF,eAAO,MAAM,0BAA0B,4BAA4B,CAAC;AAEpE,oFAAoF;AACpF,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD,+FAA+F;AAC/F,eAAO,MAAM,wBAAwB,0BAA0B,CAAC;AAEhE,kGAAkG;AAClG,eAAO,MAAM,yBAAyB,2BAA2B,CAAC;AAElE,2GAA2G;AAC3G,eAAO,MAAM,kBAAkB,4BAA4B,CAAC;AAE5D,mGAAmG;AACnG,eAAO,MAAM,iBAAiB,0BAA0B,CAAC;AAEzD,8GAA8G;AAC9G,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AAEpD,wFAAwF;AACxF,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,yFAAyF;AACzF,eAAO,MAAM,mBAAmB,qBAAqB,CAAC"}
@@ -75,6 +75,49 @@ export const BAD_DEFAULT_CODE = "W_BAD_DEFAULT";
75
75
  export const BAD_OPTIONS_CODE = "W_BAD_OPTIONS";
76
76
  /** A repeated edge id in a format whose edge ids are unique; the second edge is skipped. */
77
77
  export const DUPLICATE_EDGE_ID_CODE = "E_DUPLICATE_EDGE_ID";
78
+ /** A value does not parse as its declared type; the cell is left unset. */
79
+ export const BAD_VALUE_CODE = "E_BAD_VALUE";
80
+ /**
81
+ * A column's dtype was widened (design section 5.1) because a later value did not fit: an i32
82
+ * column meeting a value above 2^31, two declared types for one attribute.
83
+ */
84
+ export const WIDENED_CODE = "W_WIDENED";
85
+ /**
86
+ * A reference that is not a containment link (an attribute's element id, a layout or bypass
87
+ * entry, a subnetwork member, a view's network, an undeclared target) names nothing; reported
88
+ * once per kind with the count.
89
+ */
90
+ export const DANGLING_REFERENCE_CODE = "W_DANGLING_REFERENCE";
91
+ /** The same attribute twice on one element; one value is kept (the later, unless the format's specification says the first). */
92
+ export const DUPLICATE_ATTRIBUTE_CODE = "W_DUPLICATE_ATTRIBUTE";
93
+ /** A containment link would close a parent cycle; that one link is dropped. */
94
+ export const PARENT_CYCLE_CODE = "E_PARENT_CYCLE";
95
+ /** A formula (Cytoscape's `=ABS($x)`) is kept as its text; it is never evaluated. */
96
+ export const EQUATION_AS_TEXT_CODE = "W_EQUATION_AS_TEXT";
97
+ /**
98
+ * The file's style rules (defaults, mappings, dependencies, visual property aspects) are not
99
+ * applied to the snapshot; recorded once per import, the message names what was not applied.
100
+ */
101
+ export const STYLES_NOT_IMPORTED_CODE = "W_STYLES_NOT_IMPORTED";
102
+ /** A CX array member that is not a one-key object holding an array or an object; the block is skipped. */
103
+ export const BAD_ASPECT_BLOCK_CODE = "E_BAD_ASPECT_BLOCK";
104
+ /** A CX aspect out of its place (after the post-metadata, a status that is not last, a block buffered for what it depends on). */
105
+ export const ASPECT_ORDER_CODE = "W_ASPECT_ORDER";
106
+ /** A declared element count disagrees with what was read. */
107
+ export const COUNT_MISMATCH_CODE = "W_COUNT_MISMATCH";
108
+ /** The producer marked the document as failed (CX `status.success: false`): it is incomplete (fatal). */
109
+ export const STATUS_FAILED_CODE = "E_STATUS_FAILED";
110
+ /** The producer marked the document as successful but attached an error text. */
111
+ export const STATUS_WARNING_CODE = "W_STATUS_WARNING";
112
+ /**
113
+ * The input is beyond a size limit (a zip's uncompressed total or ratio, a document longer than
114
+ * one string); the same string as graph-format's E_TOO_LARGE, recorded with category "unsupported".
115
+ */
116
+ export const TOO_LARGE_CODE = "E_TOO_LARGE";
117
+ /** `graphIndex` is beyond the graphs of the input, or `graphName` names none of them (fatal). */
118
+ export const GRAPH_NOT_FOUND_CODE = "E_GRAPH_NOT_FOUND";
119
+ /** `graphName` names more than one graph of the input; the message lists their indexes (fatal). */
120
+ export const AMBIGUOUS_GRAPH_NAME_CODE = "E_AMBIGUOUS_GRAPH_NAME";
78
121
  // ============================================================ exporter loss notes
79
122
  /** A role column the format has no slot for is written as a plain attribute (the role is lost). */
80
123
  export const ROLE_DROPPED_CODE = "W_ROLE_DROPPED";
@@ -1 +1 @@
1
- {"version":3,"file":"codes.js","sourceRoot":"","sources":["../../../src/common/codes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codes.js","sourceRoot":"","sources":["../../../src/common/codes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,+EAA+E;AAE/E,uFAAuF;AACvF,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAC;AAE9C,0CAA0C;AAC1C,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D,8EAA8E;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAEtD,qDAAqD;AACrD,MAAM,CAAC,MAAM,aAAa,GAAG,YAAY,CAAC;AAE1C,+DAA+D;AAC/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,kCAAkC;AAClC,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEhD,0FAA0F;AAC1F,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;AAEtC,uFAAuF;AACvF,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAC;AAE9C,uEAAuE;AACvE,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAC;AAE9C,2EAA2E;AAC3E,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAEtD,kEAAkE;AAClE,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC;AAE5C,4DAA4D;AAC5D,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAEpD;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAEtD,6GAA6G;AAC7G,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAC;AAE9C,mFAAmF;AACnF,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC;AAE5C,uFAAuF;AACvF,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC;AAE5C,uGAAuG;AACvG,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEhD,uHAAuH;AACvH,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAEtD,sDAAsD;AACtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;AAElD,4GAA4G;AAC5G,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D,gGAAgG;AAChG,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE5D,0GAA0G;AAC1G,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D,mGAAmG;AACnG,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE5D,0EAA0E;AAC1E,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D,wHAAwH;AACxH,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,wEAAwE;AACxE,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAC;AAE9C,qFAAqF;AACrF,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE5D,2FAA2F;AAC3F,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEhD,sFAAsF;AACtF,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEhD,4FAA4F;AAC5F,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE5D,2EAA2E;AAC3E,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC;AAE5C;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC;AAExC;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,sBAAsB,CAAC;AAE9D,gIAAgI;AAChI,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAEhE,+EAA+E;AAC/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;AAElD,qFAAqF;AACrF,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAEhE,0GAA0G;AAC1G,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D,kIAAkI;AAClI,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;AAElD,6DAA6D;AAC7D,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAEtD,yGAAyG;AACzG,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAEpD,iFAAiF;AACjF,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAEtD;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC;AAE5C,iGAAiG;AACjG,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,mGAAmG;AACnG,MAAM,CAAC,MAAM,yBAAyB,GAAG,wBAAwB,CAAC;AAElE,mFAAmF;AAEnF,mGAAmG;AACnG,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;AAElD,gFAAgF;AAChF,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D,8EAA8E;AAC9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,yGAAyG;AACzG,MAAM,CAAC,MAAM,yBAAyB,GAAG,wBAAwB,CAAC;AAElE,6FAA6F;AAC7F,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;AAElD,yEAAyE;AACzE,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE5D,gFAAgF;AAChF,MAAM,CAAC,MAAM,0BAA0B,GAAG,yBAAyB,CAAC;AAEpE,oFAAoF;AACpF,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D,yEAAyE;AACzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;AAElD,+FAA+F;AAC/F,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAEhE,kGAAkG;AAClG,MAAM,CAAC,MAAM,yBAAyB,GAAG,wBAAwB,CAAC;AAElE,2GAA2G;AAC3G,MAAM,CAAC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAE5D,mGAAmG;AACnG,MAAM,CAAC,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAEzD,8GAA8G;AAC9G,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAEpD,wFAAwF;AACxF,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D,yFAAyF;AACzF,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC"}
@@ -42,6 +42,15 @@ export interface ReadOptions {
42
42
  * @returns the canonical name ("windows-1252", "utf-16le", ...) or null
43
43
  */
44
44
  export declare function canonicalEncoding(label: string): string | null;
45
+ /**
46
+ * A zip entry name as text (APPNOTE 4.4.17): UTF-8 when the bytes are valid UTF-8, whether or not
47
+ * the entry sets the language-encoding flag (bit 11), else windows-1252 (WHATWG has no CP437, and
48
+ * session entry names are ASCII in practice). Never throws: a name is a matching key, never a path,
49
+ * so an undecodable one still has to name its entry.
50
+ * @param bytes - the name bytes from the central directory or a local header
51
+ * @returns the name
52
+ */
53
+ export declare function decodeEntryName(bytes: Uint8Array): string;
45
54
  /**
46
55
  * Whether a value is an ImportInput this module can read.
47
56
  * @param input - any value
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/common/input.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAiD,iBAAiB,EAAyB,MAAM,YAAY,CAAC;AACrH,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;;;GAIG;AACH,MAAM,WAAW,WAAW;IACxB,6DAA6D;IAC7D,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACjD,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAC5F,qGAAqG;IACrG,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;CAC7E;AAQD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM9D;AAuOD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAQlE;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAQ7D;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAU3E;AAgBD;;;;;;;;;;GAUG;AACH,wBAAuB,UAAU,CAC7B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,mBAAmB,EAC3B,OAAO,GAAE,WAAgB,GAC1B,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAmGzC;AA4CD;;;;;;GAMG;AACH,wBAAsB,QAAQ,CAC1B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,mBAAmB,EAC3B,OAAO,GAAE,WAAgB,GAC1B,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED;;;;;;GAMG;AACH,qBAAa,UAAW,YAAW,aAAa,CAAC,MAAM,CAAC;IACpD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IAEpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAE7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IAEtC,OAAO,CAAC,UAAU,CAAK;IAEvB;;;;;OAKG;gBACS,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,GAAE,WAAgB;IAMtF;;;OAGG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;OAIG;IACI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC;CAoE3E"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/common/input.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAiD,iBAAiB,EAAyB,MAAM,YAAY,CAAC;AACrH,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;;;GAIG;AACH,MAAM,WAAW,WAAW;IACxB,6DAA6D;IAC7D,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACjD,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAC5F,qGAAqG;IACrG,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;CAC7E;AAQD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM9D;AA2MD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAMzD;AA8BD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAQlE;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAQ7D;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAU3E;AAgBD;;;;;;;;;;GAUG;AACH,wBAAuB,UAAU,CAC7B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,mBAAmB,EAC3B,OAAO,GAAE,WAAgB,GAC1B,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAmGzC;AA4CD;;;;;;GAMG;AACH,wBAAsB,QAAQ,CAC1B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,mBAAmB,EAC3B,OAAO,GAAE,WAAgB,GAC1B,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED;;;;;;GAMG;AACH,qBAAa,UAAW,YAAW,aAAa,CAAC,MAAM,CAAC;IACpD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IAEpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAE7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IAEtC,OAAO,CAAC,UAAU,CAAK;IAEvB;;;;;OAKG;gBACS,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,GAAE,WAAgB;IAMtF;;;OAGG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;OAIG;IACI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC;CAoE3E"}
@@ -208,6 +208,22 @@ function startsWithUtf8(bytes) {
208
208
  return false;
209
209
  }
210
210
  }
211
+ /**
212
+ * A zip entry name as text (APPNOTE 4.4.17): UTF-8 when the bytes are valid UTF-8, whether or not
213
+ * the entry sets the language-encoding flag (bit 11), else windows-1252 (WHATWG has no CP437, and
214
+ * session entry names are ASCII in practice). Never throws: a name is a matching key, never a path,
215
+ * so an undecodable one still has to name its entry.
216
+ * @param bytes - the name bytes from the central directory or a local header
217
+ * @returns the name
218
+ */
219
+ export function decodeEntryName(bytes) {
220
+ try {
221
+ return new TextDecoder("utf-8", { fatal: true, ignoreBOM: true }).decode(bytes);
222
+ }
223
+ catch {
224
+ return new TextDecoder("windows-1252").decode(bytes);
225
+ }
226
+ }
211
227
  /**
212
228
  * Join byte chunks.
213
229
  * @param chunks - the chunks
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sourceRoot":"","sources":["../../../src/common/input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"input.js","sourceRoot":"","sources":["../../../src/common/input.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * What the OBO importer and the JSON importer's `obographs` dialect share (design section 1.0, the
3
+ * `ontology.ts` building block): the OBO column vocabulary (names, dtypes, roles), so the `.obo` and
4
+ * the `.json` of one ontology give the same columns, and the OBO 1.4 rule for turning the IRIs
5
+ * OBO Graphs writes back into the identifiers the `.obo` file writes (section 4.6).
6
+ */
7
+ import { type ColumnDecl } from "@graphty/graph-format";
8
+ /** The dtypes the OBO vocabulary uses. */
9
+ type OboDtype = "string" | "dict" | "bool" | "list" | "json";
10
+ /** One column of the OBO vocabulary. */
11
+ interface OboColumnSpec {
12
+ /** The dtype. */
13
+ readonly dtype: OboDtype;
14
+ /** The role, when the column carries one. */
15
+ readonly role?: "label" | "kind" | undefined;
16
+ }
17
+ /**
18
+ * The node columns of the OBO vocabulary, keyed by column name (design section 4.2). The names are
19
+ * the OBO tag names, so a Gene Ontology user finds `namespace`, `def` and `is_obsolete` under the
20
+ * names the GO documentation uses.
21
+ */
22
+ export declare const OBO_NODE_COLUMNS: Readonly<Record<string, OboColumnSpec>>;
23
+ /** The node column that marks a node made for an undeclared reference (design section 4.2). */
24
+ export declare const PLACEHOLDER_COLUMN = "graphty.placeholder";
25
+ /**
26
+ * The declaration of an OBO vocabulary column.
27
+ * @param domain - node or edge
28
+ * @param name - the column name (a key of OBO_NODE_COLUMNS / OBO_EDGE_COLUMNS, or the placeholder column)
29
+ * @returns the declaration, nullable, with origin `{ format: "obo", id: name }`
30
+ */
31
+ export declare function oboColumnDecl(domain: "node" | "edge", name: string): ColumnDecl;
32
+ /**
33
+ * An IRI as the identifier the `.obo` file writes (the OBO 1.4 mapping, section 5.9, read
34
+ * backwards): `http://purl.obolibrary.org/obo/GO_0008150` is `GO:0008150` (the prefix is the text
35
+ * before the first underscore), and `http://purl.obolibrary.org/obo/go#regulates` (how the OWL
36
+ * translation writes an unprefixed OBO id: subsets, relations, synonym types) is `regulates`.
37
+ * Every other IRI, and an OBO PURL that fits neither form (`.../obo/T/Female`), is kept.
38
+ * @param iri - the IRI
39
+ * @returns the CURIE or local id, or the IRI unchanged
40
+ */
41
+ export declare function compactOboIri(iri: string): string;
42
+ /** The OBO synonym scopes. */
43
+ export declare const SYNONYM_SCOPES: ReadonlySet<string>;
44
+ /**
45
+ * The OBO synonym scope of an OBO Graphs synonym predicate (`hasExactSynonym`, with or without the
46
+ * oboInOwl namespace).
47
+ * @param pred - the predicate
48
+ * @returns the scope, or null for a predicate that is not one of the four
49
+ */
50
+ export declare function synonymScopeOf(pred: string): string | null;
51
+ /**
52
+ * The OBO tag a `basicPropertyValues` predicate of OBO Graphs came from (the OBO-to-OWL mapping of
53
+ * the tags that are annotations), so the `.json` of an ontology fills the same columns as its
54
+ * `.obo`. `shorthand` is the relation's short name; every predicate not listed is a
55
+ * `property_value`.
56
+ */
57
+ export declare const OBOGRAPHS_PREDICATE_TAGS: ReadonlyMap<string, string>;
58
+ export {};
59
+ //# sourceMappingURL=ontology.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ontology.d.ts","sourceRoot":"","sources":["../../../src/common/ontology.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,0CAA0C;AAC1C,KAAK,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAE7D,wCAAwC;AACxC,UAAU,aAAa;IACnB,iBAAiB;IACjB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,6CAA6C;IAC7C,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;CAChD;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAiDnE,CAAC;AASH,+FAA+F;AAC/F,eAAO,MAAM,kBAAkB,wBAAwB,CAAC;AAExD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAa/E;AAQD;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAejD;AAED,8BAA8B;AAC9B,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CAAoD,CAAC;AAEpG;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI1D;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAQ/D,CAAC"}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * What the OBO importer and the JSON importer's `obographs` dialect share (design section 1.0, the
3
+ * `ontology.ts` building block): the OBO column vocabulary (names, dtypes, roles), so the `.obo` and
4
+ * the `.json` of one ontology give the same columns, and the OBO 1.4 rule for turning the IRIs
5
+ * OBO Graphs writes back into the identifiers the `.obo` file writes (section 4.6).
6
+ */
7
+ /**
8
+ * The node columns of the OBO vocabulary, keyed by column name (design section 4.2). The names are
9
+ * the OBO tag names, so a Gene Ontology user finds `namespace`, `def` and `is_obsolete` under the
10
+ * names the GO documentation uses.
11
+ */
12
+ export const OBO_NODE_COLUMNS = Object.freeze({
13
+ type: { dtype: "dict" },
14
+ name: { dtype: "string", role: "label" },
15
+ namespace: { dtype: "dict" },
16
+ def: { dtype: "string" },
17
+ "def.xrefs": { dtype: "list" },
18
+ comment: { dtype: "string" },
19
+ synonym: { dtype: "json" },
20
+ xref: { dtype: "list" },
21
+ "xref.descriptions": { dtype: "json" },
22
+ alt_id: { dtype: "list" },
23
+ subset: { dtype: "list" },
24
+ replaced_by: { dtype: "list" },
25
+ consider: { dtype: "list" },
26
+ is_obsolete: { dtype: "bool" },
27
+ is_anonymous: { dtype: "bool" },
28
+ builtin: { dtype: "bool" },
29
+ created_by: { dtype: "string" },
30
+ creation_date: { dtype: "string" },
31
+ intersection_of: { dtype: "json" },
32
+ union_of: { dtype: "list" },
33
+ equivalent_to: { dtype: "list" },
34
+ disjoint_from: { dtype: "list" },
35
+ property_value: { dtype: "json" },
36
+ // Typedef frames, under typedefs: "nodes"
37
+ domain: { dtype: "string" },
38
+ range: { dtype: "string" },
39
+ inverse_of: { dtype: "string" },
40
+ transitive_over: { dtype: "list" },
41
+ disjoint_over: { dtype: "list" },
42
+ holds_over_chain: { dtype: "json" },
43
+ equivalent_to_chain: { dtype: "json" },
44
+ expand_assertion_to: { dtype: "json" },
45
+ expand_expression_to: { dtype: "json" },
46
+ is_cyclic: { dtype: "bool" },
47
+ is_reflexive: { dtype: "bool" },
48
+ is_symmetric: { dtype: "bool" },
49
+ is_anti_symmetric: { dtype: "bool" },
50
+ is_asymmetric: { dtype: "bool" },
51
+ is_transitive: { dtype: "bool" },
52
+ is_functional: { dtype: "bool" },
53
+ is_inverse_functional: { dtype: "bool" },
54
+ is_metadata_tag: { dtype: "bool" },
55
+ is_class_level: { dtype: "bool" },
56
+ // OBO Graphs only
57
+ propertyType: { dtype: "dict" },
58
+ // what has no column of its own
59
+ "obo.qualifiers": { dtype: "json" },
60
+ "obo.unrecognized": { dtype: "json" },
61
+ });
62
+ /** The edge columns of the OBO vocabulary. */
63
+ const OBO_EDGE_COLUMNS = Object.freeze({
64
+ relation: { dtype: "dict", role: "kind" },
65
+ qualifiers: { dtype: "json" },
66
+ meta: { dtype: "json" },
67
+ });
68
+ /** The node column that marks a node made for an undeclared reference (design section 4.2). */
69
+ export const PLACEHOLDER_COLUMN = "graphty.placeholder";
70
+ /**
71
+ * The declaration of an OBO vocabulary column.
72
+ * @param domain - node or edge
73
+ * @param name - the column name (a key of OBO_NODE_COLUMNS / OBO_EDGE_COLUMNS, or the placeholder column)
74
+ * @returns the declaration, nullable, with origin `{ format: "obo", id: name }`
75
+ */
76
+ export function oboColumnDecl(domain, name) {
77
+ if (name === PLACEHOLDER_COLUMN) {
78
+ return { name, dtype: "bool", nullable: true, origin: { format: "graphty", id: "placeholder" } };
79
+ }
80
+ const spec = (domain === "node" ? OBO_NODE_COLUMNS : OBO_EDGE_COLUMNS)[name];
81
+ const decl = { name, dtype: spec.dtype, nullable: true, origin: { format: "obo", id: name } };
82
+ if (spec.dtype === "list") {
83
+ decl.itemDtype = "string";
84
+ }
85
+ if (spec.role !== undefined) {
86
+ decl.role = spec.role;
87
+ }
88
+ return decl;
89
+ }
90
+ /** The OBO PURL base every OBO Foundry IRI starts with. */
91
+ const OBO_PURL = "http://purl.obolibrary.org/obo/";
92
+ /** The oboInOwl namespace of the OBO-to-OWL mapping's annotation properties. */
93
+ const OBO_IN_OWL = "http://www.geneontology.org/formats/oboInOwl#";
94
+ /**
95
+ * An IRI as the identifier the `.obo` file writes (the OBO 1.4 mapping, section 5.9, read
96
+ * backwards): `http://purl.obolibrary.org/obo/GO_0008150` is `GO:0008150` (the prefix is the text
97
+ * before the first underscore), and `http://purl.obolibrary.org/obo/go#regulates` (how the OWL
98
+ * translation writes an unprefixed OBO id: subsets, relations, synonym types) is `regulates`.
99
+ * Every other IRI, and an OBO PURL that fits neither form (`.../obo/T/Female`), is kept.
100
+ * @param iri - the IRI
101
+ * @returns the CURIE or local id, or the IRI unchanged
102
+ */
103
+ export function compactOboIri(iri) {
104
+ if (!iri.startsWith(OBO_PURL)) {
105
+ return iri;
106
+ }
107
+ const rest = iri.slice(OBO_PURL.length);
108
+ const hash = rest.indexOf("#");
109
+ if (hash > 0) {
110
+ const local = rest.slice(hash + 1);
111
+ return local.length > 0 && !rest.slice(0, hash).includes("/") ? local : iri;
112
+ }
113
+ const underscore = rest.indexOf("_");
114
+ if (underscore <= 0 || rest.includes("/") || underscore === rest.length - 1) {
115
+ return iri;
116
+ }
117
+ return `${rest.slice(0, underscore)}:${rest.slice(underscore + 1)}`;
118
+ }
119
+ /** The OBO synonym scopes. */
120
+ export const SYNONYM_SCOPES = new Set(["EXACT", "BROAD", "NARROW", "RELATED"]);
121
+ /**
122
+ * The OBO synonym scope of an OBO Graphs synonym predicate (`hasExactSynonym`, with or without the
123
+ * oboInOwl namespace).
124
+ * @param pred - the predicate
125
+ * @returns the scope, or null for a predicate that is not one of the four
126
+ */
127
+ export function synonymScopeOf(pred) {
128
+ const local = pred.startsWith(OBO_IN_OWL) ? pred.slice(OBO_IN_OWL.length) : pred;
129
+ const match = /^has(Exact|Broad|Narrow|Related)Synonym$/.exec(local);
130
+ return match === null ? null : match[1].toUpperCase();
131
+ }
132
+ /**
133
+ * The OBO tag a `basicPropertyValues` predicate of OBO Graphs came from (the OBO-to-OWL mapping of
134
+ * the tags that are annotations), so the `.json` of an ontology fills the same columns as its
135
+ * `.obo`. `shorthand` is the relation's short name; every predicate not listed is a
136
+ * `property_value`.
137
+ */
138
+ export const OBOGRAPHS_PREDICATE_TAGS = new Map([
139
+ [`${OBO_IN_OWL}hasOBONamespace`, "namespace"],
140
+ [`${OBO_IN_OWL}hasAlternativeId`, "alt_id"],
141
+ [`${OBO_IN_OWL}created_by`, "created_by"],
142
+ [`${OBO_IN_OWL}creation_date`, "creation_date"],
143
+ [`${OBO_PURL}IAO_0100001`, "replaced_by"],
144
+ [`${OBO_IN_OWL}consider`, "consider"],
145
+ [`${OBO_IN_OWL}shorthand`, "shorthand"],
146
+ ]);
147
+ //# sourceMappingURL=ontology.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ontology.js","sourceRoot":"","sources":["../../../src/common/ontology.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * `weightFrom`, `addMissingNodes`) supplied by the importer that calls resolveImportOptions().
6
6
  */
7
7
  import { type DuplicatePolicy, type GraphSink, type IdCoercion } from "@graphty/graph-format";
8
- import { type CommonExportOptions, type CommonImportOptions } from "../types.js";
8
+ import { type CommonExportOptions, type CommonImportOptions, type GraphChoiceOptions } from "../types.js";
9
9
  import { SINK_OPTION_CODE } from "./codes.js";
10
10
  import { type ImportReportBuilder } from "./report.js";
11
11
  /** The defaults an importer supplies for the options whose default is per format (design section 8.4). */
@@ -93,6 +93,17 @@ export declare function reportSinkOptions(sink: GraphSink, options: CommonImport
93
93
  * @returns the number of warnings recorded
94
94
  */
95
95
  export declare function reportUnusedOptions(options: CommonImportOptions | undefined, report: ImportReportBuilder, used: ReadonlySet<keyof CommonImportOptions>): number;
96
+ /**
97
+ * The graph an importer reads from an input that holds several: the one `graphIndex` or
98
+ * `graphName` names, else the first. A choice that names no graph is E_GRAPH_NOT_FOUND, a name two
99
+ * graphs share is E_AMBIGUOUS_GRAPH_NAME, and an input with no graph at all is E_NO_GRAPH, each
100
+ * fatal (the report fails with ImportError).
101
+ * @param names - each graph's name (null for an unnamed graph), in document order
102
+ * @param options - the caller's graphIndex / graphName
103
+ * @param report - the report a failure is recorded in
104
+ * @returns the index of the graph to read; E_UNSUPPORTED for an option of the wrong type, or both
105
+ */
106
+ export declare function chooseGraph(names: readonly (string | null)[], options: GraphChoiceOptions | undefined, report: ImportReportBuilder): number;
96
107
  /**
97
108
  * Apply the design section 8.4 defaults to an importer's common options and check every enum
98
109
  * value. Format-specific options in the same object are ignored here.
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/common/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/common/options.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * `weightFrom`, `addMissingNodes`) supplied by the importer that calls resolveImportOptions().
6
6
  */
7
7
  import { GraphFormatError } from "@graphty/graph-format";
8
- import { OPTION_IGNORED_CODE, SINK_OPTION_CODE } from "./codes.js";
8
+ import { AMBIGUOUS_GRAPH_NAME_CODE, GRAPH_NOT_FOUND_CODE, NO_GRAPH_CODE, OPTION_IGNORED_CODE, SINK_OPTION_CODE, } from "./codes.js";
9
9
  import { canonicalEncoding } from "./input.js";
10
10
  const ID_COERCIONS = new Set(["keep", "canonical", "string", "number"]);
11
11
  const NODE_ID_SOURCES = new Set(["id", "label", "index"]);
@@ -97,6 +97,56 @@ export function reportUnusedOptions(options, report, used) {
97
97
  }
98
98
  return recorded;
99
99
  }
100
+ /**
101
+ * The graph an importer reads from an input that holds several: the one `graphIndex` or
102
+ * `graphName` names, else the first. A choice that names no graph is E_GRAPH_NOT_FOUND, a name two
103
+ * graphs share is E_AMBIGUOUS_GRAPH_NAME, and an input with no graph at all is E_NO_GRAPH, each
104
+ * fatal (the report fails with ImportError).
105
+ * @param names - each graph's name (null for an unnamed graph), in document order
106
+ * @param options - the caller's graphIndex / graphName
107
+ * @param report - the report a failure is recorded in
108
+ * @returns the index of the graph to read; E_UNSUPPORTED for an option of the wrong type, or both
109
+ */
110
+ export function chooseGraph(names, options, report) {
111
+ const { graphIndex, graphName } = options ?? {};
112
+ if (graphIndex !== undefined &&
113
+ (typeof graphIndex !== "number" || !Number.isInteger(graphIndex) || graphIndex < 0)) {
114
+ throw new GraphFormatError("E_UNSUPPORTED", `option graphIndex: ${describe(graphIndex)} is not a non-negative integer`, {
115
+ option: "graphIndex",
116
+ found: graphIndex,
117
+ });
118
+ }
119
+ if (graphName !== undefined && typeof graphName !== "string") {
120
+ throw new GraphFormatError("E_UNSUPPORTED", `option graphName: ${describe(graphName)} is not a string`, {
121
+ option: "graphName",
122
+ found: graphName,
123
+ });
124
+ }
125
+ if (graphIndex !== undefined && graphName !== undefined) {
126
+ throw new GraphFormatError("E_UNSUPPORTED", "options graphIndex and graphName both choose a graph; pass one", {
127
+ option: "graphName",
128
+ found: graphName,
129
+ });
130
+ }
131
+ if (names.length === 0) {
132
+ return report.fail(NO_GRAPH_CODE, "the input holds no graph");
133
+ }
134
+ if (graphName !== undefined) {
135
+ const matches = names.flatMap((name, i) => (name === graphName ? [i] : []));
136
+ if (matches.length > 1) {
137
+ return report.fail(AMBIGUOUS_GRAPH_NAME_CODE, `graphName ${JSON.stringify(graphName)} names the graphs at indexes ${matches.join(", ")}; pass graphIndex`, { element: graphName });
138
+ }
139
+ if (matches.length === 0) {
140
+ return report.fail(GRAPH_NOT_FOUND_CODE, `graphName ${JSON.stringify(graphName)} names none of the ${names.length} graph(s)`, { element: graphName }, { names: [...names] });
141
+ }
142
+ return matches[0];
143
+ }
144
+ const index = graphIndex ?? 0;
145
+ if (index >= names.length) {
146
+ return report.fail(GRAPH_NOT_FOUND_CODE, `graphIndex ${index} is beyond the ${names.length} graph(s)`);
147
+ }
148
+ return index;
149
+ }
100
150
  /**
101
151
  * Apply the design section 8.4 defaults to an importer's common options and check every enum
102
152
  * value. Format-specific options in the same object are ignored here.