Skip to content

Commit 2866760

Browse files
authored
Merge pull request #150 from johntruckenbrodt/bugfix/xmlschema_xpath
updated xpath queries
2 parents 7386bd6 + ecd87d0 commit 2866760

File tree

2 files changed

+22
-22
lines changed

2 files changed

+22
-22
lines changed

tests/test_10_esa_safe.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ def test_parse_tag() -> None:
127127
"azimuthSteeringRate",
128128
}
129129

130-
res = esa_safe.parse_tag(ANNOTATION_PATH, ".//productInformation")
130+
res = esa_safe.parse_tag(ANNOTATION_PATH, "//productInformation")
131131

132132
assert isinstance(res, dict)
133133
assert set(res) == expected
@@ -143,19 +143,19 @@ def test_parse_tag_as_list() -> None:
143143
"azimuthAnxTime",
144144
}
145145

146-
res = esa_safe.parse_tag_as_list(ANNOTATION_PATH, ".//burst")
146+
res = esa_safe.parse_tag_as_list(ANNOTATION_PATH, "//burst")
147147

148148
assert isinstance(res, list)
149149
assert set(res[0]) == expected
150150

151151
# XPath to a single element
152-
res = esa_safe.parse_tag_as_list(ANNOTATION_PATH, ".//burst[1]")
152+
res = esa_safe.parse_tag_as_list(ANNOTATION_PATH, "//burst[1]")
153153

154154
assert isinstance(res, list)
155155
assert set(res[0]) == expected
156156

157157
# XPath to a non existent element
158-
res = esa_safe.parse_tag_as_list(ANNOTATION_PATH, ".//dummy")
158+
res = esa_safe.parse_tag_as_list(ANNOTATION_PATH, "//dummy")
159159

160160
assert isinstance(res, list)
161161
assert res == []

