W3C home > Mailing lists > Public > public-vocabs@w3.org > January 2015

Re: [Proposal]: New schema for Invoices

From: Vicki Tardif Holland <vtardif@google.com>
Date: Thu, 22 Jan 2015 16:07:24 -0500
Message-ID: <CAOr1obFjoxb8j4_+CrQnskBfPcNWUk_64WGw4ti1nsccukdaFA@mail.gmail.com>
To: Tom Marsh <tmarsh@exchange.microsoft.com>
Cc: Martin Hepp <martin.hepp@unibw.de>, W3C Web Schemas Task Force <public-vocabs@w3.org>
I'm finally getting around to this.

I think Invoice is different than Order in that I may receive an invoice
that is not really attached to an Order. For example, a utility bill is not
really attached to an order, so much as an ongoing account.

To address some of the comments, I have updated the schema at
https://github.com/vholland/schemaorg/blob/sdo-bills/data/schema.rdfa.
Specifically, I

- Added Invoice to the domain for paymentMethod to coordinate with Order.
- Removed payFromAccountId in favor of the existing paymentMethodId.
- Added a property referencesOrder to link an Invoice to one or more Orders
if applicable.

I wrote up some examples at
https://github.com/vholland/schemaorg/blob/sdo-bills/data/sdo-invoice-examples.txt
(using your furnace suggestion).

In the example, I have allowed for an Order to refer to a service. If
people object to that, I can take it out. Currently, one can only
Order/Offer something of type Product.

- Vicki

Vicki Tardif Holland | Ontologist | vtardif@google.com


On Mon, Dec 22, 2014 at 1:28 PM, Tom Marsh <tmarsh@exchange.microsoft.com>
wrote:

>
>
>
>
> *From:* Vicki Tardif Holland [mailto:vtardif@google.com]
> *Sent:* Monday, December 22, 2014 8:47 AM
> *To:* Tom Marsh
> *Cc:* Martin Hepp; W3C Web Schemas Task Force
> *Subject:* Re: [Proposal]: New schema for Invoices
>
>
>
>
>
> On Sun, Dec 21, 2014 at 1:02 PM, Tom Marsh <tmarsh@exchange.microsoft.com>
> wrote:
>
> What is the difference between Order and Invoice? With the use of
> orderStatus == OrderPaymentDue (or lack thereof for paid invoices/orders),
> it looks like I can specify the same things that I can with Invoice. How
> would a publisher know when to use one vs. the other?
>
>
>
> The Invoice type is intended for cases where there is no original purchase
> from the entity owed money. For example, credit card or utility bills do
> not have a single purchase associated with the debt. I am fine with rolling
> this type into the existing Order, but it should be simple to say "this is
> a water bill for December" or "American Express is billing me for November".
>
>
>
> After the new year, I will send along some examples.
>
>
>
> [Tom] Agreed on the use cases. I was expecting those to be modeled as
> orders for services, which is why I suggested we might want to extend the
> range of orderedItem to include Service. Assuming that we added Service to
> the range, separated out paymentStatus, and made Invoice inherit from Order
> with just the addition of the billingPeriod property, for the water bill
> example, you would end up with something like:
>
> 1) A Service (+ offer) to describe the water service, the service
> location, etc.
>
> 2) An Invoice that used the totalPaymentDue, minimumPaymentDue, accountId,
> etc. properties from Order to describe how much was due and when. The
> billingPeriod from Invoice would specify that it was December that was
> covered by the bill/invoice.
>
>
>
> As another example, let’s say that I buy a new furnace where there is a
> down payment before installation and then a final payment after
> installation. Then you would have something like:
>
> 1) A Product (+ offer) to describe the furnace
>
> 2) A Service (+ offer) to describe the installation (assuming the
> contractor separates out labor & materials)
>
> 3) Two orders (or, if you prefer, two versions of the same order): one to
> describe the down payment and one to describe the final payment. I would
> expect both orders to have almost identical properties, differing only in
> totalPaymentDue, paymentDue, and description (which would likely be the
> only way to describe that one was a deposit and the other was a final
> payment). The order(s) could equally well be Invoices, but since there is
> no billing period, the types are synonymous in this scenario.
>
>
>
>
>
> BTW, you have a typo on the label of some of the ranges (e.g., for
> totalPaymentDue), which are labeled as “Domain: “ instead of “Range: “
>
>
> Thanks for the heads up. I'll clean these up.
>
> - Vicki
>
>
>    Vicki Tardif Holland | Ontologist | vtardif@google.com
>
>
>
Received on Thursday, 22 January 2015 21:07:52 UTC

This archive was generated by hypermail 2.3.1 : Thursday, 22 January 2015 21:07:52 UTC