Work with record metadata¶
Use named accessors on OGCRecord to edit common discovery metadata:
import pystac
from pystac.extensions.ogc_record import OGCRecord
record = OGCRecord(id="ocean-temperature")
record.title = "Ocean temperature"
record.keywords = ["ocean", "temperature"]
record.language = {"code": "en"}
record.keywords = None
assert "keywords" not in record.properties
record.add_link(pystac.Link(
rel="related", target="https://example.org/datasets/ocean-temperature",
))
assert record.record_metadata.title == record.title
Getters return None for absent metadata, and assigning None removes the property. record.record_metadata is a live view of the same properties. Its to_dict() returns a deep copy.
Use pystac.Link to connect related resources. Metadata assignments do not create links automatically. Nested metadata dictionaries are not schema-validated by setters; see the record reference for validation and serialization behavior.