Files @ a4a10fc7b0ac
Branch filter:

Location: NPO-Accounting/npo-ledger-cli/accounts/config/config-tags.ledger

bkuhn
Initial documentation of the Program: tag.
Includes introduction of the section about making use of these tags.
; -*- ledger -*-
; -*- coding: utf-8 -*-
;
; config-tags.ledger: The Ledger CLI tag declarations for NPO use-case.

; Copyright © 2013, Bradley M. Kuhn.
;
; The copyright holders wish that this document could be placed into the
; public domain.  However, should such a public domain dedication not be
; possible, the copyright holders grant a waiver and/or license under the
; terms of CC0-1.0, as published by Creative Commons, Inc.  A copy of CC0-1.0
; can be found in the same repository as this README.md file under the
; filename CC0-1.0.txt.  If this document has been separated from the
; repository, a [copy of CC0-1.0 can be found on Creative Commons' website at
; http://creativecommons.org/publicdomain/zero/1.0/legalcode

; ################################# TAGS ################################

; The Statement, Receipt, and Invoice tags' values should always a be a
; relative path names.  Note that we "check", but do not "assert" that the
; file name match a standard Unix-like path syntax, without spaces in the
; file name.

tag Statement
    assert value =~ /[^\/].+/
    check value =~ /[^\/][^ ]+(\/[^ ])+/

tag Receipt
    assert value =~ /[^\/].+/
    check value =~ /[^\/][^ ]+(\/[^ ])+/

tag Invoice
    assert value =~ /[^\/].+/
    check value =~ /[^\/][^ ]+(\/[^ ])+/

; IncomeType refers to the types of income a non-profit can receive.  In this
; example, it's for the categorizations on the USA Form 990.  This could be
; changed to accomodate other jurisdictions around the world.

tag IncomeType
    assert value =~ /^(Donations|RBI|UBTI)$/

; Program tag must match the general format of a ledger account as an
; assertion, but we at least check known names of programs, so that warnings
; are produced if a new program never seen before is encountered.

tag Program
    assert value =~ /[ A-z0-9\-]+(:[ A-z0-9\-]+)*/
    check  value =~ /^(Main Org:(Overhead|Direct Fundraising))$/