123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507 |
- <?xml version="1.0" encoding="UTF-8"?>
- <xs:schema targetNamespace="urn:ietf:params:xml:ns:pidf:rpid"
- xmlns="urn:ietf:params:xml:ns:pidf:rpid"
- xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"
- xmlns:xs="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified">
- <xs:include schemaLocation="common-schema.xsd"/>
- <xs:simpleType name="activeIdle">
- <xs:restriction base="xs:string">
- <xs:enumeration value="active"/>
- <xs:enumeration value="idle"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:element name="activities">
- <xs:annotation>
- <xs:documentation>
- Describes what the person is currently doing, expressed as
- an enumeration of activity-describing elements. A person
- can be engaged in multiple activities at the same time,
- e.g., traveling and having a meal.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="note" type="Note_t" minOccurs="0"/>
- <xs:choice>
- <xs:element name="unknown" type="empty" minOccurs="0"/>
- <xs:sequence maxOccurs="unbounded">
- <xs:choice>
- <xs:element name="appointment"
- type="empty" />
- <xs:element name="away"
- type="empty" />
- <xs:element name="breakfast"
- type="empty" />
- <xs:element name="busy"
- type="empty" />
- <xs:element name="dinner"
- type="empty" />
- <xs:element name="holiday"
- type="empty" />
- <xs:element name="in-transit"
- type="empty" />
- <xs:element name="looking-for-work"
- type="empty" />
- <xs:element name="meal"
- type="empty" />
- <xs:element name="meeting"
- type="empty" />
- <xs:element name="on-the-phone"
- type="empty" />
- <xs:element name="performance"
- type="empty" />
- <xs:element name="permanent-absence"
- type="empty" />
- <xs:element name="playing"
- type="empty" />
- <xs:element name="presentation"
- type="empty" />
- <xs:element name="shopping"
- type="empty" />
- <xs:element name="sleeping"
- type="empty" />
- <xs:element name="spectator"
- type="empty" />
- <xs:element name="steering"
- type="empty" />
- <xs:element name="travel"
- type="empty" />
- <xs:element name="tv"
- type="empty" />
- <xs:element name="vacation"
- type="empty" />
- <xs:element name="working"
- type="empty" />
- <xs:element name="worship"
- type="empty" />
- <xs:element name="other"
- type="Note_t" />
- <xs:any namespace="##other"
- maxOccurs="unbounded" processContents="lax"/>
- </xs:choice>
- </xs:sequence>
- </xs:choice>
- </xs:sequence>
- <xs:attributeGroup ref="fromUntil"/>
- <xs:attribute name="id" type="xs:ID"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="class" type="xs:token">
- <xs:annotation>
- <xs:documentation>
- Describes the class of the service, device or person.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- <xs:element name="mood">
- <xs:annotation>
- <xs:documentation>
- Describes the mood of the presentity.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="note" type="Note_t" minOccurs="0"/>
- <xs:choice>
- <xs:element name="unknown" type="empty"/>
- <xs:sequence maxOccurs="unbounded">
- <xs:choice>
- <xs:element name="afraid"
- type="empty"/>
- <xs:element name="amazed"
- type="empty"/>
- <xs:element name="angry"
- type="empty"/>
- <xs:element name="annoyed"
- type="empty"/>
- <xs:element name="anxious"
- type="empty" />
- <xs:element name="ashamed"
- type="empty" />
- <xs:element name="bored"
- type="empty" />
- <xs:element name="brave"
- type="empty" />
- <xs:element name="calm"
- type="empty" />
- <xs:element name="cold"
- type="empty" />
- <xs:element name="confused"
- type="empty" />
- <xs:element name="contented"
- type="empty" />
- <xs:element name="cranky"
- type="empty" />
- <xs:element name="curious"
- type="empty" />
- <xs:element name="depressed"
- type="empty" />
- <xs:element name="disappointed"
- type="empty" />
- <xs:element name="disgusted"
- type="empty" />
- <xs:element name="distracted"
- type="empty" />
- <xs:element name="embarrassed"
- type="empty" />
- <xs:element name="excited"
- type="empty" />
- <xs:element name="flirtatious"
- type="empty" />
- <xs:element name="frustrated"
- type="empty" />
- <xs:element name="grumpy"
- type="empty" />
- <xs:element name="guilty"
- type="empty" />
- <xs:element name="happy"
- type="empty" />
- <xs:element name="hot"
- type="empty" />
- <xs:element name="humbled"
- type="empty" />
- <xs:element name="humiliated"
- type="empty" />
- <xs:element name="hungry"
- type="empty" />
- <xs:element name="hurt"
- type="empty" />
- <xs:element name="impressed"
- type="empty" />
- <xs:element name="in_awe"
- type="empty" />
- <xs:element name="in_love"
- type="empty" />
- <xs:element name="indignant"
- type="empty" />
- <xs:element name="interested"
- type="empty" />
- <xs:element name="invincible"
- type="empty" />
- <xs:element name="jealous"
- type="empty" />
- <xs:element name="lonely"
- type="empty" />
- <xs:element name="mean"
- type="empty" />
- <xs:element name="moody"
- type="empty" />
- <xs:element name="nervous"
- type="empty" />
- <xs:element name="neutral"
- type="empty" />
- <xs:element name="offended"
- type="empty" />
- <xs:element name="playful"
- type="empty" />
- <xs:element name="proud"
- type="empty" />
- <xs:element name="relieved"
- type="empty" />
- <xs:element name="remorseful"
- type="empty" />
- <xs:element name="restless"
- type="empty" />
- <xs:element name="sad"
- type="empty" />
- <xs:element name="sarcastic"
- type="empty" />
- <xs:element name="serious"
- type="empty" />
- <xs:element name="shocked"
- type="empty" />
- <xs:element name="shy"
- type="empty" />
- <xs:element name="sick"
- type="empty" />
- <xs:element name="sleepy"
- type="empty" />
- <xs:element name="stressed"
- type="empty" />
- <xs:element name="surprised"
- type="empty" />
- <xs:element name="thirsty"
- type="empty" />
- <xs:element name="worried"
- type="empty" />
- <xs:element name="other"
- type="Note_t" />
- <xs:any namespace="##other"
- maxOccurs="unbounded" processContents="lax"/>
- </xs:choice>
- </xs:sequence>
- </xs:choice>
- </xs:sequence>
- <xs:attributeGroup ref="fromUntil"/>
- <xs:attribute name="id" type="xs:ID"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="place-is">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="note" type="Note_t" minOccurs="0"/>
- <xs:element name="audio" minOccurs="0">
- <xs:complexType>
- <xs:choice>
- <xs:element name="noisy" type="empty" />
- <xs:element name="ok" type="empty" />
- <xs:element name="quiet" type="empty" />
- <xs:element name="unknown" type="empty" />
- </xs:choice>
- </xs:complexType>
- </xs:element>
- <xs:element name="video" minOccurs="0">
- <xs:complexType>
- <xs:choice>
- <xs:element name="toobright" type="empty" />
- <xs:element name="ok" type="empty" />
- <xs:element name="dark" type="empty" />
- <xs:element name="unknown" type="empty" />
- </xs:choice>
- </xs:complexType>
- </xs:element>
- <xs:element name="text" minOccurs="0">
- <xs:complexType>
- <xs:choice>
- <xs:element name="uncomfortable" type="empty" />
- <xs:element name="inappropriate" type="empty" />
- <xs:element name="ok" type="empty" />
- <xs:element name="unknown" type="empty" />
- </xs:choice>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attributeGroup ref="fromUntil"/>
- <xs:attribute name="id" type="xs:ID"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="place-type">
- <xs:annotation>
- <xs:documentation>
- Describes the type of place the person is currently at.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="note" type="Note_t" minOccurs="0"/>
- <xs:choice>
- <xs:element name="aircraft" type="empty" />
- <xs:element name="airport" type="empty" />
- <xs:element name="arena" type="empty" />
- <xs:element name="automobile" type="empty" />
- <xs:element name="bank" type="empty" />
- <xs:element name="bar" type="empty" />
- <xs:element name="bus" type="empty" />
- <xs:element name="bus-station" type="empty" />
- <xs:element name="cafe" type="empty" />
- <xs:element name="classroom" type="empty" />
- <xs:element name="club" type="empty" />
- <xs:element name="construction" type="empty" />
- <xs:element name="convention-center" type="empty" />
- <xs:element name="cycle" type="empty" />
- <xs:element name="government" type="empty" />
- <xs:element name="hospital" type="empty" />
- <xs:element name="hotel" type="empty" />
- <xs:element name="industrial" type="empty" />
- <xs:element name="library" type="empty" />
- <xs:element name="office" type="empty" />
- <xs:element name="outdoors" type="empty" />
- <xs:element name="parking" type="empty" />
- <xs:element name="place-of-worship" type="empty" />
- <xs:element name="prison" type="empty" />
- <xs:element name="public" type="empty" />
- <xs:element name="public-transport" type="empty" />
- <xs:element name="residence" type="empty" />
- <xs:element name="restaurant" type="empty" />
- <xs:element name="school" type="empty" />
- <xs:element name="shopping-area" type="empty" />
- <xs:element name="stadium" type="empty" />
- <xs:element name="store" type="empty" />
- <xs:element name="street" type="empty" />
- <xs:element name="theater" type="empty" />
- <xs:element name="train" type="empty" />
- <xs:element name="train-station" type="empty" />
- <xs:element name="truck" type="empty" />
- <xs:element name="underway" type="empty" />
- <xs:element name="unknown" type="empty" />
- <xs:element name="warehouse" type="empty" />
- <xs:element name="water" type="empty" />
- <xs:element name="watercraft" type="empty" />
- <xs:element name="other" type="Note_t"/>
- <xs:any namespace="##other" maxOccurs="unbounded"
- processContents="lax"/>
- </xs:choice>
- </xs:sequence>
- <xs:attributeGroup ref="fromUntil"/>
- <xs:attribute name="id" type="xs:ID"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="privacy">
- <xs:annotation>
- <xs:documentation>
- Indicates which type of communication third parties in the
- vicinity of the presentity are unlikely to be able to
- intercept accidentally or intentionally.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="note" type="Note_t" minOccurs="0"/>
- <xs:choice>
- <xs:element name="unknown" type="empty"/>
- <xs:sequence minOccurs="1">
- <xs:element name="audio" type="empty" minOccurs="0"/>
- <xs:element name="text" type="empty" minOccurs="0"/>
- <xs:element name="video" type="empty" minOccurs="0"/>
- <xs:any namespace="##other" minOccurs="0"
- maxOccurs="unbounded" processContents="lax"/>
- </xs:sequence>
- </xs:choice>
- </xs:sequence>
- <xs:attributeGroup ref="fromUntil"/>
- <xs:attribute name="id" type="xs:ID"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="relationship">
- <xs:annotation>
- <xs:documentation>
- Designates the type of relationship an alternate contact
- has with the presentity.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="note" type="Note_t" minOccurs="0"/>
- <xs:choice>
- <xs:element name="assistant" type="empty" />
- <xs:element name="associate" type="empty" />
- <xs:element name="family" type="empty" />
- <xs:element name="friend" type="empty" />
- <xs:element name="other" type="Note_t" minOccurs="0" />
- <xs:element name="self" type="empty" />
- <xs:element name="supervisor" type="empty" />
- <xs:element name="unknown" type="empty" />
- <xs:any namespace="##other" maxOccurs="unbounded"
- processContents="lax"/>
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="service-class">
- <xs:annotation>
- <xs:documentation>
- Designates the type of service offered.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="note" type="Note_t" minOccurs="0"/>
- <xs:choice>
- <xs:element name="courier" type="empty" />
- <xs:element name="electronic" type="empty" />
- <xs:element name="freight" type="empty" />
- <xs:element name="in-person" type="empty" />
- <xs:element name="postal" type="empty" />
- <xs:element name="unknown" type="empty" />
- <xs:any namespace="##other" maxOccurs="unbounded"
- processContents="lax"/>
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="sphere">
- <xs:annotation>
- <xs:documentation>
- Designates the current state and role that the person plays.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:choice minOccurs="0">
- <xs:element name="home" type="empty" />
- <xs:element name="work" type="empty" />
- <xs:element name="unknown" type="empty" />
- <xs:any namespace="##other" maxOccurs="unbounded"
- processContents="lax"/>
- </xs:choice>
- <xs:attributeGroup ref="fromUntil"/>
- <xs:attribute name="id" type="xs:ID"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="status-icon">
- <xs:annotation>
- <xs:documentation>
- A URI pointing to an image (icon) representing the current
- status of the person or service.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="xs:anyURI">
- <xs:attributeGroup ref="fromUntil"/>
- <xs:attribute name="id" type="xs:ID"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="time-offset">
- <xs:annotation>
- <xs:documentation>
- Describes the number of minutes of offset from UTC at the
- user's current location.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="xs:integer">
- <xs:attributeGroup ref="fromUntil"/>
- <xs:attribute name="description"
- type="xs:string"/>
- <xs:attribute name="id" type="xs:ID"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="user-input">
- <xs:annotation>
- <xs:documentation>
- Records the user-input or usage state of the service or
- device.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="activeIdle">
- <xs:attribute name="idle-threshold"
- type="xs:positiveInteger"/>
- <xs:attribute name="last-input" type="xs:dateTime"/>
- <xs:attribute name="id" type="xs:ID"/>
- <xs:anyAttribute namespace="##any"
- processContents="lax"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
- </xs:schema>
|