- From: Eric Franzon <eric@semanticweb.com>
- Date: Wed, 11 Feb 2015 20:15:57 +0000
- To: "public-vocabs@w3.org" <public-vocabs@w3.org>
- Message-ID: <BN1PR06MB327DF001EFAA6592897E607D2250@BN1PR06MB327.namprd06.prod.outlook.com>
Hi All, I have a modeling challenge and could use an assist. * There are several products (in this case, ticket types to an event). * I want to model each ticket type as an offer. * Each of these ticket types has a unique registration link (hosted at a 3rd party registration system vendor). * Each type also has multiple prices, based on date ranges that represent concepts like "Early Bird" pricing, "on-site" (at-the-door) pricing, etc. There is no overlap of these prices. * While the price changes when people register, the URL for each registration type remains the same. * JSON-LD is the preferred syntax for this project. * This markup is being implemented for SEO purposes and for the rather than for use in an app, I would like to model each ticket type as an offer (rather than create a new "offer" for each type+price combination). In the example below, I'm missing the @type for each price, and that's because I haven't figured out how exactly to model this. "AggregateOffer" would allow me to name a high and low price, but that doesn't seem like the best match for what I'm trying to achieve here. I feel like I need a higher level type such as "hasPrices." This kind of tiered pricing with Early-Bird rates is very common in the business conference world, and I'm wondering if anyone here has come up with an elegant solution before. <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "BusinessEvent", "name": "EventCon 2015", ... "offers" : [ { "@type" : "Offer", "name" : "EventCon 2015 - Full Event", "price" : [{ "$2395.00", "validFrom": "2015-01-24T00:00", "validThrough": "2015-02-27T23:59" },{ "$2595.00", "validFrom": "2015-02-28T00:00", "validThrough": "2015-03-26T23:59" },{ "$2695.00", "validFrom": "2015-03-26T00:00", "validThrough": "2015-04-03T00:00" } ], "url": "https://www.example.com/?eventID=1611094&rTypeID=364466", "description": "EventCon 2015 Full Event registration includes all activities and runs Sunday-Friday." },{ "@type" : "Offer", "name" : "EventCon 2015 - Conference Only", "price" : [{ "$1595.00", "validFrom": "2015-01-24T00:00", "validThrough": "2015-02-27T23:59" },{ "$1795.00", "validFrom": "2015-02-28T00:00", "validThrough": "2015-03-26T23:59" },{ "$1895.00", "validFrom": "2015-03-26T00:00", "validThrough": "2015-04-03T00:00" } ], "url": "https://www.example.com/?eventID=1611094&rTypeID=359802", "description": "EventCon 2015 Conference registration includes activities Tuesday-Thursday." } Etc.... Thanks in advance! --Eric -- Eric Axel Franzon Consultant, Smart Data DATAVERSITY.net [http://semtechbizsf2013.semanticweb.com/linkedin.png]<http://linkedin.com/in/ericfranzon> http://linkedin.com/in/ericfranzon [http://semtechbizsf2013.semanticweb.com/twitter.png]<http://twitter.com/SemanticWeb> http://twitter.com/EricAxel [http://semanticweb.com/files/2013/09/G+optimized.jpg]<https://plus.google.com/108913227686834556678> https://plus.google.com/+EricFranzon
Received on Wednesday, 11 February 2015 20:16:40 UTC