Shortcuts

Create Observable Object

Problem

You want to create an Observable object and add it to the entanglement graph.

Solution

An Observable object is a physical property or attribute that can be observed by an Entity or Dataset. Observable is something that some sensor or methodology is capable of observing.

In this example, we are going to create a Observable object for maximum fire radiative power band from the MODIS Terra Thermal Anomalies & Fire Daily Global. For more information on how to add MODIS Terra Thermal Anomalies & Fire Daily Global dataset see adding Google Earth Engine data set.

All Object can have additional qualifers, though name is the only qualifier that is required. In this example, we will also be adding domain, category, and type qualifiers, along with description and alias attributes.

Setup

Start by seting up the basic geodesic workflow in python.

>>> import geodesic
>>> geodesic.set_active_project('cookbook-examples')

Creating The Object

>>> observable_object = geodesic.entanglement.Object(object_class='observable',
                     name='fire-radiative-power,
                     domain = 'earth-observation',
                     category = 'thermal-anomalies',
                     type='radiative-power',
                     description = 'Fire radiative power (FRP) within the pixel is estimated using the empirical relationship established in Kaufman et al. 1998 paper "Potential global fire monitoring from EOS-MODIS."',
                     alias = 'Fire radiative power'
                    )
>>> observable_object.save()

The domain, category, and type qualifers are used to help organize and classify the object. The description and alias attributes are optional and can be used to store additional information about the object.

Accessing the Object

To check that your object has been created and added to the entanglement graph, you can use the get_objects() method to search either by object type or by name.

Search by object class
>>> geodesic.get_objects(object_class='observable')
  [observable:earth-observation:thermal-anomalies:radiative-power:fire-radiative-power]
Search by object name
>>> geodesic.get_objects(search='fire')
 [observable:earth-observation:thermal-anomalies:radiative-power:fire-radiative-power]

We can save the search results as a list of Objects and then access the object by index which will allow us to access the object’s attributes.

Accessing the object’s attributes
>>> obj_lst = geodesic.get_objects(search='fire')
>>> fire_radiative_power_obj = obj_lst[0]
>>> dict(fire_radiative_power_obj)
../../_images/observable_object_dic.png

Docs

Developer documentation for Seer AI APIs

View Docs

Tutorials

Get in-depth tutorials for beginners and advanced developers

View Tutorials

Resources

Find development resources and get your questions answered

View Resources