org: Using the property API

 
 A.11 Using the property API
 ===========================
 
 Here is a description of the functions that can be used to work with
 properties.
 
  -- Function: org-entry-properties &optional pom which
      Get all properties of the entry at point-or-marker POM.
      This includes the TODO keyword, the tags, time strings for
      deadline, scheduled, and clocking, and any additional properties
      defined in the entry.  The return value is an alist.  Keys may
      occur multiple times if the property key was used several times.
      POM may also be ‘nil’, in which case the current entry is used.  If
      WHICH is ‘nil’ or ‘all’, get all properties.  If WHICH is ‘special’
      or ‘standard’, only get that subclass.
  -- Function: org-entry-get pom property &optional inherit
      Get value of ‘PROPERTY’ for entry at point-or-marker ‘POM’.  By
      default, this only looks at properties defined locally in the
      entry.  If ‘INHERIT’ is non-‘nil’ and the entry does not have the
      property, then also check higher levels of the hierarchy.  If
      ‘INHERIT’ is the symbol ‘selective’, use inheritance if and only if
      the setting of ‘org-use-property-inheritance’ selects ‘PROPERTY’
      for inheritance.
 
  -- Function: org-entry-delete pom property
      Delete the property ‘PROPERTY’ from entry at point-or-marker POM.
 
  -- Function: org-entry-put pom property value
      Set ‘PROPERTY’ to ‘VALUE’ for entry at point-or-marker POM.
 
  -- Function: org-buffer-property-keys &optional include-specials
      Get all property keys in the current buffer.
 
  -- Function: org-insert-property-drawer
      Insert a property drawer for the current entry.  Also
 
  -- Function: org-entry-put-multivalued-property pom property &rest
           values
      Set ‘PROPERTY’ at point-or-marker ‘POM’ to ‘VALUES’.  ‘VALUES’
      should be a list of strings.  They will be concatenated, with
      spaces as separators.
 
  -- Function: org-entry-get-multivalued-property pom property
      Treat the value of the property ‘PROPERTY’ as a
      whitespace-separated list of values and return the values as a list
      of strings.
 
  -- Function: org-entry-add-to-multivalued-property pom property value
      Treat the value of the property ‘PROPERTY’ as a
      whitespace-separated list of values and make sure that ‘VALUE’ is
      in this list.
 
  -- Function: org-entry-remove-from-multivalued-property pom property
           value
      Treat the value of the property ‘PROPERTY’ as a
      whitespace-separated list of values and make sure that ‘VALUE’ is
      _not_ in this list.
 
  -- Function: org-entry-member-in-multivalued-property pom property
           value
      Treat the value of the property ‘PROPERTY’ as a
      whitespace-separated list of values and check if ‘VALUE’ is in this
      list.
 
  -- User Option: org-property-allowed-value-functions
      Hook for functions supplying allowed values for a specific
      property.  The functions must take a single argument, the name of
      the property, and return a flat list of allowed values.  If ‘:ETC’
      is one of the values, use the values as completion help, but allow
      also other values to be entered.  The functions must return ‘nil’
      if they are not responsible for this property.