kodexa-document 8.0.0.dev20607935278__tar.gz → 8.0.0.dev20677415017__tar.gz

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 (121) hide show
  1. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/PKG-INFO +8 -1
  2. kodexa_document-8.0.0.dev20677415017/kodexa_document/__init__.py +120 -0
  3. kodexa_document-8.0.0.dev20607935278/kodexa_document/_native/linux-amd64/libkodexa_go.h → kodexa_document-8.0.0.dev20677415017/kodexa_document/_native/linux-amd64/kodexa_go.h +33 -2
  4. kodexa_document-8.0.0.dev20607935278/kodexa_document/_native/linux-amd64/libkodexa_go.so → kodexa_document-8.0.0.dev20677415017/kodexa_document/_native/linux-amd64/kodexa_go.so +0 -0
  5. kodexa_document-8.0.0.dev20677415017/kodexa_document/_native/linux-amd64/kodexa_go_lambda.h +260 -0
  6. kodexa_document-8.0.0.dev20677415017/kodexa_document/_native/linux-amd64/kodexa_go_lambda.so +0 -0
  7. kodexa_document-8.0.0.dev20677415017/kodexa_document/_native/linux-arm64/kodexa_go.h +260 -0
  8. kodexa_document-8.0.0.dev20607935278/kodexa_document/_native/darwin-arm64/libkodexa_go.dylib → kodexa_document-8.0.0.dev20677415017/kodexa_document/_native/linux-arm64/kodexa_go.so +0 -0
  9. kodexa_document-8.0.0.dev20677415017/kodexa_document/_native/windows-amd64/kodexa_go.dll +0 -0
  10. kodexa_document-8.0.0.dev20677415017/kodexa_document/_native/windows-amd64/kodexa_go.h +260 -0
  11. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/kodexa_document/_native.py +137 -4
  12. kodexa_document-8.0.0.dev20677415017/kodexa_document/accessors.py +794 -0
  13. kodexa_document-8.0.0.dev20677415017/kodexa_document/assistant/__init__.py +4 -0
  14. kodexa_document-8.0.0.dev20677415017/kodexa_document/assistant/assistant.py +422 -0
  15. kodexa_document-8.0.0.dev20677415017/kodexa_document/extraction/__init__.py +33 -0
  16. kodexa_document-8.0.0.dev20677415017/kodexa_document/extraction/extraction.py +377 -0
  17. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/__init__.py +92 -0
  18. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/base.py +18 -0
  19. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/content_exception.py +216 -0
  20. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/content_feature.py +96 -0
  21. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/content_node.py +1643 -0
  22. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/document.py +2236 -0
  23. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/document_metadata.py +123 -0
  24. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/entities/__init__.py +0 -0
  25. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/entities/check_response.py +132 -0
  26. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/entities/product.py +179 -0
  27. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/entities/product_group.py +126 -0
  28. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/entities/product_subscription.py +122 -0
  29. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/enums.py +35 -0
  30. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/objects.py +6872 -0
  31. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/processing.py +85 -0
  32. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/ref.py +52 -0
  33. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/source_metadata.py +114 -0
  34. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/tag.py +247 -0
  35. kodexa_document-8.0.0.dev20677415017/kodexa_document/model/tag_instance.py +77 -0
  36. kodexa_document-8.0.0.dev20677415017/kodexa_document/platform/__init__.py +5 -0
  37. kodexa_document-8.0.0.dev20677415017/kodexa_document/platform/client.py +7858 -0
  38. kodexa_document-8.0.0.dev20677415017/kodexa_document/platform/interaction.py +38 -0
  39. kodexa_document-8.0.0.dev20677415017/kodexa_document/platform/kodexa.py +733 -0
  40. kodexa_document-8.0.0.dev20677415017/kodexa_document/platform/manifest.py +447 -0
  41. kodexa_document-8.0.0.dev20677415017/kodexa_document/processing/__init__.py +16 -0
  42. kodexa_document-8.0.0.dev20677415017/kodexa_document/processing/processing_step.py +263 -0
  43. kodexa_document-8.0.0.dev20677415017/kodexa_document/spatial/__init__.py +25 -0
  44. kodexa_document-8.0.0.dev20677415017/kodexa_document/spatial/azure_models.py +771 -0
  45. kodexa_document-8.0.0.dev20677415017/kodexa_document/spatial/bbox_common.py +164 -0
  46. kodexa_document-8.0.0.dev20677415017/kodexa_document/spatial/table_form_common.py +1109 -0
  47. kodexa_document-8.0.0.dev20677415017/kodexa_document/steps/__init__.py +9 -0
  48. kodexa_document-8.0.0.dev20677415017/kodexa_document/steps/common.py +208 -0
  49. kodexa_document-8.0.0.dev20677415017/kodexa_document/testing/__init__.py +15 -0
  50. kodexa_document-8.0.0.dev20677415017/kodexa_document/testing/test_utils.py +147 -0
  51. kodexa_document-8.0.0.dev20677415017/kodexa_document/utils/__init__.py +210 -0
  52. kodexa_document-8.0.0.dev20677415017/kodexa_document.egg-info/SOURCES.txt +113 -0
  53. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/pyproject.toml +13 -3
  54. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_contentnode_basic.py +9 -9
  55. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_contentnode_features_tags.py +5 -5
  56. kodexa_document-8.0.0.dev20677415017/tests/test_contentnode_spatial_methods.py +257 -0
  57. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_contentnode_tree.py +14 -9
  58. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_document.py +4 -2
  59. kodexa_document-8.0.0.dev20677415017/tests/test_document_knowledge_features.py +167 -0
  60. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_document_statistics.py +9 -9
  61. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_external_data.py +12 -8
  62. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_extraction.py +44 -46
  63. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_extraction_engine_get_validations.py +13 -13
  64. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_extraction_integration.py +17 -28
  65. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_extraction_process_and_save.py +4 -4
  66. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_extraction_validations.py +12 -66
  67. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_feature_append_behavior.py +3 -3
  68. kodexa_document-8.0.0.dev20677415017/tests/test_get_source.py +106 -0
  69. kodexa_document-8.0.0.dev20677415017/tests/test_native_document.py +346 -0
  70. kodexa_document-8.0.0.dev20677415017/tests/test_note.py +235 -0
  71. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_pretty_print.py +45 -43
  72. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_remaining_issues.py +5 -5
  73. kodexa_document-8.0.0.dev20607935278/kodexa_document/__init__.py +0 -73
  74. kodexa_document-8.0.0.dev20607935278/kodexa_document/_native/darwin-arm64/libkodexa_go.h +0 -229
  75. kodexa_document-8.0.0.dev20607935278/kodexa_document/_native/darwin-arm64/libkodexa_go_jni.dylib +0 -0
  76. kodexa_document-8.0.0.dev20607935278/kodexa_document/_native/linux-amd64/libkodexa_go_jni.so +0 -0
  77. kodexa_document-8.0.0.dev20607935278/kodexa_document.egg-info/SOURCES.txt +0 -66
  78. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/CHANGELOG.md +0 -0
  79. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/MANIFEST.in +0 -0
  80. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/README.md +0 -0
  81. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/USAGE.md +0 -0
  82. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/docs/API_REFERENCE.md +0 -0
  83. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/kodexa_document/errors.py +0 -0
  84. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/setup.cfg +0 -0
  85. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_content_exception.py +0 -0
  86. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_content_feature_coverage.py +0 -0
  87. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_content_parts.py +0 -0
  88. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_contentnode_legacy_compat.py +0 -0
  89. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_contentnode_lifecycle.py +0 -0
  90. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_contentnode_navigation.py +0 -0
  91. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_contentnode_selectors.py +0 -0
  92. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_delete_on_close.py +0 -0
  93. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_document_from_json.py +0 -0
  94. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_document_from_kddb.py +0 -0
  95. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_document_inmemory.py +0 -0
  96. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_document_metadata.py +0 -0
  97. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_document_to_json.py +0 -0
  98. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_enums.py +0 -0
  99. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_errors.py +0 -0
  100. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_exceptions.py +0 -0
  101. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_feature_debug.py +0 -0
  102. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_feature_detailed.py +0 -0
  103. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_feature_fix.py +0 -0
  104. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_json_fixes.py +0 -0
  105. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_json_roundtrip.py +0 -0
  106. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_labels.py +0 -0
  107. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_memory.py +0 -0
  108. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_metadata_persistence.py +0 -0
  109. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_minimal.py +0 -0
  110. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_mixins.py +0 -0
  111. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_new_methods.py +0 -0
  112. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_processing_step.py +0 -0
  113. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_processing_step_integration.py +0 -0
  114. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_processing_steps.py +0 -0
  115. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_rotation_methods.py +0 -0
  116. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_source_metadata.py +0 -0
  117. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_spatial_methods.py +0 -0
  118. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_tag_class.py +0 -0
  119. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_tag_instance.py +0 -0
  120. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_tag_integration.py +0 -0
  121. {kodexa_document-8.0.0.dev20607935278 → kodexa_document-8.0.0.dev20677415017}/tests/test_to_kddb.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kodexa-document
