XML Schema Browser - pushAdminMessage Version 500

Schema Documentation of
pushAdminMessage V500

produced by the standardization body
Forum Datenaustausch

Permission to use, and distribute this schema and its accompanying documentation for any purpose and without fee is hereby granted in perpetuity, provided that the above copyright notice and this paragraph appear in all copies and the schema file is not altered.

The copyright holders make no representation about the suitability of the schema for any purpose.

It is provided "as is" without expressed or implied warranty.
The Forum Datenaustausch has endorsed this schema
as a standard at its meeting on 27th November 2024.

The standard becomes applicable on 1st January 2026.

Copyright (©) by Forum Datenaustausch, 27.11.2024 - all rights reserved


Revision history of the documentation

Documentation of pushAdminMessage_500.xsd

Copyright (©) by Forum Datenaustausch, 27.11.2024
All rights reserved

Revision history of the documentation

The following reversed chronological list shows the revision history of this documentation.

The revision history defines the time evolution of the documentation in the sense of a more precise phrasing and/or added parts.
However, the underlying pushAdminMessage_500.xsd schema is not changed due to such an entry.
  • Revision 1 from 27.11.2024 (initial version)


Revision history: Documentation of Revision 1

Documentation of Revision 1

Rev. 1/27.11.2024: the following subparts of the documentation have been refined and/or added:
  • Initial documentation of the pushAdminMessage_500.xsd schema


Preface

Preface

Audience of this documentation
The target audience of this documentation are primarily software developers of the Swiss healthcare sector.
An understanding of Swiss healthcare concepts (e.g. Tiers garant vs. Tiers payant and the like) as well as at least a basic knowledge about XSD schemas is presumed to be known.
How to use this documentation
There are two different views of this documentation.
  • the Hierarchical list view starts from the topmost object. By selecting a shown element one can explore the whole schema space in a recursive descent approach.
  • the Alphabetical list view is for those who are already familiar with the overall structure and concepts. As the name implies one can select from an alphabetical list of elements.

Comments and questions
Please address comments and questions concerning this documentation via either the website Forum Datenaustausch or the email address info@forum-datenaustausch.ch


Forum Datenaustausch

Forum Datenaustausch

Der Verein "Forum Datenaustausch" (FoDa) fördert den effizienten und sicheren digitalen Datenaustausch zwischen Leistungserbringern und Kostenträgern im administrativen Gesundheitswesen. Er tut dies, indem er sich für folgende, grundsätzliche Ziele einsetzt:
  • Leistungserbringer und Kostenträger nutzen für die digitale Kommunikation untereinander die gleichen, gemeinsam entwickelten und festgelegten Standards.
  • Die digitale Kommunikation zwischen Leistungserbringern und Kostenträger ist sicher, verlässlich und Datenschutzkonform. Sie fördert die Effizienz der Prozesse und ist für alle Partner mit einem positiven Kosten-/Nutzenverhältnis verbunden.

Mitglieder des Forums sind nationale Verbände und Organisationen der Leistungserbringer und der Kostenträger, sowie Körperschaften und Anstalten des öffentlichen Rechts. Hier finden Sie die aktuelle Mitgliederliste.

Die vom Forum Datenaustausch freigegebenen Standards bzw. neue Standard-Versionen, wie die XML-Nachrichten zum elektronischen Datenaustausch, werden hier publiziert.
L'association "Forum Datenaustausch" (FoDa) promeut un échange de données numériques efficace et sûr entre les fournisseurs de prestations et les organismes payeurs dans le domaine administratif de la santé. Pour ce faire, elle s'engage en faveur des objectifs fondamentaux suivants:
  • Les fournisseurs de prestations et les organismes payeurs utilisent les mêmes normes, développées et définies en commun, pour la communication numérique entre eux.
  • La communication numérique entre les fournisseurs de prestations et les organismes payeurs est sûre, fiable et conforme à la protection des données. Elle favorise l'efficacité des processus et est liée à un rapport coûts/bénéfices positif pour tous les partenaires.

Les membres du forum sont des associations nationales et des organisations de prestataires de services et de payeurs, ainsi que des collectivités et des établissements de droit public. Vous trouverez ici la liste actuelle des membres.

Les normes validées par le forum ou les nouvelles versions de normes, comme les messages XML pour l'échange électronique de données, sont publiées ici.


Copyright (©) notice

Copyright (©) notice

This is a normative standard for the Swiss Public Health Service

Permission to use, and distribute this schema and its accompanying documentation for any purpose and without fee is hereby granted in perpetuity, provided that the above copyright notice and this paragraph appear in all copies and this schema file is not altered. The copyright holders make no representation about the suitability of the schema for any purpose.

It is provided "as is" without expressed or implied warranty.


Purpose of the schema file

Purpose of the schema file

This is the schema definition for a message parsing system for administrative data named "pushAdminMessage" (PAM) encoded in XML. The content is as the name implies an administrative message e.g. a treatment start or end message.

It is a design goal to keep the standard minimal and thus to guarantee a very low-threshold and agile implementation. Furthermore, there is no "response" to a previously sent administrative message.

This is normative for the electronic push messaging of administrative data.

Permission to use, and distribute this schema and its accompanying documentation for any purpose and without fee is hereby granted in perpetuity, provided that the above copyright notice and this paragraph appear in all copies and this schema file is not altered.

The copyright holders make no representation about the suitability of the schema for any purpose. It is provided "as is" without expressed or implied warranty.

Copyright (c) 2024 Forum Datenaustausch, http://www.forum-datenaustausch.ch
All Rights Reserved.


Conventions, terms, and definitions used

Conventions, terms, and definitions used

This paragraph describes the conventions, terms, and definitions used in the documentation of the XSD schema files. It is assumed that the reader has at least a basic understanding of XSD schemas. Therefore, if there is an ambiguous description or insufficient documentation regarding the XSD schemas itself, you need to look up the official XSD schema definitions at W3C at http://www.w3c.org, this is especially true when using the signature and encryption mechanism.

Character entities
Since some characters in a XML infoset are forbidden these characters must be encoded via character entities. The table shows these special characters and their character entity counterparts.
& => &amp;
' => &apos;
> => &gt;
< => &lt;
" => &quot;

Basic XSD data types used
boolean | boolean has the value space required to support the mathematical concept of binary-valued logic: {true, false}. An instance of a data type that is defined as boolean can have the following legal literal value {true, false, 1, 0}.
double | The double data type corresponds to IEEE double-precision 64-bit floating point type [IEEE 754-1985]. The basic value space of double consists of the values m x 2^e, where m is an integer whose absolute value is less than 2^53, and e is an integer between -1075 and 970, inclusive.
enumeration | enumeration constrains the value space to a specified set of values.
int | int is derived from a 32bit integer by setting the value of maxInclusive and minInclusive to be 2147483647 and -2147483648.
NMTOKEN | NMTOKEN represents a token concept. The value space of NMTOKEN is the set of tokens (strings) that match the production.
pattern | pattern is a constraint on the value space of a data type, which is achieved by constraining the lexical space to literals, which match a specific pattern. The value of pattern must be a regular expression.
string | The string data type represents character strings. The value space of string is the set of finite-length sequences of characters. A character is an atomic unit of communication.


Anatomy of a request

Anatomy of a request

The following figure shows the various building blocks, their meanings and dependencies on each other, that eventually form a request.
The building block payload is the container that holds the explicit data.
The building block body is the data container. If encryption is used the container body is the target and will be replaced by the encrypted data xenc:EncryptedData
The building block ds:Signature holds the Signature data, whereas the container payload defines the signed part
Please note, that from a principle point of view these building blocks apart from processing are once generated unchangeable. Since the intermediate must include routing information or external institutions must validate the data, the processing block is outside the signature and encryption area and thus changeable.


Notes about the signature

Notes about the signature

XML signatures are digital signatures designed for use in XML transactions. The W3C standard defines a schema for capturing the result of a digital signature operation applied to an infoset. XML signatures add authentication, data integrity, and support for non-repudiation to the data that they sign.
However, it is beyond the scope of this documentation to explain all details of a signature or the signing process. Detailed information about all aspects of signatures can be found at W3C.

Boundary conditions and critical aspects
  • the signature is optional!
  • if an infoset is signed then the private certificate of the sender must be used and this certificate is applied to the payload element. This inherently qualifies for a detached signature.
    sender is used here in terms of the communication and therefore is defined as the GLN given in the transport@from attribute.
  • the URI attribute of the reference element must use a XPointer syntax of the payload element, e.g. <ds:Reference URI="#xpointer(/pam:request/pam:payload)">
  • The signature algorithm is fixed to PKCS1 (RSA-SHA256) (RFC 2437: RSA Cryptography Specifications)
  • The digest algorithm is fixed to SHA-256
  • the used canonicalization algorithm must be http://www.w3.org/2010/xml-c14n2, the exclusive XML Canonicalization
  • it is recommended to add the public key via the X509Data element such that a key store can be built at the recipient's site.

As an example the Signature element looks like
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">>
 <SignedInfo>
  <CanonicalizationMethod Algorithm="http://www.w3.org/2010/xml-c14n2"/>
  <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
  <Reference URI="#xpointer(/pam:request/pam:payload)">
   <DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
   <DigestValue>...</DigestValue>
  </Reference>
 </SignedInfo>
 <SignatureValue>...</SignatureValue>
 <KeyInfo>
  <X509Data>
  <X509Certificate>...</X509Certificate>
  </X509Data>
 </KeyInfo>
</Signature>


Notes about the encryption

Notes about the encryption

XML Encryption is a specification, governed by a W3C recommendation, that defines how to encrypt the contents of an XML element. Although XML Encryption can be used to encrypt any kind of data, it is nonetheless known as "XML Encryption" because an XML element (either an EncryptedData or EncryptedKey element) contains or refers to the cipher text, keying information, and algorithms.
XML Encryption uses the KeyInfo element, which appears as the child of a EncryptedData element and provides information to a recipient about what keying material to use in decrypting encrypted data.

However, it is beyond the scope of this documentation to explain all details of a encryption or the encryption process. Detailed information about all aspects of encryption can be found at W3C.

Boundary conditions and critical aspects
  • The encryption is optional!
  • if an infoset is encrypted then the public certificate of the recipient must be used and this certificate is applied to the body element.
    recipient is used here in terms of the communication and therefore is defined as the GLN given in the transport@to attribute
  • The used X509 certificate for encryption must be the one with the highest serial number received by the counterpart XML so far.
    This allows for a seamless transfer to new certificates.
  • W3C's namespace http://www.w3.org/2001/04/xmlenc must be used - cf. XML Encryption Syntax and Processing
  • The encryption algorithm is fixed to RSA-OAEP (including MGF1 and SHA1)
  • The block encryption algorithm is fixed to AES256-GCM
  • It is highly recommended to supply a comma separated serialization of the issuer (in X509 canonical form) and serial number of the public certificate in the <KeyName> element. This allows the recipient to identify the used public certificate prior the decryption process.
    This information becomes essential as soon as the validity of one certificate is running out and a new one is propagated.

As an example the EncryptedData element looks like
<EncryptedData xmlns="http://www.w3.org/2001/04/xmlenc#" Type="http://www.w3.org/2001/04/xmlenc#Element">
   <EncryptionMethod Algorithm="http://www.w3.org/2009/xmlenc11#aes256-gcm"/>
   <ds:KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
      <EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#">
         <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p">
           <OAEPparams>...</OAEPparams>
         </EncryptionMethod>
         <ds:KeyInfo>
            <ds:KeyName>C=CH, S=ZH, L=Zurich, O=Health Insurance Company, OU=HI Manager App, serial=4E55FF58</ds:KeyName>
         </ds:KeyInfo>
         <CipherData>
            <CipherValue>...(asymmetrically encrypted key)...</CipherValue>
         </CipherData>
      </EncryptedKey>
   </ds:KeyInfo>
   <CipherData>
      <CipherValue>...(symmetrically encrypted content)...</CipherValue>
   </CipherData>
</EncryptedData>


Sequence of Sign & Crypt...

Sequence of Sign & Crypt...

The signature and encryption boundary conditions are in detail documented in the subchapters «Purpose::Signature» and «Purpose::Encryption».
However, if both the signature and encryption processes are applied to a XML infoset it is of uttermost importance to apply the correct sequence of operation.

Sequence of operation
  1. the signature process is applied to the raw XML infoset
  2. the encryption process is applied to the signed XML infoset
Of course, the sequence of operation is reversed when a signed and encrypted XML infoset is loaded.
This sequence is required and must be obeyed otherwise the
decryption and the check of the signature validity is at risk!


Preamble of schema file

Preamble of schema file

The preamble of the schema file is defined as follows:
<schema targetNamespace="http://www.forum-datenaustausch.ch/pam"
        xmlns="http://www.w3.org/2001/XMLSchema"
        xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
        xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
        xmlns:pam="http://www.forum-datenaustausch.ch/pam"
        elementFormDefault="qualified" attributeFormDefault="unqualified">
From this definition it is evident that all elements must be qualified that is defined with the namespace tag pam followed by the element name. Furthermore, the target namespace and the specific namespace pam maps to http://www.forum-datenaustausch.ch/pam.
The xenc and ds namespaces are used by the encryption and signature elements which can optionally be used in an infoset.

Therefore, to define a correct XML infoset the elements must be defined like the following XML code snippet (for german as data language):
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<pam:request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
        xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
        xmlns:pam="http://www.forum-datenaustausch.ch/pam"
        xmlns="http://www.forum-datenaustausch.ch/pam"
        xsi:schemaLocation="http://www.forum-datenaustausch.ch/pam pushAdminMessage_500.xsd"
        language="de" modus="production" validation_status="0" >
XML elements go here...

 </pam:request>


Hierarchical list of used XSD definitions

Hierarchical list of used XSD definitions

The following subchapters list all XSD definitions of the schema in hierarchical order going from the topmost element request down as the appropriate definition is encountered.


element request

Annotation The request element is the root of the pushAdminMessage process.
The request is divided into 2 parts
  • the processing element supplies the necessary data for the transport
  • the payload element supplies the message parsing data
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:requestType
properties
content complex
children | pam:processing pam:payload ds:Signature
attributes parameters
Name | Type | Use | Default | Fixed
language | derived by: NMTOKEN | required
modus | derived by: NMTOKEN | production
guid | pam:guidType | required
attributes annotations
Name Notes
language language defines the used data language (name of the services etc.) encoded by a terminal set of ISO language specifiers. All responses will be encoded in the same language.
  • de: the data language is german
  • fr: the data language is french
  • it: the data language is italian
modus modus defines the operating modus encoded by a terminal set of tokens
  • production: the modus production (default value) is for normal processing
  • test: the modus test is for software developers to test the processing
    By definition there must not be any money flow!
guid the required guid (Globally Unique IDentifier) is an unique identifier for the current XML infoset defined as a 32 hex-digit string covered by the pattern [A-Fa-f0-9]{32}.
Please note that the generation of the guid must be in accordance with RFC 9562.
attributes enumerations
Name | Extension | Base | Value | Annotations
language | NMTOKEN | de | the data language is german
language | NMTOKEN | fr | the data language is french
language | NMTOKEN | it | the data language is italian
modus | NMTOKEN | production | the modus production (default value) is for normal processing
modus NMTOKEN test the modus test is for software developers to test the processing
By definition there must not be any money flow!
source | <element name="request" type="pam:requestType"/>


