diff --git a/release.yml b/release.yml
index 3aad5aace..cd4a63ded 100644
--- a/release.yml
+++ b/release.yml
@@ -18,7 +18,7 @@ variables:
buildConfiguration: 'Release'
major: 5
minor: 0
- patch: 2
+ patch: 3
buildnum: $[counter(format('{0}.{1}.{2}',variables['major'],variables['minor'], variables['patch']), 1)]
version: $(major).$(minor).$(patch).$(buildnum)
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A01/ADT-A01-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A01/ADT-A01-01-expected.json
index 06f70c7e6..242bc8e55 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A01/ADT-A01-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A01/ADT-A01-01-expected.json
@@ -2785,7 +2785,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A01/ADT-A01-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A01/ADT-A01-02-expected.json
index 57ea403e6..9c64ed08e 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A01/ADT-A01-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A01/ADT-A01-02-expected.json
@@ -1880,7 +1880,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A02/ADT-A02-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A02/ADT-A02-01-expected.json
index 17426c648..6ca26f9dd 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A02/ADT-A02-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A02/ADT-A02-01-expected.json
@@ -65,7 +65,7 @@
"id": "0a7545d7-202f-96e5-31e9-bb7d27ade3c2",
"text": {
"status": "generated",
- "div": "
Resource bundle generated on 2022-03-28T06:47:19.004Z using Microsoft FHIR Converter. Template Version: TEMPLATE_VERSION_PLACEHOLDER. Template URL: https://github.com/microsoft/FHIR-Converter/releases/download/vTEMPLATE_VERSION_PLACEHOLDER/Hl7v2DefaultTemplates.tar.gz. Root template: ADT_A02.
"
+ "div": "Resource bundle generated on 2022-03-28T06:47:19.4Z using Microsoft FHIR Converter. Template Version: TEMPLATE_VERSION_PLACEHOLDER. Template URL: https://github.com/microsoft/FHIR-Converter/releases/download/vTEMPLATE_VERSION_PLACEHOLDER/Hl7v2DefaultTemplates.tar.gz. Root template: ADT_A02.
"
},
"occurredDateTime": "1989-08-18T14:41:00+05:30",
"recorded": "1989-08-18T14:41:00+05:30",
@@ -2473,7 +2473,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A02/ADT-A02-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A02/ADT-A02-02-expected.json
index 7fb9ed8be..753cc5cc6 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A02/ADT-A02-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A02/ADT-A02-02-expected.json
@@ -1880,7 +1880,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A03/ADT-A03-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A03/ADT-A03-01-expected.json
index c97627b76..5a4135c46 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A03/ADT-A03-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A03/ADT-A03-01-expected.json
@@ -2748,7 +2748,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A03/ADT-A03-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A03/ADT-A03-02-expected.json
index af473e756..e92c2df26 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A03/ADT-A03-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A03/ADT-A03-02-expected.json
@@ -1881,7 +1881,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A04/ADT-A04-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A04/ADT-A04-01-expected.json
index a71ddd216..a7cfd238c 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A04/ADT-A04-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A04/ADT-A04-01-expected.json
@@ -2748,7 +2748,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A04/ADT-A04-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A04/ADT-A04-02-expected.json
index 8f732076b..011fe13b2 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A04/ADT-A04-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A04/ADT-A04-02-expected.json
@@ -2154,7 +2154,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A05/ADT-A05-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A05/ADT-A05-01-expected.json
index 1891fc3ef..e84cde383 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A05/ADT-A05-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A05/ADT-A05-01-expected.json
@@ -2742,7 +2742,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A05/ADT-A05-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A05/ADT-A05-02-expected.json
index 55ff7f0fa..d61ec833d 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A05/ADT-A05-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A05/ADT-A05-02-expected.json
@@ -2154,7 +2154,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A08/ADT-A08-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A08/ADT-A08-01-expected.json
index 129c34e68..561bb82b9 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A08/ADT-A08-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A08/ADT-A08-01-expected.json
@@ -2872,7 +2872,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A08/ADT-A08-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A08/ADT-A08-02-expected.json
index a509d09fb..caa7eda66 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A08/ADT-A08-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A08/ADT-A08-02-expected.json
@@ -1880,7 +1880,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A11/ADT-A11-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A11/ADT-A11-01-expected.json
index 4b386d544..8232bb44f 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A11/ADT-A11-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A11/ADT-A11-01-expected.json
@@ -2391,7 +2391,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A11/ADT-A11-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A11/ADT-A11-02-expected.json
index 4cee7b531..e6a686d05 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A11/ADT-A11-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A11/ADT-A11-02-expected.json
@@ -2149,7 +2149,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A13/ADT-A13-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A13/ADT-A13-01-expected.json
index 3998872ed..b8f88b682 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A13/ADT-A13-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A13/ADT-A13-01-expected.json
@@ -2871,7 +2871,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A13/ADT-A13-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A13/ADT-A13-02-expected.json
index cf3b904a4..5366c244f 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A13/ADT-A13-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A13/ADT-A13-02-expected.json
@@ -2153,7 +2153,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A14/ADT-A14-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A14/ADT-A14-01-expected.json
index ed119ab90..5f5c1ecab 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A14/ADT-A14-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A14/ADT-A14-01-expected.json
@@ -2742,7 +2742,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A14/ADT-A14-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A14/ADT-A14-02-expected.json
index b703615d0..878529c3e 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A14/ADT-A14-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A14/ADT-A14-02-expected.json
@@ -2154,7 +2154,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A15/ADT-A15-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A15/ADT-A15-01-expected.json
index 6d2b0e6ed..c99fd54ca 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A15/ADT-A15-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A15/ADT-A15-01-expected.json
@@ -2464,7 +2464,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A15/ADT-A15-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A15/ADT-A15-02-expected.json
index 286a89b7f..ffb05bbaf 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A15/ADT-A15-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A15/ADT-A15-02-expected.json
@@ -1880,7 +1880,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A16/ADT-A16-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A16/ADT-A16-01-expected.json
index ac42f12e5..b18589d39 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A16/ADT-A16-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A16/ADT-A16-01-expected.json
@@ -2866,7 +2866,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A16/ADT-A16-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A16/ADT-A16-02-expected.json
index f19053a36..5d6623b62 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A16/ADT-A16-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A16/ADT-A16-02-expected.json
@@ -2154,7 +2154,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A25/ADT-A25-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A25/ADT-A25-01-expected.json
index d4e9b86b7..59e434173 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A25/ADT-A25-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A25/ADT-A25-01-expected.json
@@ -2395,7 +2395,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A25/ADT-A25-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A25/ADT-A25-02-expected.json
index 87b85132a..6aff0ef2f 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A25/ADT-A25-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A25/ADT-A25-02-expected.json
@@ -2153,7 +2153,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A26/ADT-A26-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A26/ADT-A26-01-expected.json
index a6cfaa164..d8f831b23 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A26/ADT-A26-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A26/ADT-A26-01-expected.json
@@ -2161,7 +2161,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A26/ADT-A26-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A26/ADT-A26-02-expected.json
index b03b9902c..dd90c6717 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A26/ADT-A26-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A26/ADT-A26-02-expected.json
@@ -1780,7 +1780,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A27/ADT-A27-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A27/ADT-A27-01-expected.json
index c8e796f26..b8e1a9e16 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A27/ADT-A27-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A27/ADT-A27-01-expected.json
@@ -2390,7 +2390,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A27/ADT-A27-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A27/ADT-A27-02-expected.json
index 93d2c7558..c6f46c7bc 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A27/ADT-A27-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A27/ADT-A27-02-expected.json
@@ -2149,7 +2149,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A28/ADT-A28-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A28/ADT-A28-01-expected.json
index f21301320..74bd83262 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A28/ADT-A28-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A28/ADT-A28-01-expected.json
@@ -2742,7 +2742,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A28/ADT-A28-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A28/ADT-A28-02-expected.json
index cd4f6830c..fa9e57753 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A28/ADT-A28-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A28/ADT-A28-02-expected.json
@@ -1880,7 +1880,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A29/ADT-A29-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A29/ADT-A29-01-expected.json
index dcb5d7b42..45b197a21 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A29/ADT-A29-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A29/ADT-A29-01-expected.json
@@ -2395,7 +2395,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A29/ADT-A29-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A29/ADT-A29-02-expected.json
index 913746f33..b292c5750 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A29/ADT-A29-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A29/ADT-A29-02-expected.json
@@ -1880,7 +1880,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A31/ADT-A31-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A31/ADT-A31-01-expected.json
index 3ecd26257..f74908db5 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A31/ADT-A31-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A31/ADT-A31-01-expected.json
@@ -2742,7 +2742,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A31/ADT-A31-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A31/ADT-A31-02-expected.json
index 56f05b8af..cfeadbfc8 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A31/ADT-A31-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A31/ADT-A31-02-expected.json
@@ -1880,7 +1880,7 @@
"resource": {
"resourceType": "Provenance",
"id": "9f6be243-c2fa-f8c8-0a7a-d168e98bdd4c",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A41/ADT-A41-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A41/ADT-A41-01-expected.json
index 07c0c5a37..dac7b3626 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A41/ADT-A41-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A41/ADT-A41-01-expected.json
@@ -260,7 +260,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A41/ADT-A41-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A41/ADT-A41-02-expected.json
index b2b0c7384..8d006c43c 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A41/ADT-A41-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A41/ADT-A41-02-expected.json
@@ -260,7 +260,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A60/ADT-A60-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A60/ADT-A60-01-expected.json
index 914658ae6..01dd79512 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A60/ADT-A60-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A60/ADT-A60-01-expected.json
@@ -2358,7 +2358,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A60/ADT-A60-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A60/ADT-A60-02-expected.json
index 2dca0d6d3..6f36014ac 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A60/ADT-A60-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/ADT_A60/ADT-A60-02-expected.json
@@ -794,7 +794,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P01/BAR-P01-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P01/BAR-P01-01-expected.json
index 1be284ac3..0f3722325 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P01/BAR-P01-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P01/BAR-P01-01-expected.json
@@ -260,7 +260,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P01/BAR-P01-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P01/BAR-P01-02-expected.json
index d473452f3..331a749ae 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P01/BAR-P01-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P01/BAR-P01-02-expected.json
@@ -260,7 +260,7 @@
"resource": {
"resourceType": "Provenance",
"id": "07eea8d4-d9d1-105e-9d76-23efad1ef94d",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P02/BAR-P02-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P02/BAR-P02-01-expected.json
index 8fffc12b4..01478cfe9 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P02/BAR-P02-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P02/BAR-P02-01-expected.json
@@ -260,7 +260,7 @@
"resource": {
"resourceType": "Provenance",
"id": "0d294d4d-3c8c-be35-4813-e61ba6e34968",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P02/BAR-P02-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P02/BAR-P02-02-expected.json
index 367efa833..1e71bcddb 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P02/BAR-P02-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P02/BAR-P02-02-expected.json
@@ -260,7 +260,7 @@
"resource": {
"resourceType": "Provenance",
"id": "0d294d4d-3c8c-be35-4813-e61ba6e34968",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P12/BAR-P12-01-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P12/BAR-P12-01-expected.json
index 6892c8212..cc855a2f7 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P12/BAR-P12-01-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P12/BAR-P12-01-expected.json
@@ -260,7 +260,7 @@
"resource": {
"resourceType": "Provenance",
"id": "b867d34c-37a2-f79b-bb8a-ee155ab769b7",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P12/BAR-P12-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P12/BAR-P12-02-expected.json
index b707a51f8..91812275c 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P12/BAR-P12-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/BAR_P12/BAR-P12-02-expected.json
@@ -260,7 +260,7 @@
"resource": {
"resourceType": "Provenance",
"id": "b867d34c-37a2-f79b-bb8a-ee155ab769b7",
- "occurredDateTime": "2021-08-17T18:49:43.004+05:30",
+ "occurredDateTime": "2021-08-17T18:49:43.4+05:30",
"recorded": "2029-08-01T11:21:24+05:30",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/DFT_P03/DFT-P03-02-expected.json b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/DFT_P03/DFT-P03-02-expected.json
index 35b8e0cbf..eb2af909c 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/DFT_P03/DFT-P03-02-expected.json
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.FunctionalTests/TestData/Expected/Hl7v2/DFT_P03/DFT-P03-02-expected.json
@@ -2341,7 +2341,7 @@
"resource": {
"resourceType": "Provenance",
"id": "7ea13aa8-faf2-0187-4bb2-5dea25212fba",
- "occurredDateTime": "2021-08-17T15:19:43.004+02:00",
+ "occurredDateTime": "2021-08-17T15:19:43.4+02:00",
"recorded": "2005-01-12T22:00:00Z",
"reason": [
{
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter.UnitTests/Filters/DateFiltersTests.cs b/src/Microsoft.Health.Fhir.Liquid.Converter.UnitTests/Filters/DateFiltersTests.cs
index 5184a34ab..f72fe23df 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter.UnitTests/Filters/DateFiltersTests.cs
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter.UnitTests/Filters/DateFiltersTests.cs
@@ -21,6 +21,7 @@ public static IEnumerable GetValidDataForAddHyphensDate()
yield return new object[] { @"200101", "preserve", @"2001-01" };
yield return new object[] { @"19241010", "local", @"1924-10-10" };
yield return new object[] { @"19850101000000", "local", @"1985-01-01" };
+ yield return new object[] { @"19850101000000.1234", "local", @"1985-01-01" };
}
// We assume the local timezone is +08:00.
@@ -29,6 +30,7 @@ public static IEnumerable GetValidDataWithoutTimeZoneForAddHyphensDate
yield return new object[] { @"200101", "utc", new DateTime(2001, 1, 1) };
yield return new object[] { @"20010102", "utc", new DateTime(2001, 1, 2) };
yield return new object[] { @"19880101000000", "utc", new DateTime(1988, 1, 1, 0, 0, 0) };
+ yield return new object[] { @"19880101000000.1234", "utc", new DateTime(1988, 1, 1, 0, 0, 0) };
}
public static IEnumerable GetValidDataForAddHyphensDateWithDefaultTimeZoneHandling()
@@ -39,6 +41,7 @@ public static IEnumerable GetValidDataForAddHyphensDateWithDefaultTime
yield return new object[] { @"200101", @"2001-01" };
yield return new object[] { @"19241010", @"1924-10-10" };
yield return new object[] { @"19850101000000", @"1985-01-01" };
+ yield return new object[] { @"19850101000000.1234", @"1985-01-01" };
}
public static IEnumerable GetValidDataForAddSeconds()
@@ -51,12 +54,13 @@ public static IEnumerable GetValidDataForAddSeconds()
yield return new object[] { @"1970-01-01T00:01:00+06:00", 60.000, "preserve", @"1970-01-01T00:02:00+06:00" };
yield return new object[] { @"1970-01-01T00:01:00+06:30", 60.000, "preserve", @"1970-01-01T00:02:00+06:30" };
yield return new object[] { @"1970-01-01T00:01:00+14:00", 60, "utc", @"1969-12-31T10:02:00Z" };
+ yield return new object[] { @"1970-01-01T00:01:00.1234+14:00", 60, "utc", @"1969-12-31T10:02:00.123Z" };
// Skip this test in pipeline, as the local time zone is different
// yield return new object[] { @"2001-01", 60, "preserve", @"2001-01-01T00:01:00+08:00" };
// yield return new object[] { @"1924-10-10", 60000, "utc", @"1924-10-10T08:40:00Z" };
// yield return new object[] { @"1970-01-01T00:01:00+06:00", 60, "local", @"1970-01-01T02:02:00+08:00" };
- // yield return new object[] { @"1924-10-10", 60000, "local", @"1924-10-10T16:40:00" };
+ // yield return new object[] { @"1924-10-10", 60000, "local", @"1924-10-10T16:40:00+08:00" };
}
// We assume the local timezone is +08:00.
@@ -72,6 +76,8 @@ public static IEnumerable GetValidDataForAddSecondsWithDefaultTimeZone
yield return new object[] { string.Empty, 60, string.Empty };
yield return new object[] { @"1970-01-01T00:01:00Z", 60.123, @"1970-01-01T00:02:00.123Z" };
yield return new object[] { @"1970-01-01T00:01:00+06:00", 60.000, @"1970-01-01T00:02:00+06:00" };
+ yield return new object[] { @"1970-01-01T00:01:00.1234+06:00", 60.000, @"1970-01-01T00:02:00.123+06:00" };
+ yield return new object[] { @"1970-01-01T00:01:00.1234+06:00", 60.1234, @"1970-01-01T00:02:00.246+06:00" };
// Skip this test in pipeline, as the local time zone is different
// yield return new object[] { @"2001-01", 60, @"2001-01-01T00:01:00+08:00" };
@@ -101,6 +107,8 @@ public static IEnumerable GetValidDataForFormatAsDateTime()
yield return new object[] { @"19701231115959+0600", "preserve", @"1970-12-31T11:59:59+06:00" };
yield return new object[] { @"19701231115959+0600", "utc", @"1970-12-31T05:59:59Z" };
yield return new object[] { @"19701231115959+0630", "utc", @"1970-12-31T05:29:59Z" };
+ yield return new object[] { @"19701231115959.12234+0630", "utc", @"1970-12-31T05:29:59.12234Z" };
+ yield return new object[] { @"19701231115959.000+0630", "utc", @"1970-12-31T05:29:59.000Z" };
// Skip this test in pipeline, as the local time zone is different
// yield return new object[] { @"20110103143428-0800", "local", @"2011-01-04T06:34:28+08:00" };
@@ -129,6 +137,8 @@ public static IEnumerable GetValidDataForFormatAsDateTimeWithDefaultTi
yield return new object[] { @"19701231115959+0600", @"1970-12-31T11:59:59+06:00" };
yield return new object[] { @"19701231115959+0000", @"1970-12-31T11:59:59Z" };
yield return new object[] { @"19701231115959-0000", @"1970-12-31T11:59:59Z" };
+ yield return new object[] { @"19701231115959.1234-0000", @"1970-12-31T11:59:59.1234Z" };
+ yield return new object[] { @"19701231115959.000-0000", @"1970-12-31T11:59:59.000Z" };
// If no time zone provided, it is treated as local
// yield return new object[] { @"20050110045253", @"2005-01-10T04:52:53+08:00" };
@@ -161,6 +171,7 @@ public static IEnumerable GetInvalidDataForFormatAsDateTime()
yield return new object[] { @"2020010130" };
yield return new object[] { @"202001011080" };
yield return new object[] { @"20200101101080" };
+ yield return new object[] { @"20200101101080.-123" };
}
public static IEnumerable GetInvalidTimeZoneHandling()
diff --git a/src/Microsoft.Health.Fhir.Liquid.Converter/Models/PartialDateTime.cs b/src/Microsoft.Health.Fhir.Liquid.Converter/Models/PartialDateTime.cs
index 028fdfa62..02396525d 100644
--- a/src/Microsoft.Health.Fhir.Liquid.Converter/Models/PartialDateTime.cs
+++ b/src/Microsoft.Health.Fhir.Liquid.Converter/Models/PartialDateTime.cs
@@ -37,7 +37,8 @@ public PartialDateTime(string input, DateTimeType type = DateTimeType.Fhir)
int hour = groups["hour"].Success ? int.Parse(groups["hour"].Value) : 0;
int minute = groups["minute"].Success ? int.Parse(groups["minute"].Value) : 0;
int second = groups["second"].Success ? int.Parse(groups["second"].Value) : 0;
- int millisecond = groups["millisecond"].Success ? int.Parse(groups["millisecond"].Value) : 0;
+ int millisecond = groups["millisecond"].Success ? int.Parse(groups["millisecond"].Value.Length > 3 ? groups["millisecond"].Value.Substring(0, 3) : groups["millisecond"].Value) : 0;
+ MillisecondString = groups["millisecond"].Success ? groups["millisecond"].Value : null;
var timeSpan = TimeZoneInfo.Local.GetUtcOffset(new DateTime(year, month, day, hour, minute, second, millisecond));
if (groups["timeZone"].Success)
@@ -71,6 +72,8 @@ public PartialDateTime(string input, DateTimeType type = DateTimeType.Fhir)
public bool HasTimeZone { get; private set; }
+ public string MillisecondString { get; private set; }
+
public DateTimePrecision Precision { get; private set; }
public PartialDateTime ConvertToDate()
@@ -82,6 +85,8 @@ public PartialDateTime ConvertToDate()
public PartialDateTime AddSeconds(double seconds)
{
DateTimeValue = DateTimeValue.AddSeconds(seconds);
+ MillisecondString = null;
+
if (Precision != DateTimePrecision.Milliseconds)
{
Precision = DateTimeValue.Millisecond == 0 ? DateTimePrecision.Second : DateTimePrecision.Milliseconds;
@@ -112,8 +117,16 @@ public string ToFhirString(TimeZoneHandlingMethod timeZoneHandling = TimeZoneHan
}
var timeZoneSuffix = resultDateTime.Offset == TimeSpan.Zero ? "Z" : "%K";
+ string dateTimeFormat;
+ if (Precision < DateTimePrecision.Milliseconds)
+ {
+ dateTimeFormat = "yyyy-MM-ddTHH:mm:ss" + timeZoneSuffix;
+ }
+ else
+ {
+ dateTimeFormat = MillisecondString == null ? "yyyy-MM-ddTHH:mm:ss.fff" + timeZoneSuffix : "yyyy-MM-ddTHH:mm:ss." + MillisecondString + timeZoneSuffix;
+ }
- var dateTimeFormat = Precision < DateTimePrecision.Milliseconds ? "yyyy-MM-ddTHH:mm:ss" + timeZoneSuffix : "yyyy-MM-ddTHH:mm:ss.fff" + timeZoneSuffix;
return resultDateTime.ToString(dateTimeFormat);
}
}