3
- Version: 8.0.0.dev20607935278
3
+ Version: 8.0.0.dev20677415017
4
4
  Summary: High-performance Python bindings for the Go-based Kodexa Document SDK with in-memory processing
5
5
  Author-email: Kodexa <support@kodexa.com>
6
6
  License: Apache-2.0
@@ -25,6 +25,7 @@ Description-Content-Type: text/markdown
25
25
  Requires-Dist: cffi>=1.14.0
26
26
  Requires-Dist: addict>=2.4.0
27
27
  Requires-Dist: pydantic>=2.0.0
28
+ Requires-Dist: simpleeval>=0.9.0
28
29
  Provides-Extra: dev
29
30
  Requires-Dist: pytest>=6.0; extra == "dev"
30
31
  Requires-Dist: pytest-cov; extra == "dev"
@@ -38,6 +39,12 @@ Provides-Extra: test
38
39
  Requires-Dist: pytest>=6.0; extra == "test"
39
40
  Requires-Dist: pytest-cov; extra == "test"
40
41
  Provides-Extra: lambda
42
+ Provides-Extra: platform
43
+ Requires-Dist: requests>=2.25.0; extra == "platform"
44
+ Requires-Dist: pyfunctional>=1.4.0; extra == "platform"
45
+ Requires-Dist: pydantic-yaml>=1.0.0; extra == "platform"
46
+ Requires-Dist: pyyaml>=6.0; extra == "platform"
47
+ Requires-Dist: numpy>=1.20.0; extra == "platform"
41
48
 