element requestType/processing

Annotation | The processing element is a container for processing instructions primarely at an intermediate's site.
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:processingType
properties
isRef | 0
content | complex
children | pam:transport
source | <element name="processing" type="pam:processingType"/>


element processingType/transport

Annotation | The transport element defines the routing of the infoset going from a sender party over any number of intermediates to a receiver party. All the involved parties are defined by Global Location Numbers (GLN) as defined by RefData
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:transportType
properties
isRef | 0
content | complex
children | pam:via
attributes parameters
Name | Type | Use | Default | Fixed
from | pam:glnPartyType | required
to | pam:glnPartyType | required
source | <element name="transport" type="pam:transportType"/>


element transportType/via

Annotation
diagram
namespace http://www.forum-datenaustausch.ch/pam
properties
isRef | 0
minOcc | 0
maxOcc | unbounded
content | complex
attributes parameters
Name | Type | Use | Default | Fixed
via | pam:glnPartyType | required
sequence_id | unsignedShort | required
attributes annotations
Name | Notes
via | via is the GLN of an intermediate
sequence_id | sequence_id is a sequence number starting with 1 that defines a certain intermediate hop. In each new via element the sequence number is increased by 1 thus forming a chain of intermediate hops
source <element name="via" minOccurs="0" maxOccurs="unbounded">
<complexType>
<attribute name="via" type="pam:glnPartyType" use="required"/>
<attribute name="sequence_id" type="unsignedShort" use="required"/>
</complexType>
</element>


element requestType/payload

Annotation | The payload element supplies the invoice/reminder data and will not be altered in the transport process. The payload can optionally be signed by at W3C signing process.
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:payloadType
properties
isRef | 0
content | complex
children | pam:body xenc:EncryptedData
source | <element name="payload" type="pam:payloadType"/>


element payloadType/body

Annotation | The body element contains all the invoice/reminder data including the highly sensitive patient data (data privacy relevant). Therefore the body element can be replaced by the encrypted counterpart xenc:EncryptedData
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:bodyType
properties
isRef | 0
content | complex
children | pam:billers pam:providers pam:debitor pam:patient pam:law pam:message pam:remark
source | <element name="body" type="pam:bodyType"/>


element bodyType/billers

Annotation | The billers element is the container holding the different flavors of the biller definitions basically differing in the unique keys like GLN or ZSR
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:billersAddressType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
children | pam:biller_gln pam:biller_zsr
source | <element name="billers" type="pam:billersAddressType" minOccurs="0"/>


element billersAddressType/biller_gln

Annotation | The biller_gln element defines the biller's address and its mandatory GLN.
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:billerGLNAddressType
properties
isRef | 0
content | complex
children | pam:company pam:person
attributes parameters
Name | Type | Use | Default | Fixed
gln | pam:glnPartyType | required
attributes annotations
Name Notes
gln The gln is the biller's required GLN as defined by RefData
If in agreement with the health insurance, the GLN given can be a Swiss SSN (social security number), provided that the corresponding treatment is carried out by the patient himself or a relative of the patient.
source | <element name="biller_gln" type="pam:billerGLNAddressType"/>


element billerGLNAddressType/company

Annotation | The biller is a legal entity defined by a company address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:companyType
properties
isRef | 0
content | complex
children | pam:companyname pam:department pam:subaddressing pam:postal pam:telecom pam:online
source | <element name="company" type="pam:companyType"/>


element companyType/companyname

Annotation | The companyname element supplies the name of a company
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_35
properties
isRef | 0
content | simple
facets
minLength | 1
maxLength | 35
source | <element name="companyname" type="pam:stringType1_35"/>


element companyType/department

Annotation | The department element supplies the name of a the involved department of a company
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_35
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
facets
minLength | 1
maxLength | 35
source | <element name="department" type="pam:stringType1_35" minOccurs="0"/>


element companyType/subaddressing

Annotation | The subaddressing element supplies further special information of a full address (e.g. c/o information and the like)
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_35
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
facets
minLength | 1
maxLength | 35
source | <element name="subaddressing" type="pam:stringType1_35" minOccurs="0"/>


element companyType/postal

Annotation | The postal element depicts the postal part of a full address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:postalAddressType
properties
isRef | 0
content | complex
children | pam:pobox pam:street pam:zip pam:city pam:country
source | <element name="postal" type="pam:postalAddressType"/>


element postalAddressType/pobox

Annotation | The pobox element supplies the post office box part of the postal address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_35
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
facets
minLength | 1
maxLength | 35
source | <element name="pobox" type="pam:stringType1_35" minOccurs="0"/>


element postalAddressType/street

Annotation | The street element supplies the full street part of the postal address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:streetType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
facets
minLength | 1
maxLength | 35
attributes parameters
Name | Type | Use | Default | Fixed
street_name | pam:stringType1_35
house_no | pam:stringType1_10
attributes annotations
Name | Notes
street_name | street_name is the optional street name being part of the full street definition. Please note that the street name is an extracted copy from the full street definition.
house_no | house_no is the optional house number being part of full street definition. Please note that the house number is an extracted copy from the full street definition.
source | <element name="street" type="pam:streetType" minOccurs="0"/>


element postalAddressType/zip

Annotation | The zip element supplies the zip part of the postal address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:zipType
properties
isRef | 0
content | complex
facets
minLength | 1
maxLength | 9
attributes parameters
Name | Type | Use | Default | Fixed
state_code | pam:stringType1_9
attributes annotations
Name | Notes
state_code | state_code is an optional code for a state (e.g. the canton designator in Switzerland or the state in USA)
source | <element name="zip" type="pam:zipType"/>


element postalAddressType/city

Annotation | The city element supplies the city part of the postal address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_35
properties
isRef | 0
content | simple
facets
minLength | 1
maxLength | 35
source | <element name="city" type="pam:stringType1_35"/>


element postalAddressType/country

Annotation The optional country element supplies the country name and country abbreviation of the postal address.

Please note that the absence of the country element implies that the country is Switzerland and consequently the country abbreviation is ISO 3166-1 alpha-2 = CH.

diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:countryType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
facets
minLength | 1
maxLength | 35
attributes parameters
Name | Type | Use | Default | Fixed
country_code | pam:iso3166A2Type
attributes annotations
Name | Notes
country_code | the optional country_code is the ISO designator of the country as two-letter ISO 3166-1 alpha-2 code.
source | <element name="country" type="pam:countryType" minOccurs="0"/>


element companyType/telecom

Annotation | The telecom element depicts the telecom related part of a full address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:telecomAddressType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
children | pam:phone
source | <element name="telecom" type="pam:telecomAddressType" minOccurs="0"/>


element telecomAddressType/phone

Annotation | The phone element supplies a telephone number (either landline or mobile)
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_25
properties
isRef | 0
minOcc | 1
maxOcc | 3
content | simple
facets
minLength | 1
maxLength | 25
source | <element name="phone" type="pam:stringType1_25" maxOccurs="3"/>


element companyType/online

Annotation | The online element depicts the online related part of a full address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:onlineAddressType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
children | pam:email pam:uri
source | <element name="online" type="pam:onlineAddressType" minOccurs="0"/>


element onlineAddressType/email

Annotation | The email element supplies an email address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of pam:stringType1_80
properties
isRef | 0
minOcc | 1
maxOcc | 3
content | simple
facets
minLength | 1
maxLength | 80
pattern .+@.+
source <element name="email" maxOccurs="3">
<simpleType>
<restriction base="pam:stringType1_80">
<pattern value=".+@.+"/>
</restriction>
</simpleType>
</element>


element onlineAddressType/uri

Annotation | The uri element supplies any URI defined address (e.g. a homepage, facebook or twitter account etc.)
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of anyURI
properties
isRef | 0
minOcc | 0
maxOcc | 3
content | simple
facets
minLength | 1
maxLength | 160
source <element name="uri" minOccurs="0" maxOccurs="3">
<simpleType>
<restriction base="anyURI">
<minLength value="1"/>
<maxLength value="160"/>
</restriction>
</simpleType>
</element>


element billerGLNAddressType/person

Annotation | The biller is a natural person defined by the person address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:personType
properties
isRef | 0
content | complex
children | pam:familyname pam:givenname pam:subaddressing pam:postal pam:telecom pam:online
attributes parameters
Name | Type | Use | Default | Fixed
salutation | pam:stringType1_35
title | pam:stringType1_35
attributes annotations
Name | Notes
salutation | salutation is the optional salutation of the person
title | title is optional title of the person
source | <element name="person" type="pam:personType"/>


element personType/familyname

Annotation | The familyname element supplies the family name (or last name) of a person
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_35
properties
isRef | 0
content | simple
facets
minLength | 1
maxLength | 35
source | <element name="familyname" type="pam:stringType1_35"/>


element personType/givenname

Annotation | The givenname element supplies the forename or first name of a person
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_35
properties
isRef | 0
content | simple
facets
minLength | 1
maxLength | 35
source | <element name="givenname" type="pam:stringType1_35"/>


element personType/subaddressing

Annotation | The subaddressing element supplies further special information of a full address (e.g. c/o information and the like)
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_35
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
facets
minLength | 1
maxLength | 35
source | <element name="subaddressing" type="pam:stringType1_35" minOccurs="0"/>


element personType/postal

Annotation | The postal element depicts the postal part of a full address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:postalAddressType
properties
isRef | 0
content | complex
children | pam:pobox pam:street pam:zip pam:city pam:country
source | <element name="postal" type="pam:postalAddressType"/>


element personType/telecom

Annotation | The telecom element depicts the telecom related part of a full address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:telecomAddressType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
children | pam:phone
source | <element name="telecom" type="pam:telecomAddressType" minOccurs="0"/>


element personType/online

Annotation | The online element depicts the online related part of a full address
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:onlineAddressType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
children | pam:email pam:uri
source | <element name="online" type="pam:onlineAddressType" minOccurs="0"/>


element billersAddressType/biller_zsr

Annotation The optional biller_zsr element defines the billers's address and its mandatory ZSR number.

Note that the billers's ZSR address is optional in terms of the XSD schema definition. However, it may be the case that the underlying tariff contracts, applied law and/or special contracts between service providers and insurances change the optionality into a mandatory data specification.
A more detailed view of the use of the biller_zsr element can be found somewhere on the Forum Datenaustausch website.

diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:zsrAddressType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
children | pam:company pam:person
attributes parameters
Name | Type | Use | Default | Fixed
zsr | pam:zsrPartyType | required
attributes annotations
Name | Notes
zsr | zsr is the biller's or providers's required ZSR as defined by Santésuisse
source | <element name="biller_zsr" type="pam:zsrAddressType" minOccurs="0"/>


element zsrAddressType/company

Annotation | The biller or provider is a legal entity defined by a company address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:companyType
properties
isRef | 0
content | complex
children | pam:companyname pam:department pam:subaddressing pam:postal pam:telecom pam:online
source | <element name="company" type="pam:companyType"/>


element zsrAddressType/person

Annotation | The biller or provider is a natural person defined by the person address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:personType
properties
isRef | 0
content | complex
children | pam:familyname pam:givenname pam:subaddressing pam:postal pam:telecom pam:online
attributes parameters
Name | Type | Use | Default | Fixed
salutation | pam:stringType1_35
title | pam:stringType1_35
attributes annotations
Name | Notes
salutation | salutation is the optional salutation of the person
title | title is optional title of the person
source | <element name="person" type="pam:personType"/>


element bodyType/providers

Annotation | The providers element is the container holding the different flavors of the provider definitions basically differing in the unique keys like GLN or ZSR
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:providersAddressType
properties
isRef | 0
content | complex
children | pam:provider_gln pam:provider_zsr
source | <element name="providers" type="pam:providersAddressType"/>


element providersAddressType/provider_gln

Annotation | The provider_gln element defines the provider's address and its mandatory GLN.
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:providerGLNAddressType
properties
isRef | 0
content | complex
children | pam:company pam:person
attributes parameters
Name | Type | Use | Default | Fixed
main_treating_provider | pam:stringType1_100
gln | pam:glnPartyType | required
gln_location | pam:glnPartyType | required
uid | pam:stringType1_15
attributes annotations
Name | Notes
main_treating_provider | The optional main_treating_provider is the full name of the case leading provider should that name be different from the one given in the address section
gln The gln is the provider's required GLN as defined by RefData
If in agreement with the health insurance, the GLN given can be a Swiss SSN (social security number), provided that the corresponding treatment is carried out by the patient himself or a relative of the patient.
gln_location | The gln_location codes the provider's workplace by a required GLN as defined by RefData If there is no such specific workplace defined then input the gln as gln_location, basically defining the default workplace/location.
uid uid is the UID number in the electronic layout as defined by the "Swiss Federal Tax Administration".
In the electronic layout all punctuation characters ('-' and '.') are striped. Consequently, the UID number must be expanded appropriately prior to be printed, e.g.
  • CHE123456789 in the electronic layout is printed as CHE-123.456.789
source | <element name="provider_gln" type="pam:providerGLNAddressType"/>


element providerGLNAddressType/company

Annotation | The provider is a legal entity defined by a company address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:companyType
properties
isRef | 0
content | complex
children | pam:companyname pam:department pam:subaddressing pam:postal pam:telecom pam:online
source | <element name="company" type="pam:companyType"/>


element providerGLNAddressType/person

Annotation | The provider is a natural person defined by the person address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:personType
properties
isRef | 0
content | complex
children | pam:familyname pam:givenname pam:subaddressing pam:postal pam:telecom pam:online
attributes parameters
Name | Type | Use | Default | Fixed
salutation | pam:stringType1_35
title | pam:stringType1_35
attributes annotations
Name | Notes
salutation | salutation is the optional salutation of the person
title | title is optional title of the person
source | <element name="person" type="pam:personType"/>


element providersAddressType/provider_zsr

Annotation The optional provider_zsr element defines the provider's address and its mandatory ZSR number.

Note that the providers's ZSR address is optional in terms of the XSD schema definition. However, it may be the case that the underlying tariff contracts, applied law and/or special contracts between service providers and insurances change the optionality into a mandatory data specification.
A more detailed view of the use of the provider_zsr element can be found somewhere on the Forum Datenaustausch website.

diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:zsrAddressType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
children | pam:company pam:person
attributes parameters
Name | Type | Use | Default | Fixed
zsr | pam:zsrPartyType | required
attributes annotations
Name | Notes
zsr | zsr is the biller's or providers's required ZSR as defined by Santésuisse
source | <element name="provider_zsr" type="pam:zsrAddressType" minOccurs="0"/>


element bodyType/debitor

