ds-caselaw-marklogic-api-client 8.0.0__tar.gz → 10.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 (55) hide show
  1. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/PKG-INFO +1 -1
  2. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/pyproject.toml +1 -1
  3. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/Client.py +8 -8
  4. ds_caselaw_marklogic_api_client-10.0.0/src/caselawclient/client_helpers/search_helpers.py +39 -0
  5. ds_caselaw_marklogic_api_client-10.0.0/src/caselawclient/responses/__init__.py +0 -0
  6. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/search_parameters.py +2 -2
  7. ds_caselaw_marklogic_api_client-10.0.0/src/caselawclient/xquery/insert_document.xqy +15 -0
  8. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery_type_dicts.py +3 -3
  9. ds_caselaw_marklogic_api_client-8.0.0/src/caselawclient/xquery/insert_judgment.xqy +0 -10
  10. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/LICENSE.md +0 -0
  11. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/README.md +0 -0
  12. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/__init__.py +0 -0
  13. {ds_caselaw_marklogic_api_client-8.0.0/src/caselawclient/models → ds_caselaw_marklogic_api_client-10.0.0/src/caselawclient/client_helpers}/__init__.py +0 -0
  14. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/content_hash.py +0 -0
  15. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/errors.py +0 -0
  16. {ds_caselaw_marklogic_api_client-8.0.0/src/caselawclient/responses → ds_caselaw_marklogic_api_client-10.0.0/src/caselawclient/models}/__init__.py +0 -0
  17. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/models/judgments.py +0 -0
  18. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/models/utilities/__init__.py +0 -0
  19. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/models/utilities/aws.py +0 -0
  20. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/py.typed +0 -0
  21. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/responses/search_response.py +0 -0
  22. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/responses/search_result.py +0 -0
  23. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/responses/xsl/search_match.xsl +0 -0
  24. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xml_tools.py +0 -0
  25. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/break_judgment_checkout.xqy +0 -0
  26. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/checkin_judgment.xqy +0 -0
  27. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/checkout_judgment.xqy +0 -0
  28. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/copy_judgment.xqy +0 -0
  29. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/delete_judgment.xqy +0 -0
  30. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_judgment.xqy +0 -0
  31. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_judgment_checkout_status.xqy +0 -0
  32. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_judgment_version.xqy +0 -0
  33. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_last_modified.xqy +0 -0
  34. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_metadata_citation.xqy +0 -0
  35. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_metadata_court.xqy +0 -0
  36. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_metadata_name.xqy +0 -0
  37. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_metadata_work_date.xqy +0 -0
  38. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_properties_for_search_results.xqy +0 -0
  39. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_property.xqy +0 -0
  40. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/judgment_exists.xqy +0 -0
  41. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/list_judgment_versions.xqy +0 -0
  42. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/set_boolean_property.xqy +0 -0
  43. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/set_metadata_citation.xqy +0 -0
  44. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/set_metadata_court.xqy +0 -0
  45. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/set_metadata_name.xqy +0 -0
  46. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/set_metadata_this_uri.xqy +0 -0
  47. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/set_metadata_work_expression_date.xqy +0 -0
  48. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/set_property.xqy +0 -0
  49. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/update_judgment.xqy +0 -0
  50. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/update_locked_judgment.xqy +0 -0
  51. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/user_has_privilege.xqy +0 -0
  52. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/user_has_role.xqy +0 -0
  53. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/validate_all_documents.xqy +0 -0
  54. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/xslt.xqy +0 -0
  55. {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.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: 8.0.0
3
+ Version: 10.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 = "8.0.0"
3
+ version = "10.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"
@@ -327,18 +327,18 @@ class MarklogicApiClient:
327
327
 
328
328
  return self._send_to_eval(vars, "update_judgment.xqy")
329
329
 
330
- def insert_judgment_xml(
331
- self, judgment_uri: str, judgment_xml: Element
330
+ def insert_document_xml(
331
+ self, document_uri: str, document_xml: Element
332
332
  ) -> requests.Response:
333
- xml = ElementTree.tostring(judgment_xml)
333
+ xml = ElementTree.tostring(document_xml)
334
334
 
335
- uri = self._format_uri_for_marklogic(judgment_uri)
336
- vars: query_dicts.InsertJudgmentDict = {
335
+ uri = self._format_uri_for_marklogic(document_uri)
336
+ vars: query_dicts.InsertDocumentDict = {
337
337
  "uri": uri,
338
- "judgment": xml.decode("utf-8"),
338
+ "document": xml.decode("utf-8"),
339
339
  }
340
340
 
341
- return self._send_to_eval(vars, "insert_judgment.xqy")
341
+ return self._send_to_eval(vars, "insert_document.xqy")
342
342
 
343
343
  def list_judgment_versions(self, judgment_uri: str) -> requests.Response:
344
344
  uri = self._format_uri_for_marklogic(judgment_uri)
@@ -437,7 +437,7 @@ class MarklogicApiClient:
437
437
  """
438
438
  Performs a search on the entire document set.
439
439
 
440
- :param q:
440
+ :param query:
441
441
  :param court:
442
442
  :param judge:
443
443
  :param party:
@@ -0,0 +1,39 @@
1
+ from caselawclient.Client import MarklogicApiClient
2
+ from caselawclient.responses.search_response import SearchResponse
3
+ from caselawclient.search_parameters import SearchParameters
4
+
5
+
6
+ def search_judgments_and_parse_response(
7
+ api_client: MarklogicApiClient, search_parameters: SearchParameters
8
+ ) -> SearchResponse:
9
+ """
10
+ Search for judgments using the given search parameters and parse the response into a SearchResponse object.
11
+
12
+ Args:
13
+ api_client (MarklogicApiClient): An instance of MarklogicApiClient used to make the search request.
14
+ search_parameters (SearchParameters): An instance of SearchParameters containing the search parameters.
15
+
16
+ Returns:
17
+ SearchResponse: The parsed search response as a SearchResponse object.
18
+ """
19
+ return SearchResponse.from_response_string(
20
+ api_client.search_judgments_and_decode_response(search_parameters)
21
+ )
22
+
23
+
24
+ def search_and_parse_response(
25
+ api_client: MarklogicApiClient, search_parameters: SearchParameters
26
+ ) -> SearchResponse:
27
+ """
28
+ Search using the given search parameters and parse the response into a SearchResponse object.
29
+
30
+ Args:
31
+ api_client (MarklogicApiClient): An instance of MarklogicApiClient used to make the search request.
32
+ search_parameters (SearchParameters): An instance of SearchParameters containing the search parameters.
33
+
34
+ Returns:
35
+ SearchResponse: The parsed search response as a SearchResponse object.
36
+ """
37
+ return SearchResponse.from_response_string(
38
+ api_client.search_and_decode_response(search_parameters)
39
+ )
@@ -8,7 +8,7 @@ RESULTS_PER_PAGE = 10
8
8
  class SearchParameters:
9
9
  """Represents search parameters for a case law search."""
10
10
 
11
- q: Optional[str] = None
11
+ query: Optional[str] = None
12
12
  court: Optional[str] = None
13
13
  judge: Optional[str] = None
14
14
  party: Optional[str] = None
@@ -33,7 +33,7 @@ class SearchParameters:
33
33
  "judge": str(self.judge or ""),
34
34
  "page": max(1, int(self.page)),
35
35
  "page-size": int(self.page_size),
36
- "q": str(self.q or ""),
36
+ "q": str(self.query or ""),
37
37
  "party": str(self.party or ""),
38
38
  "neutral_citation": str(self.neutral_citation or ""),
39
39
  "specific_keyword": str(self.specific_keyword or ""),
@@ -0,0 +1,15 @@
1
+ xquery version "1.0-ml";
2
+
3
+ import module namespace dls = "http://marklogic.com/xdmp/dls" at "/MarkLogic/dls.xqy";
4
+
5
+ declare variable $uri as xs:string external;
6
+ declare variable $document as xs:string external;
7
+
8
+ let $document_xml := xdmp:unquote($document)
9
+
10
+ let $collections :=
11
+ if (fn:contains($uri, 'press_summary'))
12
+ then ("press_summary")
13
+ else ("judgment")
14
+
15
+ return dls:document-insert-and-manage($uri, fn:true(), $document_xml, (), (), $collections)
@@ -90,9 +90,9 @@ class GetPropertyDict(MarkLogicAPIDict):
90
90
  uri: str
91
91
 
92
92
 
93
- # insert_judgment.xqy
94
- class InsertJudgmentDict(MarkLogicAPIDict):
95
- judgment: str
93
+ # insert_document.xqy
94
+ class InsertDocumentDict(MarkLogicAPIDict):
95
+ document: str
96
96
  uri: str
97
97
 
98
98
 
@@ -1,10 +0,0 @@
1
- xquery version "1.0-ml";
2
-
3
- import module namespace dls = "http://marklogic.com/xdmp/dls" at "/MarkLogic/dls.xqy";
4
-
5
- declare variable $uri as xs:string external;
6
- declare variable $judgment as xs:string external;
7
-
8
- let $judgment_xml := xdmp:unquote($judgment)
9
-
10
- return dls:document-insert-and-manage($uri, fn:true(), $judgment_xml)