42
49
  # Kodexa Document Python
43
50
 
@@ -0,0 +1,120 @@
1
+ """
2
+ Kodexa Document Go Python Bindings
3
+
4
+ Python bindings for the Go-based Kodexa Document SDK using CFFI.
5
+ """
6
+
7
+ from importlib.metadata import version, PackageNotFoundError
8
+
9
+ try:
10
+ __version__ = version("kodexa-document")
11
+ except PackageNotFoundError:
12
+ __version__ = "0.0.0" # Fallback for development installs
13
+
14
+ __author__ = "Kodexa"
15
+
16
+ # Model classes
17
+ from .model import (
18
+ Document,
19
+ ContentNode,
20
+ ContentFeature,
21
+ Tag,
22
+ TagInstance,
23
+ DocumentMetadata,
24
+ SourceMetadata,
25
+ ContentException,
26
+ FindDirection,
27
+ Traverse,
28
+ )
29
+ from .model.objects import DocumentKnowledgeFeature
30
+
31
+ # Extraction classes
32
+ from .extraction import (
33
+ ExtractionEngine,
34
+ Taxonomy,
35
+ DataObject,
36
+ DataAttribute,
37
+ DataException,
38
+ DocumentTaxonValidation,
39
+ )
40
+
41
+ # Processing classes
42
+ from .processing import ProcessingStep
43
+
44
+ # Error classes
45
+ from .errors import (
46
+ DocumentError,
47
+ DocumentNotFoundError,
48
+ InvalidDocumentError,
49
+ ExtractionError,
50
+ MemoryError,
51
+ )
52
+
53
+ # Accessor classes
54
+ from .accessors import (
55
+ DataAttributeAccessor,
56
+ DataAttributeInput,
57
+ DataObjectAccessor,
58
+ DataObjectInput,
59
+ AuditAccessor,
60
+ NativeDocumentAccessor,
61
+ NativeDocumentInput,
62
+ NoteAccessor,
63
+ NoteInput,
64
+ NoteType,
65
+ )
66
+
67
+ # Utility functions (commonly used for compatibility)
68
+ from .utils import get_source
69
+
70
+ # Platform, Assistant, Steps, Spatial, and Utils classes are imported lazily
71
+ # to avoid requiring their dependencies at package import time.
72
+ # Import them explicitly when needed:
73
+ # from kodexa_document.platform import KodexaClient, KodexaPlatform
74
+ # from kodexa_document.assistant import Assistant, AssistantContext
75
+ # from kodexa_document.steps import NodeTagger, RollupTransformer
76
+ # from kodexa_document.spatial import overlaps_with
77
+ # from kodexa_document.utils import safe_name
78
+
79
+ __all__ = [
80
+ # Model
81
+ "Document",
82
+ "ContentNode",
83
+ "ContentFeature",
84
+ "Tag",
85
+ "TagInstance",
86
+ "DocumentMetadata",
87
+ "SourceMetadata",
88
+ "ContentException",
89
+ "FindDirection",
90
+ "Traverse",
91
+ "DocumentKnowledgeFeature",
92
+ # Extraction
93
+ "ExtractionEngine",
94
+ "Taxonomy",
95
+ "DataObject",
96
+ "DataAttribute",
97
+ "DataException",
98
+ "DocumentTaxonValidation",
99
+ # Processing
100
+ "ProcessingStep",
101
+ # Errors
102
+ "DocumentError",
103
+ "DocumentNotFoundError",
104
+ "InvalidDocumentError",
105
+ "ExtractionError",
106
+ "MemoryError",
107
+ # Accessors
108
+ "DataAttributeAccessor",
109
+ "DataAttributeInput",
110
+ "DataObjectAccessor",
111
+ "DataObjectInput",
112
+ "AuditAccessor",
113
+ "NativeDocumentAccessor",
114
+ "NativeDocumentInput",
115
+ "NoteAccessor",
116
+ "NoteInput",
117
+ "NoteType",
118
+ # Utility functions
119
+ "get_source",
120
+ ]
@@ -133,6 +133,23 @@ extern long long unsigned int* GetNodeChildren(long long unsigned int nodeHandle
133
133
  extern int AddNodeChild(long long unsigned int parentHandle, long long unsigned int childHandle, int index);
134
134
  extern int RemoveNodeChild(long long unsigned int parentHandle, long long unsigned int childHandle);
135
135
  extern void FreeHandleArray(long long unsigned int* handles);
136
+ extern int AdoptNodeChildren(long long unsigned int parentHandle, long long unsigned int* childHandles, int childCount, int replace);
137
+ extern int DeleteNodeChildren(long long unsigned int parentHandle, long long unsigned int* childHandles, int childCount, long long unsigned int* excludeHandles, int excludeCount);
138
+ extern double GetNodeConfidence(long long unsigned int nodeHandle);
139
+ extern int SetNodeConfidence(long long unsigned int nodeHandle, double confidence);
140
+ extern int HasNodeConfidence(long long unsigned int nodeHandle);
141
+ extern int IsNodeRoot(long long unsigned int nodeHandle);
142
+ extern int IsNodeFirstChild(long long unsigned int nodeHandle);
143
+ extern int IsNodeLastChild(long long unsigned int nodeHandle);
144
+ extern int IsNodeLeaf(long long unsigned int nodeHandle);
145
+ extern int GetNodeDepth(long long unsigned int nodeHandle);
146
+ extern int GetNodePage(long long unsigned int nodeHandle);
147
+ extern long long unsigned int GetNodeFirstChild(long long unsigned int nodeHandle);
148
+ extern long long unsigned int GetNodeLastChild(long long unsigned int nodeHandle);
149
+ extern int ClearNodeBBox(long long unsigned int nodeHandle);
150
+ extern int NodeMatches(long long unsigned int nodeHandle, char* pattern);
151
+ extern int RemoveAllNodeTags(long long unsigned int nodeHandle);
152
+ extern int RemoveAllNodeFeatures(long long unsigned int nodeHandle);
136
153
  extern long long unsigned int GetNextNode(long long unsigned int nodeHandle);
137
154
  extern long long unsigned int GetPreviousNode(long long unsigned int nodeHandle);
138
155
  extern char* AddNodeFeature(long long unsigned int nodeHandle, char* featureType, char* name, char* valueJSON, int single, int serialized);
@@ -143,6 +160,7 @@ extern int RemoveNodeFeature(long long unsigned int nodeHandle, char* featureTyp
143
160
  extern char* GetNodeFeatureValue(long long unsigned int nodeHandle, char* featureType, char* name);
144
161
  extern int HasNodeFeature(long long unsigned int nodeHandle, char* featureType, char* name);
145
162
  extern char* GetNodeFeaturesOfType(long long unsigned int nodeHandle, char* featureType);
163
+ extern char* NodeToDict(long long unsigned int nodeHandle);
146
164
  extern int TagNode(long long unsigned int nodeHandle, char* tagNameC, char* optionsJSON);
147
165
  extern char* GetNodeTags(long long unsigned int nodeHandle);
148
166
  extern char* GetNodeTag(long long unsigned int nodeHandle, char* tagNameC);
@@ -179,8 +197,7 @@ extern char* GetTaxonomyJSON(long long unsigned int taxonomyHandle);
179
197
  extern int ValidateTaxonomy(char* taxonomyJSON);
180
198
  extern void FreeTaxonomy(long long unsigned int taxonomyHandle);
181
199
  extern long long unsigned int CreateExtractionEngine(long long unsigned int docHandle, char* taxonomiesJSON);
182
- extern char* ProcessExtraction(long long unsigned int engineHandle);
183
- extern char* ProcessAndSaveExtraction(long long unsigned int engineHandle);
200
+ extern int ProcessAndSaveExtraction(long long unsigned int engineHandle);
184
201
  extern char* GetContentExceptions(long long unsigned int engineHandle);
185
202
  extern char* GetDocumentTaxonValidations(long long unsigned int engineHandle);
186
203
  extern void FreeExtractionEngine(long long unsigned int engineHandle);
@@ -223,6 +240,20 @@ extern char* DocumentGetRevisionDetails(long long unsigned int handle, unsigned
223
240
  extern char* DocumentGetDataObjectAuditsByRevision(long long unsigned int handle, unsigned int revisionID);
224
241
  extern char* DocumentGetDataAttributeAuditsByRevision(long long unsigned int handle, unsigned int revisionID);
225
242
  extern char* DocumentGetTagAuditsByRevision(long long unsigned int handle, unsigned int revisionID);
243
+ extern char* DocumentGetNativeDocuments(long long unsigned int handle);
244
+ extern char* DocumentGetNativeDocumentByID(long long unsigned int handle, unsigned int id);
245
+ extern char* DocumentGetFirstNativeDocument(long long unsigned int handle);
246
+ extern char* DocumentGetNativeDocumentByFilename(long long unsigned int handle, char* filename);
247
+ extern char* DocumentGetNativeDocumentData(long long unsigned int handle, unsigned int id, int* outLen);
248
+ extern unsigned int DocumentCreateNativeDocument(long long unsigned int handle, char* filename, char* mimeType, char* data, int dataLen, char* checksum);
249
+ extern int DocumentDeleteNativeDocument(long long unsigned int handle, unsigned int id);
250
+ extern int DocumentDeleteAllNativeDocuments(long long unsigned int handle);
251
+ extern char* DocumentGetAllNotes(long long unsigned int handle);
252
+ extern char* DocumentGetNotesByDataObjectID(long long unsigned int handle, long long unsigned int dataObjectID);
253
+ extern char* DocumentGetNotesByDataAttributeID(long long unsigned int handle, long long unsigned int dataAttributeID);
254
+ extern long long unsigned int DocumentCreateNote(long long unsigned int handle, char* noteJSON);
255
+ extern int DocumentUpdateNote(long long unsigned int handle, char* noteJSON);
256
+ extern int DocumentDeleteNote(long long unsigned int handle, long long unsigned int noteID);
226
257
 
227
258
  #ifdef __cplusplus
228
259
  }
@@ -0,0 +1,260 @@
1
+ /* Code generated by cmd/cgo; DO NOT EDIT. */
2
+
3
+ /* package github.com/kodexa/kodexa-document/lib/go/cmd/cbridge */
4
+
5
+
6
+ #line 1 "cgo-builtin-export-prolog"
7
+
8
+ #include <stddef.h>
9
+
10
+ #ifndef GO_CGO_EXPORT_PROLOGUE_H
11
+ #define GO_CGO_EXPORT_PROLOGUE_H
12
+
13
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
14
+ typedef struct { const char *p; ptrdiff_t n; } _GoString_;
15
+ #endif
16
+
17
+ #endif
18
+
19
+ /* Start of preamble from import "C" comments. */
20
+
21
+
22
+ #line 5 "main.go"
23
+
24
+ #include <stdlib.h>
25
+ #include <string.h>
26
+
27
+ #line 1 "cgo-generated-wrapper"
28
+
29
+
30
+ /* End of preamble from import "C" comments. */
31
+
32
+
33
+ /* Start of boilerplate cgo prologue. */
34
+ #line 1 "cgo-gcc-export-header-prolog"
35
+
36
+ #ifndef GO_CGO_PROLOGUE_H
37
+ #define GO_CGO_PROLOGUE_H
38
+
39
+ typedef signed char GoInt8;
40
+ typedef unsigned char GoUint8;
41
+ typedef short GoInt16;
42
+ typedef unsigned short GoUint16;
43
+ typedef int GoInt32;
44
+ typedef unsigned int GoUint32;
45
+ typedef long long GoInt64;
46
+ typedef unsigned long long GoUint64;
47
+ typedef GoInt64 GoInt;
48
+ typedef GoUint64 GoUint;
49
+ typedef size_t GoUintptr;
50
+ typedef float GoFloat32;
51
+ typedef double GoFloat64;
52
+ #ifdef _MSC_VER
53
+ #include <complex.h>
54
+ typedef _Fcomplex GoComplex64;
55
+ typedef _Dcomplex GoComplex128;
56
+ #else
57
+ typedef float _Complex GoComplex64;
58
+ typedef double _Complex GoComplex128;
59
+ #endif
60
+
61
+ /*
62
+ static assertion to make sure the file is being used on architecture
63
+ at least with matching size of GoInt.
64
+ */
65
+ typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*)==64/8 ? 1:-1];
66
+
67
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
68
+ typedef _GoString_ GoString;
69
+ #endif
70
+ typedef void *GoMap;
71
+ typedef void *GoChan;
72
+ typedef struct { void *t; void *v; } GoInterface;
73
+ typedef struct { void *data; GoInt len; GoInt cap; } GoSlice;
74
+
75
+ #endif
76
+
77
+ /* End of boilerplate cgo prologue. */
78
+
79
+ #ifdef __cplusplus
80
+ extern "C" {
81
+ #endif
82
+
83
+ extern char* GetLibraryVersion();
84
+ extern char* GetBuildInfo();
85
+ extern int IsLambdaEnvironment();
86
+ extern long long unsigned int CreateDocument(char* jsonInput);
87
+ extern long long unsigned int OpenDocument(char* path, int detached, int inmemory, int deleteOnClose);
88
+ extern long long unsigned int OpenDocumentFromBytes(void* data, int size, int inmemory);
89
+ extern int SaveDocument(long long unsigned int handle, char* path);
90
+ extern int CloseDocument(long long unsigned int handle);
91
+ extern void FreeHandle(long long unsigned int handle);
92
+ extern char* GetDocumentJSON(long long unsigned int handle);
93
+ extern char* GetDocumentUUID(long long unsigned int handle);
94
+ extern char* GetDocumentVersion(long long unsigned int handle);
95
+ extern char* GetValidations(long long unsigned int handle);
96
+ extern char* GetAllDataExceptions(long long unsigned int handle);
97
+ extern int SetDocumentValidationsList(long long unsigned int handle, char* validationsJSON);
98
+ extern char* GetDocumentKnowledgeFeatures(long long unsigned int handle);
99
+ extern int SetDocumentKnowledgeFeatures(long long unsigned int handle, char* featuresJSON);
100
+ extern char* GetDocumentProcessingSteps(long long unsigned int handle);
101
+ extern int SetDocumentProcessingSteps(long long unsigned int handle, char* stepsJSON);
102
+ extern char* GetDocumentLabels(long long unsigned int handle);
103
+ extern int AddDocumentLabel(long long unsigned int handle, char* label);
104
+ extern int RemoveDocumentLabel(long long unsigned int handle, char* label);
105
+ extern char* GetDocumentMixins(long long unsigned int handle);
106
+ extern int AddDocumentMixin(long long unsigned int handle, char* mixin);
107
+ extern char* GetDocumentExceptions(long long unsigned int handle);
108
+ extern int AddDocumentException(long long unsigned int handle, char* exceptionJSON);
109
+ extern long long unsigned int CreateDocumentFromText(char* text, char* separator, int inmemory);
110
+ extern void FreeString(char* str);
111
+ extern void FreeBytes(void* ptr);
112
+ extern int KodexaGetLastError();
113
+ extern char* KodexaGetLastErrorMessage();
114
+ extern void ClearError();
115
+ extern char* GetMemoryStats();
116
+ extern void* GetDocumentBytes(long long unsigned int handle, int* size);
117
+ extern void ForceGarbageCollection();
118
+ extern long long unsigned int CreateContentNode(long long unsigned int docHandle, char* nodeType, char* content, int index);
119
+ extern char* GetNodeType(long long unsigned int nodeHandle);
120
+ extern char* GetNodeContent(long long unsigned int nodeHandle);
121
+ extern int GetNodeIndex(long long unsigned int nodeHandle);
122
+ extern int GetNodeID(long long unsigned int nodeHandle);
123
+ extern int IsNodeVirtual(long long unsigned int nodeHandle);
124
+ extern char* GetNodeUUID(long long unsigned int nodeHandle);
125
+ extern int SetNodeContent(long long unsigned int nodeHandle, char* content);
126
+ extern char* GetNodeContentParts(long long unsigned int nodeHandle);
127
+ extern int SetNodeContentParts(long long unsigned int nodeHandle, char* partsJSON);
128
+ extern int SetNodeIndex(long long unsigned int nodeHandle, int index);
129
+ extern long long unsigned int GetNodeParent(long long unsigned int nodeHandle);
130
+ extern int GetNodeChildCount(long long unsigned int nodeHandle);
131
+ extern long long unsigned int GetNodeChild(long long unsigned int nodeHandle, int index);
132
+ extern long long unsigned int* GetNodeChildren(long long unsigned int nodeHandle, int* count);
133
+ extern int AddNodeChild(long long unsigned int parentHandle, long long unsigned int childHandle, int index);
134
+ extern int RemoveNodeChild(long long unsigned int parentHandle, long long unsigned int childHandle);
135
+ extern void FreeHandleArray(long long unsigned int* handles);
136
+ extern int AdoptNodeChildren(long long unsigned int parentHandle, long long unsigned int* childHandles, int childCount, int replace);
137
+ extern int DeleteNodeChildren(long long unsigned int parentHandle, long long unsigned int* childHandles, int childCount, long long unsigned int* excludeHandles, int excludeCount);
138
+ extern double GetNodeConfidence(long long unsigned int nodeHandle);
139
+ extern int SetNodeConfidence(long long unsigned int nodeHandle, double confidence);
140
+ extern int HasNodeConfidence(long long unsigned int nodeHandle);
141
+ extern int IsNodeRoot(long long unsigned int nodeHandle);
142
+ extern int IsNodeFirstChild(long long unsigned int nodeHandle);
143
+ extern int IsNodeLastChild(long long unsigned int nodeHandle);
144
+ extern int IsNodeLeaf(long long unsigned int nodeHandle);
145
+ extern int GetNodeDepth(long long unsigned int nodeHandle);
146
+ extern int GetNodePage(long long unsigned int nodeHandle);
147
+ extern long long unsigned int GetNodeFirstChild(long long unsigned int nodeHandle);
148
+ extern long long unsigned int GetNodeLastChild(long long unsigned int nodeHandle);
149
+ extern int ClearNodeBBox(long long unsigned int nodeHandle);
150
+ extern int NodeMatches(long long unsigned int nodeHandle, char* pattern);
151
+ extern int RemoveAllNodeTags(long long unsigned int nodeHandle);
152
+ extern int RemoveAllNodeFeatures(long long unsigned int nodeHandle);
153
+ extern long long unsigned int GetNextNode(long long unsigned int nodeHandle);
154
+ extern long long unsigned int GetPreviousNode(long long unsigned int nodeHandle);
155
+ extern char* AddNodeFeature(long long unsigned int nodeHandle, char* featureType, char* name, char* valueJSON, int single, int serialized);
156
+ extern int SetNodeFeature(long long unsigned int nodeHandle, char* featureType, char* name, char* valueJSON);
157
+ extern char* GetNodeFeature(long long unsigned int nodeHandle, char* featureType, char* name);
158
+ extern char* GetAllNodeFeatures(long long unsigned int nodeHandle);
159
+ extern int RemoveNodeFeature(long long unsigned int nodeHandle, char* featureType, char* name);
160
+ extern char* GetNodeFeatureValue(long long unsigned int nodeHandle, char* featureType, char* name);
161
+ extern int HasNodeFeature(long long unsigned int nodeHandle, char* featureType, char* name);
162
+ extern char* GetNodeFeaturesOfType(long long unsigned int nodeHandle, char* featureType);
163
+ extern char* NodeToDict(long long unsigned int nodeHandle);
164
+ extern int TagNode(long long unsigned int nodeHandle, char* tagNameC, char* optionsJSON);
165
+ extern char* GetNodeTags(long long unsigned int nodeHandle);
166
+ extern char* GetNodeTag(long long unsigned int nodeHandle, char* tagNameC);
167
+ extern int RemoveNodeTag(long long unsigned int nodeHandle, char* tagNameC);
168
+ extern int HasNodeTag(long long unsigned int nodeHandle, char* tagNameC);
169
+ extern long long unsigned int GetDocumentContentNode(long long unsigned int docHandle);
170
+ extern int SetDocumentContentNode(long long unsigned int docHandle, long long unsigned int nodeHandle);
171
+ extern long long unsigned int DocumentCreateNode(long long unsigned int docHandle, char* nodeType, char* content);
172
+ extern long long unsigned int DocumentCreateNodeWithOptions(long long unsigned int docHandle, char* nodeType, char* content, int virtual, long long unsigned int parentHandle, int index);
173
+ extern long long unsigned int* GetNodeSiblings(long long unsigned int nodeHandle, int* count);
174
+ extern long long unsigned int* GetNodePath(long long unsigned int nodeHandle, int* count);
175
+ extern char* GetNodeAllContent(long long unsigned int nodeHandle, char* separator, int strip);
176
+ extern long long unsigned int* DocumentSelect(long long unsigned int docHandle, char* selector, char* variablesJSON, int firstOnly, int* count);
177
+ extern long long unsigned int DocumentSelectFirst(long long unsigned int docHandle, char* selector, char* variablesJSON);
178
+ extern long long unsigned int* SelectNodes(long long unsigned int nodeHandle, char* selector, char* variablesJSON, int* count);
179
+ extern long long unsigned int SelectSingleNode(long long unsigned int nodeHandle, char* selector, char* variablesJSON);
180
+ extern long long unsigned int CreateDocumentFromJSON(char* jsonData, int inmemory);
181
+ extern char* GetDocumentMetadata(long long unsigned int handle);
182
+ extern int SetDocumentMetadata(long long unsigned int handle, char* key, char* value);
183
+ extern char* Document_GetRef(long long unsigned int docHandle);
184
+ extern void Document_SetRef(long long unsigned int docHandle, char* ref);
185
+ extern int Document_GetDeleteOnClose(long long unsigned int docHandle);
186
+ extern char* GetDocumentSource(long long unsigned int docHandle);
187
+ extern int SetDocumentSource(long long unsigned int docHandle, char* sourceJSON);
188
+ extern char* GetExternalData(long long unsigned int handle, char* key);
189
+ extern int SetExternalData(long long unsigned int handle, char* key, char* dataJSON);
190
+ extern char* GetExternalDataKeys(long long unsigned int handle);
191
+ extern int AddTag(long long unsigned int nodeHandle, char* tagJSON);
192
+ extern char* GetAllTaggedNodes(long long unsigned int docHandle);
193
+ extern char* GetTagsByName(long long unsigned int docHandle, char* tagName);
194
+ extern long long unsigned int LoadTaxonomy(char* taxonomyJSON);
195
+ extern long long unsigned int LoadTaxonomyFromFile(char* path);
196
+ extern char* GetTaxonomyJSON(long long unsigned int taxonomyHandle);
197
+ extern int ValidateTaxonomy(char* taxonomyJSON);
198
+ extern void FreeTaxonomy(long long unsigned int taxonomyHandle);
199
+ extern long long unsigned int CreateExtractionEngine(long long unsigned int docHandle, char* taxonomiesJSON);
200
+ extern int ProcessAndSaveExtraction(long long unsigned int engineHandle);
201
+ extern char* GetContentExceptions(long long unsigned int engineHandle);
202
+ extern char* GetDocumentTaxonValidations(long long unsigned int engineHandle);
203
+ extern void FreeExtractionEngine(long long unsigned int engineHandle);
204
+ extern long long unsigned int GetNodeByUUID(long long unsigned int docHandle, char* uuid);
205
+ extern int DeleteContentNode(long long unsigned int nodeHandle);
206
+ extern int SetNodeType(long long unsigned int nodeHandle, char* nodeType);
207
+ extern int SetNodeVirtual(long long unsigned int nodeHandle, int virtual);
208
+ extern char* GetDocumentAllTags(long long unsigned int handle);
209
+ extern char* GetNodesByType(long long unsigned int handle, char* nodeType);
210
+ extern char* GetDocumentStatistics(long long unsigned int handle);
211
+ extern char* GetTagInstances(long long unsigned int handle, char* tagName);
212
+ extern char* GetTagInstance(long long unsigned int handle, char* tagName);
213
+ extern int AddTagInstance(long long unsigned int handle, char* tagName, char* nodeHandlesJSON);
214
+ extern char* GetPrettyPage(long long unsigned int handle, int pageIndex);
215
+ extern char* GetPrettyPages(long long unsigned int handle);
216
+ extern char* GetDocumentLines(long long unsigned int handle);
217
+ extern char* GetOpenExceptions(long long unsigned int handle);
218
+ extern int CloseException(long long unsigned int handle, unsigned int excID, char* closingComment);
219
+ extern char* DocumentGetDataObjects(long long unsigned int handle);
220
+ extern char* DocumentGetDataObjectByUUID(long long unsigned int handle, char* uuid);
221
+ extern char* DocumentGetDataObjectsByGroupUUID(long long unsigned int handle, char* groupUUID);
222
+ extern char* DocumentCreateDataObject(long long unsigned int handle, char* dataObjectJSON);
223
+ extern char* DocumentUpdateDataObject(long long unsigned int handle, char* uuid, char* dataObjectJSON);
224
+ extern int DocumentDeleteDataObject(long long unsigned int handle, unsigned int dataObjectID);
225
+ extern char* DocumentGetDataAttributes(long long unsigned int handle, unsigned int dataObjectID);
226
+ extern char* DocumentGetDataAttributeByID(long long unsigned int handle, unsigned int attrID);
227
+ extern char* DocumentGetDataAttributesByDataObjectID(long long unsigned int handle, unsigned int dataObjectID);
228
+ extern unsigned int DocumentCreateDataAttribute(long long unsigned int handle, char* attrJSON);
229
+ extern int DocumentUpdateDataAttribute(long long unsigned int handle, char* attrJSON);
230
+ extern int DocumentDeleteDataAttribute(long long unsigned int handle, unsigned int attrID);
231
+ extern int SetNodeBBox(long long unsigned int nodeHandle, char* bboxJSON);
232
+ extern char* GetNodeBBox(long long unsigned int nodeHandle);
233
+ extern int HasNodeBBox(long long unsigned int nodeHandle);
234
+ extern char* DocumentListAuditRevisions(long long unsigned int handle);
235
+ extern char* DocumentGetAuditRevision(long long unsigned int handle, unsigned int revisionID);
236
+ extern char* DocumentGetDataObjectAuditHistory(long long unsigned int handle, unsigned int dataObjectID);
237
+ extern char* DocumentGetDataAttributeAuditHistory(long long unsigned int handle, unsigned int dataAttributeID);
238
+ extern char* DocumentGetTagAuditHistory(long long unsigned int handle, unsigned int tagID);
239
+ extern char* DocumentGetRevisionDetails(long long unsigned int handle, unsigned int revisionID);
240
+ extern char* DocumentGetDataObjectAuditsByRevision(long long unsigned int handle, unsigned int revisionID);
241
+ extern char* DocumentGetDataAttributeAuditsByRevision(long long unsigned int handle, unsigned int revisionID);
242
+ extern char* DocumentGetTagAuditsByRevision(long long unsigned int handle, unsigned int revisionID);
243
+ extern char* DocumentGetNativeDocuments(long long unsigned int handle);
244
+ extern char* DocumentGetNativeDocumentByID(long long unsigned int handle, unsigned int id);
245
+ extern char* DocumentGetFirstNativeDocument(long long unsigned int handle);
246
+ extern char* DocumentGetNativeDocumentByFilename(long long unsigned int handle, char* filename);
247
+ extern char* DocumentGetNativeDocumentData(long long unsigned int handle, unsigned int id, int* outLen);
248
+ extern unsigned int DocumentCreateNativeDocument(long long unsigned int handle, char* filename, char* mimeType, char* data, int dataLen, char* checksum);
249
+ extern int DocumentDeleteNativeDocument(long long unsigned int handle, unsigned int id);
250
+ extern int DocumentDeleteAllNativeDocuments(long long unsigned int handle);
251
+ extern char* DocumentGetAllNotes(long long unsigned int handle);
252
+ extern char* DocumentGetNotesByDataObjectID(long long unsigned int handle, long long unsigned int dataObjectID);
253
+ extern char* DocumentGetNotesByDataAttributeID(long long unsigned int handle, long long unsigned int dataAttributeID);
254
+ extern long long unsigned int DocumentCreateNote(long long unsigned int handle, char* noteJSON);
255
+ extern int DocumentUpdateNote(long long unsigned int handle, char* noteJSON);
256
+ extern int DocumentDeleteNote(long long unsigned int handle, long long unsigned int noteID);
257
+
258
+ #ifdef __cplusplus
259
+ }
260
+ #endif