Annotation | The debitor element is the final recipient of the message. This is most cases the patient's health care insurance.
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:debitorAddressType
properties
isRef | 0
content | complex
children | pam:company pam:person
attributes parameters
Name | Type | Use | Default | Fixed
gln | pam:glnPartyType | required
uid | pam:stringType1_15
attributes annotations
Name Notes
gln gln is the debitor's GLN number as defined by RefData
Please note, that the GLN is required and therefore a pseudo GLN from the private sector (e.g. 2000000000008) must be used, if the debitor does not have an official GLN
uid uid is the UID number in the electronic layout as defined by the "Swiss Federal Tax Administration".
In the electronic layout all punctuation characters ('-' and '.') are striped. Consequently, the UID number must be expanded appropriately prior to be printed, e.g.
  • CHE123456789 in the electronic layout is printed as CHE-123.456.789

Please note, that the UID is optional and possibly defined for legal entities. Thus the UID is always empty for natural persons.
source | <element name="debitor" type="pam:debitorAddressType"/>


element debitorAddressType/company

Annotation | The debitor is a legal entity defined by a company address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:companyType
properties
isRef | 0
content | complex
children | pam:companyname pam:department pam:subaddressing pam:postal pam:telecom pam:online
source | <element name="company" type="pam:companyType"/>


element debitorAddressType/person

Annotation | The debitor is a natural person defined by the person address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:personType
properties
isRef | 0
content | complex
children | pam:familyname pam:givenname pam:subaddressing pam:postal pam:telecom pam:online
attributes parameters
Name | Type | Use | Default | Fixed
salutation | pam:stringType1_35
title | pam:stringType1_35
attributes annotations
Name | Notes
salutation | salutation is the optional salutation of the person
title | title is optional title of the person
source | <element name="person" type="pam:personType"/>


element bodyType/patient

Annotation | The patient address element defines the patient with all relevant data
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:patientAddressType
properties
isRef | 0
content | complex
children | pam:person
attributes parameters
Name | Type | Use | Default | Fixed
gender | derived by: NMTOKEN | required
sex | derived by: NMTOKEN | required
birthdate | date | required
ssn | pam:ssnPartyType | required
attributes annotations
Name | Notes
gender gender defines the social gender encoded by a terminal set of tokens
  • male: the patient identifies with the gender of male
  • female: the patient identifies with the gender of female
  • diverse: the patient identifies with neither/both female and male, or identifies as transgender. Furthermore, "diverse" is applicable if the gender is unknown, or the patient does not wish to disclosure his gender identity.
sex sex defines the medical sex which is pre-dominantly induced by the actual hormonal balance of the body. The attribute sex is encoded by a terminal set of tokens
  • male: the sex of the patient is pre-dominantly male
  • female: the sex of the patient is pre-dominantly female
birthdate | birthdate defines the birthdate of the patient
ssn the required ssn defines the social security number of the patient whereupon 3 distinguished styles are allowed:
  • the new 13 digit Swiss SSN ("SV-Nummer") beginning with 756 as defined by Federal Social Insurance Office
  • the new 4-10 digit SSN of Liechtenstein ("AHV-Nummer") as defined by Liechtensteinische AHV-IV-FAK
  • the 13 digit IDNR number of Liechtenstein ("IDNR-Nummer") beginning with 438
If for any reasons the SSN of the patient is unknown, than the unknownSSN := 7569999999991 must be defined to satisfy the schema validity!

Note, that the SSN is stored in the electronic flavor (digits only) whereas on any printed form it must be in its formatted print flavor as requested by the federal authorities.
attributes enumerations
Name | Extension | Base | Value | Annotations
gender | NMTOKEN | male | the patient identifies with the gender of male
gender | NMTOKEN | female | the patient identifies with the gender of female
gender | NMTOKEN | diverse | the patient identifies with the gender of diverse
sex | NMTOKEN | male | the sex of the patient is pre-dominantly male
sex | NMTOKEN | female | the sex of the patient is pre-dominantly female
source | <element name="patient" type="pam:patientAddressType"/>


element patientAddressType/person

Annotation | The patient's address given by the person element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:personType
properties
isRef | 0
content | complex
children | pam:familyname pam:givenname pam:subaddressing pam:postal pam:telecom pam:online
attributes parameters
Name | Type | Use | Default | Fixed
salutation | pam:stringType1_35
title | pam:stringType1_35
attributes annotations
Name | Notes
salutation | salutation is the optional salutation of the person
title | title is optional title of the person
source | <element name="person" type="pam:personType"/>


element bodyType/law

Annotation | The law element defines the applicable law and all its needed parameters for the XML infoset. The scope of permissible laws is well-defined and fixed to the set of {"Krankenversicherungsgesetz", "Versicherungsvertragsgesetz", "Unfallversicherungsgesetz", "Invalidenversicherungsgesetz", "Militäversicherungsgesetz", "Obligationenrechtsgesetz"}
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:lawType
properties
isRef | 0
content | complex
attributes parameters
Name | Type | Use | Default | Fixed
type | derived by: NMTOKEN | required
card_id | pam:stringType1_35
insured_id | pam:stringType1_35
case_id | pam:stringType1_35
case_date | date
attributes annotations
Name | Notes
type type is the type of applicable law encoded by a terminal set of tokens
  • KVG: the applicable law is "Krankenversicherungsgesetz" abbreviated {"KVG" | "LAMal" | "LAMal"} in the official national languages
  • VVG: the applicable law is "Versicherungsvertragsgesetz" abbreviated {"VVG" | "LCA" | "LCA"} in the official national languages
  • UVG: the applicable law is "Unfallversicherungsgesetz" abbreviated {"UVG" | "LAA" | "LAINF"} in the official national languages
  • IVG: the applicable law is "Invalidenversicherungsgesetz" abbreviated {"IVG" | "LAI" | "LAI"} in the official national languages
  • MVG: the applicable law is "Militäversicherungsgesetz" abbreviated {"MVG" | "LAM" | "LAM"} in the official national languages
  • ORG: the applicable law is "Obligationenrechtsgesetz" abbreviated {"ORG" | "CO" | "CO"} in the official national languages
card_id the card_id defines the required 20-digits official card identification of the patient at the insurance.
If the card_id is unknown or unavailable (it might be a resident of a foreign country) than supply the proprietary insured_id identifying the patient at the insurance.
insured_id | the optional insured_id is the KVG customer number also known as insured number.
case_id case_id is the treatment/case identification number issued by by the insurance
It should be noted that the existence, form and specifications of case_id is dependent on the law:
  • KVG: there is currently no such case id known at the insurance site. Future contracts between provider and insurance might make such a case id necessary.
  • VVG: there is currently no such case id known at the insurance site. Future contracts between provider and insurance might make such a case id necessary.
  • UVG: defines the required accident number uniquely identifying the corresponding case at the insurance's site.
    If no accident number is supplied, a rejection must be expected.
  • IVG: defines the required case id having a well defined data pattern of ([0-9]{14}|[0-9]{10}|[0-9]{9}|[0-9]{6}).
    If no case id is supplied, a rejection must be expected.
  • MVG: defines the optional case id
  • ORG: there is currently no such case id known.
case_date case_date is the treatment/case date issued by by the insurance
It should be noted that the existence, form and specifications of case_date is dependent on the law:
  • KVG: there is currently no such case date known at the insurance site.
  • VVG: there is currently no such case date known at the insurance site.
  • UVG: defines the optional accident date identifying the occurrence of the accident.
  • IVG: there is currently no such case date known at the insurance site.
  • MVG: defines the optional case date
  • ORG: there is currently no such case id known.
attributes enumerations
Name | Extension | Base | Value | Annotations
type | NMTOKEN | KVG | the applicable law is "Krankenversicherungsgesetz" abbreviated {"KVG" | "LAMal" | "LAMal"} in the official national languages
type | NMTOKEN | VVG | the applicable law is "Versicherungsvertragsgesetz" abbreviated {"VVG" | "LCA" | "LCA"} in the official national languages
type | NMTOKEN | UVG | the applicable law is "Unfallversicherungsgesetz" abbreviated {"UVG" | "LAA" | "LAINF"} in the official national languages
type | NMTOKEN | IVG | the applicable law is "Invalidenversicherungsgesetz" abbreviated {"IVG" | "LAI" | "LAI"} in the official national languages
type | NMTOKEN | MVG | the applicable law is "Militäversicherungsgesetz" abbreviated {"MVG" | "LAM" | "LAM"} in the official national languages
type | NMTOKEN | ORG | the applicable law is "Obligationenrechtsgesetz" abbreviated {"ORG" | "CO" | "CO"} in the official national languages
source | <element name="law" type="pam:lawType"/>


element bodyType/message

Annotation | The message element is the structured message for which the message parsing system is build in the first place.
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:messageType
properties
isRef | 0
content | complex
children | pam:stationary
attributes parameters
Name | Type | Use | Default | Fixed
message_type | derived by: NMTOKEN | treatment
message_action | derived by: NMTOKEN | required
message_date | dateTime | required
treatment_type | derived by: NMTOKEN | ambulatory
treatment_reason | derived by: NMTOKEN | required
attributes annotations
Name | Notes
message_type message_type is the principle type of messaging encoded by a terminal set of tokens.
  • treatment: the message target is treatment
message_action message_action is the principle action of messaging encoded by a terminal set of tokens.
  • scheduled: the message action is scheduled meaning that 'message' is scheduled for the 'message_date'
  • canceled: the message action is canceled meaning a prior scheduled 'message' for 'message_date' is canceled
  • start: the message action is start meaning that 'message' begins at 'message_date'
  • end: the message action is end meaning that 'message' ends at 'message_date'
message_date | message_date is the date and time when messaging is performed/defined.
treatment_type treatment_type is the principle type of treatment encoded by a terminal set of tokens.
  • ambulatory: the treatment type is ambulatory (default)
  • stationary: the treatment type is stationary
treatment_reason treatment_reason is the primary reason why the treatment is taking place encoded by a terminal set of tokens
  • disease: the reason of treatment is a disease
  • accident: the reason of treatment is an accident
  • maternity: the reason of treatment is a maternity
  • prevention: the reason of treatment is prevention
  • birthdefect: the reason of treatment is a birthdefect
  • unknown: the reason of treatment is unknown (or something not mentioned above)
attributes enumerations
Name | Extension | Base | Value | Annotations
message_action | NMTOKEN | scheduled | the message action is scheduled meaning that 'message' is scheduled for the 'message_date'
message_action | NMTOKEN | canceled | the message action is canceled meaning a prior scheduled 'message' for 'message_date' is canceled
message_action | NMTOKEN | start | the message action is start meaning that 'message' begins at 'message_date'
message_action | NMTOKEN | end | the message action is end meaning that 'message' ends at 'message_date'
message_type | NMTOKEN | treatment | the message target is treatment (default)
treatment_reason | NMTOKEN | disease | the reason of treatment is a disease
treatment_reason | NMTOKEN | accident | the reason of treatment is an accident
treatment_reason | NMTOKEN | maternity | the reason of treatment is a maternity
treatment_reason | NMTOKEN | prevention | the reason of treatment is prevention
treatment_reason | NMTOKEN | birthdefect | the reason of treatment is a birthdefect
treatment_reason | NMTOKEN | unknown | the reason of treatment is unknown (or something not mentioned above)
treatment_type | NMTOKEN | ambulatory | the treatment type is ambulatory (default)
treatment_type | NMTOKEN | stationary | the treatment type is stationary
source | <element name="message" type="pam:messageType"/>


element messageType/stationary

Annotation
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stationaryType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
attributes parameters
Name | Type | Use | Default | Fixed
hospitalization_type | derived by: NMTOKEN | regular
hospitalization_mode | derived by: NMTOKEN | cantonal
hospitalization_class | derived by: NMTOKEN | general
section_major | pam:stringType1_9
residence_code | derived by: NMTOKEN
attributes annotations
Name | Notes
hospitalization_type hospitalization_type is the type of hospitalization encoded by a terminal set of tokens
  • regular: the type of hospitalization is regular ("a normal and planned hospitalization")
  • emergency: the type of hospitalization is emergency ("hospitalization due to an emergency")
  • welfare: the type of hospitalization is welfare ("Fürsorglicher Freiheitsentzug")
hospitalization_mode hospitalization_mode is the mode of hospitalization encoded by a terminal set of tokens
  • cantonal: the mode of hospitalization is cantonal - patient's domicile is in the treatment canton)
  • noncantonal_indicated: the mode of hospitalization is noncantonal_indicated - patient's domicile is not in the treatment canton, but treatment is indicated
  • noncantonal_nonindicated: the mode of hospitalization is noncantonal_nonindicated - patient's domicile is not in the treatment canton and treatment is not indicated
hospitalization_class the hospitalization_class is the class of insurance that covers the patient's stay encoded by a terminal set of tokens
  • private: the class of the treatment is private (1st class insurance coverage)
  • semi_private: the class of the treatment is semi_private (2nd class insurance coverage)
  • general: the class of the treatment is general (3rd class insurance coverage)
  • hospital_comfort: the class of the treatment is hospital_comfort
  • md_free_choice: the class of the treatment is md_free_choice ("Freie Arztwahl")
section_major | the optional section_major code is a "BfS - Swiss Federal Statistical Office" code indicating the major location of service provision. This BfS major section code only has to be specified if the corresponding tariff contract stipulates this.
residence_code the optional residence_code supplies information about the admission/discharge location where the patient is coming from or going to encoded by a terminal set of tokens
  • home: the patient's admission/discharge location is his home
  • home_with_spitex_care: the patient's admission/discharge location is his home having a spitex care as support
  • hospital_same_place: the patient's admission/discharge location is the same hospital as their current location
  • hospital_other_place: the patient's admission/discharge location is a different hospital to their current location
  • retirement_home: the patient's admission/discharge location is a retirement home
  • nursing_home: the patient's admission/discharge location is a nursing home
  • psychiatric_clinic_same_place: the patient's admission/discharge location is the same psychiatric clinic as their current location
  • psychiatric_clinic_other_place: the patient's admission/discharge location is a different psychiatric clinic to their current location
  • rehabilitation_clinic_same_place: the patient's admission/discharge location is the same rehabilitation clinic as their current location
  • rehabilitation_clinic_other_place: the patient's admission/discharge location is a different rehabilitation clinic to their current location
  • birth_house: the patient's admission/discharge location is a birth house
  • correctional_facility: the patient's admission/discharge location is a correctional facility
  • other: the patient's admission/discharge location is not mentioned above
  • unknown: the patient's admission/discharge location is unknown
