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.
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/PKG-INFO +1 -1
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/pyproject.toml +1 -1
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/Client.py +8 -8
- ds_caselaw_marklogic_api_client-10.0.0/src/caselawclient/client_helpers/search_helpers.py +39 -0
- ds_caselaw_marklogic_api_client-10.0.0/src/caselawclient/responses/__init__.py +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/search_parameters.py +2 -2
- ds_caselaw_marklogic_api_client-10.0.0/src/caselawclient/xquery/insert_document.xqy +15 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery_type_dicts.py +3 -3
- ds_caselaw_marklogic_api_client-8.0.0/src/caselawclient/xquery/insert_judgment.xqy +0 -10
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/LICENSE.md +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/README.md +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/__init__.py +0 -0
- {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
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/content_hash.py +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/errors.py +0 -0
- {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
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/models/judgments.py +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/models/utilities/__init__.py +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/models/utilities/aws.py +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/py.typed +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/responses/search_response.py +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/responses/search_result.py +0 -0
- {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
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xml_tools.py +0 -0
- {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
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/checkin_judgment.xqy +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/checkout_judgment.xqy +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/copy_judgment.xqy +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/delete_judgment.xqy +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_judgment.xqy +0 -0
- {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
- {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
- {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
- {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
- {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
- {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
- {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
- {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
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/get_property.xqy +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/judgment_exists.xqy +0 -0
- {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
- {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
- {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
- {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
- {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
- {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
- {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
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/set_property.xqy +0 -0
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/update_judgment.xqy +0 -0
- {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
- {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
- {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
- {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
- {ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/src/caselawclient/xquery/xslt.xqy +0 -0
- {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:
|
|
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
|
{ds_caselaw_marklogic_api_client-8.0.0 → ds_caselaw_marklogic_api_client-10.0.0}/pyproject.toml
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "ds-caselaw-marklogic-api-client"
|
|
3
|
-
version = "
|
|
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
|
|
331
|
-
self,
|
|
330
|
+
def insert_document_xml(
|
|
331
|
+
self, document_uri: str, document_xml: Element
|
|
332
332
|
) -> requests.Response:
|
|
333
|
-
xml = ElementTree.tostring(
|
|
333
|
+
xml = ElementTree.tostring(document_xml)
|
|
334
334
|
|
|
335
|
-
uri = self._format_uri_for_marklogic(
|
|
336
|
-
vars: query_dicts.
|
|
335
|
+
uri = self._format_uri_for_marklogic(document_uri)
|
|
336
|
+
vars: query_dicts.InsertDocumentDict = {
|
|
337
337
|
"uri": uri,
|
|
338
|
-
"
|
|
338
|
+
"document": xml.decode("utf-8"),
|
|
339
339
|
}
|
|
340
340
|
|
|
341
|
-
return self._send_to_eval(vars, "
|
|
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
|
|
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
|
+
)
|
|
File without changes
|
|
@@ -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
|
-
|
|
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.
|
|
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
|
-
#
|
|
94
|
-
class
|
|
95
|
-
|
|
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)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|