Market orders and proposals have an "expiration" field, which means the data will remain in witness nodes' memory before expiration, which consumes resources. I think it's reasonable to charge a fee if the expiration is too long. For example, with current fee schedule the maximum expiration period is one month, if the owner wants it longer, she need to pay 50% more for each extra month or so in advance.