attributes enumerations
Name | Extension | Base | Value | Annotations
hospitalization_class | NMTOKEN | private | the class of insurance is private (1st class insurance coverage)
hospitalization_class | NMTOKEN | semi_private | the class of insurance is semi_private (2nd class insurance coverage)
hospitalization_class | NMTOKEN | general | the class of insurance is general (3rd class insurance coverage)
hospitalization_class | NMTOKEN | hospital_comfort | the class of insurance is hospital_comfort ()
hospitalization_class | NMTOKEN | md_free_choice | the class of insurance is md_free_choice ("Freie Arztwahl")
hospitalization_mode | NMTOKEN | cantonal | the mode of hospitalization is cantonal - patient's domicile is in the treatment canton)
hospitalization_mode | NMTOKEN | noncantonal_indicated | the mode of hospitalization is noncantonal_indicated - patient's domicile is not in the treatment canton, but treatment is indicated
hospitalization_mode | NMTOKEN | noncantonal_nonindicated | the mode of hospitalization is noncantonal_nonindicated - patient's domicile is not in the treatment canton and treatment is not indicated
hospitalization_type | NMTOKEN | regular | the type of hospitalization is regular ("a normal and planned hospitalization")
hospitalization_type | NMTOKEN | emergency | the type of hospitalization is emergency ("hospitalization due to an emergency")
hospitalization_type | NMTOKEN | welfare | the type of hospitalization is welfare ("Fürsorglicher Freiheitsentzug")
residence_code | NMTOKEN | home | the patient's admission/discharge location is his home
residence_code | NMTOKEN | home_with_spitex_care | the patient's admission/discharge location is his home having a spitex care as support
residence_code | NMTOKEN | hospital_same_place | the patient's admission/discharge location is the same hospital as their current location
residence_code | NMTOKEN | hospital_other_place | the patient's admission/discharge location is a different hospital to their current location
residence_code | NMTOKEN | retirement_home | the patient's admission/discharge location is a retirement home
residence_code | NMTOKEN | nursing_home | the patient's admission/discharge location is a nursing home
residence_code | NMTOKEN | psychiatric_clinic_same_place | the patient's admission/discharge location is the same psychiatric clinic as their current location
residence_code | NMTOKEN | psychiatric_clinic_other_place | the patient's admission/discharge location is a different psychiatric clinic to their current location
residence_code | NMTOKEN | rehabilitation_clinic_same_place | the patient's admission/discharge location is the same rehabilitation clinic as their current location
residence_code | NMTOKEN | rehabilitation_clinic_other_place | the patient's admission/discharge location is a different rehabilitation clinic to their current location
residence_code | NMTOKEN | birth_house | the patient's admission/discharge location is a birth house
residence_code | NMTOKEN | correctional_facility | the patient's admission/discharge location is a correctional facility
residence_code | NMTOKEN | other | the patient's admission/discharge location is not mentioned above
residence_code | NMTOKEN | unknown | the patient's admission/discharge location is unknown
source | <element name="stationary" type="pam:stationaryType" minOccurs="0"/>


element bodyType/remark

Annotation | The remark element supplies an optional remark for the pushAdminMessage process
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:stringType1_350
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
facets
minLength | 1
maxLength | 350
source | <element name="remark" type="pam:stringType1_350" minOccurs="0"/>


element xenc:EncryptedData

Annotation The optional xenc:EncryptedData (as defined by W3C) encrypts and replaces the body element by using the public certificate of the end recipient of this infoset (mostly the insurance).
See the "notes about encryption" in the introduction chapter for further guidance about the encryption.

Note, that there will be no documentation of this element or any subparts as this is done by W3C already!
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:EncryptedDataType
properties
content complex
children | xenc:EncryptionMethod ds:KeyInfo xenc:CipherData xenc:EncryptionProperties
used by
complexType payloadType
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
Type | anyURI | optional
MimeType | string | optional
Encoding | anyURI | optional
source | <element name="EncryptedData" type="xenc:EncryptedDataType"/>


element xenc:EncryptedType/EncryptionMethod

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:EncryptionMethodType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
mixed | true
children | xenc:KeySize xenc:OAEPparams
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source | <element name="EncryptionMethod" type="xenc:EncryptionMethodType" minOccurs="0"/>


element xenc:EncryptionMethodType/KeySize

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:KeySizeType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
source | <element name="KeySize" type="xenc:KeySizeType" minOccurs="0"/>


element xenc:EncryptionMethodType/OAEPparams

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | base64Binary
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
source | <element name="OAEPparams" type="base64Binary" minOccurs="0"/>


element ds:KeyInfo

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:KeyInfoType
properties
content | complex
mixed | true
children | ds:KeyName ds:KeyValue ds:RetrievalMethod ds:X509Data ds:PGPData ds:SPKIData ds:MgmtData
used by
complexTypes ds:SignatureType xenc:EncryptedType
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source | <element name="KeyInfo" type="ds:KeyInfoType"/>


element ds:KeyName

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | string
properties
content simple
used by
complexType ds:KeyInfoType
source | <element name="KeyName" type="string"/>


element ds:KeyValue

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:KeyValueType
properties
content | complex
mixed | true
children | ds:DSAKeyValue ds:RSAKeyValue
used by
complexType ds:KeyInfoType
source | <element name="KeyValue" type="ds:KeyValueType"/>


element ds:DSAKeyValue

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:DSAKeyValueType
properties
content complex
children | ds:P ds:Q ds:G ds:Y ds:J ds:Seed ds:PgenCounter
used by
complexType ds:KeyValueType
source | <element name="DSAKeyValue" type="ds:DSAKeyValueType"/>


element ds:DSAKeyValueType/P

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CryptoBinary
properties
isRef | 0
content | simple
source | <element name="P" type="ds:CryptoBinary"/>


element ds:DSAKeyValueType/Q

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CryptoBinary
properties
isRef | 0
content | simple
source | <element name="Q" type="ds:CryptoBinary"/>


element ds:DSAKeyValueType/G

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CryptoBinary
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
source | <element name="G" type="ds:CryptoBinary" minOccurs="0"/>


element ds:DSAKeyValueType/Y

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CryptoBinary
properties
isRef | 0
content | simple
source | <element name="Y" type="ds:CryptoBinary"/>


element ds:DSAKeyValueType/J

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CryptoBinary
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
source | <element name="J" type="ds:CryptoBinary" minOccurs="0"/>


element ds:DSAKeyValueType/Seed

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CryptoBinary
properties
isRef | 0
content | simple
source | <element name="Seed" type="ds:CryptoBinary"/>


element ds:DSAKeyValueType/PgenCounter

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CryptoBinary
properties
isRef | 0
content | simple
source | <element name="PgenCounter" type="ds:CryptoBinary"/>


element ds:RSAKeyValue

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:RSAKeyValueType
properties
content complex
children | ds:Modulus ds:Exponent
used by
complexType ds:KeyValueType
source | <element name="RSAKeyValue" type="ds:RSAKeyValueType"/>


element ds:RSAKeyValueType/Modulus

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CryptoBinary
properties
isRef | 0
content | simple
source | <element name="Modulus" type="ds:CryptoBinary"/>


element ds:RSAKeyValueType/Exponent

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CryptoBinary
properties
isRef | 0
content | simple
source | <element name="Exponent" type="ds:CryptoBinary"/>


element ds:RetrievalMethod

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:RetrievalMethodType
properties
content complex
children | ds:Transforms
used by
complexType ds:KeyInfoType
attributes parameters
Name | Type | Use | Default | Fixed
URI | anyURI
Type | anyURI | optional
source | <element name="RetrievalMethod" type="ds:RetrievalMethodType"/>


element ds:Transforms

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:TransformsType
properties
content complex
children | ds:Transform
used by
complexTypes ds:ReferenceType ds:RetrievalMethodType
source | <element name="Transforms" type="ds:TransformsType"/>


element ds:Transform

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:TransformType
properties
content | complex
mixed | true
children | ds:XPath
used by
complexTypes ds:TransformsType xenc:TransformsType
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source | <element name="Transform" type="ds:TransformType"/>


element ds:TransformType/XPath

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | string
properties
isRef | 0
content | simple
source | <element name="XPath" type="string"/>


element ds:X509Data

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:X509DataType
properties
content complex
children | ds:X509IssuerSerial ds:X509SKI ds:X509SubjectName ds:X509Certificate ds:X509CRL
used by
complexType ds:KeyInfoType
source | <element name="X509Data" type="ds:X509DataType"/>


element ds:X509DataType/X509IssuerSerial

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:X509IssuerSerialType
properties
isRef | 0
content | complex
children | ds:X509IssuerName ds:X509SerialNumber
source | <element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>


element ds:X509IssuerSerialType/X509IssuerName

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | string
properties
isRef | 0
content | simple
source | <element name="X509IssuerName" type="string"/>


element ds:X509IssuerSerialType/X509SerialNumber

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | integer
properties
isRef | 0
content | simple
source | <element name="X509SerialNumber" type="integer"/>


element ds:X509DataType/X509SKI

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | base64Binary
properties
isRef | 0
content | simple
source | <element name="X509SKI" type="base64Binary"/>


element ds:X509DataType/X509SubjectName

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | string
properties
isRef | 0
content | simple
source | <element name="X509SubjectName" type="string"/>


element ds:X509DataType/X509Certificate

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | base64Binary
properties
isRef | 0
content | simple
source | <element name="X509Certificate" type="base64Binary"/>


element ds:X509DataType/X509CRL

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | base64Binary
properties
isRef | 0
content | simple
source | <element name="X509CRL" type="base64Binary"/>


element ds:PGPData

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:PGPDataType
properties
content complex
children | ds:PGPKeyID ds:PGPKeyPacket ds:PGPKeyPacket
used by
complexType ds:KeyInfoType
source | <element name="PGPData" type="ds:PGPDataType"/>


element ds:PGPDataType/PGPKeyID

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | base64Binary
properties
isRef | 0
content | simple
source | <element name="PGPKeyID" type="base64Binary"/>


element ds:PGPDataType/PGPKeyPacket

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | base64Binary
properties
isRef | 0
content | simple
source | <element name="PGPKeyPacket" type="base64Binary"/>


element ds:SPKIData

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:SPKIDataType
properties
content complex
children | ds:SPKISexp
used by
complexType ds:KeyInfoType
source | <element name="SPKIData" type="ds:SPKIDataType"/>


element ds:SPKIDataType/SPKISexp

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | base64Binary
properties
isRef | 0
content | simple
source | <element name="SPKISexp" type="base64Binary"/>


element ds:MgmtData

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | string
properties
content simple
used by
complexType ds:KeyInfoType
source | <element name="MgmtData" type="string"/>


element xenc:CipherData

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:CipherDataType
properties
content complex
children | xenc:CipherValue xenc:CipherReference
used by
complexType xenc:EncryptedType
source | <element name="CipherData" type="xenc:CipherDataType"/>


element xenc:CipherDataType/CipherValue

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | base64Binary
properties
isRef | 0
content | simple
source | <element name="CipherValue" type="base64Binary"/>


element xenc:CipherReference

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:CipherReferenceType
properties
content complex
children | xenc:Transforms
used by
complexType xenc:CipherDataType
attributes parameters
Name | Type | Use | Default | Fixed
URI | anyURI | required
source | <element name="CipherReference" type="xenc:CipherReferenceType"/>


element xenc:CipherReferenceType/Transforms

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:TransformsType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
children | ds:Transform
source | <element name="Transforms" type="xenc:TransformsType" minOccurs="0"/>


element xenc:EncryptionProperties

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:EncryptionPropertiesType
properties
content complex
children | xenc:EncryptionProperty
used by
complexType xenc:EncryptedType
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source | <element name="EncryptionProperties" type="xenc:EncryptionPropertiesType"/>


element xenc:EncryptionProperty

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:EncryptionPropertyType
properties
content | complex
mixed | true
used by
complexType xenc:EncryptionPropertiesType
attributes parameters
Name | Type | Use | Default | Fixed
Target | anyURI | optional
Id | ID | optional
source | <element name="EncryptionProperty" type="xenc:EncryptionPropertyType"/>


element ds:Signature

Annotation The optional ds:Signature (as defined by W3C) signs the payload element by using the private certificate of the sending party represented by the transport@to GLN.
See the "notes about signature" in the introduction chapter for further guidance about the signature.

Note, that there will be no documentation of this element or any subparts as this is done by W3C already!
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:SignatureType
properties
content complex
children | ds:SignedInfo ds:SignatureValue ds:KeyInfo ds:Object
used by
complexType requestType
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source | <element name="Signature" type="ds:SignatureType"/>


element ds:SignedInfo

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:SignedInfoType
properties
content complex
children | ds:CanonicalizationMethod ds:SignatureMethod ds:Reference
used by
complexType ds:SignatureType
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source | <element name="SignedInfo" type="ds:SignedInfoType"/>


element ds:CanonicalizationMethod

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:CanonicalizationMethodType
properties
content | complex
mixed | true
used by
complexType ds:SignedInfoType
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source | <element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>


element ds:SignatureMethod

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:SignatureMethodType
properties
content | complex
mixed | true
children | ds:HMACOutputLength
used by
complexType ds:SignedInfoType
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source | <element name="SignatureMethod" type="ds:SignatureMethodType"/>


element ds:SignatureMethodType/HMACOutputLength

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:HMACOutputLengthType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
source | <element name="HMACOutputLength" type="ds:HMACOutputLengthType" minOccurs="0"/>


element ds:Reference

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:ReferenceType
properties
content complex
children | ds:Transforms ds:DigestMethod ds:DigestValue
used by
complexTypes ds:ManifestType ds:SignedInfoType
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
URI | anyURI | optional
Type | anyURI | optional
source | <element name="Reference" type="ds:ReferenceType"/>


element ds:DigestMethod

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:DigestMethodType
properties
content | complex
mixed | true
used by
complexType ds:ReferenceType
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source | <element name="DigestMethod" type="ds:DigestMethodType"/>


element ds:DigestValue

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:DigestValueType
properties
content simple
used by
complexType ds:ReferenceType
source | <element name="DigestValue" type="ds:DigestValueType"/>


element ds:SignatureValue

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:SignatureValueType
properties
content complex
used by
complexType ds:SignatureType
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source | <element name="SignatureValue" type="ds:SignatureValueType"/>


element ds:Object

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:ObjectType
properties
content | complex
mixed | true
used by
complexType ds:SignatureType
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
MimeType | string | optional
Encoding | anyURI | optional
source | <element name="Object" type="ds:ObjectType"/>


Alphabetical list of used XSD definitions

Alphabetical list of used XSD definitions

The following subchapters list all XSD definitions (simpleType, complexType etc.) used in the schema in alphabetical order.

B
billerGLNAddressType
billerZSRAddressType
billersAddressType
bodyType
C
companyType
countryType
D
debitorAddressType
ds_CanonicalizationMethodType
ds_CryptoBinary
ds_DSAKeyValueType
ds_DigestMethodType
ds_DigestValueType
ds_HMACOutputLengthType
ds_KeyInfoType
ds_KeyValueType
ds_ManifestType
ds_ObjectType
ds_PGPDataType
ds_RSAKeyValueType
ds_ReferenceType
ds_RetrievalMethodType
ds_SPKIDataType
ds_SignatureMethodType
ds_SignaturePropertiesType
ds_SignaturePropertyType
ds_SignatureType
ds_SignatureValueType
ds_SignedInfoType
ds_TransformType
ds_TransformsType
ds_X509DataType
ds_X509IssuerSerialType
G
glnPartyType
guidType
I
iso3166A2Type
L
lawType
M
messageType
N
nonEmptyStringType
O
onlineAddressType
P
patientAddressType
payloadType
personType
postalAddressType
processingType
providerGLNAddressType
providerZSRAddressType
providersAddressType
R
requestType
S
ssnPartyType
stationaryType
streetType
stringType1_10
stringType1_100
stringType1_15
stringType1_25
stringType1_3
stringType1_35
stringType1_350
stringType1_6
stringType1_70
stringType1_80
stringType1_9
T
telecomAddressType
transportType
X
xenc_AgreementMethodType
xenc_CipherDataType
xenc_CipherReferenceType
xenc_EncryptedDataType
xenc_EncryptedKeyType
xenc_EncryptedType
xenc_EncryptionMethodType
xenc_EncryptionPropertiesType
xenc_EncryptionPropertyType
xenc_KeySizeType
xenc_ReferenceType
xenc_TransformsType
Z


