ds-caselaw-marklogic-api-client 18.0.0__tar.gz → 19.0.0__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.

Potentially problematic release.


This version of ds-caselaw-marklogic-api-client might be problematic. Click here for more details.

Files changed (60) hide show
  1. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/PKG-INFO +1 -1
  2. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/pyproject.toml +1 -1
  3. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/Client.py +19 -1
  4. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/models/documents.py +6 -1
  5. ds_caselaw_marklogic_api_client-19.0.0/src/caselawclient/xquery/get_pending_enrichment_for_version.xqy +18 -0
  6. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery_type_dicts.py +5 -0
  7. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/LICENSE.md +0 -0
  8. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/README.md +0 -0
  9. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/__init__.py +0 -0
  10. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/client_helpers/__init__.py +0 -0
  11. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/client_helpers/search_helpers.py +0 -0
  12. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/content_hash.py +0 -0
  13. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/errors.py +0 -0
  14. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/models/__init__.py +0 -0
  15. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/models/judgments.py +0 -0
  16. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/models/neutral_citation_mixin.py +0 -0
  17. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/models/press_summaries.py +0 -0
  18. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/models/utilities/__init__.py +0 -0
  19. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/models/utilities/aws.py +0 -0
  20. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/models/utilities/move.py +0 -0
  21. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/py.typed +0 -0
  22. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/responses/__init__.py +0 -0
  23. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/responses/search_response.py +0 -0
  24. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/responses/search_result.py +0 -0
  25. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/responses/xsl/search_match.xsl +0 -0
  26. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/search_parameters.py +0 -0
  27. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xml_helpers.py +0 -0
  28. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xml_tools.py +0 -0
  29. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/break_judgment_checkout.xqy +0 -0
  30. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/checkin_judgment.xqy +0 -0
  31. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/checkout_judgment.xqy +0 -0
  32. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/copy_document.xqy +0 -0
  33. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/delete_judgment.xqy +0 -0
  34. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/document_collections.xqy +0 -0
  35. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/document_exists.xqy +0 -0
  36. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/get_combined_stats_table.xqy +0 -0
  37. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/get_judgment.xqy +0 -0
  38. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/get_judgment_checkout_status.xqy +0 -0
  39. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/get_judgment_version.xqy +0 -0
  40. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/get_last_modified.xqy +0 -0
  41. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/get_properties_for_search_results.xqy +0 -0
  42. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/get_property.xqy +0 -0
  43. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/get_version_annotation.xqy +0 -0
  44. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/get_version_created.xqy +0 -0
  45. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/insert_document.xqy +0 -0
  46. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/list_judgment_versions.xqy +0 -0
  47. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/set_boolean_property.xqy +0 -0
  48. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/set_metadata_citation.xqy +0 -0
  49. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/set_metadata_court.xqy +0 -0
  50. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/set_metadata_name.xqy +0 -0
  51. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/set_metadata_this_uri.xqy +0 -0
  52. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/set_metadata_work_expression_date.xqy +0 -0
  53. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/set_property.xqy +0 -0
  54. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/update_document.xqy +0 -0
  55. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/update_locked_judgment.xqy +0 -0
  56. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/user_has_privilege.xqy +0 -0
  57. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/user_has_role.xqy +0 -0
  58. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/validate_all_documents.xqy +0 -0
  59. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/xslt.xqy +0 -0
  60. {ds_caselaw_marklogic_api_client-18.0.0 → ds_caselaw_marklogic_api_client-19.0.0}/src/caselawclient/xquery/xslt_transform.xqy +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ds-caselaw-marklogic-api-client
3
- Version: 18.0.0
3
+ Version: 19.0.0
4
4
  Summary: An API client for interacting with the underlying data in Find Caselaw.
5
5
  Home-page: https://github.com/nationalarchives/ds-caselaw-custom-api-client
6
6
  Keywords: national archives,caselaw
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "ds-caselaw-marklogic-api-client"
3
- version = "18.0.0"
3
+ version = "19.0.0"
4
4
  description = "An API client for interacting with the underlying data in Find Caselaw."
5
5
  authors = ["The National Archives"]
6
6
  homepage = "https://github.com/nationalarchives/ds-caselaw-custom-api-client"
@@ -795,7 +795,7 @@ class MarklogicApiClient:
795
795
  return content == "true"
796
796
 
797
797
  def set_published(
798
- self, judgment_uri: DocumentURIString, published: bool = False
798
+ self, judgment_uri: DocumentURIString, published: bool
799
799
  ) -> requests.Response:
800
800
  return self.set_boolean_property(judgment_uri, "published", published)
801
801
 
@@ -951,3 +951,21 @@ class MarklogicApiClient:
951
951
  )
952
952
 
953
953
  return results
954
+
955
+ def get_pending_enrichment_for_version(
956
+ self, target_version: int
957
+ ) -> list[list[Any]]:
958
+ """Retrieve documents which are not yet enriched with a given version."""
959
+ vars: query_dicts.GetPendingEnrichmentForVersionDict = {
960
+ "target_version": target_version
961
+ }
962
+ results: list[list[Any]] = json.loads(
963
+ get_single_string_from_marklogic_response(
964
+ self._send_to_eval(
965
+ vars,
966
+ "get_pending_enrichment_for_version.xqy",
967
+ )
968
+ )
969
+ )
970
+
971
+ return results
@@ -458,8 +458,13 @@ class Document:
458
458
 
459
459
  def enrich(self) -> None:
460
460
  """
461
- Announces to the ANNOUNCE SNS that the document is waiting to be enriched.
461
+ Request enrichment of the document
462
462
  """
463
+
464
+ self.api_client.set_property(
465
+ self.uri, "last_sent_to_enrichment", datetime.datetime.now().isoformat()
466
+ )
467
+
463
468
  announce_document_event(
464
469
  uri=self.uri,
465
470
  status="enrich",
@@ -0,0 +1,18 @@
1
+ xquery version "1.0-ml";
2
+
3
+ declare variable $target_version as xs:int external;
4
+
5
+ xdmp:to-json(xdmp:sql(
6
+ "SELECT process_data.uri, enrich_version_string, minutes_since_enrichment_request
7
+ FROM (
8
+ SELECT process_data.uri, enrich_version_string, enrich_major_version, DATEDIFF('minute', last_sent_to_enrichment, CURRENT_TIMESTAMP) AS minutes_since_enrichment_request
9
+ FROM documents.process_data
10
+ JOIN documents.process_property_data ON process_data.uri = process_property_data.uri
11
+ )
12
+ WHERE ((enrich_version_string IS NULL) OR (enrich_major_version < @target_version))
13
+ AND (minutes_since_enrichment_request > 43200 OR minutes_since_enrichment_request IS NULL)
14
+ ORDER BY enrich_major_version ASC NULLS FIRST",
15
+ "array",
16
+ map:new(map:entry("target_version", $target_version))
17
+ ))
18
+
@@ -78,6 +78,11 @@ class GetLastModifiedDict(MarkLogicAPIDict):
78
78
  uri: MarkLogicDocumentURIString
79
79
 
80
80
 
81
+ # get_pending_enrichment_for_version.xqy
82
+ class GetPendingEnrichmentForVersionDict(MarkLogicAPIDict):
83
+ target_version: int
84
+
85
+
81
86
  # get_properties_for_search_results.xqy
82
87
  class GetPropertiesForSearchResultsDict(MarkLogicAPIDict):
83
88
  uris: list[Any]