VOEvent IVOA Interop May 2006 Roy Williams NVO.Caltech ..... and many others ..... 1604 image of Cas A Multiple Event Streams Event Authors Swift (Barthelmy) HETE2 (Butler) Robotic Telescopes Integral (Djorgovski will consult) Raptor (Vestrand/White) SDSS supernova search (Becker/Masao) KAIT (Fillipenko/Li) KAIT (Fillipenko/Li) Pairitel (Bloom) Microlensing Planet Search (Gaudi) Palomar P60 (Kulkarni) Essence (Smith, Wood-Vesey) Robonet (Steele) Palomar-Quest (Djorgovski) AAVSO (Price) Pairitel (Bloom) Raptor (Vestrand/White) Panstars (Kaiser, Price) Gemini (8 meter telescopes) AAVSO (Price) ROTSE (Akerlof) XTE satellite (Remillard) Prompt (Reichart) Glast (E. Bloom) CTIO Smarts (Cobb, Baylan) Allen Telescope Array (Bower) VOEvent Structure Who Publisher, Contact, etc Subscribers will use AuthorIVORN to select WhereWhen (== STC) Can be simple eg RA, Dec, eg UTC Can be sophisticated, eg multiple frames, near objects, etc What Hierarchy of named parameters Units, Semantic type (UCD) References, Descriptions How How was the evidence gathered: camera, telescope, etc Why probability list of interpretation Citation supernova, comet, asteroid, ..... Link to other VOEvent: Followup, Supercede, Retraction, Link to support data Reference Supporting material, eg lightcurve, image <Who> is the scientifically-responsible Author? <Author> <title>Rapid Telescope for Optical Response</title> <shortName>Raptor</shortName> <logoURL>http://www.raptor.lanl.gov/images/RAPTOR_patchLarge.jpg</logoURL> <contactName>Robert White</contactName> <contactEmail>rwhite@lanl.gov</contactEmail> <contactPhone>+1 800 555 1212</contactPhone> </Author> or <AuthorIVORN>ivo://raptor.lanl/organization</AuthorIVORN> • An IVORN for an organization • Easier for Subscribers to find Author • Shorter packet <What> was actually observed Parser can cast this Group to class phot_pt A time sequence of Rmagnitudes <What> <Group type="phot_pt" > <Param name="mag1" ucd="phot.mag;em.opt.R" value="13.2" unit="mag" /> <Param name="epoch1" ucd="time.epoch" value="245523.12345" unit="day"/> </Group> <Group name=”gamma_flux"> <Param name="counts" value="73288" ucd="phot.count"/> <Param name="peak" value="1310" ucd="arith.rate;phot.count"/> </Group> </What> <Why> do we think this happened? Importance of the event observation should I interrupt my telescope schedule? Publisher thinks (prob=0.98) this is a SN1a with given name <Why importance="13.0" expires="1574-05-11T12:00:00"> <Inference probability=”0.98"> <Name>Tycho's Stella Nova</Name> <Concept>SN Ia</Concept> </Inference> <Inference probability=”0.2" relation="associated” > <Name>3C 10</Name> <Concept>supernova remnant</Concept> </Inference> </Why> Possibility this is associated with object 3C10 <WhereWhen> Standard STC coordinate frame Space-Time Coordinates <WhereWhen> <ObsDataLocation xmlns="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" > <ObservatoryLocation id="KPNO" xlink:type="simple" xlink:href="ivo://STClib/Observatories#KPNO"/> <ObservationLocation> <AstroCoordSystem id="UTC-FK5-GEO" xlink:type="simple" xlink:href="ivo://STClib/CoordSys#UTC-FK5-GEO/> <AstroCoords coord_system_id="UTC-FK5-GEO"> <Time unit="s"> <TimeInstant> <ISOTime>2005-04-15T23:59:59</ISOTime> </TimeInstant> <Error>1.0</Error> </Time> <Position2D unit="deg"> <Value2> <C1>148.88821</C1> <C2>69.06529</C2> </Value2> <Error2Radius>0.03</Error2Radius> </Position2D> </AstroCoords </ObservationLocation> </ObsDataLocation> </WhereWhen> VOEventNet and eStar OGLE III GCN NASA/GSFC Poland Liverpool Telescope La Palma SDSS SNe U Washington/Stanford Faulkes Hawaii/Australia Exeter Palomar-Quest Caltech Caltech LANL Microlensing Survey UKIRT Exeter Hawaii NOAO Palomar P60 Caltech Raptor Pairitel LANL Berkeley CTIO/KPNO surveys Author Publisher Repository Relay Subscriber VOEvent transport model Author Publisher immediate push Subscriber Repository Aggegator • digest (RSS) • resolve • query client Multiple authors, publishers, subscribers Structured, semantically rich, for machine understanding XML representation Standard transports (web service, email, etc) Standard global identifiers Filter VO Identifiers Registry finds the VOEvent repository Repository finds the specific event Local ID • Not known to registry • Created by Publisher • Known to event repository • Publisher IVORN • Resolved by registry to find repositories ivo://pq.nvo.caltech/VOEPublisher delimiter # delimiter Event IVORN (whole thing) 20050523c Registry Usage for VOEvent Client Author (science) Subscribers publish event 1. Resolve identifier ivo://publisherID#localID Publisher (identifier, signature) 4: Receive event metadata VO Global Registry 2. Which repositories have events from this publisher? store event Repository 3: Send localID Citation An event can cite another <Citations><EventID cite=”followup"> ivo://gcn.nasa/VOEvent#hete_389241a_20050808_230931 </EventID> </Citations> Observations can be federated by mutual citation observation followup followup followup event collection Control Author A sends event E to Subscriber S Subscriber software decides on action.... S can followup everything from A S can followup if importance > threshold S can followup if prob(Supernova) > threshhold (importance is part of every event) <Why> section has hypothesis, concept, association S can examine the parameters, images, lightcurves <What> section is observations Transport Querying and web pages as usual client connects to server RSS polling is like this Subscription One of Client keeps open socket to server Server keeps open connection to client (GCN model) Subscriber protocol Jabber/XMPP -- popular IM protocol Home made -- “TCP Vanilla” Java Messaging One-way SOAP (port 80) VOEventNet: a Rapid-Response Telescope Grid Palomar-Quest PQ next-day pipelines baseline sky Raptor Palomar 60” catalog PQ Event Factory Event Synthesis Engine VOEvent database VOEventNet Pairitel known Variables known asteroids 2MASS SDSS remote archives eStar VOEvent Structure Event has ivo:// identifier (the IVORN) Citation connects events Citation Keep it light -- no data in VOEvent-- use links Discovery, Followup, Supercede, Join, Predict Subscription / query / digest (RSS) get only the events you want based on complex criteria based on publisher crossmatch event libraries Transport fabric for human: email, cellphone, IM for robot: IM, web-service, auto-email, socket VOEvent Schema 1.1 Last major schema change? End of the Beginning of VOEvent..... Ivorn for IVOA identifiers ivorn International Virtual Observatory Resource Name Can be recognized by ivo:// at start in place of id (collides with XML usage of this attribute) MIME type VOEvents should be application/xml+voevent Roles Author Publisher XML Responsibility Creates unique IVORN Subscription interface Repository Scientific Responsibility Metadata same as IVOA Organization title, shortName, description, logo, contact (Name, Email, Phone), Contributor Resolves IVORNs Query interface (SEAP) Relays, Filters, and Brokers Combinations of basic roles <Who> now means Author The <Who> element how has AuthorIVORN in place of PublisherID Choice of explicit or implicit metadata VOEvent and Registry Author may be registered may be cited by IVORN in VOEvent packet Publisher is registered Saves typing Easier for subscriber to pick known authors equivalence of <Who> with IVOA Organization List of authors, How to subscribe Repository is registered Which publishers are kept IVORN resolution. Query interface Queries for VO Registry Tell me about this Author Tell me about this Publisher Tell me about this Repository Which Publisher has this Author? Which Repository has this Publisher? VOEvent identifier (IVORN) 1. Given an event ivorn: ivo://nvo.caltech/voe-publisher#666 2. parse into: publisher ivorn: and local key: ivo://nvo.caltech/voe-publisher 666 3. Ask VO registry: Which repository has this publisher? 4. Use query interface on repository: Tell me about event 666 STC adopted (No more mealy-mouthed nonsense about RA and Dec elements) pseudocode Let x = WhereWhen/ObsDataLocation/ ObservationLocation/AstroCoords If x[@coord_system_id=‘FK5-UTC-TOPO’] then Let Time = x/Time/TimeInstant/ISOTime Let RA = x/Position2D/Value2/C1 Let Dec = x/Position2D/Value2/C2 <WhereWhen> <ObsDataLocation xmlns="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" xmlns:xlink="http://www.w3.org/1999/xlink"> <ObservatoryLocation id=”KPNO" xlink:type="simple" xlink:href="ivo://STClib/Observatories#KPNO"/> <ObservationLocation> <AstroCoordSystem id="FK5-UTC-TOPO"/> <AstroCoords coord_system_id="FK5-UTC-TOPO"> <Time unit="s"> <TimeInstant> <ISOTime>2005-04-15T23:59:59</ISOTime> </TimeInstant> <Error>1.0</Error> </Time> <Position2D unit="deg"> <Value2> <C1>148.88821</C1> <C2>69.06529</C2> </Value2> <Error2Radius>0.03</Error2Radius> </Position2D> </AstroCoords> </ObservationLocation> </ObsDataLocation> </WhereWhen> Concept The <Concept> element now holds controlled vocabulary For draft (IVOA Semantics WG), see http://www.ivoa.net/twiki/bin/view/IVOA/VOEventVocabulary