complexType billerGLNAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:company pam:person
used by
element billersAddressType/biller_gln
attributes parameters
Name | Type | Use | Default | Fixed
gln | pam:glnPartyType | required
attributes annotations
Name Notes
gln The gln is the biller's required GLN as defined by RefData
If in agreement with the health insurance, the GLN given can be a Swiss SSN (social security number), provided that the corresponding treatment is carried out by the patient himself or a relative of the patient.
source <complexType name="billerGLNAddressType">
<choice>
<element name="company" type="pam:companyType"/>
<element name="person" type="pam:personType"/>
</choice>
<attribute name="gln" type="pam:glnPartyType" use="required"/>
</complexType>


complexType billersAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:biller_gln pam:biller_zsr
used by
element bodyType/billers
source <complexType name="billersAddressType">
<sequence>
<element name="biller_gln" type="pam:billerGLNAddressType"/>
<element name="biller_zsr" type="pam:zsrAddressType" minOccurs="0"/>
</sequence>
</complexType>


complexType bodyType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:billers pam:providers pam:debitor pam:patient pam:law pam:message pam:remark
used by
element payloadType/body
source <complexType name="bodyType">
<sequence>
<element name="billers" type="pam:billersAddressType" minOccurs="0"/>
<element name="providers" type="pam:providersAddressType"/>
<element name="debitor" type="pam:debitorAddressType"/>
<element name="patient" type="pam:patientAddressType"/>
<element name="law" type="pam:lawType"/>
<element name="message" type="pam:messageType"/>
<element name="remark" type="pam:stringType1_350" minOccurs="0"/>
</sequence>
</complexType>


complexType companyType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:companyname pam:department pam:subaddressing pam:postal pam:telecom pam:online
used by
elements billerGLNAddressType/company zsrAddressType/company providerGLNAddressType/company debitorAddressType/company
source <complexType name="companyType">
<sequence>
<element name="companyname" type="pam:stringType1_35"/>
<element name="department" type="pam:stringType1_35" minOccurs="0"/>
<element name="subaddressing" type="pam:stringType1_35" minOccurs="0"/>
<element name="postal" type="pam:postalAddressType"/>
<element name="telecom" type="pam:telecomAddressType" minOccurs="0"/>
<element name="online" type="pam:onlineAddressType" minOccurs="0"/>
</sequence>
</complexType>


complexType countryType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | extension of pam:stringType1_35
properties
base pam:stringType1_35
used by
element postalAddressType/country
facets
minLength | 1
maxLength | 35
attributes parameters
Name Type Use Default Fixed
country_code pam:iso3166A2Type
attributes annotations
Name | Notes
country_code | the optional country_code is the ISO designator of the country as two-letter ISO 3166-1 alpha-2 code.
Extensions
Annotation | Base
Definition for the country container (a subcontainer of the address definition) giving the country and its ISO 3166-1 alpha-2 designator | pam:stringType1_35
source <complexType name="countryType">
<simpleContent>
<extension base="pam:stringType1_35">
<attribute name="country_code" type="pam:iso3166A2Type"/>
</extension>
</simpleContent>
</complexType>


complexType debitorAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:company pam:person
used by
element bodyType/debitor
attributes parameters
Name | Type | Use | Default | Fixed
gln | pam:glnPartyType | required
uid pam:stringType1_15
attributes annotations
Name Notes
gln gln is the debitor's GLN number as defined by RefData
Please note, that the GLN is required and therefore a pseudo GLN from the private sector (e.g. 2000000000008) must be used, if the debitor does not have an official GLN
uid uid is the UID number in the electronic layout as defined by the "Swiss Federal Tax Administration".
In the electronic layout all punctuation characters ('-' and '.') are striped. Consequently, the UID number must be expanded appropriately prior to be printed, e.g.
  • CHE123456789 in the electronic layout is printed as CHE-123.456.789

Please note, that the UID is optional and possibly defined for legal entities. Thus the UID is always empty for natural persons.
source <complexType name="debitorAddressType">
<choice>
<element name="company" type="pam:companyType"/>
<element name="person" type="pam:personType"/>
</choice>
<attribute name="gln" type="pam:glnPartyType" use="required"/>
<attribute name="uid" type="pam:stringType1_15"/>
</complexType>


complexType ds:CanonicalizationMethodType

diagram
namespace http://www.w3.org/2000/09/xmldsig#
properties
mixed true
used by
element ds:CanonicalizationMethod
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source <complexType name="CanonicalizationMethodType" mixed="true">
<sequence>
<any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) namespace -->
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>


complexType ds:DigestMethodType

diagram
namespace http://www.w3.org/2000/09/xmldsig#
properties
mixed true
used by
element ds:DigestMethod
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source <complexType name="DigestMethodType" mixed="true">
<sequence>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>


complexType ds:DSAKeyValueType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:P ds:Q ds:G ds:Y ds:J ds:Seed ds:PgenCounter
used by
element ds:DSAKeyValue
source <complexType name="DSAKeyValueType">
<sequence>
<sequence minOccurs="0">
<element name="P" type="ds:CryptoBinary"/>
<element name="Q" type="ds:CryptoBinary"/>
</sequence>
<element name="G" type="ds:CryptoBinary" minOccurs="0"/>
<element name="Y" type="ds:CryptoBinary"/>
<element name="J" type="ds:CryptoBinary" minOccurs="0"/>
<sequence minOccurs="0">
<element name="Seed" type="ds:CryptoBinary"/>
<element name="PgenCounter" type="ds:CryptoBinary"/>
</sequence>
</sequence>
</complexType>


complexType ds:KeyInfoType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
properties
mixed true
children | ds:KeyName ds:KeyValue ds:RetrievalMethod ds:X509Data ds:PGPData ds:SPKIData ds:MgmtData
used by
elements ds:KeyInfo xenc:AgreementMethodType/OriginatorKeyInfo xenc:AgreementMethodType/RecipientKeyInfo
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source <complexType name="KeyInfoType" mixed="true">
<choice maxOccurs="unbounded">
<element ref="ds:KeyName"/>
<element ref="ds:KeyValue"/>
<element ref="ds:RetrievalMethod"/>
<element ref="ds:X509Data"/>
<element ref="ds:PGPData"/>
<element ref="ds:SPKIData"/>
<element ref="ds:MgmtData"/>
<any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
</choice>
<attribute name="Id" type="ID" use="optional"/>
</complexType>


complexType ds:KeyValueType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
properties
mixed true
children | ds:DSAKeyValue ds:RSAKeyValue
used by
element ds:KeyValue
source <complexType name="KeyValueType" mixed="true">
<choice>
<element ref="ds:DSAKeyValue"/>
<element ref="ds:RSAKeyValue"/>
<any namespace="##other" processContents="lax"/>
</choice>
</complexType>


complexType ds:ManifestType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:Reference
used by
element ds:Manifest
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source <complexType name="ManifestType">
<sequence>
<element ref="ds:Reference" maxOccurs="unbounded"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>


complexType ds:ObjectType

diagram
namespace http://www.w3.org/2000/09/xmldsig#
properties
mixed true
used by
element ds:Object
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
MimeType | string | optional
Encoding | anyURI | optional
source <complexType name="ObjectType" mixed="true">
<sequence minOccurs="0" maxOccurs="unbounded">
<any namespace="##any" processContents="lax"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
<attribute name="MimeType" type="string" use="optional"/>
<attribute name="Encoding" type="anyURI" use="optional"/>
<!-- add a grep facet -->
</complexType>


complexType ds:PGPDataType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:PGPKeyID ds:PGPKeyPacket ds:PGPKeyPacket
used by
element ds:PGPData
source <complexType name="PGPDataType">
<choice>
<sequence>
<element name="PGPKeyID" type="base64Binary"/>
<element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<sequence>
<element name="PGPKeyPacket" type="base64Binary"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</choice>
</complexType>


complexType ds:ReferenceType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:Transforms ds:DigestMethod ds:DigestValue
used by
element ds:Reference
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
URI | anyURI | optional
Type | anyURI | optional
source <complexType name="ReferenceType">
<sequence>
<element ref="ds:Transforms" minOccurs="0"/>
<element ref="ds:DigestMethod"/>
<element ref="ds:DigestValue"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
<attribute name="URI" type="anyURI" use="optional"/>
<attribute name="Type" type="anyURI" use="optional"/>
</complexType>


complexType ds:RetrievalMethodType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:Transforms
used by
element ds:RetrievalMethod
attributes parameters
Name | Type | Use | Default | Fixed
URI | anyURI
Type | anyURI | optional
source <complexType name="RetrievalMethodType">
<sequence>
<element ref="ds:Transforms" minOccurs="0"/>
</sequence>
<attribute name="URI" type="anyURI"/>
<attribute name="Type" type="anyURI" use="optional"/>
</complexType>


complexType ds:RSAKeyValueType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:Modulus ds:Exponent
used by
element ds:RSAKeyValue
source <complexType name="RSAKeyValueType">
<sequence>
<element name="Modulus" type="ds:CryptoBinary"/>
<element name="Exponent" type="ds:CryptoBinary"/>
</sequence>
</complexType>


complexType ds:SignatureMethodType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
properties
mixed true
children | ds:HMACOutputLength
used by
element ds:SignatureMethod
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source <complexType name="SignatureMethodType" mixed="true">
<sequence>
<element name="HMACOutputLength" type="ds:HMACOutputLengthType" minOccurs="0"/>
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) external namespace -->
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>


complexType ds:SignaturePropertiesType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:SignatureProperty
used by
element ds:SignatureProperties
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source <complexType name="SignaturePropertiesType">
<sequence>
<element ref="ds:SignatureProperty" maxOccurs="unbounded"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>


element ds:SignatureProperty

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:SignaturePropertyType
properties
content | complex
mixed | true
used by
complexType ds:SignaturePropertiesType
attributes parameters
Name | Type | Use | Default | Fixed
Target | anyURI | required
Id | ID | optional
source | <element name="SignatureProperty" type="ds:SignaturePropertyType"/>


complexType ds:SignaturePropertyType

diagram
namespace http://www.w3.org/2000/09/xmldsig#
properties
mixed true
used by
element ds:SignatureProperty
attributes parameters
Name | Type | Use | Default | Fixed
Target | anyURI | required
Id | ID | optional
source <complexType name="SignaturePropertyType" mixed="true">
<choice maxOccurs="unbounded">
<any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (1,unbounded) namespaces -->
</choice>
<attribute name="Target" type="anyURI" use="required"/>
<attribute name="Id" type="ID" use="optional"/>
</complexType>


complexType ds:SignatureType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:SignedInfo ds:SignatureValue ds:KeyInfo ds:Object
used by
element ds:Signature
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source <complexType name="SignatureType">
<sequence>
<element ref="ds:SignedInfo"/>
<element ref="ds:SignatureValue"/>
<element ref="ds:KeyInfo" minOccurs="0"/>
<element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>


complexType ds:SignatureValueType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | extension of base64Binary
properties
base base64Binary
used by
element ds:SignatureValue
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source <complexType name="SignatureValueType">
<simpleContent>
<extension base="base64Binary">
<attribute name="Id" type="ID" use="optional"/>
</extension>
</simpleContent>
</complexType>


complexType ds:SignedInfoType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:CanonicalizationMethod ds:SignatureMethod ds:Reference
used by
element ds:SignedInfo
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source <complexType name="SignedInfoType">
<sequence>
<element ref="ds:CanonicalizationMethod"/>
<element ref="ds:SignatureMethod"/>
<element ref="ds:Reference" maxOccurs="unbounded"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>


complexType ds:SPKIDataType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:SPKISexp
used by
element ds:SPKIData
source <complexType name="SPKIDataType">
<sequence maxOccurs="unbounded">
<element name="SPKISexp" type="base64Binary"/>
<any namespace="##other" processContents="lax" minOccurs="0"/>
</sequence>
</complexType>


complexType ds:TransformsType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:Transform
used by
element ds:Transforms
source <complexType name="TransformsType">
<sequence>
<element ref="ds:Transform" maxOccurs="unbounded"/>
</sequence>
</complexType>


complexType ds:TransformType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
properties
mixed true
children | ds:XPath
used by
element ds:Transform
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source <complexType name="TransformType" mixed="true">
<choice minOccurs="0" maxOccurs="unbounded">
<any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
<element name="XPath" type="string"/>
</choice>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>


complexType ds:X509DataType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:X509IssuerSerial ds:X509SKI ds:X509SubjectName ds:X509Certificate ds:X509CRL
used by
element ds:X509Data
source <complexType name="X509DataType">
<sequence maxOccurs="unbounded">
<choice>
<element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
<element name="X509SKI" type="base64Binary"/>
<element name="X509SubjectName" type="string"/>
<element name="X509Certificate" type="base64Binary"/>
<element name="X509CRL" type="base64Binary"/>
<any namespace="##other" processContents="lax"/>
</choice>
</sequence>
</complexType>


complexType ds:X509IssuerSerialType

diagram
namespace | http://www.w3.org/2000/09/xmldsig#
children | ds:X509IssuerName ds:X509SerialNumber
used by
element ds:X509DataType/X509IssuerSerial
source <complexType name="X509IssuerSerialType">
<sequence>
<element name="X509IssuerName" type="string"/>
<element name="X509SerialNumber" type="integer"/>
</sequence>
</complexType>


complexType lawType

diagram
namespace http://www.forum-datenaustausch.ch/pam
used by
element bodyType/law
attributes parameters
Name | Type | Use | Default | Fixed
type | derived by: NMTOKEN | required
card_id pam:stringType1_35
insured_id pam:stringType1_35
case_id pam:stringType1_35
case_date | date
attributes annotations
Name | Notes
type type is the type of applicable law encoded by a terminal set of tokens
  • KVG: the applicable law is "Krankenversicherungsgesetz" abbreviated {"KVG" | "LAMal" | "LAMal"} in the official national languages
  • VVG: the applicable law is "Versicherungsvertragsgesetz" abbreviated {"VVG" | "LCA" | "LCA"} in the official national languages
  • UVG: the applicable law is "Unfallversicherungsgesetz" abbreviated {"UVG" | "LAA" | "LAINF"} in the official national languages
  • IVG: the applicable law is "Invalidenversicherungsgesetz" abbreviated {"IVG" | "LAI" | "LAI"} in the official national languages
  • MVG: the applicable law is "Militäversicherungsgesetz" abbreviated {"MVG" | "LAM" | "LAM"} in the official national languages
  • ORG: the applicable law is "Obligationenrechtsgesetz" abbreviated {"ORG" | "CO" | "CO"} in the official national languages
