Table of Contents
Target Namespace
http://www.rowa.de/wsdl/posps/types
Version
0.9-svn
Language
en
Element and Attribute Namespaces
Global element and attribute declarations belong to this schema's target namespace.
By default, local element declarations have no namespace.
By default, local attribute declarations have no namespace.
Declared Namespaces
Prefix
Namespace
Default namespace
http://www.w3.org/1999/xhtml
xml
http://www.w3.org/XML/1998/namespace
xsd
http://www.w3.org/2001/XMLSchema
pptype
http://www.rowa.de/wsdl/posps/types
jaxb
http://java.sun.com/xml/ns/jaxb
Schema Component Representation
<
xsd:schema xml:lang ="
en "
version ="
0.9-svn "
version ="
2.0 "
targetNamespace ="
http://www.rowa.de/wsdl/posps/types ">
...
</
xsd:schema >
Name
authenticationRejectedFault
Type
Locally-defined complex type
Nillable
no
Abstract
no
XML Instance Representation
<
pptype :authenticationRejectedFault/>
Schema Component Representation
<
xsd:element name ="
authenticationRejectedFault ">
<
xsd:complexType >
<xsd:sequence />
</
xsd:complexType >
</
xsd:element >
Name
idReferencedFault
Type
Locally-defined complex type
Nillable
no
Abstract
no
XML Instance Representation
<
pptype :idReferencedFault>
<referencedBy>
pptype :Id
</referencedBy>
[0..1]
</
pptype :idReferencedFault>
Schema Component Representation
<
xsd:element name ="
idReferencedFault ">
<
xsd:complexType >
<
xsd:sequence >
<
xsd:element name ="
referencedBy "
type ="
pptype :Id
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
</
xsd:element >
Name
illegalStateFault
Type
Locally-defined complex type
Nillable
no
Abstract
no
XML Instance Representation
<
pptype :illegalStateFault>
<message>
xsd :string </message>
[1]
</
pptype :illegalStateFault>
Schema Component Representation
<
xsd:element name ="
illegalStateFault ">
<
xsd:complexType >
<
xsd:sequence >
<
xsd:element name ="
message "
type ="
xsd :string
"/>
</
xsd:sequence >
</
xsd:complexType >
</
xsd:element >
Name
tooManyOrdersFault
Type
Locally-defined complex type
Nillable
no
Abstract
no
Schema Component Representation
<
xsd:element name ="
tooManyOrdersFault ">
<
xsd:complexType >
<xsd:sequence />
</
xsd:complexType >
</
xsd:element >
Name
tooManySearchesFault
Type
Locally-defined complex type
Nillable
no
Abstract
no
XML Instance Representation
<
pptype :tooManySearchesFault/>
Schema Component Representation
<
xsd:element name ="
tooManySearchesFault ">
<
xsd:complexType >
<xsd:sequence />
</
xsd:complexType >
</
xsd:element >
Schema Component Representation
<
xsd:element name ="
unknownIdFault ">
<
xsd:complexType >
<
xsd:sequence >
<
xsd:element name ="
id "
type ="
pptype :Id
"/>
</
xsd:sequence >
</
xsd:complexType >
</
xsd:element >
Name
unknownPickupCodeFault
Type
Locally-defined complex type
Nillable
no
Abstract
no
XML Instance Representation
<
pptype :unknownPickupCodeFault/>
Schema Component Representation
<
xsd:element name ="
unknownPickupCodeFault ">
<
xsd:complexType >
<xsd:sequence />
</
xsd:complexType >
</
xsd:element >
Super-types:
None
Sub-types:
None
XML Instance Representation
<...>
Start Choice [1]
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
AddPersonData ">
<
xsd:choice >
</
xsd:choice >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
XML Instance Representation
<...>
<amount>
xsd :unsignedLong </amount>
[1] ?
<indicationOfUse>
xsd :string </indicationOfUse>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
AddPositionData ">
<
xsd:sequence >
<
xsd:element name ="
amount "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
indicationOfUse "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
positionId "
type ="
pptype :PositionId
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
AddressCountrySpecific
Abstract
yes
Documentation
Base type for postal addresses.
XML Instance Representation
<...>
<type>
xsd :string (value comes from list: {'home'|'office'|'other'}) </type>
[0..1]
<country>
xsd :token </country>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
AddressCountrySpecific "
abstract ="
true ">
<
xsd:sequence >
<
xsd:element name ="
type "
maxOccurs ="
1 "
minOccurs ="
0 ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="home "/>
<xsd:enumeration value ="office "/>
<xsd:enumeration value ="other "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
country "
type ="
xsd :token
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Name
AddressDE
Abstract
no
Documentation
Address in German address format.
XML Instance Representation
<...>
<type>
xsd :string (value comes from list: {'home'|'office'|'other'}) </type>
[0..1]
<country>
xsd :token </country>
[0..1] ?
<auxiliary>
xsd :string </auxiliary>
[0..1]
Start Choice [1]
<street>
xsd :token </street>
[1]
<number>
xsd :string </number>
[1]
<pobox>
xsd :unsignedLong </pobox>
[1]
End Choice
<postcode>
xsd :string (pattern = \d{5}) </postcode>
[1]
<city>
xsd :token </city>
[1]
</...>
Schema Component Representation
<
xsd:complexType name ="
AddressDE ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :AddressCountrySpecific
">
<
xsd:sequence >
<
xsd:element name ="
auxiliary "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:choice >
<
xsd:sequence >
<
xsd:element name ="
street "
type ="
xsd :token
"/>
<
xsd:element name ="
number "
type ="
xsd :string
"/>
</
xsd:sequence >
<
xsd:element name ="
pobox "
type ="
xsd :unsignedLong
"/>
</
xsd:choice >
<
xsd:element name ="
postcode "
nillable ="
true ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:pattern value ="\d{5} "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
city "
type ="
xsd :token
"/>
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
ArticleCondition
Abstract
no
Documentation
Condition that must be fulfilled by an article to be included in a search result.
This element defines some basic conditions that must be supported implementations
for all countries and an additional element for country-specific conditions.
The choice of the child element determines which condition is
used.
XML Instance Representation
<...>
Start Choice [1]
<name>
xsd :string </name>
[1] ?
<manufacturer>
xsd :string </manufacturer>
[1] ?
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
ArticleCondition ">
<
xsd:choice >
<
xsd:element name ="
articleId "
type ="
pptype :ArticleId
"
maxOccurs ="
unbounded "
minOccurs ="
1 "/>
<
xsd:element name ="
name "
type ="
xsd :string
"/>
<
xsd:element name ="
manufacturer "
type ="
xsd :string
"/>
</
xsd:choice >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
ArticleConditionCountrySpecific
Abstract
yes
Documentation
Base type for country-specific article conditions.
Name
ArticleConditionDE
Abstract
no
Documentation
Conditions for filtering articles relevant to German PSs.
XML Instance Representation
<...>
Start Choice [1]
<apothekenpflicht>
xsd :boolean </apothekenpflicht>
[1] ?
<rezeptpflicht>
xsd :boolean </rezeptpflicht>
[1] ?
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
ArticleConditionDE ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :ArticleConditionCountrySpecific
">
<
xsd:choice >
<
xsd:element name ="
apothekenpflicht "
type ="
xsd :boolean
"/>
<
xsd:element name ="
rezeptpflicht "
type ="
xsd :boolean
"/>
</
xsd:choice >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
Id
< ArticleId (by extension)
Sub-types:
None
Name
ArticleId
Abstract
no
Documentation
ID referring to an article.
Articles are the items which are sold by the POS. The client gets ArticleIds as
result of a
searchArticle
call. It usually uses the ArticleIds in positions it adds to a sale using
addPosition
and then orders the matching packs to be delivered from the pharmacy robot by
calling
requestArticles
when the sale is processed.
Several different packs stored in the pharmacy robot, which delivers the packs
to the client, will usually be referred to by the same ArticleId. The matching
of ArticleIds to packs ordered by the client via the Order port type is up to
the server (which might leave the decision to the pharmacy robot).
This specification makes no assumptions about ArticleIds other than that
ArticleIds used in the Search, Sale, and Order port types refer to equivalent
articles. An article delivered for an order is equivalent to the article of a
sale position or search result if the delivered pack is the same product and may
be sold under the same conditions (e.g. price) that the server has reported for
the position or search result entry respectively.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
ArticleId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
ArticleOrder
Abstract
no
Documentation
Base type of sorting orders for articles.
XML Instance Representation
<...>
Start Choice [1]
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
ArticleOrder ">
<
xsd:choice >
<
xsd:element name ="
price ">
<
xsd:complexType >
</
xsd:complexType >
</
xsd:element >
<
xsd:element name ="
name ">
<
xsd:complexType >
</
xsd:complexType >
</
xsd:element >
</
xsd:choice >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
ArticleOrderCountrySpecific
Abstract
yes
Documentation
Base type for country-specific article conditions.
Name
ArticleOrderDE
Abstract
no
Documentation
Article conditions for German IT systems.
XML Instance Representation
<...>
<abdaSortierbegriff/> [1]
</...>
Schema Component Representation
<
xsd:complexType name ="
ArticleOrderDE ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :ArticleOrderCountrySpecific
">
<
xsd:sequence >
<
xsd:element name ="
abdaSortierbegriff ">
<
xsd:complexType >
</
xsd:complexType >
</
xsd:element >
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
ArticleSearchContext
Abstract
no
Documentation
Context information for an article search. The PS can use this information to
calculate some fields of the search result (at the moment only priceContextSpecific)
according to the parameters of the context.
XML Instance Representation
<...>
<amountToSell>
xsd :unsignedLong </amountToSell>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
ArticleSearchContext ">
<
xsd:sequence >
<
xsd:element name ="
saleId "
type ="
pptype :SaleId
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
amountToSell "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Schema Component Representation
<
xsd:complexType name ="
ArticleSearchpattern ">
<
xsd:sequence >
<
xsd:element name ="
order "
type ="
pptype :ArticleOrder
"
maxOccurs ="
unbounded "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Name
ArticleSearchResultElement
Abstract
no
Documentation
Element describing one article in the set of articles in a search result. All
optional child elements may be nil if the server does not know the information for
this article or may not present if either the client has not requested the element
with the search template or the element is not supported by the server.
XML Instance Representation
<...>
<name>
xsd :string </name>
[0..1] ?
<manufacturer>
xsd :string </manufacturer>
[0..1] ?
<price>
xsd :unsignedLong </price>
[0..1] ?
<priceContextSpecific>
xsd :unsignedLong </priceContextSpecific>
[0..1] ?
<vatRate>
xsd :decimal </vatRate>
[0..1] ?
<stock>
xsd :unsignedLong </stock>
[0..1] ?
<width>
xsd :unsignedLong </width>
[0..1] ?
<height>
xsd :unsignedLong </height>
[0..1] ?
<length>
xsd :unsignedLong </length>
[0..1] ?
<weight>
xsd :unsignedLong </weight>
[0..1] ?
<pharmaceutic>
[0..1] ?
</pharmaceutic>
</...>
Schema Component Representation
<
xsd:complexType name ="
ArticleSearchResultElement ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :SearchResultElement
">
<
xsd:sequence >
<
xsd:element name ="
name "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
manufacturer "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
price "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
priceContextSpecific "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
vatRate "
type ="
xsd :decimal
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
stock "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
width "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
height "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
length "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
weight "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
packaging "
type ="
pptype :Packaging
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
pharmaceutic "
maxOccurs ="
1 "
minOccurs ="
0 ">
<
xsd:complexType >
<
xsd:sequence >
</
xsd:sequence >
</
xsd:complexType >
</
xsd:element >
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
BankCountrySpecific
Abstract
no
Documentation
Base type for bank connection information.
Complex Type: BankDE
Name
BankDE
Abstract
no
Documentation
Bank connection information in German format.
XML Instance Representation
<...>
<bankleitzahl>
xsd :string (pattern = \d{8}) </bankleitzahl>
[1]
<bankname>
xsd :token </bankname>
[1]
<kontonummer>
xsd :string (pattern = \d{1,10}) </kontonummer>
[1]
<kontoinhaber>
xsd :token </kontoinhaber>
[1]
</...>
Schema Component Representation
<
xsd:complexType name ="
BankDE ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :BankCountrySpecific
">
<
xsd:sequence >
<
xsd:element name ="
bankleitzahl ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:pattern value ="\d{8} "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
bankname "
type ="
xsd :token
"/>
<
xsd:element name ="
kontonummer ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:pattern value ="\d{1,10} "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
kontoinhaber "
type ="
xsd :token
"/>
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Name
BankIBAN
Abstract
no
Documentation
Bank connection information in IBAN (International Bank Account Number) format.
Contains both the IBAN and the SWIFT BIC code of the bank. The BIC code is needed
because the IBAN system is not yet supported widely enough to support routing
of the bank transactions (see http://en.wikipedia.org/wiki/International_Bank_Account_Number).
XML Instance Representation
<...>
<iban>
xsd :string (pattern = [A-Z]{2}\d{2}\w{1,30}) </iban>
[1] ?
<swiftBic>
xsd :string (pattern = \w{4}\w{2}\w{2}(\w{3})?) </swiftBic>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
BankIBAN ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :BankCountrySpecific
">
<
xsd:sequence >
<
xsd:element name ="
iban ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:pattern value ="[A-Z]{2}\d{2}\w{1,30} "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
swiftBic ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:pattern value ="\w{4}\w{2}\w{2}(\w{3})? "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Complex Type: Charge
Super-types:
None
Sub-types:
None
Name
Charge
Abstract
no
Documentation
Additional charges that modifify the total price of the sale.
XML Instance Representation
<...>
<amount>
xsd :long </amount>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
Charge ">
<
xsd:sequence >
<
xsd:element name ="
amount "
type ="
xsd :long
"/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
xsd :string < Contact (by extension)
Sub-types:
Name
Contact
Abstract
no
Documentation
Base type for contact addresses other than postal addresses.
XML Instance Representation
<...
type="
xsd :string (value comes from list: {'home'|'office'|'mobile'|'other'}) [0..1] " >
xsd :string
</...>
Schema Component Representation
<
xsd:complexType name ="
Contact ">
<
xsd:simpleContent >
<
xsd:extension base ="
xsd :string
">
<
xsd:attribute name ="
type "
use ="
optional ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="home "/>
<xsd:enumeration value ="office "/>
<xsd:enumeration value ="mobile "/>
<xsd:enumeration value ="other "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:attribute >
</
xsd:extension >
</
xsd:simpleContent >
</
xsd:complexType >
Complex Type: Credit
Super-types:
None
Sub-types:
None
Name
Credit
Abstract
no
Documentation
Type describing money owed by the client to the customer. This is used if for
technical or other reasons a payment cannot be fully reverted or money overpaid by
the customer cannot be completely given back. An example reason for this might be
that the POS has run out of change. The server is responsible for giving the
customer back his money at a later time.
XML Instance Representation
<...>
<amount>
xsd :unsignedLong </amount>
[1] ?
<reason>
xsd :string </reason>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
Credit ">
<
xsd:sequence >
<
xsd:element name ="
amount "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
reason "
type ="
xsd :string
"/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
EditPositionData
Abstract
no
Documentation
Changes of a position by the client. The client is only allowed to change some of
the fields of a position. All other fields are completely controlled by the server.
XML Instance Representation
<...>
<amount>
xsd :unsignedLong </amount>
[0..1] ?
<articlePrice>
xsd :unsignedLong </articlePrice>
[0..1] ?
<positionPrice>
xsd :unsignedLong </positionPrice>
[0..1] ?
<indicationOfUse>
xsd :string </indicationOfUse>
[0..1] ?
<delivered>
xsd :unsignedLong </delivered>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
EditPositionData ">
<
xsd:sequence >
<
xsd:element name ="
amount "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
articlePrice "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
positionPrice "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
indicationOfUse "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
delivered "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Complex Type: Email
Super-types:
xsd :string <
Contact
(by extension) < Email (by extension)
Sub-types:
None
XML Instance Representation
<...
type="
xsd :string (value comes from list: {'home'|'office'|'mobile'|'other'}) [0..1] " >
xsd :string
</...>
Schema Component Representation
<
xsd:complexType name ="
Email ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Complex Type: Empty
Super-types:
None
Sub-types:
None
Name
Empty
Abstract
no
Prohibited Derivations
restriction, extension
Documentation
Type without content. Used as a placeholder for elements where the presence of the
element alone carries the information.
Super-types:
PrintMarkup
< FixedWidthPrintMarkup (by extension)
Sub-types:
None
Name
FixedWidthPrintMarkup
Abstract
no
Documentation
Simple markup for documents set in a fixed-width font. The content is printed in a
fixed-width font as they appear in the element, with white-space and line-breaks
preserved. Child elements are elements for emphasizing and an element for including
images.
XML Instance Representation
<...>
Start Choice [0..*]
<n>
xsd :string </n>
[1] ?
<b>
xsd :string </b>
[1] ?
<dw>
xsd :string </dw>
[1] ?
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
FixedWidthPrintMarkup ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :PrintMarkup
">
<
xsd:choice maxOccurs ="
unbounded "
minOccurs ="
0 ">
<
xsd:element name ="
n "
type ="
xsd :string
"/>
<
xsd:element name ="
b "
type ="
xsd :string
"/>
<
xsd:element name ="
dw "
type ="
xsd :string
"/>
<
xsd:element name ="
img ">
<
xsd:complexType >
<
xsd:attribute name ="
src "
type ="
xsd :string
"/>
</
xsd:complexType >
</
xsd:element >
</
xsd:choice >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
FormattedText
Abstract
no
Documentation
Continuous text which is separated in headings and paragraphs.
It is up to the client to decide how to format the text.
XML Instance Representation
<...>
Start Choice [1..*]
<h>
xsd :string </h>
[1] ?
<p>
xsd :string </p>
[1] ?
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
FormattedText ">
<
xsd:sequence >
<
xsd:choice maxOccurs ="
unbounded "
minOccurs ="
1 ">
<
xsd:element name ="
h "
type ="
xsd :string
"/>
<
xsd:element name ="
p "
type ="
xsd :string
"/>
</
xsd:choice >
</
xsd:sequence >
</
xsd:complexType >
Complex Type: Id
Super-types:
None
Sub-types:
Name
Id
Abstract
yes
Documentation
Unique identification of some entity of the posps web service.
IDs are used to refer to various entities (such as persons, sales, etc.) passed
between client and server. For each kind of entity there is a subtype of Id.
This helps to avoid accidentally using an ID of type A to refer to an entity of
type B, and to avoid clashes if two entities of different types have the same ID
code.
IDs are generated by the server. There are no restrictions to the form of an ID
other than that the code is of the base type
xsd:token
. Subtypes of ID make further restrictions on the scope and usage of their
particular IDs.
Note: The reason for defining Id as a complex type with a
code
attribute instead of directly restricting
xsd:string
is that many wsdl-to-sourcecode translators do not create their own types for
schema types derived from simple types, thus preventing compile-time type
checking of IDs.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
Id "
abstract ="
true ">
<
xsd:attribute name ="
code "
use ="
required ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :token
">
<xsd:minLength value ="1 "/>
<xsd:whiteSpace value ="collapse "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:attribute >
</
xsd:complexType >
Super-types:
xsd :string <
Contact
(by extension) < InstantMessaging (by extension)
Sub-types:
None
XML Instance Representation
<...
type="
xsd :string (value comes from list: {'home'|'office'|'mobile'|'other'}) [0..1] " >
xsd :string
</...>
Schema Component Representation
<
xsd:complexType name ="
InstantMessaging ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
NoteData
< Interaction (by extension)
Sub-types:
None
Name
Interaction
Abstract
no
Documentation
Warning about a possible interaction between positions in the
current sale, or between positions in the current sale and items
in the patient's history.
XML Instance Representation
<...
source="
xsd :string [0..1] ? " >
<title>
xsd :string </title>
[1] ?
<severity
classificationSource="
xsd :string [0..1] ? " >
[0..*] ?
xsd :string
</severity>
<interactionPartners>
[0..1] ?
<interactionPartner>
xsd :string </interactionPartner>
[2..2] ?
</interactionPartners>
</...>
Schema Component Representation
<
xsd:complexType name ="
Interaction ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :NoteData
">
<
xsd:sequence >
<
xsd:element name ="
severity "
maxOccurs ="
unbounded "
minOccurs ="
0 ">
<
xsd:complexType >
<
xsd:simpleContent >
<
xsd:extension base ="
xsd :string
">
<
xsd:attribute name ="
classificationSource "
type ="
xsd :string
"/>
</
xsd:extension >
</
xsd:simpleContent >
</
xsd:complexType >
</
xsd:element >
<
xsd:element name ="
interactionPartners "
maxOccurs ="
1 "
minOccurs ="
0 ">
<
xsd:complexType >
<
xsd:sequence >
<
xsd:element name ="
interactionPartner "
type ="
xsd :string
"
maxOccurs ="
2 "
minOccurs ="
2 "/>
</
xsd:sequence >
</
xsd:complexType >
</
xsd:element >
</
xsd:sequence >
<
xsd:attribute name ="
source "
type ="
xsd :string
"/>
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Complex Type: Note
Super-types:
None
Sub-types:
None
Schema Component Representation
<
xsd:complexType name ="
Note ">
<
xsd:sequence >
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
NoteData
Abstract
no
Documentation
A note gives the operator (pharmacist) additional information which can
help him to better serve the customer.
Notes may be generated by the server in reaction to changes
of the sale. They are shown to the pharmacist who serves the
customer, not the customer himself. It is intended to give
additional information based on the knowledge of the server
about specific articles, article combinations or the
customer's sale history.
A note may reference the positions and the person which it
refers to. The client is responsible to bring this reference
to the user's attention.
XML Instance Representation
<...>
<title>
xsd :string </title>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
NoteData ">
<
xsd:sequence >
<
xsd:element name ="
title "
type ="
xsd :string
"/>
<
xsd:element name ="
positionId "
type ="
pptype :PositionId
"
maxOccurs ="
unbounded "
minOccurs ="
0 "/>
<
xsd:element name ="
personId "
type ="
pptype :PersonId
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Complex Type: NoteId
Super-types:
Id
< NoteId (by extension)
Sub-types:
None
Name
NoteId
Abstract
no
Documentation
ID referring to a single note in a sale. The ID must be unique only for the
sale in which it is used.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
NoteId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
Operator
Abstract
no
Documentation
Type describing an operator of the posps client. The operator is the person serving
the customer. In the context of the posps specification this is usually a pharmacist.
XML Instance Representation
<...>
<displayName>
xsd :string </displayName>
[1] ?
<fullName>
xsd :string </fullName>
[0..1] ?
<organization>
xsd :string </organization>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
Operator ">
<
xsd:sequence >
<
xsd:element name ="
displayName "
type ="
xsd :string
"/>
<
xsd:element name ="
fullName "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
operatorId "
type ="
pptype :OperatorId
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
organization "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
Id
< OperatorId (by extension)
Sub-types:
None
Name
OperatorId
Abstract
no
Documentation
ID uniquely identifying an operator serving a customer (usually a pharmacist).
Other than most other ID types, the content of the code attribute is not generated by the server,
but chosen by the client. It is only meaningful to the client and sent to the server for
documentation purposes.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
OperatorId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
XML Instance Representation
<...>
<amount>
xsd :unsignedLong </amount>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
OrderArticle ">
<
xsd:sequence >
<
xsd:element name ="
amount "
type ="
xsd :unsignedLong
"/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
OrderArticleList
Abstract
no
Documentation
List of articles that are ordered.
Schema Component Representation
<
xsd:complexType name ="
OrderArticleList ">
<
xsd:sequence >
<
xsd:element name ="
article "
type ="
pptype :OrderArticle
"
maxOccurs ="
unbounded "
minOccurs ="
1 "/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
Id
< OrderId (by extension)
Sub-types:
None
Name
OrderId
Abstract
no
Documentation
ID referring to an order that the client has placed using the Order port type.
An OrderId is generated by the server when the client calls the
requestArticles
operation. It is unique for the client in that the same ID is never used by the
server to refer to different orders if used by the same client. It may only be
valid for the client that placed the order. If a different client uses the ID
the server may raise an
UnknownIdFault
or interpret it as referring to a different order. The server may invalidate the
OrderId if the ID is not used for some time (if, for example, the client has
quit unexpectedly and forgotten about the order). In this case, the server must
raise an
UnknownIdFault
if the client uses the ID again. IDs may also become invalid when the client
calls certain operations. See the operation documentation for details.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
OrderId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
OrderStatusArticle
Abstract
no
Documentation
Report of the order status of an article ordered earlier.
XML Instance Representation
<...>
<ordered>
xsd :unsignedLong </ordered>
[1] ?
<delivered>
xsd :unsignedLong </delivered>
[1] ?
<failed>
[0..1] ?
<count>
xsd :unsignedLong </count>
[1] ?
<reasonCode>
xsd :string (value comes from list: {'aborted'|'out_of_stock'|'hardware_failure'|'other'}) </reasonCode>
[1] ?
<reason>
xsd :string </reason>
[0..1] ?
</failed>
</...>
Schema Component Representation
<
xsd:complexType name ="
OrderStatusArticle ">
<
xsd:sequence >
<
xsd:element name ="
ordered "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
delivered "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
failed "
maxOccurs ="
1 "
minOccurs ="
0 ">
<
xsd:complexType >
<
xsd:sequence >
<
xsd:element name ="
count "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
reasonCode ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="aborted "/>
<xsd:enumeration value ="out_of_stock "/>
<xsd:enumeration value ="hardware_failure "/>
<xsd:enumeration value ="other "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
reason "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
</
xsd:element >
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Schema Component Representation
<
xsd:complexType name ="
OrderStatusArticleList ">
<
xsd:sequence >
</
xsd:sequence >
</
xsd:complexType >
Super-types:
Id
< OrganizationId (by extension)
Sub-types:
None
Name
OrganizationId
Abstract
no
Documentation
ID uniquely identifying the organization to which an operator belongs.
Other than most other ID types, the content of the code attribute is not generated by the server,
but chosen by the client. It is only meaningful to the client and sent to the server for
documentation purposes.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
OrganizationId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
Packaging
Abstract
no
Documentation
Packaging size information for a pack. May be either a freeform description or a
precise indication of size and unit. The server should use the precise indication
whenever possible, since this enables correct sorting according to package size and
translation of the unit names used.
XML Instance Representation
<...>
Start Choice [1]
<size>
xsd :token </size>
[1] ?
<unit>
xsd :token </unit>
[1] ?
<description>
xsd :token </description>
[1] ?
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
Packaging ">
<
xsd:choice >
<
xsd:sequence >
<
xsd:element name ="
size "
type ="
xsd :token
"/>
<
xsd:element name ="
unit "
type ="
xsd :token
"/>
</
xsd:sequence >
<
xsd:element name ="
description "
type ="
xsd :token
"/>
</
xsd:choice >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
PatientCountrySpecific
Abstract
no
Documentation
Base type for country-specific information for a patient.
Name
PatientDE
Abstract
no
Documentation
Patient information relevant for Germany.
XML Instance Representation
<...>
<zuzahlungsbefreitBis>
xsd :date </zuzahlungsbefreitBis>
[0..1] ?
<versichertennummer>
xsd :string </versichertennummer>
[0..1] ?
<versichertenstatus>
xsd :string (pattern = \d{5}) </versichertenstatus>
[0..1] ?
<krankenkasse>
xsd :string </krankenkasse>
[0..1] ?
<gueltigBis>
xsd :date </gueltigBis>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PatientDE ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :PatientCountrySpecific
">
<
xsd:sequence >
<
xsd:element name ="
zuzahlungsbefreitBis "
type ="
xsd :date
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
versichertennummer "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
versichertenstatus "
maxOccurs ="
1 "
minOccurs ="
0 ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:pattern value ="\d{5} "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
krankenkasse "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
gueltigBis "
type ="
xsd :date
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
Payment
Abstract
yes
Documentation
Type describing the kind of payment.
It is the clients responsibility to collect the amount of money the server has
specified in the total element from the customer. When the money is collected,
the data of the payment is stored in an element of the type payment. It is not
possible to do a partial payment, the sum collected must always be the total
sum.
Since there are different ways the money can be collected (cash, card, etc.),
Payment is an abstract type. The client will decide which subtype is actually
used depending on the payment mode.
Super-types:
Payment
< PaymentCard (by extension)
Sub-types:
None
Name
PaymentCard
Abstract
no
Documentation
Type describing payment by a cash, ec or credit card. The client is responsible for
processing the actual payment, the server is just informed that the payment has
happened.
XML Instance Representation
<...>
<type>
xsd :string </type>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PaymentCard ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :Payment
">
<
xsd:sequence >
<
xsd:element name ="
type "
type ="
xsd :string
"/>
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
Payment
< PaymentCash (by extension)
Sub-types:
None
Name
PaymentCash
Abstract
no
Documentation
Type describing payment by cash.
XML Instance Representation
<...>
<given>
xsd :unsignedLong </given>
[1] ?
<returned>
xsd :unsignedLong </returned>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PaymentCash ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :Payment
">
<
xsd:sequence >
<
xsd:element name ="
given "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
returned "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
credit "
type ="
pptype :Credit
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
Payment
< PaymentInvoice (by extension)
Sub-types:
None
Name
PaymentInvoice
Abstract
no
Documentation
Type describing payment by invoice. This differs from the other payment types in
that the server is responsible for handling the payment details (sending out the
invoice and collecting the money) instead of the client.
Schema Component Representation
<
xsd:complexType name ="
PaymentInvoice ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :Payment
">
<
xsd:sequence >
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
Payment
< PaymentNone (by extension)
Sub-types:
None
Name
PaymentNone
Abstract
no
Documentation
Special payment type used if the pharmacist wants to process the sale even if it is
not paid for. The payment type indicates that no money has been transferred and the
customer owes the pharmacy the money specified by the sale total.
XML Instance Representation
<...>
<reason>
xsd :string </reason>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PaymentNone ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :Payment
">
<
xsd:sequence >
<
xsd:element name ="
reason "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Complex Type: Person
Super-types:
None
Sub-types:
None
Name
Person
Abstract
no
Documentation
Element that associates a PersonId with the corresponding data of the person.
Schema Component Representation
<
xsd:complexType name ="
Person ">
<
xsd:sequence >
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
PersonCondition
Abstract
no
Documentation
Condition that must be fulfilled by a person to be included in a search result.
XML Instance Representation
<...>
Start Choice [1]
<firstName>
xsd :string </firstName>
[1] ?
<lastName>
xsd :string </lastName>
[1] ?
<born>
xsd :date </born>
[1] ?
<customernumber>
xsd :string </customernumber>
[1] ?
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
PersonCondition ">
<
xsd:choice >
<
xsd:element name ="
firstName "
type ="
xsd :string
"/>
<
xsd:element name ="
lastName "
type ="
xsd :string
"/>
<
xsd:element name ="
born "
type ="
xsd :date
"/>
<
xsd:element name ="
customernumber "
type ="
xsd :string
"/>
<
xsd:element name ="
role "
type ="
pptype :PersonRole
"
maxOccurs ="
unbounded "
minOccurs ="
1 "/>
</
xsd:choice >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
PersonConditionCountrySpecific
Abstract
yes
Documentation
Base type for country-specific person conditions.
Name
PersonConditionDE
Abstract
no
Documentation
Conditions for filtering articles relevant to German PSs.
XML Instance Representation
<...>
Start Choice [1]
<versichertennummer>
xsd :string </versichertennummer>
[1] ?
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
PersonConditionDE ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
PersonData
Abstract
no
Documentation
General data of a person. A person can have many roles depending on the context in
which it is used.
XML Instance Representation
<...>
<customernumber>
xsd :token </customernumber>
[0..1] ?
<salutation>
xsd :string </salutation>
[0..1]
<title>
xsd :string </title>
[0..1]
<firstName>
xsd :string </firstName>
[0..1]
<lastName>
xsd :string </lastName>
[0..1]
<organization>
xsd :string </organization>
[0..1]
<born>
xsd :date </born>
[0..1] ?
<notes>
xsd :string </notes>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PersonData ">
<
xsd:sequence >
<
xsd:element name ="
personGUID "
type ="
pptype :PersonGUID
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
customernumber "
type ="
xsd :token
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
salutation "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
title "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
firstName "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
lastName "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
organization "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
born "
type ="
xsd :date
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
contact "
type ="
pptype :Contact
"
maxOccurs ="
unbounded "
minOccurs ="
0 "/>
<
xsd:element name ="
notes "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
Id
< PersonGUID (by extension)
Sub-types:
None
Name
PersonGUID
Abstract
no
Documentation
ID referring to a person from the database of persons stored on
the server. PersonGUIDs can be aquired by the client as a result from a
searchPerson
. A PersonGUID is unique and must always refer to the same person
no matter where or when it is used. This is different from a
PersonId
, which is only valid for the sale for which
it was generated.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
PersonGUID ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
Id
< PersonId (by extension)
Sub-types:
None
Name
PersonId
Abstract
no
Documentation
ID referring to a person who participates in a sale. The ID
is generated by the server when the client calls
addSalePerson
and is only guaranteed to be unique for the sale.
Persons can currently appear in the role of customer, patient, or physician.
Other roles might be added later. A person may have more than one role
depending on the context in which he is referred to. For example, in a sale
with a prescription, the customer might also be the patient referred to by the
prescription.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
PersonId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
PersonOrder
Abstract
no
Documentation
Order for person search results.
XML Instance Representation
<...>
Start Choice [1]
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
PersonOrder ">
<
xsd:choice >
<
xsd:element name ="
lastName ">
<
xsd:complexType >
</
xsd:complexType >
</
xsd:element >
<
xsd:element name ="
firstName ">
<
xsd:complexType >
</
xsd:complexType >
</
xsd:element >
<
xsd:element name ="
customernumber "
type ="
pptype :Empty
"/>
</
xsd:choice >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Schema Component Representation
<
xsd:complexType name ="
PersonSearchpattern ">
<
xsd:sequence >
<
xsd:element name ="
order "
type ="
pptype :PersonOrder
"
maxOccurs ="
unbounded "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Name
PersonSearchResultElement
Abstract
no
Schema Component Representation
<
xsd:complexType name ="
PersonSearchResultElement ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
PharmaceuticArticleCountrySpecific
Abstract
yes
Documentation
Base type for country-specific information for a pharmaceutic article.
Name
PharmaceuticArticleDE
Abstract
no
Documentation
Pharmaceutic article information relevant for Germany. Most fields
are defined analogous to the "ABDA-Artikelstamm" table PAC_APO.
XML Instance Representation
<...>
<festbetrag>
xsd :unsignedLong </festbetrag>
[0..1] ?
<arzneimittel>
xsd :boolean </arzneimittel>
[0..1] ?
<apothekenpflicht>
xsd :boolean </apothekenpflicht>
[0..1] ?
<rezeptpflicht>
xsd :boolean </rezeptpflicht>
[0..1] ?
<betaeubungsmittel>
xsd :boolean </betaeubungsmittel>
[0..1] ?
<drogeChemikalie>
xsd :boolean </drogeChemikalie>
[0..1] ?
<importReimport>
xsd :boolean </importReimport>
[0..1] ?
<lifestyle>
xsd :string (value comes from list: {'unknown'|'no'|'yes'|'yesWithRestrictions'}) </lifestyle>
[0..1] ?
<negativliste>
xsd :string (value comes from list: {'no'|'yes'|'yesWithException'}) </negativliste>
[0..1] ?
<tierarzneimittel>
xsd :boolean </tierarzneimittel>
[0..1] ?
<transfusionsgesetz>
xsd :boolean </transfusionsgesetz>
[0..1] ?
<zuzfrei31SgbTsr>
xsd :boolean </zuzfrei31SgbTsr>
[0..1] ?
<zuzfrei31SgbFeb>
xsd :boolean </zuzfrei31SgbFeb>
[0..1] ?
<hatRabattvertraege>
xsd :boolean </hatRabattvertraege>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PharmaceuticArticleDE ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :PharmaceuticArticleCountrySpecific
">
<
xsd:sequence >
<
xsd:element name ="
pzn "
type ="
pptype :Pzn
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
<
xsd:element name ="
original "
type ="
pptype :Pzn
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
nachfolger "
type ="
pptype :Pzn
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
festbetrag "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
arzneimittel "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
apothekenpflicht "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
rezeptpflicht "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
betaeubungsmittel "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
drogeChemikalie "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
importReimport "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
lifestyle "
maxOccurs ="
1 "
minOccurs ="
0 ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="unknown "/>
<xsd:enumeration value ="no "/>
<xsd:enumeration value ="yes "/>
<xsd:enumeration value ="yesWithRestrictions "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
negativliste "
maxOccurs ="
1 "
minOccurs ="
0 ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="no "/>
<xsd:enumeration value ="yes "/>
<xsd:enumeration value ="yesWithException "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
tierarzneimittel "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
transfusionsgesetz "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
zuzfrei31SgbTsr "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
zuzfrei31SgbFeb "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
hatRabattvertraege "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
PharmaceuticPositionCountrySpecific
Abstract
yes
Documentation
Base type for country-specific information for a position containing a pharmaceutic
article.
Name
PharmaceuticPositionDE
Abstract
no
Documentation
Position information for a pharmaceutic article relevant for Germany.
XML Instance Representation
<...>
<retailPrice>
xsd :unsignedLong </retailPrice>
[0..1] ?
<abdaRetailPrice>
xsd :unsignedLong </abdaRetailPrice>
[0..1] ?
<zuzahlung>
xsd :unsignedLong </zuzahlung>
[0..1] ?
<mehrkostenanteil>
xsd :unsignedLong </mehrkostenanteil>
[0..1] ?
<festbetrag>
xsd :unsignedLong </festbetrag>
[0..1] ?
<apothekenpflicht>
xsd :boolean </apothekenpflicht>
[0..1] ?
<rezeptpflicht>
xsd :boolean </rezeptpflicht>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PharmaceuticPositionDE ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :PharmaceuticPositionCountrySpecific
">
<
xsd:sequence >
<
xsd:element name ="
pzn "
type ="
pptype :Pzn
"/>
<
xsd:element name ="
retailPrice "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
abdaRetailPrice "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
zuzahlung "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
mehrkostenanteil "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
festbetrag "
type ="
xsd :unsignedLong
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
apothekenpflicht "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
rezeptpflicht "
type ="
xsd :boolean
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Complex Type: Phone
Super-types:
xsd :string <
Contact
(by extension) < Phone (by extension)
Sub-types:
None
XML Instance Representation
<...
type="
xsd :string (value comes from list: {'home'|'office'|'mobile'|'other'}) [0..1] " >
xsd :string
</...>
Schema Component Representation
<
xsd:complexType name ="
Phone ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Complex Type: Pickup
Super-types:
None
Sub-types:
None
XML Instance Representation
<...>
<payment>
[0..*]
</payment>
</...>
Schema Component Representation
<
xsd:complexType name ="
Pickup ">
<
xsd:sequence >
<
xsd:element name ="
pickupStatus "
type ="
pptype :PickupStatus
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
<
xsd:element name ="
position "
type ="
pptype :Position
"
minOccurs ="
0 "
maxOccurs ="
unbounded "/>
<
xsd:element name ="
operator "
type ="
pptype :Operator
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
<
xsd:element name ="
customerData "
type ="
pptype :PersonData
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
<
xsd:element name ="
total "
type ="
pptype :Total
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
<
xsd:element name ="
payment "
minOccurs ="
0 "
maxOccurs ="
unbounded ">
<
xsd:complexType >
<
xsd:sequence >
<
xsd:element name ="
canceled "
type ="
pptype :Empty
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
</
xsd:sequence >
</
xsd:complexType >
</
xsd:element >
</
xsd:sequence >
</
xsd:complexType >
Super-types:
Id
< PickupId (by extension)
Sub-types:
None
Name
PickupId
Abstract
no
Documentation
ID referring to a pickup.
A PickupId is generated by the server when the client calls the
startPickup
operation. It is unique for the client in that the same ID is never used by the
server to refer to different pickups if used by the same client. It may only be
valid for the client that started the pickup. If a different client uses the ID
the server may raise an
UnknownIdFault
or interpret it as referring to a different pickup. The server must invalidate
the ID once the pickup is closed by a call to
closePickup
and may invalidate it if the ID is not used for some time (if, for example, the
client has quit unexpectedly and forgotten about the pickup). In both cases, the
server must raise an
UnknownIdFault
if the client uses the ID again.
A PickupId may be seen as the "Session ID" of a typical web application. The
client starts the session with
startPickup
, and the session is either closed regularly with
closePickup
or it expires when the ID is not used by the client for some time.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
PickupId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
Id
< PickupOrderId (by extension)
Sub-types:
None
Name
PickupOrderId
Abstract
no
Documentation
ID referring to a pickup order which consists of one or more packs.
For pickup deliveries the pharmacist puts together the packs belonging to a
pickup into a single pickup order. The pickup order is requested through the
Order interface as a whole. The PS is responsible for maintaining the pickup
orders and matching the pickupOrderIds to packs that have to be ordered.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
PickupOrderId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Complex Type: PosId
Super-types:
Id
< PosId (by extension)
Sub-types:
None
Name
PosId
Abstract
no
Documentation
ID identifying the POS making web service calls to the PS.
This ID is used to distinguish between several POSes which are connected to a single PS.
If PosIds are used to identify the POS, they are transmitted by the POS in every web
service call where the caller identity cannot be derived from another ID.
Other than the other ID types, the content of the code attribute is not generated by the server, but must be
previously agreed upon between client and server. It is usually stored in the configuration
files.
Note that using the PosId type does not really provide authentication. To securely establish
the identity of the client (and server) other mechanisms like TLS on the transport level
or WS-Security should be used.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
PosId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
Position
Abstract
no
Documentation
Element that associates a PositionId with the corresponding data of the position.
Schema Component Representation
<
xsd:complexType name ="
Position ">
<
xsd:sequence >
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
PositionData
Abstract
no
Documentation
A position represents an article in a sale (or pickup) with information specific to
this sale. The position type additionally contains basic article information such as
name and manufacturer so that the client can display the position without requesting
further article information through an article search.
XML Instance Representation
<...>
<name>
xsd :string </name>
[1] ?
<manufacturer>
xsd :string </manufacturer>
[0..1] ?
<amount>
xsd :unsignedLong </amount>
[1] ?
<delivered>
xsd :unsignedLong </delivered>
[1] ?
<articlePrice>
xsd :unsignedLong </articlePrice>
[1] ?
<positionPrice>
xsd :unsignedLong </positionPrice>
[1] ?
<vatRate>
xsd :decimal </vatRate>
[1] ?
<pharmaceutic>
[0..1] ?
<indicationOfUse>
xsd :string </indicationOfUse>
[0..1] ?
</pharmaceutic>
</...>
Schema Component Representation
<
xsd:complexType name ="
PositionData ">
<
xsd:sequence >
<
xsd:element name ="
name "
type ="
xsd :string
"/>
<
xsd:element name ="
manufacturer "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
amount "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
delivered "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
articlePrice "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
positionPrice "
type ="
xsd :unsignedLong
"/>
<
xsd:element name ="
vatRate "
type ="
xsd :decimal
"/>
<
xsd:element name ="
pharmaceutic "
maxOccurs ="
1 "
minOccurs ="
0 ">
<
xsd:complexType >
<
xsd:sequence >
<
xsd:element name ="
indicationOfUse "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
</
xsd:element >
</
xsd:sequence >
</
xsd:complexType >
Super-types:
Id
< PositionId (by extension)
Sub-types:
None
Name
PositionId
Abstract
no
Documentation
ID referring to a single position in a sale. The ID must be unique only for the sale
in which it is used.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
PositionId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
PospsProfile
Abstract
no
Documentation
Denotation of a profile or "functionality subset" supported by a posps server.
XML Instance Representation
<...>
<name>
xsd :token </name>
[1] ?
<countryCode>
xsd :token </countryCode>
[1..*] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PospsProfile ">
<
xsd:sequence >
<
xsd:element name ="
name "
type ="
xsd :token
"/>
<
xsd:element name ="
countryCode "
type ="
xsd :token
"
maxOccurs ="
unbounded "
minOccurs ="
1 "/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
PospsServerProduct
Abstract
no
Documentation
Identification of a posps server implementation.
XML Instance Representation
<...>
<productName>
xsd :string </productName>
[1] ?
<productVersion>
xsd :string </productVersion>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PospsServerProduct ">
<
xsd:sequence >
<
xsd:element name ="
productName "
type ="
xsd :string
"/>
<
xsd:element name ="
productVersion "
type ="
xsd :string
"/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
PospsVersion
Abstract
no
Documentation
Version number format convention used for the posps interface and profiles.
XML Instance Representation
<...>
<major>
xsd :unsignedInt </major>
[1] ?
<minor>
xsd :unsignedInt </minor>
[1] ?
<revision>
xsd :unsignedInt </revision>
[1] ?
<tag>
xsd :token </tag>
[0..1] ?
<additionalInfo>
xsd :string </additionalInfo>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PospsVersion ">
<
xsd:sequence >
<
xsd:element name ="
major "
type ="
xsd :unsignedInt
"/>
<
xsd:element name ="
minor "
type ="
xsd :unsignedInt
"/>
<
xsd:element name ="
revision "
type ="
xsd :unsignedInt
"/>
<
xsd:element name ="
tag "
type ="
xsd :token
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
additionalInfo "
type ="
xsd :string
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
Prescription
Abstract
no
Documentation
Element which associates a PrescriptionId with the corresponding data of the
prescription.
Schema Component Representation
<
xsd:complexType name ="
Prescription ">
<
xsd:sequence >
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
PrescriptionCountrySpecific
Abstract
yes
Documentation
Abstract base type for county-specific prescription information.
Super-types:
None
Sub-types:
None
Name
PrescriptionData
Abstract
no
Documentation
Information about a prescription on which a pharmacist prescribes articles to a
patient that may be sold at the POS. The prescription type only contains information
relevant to the sale. Additional information, which may have to be recorded by the
pharmacist to later settle the prescription, is not covered in the interface
specification.
XML Instance Representation
<...>
<date>
xsd :date </date>
[0..1] ?
<validUntil>
xsd :date </validUntil>
[0..1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PrescriptionData ">
<
xsd:sequence >
<
xsd:element name ="
patientId "
type ="
pptype :PersonId
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
physicianId "
type ="
pptype :PersonId
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
date "
type ="
xsd :date
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
<
xsd:element name ="
validUntil "
type ="
xsd :date
"
maxOccurs ="
1 "
minOccurs ="
0 "/>
</
xsd:sequence >
</
xsd:complexType >
Name
PrescriptionDE
Abstract
no
Documentation
Prescription information relevant to prescriptions written out in Germany.
XML Instance Representation
<...>
<rezeptart>
xsd :string (value comes from list: {'gkv'|'privat'|'gruen'|'other'}) </rezeptart>
[1] ?
<gebuehrenfrei>
xsd :boolean </gebuehrenfrei>
[1] ?
<kinderrezept>
xsd :boolean </kinderrezept>
[1] ?
<noctu>
xsd :boolean </noctu>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
PrescriptionDE ">
<
xsd:complexContent >
<
xsd:extension base ="
pptype :PrescriptionCountrySpecific
">
<
xsd:sequence >
<
xsd:element name ="
rezeptart ">
<
xsd:simpleType >
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="gkv "/>
<xsd:enumeration value ="privat "/>
<xsd:enumeration value ="gruen "/>
<xsd:enumeration value ="other "/>
</
xsd:restriction >
</
xsd:simpleType >
</
xsd:element >
<
xsd:element name ="
gebuehrenfrei "
type ="
xsd :boolean
"/>
<
xsd:element name ="
kinderrezept "
type ="
xsd :boolean
"/>
<
xsd:element name ="
noctu "
type ="
xsd :boolean
"/>
</
xsd:sequence >
</
xsd:extension >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
Id
< PrescriptionId (by extension)
Sub-types:
None
Name
PrescriptionId
Abstract
no
Documentation
ID referring to a single prescription in a sale. The ID must be unique only for the
sale in which it is used.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
PrescriptionId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
PrintMarkup
Abstract
yes
Documentation
Base type for content which is to be printed on a receipt printer. There are no
content restrictions on this base type.
Application Data
<jaxb :dom/>
Complex Type: Sale
Super-types:
None
Sub-types:
None
XML Instance Representation
<...>
<pickup/> [0..1]
<payment>
[0..*]
</payment>
</...>
Schema Component Representation
<
xsd:complexType name ="
Sale ">
<
xsd:sequence >
<
xsd:element name ="
position "
type ="
pptype :Position
"
minOccurs ="
0 "
maxOccurs ="
unbounded "/>
<
xsd:element name ="
person "
type ="
pptype :Person
"
minOccurs ="
0 "
maxOccurs ="
unbounded "/>
<
xsd:element name ="
prescription "
type ="
pptype :Prescription
"
minOccurs ="
0 "
maxOccurs ="
unbounded "/>
<
xsd:element name ="
note "
type ="
pptype :Note
"
minOccurs ="
0 "
maxOccurs ="
unbounded "/>
<
xsd:element name ="
operator "
type ="
pptype :Operator
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
<
xsd:element name ="
customerId "
type ="
pptype :PersonId
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
<
xsd:element name ="
pickup "
minOccurs ="
0 "
maxOccurs ="
1 ">
<xsd:complexType />
</
xsd:element >
<
xsd:element name ="
shipToId "
type ="
pptype :PersonId
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
<
xsd:element name ="
payment "
minOccurs ="
0 "
maxOccurs ="
unbounded ">
<
xsd:complexType >
<
xsd:sequence >
<
xsd:element name ="
canceled "
type ="
pptype :Empty
"
minOccurs ="
0 "
maxOccurs ="
1 "/>
</
xsd:sequence >
</
xsd:complexType >
</
xsd:element >
</
xsd:sequence >
</
xsd:complexType >
Complex Type: SaleId
Super-types:
Id
< SaleId (by extension)
Sub-types:
None
Name
SaleId
Abstract
no
Documentation
ID referring to a single sale.
A SaleId is generated by the server when the client calls the
startSale
operation. It is unique for the client in that the same ID is never used by the
server to refer to different sales if used by the same client. It may only be
valid for the client that started the sale. If a different client uses the ID,
the server may raise an
UnknownIdFault
or interpret it as referring to a different sale. The server must invalidate the
ID once the sale is closed by a call to
closeSale
and may invalidate it if the ID is not used for some time (if, for example, the
client has quit unexpectedly and forgotten about the sale). In both cases, the
server must raise an
UnknownIdFault
if the client uses the ID again.
A SaleId may be seen as the "Session ID" of a typical web application. The
client starts the session with
startSale
, and the session is either closed regularly with
closeSale
or it expires when the ID is not used by the client for some time.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
SaleId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
SearchResult
Abstract
no
Documentation
Contains a part or all of the result of a search for articles or persons.
Since the result set of a search may be large, returning it in a single web
service call might be too slow and resource-intensive. Therefore, a result can
be split over several
SearchResult
elements that can be fetched by the client one by one by calls to
getNext
. Search result elements are returned sequencially in the order which the client
has specified in the search, and no element may appear twice.
XML Instance Representation
<...>
<previous>
xsd :unsignedLong </previous>
[1] ?
<remaining>
xsd :unsignedLong </remaining>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
SearchResult ">
<
xsd:sequence >
<
xsd:element name ="
previous "
type ="
xsd :unsignedLong
"
nillable ="
true "/>
<
xsd:element name ="
remaining "
type ="
xsd :unsignedLong
"
nillable ="
true "/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
Name
SearchResultElement
Abstract
yes
Documentation
Abstract base type for elements of a search result. Each element matches the
conditions set by the client in a
search*
call.
Super-types:
Id
< SearchResultId (by extension)
Sub-types:
None
Name
SearchResultId
Abstract
no
Documentation
ID referring to a search result that is used by the Search port type operations.
A SearchResultId is generated by the server when the client calls one of the
search*
operations and the search result returned is not complete. It is unique for the
client in that the same ID is never used by the server to refer to different
search results if used by the same client. It may only be valid for the client
that started the search. If a different client uses the ID the server may raise
an
UnknownIdFault
or interpret it as referring to a different search result. The server may
invalidate a SearchResultId if the ID is not used for some time (if, for
example, the client has quit unexpectedly and forgotten about the search). In
this case, the server must raise an
UnknownIdFault
if the client uses the ID again. IDs may also become invalid when the client
calls certain operations. See the operation documentation for details.
XML Instance Representation
<...
code="
xsd :token (length >= 1) (Whitespace policy:
collapse ) [1] ? " />
Schema Component Representation
<
xsd:complexType name ="
SearchResultId ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Complex Type: Total
Super-types:
None
Sub-types:
None
Name
Total
Abstract
no
Documentation
Information on the total price that the customer has to pay for this sale/pickup.
XML Instance Representation
<...>
<total>
xsd :unsignedLong </total>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
Total ">
<
xsd:sequence >
<
xsd:element name ="
charge "
type ="
pptype :Charge
"
maxOccurs ="
unbounded "
minOccurs ="
0 "/>
<
xsd:element name ="
vat "
type ="
pptype :Vat
"
maxOccurs ="
unbounded "
minOccurs ="
0 "/>
<
xsd:element name ="
total "
type ="
xsd :unsignedLong
"/>
</
xsd:sequence >
</
xsd:complexType >
Super-types:
None
Sub-types:
None
Name
TrackingId
Abstract
no
Documentation
ID for tracking an order that the client has placed using the Order port type.
XML Instance Representation
<...>
Start Choice [1]
End Choice
</...>
Schema Component Representation
<
xsd:complexType name ="
TrackingId ">
<
xsd:choice >
</
xsd:choice >
</
xsd:complexType >
Complex Type: Vat
Super-types:
None
Sub-types:
None
Name
Vat
Abstract
no
Documentation
Information on the amount of value added tax (VAT) included in a price.
XML Instance Representation
<...>
<vatRate>
xsd :decimal </vatRate>
[1] ?
<price>
xsd :unsignedLong </price>
[1] ?
</...>
Schema Component Representation
<
xsd:complexType name ="
Vat ">
<
xsd:sequence >
<
xsd:element name ="
vatRate "
type ="
xsd :decimal
"/>
<
xsd:element name ="
price "
type ="
xsd :unsignedLong
"/>
</
xsd:sequence >
</
xsd:complexType >
Complex Type: Web
Super-types:
xsd :string <
Contact
(by extension) < Web (by extension)
Sub-types:
None
XML Instance Representation
<...
type="
xsd :string (value comes from list: {'home'|'office'|'mobile'|'other'}) [0..1] " >
xsd :string
</...>
Schema Component Representation
<
xsd:complexType name ="
Web ">
<
xsd:complexContent >
</
xsd:complexContent >
</
xsd:complexType >
Super-types:
xsd :string < ChargeKind (by restriction)
Sub-types:
None
Name
ChargeKind
Content
value comes from list: {'shipment'|'night_duty'|'voucher'|'rebate'|'other'}
Documentation
Enumeration of types of charges.
shipment
Charge for shipping the packs to the customer if he does not pick
them up at the POS.
night_duty
Charge for serving the customer outside of the usual business hours.
voucher
A rebate given for cashing in some form of voucher.
rebate
General rebate.
other
A different form of charge/rebate not covered.
Schema Component Representation
<
xsd:simpleType name ="
ChargeKind ">
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="shipment "/>
<xsd:enumeration value ="night_duty "/>
<xsd:enumeration value ="voucher "/>
<xsd:enumeration value ="rebate "/>
<xsd:enumeration value ="other "/>
</
xsd:restriction >
</
xsd:simpleType >
Super-types:
xsd :string < Direction (by restriction)
Sub-types:
None
Name
Direction
Content
value comes from list: {'ascending'|'descending'}
Documentation
Enumeration of ordering directions.
Schema Component Representation
<
xsd:simpleType name ="
Direction ">
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="ascending "/>
<xsd:enumeration value ="descending "/>
</
xsd:restriction >
</
xsd:simpleType >
Super-types:
xsd :string < Institutionskennzeichen (by restriction)
Sub-types:
None
Name
Institutionskennzeichen
Content
pattern = ([0-9]{2})?[0-9]{7}
Documentation
German institution code
for health insurances and other institutions working in the
social area. The institution code is a 9-digit number where the first two digits
are the classification of the institution. Since this is always "10" for health
insurances, this type also allows a 7-digit health insurance code, where the
initial "10" of the Institutionskennzeichen is left out.
Schema Component Representation
<
xsd:simpleType name ="
Institutionskennzeichen ">
<
xsd:restriction base ="
xsd :string
">
<xsd:pattern value ="([0-9]{2})?[0-9]{7} "/>
</
xsd:restriction >
</
xsd:simpleType >
Super-types:
xsd :string < Normpackungsgroesse (by restriction)
Sub-types:
None
Name
Normpackungsgroesse
Content
value comes from list: {'unknown'|'none'|'N1'|'N2'|'N3'}
Schema Component Representation
<
xsd:simpleType name ="
Normpackungsgroesse ">
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="unknown "/>
<xsd:enumeration value ="none "/>
<xsd:enumeration value ="N1 "/>
<xsd:enumeration value ="N2 "/>
<xsd:enumeration value ="N3 "/>
</
xsd:restriction >
</
xsd:simpleType >
Super-types:
xsd :string < PersonRole (by restriction)
Sub-types:
None
Name
PersonRole
Content
value comes from list: {'customer'|'patient'|'physician'}
Documentation
Enumeration of the roles a
Person
can have in the context of the interface specification.
customer
A customer served by the POS
patient
A person who is prescribed an article by a physician and who appears on the
prescription.
physician
A physician who prescribes articles to patients.
Schema Component Representation
<
xsd:simpleType name ="
PersonRole ">
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="customer "/>
<xsd:enumeration value ="patient "/>
<xsd:enumeration value ="physician "/>
</
xsd:restriction >
</
xsd:simpleType >
Super-types:
xsd :string < PickupStatus (by restriction)
Sub-types:
None
Name
PickupStatus
Content
value comes from list: {'available'|'not_yet_available'|'unavailable'|'already_picked_up'}
Documentation
Enumeration of the states in which a pickup can be. A pickup can only be continued
if it is in the state
available
.
available
The pickup order is available for immediate pickup.
not_yet_available
The pickup packs are not yet put together by the pharmacist and the customer
should try again later.
unavailable
There is a problem with the pickup and the customer should contact the
pharmacist to resolve it.
already_picked_up
The pickup order for this pickup code has already been delivered.
Schema Component Representation
<
xsd:simpleType name ="
PickupStatus ">
<
xsd:restriction base ="
xsd :string
">
<xsd:enumeration value ="available "/>
<xsd:enumeration value ="not_yet_available "/>
<xsd:enumeration value ="unavailable "/>
<xsd:enumeration value ="already_picked_up "/>
</
xsd:restriction >
</
xsd:simpleType >
Simple Type: Pzn
Super-types:
xsd :string < Pzn (by restriction)
Sub-types:
None
Name
Pzn
Content
pattern = [a-zA-Z0-9]{7,20}
Schema Component Representation
<
xsd:simpleType name ="
Pzn ">
<
xsd:restriction base ="
xsd :string
">
<xsd:pattern value ="[a-zA-Z0-9]{7,20} "/>
</
xsd:restriction >
</
xsd:simpleType >
Super-types:
None
Sub-types:
None
Name
PznList
Content
Documentation
List of Pharmazentralnummern.
Schema Component Representation
<
xsd:simpleType name ="
PznList ">
</
xsd:simpleType >
Complex Type:
Schema Component Type
AusAddress
Schema Component Name
Super-types:
Address < AusAddress (by extension)
Sub-types:
QLDAddress (by restriction)
If this schema component is a type definition, its type hierarchy is shown in a gray-bordered box.
The table above displays the properties of this schema component.
XML Instance Representation
<...
country="Australia "
>
<unitNo> string </unitNo> [0..1]
<houseNo> string </houseNo> [1]
<street> string </street> [1]
Start Choice
[1]
<city> string </city> [1]
<town> string </town> [1]
End Choice
<state> AusStates </state> [1]
<postcode> string <<pattern = [1-9][0-9]{3}>> </postcode> [1]
?
</...>
The XML Instance Representation table above shows the schema component's content as an XML instance.
The minimum and maximum occurrence of elements and attributes are provided in square brackets, e.g. [0..1].
Model group information are shown in gray, e.g. Start Choice ... End Choice.
For type derivations, the elements and attributes that have been added to or changed from the base type's content are shown in bold .
If an element/attribute has a fixed value, the fixed value is shown in green, e.g. country="Australia".
Otherwise, the type of the element/attribute is displayed.
If the element/attribute's type is in the schema, a link is provided to it.
For local simple type definitions, the constraints are displayed in angle brackets, e.g. <<pattern = [1-9][0-9]{3}>>.
If a local element/attribute has documentation, it will be displayed in a window that pops up when the question mark inside the attribute or next to the element is clicked, e.g. <postcode>.
Schema Component Representation
<complexType
name ="AusAddress ">
<complexContent >
<extension
base ="
Address
">
<sequence >
<element
name ="state " type ="
AusStates
"/>
<element
name ="postcode ">
<simpleType >
<restriction
base ="
string
">
<pattern
value ="[1-9][0-9]{3} "/>
</restriction >
</simpleType >
</element >
</sequence >
<attribute
name ="country " type ="
string
" fixed ="Australia "/>
</extension >
</complexContent >
</complexType >
The Schema Component Representation table above displays the underlying XML representation of the schema component. (Annotations are not shown.)
Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.
All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all .
Choice Model Group
Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice .
Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.
Disallowed Substitutions (Applies to element declarations). If substitution is specified, then substitution group members cannot be used in place of the given element declaration to validate element instances. If derivation methods , e.g. extension, restriction, are specified, then the given element declaration will not validate element instances that have types derived from the element declaration's type using the specified derivation methods. Normally, element instances can override their declaration's type by specifying an xsi:type
attribute.
Key Constraint Like Uniqueness Constraint , but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions .
Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint . See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions .
Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups .
Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil
attribute. The xsi:nil
attribute is the boolean attribute, nil , from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil
attribute set to true, it can be left empty, even though its element declaration may have required content.
Notation A notation is used to identify the format of a piece of data. Values of elements and attributes that are of type, NOTATION, must come from the names of declared notations. See: http://www.w3.org/TR/xmlschema-1/#cNotation_Declarations .
Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.
Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.
Prohibited Substitutions (Applies to complex type definitions). Prevents sub-types that have been derived using the specified derivation methods from validating element instances in place of the given type definition.
Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).
Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence .
Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.
Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.
Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.
Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions .