Commits

njo@kvalitetsit.dk authored 9eb5b5f15ad
[SDS-4242] Add LogRecord schema, generate classes from it.

git-svn-id: https://svn.nspop.dk/svn/components/labsvar/trunk@4555 3203d48c-b89f-428c-a2b9-71f4dc330d7c
No tags

xdswrappers/documentprovider-parent/documentprovider/src/main/resources/xsd/logrecord.xsd

Added
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<xs:schema xmlns:health="healthcare.loginfo/2017-03-01" xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="healthcare.loginfo/2017-03-01">
3 + <xs:element name="LogRecord">
4 + <xs:complexType>
5 + <xs:sequence>
6 + <xs:element name="TraceInfo" type="health:TraceInfoType"/>
7 + <xs:element name="RequestingClient" type="health:RequestingClientType"/>
8 + <xs:element name="Patient" type="health:PatientType"/>
9 + <xs:element name="Consent" type="health:ConsentInfoType"/>
10 + <xs:element minOccurs="0" name="ExtendedRequestInfo" type="health:ExtendedRequestInfoType"/>
11 + </xs:sequence>
12 + </xs:complexType>
13 + </xs:element>
14 + <!-- ***** TraceInfoType - when was this sent, and how? ************* -->
15 + <xs:complexType name="TraceInfoType">
16 + <xs:sequence>
17 + <xs:element name="RequestTime" type="xs:dateTime"/>
18 + <xs:element name="SessionId" type="health:GUID"/>
19 + <xs:element name="RequestId" type="health:GUID"/>
20 + <xs:element name="Route" type="health:RouteType"/>
21 + </xs:sequence>
22 + </xs:complexType>
23 + <!-- ***** GUID - no curly-braces (tuborg-parenteser) ************* -->
24 + <xs:simpleType name="GUID">
25 + <xs:restriction base="xs:string">
26 + <xs:pattern value="([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12})"/>
27 + </xs:restriction>
28 + </xs:simpleType>
29 + <!-- ***** RequestingClientType - who is asking? ************* -->
30 + <xs:complexType name="RequestingClientType">
31 + <xs:sequence>
32 + <xs:element name="ClientIdentification">
33 + <xs:complexType>
34 + <xs:simpleContent>
35 + <xs:extension base="xs:string">
36 + <xs:attribute name="ClientIdentificationType" use="required" type="health:ClientIdentificationTypeEnumeration"/>
37 + </xs:extension>
38 + </xs:simpleContent>
39 + </xs:complexType>
40 + </xs:element>
41 + <xs:element name="ClinicName" type="xs:string"/>
42 + <xs:element name="ClinicDepartment" type="xs:string"/>
43 + <xs:element name="UserCprNumber" type="health:CPRNumber"/>
44 + <xs:element name="UserName" type="xs:string"/>
45 + <xs:element name="UserInitials" type="xs:string"/>
46 + <xs:element name="BehalfOfCprNumber" minOccurs="0" type="health:CPRNumber"/>
47 + <xs:element name="LookUpType" type="health:LookupTypeEnumeration"/>
48 + <xs:element name="TaskType" type="xs:string"/>
49 + </xs:sequence>
50 + </xs:complexType>
51 + <xs:complexType name="RouteType">
52 + <xs:sequence>
53 + <xs:element name="ViaSystem" maxOccurs="unbounded">
54 + <xs:complexType>
55 + <xs:simpleContent>
56 + <xs:extension base="xs:string">
57 + <xs:attribute name="id" use="required" type="xs:int"/>
58 + </xs:extension>
59 + </xs:simpleContent>
60 + </xs:complexType>
61 + </xs:element>
62 + </xs:sequence>
63 + </xs:complexType>
64 + <xs:simpleType name="ClientIdentificationTypeEnumeration">
65 + <xs:restriction base="xs:string">
66 + <xs:enumeration value="SKS"/>
67 + <xs:enumeration value="Ydernummer"/>
68 + <xs:enumeration value="Kommunekode"/>
69 + <xs:enumeration value="SOR"/>
70 + <xs:enumeration value="CPR nummer"/>
71 + <xs:enumeration value="CVR nummer"/>
72 + <xs:enumeration value="EAN nummer"/>
73 + <xs:enumeration value="Andet"/>
74 + </xs:restriction>
75 + </xs:simpleType>
76 + <!-- *****
77 + CPR number - can include replacement CPRNumber (Erstatningscpr-
78 + nummer),
79 + with 8th and 9th digit replaced with initials ************* -->
80 + <xs:simpleType name="CPRNumber">
81 + <xs:restriction base="xs:string">
82 + <xs:pattern value="([0-9]{6}-[0-9][0-9a-zA-Z]{2}[0-9])"/>
83 + </xs:restriction>
84 + </xs:simpleType>
85 + <!-- ***** LookupType - who's looking? ************* -->
86 + <xs:simpleType name="LookupTypeEnumeration">
87 + <xs:restriction base="xs:string">
88 + <xs:enumeration value="Kliniker"/>
89 + <xs:enumeration value="Borger"/>
90 + <xs:enumeration value="Administrativ"/>
91 + <xs:enumeration value="Forælder"/>
92 + <xs:enumeration value="Fuldmagtshaver"/>
93 + <xs:enumeration value="Værge"/>
94 + <xs:enumeration value="Andet"/>
95 + </xs:restriction>
96 + </xs:simpleType>
97 + <!-- ***** PatientType ************* -->
98 + <xs:complexType name="PatientType">
99 + <xs:sequence>
100 + <xs:element name="CprNumber" type="health:CPRNumber"/>
101 + <xs:element name="Name" type="xs:string" minOccurs="0"/>
102 + </xs:sequence>
103 + </xs:complexType>
104 + <!-- ***** ConsentInfo - has the patient given consent, or is it inferred from the patient's status ************* -->
105 + <xs:complexType name="ConsentInfoType">
106 + <xs:sequence>
107 + <xs:element name="Code" type="xs:int"/>
108 + <xs:element name="Text" type="xs:string"/>
109 + <xs:element name="PrivacyOverrideCode" type="xs:int"/>
110 + </xs:sequence>
111 + </xs:complexType>
112 + <!-- ***** ExtendedRequestInfoType Single value used to store all other parameters to the request in one of four formats ************* -->
113 + <xs:complexType name="ExtendedRequestInfoType">
114 + <xs:simpleContent>
115 + <xs:extension base="xs:string">
116 + <xs:attribute name="Format" use="required">
117 + <xs:simpleType>
118 + <xs:restriction base="xs:string">
119 + <xs:enumeration value="Querystring"/>
120 + <xs:enumeration value="JSON"/>
121 + <xs:enumeration value="Text"/>
122 + <xs:enumeration value="XML"/>
123 + <!-- Examples:
124 + <ExtendedRequestInfo Format="Querystring"><![CDATA[Date-
125 + From=2015-06-19?DateTo=2015-08-25]]></ExtendedRequestInfo>
126 + <ExtendedRequestInfo Format="JSON"><![CDATA[{DateFrom:2015-
127 + 06-19,DateTo:2015-08-25}]]></ExtendedRequestInfo>
128 + <ExtendedRequestInfo Format="Text"><![CDATA[Der er søgt fra
129 + 19. juni 2015 til 25. august samme år.]]></ExtendedRequestInfo>
130 + <ExtendedRequestInfo Format="XML"><![CDATA[<SearchParame-
131 + ters><DateFrom>2015-06-19</DateFrom><DateTo>2015-08-25</DateTo></SearchParame-
132 + ters>]]></ExtendedRequestInfo>
133 + -->
134 + </xs:restriction>
135 + </xs:simpleType>
136 + </xs:attribute>
137 + </xs:extension>
138 + </xs:simpleContent>
139 + </xs:complexType>
140 +</xs:schema>

Everything looks good. We'll let you know here if there's anything you should know about.

Add shortcut