card_id the card_id defines the required 20-digits official card identification of the patient at the insurance.
If the card_id is unknown or unavailable (it might be a resident of a foreign country) than supply the proprietary insured_id identifying the patient at the insurance.
insured_id | the optional insured_id is the KVG customer number also known as insured number.
case_id case_id is the treatment/case identification number issued by by the insurance
It should be noted that the existence, form and specifications of case_id is dependent on the law:
  • KVG: there is currently no such case id known at the insurance site. Future contracts between provider and insurance might make such a case id necessary.
  • VVG: there is currently no such case id known at the insurance site. Future contracts between provider and insurance might make such a case id necessary.
  • UVG: defines the required accident number uniquely identifying the corresponding case at the insurance's site.
    If no accident number is supplied, a rejection must be expected.
  • IVG: defines the required case id having a well defined data pattern of ([0-9]{14}|[0-9]{10}|[0-9]{9}|[0-9]{6}).
    If no case id is supplied, a rejection must be expected.
  • MVG: defines the optional case id
  • ORG: there is currently no such case id known.
case_date case_date is the treatment/case date issued by by the insurance
It should be noted that the existence, form and specifications of case_date is dependent on the law:
  • KVG: there is currently no such case date known at the insurance site.
  • VVG: there is currently no such case date known at the insurance site.
  • UVG: defines the optional accident date identifying the occurrence of the accident.
  • IVG: there is currently no such case date known at the insurance site.
  • MVG: defines the optional case date
  • ORG: there is currently no such case id known.
attributes enumerations
Name | Extension | Base | Value | Annotations
type | NMTOKEN | KVG | the applicable law is "Krankenversicherungsgesetz" abbreviated {"KVG" | "LAMal" | "LAMal"} in the official national languages
type | NMTOKEN | VVG | the applicable law is "Versicherungsvertragsgesetz" abbreviated {"VVG" | "LCA" | "LCA"} in the official national languages
type | NMTOKEN | UVG | the applicable law is "Unfallversicherungsgesetz" abbreviated {"UVG" | "LAA" | "LAINF"} in the official national languages
type | NMTOKEN | IVG | the applicable law is "Invalidenversicherungsgesetz" abbreviated {"IVG" | "LAI" | "LAI"} in the official national languages
type | NMTOKEN | MVG | the applicable law is "Militäversicherungsgesetz" abbreviated {"MVG" | "LAM" | "LAM"} in the official national languages
type | NMTOKEN | ORG | the applicable law is "Obligationenrechtsgesetz" abbreviated {"ORG" | "CO" | "CO"} in the official national languages
source <complexType name="lawType">
<attribute name="type" use="required">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="KVG"/>
<enumeration value="VVG"/>
<enumeration value="UVG"/>
<enumeration value="IVG"/>
<enumeration value="MVG"/>
<enumeration value="ORG"/>
</restriction>
</simpleType>
</attribute>
<attribute name="card_id" type="pam:stringType1_35"/>
<attribute name="insured_id" type="pam:stringType1_35"/>
<attribute name="case_id" type="pam:stringType1_35"/>
<attribute name="case_date" type="date"/>
</complexType>


complexType messageType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:stationary
used by
element bodyType/message
attributes parameters
Name | Type | Use | Default | Fixed
message_type | derived by: NMTOKEN | treatment
message_action | derived by: NMTOKEN | required
message_date | dateTime | required
treatment_type | derived by: NMTOKEN | ambulatory
treatment_reason | derived by: NMTOKEN | required
attributes annotations
Name | Notes
message_type message_type is the principle type of messaging encoded by a terminal set of tokens.
  • treatment: the message target is treatment
message_action message_action is the principle action of messaging encoded by a terminal set of tokens.
  • scheduled: the message action is scheduled meaning that 'message' is scheduled for the 'message_date'
  • canceled: the message action is canceled meaning a prior scheduled 'message' for 'message_date' is canceled
  • start: the message action is start meaning that 'message' begins at 'message_date'
  • end: the message action is end meaning that 'message' ends at 'message_date'
message_date | message_date is the date and time when messaging is performed/defined.
treatment_type treatment_type is the principle type of treatment encoded by a terminal set of tokens.
  • ambulatory: the treatment type is ambulatory (default)
  • stationary: the treatment type is stationary
treatment_reason treatment_reason is the primary reason why the treatment is taking place encoded by a terminal set of tokens
  • disease: the reason of treatment is a disease
  • accident: the reason of treatment is an accident
  • maternity: the reason of treatment is a maternity
  • prevention: the reason of treatment is prevention
  • birthdefect: the reason of treatment is a birthdefect
  • unknown: the reason of treatment is unknown (or something not mentioned above)
attributes enumerations
Name | Extension | Base | Value | Annotations
message_action | NMTOKEN | scheduled | the message action is scheduled meaning that 'message' is scheduled for the 'message_date'
message_action | NMTOKEN | canceled | the message action is canceled meaning a prior scheduled 'message' for 'message_date' is canceled
message_action | NMTOKEN | start | the message action is start meaning that 'message' begins at 'message_date'
message_action | NMTOKEN | end | the message action is end meaning that 'message' ends at 'message_date'
message_type | NMTOKEN | treatment | the message target is treatment (default)
treatment_reason | NMTOKEN | disease | the reason of treatment is a disease
treatment_reason | NMTOKEN | accident | the reason of treatment is an accident
treatment_reason | NMTOKEN | maternity | the reason of treatment is a maternity
treatment_reason | NMTOKEN | prevention | the reason of treatment is prevention
treatment_reason | NMTOKEN | birthdefect | the reason of treatment is a birthdefect
treatment_reason | NMTOKEN | unknown | the reason of treatment is unknown (or something not mentioned above)
treatment_type | NMTOKEN | ambulatory | the treatment type is ambulatory (default)
treatment_type | NMTOKEN | stationary | the treatment type is stationary
source <complexType name="messageType">
<sequence>
<element name="stationary" type="pam:stationaryType" minOccurs="0"/>
</sequence>
<attribute name="message_type" default="treatment">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="treatment"/>
</restriction>
</simpleType>
</attribute>
<attribute name="message_action" use="required">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="scheduled"/>
<enumeration value="canceled"/>
<enumeration value="start"/>
<enumeration value="end"/>
</restriction>
</simpleType>
</attribute>
<attribute name="message_date" type="dateTime" use="required"/>
<attribute name="treatment_type" default="ambulatory">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="ambulatory"/>
<enumeration value="stationary"/>
</restriction>
</simpleType>
</attribute>
<attribute name="treatment_reason" use="required">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="disease"/>
<enumeration value="accident"/>
<enumeration value="maternity"/>
<enumeration value="prevention"/>
<enumeration value="birthdefect"/>
<enumeration value="unknown"/>
</restriction>
</simpleType>
</attribute>
</complexType>


complexType onlineAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:email pam:uri
used by
elements personType/online companyType/online
source <complexType name="onlineAddressType">
<sequence>
<element name="email" maxOccurs="3">
<simpleType>
<restriction base="pam:stringType1_80">
<pattern value=".+@.+"/>
</restriction>
</simpleType>
</element>
<element name="uri" minOccurs="0" maxOccurs="3">
<simpleType>
<restriction base="anyURI">
<minLength value="1"/>
<maxLength value="160"/>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>


complexType patientAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:person
used by
element bodyType/patient
attributes parameters
Name | Type | Use | Default | Fixed
gender | derived by: NMTOKEN | required
sex | derived by: NMTOKEN | required
birthdate | date | required
ssn | pam:ssnPartyType | required
attributes annotations
Name | Notes
gender gender defines the social gender encoded by a terminal set of tokens
  • male: the patient identifies with the gender of male
  • female: the patient identifies with the gender of female
  • diverse: the patient identifies with neither/both female and male, or identifies as transgender. Furthermore, "diverse" is applicable if the gender is unknown, or the patient does not wish to disclosure his gender identity.
sex sex defines the medical sex which is pre-dominantly induced by the actual hormonal balance of the body. The attribute sex is encoded by a terminal set of tokens
  • male: the sex of the patient is pre-dominantly male
  • female: the sex of the patient is pre-dominantly female
birthdate | birthdate defines the birthdate of the patient
ssn the required ssn defines the social security number of the patient whereupon 3 distinguished styles are allowed:
  • the new 13 digit Swiss SSN ("SV-Nummer") beginning with 756 as defined by Federal Social Insurance Office
  • the new 4-10 digit SSN of Liechtenstein ("AHV-Nummer") as defined by Liechtensteinische AHV-IV-FAK
  • the 13 digit IDNR number of Liechtenstein ("IDNR-Nummer") beginning with 438
If for any reasons the SSN of the patient is unknown, than the unknownSSN := 7569999999991 must be defined to satisfy the schema validity!

Note, that the SSN is stored in the electronic flavor (digits only) whereas on any printed form it must be in its formatted print flavor as requested by the federal authorities.
attributes enumerations
Name | Extension | Base | Value | Annotations
gender | NMTOKEN | male | the patient identifies with the gender of male
gender | NMTOKEN | female | the patient identifies with the gender of female
gender | NMTOKEN | diverse | the patient identifies with the gender of diverse
sex | NMTOKEN | male | the sex of the patient is pre-dominantly male
sex | NMTOKEN | female | the sex of the patient is pre-dominantly female
source <complexType name="patientAddressType">
<sequence>
<element name="person" type="pam:personType"/>
</sequence>
<attribute name="gender" use="required">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="male"/>
<enumeration value="female"/>
<enumeration value="diverse"/>
</restriction>
</simpleType>
</attribute>
<attribute name="sex" use="required">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="male"/>
<enumeration value="female"/>
</restriction>
</simpleType>
</attribute>
<attribute name="birthdate" type="date" use="required"/>
<attribute name="ssn" type="pam:ssnPartyType" use="required"/>
</complexType>


complexType payloadType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:body xenc:EncryptedData
used by
element requestType/payload
source <complexType name="payloadType">
<choice>
<element name="body" type="pam:bodyType"/>
<element ref="xenc:EncryptedData"/>
</choice>
</complexType>


complexType personType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:familyname pam:givenname pam:subaddressing pam:postal pam:telecom pam:online
used by
elements billerGLNAddressType/person zsrAddressType/person providerGLNAddressType/person debitorAddressType/person patientAddressType/person
attributes parameters
Name Type Use Default Fixed
salutation pam:stringType1_35
title pam:stringType1_35
attributes annotations
Name | Notes
salutation | salutation is the optional salutation of the person
title | title is optional title of the person
source <complexType name="personType">
<sequence>
<element name="familyname" type="pam:stringType1_35"/>
<element name="givenname" type="pam:stringType1_35"/>
<element name="subaddressing" type="pam:stringType1_35" minOccurs="0"/>
<element name="postal" type="pam:postalAddressType"/>
<element name="telecom" type="pam:telecomAddressType" minOccurs="0"/>
<element name="online" type="pam:onlineAddressType" minOccurs="0"/>
</sequence>
<attribute name="salutation" type="pam:stringType1_35"/>
<attribute name="title" type="pam:stringType1_35"/>
</complexType>


complexType postalAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:pobox pam:street pam:zip pam:city pam:country
used by
elements personType/postal companyType/postal
source <complexType name="postalAddressType">
<sequence>
<element name="pobox" type="pam:stringType1_35" minOccurs="0"/>
<element name="street" type="pam:streetType" minOccurs="0"/>
<element name="zip" type="pam:zipType"/>
<element name="city" type="pam:stringType1_35"/>
<element name="country" type="pam:countryType" minOccurs="0"/>
</sequence>
</complexType>


complexType processingType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:transport
used by
element requestType/processing
source <complexType name="processingType">
<sequence>
<element name="transport" type="pam:transportType"/>
</sequence>
</complexType>


complexType providerGLNAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:company pam:person
used by
element providersAddressType/provider_gln
attributes parameters
Name | Type | Use | Default | Fixed
main_treating_provider pam:stringType1_100
gln | pam:glnPartyType | required
gln_location | pam:glnPartyType | required
uid pam:stringType1_15
attributes annotations
Name | Notes
main_treating_provider | The optional main_treating_provider is the full name of the case leading provider should that name be different from the one given in the address section
gln The gln is the provider's required GLN as defined by RefData
If in agreement with the health insurance, the GLN given can be a Swiss SSN (social security number), provided that the corresponding treatment is carried out by the patient himself or a relative of the patient.
gln_location | The gln_location codes the provider's workplace by a required GLN as defined by RefData If there is no such specific workplace defined then input the gln as gln_location, basically defining the default workplace/location.
uid uid is the UID number in the electronic layout as defined by the "Swiss Federal Tax Administration".
In the electronic layout all punctuation characters ('-' and '.') are striped. Consequently, the UID number must be expanded appropriately prior to be printed, e.g.
  • CHE123456789 in the electronic layout is printed as CHE-123.456.789
source <complexType name="providerGLNAddressType">
<choice>
<element name="company" type="pam:companyType"/>
<element name="person" type="pam:personType"/>
</choice>
<attribute name="main_treating_provider" type="pam:stringType1_100"/>
<attribute name="gln" type="pam:glnPartyType" use="required"/>
<attribute name="gln_location" type="pam:glnPartyType" use="required"/>
<attribute name="uid" type="pam:stringType1_15"/>
</complexType>


complexType providersAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:provider_gln pam:provider_zsr
used by
element bodyType/providers
source <complexType name="providersAddressType">
<sequence>
<element name="provider_gln" type="pam:providerGLNAddressType"/>
<element name="provider_zsr" type="pam:zsrAddressType" minOccurs="0"/>
</sequence>
</complexType>


complexType requestType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:processing pam:payload ds:Signature
used by
element request
attributes parameters
Name | Type | Use | Default | Fixed
language | derived by: NMTOKEN | required
modus | derived by: NMTOKEN | production
guid | pam:guidType | required
attributes annotations
Name Notes
language language defines the used data language (name of the services etc.) encoded by a terminal set of ISO language specifiers. All responses will be encoded in the same language.
  • de: the data language is german
  • fr: the data language is french
  • it: the data language is italian
modus modus defines the operating modus encoded by a terminal set of tokens
  • production: the modus production (default value) is for normal processing
  • test: the modus test is for software developers to test the processing
    By definition there must not be any money flow!
guid the required guid (Globally Unique IDentifier) is an unique identifier for the current XML infoset defined as a 32 hex-digit string covered by the pattern [A-Fa-f0-9]{32}.
Please note that the generation of the guid must be in accordance with RFC 9562.
attributes enumerations
Name | Extension | Base | Value | Annotations
language | NMTOKEN | de | the data language is german
language | NMTOKEN | fr | the data language is french
language | NMTOKEN | it | the data language is italian
modus | NMTOKEN | production | the modus production (default value) is for normal processing
modus NMTOKEN test the modus test is for software developers to test the processing
By definition there must not be any money flow!
source <complexType name="requestType">
<sequence>
<element name="processing" type="pam:processingType"/>
<element name="payload" type="pam:payloadType"/>
<element ref="ds:Signature" minOccurs="0"/>
</sequence>
<attribute name="language" use="required">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="de"/>
<enumeration value="fr"/>
<enumeration value="it"/>
</restriction>
</simpleType>
</attribute>
<attribute name="modus" default="production">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="production"/>
<enumeration value="test"/>
</restriction>
</simpleType>
</attribute>
<attribute name="guid" type="pam:guidType" use="required"/>
</complexType>


