- From: ☮ elf Pavlik ☮ <perpetual-tripper@wwelves.org>
- Date: Wed, 02 Jul 2014 15:48:42 +0200
- To: public-vocabs@w3.org
- CC: Martin Hepp <martin.hepp@ebusiness-unibw.org>
I struggle to understand how (if) Actions can work together with
Offer/Demand. In particular TradeAction/TransferAction seem to have some
potential to work together with Offer/Demand...
Looking at: Thing > Action > TransferAction > GiveAction
http://schema.org/GiveAction
"The act of transferring ownership of an object to a destination.
Reciprocal of TakeAction."
For example: https://gist.github.com/elf-pavlik/848d332d2259ffe9199e
*Jane Doe gave a Fairphone to elf Pavlik*
{
"@id": "https://example.net/jane/actions/12345",
"@type": "GiveAction",
"recipient": {
"@id": "https://wwelves.org/perpetual-tripper",
"@type": "Person",
"name": "elf Pavlik"
},
"agent": {
"@id": "https://example.net/jane",
"@type": "Person",
"name": "Jane Doe"
},
"object": {
"@id": "https://example.net/jane/assets/231231",
"@type": "IndividualProduct",
"model": {
"@id": "http://fairphone.com/v1",
"@type": "ProductModel",
"name": "Fairphone V1"
}
}
To arrive at to this point in real world scenario, I would need to
publish a Demand and/or Jane would need to publish an Offer. At the same
time looking at Actions, using *potentialAction* seems an attractive
option when publishing list of assets:
https://gist.github.com/elf-pavlik/f26562c3c1719bf06273
{
"@id": "https://example.net/jane/assets/231231",
"@type": "IndividualProduct",
"model": {
"@id": "http://fairphone.com/v1",
"@type": "ProductModel",
"name": "Fairphone V1"
},
"potentialAction": [
{
"@type": "GiveAction",
"object": "https://example.net/jane/assets/231231"
},
{
"@type": "BorrowAction",
"object": "https://example.net/jane/assets/231231"
},swee
{
"@type": "UseAction",
"object": "https://example.net/jane/assets/231231"
}
]
}
I wonder how it could fit with Offer/Demand
{
"@id": "https://example.net/jane/listings/5939304",
"@type": "Offer",
"seller": "https://example.net/jane",
"itemOffered": {
"@id": "https://example.net/jane/assets/231231",
"@type": "IndividualProduct",
"model": {
"@id": "http://fairphone.com/v1",
"@type": "ProductModel",
"name": "Fairphone V1"
},
}
}
schema:TradeAction already enables schema:price (not sure why not
schema:priceSpecification ?) which in a way suggests this possibility:
{
"@type": ["GiveAction", "Offer"],
"object": {
"@id": "https://example.net/jane/assets/231231",
"@type" "IndividualProduct"
},
"actionStatus": {"@type": "PotentialActionStatus"},
"agent": {
"@type": "Person",
"@id": "https://example.net/jane",
"name": "Jane Doe"
}
}
I like schema:object here which also fits nicer then schema:itemOffered
when used in schema:Demand
Similar schema:agent provides generic alternative to schema:seller
(which I find somehow confusing when used in Demand!)
{
"@type": ["ReceiveAction", "Demand"],
"object": {
"@id": "https://example.net/jane/assets/231231",
"@type" "IndividualProduct"
},
"actionStatus": {"@type": "PotentialActionStatus"},
"agent": {
"@type": "Person",
"@id": "https://wwelves.org/perpetual-tripper",
"name": "elf Pavlik"
}
Maybe also Offer/Demand could in a way 'mint' Trade/Transfer Actions...
I try lately to follow developments in Hydra CG[1], now together with
Linked Data Fragments[2]. I see there strong emphasis on Hypermedia
Controls[3] and building around Actions looks like a nice fit[4]
Any thoughts?
:)
[1] http://www.hydra-cg.com/
[2] http://linkeddatafragments.org/
[3] https://sites.google.com/site/restframework/hypermedia-controls
[4] http://www.hydra-cg.com/spec/latest/schema.org/
Received on Wednesday, 2 July 2014 13:51:06 UTC