xarray_sentinel/sentinel1.py

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -76,10 +76,10 @@ def open_calibration_dataset(
7676
calibration: esa_safe.PathType, attrs: dict[str, Any] = {}
7777
) -> xr.Dataset:
7878
calibration_vectors = esa_safe.parse_tag_as_list(
79-
calibration, ".//calibrationVector", "calibration"
79+
calibration, "//calibrationVector", "calibration"
8080
)
8181
cal_attrs = esa_safe.parse_tag(
82-
calibration, ".//calibrationInformation", "calibration"
82+
calibration, "//calibrationInformation", "calibration"
8383
)
8484
attrs["absoluteCalibrationConstant"] = cal_attrs["absoluteCalibrationConstant"]
8585
azimuth_time_list = []
@@ -126,7 +126,7 @@ def open_reference_replica_dataset(
126126
annotation_path: esa_safe.PathType, attrs: dict[str, Any] = {}
127127
) -> xr.Dataset:
128128
reference_replica = esa_safe.parse_tag_as_list(
129-
annotation_path, ".//replicaInformationList/replicaInformation/referenceReplica"
129+
annotation_path, "//replicaInformationList/replicaInformation/referenceReplica"
130130
)[0]
131131
attrs.update(
132132
{
@@ -162,7 +162,7 @@ def open_antenna_pattern(
162162
annotation_path: esa_safe.PathType, attrs: dict[str, Any] = {}
163163
) -> xr.Dataset:
164164
antenna_pattern_list = esa_safe.parse_tag_as_list(
165-
annotation_path, ".//antennaPattern/antennaPatternList/antennaPattern"
165+
annotation_path, "//antennaPattern/antennaPatternList/antennaPattern"
166166
)
167167

168168
slant_range_time_list = []
@@ -232,7 +232,7 @@ def open_replica_dataset(
232232
) -> xr.Dataset:
233233
replicaList = esa_safe.parse_tag_as_list(
234234
annotation_path,
235-
".//replicaInformationList/replicaInformation/replicaList/replica",
235+
"//replicaInformationList/replicaInformation/replicaList/replica",
236236
)
237237
azimuth_time_list = []
238238
cross_correlation_bandwidth_list = []
@@ -308,7 +308,7 @@ def open_replica_dataset(
308308
def open_noise_range_dataset(
309309
noise: esa_safe.PathType, attrs: dict[str, Any] = {}
310310
) -> xr.Dataset:
311-
noise_vectors = esa_safe.parse_tag_as_list(noise, ".//noiseRangeVector", "noise")
311+
noise_vectors = esa_safe.parse_tag_as_list(noise, "//noiseRangeVector", "noise")
312312

313313
azimuth_time_list = []
314314
pixel_list = []
@@ -341,7 +341,7 @@ def open_noise_range_dataset(
341341
def open_noise_azimuth_dataset(
342342
noise: esa_safe.PathType, attrs: dict[str, Any] = {}
343343
) -> xr.Dataset:
344-
noise_vectors = esa_safe.parse_tag_as_list(noise, ".//noiseAzimuthVector", "noise")
344+
noise_vectors = esa_safe.parse_tag_as_list(noise, "//noiseAzimuthVector", "noise")
345345

346346
first_range_sample = []
347347
line_list = []
@@ -369,7 +369,7 @@ def open_coordinate_conversion_dataset(
369369
annotation_path: esa_safe.PathType, attrs: dict[str, Any] = {}
370370
) -> xr.Dataset:
371371
coordinate_conversion = esa_safe.parse_tag_as_list(
372-
annotation_path, ".//coordinateConversionList/coordinateConversion"
372+
annotation_path, "//coordinateConversionList/coordinateConversion"
373373
)
374374
if len(coordinate_conversion) == 0:
375375
raise TypeError("coordinateConversion tag not present in annotations")
@@ -415,7 +415,7 @@ def open_gcp_dataset(
415415
annotation: esa_safe.PathOrFileType, attrs: dict[str, Any] = {}
416416
) -> xr.Dataset:
417417
geolocation_grid_points = esa_safe.parse_tag_as_list(
418-
annotation, ".//geolocationGridPoint"
418+
annotation, "//geolocationGridPoint"
419419
)
420420

421421
azimuth_time = []
@@ -521,7 +521,7 @@ def make_geospatial_attributes(
521521
def open_attitude_dataset(
522522
annotation: esa_safe.PathOrFileType, attrs: dict[str, Any] = {}
523523
) -> xr.Dataset:
524-
attitudes = esa_safe.parse_tag_as_list(annotation, ".//attitude")
524+
attitudes = esa_safe.parse_tag_as_list(annotation, "//attitude")
525525

526526
variables = ["q0", "q1", "q2", "q3", "wx", "wy", "wz", "pitch", "roll", "yaw"]
527527
azimuth_time: list[Any] = []
@@ -567,7 +567,7 @@ def make_orbit(
567567
def open_orbit_dataset(
568568
annotation: esa_safe.PathOrFileType, attrs: dict[str, Any] = {}
569569
) -> xr.Dataset:
570-
orbits = esa_safe.parse_tag_as_list(annotation, ".//orbit")
570+
orbits = esa_safe.parse_tag_as_list(annotation, "//orbit")
571571

572572
attrs = attrs.copy()
573573
reference_system = orbits[0]["frame"]
@@ -597,7 +597,7 @@ def open_orbit_dataset(
597597
def open_dc_estimate_dataset(
598598
annotation: esa_safe.PathOrFileType, attrs: dict[str, Any] = {}
599599
) -> xr.Dataset:
600-
dc_estimates = esa_safe.parse_tag_as_list(annotation, ".//dcEstimate")
600+
dc_estimates = esa_safe.parse_tag_as_list(annotation, "//dcEstimate")
601601

602602
azimuth_time = []
603603
t0 = []
@@ -659,7 +659,7 @@ def open_dc_estimate_dataset(
659659
def open_azimuth_fm_rate_dataset(
660660
annotation: esa_safe.PathOrFileType, attrs: dict[str, Any] = {}
661661
) -> xr.Dataset:
662-
azimuth_fm_rates = esa_safe.parse_tag_as_list(annotation, ".//azimuthFmRate")
662+
azimuth_fm_rates = esa_safe.parse_tag_as_list(annotation, "//azimuthFmRate")
663663

664664
azimuth_time = []
665665
t0 = []
@@ -780,9 +780,9 @@ def open_pol_dataset(
780780
attrs: dict[str, Any] = {},
781781
gcp: xr.Dataset | None = None,
782782
) -> xr.Dataset:
783-
product_information = esa_safe.parse_tag(annotation, ".//productInformation")
784-
image_information = esa_safe.parse_tag(annotation, ".//imageInformation")
785-
swath_timing = esa_safe.parse_tag(annotation, ".//swathTiming")
783+
product_information = esa_safe.parse_tag(annotation, "//productInformation")
784+
image_information = esa_safe.parse_tag(annotation, "//imageInformation")
785+
swath_timing = esa_safe.parse_tag(annotation, "//swathTiming")
786786

787787
number_of_samples = image_information["numberOfSamples"]
788788
range_sampling_rate = product_information["rangeSamplingRate"]
@@ -1245,8 +1245,8 @@ def make_sentinel1_stac_item(
12451245
) -> dict[str, Any]:
12461246
manifest = ElementTree.parse(manifest_path).getroot()
12471247

1248-
product_information = esa_safe.parse_tag(annotation, ".//productInformation")
1249-
image_information = esa_safe.parse_tag(annotation, ".//imageInformation")
1248+
product_information = esa_safe.parse_tag(annotation, "//productInformation")
1249+
image_information = esa_safe.parse_tag(annotation, "//imageInformation")
12501250

12511251
coordinates = [
12521252
[float(v) for v in token.split(",")]

0 commit comments

Comments
 (0)