complexType stationaryType

diagram
namespace http://www.forum-datenaustausch.ch/pam
used by
element messageType/stationary
attributes parameters
Name | Type | Use | Default | Fixed
hospitalization_type | derived by: NMTOKEN | regular
hospitalization_mode | derived by: NMTOKEN | cantonal
hospitalization_class | derived by: NMTOKEN | general
section_major pam:stringType1_9
residence_code | derived by: NMTOKEN
attributes annotations
Name | Notes
hospitalization_type hospitalization_type is the type of hospitalization encoded by a terminal set of tokens
  • regular: the type of hospitalization is regular ("a normal and planned hospitalization")
  • emergency: the type of hospitalization is emergency ("hospitalization due to an emergency")
  • welfare: the type of hospitalization is welfare ("Fürsorglicher Freiheitsentzug")
hospitalization_mode hospitalization_mode is the mode of hospitalization encoded by a terminal set of tokens
  • cantonal: the mode of hospitalization is cantonal - patient's domicile is in the treatment canton)
  • noncantonal_indicated: the mode of hospitalization is noncantonal_indicated - patient's domicile is not in the treatment canton, but treatment is indicated
  • noncantonal_nonindicated: the mode of hospitalization is noncantonal_nonindicated - patient's domicile is not in the treatment canton and treatment is not indicated
hospitalization_class the hospitalization_class is the class of insurance that covers the patient's stay encoded by a terminal set of tokens
  • private: the class of the treatment is private (1st class insurance coverage)
  • semi_private: the class of the treatment is semi_private (2nd class insurance coverage)
  • general: the class of the treatment is general (3rd class insurance coverage)
  • hospital_comfort: the class of the treatment is hospital_comfort
  • md_free_choice: the class of the treatment is md_free_choice ("Freie Arztwahl")
section_major | the optional section_major code is a "BfS - Swiss Federal Statistical Office" code indicating the major location of service provision. This BfS major section code only has to be specified if the corresponding tariff contract stipulates this.
residence_code the optional residence_code supplies information about the admission/discharge location where the patient is coming from or going to encoded by a terminal set of tokens
  • home: the patient's admission/discharge location is his home
  • home_with_spitex_care: the patient's admission/discharge location is his home having a spitex care as support
  • hospital_same_place: the patient's admission/discharge location is the same hospital as their current location
  • hospital_other_place: the patient's admission/discharge location is a different hospital to their current location
  • retirement_home: the patient's admission/discharge location is a retirement home
  • nursing_home: the patient's admission/discharge location is a nursing home
  • psychiatric_clinic_same_place: the patient's admission/discharge location is the same psychiatric clinic as their current location
  • psychiatric_clinic_other_place: the patient's admission/discharge location is a different psychiatric clinic to their current location
  • rehabilitation_clinic_same_place: the patient's admission/discharge location is the same rehabilitation clinic as their current location
  • rehabilitation_clinic_other_place: the patient's admission/discharge location is a different rehabilitation clinic to their current location
  • birth_house: the patient's admission/discharge location is a birth house
  • correctional_facility: the patient's admission/discharge location is a correctional facility
  • other: the patient's admission/discharge location is not mentioned above
  • unknown: the patient's admission/discharge location is unknown
attributes enumerations
Name | Extension | Base | Value | Annotations
hospitalization_class | NMTOKEN | private | the class of insurance is private (1st class insurance coverage)
hospitalization_class | NMTOKEN | semi_private | the class of insurance is semi_private (2nd class insurance coverage)
hospitalization_class | NMTOKEN | general | the class of insurance is general (3rd class insurance coverage)
hospitalization_class | NMTOKEN | hospital_comfort | the class of insurance is hospital_comfort ()
hospitalization_class | NMTOKEN | md_free_choice | the class of insurance is md_free_choice ("Freie Arztwahl")
hospitalization_mode | NMTOKEN | cantonal | the mode of hospitalization is cantonal - patient's domicile is in the treatment canton)
hospitalization_mode | NMTOKEN | noncantonal_indicated | the mode of hospitalization is noncantonal_indicated - patient's domicile is not in the treatment canton, but treatment is indicated
hospitalization_mode | NMTOKEN | noncantonal_nonindicated | the mode of hospitalization is noncantonal_nonindicated - patient's domicile is not in the treatment canton and treatment is not indicated
hospitalization_type | NMTOKEN | regular | the type of hospitalization is regular ("a normal and planned hospitalization")
hospitalization_type | NMTOKEN | emergency | the type of hospitalization is emergency ("hospitalization due to an emergency")
hospitalization_type | NMTOKEN | welfare | the type of hospitalization is welfare ("Fürsorglicher Freiheitsentzug")
residence_code | NMTOKEN | home | the patient's admission/discharge location is his home
residence_code | NMTOKEN | home_with_spitex_care | the patient's admission/discharge location is his home having a spitex care as support
residence_code | NMTOKEN | hospital_same_place | the patient's admission/discharge location is the same hospital as their current location
residence_code | NMTOKEN | hospital_other_place | the patient's admission/discharge location is a different hospital to their current location
residence_code | NMTOKEN | retirement_home | the patient's admission/discharge location is a retirement home
residence_code | NMTOKEN | nursing_home | the patient's admission/discharge location is a nursing home
residence_code | NMTOKEN | psychiatric_clinic_same_place | the patient's admission/discharge location is the same psychiatric clinic as their current location
residence_code | NMTOKEN | psychiatric_clinic_other_place | the patient's admission/discharge location is a different psychiatric clinic to their current location
residence_code | NMTOKEN | rehabilitation_clinic_same_place | the patient's admission/discharge location is the same rehabilitation clinic as their current location
residence_code | NMTOKEN | rehabilitation_clinic_other_place | the patient's admission/discharge location is a different rehabilitation clinic to their current location
residence_code | NMTOKEN | birth_house | the patient's admission/discharge location is a birth house
residence_code | NMTOKEN | correctional_facility | the patient's admission/discharge location is a correctional facility
residence_code | NMTOKEN | other | the patient's admission/discharge location is not mentioned above
residence_code | NMTOKEN | unknown | the patient's admission/discharge location is unknown
source <complexType name="stationaryType">
<attribute name="hospitalization_type" default="regular">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="regular"/>
<enumeration value="emergency"/>
<enumeration value="welfare"/>
</restriction>
</simpleType>
</attribute>
<attribute name="hospitalization_mode" default="cantonal">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="cantonal"/>
<enumeration value="noncantonal_indicated"/>
<enumeration value="noncantonal_nonindicated"/>
</restriction>
</simpleType>
</attribute>
<attribute name="hospitalization_class" default="general">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="private"/>
<enumeration value="semi_private"/>
<enumeration value="general"/>
<enumeration value="hospital_comfort"/>
<enumeration value="md_free_choice"/>
</restriction>
</simpleType>
</attribute>
<attribute name="section_major" type="pam:stringType1_9"/>
<attribute name="residence_code">
<simpleType>
<restriction base="NMTOKEN">
<enumeration value="home"/>
<enumeration value="home_with_spitex_care"/>
<enumeration value="hospital_same_place"/>
<enumeration value="hospital_other_place"/>
<enumeration value="retirement_home"/>
<enumeration value="nursing_home"/>
<enumeration value="psychiatric_clinic_same_place"/>
<enumeration value="psychiatric_clinic_other_place"/>
<enumeration value="rehabilitation_clinic_same_place"/>
<enumeration value="rehabilitation_clinic_other_place"/>
<enumeration value="birth_house"/>
<enumeration value="correctional_facility"/>
<enumeration value="other"/>
<enumeration value="unknown"/>
</restriction>
</simpleType>
</attribute>
</complexType>


complexType streetType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | extension of pam:stringType1_35
properties
base pam:stringType1_35
used by
element postalAddressType/street
facets
minLength | 1
maxLength | 35
attributes parameters
Name Type Use Default Fixed
street_name pam:stringType1_35
house_no pam:stringType1_10
attributes annotations
Name | Notes
street_name | street_name is the optional street name being part of the full street definition. Please note that the street name is an extracted copy from the full street definition.
house_no | house_no is the optional house number being part of full street definition. Please note that the house number is an extracted copy from the full street definition.
Extensions
Annotation | Base
Definition for the street container (a subcontainer of the address definition) supplying the full street as element and the split up into street name and house number both defined as attributes. | pam:stringType1_35
source <complexType name="streetType">
<simpleContent>
<extension base="pam:stringType1_35">
<attribute name="street_name" type="pam:stringType1_35"/>
<attribute name="house_no" type="pam:stringType1_10"/>
</extension>
</simpleContent>
</complexType>


complexType telecomAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:phone
used by
elements personType/telecom companyType/telecom
source <complexType name="telecomAddressType">
<sequence>
<element name="phone" type="pam:stringType1_25" maxOccurs="3"/>
</sequence>
</complexType>


complexType transportType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:via
used by
element processingType/transport
attributes parameters
Name | Type | Use | Default | Fixed
from | pam:glnPartyType | required
to | pam:glnPartyType | required
source <complexType name="transportType">
<sequence>
<element name="via" minOccurs="0" maxOccurs="unbounded">
<complexType>
<attribute name="via" type="pam:glnPartyType" use="required"/>
<attribute name="sequence_id" type="unsignedShort" use="required"/>
</complexType>
</element>
</sequence>
<attribute name="from" type="pam:glnPartyType" use="required"/>
<attribute name="to" type="pam:glnPartyType" use="required"/>
</complexType>


complexType xenc:AgreementMethodType

diagram
namespace | http://www.w3.org/2001/04/xmlenc#
properties
mixed true
children | xenc:KA-Nonce xenc:OriginatorKeyInfo xenc:RecipientKeyInfo
used by
element xenc:AgreementMethod
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source <complexType name="AgreementMethodType" mixed="true">
<sequence>
<element name="KA-Nonce" type="base64Binary" minOccurs="0"/>
<!-- <element ref="ds:DigestMethod" minOccurs="0"/> -->
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
<element name="OriginatorKeyInfo" type="ds:KeyInfoType" minOccurs="0"/>
<element name="RecipientKeyInfo" type="ds:KeyInfoType" minOccurs="0"/>
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>


element xenc:AgreementMethodType/KA-Nonce

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | base64Binary
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
source | <element name="KA-Nonce" type="base64Binary" minOccurs="0"/>


element xenc:AgreementMethodType/OriginatorKeyInfo

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | ds:KeyInfoType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
mixed | true
children | ds:KeyName ds:KeyValue ds:RetrievalMethod ds:X509Data ds:PGPData ds:SPKIData ds:MgmtData
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source | <element name="OriginatorKeyInfo" type="ds:KeyInfoType" minOccurs="0"/>


element xenc:AgreementMethodType/RecipientKeyInfo

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | ds:KeyInfoType
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | complex
mixed | true
children | ds:KeyName ds:KeyValue ds:RetrievalMethod ds:X509Data ds:PGPData ds:SPKIData ds:MgmtData
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source | <element name="RecipientKeyInfo" type="ds:KeyInfoType" minOccurs="0"/>


complexType xenc:CipherDataType

diagram
namespace | http://www.w3.org/2001/04/xmlenc#
children | xenc:CipherValue xenc:CipherReference
used by
element xenc:CipherData
source <complexType name="CipherDataType">
<choice>
<element name="CipherValue" type="base64Binary"/>
<element ref="xenc:CipherReference"/>
</choice>
</complexType>


complexType xenc:CipherReferenceType

diagram
namespace | http://www.w3.org/2001/04/xmlenc#
children | xenc:Transforms
used by
element xenc:CipherReference
attributes parameters
Name | Type | Use | Default | Fixed
URI | anyURI | required
source <complexType name="CipherReferenceType">
<choice>
<element name="Transforms" type="xenc:TransformsType" minOccurs="0"/>
</choice>
<attribute name="URI" type="anyURI" use="required"/>
</complexType>


complexType xenc:EncryptedDataType

diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | extension of xenc:EncryptedType
properties
base xenc:EncryptedType
children | xenc:EncryptionMethod ds:KeyInfo xenc:CipherData xenc:EncryptionProperties
used by
element xenc:EncryptedData
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
Type | anyURI | optional
MimeType | string | optional
Encoding | anyURI | optional
source <complexType name="EncryptedDataType">
<complexContent>
<extension base="xenc:EncryptedType"/>
</complexContent>
</complexType>


complexType xenc:EncryptedKeyType

diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | extension of xenc:EncryptedType
properties
base xenc:EncryptedType
children | xenc:EncryptionMethod ds:KeyInfo xenc:CipherData xenc:EncryptionProperties xenc:ReferenceList xenc:CarriedKeyName
used by
element xenc:EncryptedKey
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
Type | anyURI | optional
MimeType | string | optional
Encoding | anyURI | optional
Recipient | string | optional
source <complexType name="EncryptedKeyType">
<complexContent>
<extension base="xenc:EncryptedType">
<sequence>
<element ref="xenc:ReferenceList" minOccurs="0"/>
<element name="CarriedKeyName" type="string" minOccurs="0"/>
</sequence>
<attribute name="Recipient" type="string" use="optional"/>
</extension>
</complexContent>
</complexType>


element xenc:ReferenceList

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
properties
content complex
children | xenc:DataReference xenc:KeyReference
used by
complexType xenc:EncryptedKeyType
source <element name="ReferenceList">
<complexType>
<choice maxOccurs="unbounded">
<element name="DataReference" type="xenc:ReferenceType"/>
<element name="KeyReference" type="xenc:ReferenceType"/>
</choice>
</complexType>
</element>


element xenc:EncryptedKeyType/CarriedKeyName

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | string
properties
isRef | 0
minOcc | 0
maxOcc | 1
content | simple
source | <element name="CarriedKeyName" type="string" minOccurs="0"/>


complexType xenc:EncryptedType

diagram
namespace | http://www.w3.org/2001/04/xmlenc#
properties
abstract true
children | xenc:EncryptionMethod ds:KeyInfo xenc:CipherData xenc:EncryptionProperties
used by
complexTypes xenc:EncryptedDataType xenc:EncryptedKeyType
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
Type | anyURI | optional
MimeType | string | optional
Encoding | anyURI | optional
source <complexType name="EncryptedType" abstract="true">
<sequence>
<element name="EncryptionMethod" type="xenc:EncryptionMethodType" minOccurs="0"/>
<element ref="ds:KeyInfo" minOccurs="0"/>
<element ref="xenc:CipherData"/>
<element ref="xenc:EncryptionProperties" minOccurs="0"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
<attribute name="Type" type="anyURI" use="optional"/>
<attribute name="MimeType" type="string" use="optional"/>
<attribute name="Encoding" type="anyURI" use="optional"/>
</complexType>


