Re: tracking issues about Actions?

On 01/27/2014 05:56 PM, Sam Goto wrote:
>
>
>
> On Sat, Jan 25, 2014 at 4:25 PM, ☮ elf Pavlik ☮
> <perpetual-tripper@wwelves.org <mailto:perpetual-tripper@wwelves.org>>
> wrote:
>
>     Howdy!
>
>     I start working again on projects where I would like to use Action
>     subtree. Maybe also try to experiment with them integrated with
>     Hydra API http://www.hydra-cg.com/spec/__latest/schema.org/
>     <http://www.hydra-cg.com/spec/latest/schema.org/>
>
>
> Neat. May I ask what the use case is?
Sure! I play with developing various open source components (currently 
mostly prototyping some in javascript) for building distributed 
environments of apps (human interfaces) and daemons (local and remote 
services) supporting real time geo-aware collaboration scenarios. Web 
page from one very early test deployment: http://dspace.elevate.at/

In conceptual model People can interact with various *POIs* (Points of 
Interest). Types of POIs currently include *Person*, *Place*, *Vehicle* 
and possibly we can add other ones making sense here like 
*IndividualProduct*. I also use concept of *Party*, somehow similar to 
online chartrooms. People using compatible, #unhosted style apps, can 
connect with those apps to multiple Parties on any number of remote 
origins - *Portals*. Everyone also controls independent, 
self-hosted/friend-hosted *Pod* - Personal Data Space, #IndyWeb / 
#PersonalClouds style to **stay in full control over one's own data**. 
For example I can publish my own position updates to such personal Pod 
and others participating in the same Parties can subsribe to real time 
updates directly to my Pod, which makes Portals responsible only for 
'introducing' participants and they can even shut down after making 
introduction between People. I plan to approach in similar way a feed of 
my *Actions* (ActivityStreams).

For very precise example we can use: PhotographAction
"elf Pavlik took photo of Alice, in café erde, using his PDA"

{
   "@id": 
"https://wwelves.org/perpetual-tripper/actions/aade1722-f53e-400b-b7c0-70f7a2550ad5"
   "@context": "http://schema.org",
   "@type": "PhotographAction",
   "endTime": {
     "@value": "2014-01-27T19:31:22"
     "@type": "http://www.w3.org/2001/XMLSchema#dateTime"
   },
   "agent": {
     "@id": "https://wwelves.org/perpetual-tripper",
     "@type": "Person",
     "name": "☮ elf Pavlik ☮"
   },
   "object": {
     "@id": "https://example.net/people/alice",
     "@type": "Person",
     "name": "Alice"
   },
   "location": {
     "@id": "http://cafeerde.com/",
     "@type": "FoodEstablishment",
     "name": "café erde"
     "geo": {
       "latitude": 47.069602,
       "longitude": 15.435891
     }
   },
   "instrument": {
     "@id": "https://wwelves.org/perpetual-tripper/stuff/elfdroid",
     "@type": "IndividualProduct",
     "name": "elfdroid"
   },
   "result": {
     "@id": 
"https://wwelves.org/perpetual-tripper/photos/258378dc-3eef-42a6-8e3c-f48b42b39d6f"
     "@type": "Photograph"
   }
}

It comes from interaction:

0. Earlier I used *CheckInAction* which I sent to my personal Pod so it 
shows up in my activity stream. I also sent this *CheckInAction* to 
small Portal hosted by http://cafe-erde.com/ which enables others who 
don't follow my activity stream to still discover my presence. café erde 
Portal sent me back list of People who have earlier annonced themselves 
present in this Place, including Alice. In this case I already follow 
Alice's  activity stream on her Pod, so our devices would know about 
each other present even without café erde Portal, just by using our 
existing Friend2Friend relation :)
1. I open an app
2. Select my current location: café erde
3. Select from list of people present here: Alice
4. Select from actions available for Alice: 'Take Photo'
5. Click!
6. My PDA posts image data to my personal Pod, which returns permanent URI
7. I use this photo URI on my #IndyWeb domain for "result" object in my 
PhotographAction example: "@id": 
"https://wwelves.org/perpetual-tripper/photo/258378dc-3eef-42a6-8e3c-f48b42b39d6f" 

