GeoEco.Metadata.PropertyMetadata

class GeoEco.Metadata.PropertyMetadata(name, classMetadata, typeMetadata, shortDescription=None, longDescription=None, isExposedToPythonCallers=False)

Bases: Metadata

Metadata that describes a property of a Python class.

Parameters:
  • name (str) – Name of the property. Minimum length꞉ 1.

  • classMetadata (ClassMetadata) – The ClassMetadata for the class that contains the property.

  • typeMetadata (TypeMetadata) – A TypeMetadata that describes the data type and allowed values of the property.

  • shortDescription (str, optional) – One-line description, ideally as plain text (but reStructuredText is OK). Minimum length꞉ 1.

  • longDescription (str, optional) – Detailed description, formatted as reStructuredText. Minimum length꞉ 1.

  • isExposedToPythonCallers (bool, optional) – If True, the property should be part of GeoEco’s Public API.

Returns:

New PropertyMetadata instance.

Return type:

PropertyMetadata

Properties

property Class

(ClassMetadata) ClassMetadata for the class that contains this property. Read only.

property DocString

(str) Python docstring (the value used for the __doc__ attribute). Read only. Minimum length꞉ 1. The docstring is constructed dynamically from metadata. It uses the format described in Google’s Python Style Guide.

property IsExposedToPythonCallers

(bool) If True, this property is part of GeoEco’s Public API. If False, the default, this property is considered part of GeoEco’s Internal API and not recommended for use by external callers.

property IsReadOnly

(bool) If True, this property is read only (you can get it but not set it). Read only.

property LongDescription

(str or None) Detailed description, formatted as reStructuredText. Minimum length꞉ 1. LongDescription is optional; if detailed information is not needed, you need only write a ShortDescription.

property Name

(str) Name, as provided to the constructor. Read only. Minimum length꞉ 1.

property Object

(object) Python object to which this metadata applies. Read only. The type the Python object depends on which type of metadata is involved:

Type of metadata

Type of the Object property

ModuleMetadata

ModuleType

ClassMetadata

type

PropertyMetadata

property

MethodMetadata

MethodType

property ShortDescription

(str or None) One-line description, ideally as plain text (but reStructuredText is OK). Minimum length꞉ 1. Keep the ShortDescription as concise as possible, ideally just one sentence. Do not include newline characters in the ShortDescription. Put detailed information in LongDescription (which can contain newlines).

property Type

(TypeMetadata) A TypeMetadata that describes the data type and allowed values of this property.

Methods

AppendPropertyDocutilsXMLNodes

Appends the specified property to the specified xml.dom.Node object as a child element, first running it through the docutils processor to translate reStructuredText into docutils XML.

AppendPropertyXMLNode

Appends the specified property to the specified xml.dom.Node object as a child element.

AppendXMLNodes

Appends the metadata to the specified xml.dom.Node object as child nodes.

LoadDocutilsXMLCache

Initializes Metadata's internal cache of docutils XML from the specified file.

WriteDocutilsXMLCache

Writes Metadata's internal cache of docutils XML to the specified file.