complexType xenc:EncryptionMethodType

diagram
namespace | http://www.w3.org/2001/04/xmlenc#
properties
mixed true
children | xenc:KeySize xenc:OAEPparams
used by
element xenc:EncryptedType/EncryptionMethod
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source <complexType name="EncryptionMethodType" mixed="true">
<sequence>
<element name="KeySize" type="xenc:KeySizeType" minOccurs="0"/>
<element name="OAEPparams" type="base64Binary" minOccurs="0"/>
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>


complexType xenc:EncryptionPropertiesType

diagram
namespace | http://www.w3.org/2001/04/xmlenc#
children | xenc:EncryptionProperty
used by
element xenc:EncryptionProperties
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source <complexType name="EncryptionPropertiesType">
<sequence>
<element ref="xenc:EncryptionProperty" maxOccurs="unbounded"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>


complexType xenc:EncryptionPropertyType

diagram
namespace http://www.w3.org/2001/04/xmlenc#
properties
mixed true
used by
element xenc:EncryptionProperty
attributes parameters
Name | Type | Use | Default | Fixed
Target | anyURI | optional
Id | ID | optional
source <complexType name="EncryptionPropertyType" mixed="true">
<choice maxOccurs="unbounded">
<any namespace="##other" processContents="lax"/>
</choice>
<attribute name="Target" type="anyURI" use="optional"/>
<attribute name="Id" type="ID" use="optional"/>
<anyAttribute namespace="http://www.w3.org/XML/1998/namespace"/>
</complexType>


complexType xenc:ReferenceType

diagram
namespace http://www.w3.org/2001/04/xmlenc#
used by
elements xenc:ReferenceList/DataReference xenc:ReferenceList/KeyReference
attributes parameters
Name | Type | Use | Default | Fixed
URI | anyURI | required
source <complexType name="ReferenceType">
<sequence>
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="URI" type="anyURI" use="required"/>
</complexType>


complexType xenc:TransformsType

diagram
namespace | http://www.w3.org/2001/04/xmlenc#
children | ds:Transform
used by
element xenc:CipherReferenceType/Transforms
source <complexType name="TransformsType">
<sequence>
<element ref="ds:Transform" maxOccurs="unbounded"/>
</sequence>
</complexType>


complexType zipType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | extension of pam:stringType1_9
properties
base pam:stringType1_9
used by
element postalAddressType/zip
facets
minLength | 1
maxLength | 9
attributes parameters
Name Type Use Default Fixed
state_code pam:stringType1_9
attributes annotations
Name | Notes
state_code | state_code is an optional code for a state (e.g. the canton designator in Switzerland or the state in USA)
Extensions
Annotation | Base
Definition for the zip container (a subcontainer of an address definition) giving the zip code and an optional state code | pam:stringType1_9
source <complexType name="zipType">
<simpleContent>
<extension base="pam:stringType1_9">
<attribute name="state_code" type="pam:stringType1_9"/>
</extension>
</simpleContent>
</complexType>


complexType zsrAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:company pam:person
used by
elements billersAddressType/biller_zsr providersAddressType/provider_zsr
attributes parameters
Name | Type | Use | Default | Fixed
zsr | pam:zsrPartyType | required
attributes annotations
Name | Notes
zsr | zsr is the biller's or providers's required ZSR as defined by Santésuisse
source <complexType name="zsrAddressType">
<choice>
<element name="company" type="pam:companyType"/>
<element name="person" type="pam:personType"/>
</choice>
<attribute name="zsr" type="pam:zsrPartyType" use="required"/>
</complexType>


element ds:Manifest

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:ManifestType
properties
content complex
children | ds:Reference
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source | <element name="Manifest" type="ds:ManifestType"/>


element ds:SignatureProperties

Annotation
diagram
namespace | http://www.w3.org/2000/09/xmldsig#
type | ds:SignaturePropertiesType
properties
content complex
children | ds:SignatureProperty
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
source | <element name="SignatureProperties" type="ds:SignaturePropertiesType"/>


element xenc:AgreementMethod

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:AgreementMethodType
properties
content | complex
mixed | true
children | xenc:KA-Nonce xenc:OriginatorKeyInfo xenc:RecipientKeyInfo
attributes parameters
Name | Type | Use | Default | Fixed
Algorithm | anyURI | required
source | <element name="AgreementMethod" type="xenc:AgreementMethodType"/>


element xenc:EncryptedKey

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:EncryptedKeyType
properties
content complex
children | xenc:EncryptionMethod ds:KeyInfo xenc:CipherData xenc:EncryptionProperties xenc:ReferenceList xenc:CarriedKeyName
attributes parameters
Name | Type | Use | Default | Fixed
Id | ID | optional
Type | anyURI | optional
MimeType | string | optional
Encoding | anyURI | optional
Recipient | string | optional
source | <element name="EncryptedKey" type="xenc:EncryptedKeyType"/>


element xenc:ReferenceList/DataReference

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:ReferenceType
properties
isRef | 0
content | complex
attributes parameters
Name | Type | Use | Default | Fixed
URI | anyURI | required
source | <element name="DataReference" type="xenc:ReferenceType"/>


element xenc:ReferenceList/KeyReference

Annotation
diagram
namespace | http://www.w3.org/2001/04/xmlenc#
type | xenc:ReferenceType
properties
isRef | 0
content | complex
attributes parameters
Name | Type | Use | Default | Fixed
URI | anyURI | required
source | <element name="KeyReference" type="xenc:ReferenceType"/>


simpleType ds:CryptoBinary

namespace | http://www.w3.org/2000/09/xmldsig#
type | base64Binary
used by
elements ds:RSAKeyValueType/Exponent ds:DSAKeyValueType/G ds:DSAKeyValueType/J ds:RSAKeyValueType/Modulus ds:DSAKeyValueType/P ds:DSAKeyValueType/PgenCounter ds:DSAKeyValueType/Q ds:DSAKeyValueType/Seed ds:DSAKeyValueType/Y
source <simpleType name="CryptoBinary">
<restriction base="base64Binary"/>
</simpleType>


simpleType ds:DigestValueType

namespace | http://www.w3.org/2000/09/xmldsig#
type | base64Binary
used by
element ds:DigestValue
source <simpleType name="DigestValueType">
<restriction base="base64Binary"/>
</simpleType>


simpleType ds:HMACOutputLengthType

namespace | http://www.w3.org/2000/09/xmldsig#
type | integer
used by
element ds:SignatureMethodType/HMACOutputLength
source <simpleType name="HMACOutputLengthType">
<restriction base="integer"/>
</simpleType>


simpleType glnPartyType

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
attributes transportType/@from billerGLNAddressType/@gln providerGLNAddressType/@gln debitorAddressType/@gln providerGLNAddressType/@gln_location transportType/@to transportType/via/@via
facets
pattern ([0-9]{13})
source <simpleType name="glnPartyType">
<restriction base="string">
<pattern value="([0-9]{13})"/>
</restriction>
</simpleType>


simpleType guidType

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
attribute requestType/@guid
facets
pattern [A-Fa-f0-9]{32}
source <simpleType name="guidType">
<restriction base="string">
<pattern value="[A-Fa-f0-9]{32}"/>
</restriction>
</simpleType>


simpleType iso3166A2Type

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
attribute countryType/@country_code
facets
pattern ([A-Z]{2})
source <simpleType name="iso3166A2Type">
<restriction base="string">
<pattern value="([A-Z]{2})"/>
</restriction>
</simpleType>


simpleType nonEmptyStringType

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
facets
minLength 1
source <simpleType name="nonEmptyStringType">
<restriction base="string">
<minLength value="1"/>
</restriction>
</simpleType>


simpleType ssnPartyType

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
attribute patientAddressType/@ssn
facets
pattern [0-9]{4,10}|756[0-9]{10}|438[0-9]{10}
source <simpleType name="ssnPartyType">
<restriction base="string">
<pattern value="[0-9]{4,10}|756[0-9]{10}|438[0-9]{10}"/>
</restriction>
</simpleType>


simpleType stringType1_10

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
attribute streetType/@house_no
facets
minLength | 1
maxLength | 10
source <simpleType name="stringType1_10">
<restriction base="string">
<minLength value="1"/>
<maxLength value="10"/>
</restriction>
</simpleType>


simpleType stringType1_100

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
attribute providerGLNAddressType/@main_treating_provider
facets
minLength | 1
maxLength | 100
source <simpleType name="stringType1_100">
<restriction base="string">
<minLength value="1"/>
<maxLength value="100"/>
</restriction>
</simpleType>


simpleType stringType1_15

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
attributes providerGLNAddressType/@uid debitorAddressType/@uid
facets
minLength | 1
maxLength | 15
source <simpleType name="stringType1_15">
<restriction base="string">
<minLength value="1"/>
<maxLength value="15"/>
</restriction>
</simpleType>


simpleType stringType1_25

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
element telecomAddressType/phone
facets
minLength | 1
maxLength | 25
source <simpleType name="stringType1_25">
<restriction base="string">
<minLength value="1"/>
<maxLength value="25"/>
</restriction>
</simpleType>


simpleType stringType1_3

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
facets
minLength | 1
maxLength | 3
source <simpleType name="stringType1_3">
<restriction base="string">
<minLength value="1"/>
<maxLength value="3"/>
</restriction>
</simpleType>


simpleType stringType1_35

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
elements | postalAddressType/city companyType/companyname companyType/department personType/familyname personType/givenname postalAddressType/pobox personType/subaddressing companyType/subaddressing
complexTypes | countryType streetType
attributes | lawType/@card_id lawType/@case_id lawType/@insured_id personType/@salutation streetType/@street_name personType/@title
facets
minLength | 1
maxLength | 35
source <simpleType name="stringType1_35">
<restriction base="string">
<minLength value="1"/>
<maxLength value="35"/>
</restriction>
</simpleType>


simpleType stringType1_350

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
element bodyType/remark
facets
minLength | 1
maxLength | 350
source <simpleType name="stringType1_350">
<restriction base="string">
<minLength value="1"/>
<maxLength value="350"/>
</restriction>
</simpleType>


simpleType stringType1_6

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
facets
minLength | 1
maxLength | 9
source <simpleType name="stringType1_6">
<restriction base="string">
<minLength value="1"/>
<maxLength value="9"/>
</restriction>
</simpleType>


simpleType stringType1_70

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
facets
minLength | 1
maxLength | 70
source <simpleType name="stringType1_70">
<restriction base="string">
<minLength value="1"/>
<maxLength value="70"/>
</restriction>
</simpleType>


simpleType stringType1_80

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
element onlineAddressType/email
facets
minLength | 1
maxLength | 80
source <simpleType name="stringType1_80">
<restriction base="string">
<minLength value="1"/>
<maxLength value="80"/>
</restriction>
</simpleType>


simpleType stringType1_9

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
complexType | zipType
attributes | stationaryType/@section_major zipType/@state_code
facets
minLength | 1
maxLength | 9
source <simpleType name="stringType1_9">
<restriction base="string">
<minLength value="1"/>
<maxLength value="9"/>
</restriction>
</simpleType>


simpleType zsrPartyType

namespace | http://www.forum-datenaustausch.ch/pam
type | restriction of string
used by
attribute zsrAddressType/@zsr
facets
pattern ([A-Z][0-9]{6})
source <simpleType name="zsrPartyType">
<restriction base="string">
<pattern value="([A-Z][0-9]{6})"/>
</restriction>
</simpleType>


Copyright (©) by Forum Datenaustausch, 01.02.2024 - 1st draft
All rights reserved

complexType billerZSRAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:company pam:person
used by
element billersAddressType/biller_zsr
attributes parameters
Name | Type | Use | Default | Fixed
zsr | pam:zsrPartyType | required
attributes annotations
Name | Notes
zsr | zsr is the biller's required ZSR as defined by Santésuisse
source <complexType name="billerZSRAddressType">
<choice>
<element name="company" type="pam:companyType"/>
<element name="person" type="pam:personType"/>
</choice>
<attribute name="zsr" type="pam:zsrPartyType" use="required"/>
</complexType>


Copyright (©) by Forum Datenaustausch, 01.02.2024 - 1st draft
All rights reserved

complexType providerZSRAddressType

diagram
namespace | http://www.forum-datenaustausch.ch/pam
children | pam:company pam:person
used by
element providersAddressType/provider_zsr
attributes parameters
Name | Type | Use | Default | Fixed
zsr | pam:zsrPartyType | required
attributes annotations
Name | Notes
zsr | zsr is the provider's required ZSR as defined by Santésuisse
source <complexType name="providerZSRAddressType">
<choice>
<element name="company" type="pam:companyType"/>
<element name="person" type="pam:personType"/>
</choice>
<attribute name="zsr" type="pam:zsrPartyType" use="required"/>
</complexType>


Copyright (©) by Forum Datenaustausch, 01.02.2024 - 1st draft
All rights reserved

element billerZSRAddressType/company

Annotation | The biller is a legal entity defined by a company address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:companyType
properties
isRef | 0
content | complex
children | pam:companyname pam:department pam:subaddressing pam:postal pam:telecom pam:online
source | <element name="company" type="pam:companyType"/>


Copyright (©) by Forum Datenaustausch, 01.02.2024 - 1st draft
All rights reserved

element billerZSRAddressType/person

Annotation | The biller is a natural person defined by the person address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:personType
properties
isRef | 0
content | complex
children | pam:familyname pam:givenname pam:subaddressing pam:postal pam:telecom pam:online
attributes parameters
Name | Type | Use | Default | Fixed
salutation | pam:stringType1_35
title | pam:stringType1_35
attributes annotations
Name | Notes
salutation | salutation is the optional salutation of the person
title | title is optional title of the person
source | <element name="person" type="pam:personType"/>


Copyright (©) by Forum Datenaustausch, 01.02.2024 - 1st draft
All rights reserved

element providerZSRAddressType/company

Annotation | The provider is a legal entity defined by a company address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:companyType
properties
isRef | 0
content | complex
children | pam:companyname pam:department pam:subaddressing pam:postal pam:telecom pam:online
source | <element name="company" type="pam:companyType"/>


Copyright (©) by Forum Datenaustausch, 01.02.2024 - 1st draft
All rights reserved

element providerZSRAddressType/person

Annotation | The provider is a natural person defined by the person address element
diagram
namespace | http://www.forum-datenaustausch.ch/pam
type | pam:personType
properties
isRef | 0
content | complex
children | pam:familyname pam:givenname pam:subaddressing pam:postal pam:telecom pam:online
attributes parameters
Name | Type | Use | Default | Fixed
salutation | pam:stringType1_35
title | pam:stringType1_35
attributes annotations
Name | Notes
salutation | salutation is the optional salutation of the person
title | title is optional title of the person
source | <element name="person" type="pam:personType"/>


simpleType xenc:KeySizeType

namespace | http://www.w3.org/2001/04/xmlenc#
type | integer
used by
element xenc:EncryptionMethodType/KeySize
source <simpleType name="KeySizeType">
<restriction base="integer"/>
</simpleType>