8. I also store my PhotographAction on my Pod, which gives me 
independent permanent URI for this Action: "@id": 
"https://wwelves.org/perpetual-tripper/actions/aade1722-f53e-400b-b7c0-70f7a2550ad5"

now i can do some more online socializing
9. I have option to publish it to my public activity stream, or to some 
restricted feeds, I could create dedicated feed even just for my stay at 
this place and share it only with other people present here.
10. I also can send this action to café erde Portal in case it didn't 
start following my activity stream after I checked in...
10. I can send this action as well to any number of restaurant ranking 
directory services which provide API accepting: PhotographAction.
11. I could reference this photograph taken in my ReviewAction submitted 
to (syndicated with) !any number of chosen by me services!.

{
   "@id": 
"https://wwelves.org/perpetual-tripper/actions/8d244fc0-b87f-4006-8f7a-d476959f75c8",
   "@type": "ReviewAction",
   "endDate": ...,
   "location" ...,
   "resultReview": {
     "@id": 
"https://wwelves.org/perpetual-tripper/reviews/0e4f8dd1-cb0a-436a-95a7-9c2451c0c559"
     "@type": "Review"
   },
  "result": {
     "@id": 
"https://wwelves.org/perpetual-tripper/photos/258378dc-3eef-42a6-8e3c-f48b42b39d6f"
     "@type": "Photograph"
   }
}

 From interaction perspective it should work as easy as have my list of 
restaurant directory services. And after taking photo in Place matching 
the scope of given directory, app gives me list of checkboxes asking 
which services i want to *syndicate* my reviews with.

Since I can only control apps running on my device and daemons running 
on my pod. I need to use very generic APIs for 3rd party services which 
I would like apps and daemons I use to interact with. When all such 
services can 'understand' common *real world* Actions, it seems much 
more approachable to design for such environment where no one has full 
control over all the interacting components...

In general we aim that everyone can accomplish same results in many 
different way. Depending on one's own preference and interoperability of 
components involved in given interaction.

As side note I currently combine RESTful HTTP with The Bayeux Protocol 
for HTTP based pub/sub (real time). At the same time keeping it generic 
enough so one can plug in options like XMPP pub/sub or for some cases 
use Webfinger etc.

BTW how can I link from Photograph back to Action it came as *resultOf*? 
Same applies to any *Thing* which comes as *result* of an Action.

>
> You might want to take a look at a few demos/prototypes I've been
> building with examples, which should give you a concrete idea of where
> things are going.
>
> http://code.sgo.to/crawler/yaap.html#url=http://code.sgo.to
In Chromium Version 30.0.1599.101 (227552) in javasctipt console:
Uncaught TypeError: Cannot read property 'length' of undefined yaap.js:266

Firefox 24.0 shows me JSON-LD with links but when I click one I get
SyntaxError: JSON.parse: unexpected character
var parent = JSON.parse(e.target.parentElement.innerText);

>
>
>
>     I wonder if we should try to bounce Actions specific feedback back
>     and forth over this mailing list or use some issue tracker to keep
>     track on every issue separately?
>
>
> Lets use this mailing list for the moment, until it gets too verbose/noisy.
>
>
>     Some of them I already have mentioned but possibly my email have
>     drowned in archives of this list ;)
>     http://lists.w3.org/Archives/__Public/public-vocabs/2013Nov/__0200.html
>     <http://lists.w3.org/Archives/Public/public-vocabs/2013Nov/0200.html>
>
>     Once I get back on playing with Actions I expect gathering more
>     feedback and would like to pipe it into some workflow where we can
>     track it and resolve in some reasonable time. If I could choose way
>     for tracking issues, as for today I would go with github issue
>     tracker :)
>
>     Other suggestions?
>
>
> The default public-vocabs process for filling bugs is fine for the
> moment. You can reach out to me personally too at goto@google.com
> <mailto:goto@google.com>, in case you feel more comfortable talking to a
> smaller audience too :)
Ok, let's try that!
Looking at issues which I raised in
http://lists.w3.org/Archives/Public/public-vocabs/2013Nov/0200.html they 
still look not addressed :(

cheers!

Received on Monday, 27 January 2014 20:47:41 UTC