diff --git a/.github/workflows/generate-model.yaml b/.github/workflows/generate-model.yaml index 81470d1203..49e1e64f0e 100644 --- a/.github/workflows/generate-model.yaml +++ b/.github/workflows/generate-model.yaml @@ -6,9 +6,6 @@ on: - '**' workflow_dispatch: -env: - SCHEMAS: "RC-EDA RS-EDA EMSI GEO-POS GEO-REQ GEO-RES RC-REF RS-ERROR RS-RI RS-DR RS-RR RS-RPIS RS-EDA-MAJ RS-SR RS-URL RS-ER RS-BPV TECHNICAL TECHNICAL_NOREQ" - jobs: generate: runs-on: ubuntu-latest @@ -51,11 +48,52 @@ jobs: if: steps.filter.outputs.parsing_required == 'true' || steps.filter.outputs.test_case_parsing_required == 'true' run: pip install -r ./requirements.txt + - name: Clean up old generated schemas + working-directory: ./src/main/resources + run: find ./json-schema -type f -name '*.json' ! -name 'customContent.schema.json' ! -name 'EDXL-DE-*.schema.json' -exec rm {} + + + - name: Clean up old generated java classes + working-directory: ./src/main/java/com/hubsante/model + # We specifically only remove FOLDERS with the exception of a couple manually created ones + run: find . -mindepth 1 -maxdepth 1 -type d ! -name 'builders' ! -name 'config' ! -name 'custom' ! -name 'edxl' ! -name 'exception' ! -name 'report' -exec rm -r {} + + - name: Run csv_parser and collect OpenAPI & JSON Schemas working-directory: ./csv_parser if: steps.filter.outputs.parsing_required == 'true' run: python workflow.py --stage parser_and_mv + - name: Run csv_parser to generate schemas.yaml + working-directory: ./csv_parser + if: steps.filter.outputs.parsing_required == 'true' + run: python workflow.py --stage output_schemas_yaml + + - name: Collect schemas.yaml and copy it to json_schema2xsd + working-directory: ./csv_parser + if: steps.filter.outputs.parsing_required == 'true' + run: | + cp ./out/schemas.yaml ./json_schema2xsd/src/main/resources/schemas.yaml + + - name: Setup gomplate + if: steps.filter.outputs.parsing_required == 'true' + uses: jason-dour/action-setup-gomplate@v1.1.0 + with: + gomplate-version: v4.2.0 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Run automatic-schema-generator and move generated files to corresponding locations + if: steps.filter.outputs.parsing_required == 'true' + working-directory: ./automatic-schema-generator + run: | + rm -r output || true + chmod +x ./automatic-generator.sh + ./automatic-generator.sh + rm -r ../generator/config/generated || true + rsync -a --remove-source-files output/generator .. + rsync -a --remove-source-files output/edxl ../src/main/java/com/hubsante/model + rsync -a --remove-source-files output/json-schema ../src/main/resources + rsync -a --remove-source-files output/xsd ../src/main/resources + # TODO: Reactivate test case autogeneration # - name: Run test_case_generator and move the folder test-cases to src/main/resources/sample/test-cases # working-directory: ./csv_parser @@ -82,9 +120,8 @@ jobs: working-directory: ./csv_parser/json_schema2xsd if: steps.filter.outputs.parsing_required == 'true' run: | - rm out/RS-ERROR.xsd # Clean XSD repo but keep manual XSDs - find ../../src/main/resources/xsd -type f -name '*.xsd' ! -name 'EDXL-DE-*.xsd' ! -name 'CustomContent.xsd' ! -name 'RC-XML-ContentType.xsd' ! -name 'RS-ERROR.xsd' ! -path '**/other-supporting-schema/*' -exec rm {} + + find ../../src/main/resources/xsd -type f -name '*.xsd' ! -name 'EDXL-DE-*.xsd' ! -name 'customContent.xsd' ! -name 'RC-DE.xsd' ! -name 'RC-XML-ContentType.xsd' ! -name 'RS-ERROR.xsd' ! -path '**/other-supporting-schema/*' -exec rm {} + mv out/*.xsd ../../src/main/resources/xsd/ - name: Remove input JSON Schemas @@ -107,18 +144,15 @@ jobs: - name: Generate Java classes working-directory: ./generator run: | - npx @openapitools/openapi-generator-cli generate -c ./config/RC-DE/RC-DE.generator-config.json --skip-validate-spec - npx @openapitools/openapi-generator-cli generate -c ./config/RC-DE/RC-DE.distribution-element.generator-config.json --skip-validate-spec + # Iterate over each file in the ./config directory, including the entire subfolder structure + # and then run @openapitools/openapi-generator-cli generate for each file found + # Important notice: + # Results of the find command are sorted in an alphabetic order before being passed to xargs + # This means that since the order of class generation is important, it's necessary to maintain an adequately + # named file structure in the ./config/** directories + # generator-config.json (if exists) -> usecase.generator-config.json -> wrapper.generator-config.json + find ./config/ -type f | sort -n | xargs -i npx @openapitools/openapi-generator-cli generate -c {} --skip-validate-spec - IFS=' ' read -ra SCHEMAS_ARRAY <<< "$SCHEMAS" - for SCHEMA in "${SCHEMAS_ARRAY[@]}"; do - if [ "$SCHEMA" != "RS-EDA-MAJ" ] && [ "$SCHEMA" != "RS-ER" ]; then - npx @openapitools/openapi-generator-cli generate -c ./config/$SCHEMA/$SCHEMA.generator-config.json --skip-validate-spec - fi - npx @openapitools/openapi-generator-cli generate -c ./config/$SCHEMA/$SCHEMA.usecase.generator-config.json --skip-validate-spec - npx @openapitools/openapi-generator-cli generate -c ./config/$SCHEMA/$SCHEMA.wrapper.generator-config.json --skip-validate-spec - done - - name: Replace src/ with generated classes run: | rm -r ./src/main/java/com/hubsante/model/rcde || true diff --git a/automatic-schema-generator/automatic-generator.sh b/automatic-schema-generator/automatic-generator.sh new file mode 100755 index 0000000000..aade998ef9 --- /dev/null +++ b/automatic-schema-generator/automatic-generator.sh @@ -0,0 +1,20 @@ +# We will be using the file schemas.yaml as data source to use with gomplate in order to generate all the files +# required for each schema + +# generate base generator config files +gomplate -f ./templates/schema.generator-config.json.tmpl -d config=./schemas.yaml -o ./output/generator/config + +# generate usecase config files +gomplate -f ./templates/schema.usecase.generator-config.json.tmpl -d config=./schemas.yaml -o ./output/generator/config + +# generate wrapper config files +gomplate -f ./templates/schema.wrapper.generator-config.json.tmpl -d config=./schemas.yaml -o ./output/generator/config + +# generate ContentMessage class +gomplate -f ./templates/ContentMessage.java.tmpl -d config=./schemas.yaml -o ./output/edxl/ContentMessage.java + +# generate EDXL-DE json schema +gomplate -f ./templates/EDXL-DE-full.schema.json.tmpl -d config=./schemas.yaml -o ./output/json-schema/EDXL-DE-full.schema.json + +# generate RC-XML-ContentType xsd schema +gomplate -f ./templates/RC-XML-ContentType.xsd.tmpl -d config=./schemas.yaml -o ./output/xsd/RC-XML-ContentType.xsd diff --git a/automatic-schema-generator/schemas.yaml b/automatic-schema-generator/schemas.yaml new file mode 120000 index 0000000000..2638c4b0ea --- /dev/null +++ b/automatic-schema-generator/schemas.yaml @@ -0,0 +1 @@ +../csv_parser/json_schema2xsd/src/main/resources/schemas.yaml \ No newline at end of file diff --git a/automatic-schema-generator/templates/ContentMessage.java.tmpl b/automatic-schema-generator/templates/ContentMessage.java.tmpl new file mode 100644 index 0000000000..23261d913c --- /dev/null +++ b/automatic-schema-generator/templates/ContentMessage.java.tmpl @@ -0,0 +1,53 @@ +/************************************************************************** + * This file has been generated by the automatic schema generator script. + **************************************************************************/ + +package com.hubsante.model.edxl; + +import com.fasterxml.jackson.annotation.JsonSubTypes; +import com.fasterxml.jackson.annotation.JsonTypeInfo; + +{{ range (datasource "config").schemas }} +{{- if eq .automaticGeneration "Y" -}} +import com.hubsante.model.{{ .package }}.{{ .rootElement | title }}; +import com.hubsante.model.{{ .package }}.{{ .rootElement | title }}Wrapper; +{{ end }}{{ end -}} +import com.hubsante.model.report.ErrorWrapper; +import com.hubsante.model.custom.CustomMessage; +import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +@JsonTypeInfo(use = JsonTypeInfo.Id.DEDUCTION) +@JsonSubTypes({ {{ range $i, $e := (datasource "config").schemas }}{{if eq .automaticGeneration "Y"}} + @JsonSubTypes.Type({{ .rootElement | title }}Wrapper.class),{{end}}{{end}} + @JsonSubTypes.Type(ErrorWrapper.class), + @JsonSubTypes.Type(CustomMessage.class) +}) +public class ContentMessage { + + /** This equals override is used to avoid breaking the equals override in the messages without RC-DE headers + * (in particular ErrorWrapper), as without the override the equality check would only pass when comparing + * an object to itself, and we care about the actual values. + **/ + @Override + public boolean equals(Object o) { + if (this == o) return true; + return o != null && getClass() == o.getClass(); + } + + // As this class has no fields, the hashcode is always 0 + @Override + public int hashCode() { + return 0; + } + + public static class UseCaseHelper { + public static final Map useCases = Stream.of(new String[][] { + {{ range $i, $e := (datasource "config").schemas }}{{if eq .automaticGeneration "Y"}} + {"{{ .rootElement }}", {{ .rootElement | title }}.class.getCanonicalName()},{{end}}{{end}} + {"error", ErrorWrapper.class.getCanonicalName()}, + {"customContent", CustomMessage.class.getCanonicalName()} + }).collect(Collectors.toMap(useCaseData -> useCaseData[0], useCaseData -> useCaseData[1])); + } +} diff --git a/automatic-schema-generator/templates/ContentMessageDeserializer.java.tmpl b/automatic-schema-generator/templates/ContentMessageDeserializer.java.tmpl new file mode 100644 index 0000000000..379fada21f --- /dev/null +++ b/automatic-schema-generator/templates/ContentMessageDeserializer.java.tmpl @@ -0,0 +1,54 @@ +/************************************************************************** + * This file has been generated by the automatic schema generator script. + **************************************************************************/ + +package com.hubsante.model; + +import com.fasterxml.jackson.core.JsonParseException; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; +import com.hubsante.model.edxl.ContentMessage; +import com.hubsante.model.edxl.Descriptor; +import com.hubsante.model.edxl.EdxlMessage; +import com.hubsante.model.edxl.Keyword; +{{ range (datasource "config").schemas }}{{if eq .automaticGeneration "Y" -}} +import com.hubsante.model.{{ .package }}.{{ .rootElement | title }}Wrapper; +{{ end }}{{ end -}} +import com.hubsante.model.report.ErrorWrapper; +import com.hubsante.model.custom.CustomMessage; + +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +public class ContentMessageDeserializer extends JsonDeserializer { + + private static final Map useCases = new HashMap() { { + {{ range (datasource "config").schemas }}{{if eq .automaticGeneration "Y"}}put("{{ .rootElement }}", {{ .rootElement | title }}Wrapper.class); + {{ end }}{{ end -}} + put("error", ErrorWrapper.class); + put("customContent", CustomMessage.class); + } }; + + @Override + public ContentMessage deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { + ObjectCodec codec = jp.getCodec(); + JsonNode node = codec.readTree(jp); + String model = null; + try { + model = ((EdxlMessage) jp.getParsingContext().getParent().getParent().getParent().getParent().getCurrentValue()).getDescriptor().getKeyword().stream().filter(keyword -> keyword.getValueListURI().equals("urn:hubsante:model")).findFirst().get().getValue(); + } catch (NullPointerException e) { + throw new JsonParseException(jp, "Model name not found in $.descriptor.keyword[0].value"); + } + // Find model in useCases map, throw JsonParseException if not found + Class clazz = useCases.get(model); + if (clazz == null) { + throw new JsonParseException(jp, "Unknown model: " + model); + } + + return (ContentMessage) codec.treeToValue(node, clazz); + } +} diff --git a/automatic-schema-generator/templates/EDXL-DE-full.schema.json.tmpl b/automatic-schema-generator/templates/EDXL-DE-full.schema.json.tmpl new file mode 100644 index 0000000000..7cd63f95be --- /dev/null +++ b/automatic-schema-generator/templates/EDXL-DE-full.schema.json.tmpl @@ -0,0 +1,195 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "$id": "classpath:/json-schema/schema#", + "required": [ + "senderID", + "distributionID", + "dateTimeSent", + "dateTimeExpires", + "distributionStatus", + "distributionKind", + "descriptor", + "content" + ], + "properties": { + "senderID": { + "type": "string" + }, + "distributionID": { + "type": "string" + }, + "dateTimeSent": { + "type": "string", + "format": "date-time" + }, + "dateTimeExpires": { + "type": "string", + "format": "date-time" + }, + "content": { + "$ref": "#/definitions/Content" + }, + "descriptor": { + "$ref": "#/definitions/Descriptor" + }, + "distributionKind": { + "$ref": "#/definitions/DistributionKind" + }, + "distributionStatus": { + "$ref": "#/definitions/DistributionStatus" + } + }, + "additionalProperties": false, + "definitions": { + "Content": { + "type": "array", + "items": { + "$ref": "#/definitions/ContentObject" + }, + "minItems": 1 + }, + "ContentObject": { + "type": "object", + "required": [ + "jsonContent" + ], + "properties": { + "jsonContent": { + "$ref": "#/definitions/JsonContent" + } + } + }, + "JsonContent": { + "type": "object", + "required": [ + "embeddedJsonContent" + ], + "properties": { + "embeddedJsonContent": { + "$ref": "#/definitions/EmbeddedJsonContent" + } + } + }, + "EmbeddedJsonContent": { + "type": "object", + "oneOf": [{{ range (datasource "config").schemas }}{{if eq .automaticGeneration "Y"}}{{if eq .header "Y"}} + { + "allOf": [ + { + "properties": { + "message": { + "$ref": "RC-DE.schema.json" + } + } + }, + { + "properties": { + "message": { + "properties": { + "{{.rootElement}}": { + "$ref": "{{.schema}}.schema.json" + } + }, + "required": [ + "{{.rootElement}}" + ] + } + } + } + ] + },{{end}}{{if eq .header "N"}} + { + "properties": { + "message": { + "properties": { + "{{.rootElement}}": { + "$ref": "{{.schema}}.schema.json" + } + }, + "required": [ + "{{.rootElement}}" + ] + } + } + },{{end}}{{end}}{{end}} + { + "properties": { + "message": { + "properties": { + "customContent": { + "$ref": "customContent.schema.json" + } + }, + "required": [ + "customContent" + ] + } + } + }, + { + "properties": { + "message": { + "properties": { + "error": { + "$ref": "RS-ERROR.schema.json" + } + }, + "required": [ + "error" + ] + } + } + } + ] + }, + "Descriptor": { + "type": "object", + "properties": { + "explicitAddress": { + "$ref": "#/definitions/ExplicitAddress" + }, + "language": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "explicitAddress", + "language" + ] + }, + "DistributionKind": { + "type": "string", + "enum": [ + "Report", + "Update", + "Cancel", + "Ack", + "Error" + ] + }, + "DistributionStatus": { + "type": "string", + "enum": [ + "Actual", + "Exercise" + ] + }, + "ExplicitAddress": { + "type": "object", + "properties": { + "explicitAddressScheme": { + "type": "string" + }, + "explicitAddressValue": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "explicitAddressScheme", + "explicitAddressValue" + ] + } + } +} diff --git a/automatic-schema-generator/templates/RC-XML-ContentType.xsd.tmpl b/automatic-schema-generator/templates/RC-XML-ContentType.xsd.tmpl new file mode 100644 index 0000000000..9a5aa03e79 --- /dev/null +++ b/automatic-schema-generator/templates/RC-XML-ContentType.xsd.tmpl @@ -0,0 +1,53 @@ + + + + + + + {{ range (datasource "config").schemas }}{{if and (eq .automaticGeneration "Y") .xmlns}}{{end}} + {{end}} + + + + + + + + + + + + + + + + + + {{ range (datasource "config").schemas }}{{if and (eq .automaticGeneration "Y") (and (eq .header "Y") .xmlns)}} + {{end}}{{end}} + + + + + + + + + {{ range (datasource "config").schemas }}{{if and (eq .automaticGeneration "Y") (and (eq .header "N") .xmlns)}} + {{end}}{{end}} + + + + + + diff --git a/automatic-schema-generator/templates/schema.generator-config.json.tmpl b/automatic-schema-generator/templates/schema.generator-config.json.tmpl new file mode 100644 index 0000000000..fea95040af --- /dev/null +++ b/automatic-schema-generator/templates/schema.generator-config.json.tmpl @@ -0,0 +1,28 @@ +{{ define "generator-config" }}{ + "inputSpec": "./input/{{.schema}}.openapi.yaml", + "outputDir": "classes/", + "generatorName": "java", + "templateDir": "templates/child-classes/", + "globalProperties": { + "models": "", + "apis": false, + "apiTests": false, + "apiDocs": false, + "modelDocs": false, + "modelTests": false + }, + "additionalProperties": { + "library": "native", + "modelPackage": "com.hubsante.model.{{.package}}", + "serializationLibrary": "jackson", + "openApiNullable": true, + "supportUrlQuery": false, + "enablePostProcessFile": true + } +} +{{ end }} +{{- range (datasource "config").schemas }} + {{ if and (eq .automaticGeneration "Y") (eq .subschema "N") }} + {{- tmpl.Exec "generator-config" . | file.Write (printf "output/generator/config/generated/%s/%s.generator-config.json" .schema .schema) }} + {{end}} +{{end}} diff --git a/automatic-schema-generator/templates/schema.usecase.generator-config.json.tmpl b/automatic-schema-generator/templates/schema.usecase.generator-config.json.tmpl new file mode 100644 index 0000000000..6a1bfd64ab --- /dev/null +++ b/automatic-schema-generator/templates/schema.usecase.generator-config.json.tmpl @@ -0,0 +1,29 @@ +{{ define "usecase.generator-config" }}{ + "inputSpec": "./input/{{.schema}}.openapi.yaml", + "outputDir": "classes/", + "generatorName": "java", + "templateDir": "templates/useCase/", + "globalProperties": { + "models": "{{.rootElement}}", + "apis": false, + "apiTests": false, + "apiDocs": false, + "modelDocs": false, + "modelTests": false + }, + "additionalProperties": { + "library": "native", + "modelPackage": "com.hubsante.model.{{.package}}", + "serializationLibrary": "jackson", + "openApiNullable": true, + "supportUrlQuery": false, + "xmlns": "{{if .xmlns}}{{.xmlns}}{{end}}{{if not .xmlns}}cisu:2.0:{{.rootElement}}{{end}}", + "enablePostProcessFile": true + } +} +{{ end }} +{{- range (datasource "config").schemas }} + {{ if eq .automaticGeneration "Y" }} + {{- tmpl.Exec "usecase.generator-config" . | file.Write (printf "output/generator/config/generated/%s/%s.usecase.generator-config.json" .schema .schema) }} + {{end}} +{{end}} diff --git a/automatic-schema-generator/templates/schema.wrapper.generator-config.json.tmpl b/automatic-schema-generator/templates/schema.wrapper.generator-config.json.tmpl new file mode 100644 index 0000000000..61bb7650e9 --- /dev/null +++ b/automatic-schema-generator/templates/schema.wrapper.generator-config.json.tmpl @@ -0,0 +1,32 @@ +{{ define "wrapper.generator-config" }}{ + "inputSpec": "./input/{{.schema}}.openapi.yaml", + "outputDir": "classes/", + "generatorName": "java", + "templateDir": "templates/wrapper/", + "globalProperties": { + "models": "{{.rootElement}}Wrapper", + "apis": false, + "apiTests": false, + "apiDocs": false, + "modelDocs": false, + "modelTests": false + }, + "additionalProperties": { + "library": "native", + "modelPackage": "com.hubsante.model.{{.package}}", + "serializationLibrary": "jackson", + "openApiNullable": true, + "supportUrlQuery": false, + "enablePostProcessFile": true{{ if .customExtendPackage}}, + "customExtend": { + "package": "{{ .customExtendPackage }}", + "className": "{{ .customExtendClass }}" + }{{ end }} + } +} +{{ end }} +{{- range (datasource "config").schemas }} + {{ if eq .automaticGeneration "Y" }} + {{- tmpl.Exec "wrapper.generator-config" . | file.Write (printf "output/generator/config/generated/%s/%s.wrapper.generator-config.json" .schema .schema) }} + {{end}} +{{end}} diff --git a/csv_parser/json_schema2xsd/build.gradle b/csv_parser/json_schema2xsd/build.gradle index 85a45cff0c..c16ef950d6 100644 --- a/csv_parser/json_schema2xsd/build.gradle +++ b/csv_parser/json_schema2xsd/build.gradle @@ -21,8 +21,8 @@ dependencies { // This dependency is used by the application. implementation 'com.google.guava:guava:31.1-jre' - implementation 'com.ethlo.jsons2xsd:jsons2xsd:2.3.0' + implementation 'org.yaml:snakeyaml:2.3' } // Apply a specific Java toolchain to ease working on different environments. diff --git a/csv_parser/json_schema2xsd/src/main/java/json_schema2xsd/App.java b/csv_parser/json_schema2xsd/src/main/java/json_schema2xsd/App.java index 0a09fdc1c0..57a8844ca6 100644 --- a/csv_parser/json_schema2xsd/src/main/java/json_schema2xsd/App.java +++ b/csv_parser/json_schema2xsd/src/main/java/json_schema2xsd/App.java @@ -7,19 +7,24 @@ import com.fasterxml.jackson.databind.node.ObjectNode; import org.w3c.dom.Document; import org.w3c.dom.Element; +import org.yaml.snakeyaml.Yaml; import javax.xml.transform.OutputKeys; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; +import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.FileOutputStream; +import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; +import java.io.Reader; import java.io.StringWriter; import java.util.ArrayList; import java.util.Arrays; +import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; @@ -31,8 +36,26 @@ public static void main(String[] args) { Logger logger = Logger.getLogger(App.class.getName()); List regexErrors = new ArrayList<>(); - for (String schema : Arrays.asList("EMSI", "RC-DE", "RC-EDA", "RC-REF", "RS-EDA", "RS-INFO", "GEO-RES", "GEO-REQ", "GEO-POS", "RS-ERROR", "RS-RI", - "RS-DR", "RS-RR", "RS-RPIS", "RS-EDA-MAJ", "RS-SR", "TECHNICAL", "TECHNICAL_NOREQ", "RS-URL", "RS-ER", "RS-BPV")) { + //Get the schemas.yaml file from resource folder + InputStream schemaStream = App.class.getResourceAsStream("/schemas.yaml"); + assert schemaStream != null; + InputStreamReader schemaReader = new InputStreamReader(schemaStream); + Map>> yamlMap = new HashMap<>(); + try (Reader reader = new BufferedReader(schemaReader)) { + Yaml yaml = new Yaml(); + yamlMap = yaml.load(reader); + } catch (IOException e) { + logger.severe("Error while reading schemas.yaml: " + e); + System.exit(1); + } + List> schemas = yamlMap.get("schemas"); + + for (HashMap schemaConfigMap : schemas) { + // If automaticGeneration is set to 'N', skip the schema + if (schemaConfigMap.containsKey("automaticGeneration") && schemaConfigMap.get("automaticGeneration").equals("N")) { + continue; + } + String schema = schemaConfigMap.get("schema"); // Specify the path to your JSON schema file String jsonSchemaResourcePath = "/" + schema + ".schema.json"; @@ -41,10 +64,10 @@ public static void main(String[] args) { // Create a Config object to customize the conversion Config config = new Config.Builder() - .targetNamespace(getTargetNamespace(schema)) + .targetNamespace(getTargetNamespace(schemaConfigMap)) .unwrapArrays(true) .createRootElement(true) - .name(getRootElementNameFromSchema(schema)) + .name(schemaConfigMap.get("rootElement")) .build(); try { @@ -127,82 +150,10 @@ private static void convertRegexValues(JsonNode node) { } } - private static String getTargetNamespace(String schema) { - if (schema.equalsIgnoreCase("RC-DE")) { + private static String getTargetNamespace(HashMap schema) { + if (schema.get("schema").equals("RC-DE")) { return "urn:emergency:cisu:2.0"; - } else return "urn:emergency:cisu:2.0:" + getRootElementNameFromSchema(schema); - } - - private static String getRootElementNameFromSchema(String schema) { - String root; - switch (schema) { - case "EMSI": - root = "emsi"; - break; - case "RC-DE": - root = "distributionElement"; - break; - case "RC-REF": - root = "reference"; - break; - case "RC-EDA": - root = "createCase"; - break; - case "RS-EDA": - root = "createCaseHealth"; - break; - case "RS-INFO": - root = "info"; - break; - case "GEO-RES": - root = "geoResourcesDetails"; - break; - case "GEO-REQ": - root = "geoResourcesRequest"; - break; - case "GEO-POS": - root = "geoPositionsUpdate"; - break; - case "RS-ERROR": - root = "error"; - break; - case "RS-RI": - root = "resourcesInfo"; - break; - case "RS-DR": - root = "resourcesRequest"; - break; - case "RS-RR": - root = "resourcesResponse"; - break; - case "RS-RPIS": - root = "rpis"; - break; - case "TECHNICAL": - root = "technical"; - break; - case "TECHNICAL_NOREQ": - root = "technicalNoreq"; - break; - case "RS-EDA-MAJ": - root = "createCaseHealthUpdate"; - break; - case "RS-SR": - root = "resourcesStatus"; - break; - case "RS-URL": - root = "documentLink"; - break; - case "RS-ER": - root = "resourcesEngagement"; - break; - case "RS-BPV": - root = "interventionReport"; - break; - default: - root = ""; - } - return root; + } else return "urn:emergency:" + (schema.get("xmlns") != null ? schema.get("xmlns") : "cisu:2.0:"+schema.get("schema")); } /* diff --git a/csv_parser/json_schema2xsd/src/main/resources/schemas.yaml b/csv_parser/json_schema2xsd/src/main/resources/schemas.yaml new file mode 100644 index 0000000000..3f7cd05a52 --- /dev/null +++ b/csv_parser/json_schema2xsd/src/main/resources/schemas.yaml @@ -0,0 +1,211 @@ +schemas: +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: technical + perimeter: TECHNICAL + rootElement: technical + schema: TECHNICAL + subschema: N + xmlns: cisu:3.0:technical +- automaticGeneration: Y + customExtendClass: ContentMessage + customExtendPackage: com.hubsante.model.edxl + header: N + package: technical.noreq + perimeter: TECHNICAL_NOREQ + rootElement: technicalNoreq + schema: TECHNICAL_NOREQ + subschema: N + xmlns: cisu:3.0:technicalNoreq +- automaticGeneration: N + customExtendClass: null + customExtendPackage: null + header: N + package: rcde + perimeter: 15-15 + rootElement: distributionElement + schema: RC-DE + subschema: N + xmlns: null +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: cisu + perimeter: 15-18 + rootElement: createCase + schema: RC-EDA + subschema: N + xmlns: cisu:3.0 +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: health + perimeter: 15-15 + rootElement: createCaseHealth + schema: RS-EDA + subschema: N + xmlns: cisu:3.0:createCaseHealth +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: health + perimeter: 15-MAJ + rootElement: createCaseHealthUpdate + schema: RS-EDA-MAJ + subschema: Y + xmlns: cisu:3.0:createCaseHealthUpdate +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: emsi + perimeter: 15-15 + rootElement: emsi + schema: EMSI + subschema: N + xmlns: cisu:3.0:emsi +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.info + perimeter: 15-15 + rootElement: resourcesInfo + schema: RS-RI + subschema: N + xmlns: cisu:3.0:resourcesinfo +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.info + perimeter: 15-SMUR + rootElement: resourcesEngagement + schema: RS-ER + subschema: Y + xmlns: cisu:3.0:resourcesengagement +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.status + perimeter: 15-15 + rootElement: resourcesStatus + schema: RS-SR + subschema: N + xmlns: cisu:3.0:resourcesstatus +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.request + perimeter: 15-15 + rootElement: resourcesRequest + schema: RS-DR + subschema: N + xmlns: cisu:3.0:resourcesrequest +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.response + perimeter: 15-15 + rootElement: resourcesResponse + schema: RS-RR + subschema: N + xmlns: cisu:3.0:resourcesresponse +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: rpis + perimeter: 15-15 + rootElement: rpis + schema: RS-RPIS + subschema: N + xmlns: cisu:3.0:rpis +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: interventionreport + perimeter: 15-SMUR + rootElement: interventionReport + schema: RS-BPV + subschema: N + xmlns: cisu:3.0:interventionreport +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: documentlink + perimeter: 15-SMUR + rootElement: documentLink + schema: RS-URL + subschema: N + xmlns: cisu:3.0:documentlink +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: geolocation + perimeter: 15-15 + rootElement: geoPositionsUpdate + schema: GEO-POS + subschema: N + xmlns: cisu:3.0:geopositionsupdate +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: geolocation + perimeter: 15-15 + rootElement: geoResourcesRequest + schema: GEO-REQ + subschema: N + xmlns: cisu:3.0:georesourcesrequest +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: geolocation + perimeter: 15-15 + rootElement: geoResourcesDetails + schema: GEO-RES + subschema: N + xmlns: cisu:3.0:georesourcesdetails +- automaticGeneration: N + customExtendClass: null + customExtendPackage: null + header: N + package: report + perimeter: 15-15 + rootElement: error + schema: RS-ERROR + subschema: N + xmlns: cisu:3.0 +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: reference + perimeter: 15-15 + rootElement: reference + schema: RC-REF + subschema: N + xmlns: cisu:3.0 +- automaticGeneration: N + customExtendClass: null + customExtendPackage: null + header: N + package: customContent + perimeter: 15-15 + rootElement: customContent + schema: customContent + subschema: N + xmlns: cisu:3.0 diff --git a/csv_parser/out/EMSI/EMSI.schema.docx b/csv_parser/out/EMSI/EMSI.schema.docx index 905f26c68f..203e431c18 100644 Binary files a/csv_parser/out/EMSI/EMSI.schema.docx and b/csv_parser/out/EMSI/EMSI.schema.docx differ diff --git a/csv_parser/out/EMSI/EMSI.uml_diagram.pdf b/csv_parser/out/EMSI/EMSI.uml_diagram.pdf index 95c2483d81..287b6ad9eb 100644 Binary files a/csv_parser/out/EMSI/EMSI.uml_diagram.pdf and b/csv_parser/out/EMSI/EMSI.uml_diagram.pdf differ diff --git a/csv_parser/out/GEO-POS/GEO-POS.schema.docx b/csv_parser/out/GEO-POS/GEO-POS.schema.docx index c06b010bf5..81dbf4ed94 100644 Binary files a/csv_parser/out/GEO-POS/GEO-POS.schema.docx and b/csv_parser/out/GEO-POS/GEO-POS.schema.docx differ diff --git a/csv_parser/out/GEO-POS/GEO-POS.uml_diagram.pdf b/csv_parser/out/GEO-POS/GEO-POS.uml_diagram.pdf index 6e827ef9a7..1cb9c8714f 100644 Binary files a/csv_parser/out/GEO-POS/GEO-POS.uml_diagram.pdf and b/csv_parser/out/GEO-POS/GEO-POS.uml_diagram.pdf differ diff --git a/csv_parser/out/GEO-REQ/GEO-REQ.schema.docx b/csv_parser/out/GEO-REQ/GEO-REQ.schema.docx index 8874d96823..38b5d1679a 100644 Binary files a/csv_parser/out/GEO-REQ/GEO-REQ.schema.docx and b/csv_parser/out/GEO-REQ/GEO-REQ.schema.docx differ diff --git a/csv_parser/out/GEO-REQ/GEO-REQ.uml_diagram.pdf b/csv_parser/out/GEO-REQ/GEO-REQ.uml_diagram.pdf index 1b02f7f647..97213ec7c5 100644 Binary files a/csv_parser/out/GEO-REQ/GEO-REQ.uml_diagram.pdf and b/csv_parser/out/GEO-REQ/GEO-REQ.uml_diagram.pdf differ diff --git a/csv_parser/out/GEO-RES/GEO-RES.schema.docx b/csv_parser/out/GEO-RES/GEO-RES.schema.docx index 645169de89..273a12abdd 100644 Binary files a/csv_parser/out/GEO-RES/GEO-RES.schema.docx and b/csv_parser/out/GEO-RES/GEO-RES.schema.docx differ diff --git a/csv_parser/out/GEO-RES/GEO-RES.uml_diagram.pdf b/csv_parser/out/GEO-RES/GEO-RES.uml_diagram.pdf index a910ddd26e..61c3e21eb8 100644 Binary files a/csv_parser/out/GEO-RES/GEO-RES.uml_diagram.pdf and b/csv_parser/out/GEO-RES/GEO-RES.uml_diagram.pdf differ diff --git a/csv_parser/out/RC-DE/RC-DE.schema.docx b/csv_parser/out/RC-DE/RC-DE.schema.docx index 0838c60c55..b09cb1e623 100644 Binary files a/csv_parser/out/RC-DE/RC-DE.schema.docx and b/csv_parser/out/RC-DE/RC-DE.schema.docx differ diff --git a/csv_parser/out/RC-DE/RC-DE.uml_diagram.pdf b/csv_parser/out/RC-DE/RC-DE.uml_diagram.pdf index c2a60d5d19..e7ae32ac30 100644 Binary files a/csv_parser/out/RC-DE/RC-DE.uml_diagram.pdf and b/csv_parser/out/RC-DE/RC-DE.uml_diagram.pdf differ diff --git a/csv_parser/out/RC-EDA/RC-EDA.schema.docx b/csv_parser/out/RC-EDA/RC-EDA.schema.docx index 50bceade95..0492a65607 100644 Binary files a/csv_parser/out/RC-EDA/RC-EDA.schema.docx and b/csv_parser/out/RC-EDA/RC-EDA.schema.docx differ diff --git a/csv_parser/out/RC-EDA/RC-EDA.uml_diagram.pdf b/csv_parser/out/RC-EDA/RC-EDA.uml_diagram.pdf index 1473af7f28..70eeb5cee0 100644 Binary files a/csv_parser/out/RC-EDA/RC-EDA.uml_diagram.pdf and b/csv_parser/out/RC-EDA/RC-EDA.uml_diagram.pdf differ diff --git a/csv_parser/out/RC-REF/RC-REF.schema.docx b/csv_parser/out/RC-REF/RC-REF.schema.docx index b8ec402e92..b421f407de 100644 Binary files a/csv_parser/out/RC-REF/RC-REF.schema.docx and b/csv_parser/out/RC-REF/RC-REF.schema.docx differ diff --git a/csv_parser/out/RC-REF/RC-REF.uml_diagram.pdf b/csv_parser/out/RC-REF/RC-REF.uml_diagram.pdf index 500a901c64..3cc5ad6e1d 100644 Binary files a/csv_parser/out/RC-REF/RC-REF.uml_diagram.pdf and b/csv_parser/out/RC-REF/RC-REF.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-BPV/RS-BPV.schema.docx b/csv_parser/out/RS-BPV/RS-BPV.schema.docx index 70bfa35e76..83b71cbf83 100644 Binary files a/csv_parser/out/RS-BPV/RS-BPV.schema.docx and b/csv_parser/out/RS-BPV/RS-BPV.schema.docx differ diff --git a/csv_parser/out/RS-BPV/RS-BPV.uml_diagram.pdf b/csv_parser/out/RS-BPV/RS-BPV.uml_diagram.pdf index af87332537..af7c8231e8 100644 Binary files a/csv_parser/out/RS-BPV/RS-BPV.uml_diagram.pdf and b/csv_parser/out/RS-BPV/RS-BPV.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-DR/RS-DR.schema.docx b/csv_parser/out/RS-DR/RS-DR.schema.docx index 999b45f8d4..011a7deb15 100644 Binary files a/csv_parser/out/RS-DR/RS-DR.schema.docx and b/csv_parser/out/RS-DR/RS-DR.schema.docx differ diff --git a/csv_parser/out/RS-DR/RS-DR.uml_diagram.pdf b/csv_parser/out/RS-DR/RS-DR.uml_diagram.pdf index 3a15ce3b68..2d929c41b5 100644 Binary files a/csv_parser/out/RS-DR/RS-DR.uml_diagram.pdf and b/csv_parser/out/RS-DR/RS-DR.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.schema.docx b/csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.schema.docx index f70327bf2c..8bab32ac15 100644 Binary files a/csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.schema.docx and b/csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.schema.docx differ diff --git a/csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.uml_diagram.pdf b/csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.uml_diagram.pdf index 184adf92c7..06eef0233b 100644 Binary files a/csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.uml_diagram.pdf and b/csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-EDA/RS-EDA.schema.docx b/csv_parser/out/RS-EDA/RS-EDA.schema.docx index 2ff9db13cb..a2508946ed 100644 Binary files a/csv_parser/out/RS-EDA/RS-EDA.schema.docx and b/csv_parser/out/RS-EDA/RS-EDA.schema.docx differ diff --git a/csv_parser/out/RS-EDA/RS-EDA.uml_diagram.pdf b/csv_parser/out/RS-EDA/RS-EDA.uml_diagram.pdf index 7222e07fa8..1c5383d1de 100644 Binary files a/csv_parser/out/RS-EDA/RS-EDA.uml_diagram.pdf and b/csv_parser/out/RS-EDA/RS-EDA.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-ER/RS-ER.schema.docx b/csv_parser/out/RS-ER/RS-ER.schema.docx index 4db6a774b5..ffe702805f 100644 Binary files a/csv_parser/out/RS-ER/RS-ER.schema.docx and b/csv_parser/out/RS-ER/RS-ER.schema.docx differ diff --git a/csv_parser/out/RS-ER/RS-ER.uml_diagram.pdf b/csv_parser/out/RS-ER/RS-ER.uml_diagram.pdf index dc3336d8d1..bda9563388 100644 Binary files a/csv_parser/out/RS-ER/RS-ER.uml_diagram.pdf and b/csv_parser/out/RS-ER/RS-ER.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-ERROR/RS-ERROR.schema.docx b/csv_parser/out/RS-ERROR/RS-ERROR.schema.docx index ac8562fff2..78bc1e921e 100644 Binary files a/csv_parser/out/RS-ERROR/RS-ERROR.schema.docx and b/csv_parser/out/RS-ERROR/RS-ERROR.schema.docx differ diff --git a/csv_parser/out/RS-ERROR/RS-ERROR.uml_diagram.pdf b/csv_parser/out/RS-ERROR/RS-ERROR.uml_diagram.pdf index b5acc8e795..0bd34d63c4 100644 Binary files a/csv_parser/out/RS-ERROR/RS-ERROR.uml_diagram.pdf and b/csv_parser/out/RS-ERROR/RS-ERROR.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-INFO/RS-INFO.schema.docx b/csv_parser/out/RS-INFO/RS-INFO.schema.docx index 49da7da016..5e364850d9 100644 Binary files a/csv_parser/out/RS-INFO/RS-INFO.schema.docx and b/csv_parser/out/RS-INFO/RS-INFO.schema.docx differ diff --git a/csv_parser/out/RS-INFO/RS-INFO.uml_diagram.pdf b/csv_parser/out/RS-INFO/RS-INFO.uml_diagram.pdf index 0fa2b19c67..b90d79c856 100644 Binary files a/csv_parser/out/RS-INFO/RS-INFO.uml_diagram.pdf and b/csv_parser/out/RS-INFO/RS-INFO.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-RI/RS-RI.schema.docx b/csv_parser/out/RS-RI/RS-RI.schema.docx index b51d3ba4e8..a27fc0a740 100644 Binary files a/csv_parser/out/RS-RI/RS-RI.schema.docx and b/csv_parser/out/RS-RI/RS-RI.schema.docx differ diff --git a/csv_parser/out/RS-RI/RS-RI.uml_diagram.pdf b/csv_parser/out/RS-RI/RS-RI.uml_diagram.pdf index 1b9af7841a..15a31198b8 100644 Binary files a/csv_parser/out/RS-RI/RS-RI.uml_diagram.pdf and b/csv_parser/out/RS-RI/RS-RI.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-RPIS/RS-RPIS.schema.docx b/csv_parser/out/RS-RPIS/RS-RPIS.schema.docx index 76912c9d17..e331668c92 100644 Binary files a/csv_parser/out/RS-RPIS/RS-RPIS.schema.docx and b/csv_parser/out/RS-RPIS/RS-RPIS.schema.docx differ diff --git a/csv_parser/out/RS-RPIS/RS-RPIS.uml_diagram.pdf b/csv_parser/out/RS-RPIS/RS-RPIS.uml_diagram.pdf index 508c53f425..ca34043fa4 100644 Binary files a/csv_parser/out/RS-RPIS/RS-RPIS.uml_diagram.pdf and b/csv_parser/out/RS-RPIS/RS-RPIS.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-RR/RS-RR.schema.docx b/csv_parser/out/RS-RR/RS-RR.schema.docx index ef804cc849..6a9c83d944 100644 Binary files a/csv_parser/out/RS-RR/RS-RR.schema.docx and b/csv_parser/out/RS-RR/RS-RR.schema.docx differ diff --git a/csv_parser/out/RS-RR/RS-RR.uml_diagram.pdf b/csv_parser/out/RS-RR/RS-RR.uml_diagram.pdf index 9a5e0dcf58..fb62765b75 100644 Binary files a/csv_parser/out/RS-RR/RS-RR.uml_diagram.pdf and b/csv_parser/out/RS-RR/RS-RR.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-SR/RS-SR.schema.docx b/csv_parser/out/RS-SR/RS-SR.schema.docx index 14874aa2bf..64a10b3321 100644 Binary files a/csv_parser/out/RS-SR/RS-SR.schema.docx and b/csv_parser/out/RS-SR/RS-SR.schema.docx differ diff --git a/csv_parser/out/RS-SR/RS-SR.uml_diagram.pdf b/csv_parser/out/RS-SR/RS-SR.uml_diagram.pdf index 29c0c1aecb..a5303424b6 100644 Binary files a/csv_parser/out/RS-SR/RS-SR.uml_diagram.pdf and b/csv_parser/out/RS-SR/RS-SR.uml_diagram.pdf differ diff --git a/csv_parser/out/RS-URL/RS-URL.example.json b/csv_parser/out/RS-URL/RS-URL.example.json index 1742956786..671f064406 100644 --- a/csv_parser/out/RS-URL/RS-URL.example.json +++ b/csv_parser/out/RS-URL/RS-URL.example.json @@ -1,6 +1,7 @@ { "caseId": "fr.health.samu440.DRFR15440241550012", "patientId": "fr.health.samu690.patient.P23AZ59\nfr.health.samu690.patient.DRFR15690242370035.1", + "code": "5f5h8s9", "document": [ { "documentType": "Photo, ECG, bilan pdf, prescription, carte d'identité", diff --git a/csv_parser/out/RS-URL/RS-URL.input.csv b/csv_parser/out/RS-URL/RS-URL.input.csv index 67ed5fd032..6e8ef78688 100644 --- a/csv_parser/out/RS-URL/RS-URL.input.csv +++ b/csv_parser/out/RS-URL/RS-URL.input.csv @@ -7,6 +7,7 @@ Il doit pouvoir être généré de façon décentralisée et ne présenter aucun Il doit être unique dans l'ensemble des systèmes : le numéro de dossier fourni par celui qui génère l'identifiant partagé doit donc être un numéro unique dans son système.",fr.health.samu440.DRFR15440241550012,caseId,1..1,,string, Identifiant partagé du patient,,,,,,Indique l'identifiant partagé du patient auquel les documents sont rattachés,"fr.health.samu690.patient.P23AZ59 fr.health.samu690.patient.DRFR15690242370035.1",patientId,0..1,,string,"REGEX: ^([\w-]+\.){3,4}patient(\.[\w-]+){1,2}$" +Code d'accès au bilan,,,,,,Code unitaire par bilan qui permet à l'utilisateur qui reçoit ce lien d'ouvrir le bilan lorsque celui ci ne nécessite pas une connexion nominative mais un code bilan ,5f5h8s9,code,0..1,,string, Documents,,,,,,,,document,1..n,X,document, ,Type de document,,,,,Informe l'utilisateur du type de document que le lien URL permet d'ouvrir,"Photo, ECG, bilan pdf, prescription, carte d'identité",documentType,0..1,,string, ,URL,,,,,URL qui permet à l'utilisateur du LRM d'ouvrir le type de document précisé dans le champ précédent,https://hub.esante.gouv.fr/,url,1..1,,string, diff --git a/csv_parser/out/RS-URL/RS-URL.schema.docx b/csv_parser/out/RS-URL/RS-URL.schema.docx index 6c317ea314..d7967a85b5 100644 Binary files a/csv_parser/out/RS-URL/RS-URL.schema.docx and b/csv_parser/out/RS-URL/RS-URL.schema.docx differ diff --git a/csv_parser/out/RS-URL/RS-URL.uml_diagram b/csv_parser/out/RS-URL/RS-URL.uml_diagram index e1e5bb7607..21f8974bea 100644 --- a/csv_parser/out/RS-URL/RS-URL.uml_diagram +++ b/csv_parser/out/RS-URL/RS-URL.uml_diagram @@ -14,6 +14,6 @@ strict digraph { documentLink - objet documentLinkcaseId string : [1..1] patientId string : [0..1] + objet documentLinkcaseId string : [1..1] patientId string : [0..1] code string : [0..1] >] } diff --git a/csv_parser/out/RS-URL/RS-URL.uml_diagram.pdf b/csv_parser/out/RS-URL/RS-URL.uml_diagram.pdf index 11c7cf6b55..aa042616c5 100644 Binary files a/csv_parser/out/RS-URL/RS-URL.uml_diagram.pdf and b/csv_parser/out/RS-URL/RS-URL.uml_diagram.pdf differ diff --git a/csv_parser/out/TECHNICAL/TECHNICAL.schema.docx b/csv_parser/out/TECHNICAL/TECHNICAL.schema.docx index d4c7d3605e..ecb7450ccd 100644 Binary files a/csv_parser/out/TECHNICAL/TECHNICAL.schema.docx and b/csv_parser/out/TECHNICAL/TECHNICAL.schema.docx differ diff --git a/csv_parser/out/TECHNICAL/TECHNICAL.uml_diagram.pdf b/csv_parser/out/TECHNICAL/TECHNICAL.uml_diagram.pdf index fba60479af..f1759fd4fa 100644 Binary files a/csv_parser/out/TECHNICAL/TECHNICAL.uml_diagram.pdf and b/csv_parser/out/TECHNICAL/TECHNICAL.uml_diagram.pdf differ diff --git a/csv_parser/out/TECHNICAL_NOREQ/TECHNICAL_NOREQ.schema.docx b/csv_parser/out/TECHNICAL_NOREQ/TECHNICAL_NOREQ.schema.docx index e2febb92a3..5adf0c1f7c 100644 Binary files a/csv_parser/out/TECHNICAL_NOREQ/TECHNICAL_NOREQ.schema.docx and b/csv_parser/out/TECHNICAL_NOREQ/TECHNICAL_NOREQ.schema.docx differ diff --git a/csv_parser/out/TECHNICAL_NOREQ/TECHNICAL_NOREQ.uml_diagram.pdf b/csv_parser/out/TECHNICAL_NOREQ/TECHNICAL_NOREQ.uml_diagram.pdf index 0eb8fd0791..5d64b2d14b 100644 Binary files a/csv_parser/out/TECHNICAL_NOREQ/TECHNICAL_NOREQ.uml_diagram.pdf and b/csv_parser/out/TECHNICAL_NOREQ/TECHNICAL_NOREQ.uml_diagram.pdf differ diff --git a/csv_parser/out/customContent/customContent.schema.docx b/csv_parser/out/customContent/customContent.schema.docx index bed93ff41e..c9b105eebe 100644 Binary files a/csv_parser/out/customContent/customContent.schema.docx and b/csv_parser/out/customContent/customContent.schema.docx differ diff --git a/csv_parser/out/customContent/customContent.uml_diagram.pdf b/csv_parser/out/customContent/customContent.uml_diagram.pdf index a11dd1e252..60ff49f706 100644 Binary files a/csv_parser/out/customContent/customContent.uml_diagram.pdf and b/csv_parser/out/customContent/customContent.uml_diagram.pdf differ diff --git a/csv_parser/out/hubsante.asyncapi.yaml b/csv_parser/out/hubsante.asyncapi.yaml index d72d0cf83e..b2085fecb8 100644 --- a/csv_parser/out/hubsante.asyncapi.yaml +++ b/csv_parser/out/hubsante.asyncapi.yaml @@ -306,28 +306,27 @@ components: $ref: '#/components/schemas/EmbeddedXMLContent' EmbeddedJsonContent: oneOf: &id001 + - $ref: '#/components/schemas/technical' + - $ref: '#/components/schemas/technicalNoreq' - $ref: '#/components/schemas/DistributionElement' - $ref: '#/components/schemas/createCase' - $ref: '#/components/schemas/createCaseHealth' - $ref: '#/components/schemas/createCaseHealthUpdate' - $ref: '#/components/schemas/emsi' - - $ref: '#/components/schemas/geoPositionsUpdate' - - $ref: '#/components/schemas/geoResourcesRequest' - - $ref: '#/components/schemas/geoResourcesDetails' - - $ref: '#/components/schemas/reference' - - $ref: '#/components/schemas/error' - - $ref: '#/components/schemas/info' - $ref: '#/components/schemas/resourcesInfo' - $ref: '#/components/schemas/resourcesEngagement' + - $ref: '#/components/schemas/resourcesStatus' - $ref: '#/components/schemas/resourcesRequest' - $ref: '#/components/schemas/resourcesResponse' - $ref: '#/components/schemas/rpis' - - $ref: '#/components/schemas/customContent' - - $ref: '#/components/schemas/resourcesStatus' - - $ref: '#/components/schemas/technical' - - $ref: '#/components/schemas/technicalNoreq' - - $ref: '#/components/schemas/documentLink' - $ref: '#/components/schemas/interventionReport' + - $ref: '#/components/schemas/documentLink' + - $ref: '#/components/schemas/geoPositionsUpdate' + - $ref: '#/components/schemas/geoResourcesRequest' + - $ref: '#/components/schemas/geoResourcesDetails' + - $ref: '#/components/schemas/error' + - $ref: '#/components/schemas/reference' + - $ref: '#/components/schemas/customContent' EmbeddedXMLContent: oneOf: *id001 DistributionElement: @@ -388,6705 +387,6250 @@ components: type: string URI: type: string - createCase: + technical: $id: classpath:/json-schema/schema# - x-id: RC-EDA.schema.json# + x-id: TECHNICAL.schema.json# example: example.json# type: object - title: createCase + title: technical required: - - caseId - - creation - - referenceVersion - - qualification - - location + - requiredStringField + - requiredArray properties: - caseId: + requiredStringField: type: string - title: Identifiant affaire/dossier + title: Required string x-health-only: false x-cols: 6 - example: example.json#/caseId - description: "Identifiant partag\xE9 de l'affaire/dossier, g\xE9n\xE9r\xE9\ - \ une seule fois par le syst\xE8me du partenaire qui recoit la primo-demande\ - \ de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9 comme suit\ - \ lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ - \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ - e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ - \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ - \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ - \ num\xE9ro unique dans son syst\xE8me." - pattern: ^fr(\.[\w-]+){3,4}$ + example: example.json#/requiredStringField + description: This field is required examples: - - fr.health.samu440.DRFR15440241550012 - senderCaseId: + - None + optionalStringField: type: string - title: Identifiant local de l'affaire/dossier + title: Optional string x-health-only: false x-cols: 6 - example: example.json#/senderCaseId - description: "A valoriser avec le num\xE9ro du dossier dans le SI de l'\xE9\ - metteur du message.\n" + example: example.json#/optionalStringField + description: This field is optional examples: - - DRFR15440241550012 - creation: + - None + enumerationField: type: string - title: "Date Heure de cr\xE9ation de l'affaire/dossier" + title: Enumeration x-health-only: false x-cols: 6 - example: example.json#/creation - description: "A valoriser avec le groupe date heure de cr\xE9ation du dossier/affaire.\n\ - \nSp\xE9cificit\xE9 15-18 : A valoriser avec le groupe date heure de d\xE9\ - but de partage li\xE9 \xE0 la cr\xE9ation de l'affaire (et donc de g\xE9\ - n\xE9ration du caseId). \nLors de l'ajout d'une nouvelle alerte, la valeur\ - \ de ce champ ne doit pas \xEAtre modifi\xE9e. \nL'indicateur de fuseau\ - \ horaire Z ne doit pas \xEAtre utilis\xE9.\nIl doit \xEAtre renseign\xE9\ - \ \xE0 la fin du processus de la cr\xE9ation de la premi\xE8re alerte." - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time + example: example.json#/enumerationField + description: This is an enumeration + enum: + - ENUM_VALUE_1 + - ENUM_VALUE_2 + - ENUM_VALUE_3 + - ENUM_VALUE_4 + - ENUM_VALUE_5 examples: - - '2022-09-27T08:23:34+02:00' - referenceVersion: - type: string - title: "Version des nomenclatures du r\xE9f\xE9rentiel CISU" + - None + integerField: + type: integer + title: Optional integer x-health-only: false x-cols: 6 - example: example.json#/referenceVersion - description: "Indique le num\xE9ro de version du r\xE9f\xE9rentiel des nomenclatures\ - \ des codes transmis. \nCela permet aux diff\xE9rents syst\xE8mes de s'assurer\ - \ qu'ils utilisent la m\xEAme version des codes de nomenclature que leurs\ - \ partenaires." + example: example.json#/integerField + description: This is an integer examples: - - '1.2' - qualification: - $ref: '#/components/schemas/qualification' - location: - $ref: '#/components/schemas/location' - initialAlert: - $ref: '#/components/schemas/alert' - newAlert: + - None + numberField: + type: number + title: Optional number + x-health-only: false + x-cols: 6 + example: example.json#/numberField + description: This is a number + examples: + - None + booleanField: + type: boolean + title: Optional boolean + x-health-only: false + x-cols: 6 + example: example.json#/booleanField + description: This is a boolean + examples: + - None + objectField: + $ref: '#/components/schemas/technicalObject' + arrayField: type: array + x-health-only: false items: - $ref: '#/components/schemas/alert' - freetext: + type: string + title: Array + x-health-only: false + x-cols: 6 + example: example.json#/arrayField/0 + description: This is an array + examples: + - None + enumArrayField: type: array x-health-only: false items: type: string - title: Description de l'affaire/dossier + title: Array of enumerations x-health-only: false x-cols: 6 - example: example.json#/freetext/0 - description: "Texte libre permettant de donner des informations suppl\xE9\ - mentaires concernant l'affaire/dossier. Ces informations sont g\xE9\ - n\xE9rales, et ont vocation \xE0 \xEAtre \xE9chang\xE9es en inter-force. " + example: example.json#/enumArrayField/0 + description: This is an array of enumerations + enum: + - ENUM_VALUE_10 + - ENUM_VALUE_20 + - ENUM_VALUE_30 + - ENUM_VALUE_40 + - ENUM_VALUE_50 examples: - - "Le forcen\xE9 n'est pas ma\xEEtris\xE9. Voiture renvers\xE9e. Urgences\ - \ ferm\xE9es de 22h \xE0 6h00." - additionalInformation: - $ref: '#/components/schemas/additionalInformation' - additionalProperties: false - qualification: - type: object - title: Qualification - x-display: expansion-panels - x-health-only: false - required: [] - properties: - riskThreat: + - None + requiredArray: type: array + x-health-only: false items: - $ref: '#/components/schemas/riskThreat' - details: - $ref: '#/components/schemas/caseDetails' - additionalProperties: false - example: example.json#/qualification - location: - type: object - title: Lieu d'intervention - x-display: expansion-panels - x-health-only: false - required: - - detailedAddress - properties: - type: + type: string + title: Required array + x-health-only: false + x-cols: 6 + example: example.json#/requiredArray/0 + description: This array is required + examples: + - None + minItems: 1 + arrayWithMaxLength: + type: array + x-health-only: false + items: + type: string + title: Array with maximum length + x-health-only: false + x-cols: 6 + example: example.json#/arrayWithMaxLength/0 + description: This is an array with a maximum length + examples: + - None + maxItems: 5 + phoneNumberField: type: string - title: "Type de lieu d\u2019intervention" + title: Phone number with regex x-health-only: false x-cols: 6 - example: example.json#/intervention/location/type - description: A valoriser avec un code de la nomenclature CISU-Code_Type_de_lieu. - enum: - - L01.00.00 - - L01.01.00 - - L01.01.01 - - L01.01.02 - - L01.01.03 - - L01.01.04 - - L01.02.00 - - L01.02.01 - - L01.02.02 - - L01.02.03 - - L01.02.04 - - L01.02.05 - - L01.02.06 - - L01.02.07 - - L01.02.08 - - L01.02.09 - - L01.02.10 - - L01.02.11 - - L01.02.12 - - L01.03.00 - - L01.03.01 - - L01.03.02 - - L01.03.03 - - L01.04.00 - - L02.00.00 - - L02.01.00 - - L02.02.00 - - L02.02.01 - - L02.02.02 - - L02.02.03 - - L02.02.04 - - L02.02.05 - - L02.03.00 - - L02.03.01 - - L02.03.02 - - L02.03.03 - - L02.04.00 - - L02.05.00 - - L02.05.01 - - L02.05.02 - - L02.05.03 - - L02.05.04 - - L02.05.05 - - L02.05.06 - - L02.05.07 - - L02.05.08 - - L02.05.09 - - L02.05.10 - - L02.05.11 - - L02.05.12 - - L02.05.13 - - L02.05.14 - - L02.05.15 - - L02.05.16 - - L02.06.00 - - L02.06.01 - - L02.06.02 - - L02.06.03 - - L02.06.04 - - L02.06.05 - - L02.06.06 - - L02.06.07 - - L02.06.08 - - L02.07.00 - - L02.07.01 - - L02.07.02 - - L02.08.00 - - L03.00.00 - - L03.01.00 - - L03.02.00 - - L03.03.00 - - L03.04.00 - - L03.05.00 - - L04.00.00 - - L04.01.00 - - L04.02.00 - - L04.02.01 - - L04.02.02 - - L04.02.03 - - L04.03.00 - - L04.03.01 - - L04.03.02 - - L04.03.03 - - L04.04.00 - - L04.05.00 - - L04.06.00 - - L04.06.01 - - L04.06.02 - - L04.06.03 - - L04.06.04 - - L04.06.05 - - L04.07.00 - - L04.07.01 - - L04.07.02 - - L04.07.03 - - L04.08.00 - - L04.08.01 - - L04.08.02 - - L04.09.00 - - L04.09.01 - - L04.09.02 - - L04.10.00 - - L04.11.00 - - L04.11.01 - - L04.11.02 - - L04.11.03 - - L04.11.04 - - L04.12.00 - - L04.12.01 - - L04.12.02 - - L04.12.03 - - L04.12.04 - - L04.13.00 - - L04.13.01 - - L04.13.02 - - L04.13.03 - - L04.13.04 - - L04.14.00 - - L04.14.01 - - L04.14.02 - - L04.15.00 - - L04.16.00 - - L05.00.00 - - L05.01.00 - - L05.01.01 - - L05.01.02 - - L05.01.03 - - L05.01.04 - - L05.02.00 - - L05.02.01 - - L05.02.02 - - L05.02.03 - - L05.02.04 - - L05.03.00 - - L05.03.01 - - L05.03.02 - - L05.04.00 - - L05.04.01 - - L05.04.02 - - L05.04.03 - - L05.04.04 - - L05.04.05 - - L05.04.06 - - L05.05.00 - - L05.06.00 - - L05.07.00 - - L06.00.00 - - L06.01.00 - - L06.01.01 - - L06.01.02 - - L06.01.03 - - L06.01.04 - - L06.01.05 - - L06.01.06 - - L06.01.07 - - L06.01.08 - - L06.02.00 - - L06.03.00 - - L06.03.01 - - L06.03.02 - - L06.03.03 - - L06.03.04 - - L06.03.05 - - L06.04.00 - - L06.05.00 - - L06.05.01 - - L06.05.02 - - L06.06.00 - - L06.06.01 - - L06.06.02 - - L06.06.03 - - L06.06.04 - - L06.07.00 - - L06.07.01 - - L06.07.02 - - L07.00.00 - - L07.01.00 - - L07.01.01 - - L07.02.00 + example: example.json#/phoneNumberField + description: Phone number with regex + pattern: ^\+?[0-9]{2,14}$ examples: - - DOMPAV - finessGeo: + - None + dateField: type: string - title: "FINESS g\xE9ographique de l\u2019\xE9tablissement " + title: Date x-health-only: false x-cols: 6 - example: example.json#/intervention/location/finessGeo - description: "Finess g\xE9ographique et juridique de l\u2019\xE9tablissement\ - \ de sant\xE9. \nA renseigner uniquement si l'intervention a lieu dans\ - \ un \xE9tablissement de sant\xE9. " + example: example.json#/dateField + description: Date + pattern: ^\d{4}-\d{2}-\d{2}$ examples: - None - service: + emailField: type: string - title: "Unit\xE9 fonctionnelle " + title: Email with regex x-health-only: false x-cols: 6 - example: example.json#/intervention/location/service - description: "Unit\xE9 fonctionnelle de l'\xE9tablissement de sant\xE9.\ - \ \nA renseigner uniquement si l'intervention a lieu dans un \xE9tablissement\ - \ de sant\xE9. " + example: example.json#/emailField + description: Email with regex + pattern: ^[\w\-\.]+@([\w\-]+\.)+[\w\-]{2,4}$ + examples: + - None + datetimeField: + type: string + title: Datetime + x-health-only: false + x-cols: 6 + example: example.json#/datetimeField + description: Datetime + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - None + objectLevel1: + $ref: '#/components/schemas/levelOneData' + nomenclatureField: + type: string + title: Nomenclature + x-health-only: false + x-cols: 6 + example: example.json#/nomenclatureField + description: Enum from extenal nomenclature file + enum: + - M + - F + - O + - UN examples: - None - detailedAddress: - $ref: '#/components/schemas/detailedAddress' additionalProperties: false - example: example.json#/intervention/location - alert: + technicalObject: type: object - title: Alerte initiale + title: Object x-display: expansion-panels x-health-only: false - required: [] + required: + - objectPropertyRequiredString properties: - notes: - type: array - items: - $ref: '#/components/schemas/notes' + objectPropertyString: + type: string + title: Object property A + x-health-only: false + x-cols: 6 + example: example.json#/objectField/objectPropertyString + description: Object property string + examples: + - None + objectPropertyNumber: + type: number + title: Object property B + x-health-only: false + x-cols: 6 + example: example.json#/objectField/objectPropertyNumber + description: Object property number + examples: + - None + objectPropertyRequiredString: + type: string + title: Required Object Property + x-health-only: false + x-cols: 6 + example: example.json#/objectField/objectPropertyRequiredString + description: Required object property + examples: + - None additionalProperties: false - example: example.json#/initialAlert - additionalInformation: + example: example.json#/objectField + examples: + - objectPropertyString: None + objectPropertyNumber: None + objectPropertyRequiredString: None + levelOneData: type: object - title: "Informations compl\xE9mentaires" + title: Level 1 Object x-display: expansion-panels x-health-only: false required: [] properties: - customMap: - type: array - items: - $ref: '#/components/schemas/customMap' - maxItems: 3 - additionalProperties: false - example: example.json#/additionalInformation - riskThreat: - type: object - title: "Risque, menace et sensibilit\xE9" - x-display: expansion-panels - x-health-only: false - required: - - code - - label - properties: - code: + object1Level2: + $ref: '#/components/schemas/levelTwoData' + stringLevel2: type: string - title: Code + title: Level 2 Field x-health-only: false x-cols: 6 - example: example.json#/qualification/riskThreat/0/code - description: "A valoriser avec le code de la nomenclature associ\xE9e" - enum: - - R01 - - R02 - - R03 - - R04 - - R05 - - R06 - - R07 - - R08 - - R09 - - R10 - - R11 - - R12 - - R13 - - R14 - - R15 - - R16 - - R17 - - R18 - - R19 - - R20 - - R21 - - R22 - - R23 - - R24 - - R25 - - R26 - - R27 - - R28 - - R29 - - R30 - - R31 - - R32 - - R33 - - R34 - - R35 - - R36 - - R37 + example: example.json#/objectLevel1/stringLevel2 + description: String field at level 2 examples: - - C07.13.02 - label: + - None + object2Level2: + $ref: '#/components/schemas/secondLevelTwoData' + additionalProperties: false + example: example.json#/objectLevel1 + levelTwoData: + type: object + title: Level 2 Object 1 + x-display: expansion-panels + x-health-only: false + required: [] + properties: + object1Level3: + $ref: '#/components/schemas/levelThreeData' + stringLevel3: type: string - title: "Libell\xE9" + title: Level 3 Field x-health-only: false x-cols: 6 - example: example.json#/qualification/riskThreat/0/label - description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ - e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ - tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ - \ fourni avec le code." + example: example.json#/objectLevel1/object1Level2/stringLevel3 + description: String field at level 3 examples: - - "Rod\xE9o automobile" + - None additionalProperties: false - example: example.json#/qualification/riskThreat/0 + example: example.json#/objectLevel1/object1Level2 + secondLevelTwoData: + type: object + title: Level 2 Object 2 + x-display: expansion-panels + x-health-only: false + required: [] + properties: + object2Level3: + $ref: '#/components/schemas/levelThreeData' + additionalProperties: false + example: example.json#/objectLevel1/object2Level2 examples: - - code: C07.13.02 - label: "Rod\xE9o automobile" - whatsHappen: + - object2Level3: {} + levelThreeData: type: object - title: "Circonstances ayant donn\xE9es lieu \xE0 l\u2019appel" + title: Level 3 Object 1 x-display: expansion-panels x-health-only: false - required: - - code - - label + required: [] properties: - code: + stringLevel4: type: string - title: Code + title: Level 4 Field x-health-only: false x-cols: 6 - example: example.json#/regulation/whatsHappen/code - description: "A valoriser avec le code de la nomenclature associ\xE9e." + example: example.json#/objectLevel1/object1Level2/object1Level3/stringLevel4 + description: String field at level 4 + examples: + - None + additionalProperties: false + example: example.json#/objectLevel1/object1Level2/object1Level3 + examples: + - stringLevel4: None + technicalNoreq: + $id: classpath:/json-schema/schema# + x-id: TECHNICAL_NOREQ.schema.json# + example: example.json# + type: object + title: technicalNoreq + required: [] + properties: + optionalStringField: + type: string + title: Optional string + x-health-only: false + x-cols: 6 + example: example.json#/optionalStringField + description: This field is optional + examples: + - None + enumerationField: + type: string + title: Enumeration + x-health-only: false + x-cols: 6 + example: example.json#/enumerationField + description: This is an enumeration enum: - - C01.00.00 - - C01.01.00 - - C01.01.01 - - C01.01.02 - - C01.01.03 - - C01.01.04 - - C01.01.05 - - C01.01.06 - - C01.02.00 - - C01.02.01 - - C01.02.02 - - C01.03.00 - - C01.03.01 - - C01.03.02 - - C01.04.00 - - C01.04.01 - - C01.04.02 - - C01.04.03 - - C01.04.04 - - C01.05.00 - - C02.00.00 - - C02.01.00 - - C02.02.00 - - C02.03.00 - - C02.03.01 - - C02.03.02 - - C02.04.00 - - C02.04.01 - - C02.04.02 - - C02.04.03 - - C02.05.00 - - C02.05.01 - - C02.05.02 - - C02.05.03 - - C02.06.00 - - C02.06.01 - - C02.07.00 - - C02.07.01 - - C02.07.02 - - C02.07.03 - - C02.07.04 - - C02.07.05 - - C02.08.00 - - C02.08.01 - - C02.08.02 - - C02.08.03 - - C02.08.04 - - C02.08.05 - - C02.08.06 - - C02.08.07 - - C02.08.08 - - C02.09.00 - - C02.09.01 - - C02.09.02 - - C02.09.03 - - C02.09.04 - - C02.09.05 - - C02.09.06 - - C02.09.07 - - C02.10.00 - - C02.11.00 - - C02.11.01 - - C02.11.02 - - C02.12.00 - - C02.13.00 - - C02.13.01 - - C02.13.02 - - C02.13.03 - - C02.13.04 - - C02.13.05 - - C02.13.06 - - C02.13.07 - - C02.13.08 - - C02.14.00 - - C02.14.01 - - C02.14.02 - - C02.14.03 - - C02.14.04 - - C02.15.00 - - C02.15.01 - - C02.15.02 - - C02.15.03 - - C02.15.04 - - C02.15.05 - - C02.15.06 - - C02.16.00 - - C02.16.01 - - C02.16.02 - - C02.16.03 - - C03.00.00 - - C03.01.00 - - C03.01.01 - - C03.01.02 - - C03.01.03 - - C03.01.04 - - C03.01.05 - - C03.02.00 - - C03.02.01 - - C03.02.02 - - C03.02.03 - - C03.02.04 - - C03.02.05 - - C03.02.06 - - C03.02.07 - - C03.02.08 - - C03.02.09 - - C03.02.10 - - C03.02.11 - - C03.02.12 - - C03.02.13 - - C03.02.14 - - C03.02.15 - - C03.03.00 - - C03.03.01 - - C03.03.02 - - C03.04.00 - - C03.04.01 - - C03.04.02 - - C03.05.00 - - C03.06.00 - - C03.07.00 - - C03.08.00 - - C03.09.00 - - C03.10.00 - - C03.11.00 - - C03.12.00 - - C03.13.00 - - C03.14.00 - - C03.15.00 - - C04.00.00 - - C04.01.00 - - C04.01.01 - - C04.01.02 - - C04.01.03 - - C04.01.04 - - C04.01.05 - - C04.01.06 - - C04.01.07 - - C04.01.08 - - C04.01.09 - - C04.01.10 - - C04.01.11 - - C04.02.00 - - C04.02.01 - - C04.02.02 - - C04.02.03 - - C04.02.04 - - C04.03.00 - - C04.04.00 - - C04.05.00 - - C04.06.00 - - C04.07.00 - - C04.07.01 - - C04.07.02 - - C04.07.03 - - C04.07.04 - - C04.08.00 - - C04.09.00 - - C05.00.00 - - C05.00.01 - - C05.00.02 - - C05.00.03 - - C05.00.04 - - C05.00.05 - - C06.00.00 - - C06.01.00 - - C06.02.00 - - C06.03.00 - - C06.03.01 - - C06.03.02 - - C06.03.03 - - C06.03.04 - - C06.03.05 - - C06.03.06 - - C06.04.00 - - C06.04.01 - - C06.04.02 - - C06.05.00 - - C06.06.00 - - C06.06.01 - - C06.07.00 - - C06.07.01 - - C06.07.02 - - C06.08.00 - - C06.08.01 - - C06.08.02 - - C06.08.03 - - C06.08.04 - - C06.08.05 - - C06.08.06 - - C07.00.00 - - C07.01.00 - - C07.02.00 - - C07.03.00 - - C07.03.01 - - C07.03.02 - - C07.03.03 - - C07.03.04 - - C07.03.05 - - C07.04.00 - - C07.04.01 - - C07.04.02 - - C07.04.03 - - C07.04.04 - - C07.05.00 - - C07.06.00 - - C07.07.00 - - C07.07.01 - - C07.07.02 - - C07.07.03 - - C07.07.04 - - C07.07.05 - - C07.08.00 - - C07.08.01 - - C07.08.02 - - C07.08.03 - - C07.09.00 - - C07.09.01 - - C07.09.02 - - C07.09.03 - - C07.09.05 - - C07.10.00 - - C07.11.00 - - C07.12.00 - - C07.13.00 - - C07.13.01 - - C07.13.02 - - C07.13.03 - - C07.13.04 - - C07.13.05 - - C07.13.06 - - C07.13.07 - - C08.00.00 - - C08.01.00 - - C08.02.00 - - C08.03.00 - - C08.04.00 - - C08.05.00 - - C08.06.00 - - C08.07.00 - - C08.08.00 - - C08.08.01 - - C08.08.02 - - C08.09.00 - - C08.10.00 - - C08.10.01 - - C09.00.00 - - C09.01.00 - - C09.01.01 - - C09.01.02 - - C09.01.03 - - C09.01.04 - - C09.02.00 - - C09.03.00 - - C09.03.01 - - C09.04.00 - - C09.04.01 - - C09.04.02 - - C09.05.00 - - C09.06.00 - - C09.07.00 - - C09.08.00 - - C10.00.00 - - C10.01.00 - - C10.01.01 - - C10.01.02 - - C10.01.03 - - C10.01.04 - - C10.01.05 - - C10.01.06 - - C10.01.07 - - C10.01.08 - - C10.02.00 - - C10.02.01 - - C10.02.02 - - C10.03.00 - - C10.03.01 - - C10.03.02 - - C10.04.00 - - C10.04.01 - - C10.04.02 - - C10.05.00 - - C10.06.00 - - C10.07.00 - - C10.08.00 - - C11.00.00 - - C11.01.00 - - C11.02.00 - - C11.02.01 - - C11.02.02 - - C11.03.00 - - C11.03.01 - - C11.03.02 - - C11.04.00 - - C11.05.00 - - C11.05.01 - - C11.05.02 - - C11.05.03 - - C11.06.00 + - ENUM_VALUE_1 + - ENUM_VALUE_2 + - ENUM_VALUE_3 + - ENUM_VALUE_4 + - ENUM_VALUE_5 examples: - - AVPAR - label: - type: string - title: "Libell\xE9 court" + - None + integerField: + type: integer + title: Optional integer x-health-only: false x-cols: 6 - example: example.json#/regulation/whatsHappen/label - description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ - e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ - tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ - \ fourni avec le code." + example: example.json#/integerField + description: This is an integer examples: - - Accident routier - additionalProperties: false - example: example.json#/regulation/whatsHappen - examples: - - code: AVPAR - label: Accident routier - locationKind: - type: object - title: Type de lieu - x-display: expansion-panels - x-health-only: false - required: - - code - - label - properties: - code: - type: string - title: Code + - None + numberField: + type: number + title: Optional number x-health-only: false x-cols: 6 - example: example.json#/qualification/locationKind/code - description: "A valoriser avec le code de la nomenclature associ\xE9e" - enum: - - L01.00.00 - - L01.01.00 - - L01.01.01 - - L01.01.02 - - L01.01.03 - - L01.01.04 - - L01.02.00 - - L01.02.01 - - L01.02.02 - - L01.02.03 - - L01.02.04 - - L01.02.05 - - L01.02.06 - - L01.02.07 - - L01.02.08 - - L01.02.09 - - L01.02.10 - - L01.02.11 - - L01.02.12 - - L01.03.00 - - L01.03.01 - - L01.03.02 - - L01.03.03 - - L01.04.00 - - L02.00.00 - - L02.01.00 - - L02.02.00 - - L02.02.01 - - L02.02.02 - - L02.02.03 - - L02.02.04 - - L02.02.05 - - L02.03.00 - - L02.03.01 - - L02.03.02 - - L02.03.03 - - L02.04.00 - - L02.05.00 - - L02.05.01 - - L02.05.02 - - L02.05.03 - - L02.05.04 - - L02.05.05 - - L02.05.06 - - L02.05.07 - - L02.05.08 - - L02.05.09 - - L02.05.10 - - L02.05.11 - - L02.05.12 - - L02.05.13 - - L02.05.14 - - L02.05.15 - - L02.05.16 - - L02.06.00 - - L02.06.01 - - L02.06.02 - - L02.06.03 - - L02.06.04 - - L02.06.05 - - L02.06.06 - - L02.06.07 - - L02.06.08 - - L02.07.00 - - L02.07.01 - - L02.07.02 - - L02.08.00 - - L03.00.00 - - L03.01.00 - - L03.02.00 - - L03.03.00 - - L03.04.00 - - L03.05.00 - - L04.00.00 - - L04.01.00 - - L04.02.00 - - L04.02.01 - - L04.02.02 - - L04.02.03 - - L04.03.00 - - L04.03.01 - - L04.03.02 - - L04.03.03 - - L04.04.00 - - L04.05.00 - - L04.06.00 - - L04.06.01 - - L04.06.02 - - L04.06.03 - - L04.06.04 - - L04.06.05 - - L04.07.00 - - L04.07.01 - - L04.07.02 - - L04.07.03 - - L04.08.00 - - L04.08.01 - - L04.08.02 - - L04.09.00 - - L04.09.01 - - L04.09.02 - - L04.10.00 - - L04.11.00 - - L04.11.01 - - L04.11.02 - - L04.11.03 - - L04.11.04 - - L04.12.00 - - L04.12.01 - - L04.12.02 - - L04.12.03 - - L04.12.04 - - L04.13.00 - - L04.13.01 - - L04.13.02 - - L04.13.03 - - L04.13.04 - - L04.14.00 - - L04.14.01 - - L04.14.02 - - L04.15.00 - - L04.16.00 - - L05.00.00 - - L05.01.00 - - L05.01.01 - - L05.01.02 - - L05.01.03 - - L05.01.04 - - L05.02.00 - - L05.02.01 - - L05.02.02 - - L05.02.03 - - L05.02.04 - - L05.03.00 - - L05.03.01 - - L05.03.02 - - L05.04.00 - - L05.04.01 - - L05.04.02 - - L05.04.03 - - L05.04.04 - - L05.04.05 - - L05.04.06 - - L05.05.00 - - L05.06.00 - - L05.07.00 - - L06.00.00 - - L06.01.00 - - L06.01.01 - - L06.01.02 - - L06.01.03 - - L06.01.04 - - L06.01.05 - - L06.01.06 - - L06.01.07 - - L06.01.08 - - L06.02.00 - - L06.03.00 - - L06.03.01 - - L06.03.02 - - L06.03.03 - - L06.03.04 - - L06.03.05 - - L06.04.00 - - L06.05.00 - - L06.05.01 - - L06.05.02 - - L06.06.00 - - L06.06.01 - - L06.06.02 - - L06.06.03 - - L06.06.04 - - L06.07.00 - - L06.07.01 - - L06.07.02 - - L07.00.00 - - L07.01.00 - - L07.01.01 - - L07.02.00 + example: example.json#/numberField + description: This is a number examples: - - C07.13.02 - label: + - None + booleanField: + type: boolean + title: Optional boolean + x-health-only: false + x-cols: 6 + example: example.json#/booleanField + description: This is a boolean + examples: + - None + objectField: + $ref: '#/components/schemas/technicalObject' + arrayField: + type: array + x-health-only: false + items: + type: string + title: Array + x-health-only: false + x-cols: 6 + example: example.json#/arrayField/0 + description: This is an array + examples: + - None + enumArrayField: + type: array + x-health-only: false + items: + type: string + title: Array of enumerations + x-health-only: false + x-cols: 6 + example: example.json#/enumArrayField/0 + description: This is an array of enumerations + enum: + - ENUM_VALUE_10 + - ENUM_VALUE_20 + - ENUM_VALUE_30 + - ENUM_VALUE_40 + - ENUM_VALUE_50 + examples: + - None + arrayWithMaxLength: + type: array + x-health-only: false + items: + type: string + title: Array with maximum length + x-health-only: false + x-cols: 6 + example: example.json#/arrayWithMaxLength/0 + description: This is an array with a maximum length + examples: + - None + maxItems: 5 + phoneNumberField: type: string - title: "Libell\xE9" + title: Phone number with regex x-health-only: false x-cols: 6 - example: example.json#/qualification/locationKind/label - description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ - e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ - tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ - \ fourni avec le code." + example: example.json#/phoneNumberField + description: Phone number with regex + pattern: ^\+?[0-9]{2,14}$ examples: - - "Rod\xE9o automobile" - additionalProperties: false - example: example.json#/qualification/locationKind - examples: - - code: C07.13.02 - label: "Rod\xE9o automobile" - healthMotive: - type: object - title: 'Motif de recours ' - x-display: expansion-panels - x-health-only: false - required: - - code - - label - properties: - code: + - None + dateField: type: string - title: Code + title: Date x-health-only: false x-cols: 6 - example: example.json#/regulation/healthMotive/code - description: "A valoriser avec le code de la nomenclature associ\xE9e." - enum: - - M01.00 - - M01.01 - - M01.02 - - M01.03 - - M02.00 - - M02.01 - - M02.02 - - M02.03 - - M02.04 - - M02.05 - - M02.06 - - M02.07 - - M02.08 - - M02.09 - - M02.10 - - M03.00 - - M03.01 - - M03.02 - - M03.03 - - M03.04 - - M03.05 - - M03.06 - - M03.07 - - M03.08 - - M03.09 - - M03.10 - - M03.11 - - M03.12 - - M03.13 - - M03.14 - - M03.15 - - M03.16 - - M03.17 - - M03.18 - - M03.19 - - M03.20 - - M03.21 - - M03.22 - - M04.00 - - M04.01 - - M04.02 - - M04.03 - - M04.04 - - M05.00 - - M05.01 - - M05.02 - - M06.00 - - M06.01 - - M06.02 - - M06.03 - - M06.04 - - M07.00 + example: example.json#/dateField + description: Date + pattern: ^\d{4}-\d{2}-\d{2}$ examples: - - AVPAR - label: + - None + emailField: type: string - title: "Libell\xE9 court" + title: Email with regex x-health-only: false x-cols: 6 - example: example.json#/regulation/healthMotive/label - description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ - e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ - tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ - \ fourni avec le code." + example: example.json#/emailField + description: Email with regex + pattern: ^[\w\-\.]+@([\w\-]+\.)+[\w\-]{2,4}$ examples: - - Accident routier - additionalProperties: false - example: example.json#/regulation/healthMotive - examples: - - code: AVPAR - label: Accident routier - victims: - type: object - title: Patients-Victimes - x-display: expansion-panels - x-health-only: false - required: [] - properties: - count: + - None + datetimeField: type: string - title: Nombre de patients-victimes + title: Datetime x-health-only: false x-cols: 6 - example: example.json#/qualification/victims/count - description: "Indique le nombre de victimes selon la nomenclature du r\xE9\ - f\xE9rentiel CISU" - enum: - - '0' - - '1' - - PLUSIEURS - - BEAUCOUP - - INCONNU - - NON DEFINI + example: example.json#/datetimeField + description: Datetime + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - PLUSIEURS - mainVictim: + - None + objectLevel1: + $ref: '#/components/schemas/levelOneData' + nomenclatureField: type: string - title: Type du patient-victime principal + title: Nomenclature x-health-only: false x-cols: 6 - example: example.json#/qualification/victims/mainVictim - description: "Identifie le type de la principale victime (celle dont l'\xE9\ - tat de sant\xE9 provoque le d\xE9clenchement de l'envoi des secours).\ - \ Prend les valeurs du r\xE9f\xE9rentiel CISU. Entre dans la d\xE9termination\ - \ des partenaires impliqu\xE9s par NexSIS." + example: example.json#/nomenclatureField + description: Enum from extenal nomenclature file enum: - - NOURRISSON - - ENFANT - - ADULTE - - SENIOR - - ENCEINTE - examples: - - ENFANT - freetext: - type: string - title: "Informations compl\xE9mentaires sur les patients-victimes" - x-health-only: false - x-cols: 6 - example: example.json#/qualification/victims/freetext - description: "Permet de compl\xE9menter en commentaire libre la(les) victime(s)" + - M + - F + - O + - UN examples: - - "Jeanne Dupont, 6 ans, ne r\xE9pond plus" + - None additionalProperties: false - example: example.json#/qualification/victims - examples: - - count: PLUSIEURS - mainVictim: ENFANT - freetext: "Jeanne Dupont, 6 ans, ne r\xE9pond plus" - externalLocationId: + createCase: + $id: classpath:/json-schema/schema# + x-id: RC-EDA.schema.json# + example: example.json# type: object - title: Identifiant(s) du lieu - x-display: expansion-panels - x-health-only: false + title: createCase required: - - source - - value + - caseId + - creation + - referenceVersion + - qualification + - location properties: - source: - type: string - title: Source / type d'identifiant - x-health-only: false - x-cols: 6 - example: example.json#/decision/0/destination/externalLocationId/0/source - description: "A valoriser avec le type de l'identifiant fourni. Cf nomenclature\ - \ associ\xE9e." - enum: - - FINESS_ADMINISTRATIF - - FINESS_GEOGRAPHIQUE - - SIREN - - SIRET - - APE_NAF - examples: - - "FINESS g\xE9ographique, FINESS administratif, SIREN, SIRET, APE, NAF" - value: + caseId: type: string - title: Identifiant + title: Identifiant affaire/dossier x-health-only: false x-cols: 6 - example: example.json#/decision/0/destination/externalLocationId/0/value - description: "A valoriser avec l'identifiant en lui-m\xEAme" - pattern: ^([0-9A-Z]{2}0\d{5}\d|\d{9}|\d{14}|\d{4}[A-Za-z])$ + example: example.json#/caseId + description: "Identifiant partag\xE9 de l'affaire/dossier, g\xE9n\xE9r\xE9\ + \ une seule fois par le syst\xE8me du partenaire qui recoit la primo-demande\ + \ de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9 comme suit\ + \ lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ + \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ + e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ + \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ + \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ + \ num\xE9ro unique dans son syst\xE8me." + pattern: ^fr(\.[\w-]+){3,4}$ examples: - - "920000650\_" - additionalProperties: false - example: example.json#/decision/0/destination/externalLocationId/0 - examples: - - source: "FINESS g\xE9ographique, FINESS administratif, SIREN, SIRET, APE,\ - \ NAF" - value: "920000650\_" - detailedAddress: - type: object - title: Adresse de l'intervention - x-display: expansion-panels - x-health-only: false - required: - - inseeCode - - city - properties: - inseeCode: + - fr.health.samu440.DRFR15440241550012 + senderCaseId: type: string - title: Code INSEE de la commune + title: Identifiant local de l'affaire/dossier x-health-only: false x-cols: 6 - example: example.json#/intervention/location/detailedAddress/inseeCode - description: "Code INSEE de la commune actuelle sur la base du Code Officiel\ - \ g\xE9ographique en vigueur. Obligatoire si le nom de la commune est\ - \ renseign\xE9.\nLe Code INSEE peut \xE9galement pr\xE9cis\xE9 le pays\ - \ d'intervention, si \xE9tranger. " - pattern: ^[0-9]{5}$ + example: example.json#/senderCaseId + description: "A valoriser avec le num\xE9ro du dossier dans le SI de l'\xE9\ + metteur du message.\n" examples: - - 92300 - city: + - DRFR15440241550012 + creation: type: string - title: Nom de la commune + title: "Date Heure de cr\xE9ation de l'affaire/dossier" x-health-only: false x-cols: 6 - example: example.json#/intervention/location/detailedAddress/city - description: Nom officiel de la commune actuelle + example: example.json#/creation + description: "A valoriser avec le groupe date heure de cr\xE9ation du dossier/affaire.\n\ + \nSp\xE9cificit\xE9 15-18 : A valoriser avec le groupe date heure de d\xE9\ + but de partage li\xE9 \xE0 la cr\xE9ation de l'affaire (et donc de g\xE9\ + n\xE9ration du caseId). \nLors de l'ajout d'une nouvelle alerte, la valeur\ + \ de ce champ ne doit pas \xEAtre modifi\xE9e. \nL'indicateur de fuseau\ + \ horaire Z ne doit pas \xEAtre utilis\xE9.\nIl doit \xEAtre renseign\xE9\ + \ \xE0 la fin du processus de la cr\xE9ation de la premi\xE8re alerte." + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - Levallois-Perret - additionalProperties: false - example: example.json#/intervention/location/detailedAddress - examples: - - inseeCode: 92300 - city: Levallois-Perret - city: - type: object - title: "D\xE9tails de la commune" - x-display: expansion-panels - x-health-only: false - required: [] - properties: - name: + - '2022-09-27T08:23:34+02:00' + referenceVersion: type: string - title: Nom de la commune + title: "Version des nomenclatures du r\xE9f\xE9rentiel CISU" x-health-only: false x-cols: 6 - example: example.json#/location/city/name - description: A valoriser avec le nom officiel de la commune + example: example.json#/referenceVersion + description: "Indique le num\xE9ro de version du r\xE9f\xE9rentiel des nomenclatures\ + \ des codes transmis. \nCela permet aux diff\xE9rents syst\xE8mes de s'assurer\ + \ qu'ils utilisent la m\xEAme version des codes de nomenclature que leurs\ + \ partenaires." examples: - - Lille - inseeCode: - type: string - title: Code INSEE de la commune - x-health-only: false - x-cols: 6 - example: example.json#/location/city/inseeCode - description: "A valoriser avec le code INSEE de la commune actuelle sur\ - \ la base du Code Officiel g\xE9ographique en vigueur. \nLa valeur du\ - \ code INSEE est obligatoire d\xE8s que le nom de la commune est renseign\xE9\ - \ (city.name)." - pattern: ^[0-9]{5}$ - examples: - - 59350 - additionalProperties: false - example: example.json#/location/city - examples: - - name: Lille - inseeCode: 59350 - access: - type: object - title: "D\xE9tails d'acc\xE8s" - x-display: expansion-panels - x-health-only: false - required: [] - properties: - floor: - type: string - title: Etage - x-health-only: false - x-cols: 6 - example: example.json#/location/access/floor - description: "A valoriser avec le num\xE9ro ou nom de l'\xE9tage " - examples: - - RDC - roomNumber: - type: string - title: "Num\xE9ro de porte" - x-health-only: false - x-cols: 6 - example: example.json#/location/access/roomNumber - description: "A valoriser avec le num\xE9ro d'appartement, de chambre, de\ - \ bureau" - examples: - - A16 - interphone: - type: string - title: Interphone - x-health-only: false - x-cols: 6 - example: example.json#/location/access/interphone - description: "A valoriser avec les informations n\xE9cessaires \xE0 l'identification\ - \ de l'interphone (num\xE9ro, nom)" - examples: - - Dupont - accessCode: + - '1.2' + qualification: + $ref: '#/components/schemas/qualification' + location: + $ref: '#/components/schemas/location' + initialAlert: + $ref: '#/components/schemas/alert' + newAlert: + type: array + items: + $ref: '#/components/schemas/alert' + freetext: type: array x-health-only: false items: type: string - title: Digicode + title: Description de l'affaire/dossier x-health-only: false x-cols: 6 - example: example.json#/location/access/accessCode/0 - description: "A valoriser avec le ou les digicodes, dans l'ordre de progression\ - \ dans le b\xE2timent." + example: example.json#/freetext/0 + description: "Texte libre permettant de donner des informations suppl\xE9\ + mentaires concernant l'affaire/dossier. Ces informations sont g\xE9\ + n\xE9rales, et ont vocation \xE0 \xEAtre \xE9chang\xE9es en inter-force. " examples: - - 1234A - elevator: - type: string - title: Ascenseur/escalier - x-health-only: false - x-cols: 6 - example: example.json#/location/access/elevator - description: "A valoriser avec le nom ou le num\xE9ro de l'ascenseur ou\ - \ de la cage d'escalier " - examples: - - C3 - buildingName: - type: string - title: "B\xE2timent" - x-health-only: false - x-cols: 6 - example: example.json#/location/access/buildingName - description: "A valoriser avec le nom du b\xE2timent" - examples: - - Batiment B - entrance: - type: string - title: "Entr\xE9e" - x-health-only: false - x-cols: 6 - example: example.json#/location/access/entrance - description: "A valoriser avec le nom de l'entr\xE9e" - examples: - - "A valoriser avec le nom de l'entr\xE9e" - entity: - type: string - title: Service - x-health-only: false - x-cols: 6 - example: example.json#/location/access/entity - description: "A valoriser avec le nom du service concern\xE9 au sein de\ - \ l'\xE9tablissement : infirmerie, service finance, service comptabilit\xE9\ - ." - examples: - - Infirmerie - phoneNumber: - type: string - title: "N\xB0 de t\xE9l\xE9phone du lieu" - x-health-only: false - x-cols: 6 - example: example.json#/location/access/phoneNumber - description: "A valoriser avec le num\xE9ro de t\xE9l\xE9phone du lieu de\ - \ l'intervention, par exemple : t\xE9l\xE9phone du secr\xE9tariat, t\xE9\ - l\xE9phone du service administratif ou se trouve le patient/ la victime.\n\ - Le format attendu est le suivant : +{indicatif pays}{num\xE9ro de t\xE9\ - l\xE9phone}" - pattern: ^\+\d{5,18}$ - examples: - - '+33123452323' - additionalProperties: false - example: example.json#/location/access - geometry: - type: object - title: "G\xE9ometrie associ\xE9e" - x-display: expansion-panels - x-health-only: false - required: - - datetime - properties: - datetime: - type: string - title: "Heure du dernier relev\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/location/geometry/datetime - description: "A valoriser avec le groupe date heure de renseignement des\ - \ coordonn\xE9es du point cl\xE9 de la localisation. \nPermet de conna\xEE\ - tre la fra\xEEcheur et donc la pertinence des informations pour intervenir." - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:23:34+02:00' - point: - $ref: '#/components/schemas/point' + - "Le forcen\xE9 n'est pas ma\xEEtris\xE9. Voiture renvers\xE9e. Urgences\ + \ ferm\xE9es de 22h \xE0 6h00." + additionalInformation: + $ref: '#/components/schemas/additionalInformation' additionalProperties: false - example: example.json#/location/geometry - externalInfo: + qualification: type: object - title: 'Informations exterieures ' + title: Qualification x-display: expansion-panels x-health-only: false - required: - - URI + required: [] properties: - FREETEXT: - type: string - title: 'Texte libre ' - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/EXTERNAL_INFO/0/FREETEXT - description: Optionnel - examples: - - None - URI: - type: string - title: "URI informations ext\xE9rieures" - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/EXTERNAL_INFO/0/URI - description: Optionnel - examples: - - 289d6939-d225-4c71-9a56-68c03ada2f5e - TYPE: - type: string - title: Type - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/EXTERNAL_INFO/0/TYPE - description: Optionnel - enum: - - MANUAL - - MAP - - OTHER - - PHOTO - - WEBSIT - examples: - - SPRSDS + riskThreat: + type: array + items: + $ref: '#/components/schemas/riskThreat' + details: + $ref: '#/components/schemas/caseDetails' additionalProperties: false - example: example.json#/CONTEXT/EXTERNAL_INFO/0 - examples: - - FREETEXT: None - URI: 289d6939-d225-4c71-9a56-68c03ada2f5e - TYPE: SPRSDS - wayName: + example: example.json#/qualification + location: type: object - title: Type et nom de voie + title: Lieu d'intervention x-display: expansion-panels x-health-only: false required: - - complete + - detailedAddress properties: - complete: - type: string - title: Type et nom - x-health-only: false - x-cols: 6 - example: example.json#/location/detailedAddress/wayName/complete - description: "A valoriser avec le type et le nom de la voie.\nSi les attributs\ - \ \"type\" et \"name\" de \"wayName\" sont \xE9galement renseign\xE9s,\ - \ alors \"complete\" doit \xEAtre valoris\xE9 ainsi : \"{type} {nom}\"\ - ." - examples: - - Boulevard du Montparnasse type: type: string - title: Type - x-health-only: false - x-cols: 6 - example: example.json#/location/detailedAddress/wayName/type - description: A valoriser avec le type de la voie - examples: - - Boulevard - name: - type: string - title: Nom + title: "Type de lieu d\u2019intervention" x-health-only: false x-cols: 6 - example: example.json#/location/detailedAddress/wayName/name - description: A valoriser avec le nom de la voie - examples: - - du Montparnasse - additionalProperties: false - example: example.json#/location/detailedAddress/wayName - examples: - - complete: Boulevard du Montparnasse - type: Boulevard - name: du Montparnasse - point: - type: object - title: 'Point ' - x-display: expansion-panels - x-health-only: false - required: - - coord - properties: - coord: - $ref: '#/components/schemas/coord' - isAml: - type: boolean - title: Dispositif AML - x-health-only: false - x-cols: 6 - example: example.json#/location/geometry/point/isAml - description: "Attribut qui permet de pr\xE9ciser si les coordonn\xE9es fournies\ - \ proviennent du dispositif AML (Advanced Mobile Location) - TRUE - ou\ - \ non - FALSE. " - examples: - - 'TRUE' - additionalProperties: false - example: example.json#/location/geometry/point - coord: - type: object - title: "Coordonn\xE9es" - x-display: expansion-panels - x-health-only: false - required: - - lat - - lon - properties: - lat: - type: number - title: 'Latitude ' - x-health-only: false - x-cols: 6 - example: example.json#/position/0/coord/0/lat - description: "Derni\xE8re coordonn\xE9e x connue de la ressource, entre\ - \ \u221290 and +90" + example: example.json#/intervention/location/type + description: A valoriser avec un code de la nomenclature CISU-Code_Type_de_lieu. + enum: + - L01.00.00 + - L01.01.00 + - L01.01.01 + - L01.01.02 + - L01.01.03 + - L01.01.04 + - L01.02.00 + - L01.02.01 + - L01.02.02 + - L01.02.03 + - L01.02.04 + - L01.02.05 + - L01.02.06 + - L01.02.07 + - L01.02.08 + - L01.02.09 + - L01.02.10 + - L01.02.11 + - L01.02.12 + - L01.03.00 + - L01.03.01 + - L01.03.02 + - L01.03.03 + - L01.04.00 + - L02.00.00 + - L02.01.00 + - L02.02.00 + - L02.02.01 + - L02.02.02 + - L02.02.03 + - L02.02.04 + - L02.02.05 + - L02.03.00 + - L02.03.01 + - L02.03.02 + - L02.03.03 + - L02.04.00 + - L02.05.00 + - L02.05.01 + - L02.05.02 + - L02.05.03 + - L02.05.04 + - L02.05.05 + - L02.05.06 + - L02.05.07 + - L02.05.08 + - L02.05.09 + - L02.05.10 + - L02.05.11 + - L02.05.12 + - L02.05.13 + - L02.05.14 + - L02.05.15 + - L02.05.16 + - L02.06.00 + - L02.06.01 + - L02.06.02 + - L02.06.03 + - L02.06.04 + - L02.06.05 + - L02.06.06 + - L02.06.07 + - L02.06.08 + - L02.07.00 + - L02.07.01 + - L02.07.02 + - L02.08.00 + - L03.00.00 + - L03.01.00 + - L03.02.00 + - L03.03.00 + - L03.04.00 + - L03.05.00 + - L04.00.00 + - L04.01.00 + - L04.02.00 + - L04.02.01 + - L04.02.02 + - L04.02.03 + - L04.03.00 + - L04.03.01 + - L04.03.02 + - L04.03.03 + - L04.04.00 + - L04.05.00 + - L04.06.00 + - L04.06.01 + - L04.06.02 + - L04.06.03 + - L04.06.04 + - L04.06.05 + - L04.07.00 + - L04.07.01 + - L04.07.02 + - L04.07.03 + - L04.08.00 + - L04.08.01 + - L04.08.02 + - L04.09.00 + - L04.09.01 + - L04.09.02 + - L04.10.00 + - L04.11.00 + - L04.11.01 + - L04.11.02 + - L04.11.03 + - L04.11.04 + - L04.12.00 + - L04.12.01 + - L04.12.02 + - L04.12.03 + - L04.12.04 + - L04.13.00 + - L04.13.01 + - L04.13.02 + - L04.13.03 + - L04.13.04 + - L04.14.00 + - L04.14.01 + - L04.14.02 + - L04.15.00 + - L04.16.00 + - L05.00.00 + - L05.01.00 + - L05.01.01 + - L05.01.02 + - L05.01.03 + - L05.01.04 + - L05.02.00 + - L05.02.01 + - L05.02.02 + - L05.02.03 + - L05.02.04 + - L05.03.00 + - L05.03.01 + - L05.03.02 + - L05.04.00 + - L05.04.01 + - L05.04.02 + - L05.04.03 + - L05.04.04 + - L05.04.05 + - L05.04.06 + - L05.05.00 + - L05.06.00 + - L05.07.00 + - L06.00.00 + - L06.01.00 + - L06.01.01 + - L06.01.02 + - L06.01.03 + - L06.01.04 + - L06.01.05 + - L06.01.06 + - L06.01.07 + - L06.01.08 + - L06.02.00 + - L06.03.00 + - L06.03.01 + - L06.03.02 + - L06.03.03 + - L06.03.04 + - L06.03.05 + - L06.04.00 + - L06.05.00 + - L06.05.01 + - L06.05.02 + - L06.06.00 + - L06.06.01 + - L06.06.02 + - L06.06.03 + - L06.06.04 + - L06.07.00 + - L06.07.01 + - L06.07.02 + - L07.00.00 + - L07.01.00 + - L07.01.01 + - L07.02.00 examples: - - '47.221866' - lon: - type: number - title: Longitude + - DOMPAV + finessGeo: + type: string + title: "FINESS g\xE9ographique de l\u2019\xE9tablissement " x-health-only: false x-cols: 6 - example: example.json#/position/0/coord/0/lon - description: "Derni\xE8re coordonn\xE9e y connue de la ressource, entre\ - \ \u2212180 and +180" + example: example.json#/intervention/location/finessGeo + description: "Finess g\xE9ographique et juridique de l\u2019\xE9tablissement\ + \ de sant\xE9. \nA renseigner uniquement si l'intervention a lieu dans\ + \ un \xE9tablissement de sant\xE9. " examples: - - '-1.575807' - height: - type: number - title: Altitude + - None + service: + type: string + title: "Unit\xE9 fonctionnelle " x-health-only: false x-cols: 6 - example: example.json#/position/0/coord/0/height - description: "Derni\xE8re coordonn\xE9e z connue de la ressource, en m\xE8\ - tres sans bornes" + example: example.json#/intervention/location/service + description: "Unit\xE9 fonctionnelle de l'\xE9tablissement de sant\xE9.\ + \ \nA renseigner uniquement si l'intervention a lieu dans un \xE9tablissement\ + \ de sant\xE9. " examples: - - 1 + - None + detailedAddress: + $ref: '#/components/schemas/detailedAddress' additionalProperties: false - example: example.json#/position/0/coord/0 - examples: - - lat: '47.221866' - lon: '-1.575807' - height: 1 - notes: + example: example.json#/intervention/location + alert: type: object - title: "Informations compl\xE9mentaires sur l'alerte" + title: Alerte initiale x-display: expansion-panels x-health-only: false required: [] properties: - creation: + notes: + type: array + items: + $ref: '#/components/schemas/notes' + additionalProperties: false + example: example.json#/initialAlert + additionalInformation: + type: object + title: "Informations compl\xE9mentaires" + x-display: expansion-panels + x-health-only: false + required: [] + properties: + customMap: + type: array + items: + $ref: '#/components/schemas/customMap' + maxItems: 3 + additionalProperties: false + example: example.json#/additionalInformation + riskThreat: + type: object + title: "Risque, menace et sensibilit\xE9" + x-display: expansion-panels + x-health-only: false + required: + - code + - label + properties: + code: type: string - title: "Date et heure de l'information compl\xE9mentaire" + title: Code x-health-only: false x-cols: 6 - example: example.json#/initialAlert/notes/0/creation - description: "A valoriser avec le groupe date heure de cr\xE9ation de l'information\ - \ compl\xE9mentaire" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time + example: example.json#/qualification/riskThreat/0/code + description: "A valoriser avec le code de la nomenclature associ\xE9e" + enum: + - R01 + - R02 + - R03 + - R04 + - R05 + - R06 + - R07 + - R08 + - R09 + - R10 + - R11 + - R12 + - R13 + - R14 + - R15 + - R16 + - R17 + - R18 + - R19 + - R20 + - R21 + - R22 + - R23 + - R24 + - R25 + - R26 + - R27 + - R28 + - R29 + - R30 + - R31 + - R32 + - R33 + - R34 + - R35 + - R36 + - R37 examples: - - None - freetext: + - C07.13.02 + label: type: string - title: Commentaire/Observations + title: "Libell\xE9" x-health-only: false x-cols: 6 - example: example.json#/initialAlert/notes/0/freetext - description: "A valoriser avec un texte libre contenant les indications\ - \ compl\xE9mentaires renseign\xE9es sur l'alerte/appel.\n\nSp\xE9cificit\xE9\ - s 15-15 : cet attribut ne doit pas \xEAtre valoris\xE9 avec des notes\ - \ \xE0 caract\xE8re m\xE9dical, qui serait li\xE9e \xE0 un interrogatoire\ - \ ARM ou m\xE9decin, ou \xE0 un patient en particulier" + example: example.json#/qualification/riskThreat/0/label + description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ + e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ + tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ + \ fourni avec le code." examples: - - "Accident de bricolage, accident domestique, d\xE9clenchement t\xE9l\xE9\ - alarme, voisine sur les lieux" + - "Rod\xE9o automobile" additionalProperties: false - example: example.json#/initialAlert/notes/0 + example: example.json#/qualification/riskThreat/0 examples: - - creation: None - freetext: "Accident de bricolage, accident domestique, d\xE9clenchement t\xE9\ - l\xE9alarme, voisine sur les lieux" - caller: + - code: C07.13.02 + label: "Rod\xE9o automobile" + whatsHappen: type: object - title: "Requ\xE9rant" + title: "Circonstances ayant donn\xE9es lieu \xE0 l\u2019appel" x-display: expansion-panels x-health-only: false required: - - callerContact + - code + - label properties: - callerContact: - $ref: '#/components/schemas/contact' - callbackContact: - $ref: '#/components/schemas/contact' - language: + code: type: string - title: "Langue parl\xE9e" + title: Code x-health-only: false x-cols: 6 - example: example.json#/initialAlert/caller/language - description: "A valoriser avec la langue parl\xE9e par le requ\xE9rant.\ - \ \ncf.nomenclature associ\xE9e." + example: example.json#/regulation/whatsHappen/code + description: "A valoriser avec le code de la nomenclature associ\xE9e." enum: - - aa - - ab - - ae - - af - - ak - - am - - an - - ar - - as - - av - - ay - - az - - ba - - be - - bg - - bi - - bm - - bn - - bo - - br - - bs - - ca - - ce - - ch - - co - - cr - - cs - - cu - - cv - - cy - - da - - de - - dv - - dz - - ee - - el - - en - - eo - - es - - et - - eu - - fa - - ff - - fi - - fj - - fo - - fr - - fy - - ga - - gd - - gl - - gn - - gu - - gv - - ha - - he - - hi - - ho - - hr - - ht - - hu - - hy - - hz - - ia - - id - - ie - - ig - - ii - - ik - - io - - is - - it - - iu - - ja - - jv - - ka - - kg - - ki - - kj - - kk - - kl - - km - - kn - - ko - - kr - - ks - - ku - - kv - - kw - - ky - - la - - lb - - lg - - li - - ln - - lo - - lt - - lu - - lv - - mg - - mh - - mi - - mk - - ml - - mn - - mr - - ms - - mt - - my - - na - - nb - - nd - - ne - - ng - - nl - - nn - - 'no' - - nr - - nv - - ny - - oc - - oj - - om - - or - - os - - pa - - pi - - pl - - ps - - pt - - qu - - rm - - rn - - ro - - ru - - rw - - sa - - sc - - sd - - se - - sg - - si - - sk - - sl - - sm - - sn - - so - - sq - - sr - - ss - - st - - su - - sv - - sw - - ta - - te - - tg - - th - - ti - - tk - - tl - - tn - - to - - tr - - ts - - tt - - tw - - ty - - ug - - uk - - ur - - uz - - ve - - vi - - vo - - wa - - wo - - xh - - yi - - yo - - za - - zh - - zu - examples: - - FR - type: - type: string - title: "Type de requ\xE9rant" - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/caller/type - description: "A valoriser avec la relation du requ\xE9rant avec l'incident\ - \ / le patient / la victime.\ncf. nomenclature associ\xE9e." - enum: - - SUJET - - FAMILLE - - TIERS - - POMPIER - - AMBULANC - - AMBULANC.AASC - - AMBULANC.AUTRESEC - - SECOUR - - MED - - MED.MEDSOS - - MED.MRL - - MED.EFFML - - SANTE - - SANTE.INF - - SANTE.AIDESOIN - - SANTE.SF - - SANTE.AIDEDOM - - SANTE.PHARMA - - SANTE.DENTISTE - - SANTE.LABO - - FDO-MILI - - FDO-MILI.POL - - FDO-MILI.GENDARM - - FDO-MILI.MILI - - ADM-TUTL - - VIP - - OBJCONNC - - AUTRE - - INCONNU - examples: - - FAMILLE, TIERS - communication: - type: string - title: "Difficult\xE9 de communication" - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/caller/communication - description: "A valoriser avec la nature des \xE9ventuelles difficult\xE9\ - s de communication rencontr\xE9es par le requ\xE9rant. \ncf.nomenclature\ - \ associ\xE9e." - enum: - - AUCUNE - - MUET - - VISION - - LANGUE - - PANIQUE - - HOSTILE - - AGITE - - AUTRE - - IMPOSS - examples: - - "Malentendant, aucune difficult\xE9 de communication" - freetext: - type: string - title: "Informations compl\xE9mentaires sur le requ\xE9rant" - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/caller/freetext - description: "Champ libre qui permet de compl\xE9ter les informations sp\xE9\ - cifiquement li\xE9es au requ\xE9rant." - examples: - - "t\xE9moin de l'accident" - detailedName: - $ref: '#/components/schemas/detailedName' - additionalProperties: false - example: example.json#/initialAlert/caller - callTaker: - type: object - title: Agent - x-display: expansion-panels - x-health-only: false - required: - - organization - - controlRoom - properties: - organization: - type: string - title: Service d'urgence - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/callTaker/organization - description: "D\xE9crit la structure ou le service \xE0 laquelle est rattach\xE9\ - e l'agent (en fonction du niveau de pr\xE9cision disponible).\nSe r\xE9\ - f\xE9rer au DSF pour la structure norm\xE9e des organisations.\nLe format\ - \ est le suivant {pays}.{domaine}.{organisation}.{structure interne}*.{unit\xE9\ - \ fonctionnelle}*." - examples: - - fr.health.samu440 - controlRoom: - type: string - title: Centre d'appels - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/callTaker/controlRoom - description: "D\xE9crit le centre d'appel auquel est rattach\xE9 l'agent" - examples: - - CGA, CGO 21, CRRA 44, ... - role: - type: string - title: "R\xF4le agent" - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/callTaker/role - description: "D\xE9crit le r\xF4le de l'agent au sein du service selon la\ - \ nomenclature PERSO (nomenclature SI-SAMU)" - examples: - - ARM - calltakerContact: - $ref: '#/components/schemas/contact' - calltakerId: - type: string - title: ID de l'agent - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/callTaker/calltakerId - description: "Identifiant unique de l'op\xE9rateur ayant trait\xE9 l'alerte\ - \ (peut \xEAtre un identifiant technique, un num\xE9ro de carte CPS etc)" - examples: - - id1234 - additionalProperties: false - example: example.json#/initialAlert/callTaker - examples: - - organization: fr.health.samu440 - controlRoom: CGA, CGO 21, CRRA 44, ... - role: ARM - calltakerContact: {} - calltakerId: id1234 - attachment: - type: object - title: "Pi\xE8ces jointes" - x-display: expansion-panels - x-health-only: false - required: - - URI - properties: - description: - type: string - title: Type ou description pj - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/attachment/0/description - description: "D\xE9crit la ressource en pr\xE9cisant le type et le contenu,\ - \ tels que \xABcarte\xBB ou \xABphoto\xBB" - examples: - - "photo, carte, \u2026" - mimeType: - type: string - title: Type MIME - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/attachment/0/mimeType - description: "L'identifiant du type MIME de contenu et sous-type d\xE9crivant\ - \ la ressource" - examples: - - "PDF, XML, JPEG, \u2026" - size: - type: integer - title: Taille approximative - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/attachment/0/size - description: Taille approximative de la ressource en kO - examples: - - "1235, 35, \u2026" - URI: - type: string - title: URI - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/attachment/0/URI - description: "Une URI, g\xE9n\xE9ralement une URL, qui permet d'atteindre\ - \ la ressource sur Internet ou sur un r\xE9seau priv\xE9\nNous sugg\xE9\ - rons d'employer le format suivant de regex (https?|ftp|file):\\/\\/([\\\ - w-]+(\\.[\\w-]+)*)(\\/[\\w\\-\\.]*)*\\/?(\\?[^\\s]*)?" - examples: - - https://hub.esante.gouv.fr/resourceExample - derefURI: - type: string - title: URI base 64 - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/attachment/0/derefURI - description: "Peut \xEAtre utilis\xE9 \xE0 la place de l'\xE9l\xE9ment 'URI'\ - \ pour envoyer la ressource encod\xE9e en base64 pour \xE9viter des probl\xE8\ - mes de transcodage (sur des double quotes qui casseraient le message,\ - \ \u2026)" - examples: - - None - digest: - type: string - title: Hash - x-health-only: false - x-cols: 6 - example: example.json#/initialAlert/attachment/0/digest - description: "Hash de la ressource pour confirmer la r\xE9ception de la\ - \ bonne ressource\nLa ressource est hash\xE9e avec le protocole SHA-256" - examples: - - None - additionalProperties: false - example: example.json#/initialAlert/attachment/0 - examples: - - description: "photo, carte, \u2026" - mimeType: "PDF, XML, JPEG, \u2026" - size: "1235, 35, \u2026" - URI: https://hub.esante.gouv.fr/resourceExample - derefURI: None - digest: None - contact: - type: object - title: Contact - x-display: expansion-panels - x-health-only: false - required: [] - properties: - type: - type: string - title: 'Type de contact ' - x-health-only: false - x-cols: 6 - example: example.json#/resource/0/contact/type - description: "A valoriser avec le type de l'URI utilis\xE9e. Cf nomenclature\ - \ associ\xE9e." - enum: - - EMAIL - - FAX - - MSS - - POSTAL - - RADIO - - TEL - - WEB - examples: - - PHNADD - details: - type: string - title: URI du contact - x-health-only: false - x-cols: 6 - example: example.json#/resource/0/contact/details - description: "A valoriser avec la valeur de l'URI utilis\xE9e\nLe format\ - \ attendu pour un num\xE9ro de t\xE9l\xE9phone est le suivant : +{indicatif\ - \ pays}{num\xE9ro de t\xE9l\xE9phone}" - examples: - - '+33671830530' - additionalProperties: false - example: example.json#/resource/0/contact - examples: - - type: PHNADD - details: '+33671830530' - detailedName: - type: object - title: "Pr\xE9nom & nom usuel" - x-display: expansion-panels - x-health-only: false - required: - - complete - properties: - complete: - type: string - title: "Pr\xE9nom et nom" - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/administrativeFile/generalPractitioner/detailedName/complete - description: "A valoriser avec le pr\xE9nom et le nom usuel du requ\xE9\ - rant/appelant.\nSi les champs callerLastName et callerFirstName sont \xE9\ - galement renseign\xE9s, le champ callerName doit \xEAtre valoris\xE9 ainsi\ - \ : \"{callerFirstName} {callerLastName}\".\n\nSp\xE9cificit\xE9s 15-18\ - \ : NexSIS ne dispose que de ces informations (concat\xE9n\xE9es) et\ - \ pas de deux champs s\xE9par\xE9s." - examples: - - Jean Dupont - lastName: - type: string - title: Nom - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/administrativeFile/generalPractitioner/detailedName/lastName - description: "A valoriser avec le nom usuel du requ\xE9rant" - examples: - - Dupont - firstName: - type: string - title: "Pr\xE9nom" - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/administrativeFile/generalPractitioner/detailedName/firstName - description: "A valoriser avec le pr\xE9nom usuel du r\xE9qu\xE9rant.\n\ - Par convention les pr\xE9noms compos\xE9s doivent pr\xE9f\xE9rablement\ - \ \xEAtre s\xE9par\xE9s par le caract\xE8re \"-\"" - examples: - - Jean - additionalProperties: false - example: example.json#/patient/0/administrativeFile/generalPractitioner/detailedName - examples: - - complete: Jean Dupont - lastName: Dupont - firstName: Jean - customMap: - type: object - title: "Cl\xE9 valeur adaptable" - x-display: expansion-panels - x-health-only: false - required: - - key - - value - properties: - key: - type: string - title: "Cl\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/additionalInformation/customMap/0/key - description: A valoriser avec le nom de la balise - examples: - - neighborhood - label: - type: string - title: "Libell\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/additionalInformation/customMap/0/label - description: "A valoriser avec le libell\xE9 correspondant" - examples: - - Quartier - value: - type: string - title: Valeur - x-health-only: false - x-cols: 6 - example: example.json#/additionalInformation/customMap/0/value - description: "A valoriser avec la valeur associ\xE9e \xE0 la cl\xE9" - examples: - - LYON 2e arrondissement - freetext: - type: string - title: "D\xE9tails" - x-health-only: false - x-cols: 6 - example: example.json#/additionalInformation/customMap/0/freetext - description: "Informations compl\xE9mentaires sur le contexte / utilisation\ - \ de cette correspondance additionnelle" - examples: - - "Pr\xE9cision sur le quartier d'intervention" - additionalProperties: false - example: example.json#/additionalInformation/customMap/0 - examples: - - key: neighborhood - label: Quartier - value: LYON 2e arrondissement - freetext: "Pr\xE9cision sur le quartier d'intervention" - createCaseHealth: - $id: classpath:/json-schema/schema# - x-id: RS-EDA.schema.json# - example: example.json# - type: object - title: createCaseHealth - required: - - caseId - - creation - - qualification - - location - - owner - properties: - caseId: - type: string - title: Identifiant affaire/dossier - x-health-only: false - x-cols: 6 - example: example.json#/caseId - description: "Identifiant partag\xE9 de l'affaire/dossier, g\xE9n\xE9r\xE9\ - \ une seule fois par le syst\xE8me du partenaire qui recoit la primo-demande\ - \ de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9 comme suit\ - \ lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ - \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ - e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ - \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ - \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ - \ num\xE9ro unique dans son syst\xE8me." - pattern: ^fr(\.[\w-]+){3,4}$ - examples: - - fr.health.samu440.DRFR15440241550012 - senderCaseId: - type: string - title: Identifiant local de l'affaire/dossier - x-health-only: false - x-cols: 6 - example: example.json#/senderCaseId - description: "A valoriser avec le num\xE9ro du dossier dans le SI de l'\xE9\ - metteur du message.\n" - examples: - - DRFR15440241550012 - creation: - type: string - title: "Date Heure de cr\xE9ation de l'affaire/dossier" - x-health-only: false - x-cols: 6 - example: example.json#/creation - description: "A valoriser avec le groupe date heure de cr\xE9ation du dossier/affaire.\n\ - \nSp\xE9cificit\xE9 15-18 : A valoriser avec le groupe date heure de d\xE9\ - but de partage li\xE9 \xE0 la cr\xE9ation de l'affaire (et donc de g\xE9\ - n\xE9ration du caseId). \nLors de l'ajout d'une nouvelle alerte, la valeur\ - \ de ce champ ne doit pas \xEAtre modifi\xE9e. \nL'indicateur de fuseau\ - \ horaire Z ne doit pas \xEAtre utilis\xE9.\nIl doit \xEAtre renseign\xE9\ - \ \xE0 la fin du processus de la cr\xE9ation de la premi\xE8re alerte." - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:23:34+02:00' - perimeter: - type: string - title: "Fili\xE8re" - x-health-only: false - x-cols: 6 - example: example.json#/perimeter - description: "Sert \xE0 indiquer \xE0 quelle fili\xE8re du CRRA destinataire\ - \ le dossier doit \xEAtre adress\xE9/affich\xE9, lorsque celle-ci est\ - \ sp\xE9cifique ou d\xE9di\xE9e." - enum: - - AMU - - NEONAT - - PSY - - SNP - examples: - - AMU - interventionType: - type: string - title: Type d'intervention - x-health-only: false - x-cols: 6 - example: example.json#/interventionType - description: "A valoriser en indiquant s'il s'agit d'un dossier dit primaire\ - \ (premi\xE8re intervention urgente) ou secondaire (par exemple TIH)" - enum: - - T1 - - T2-INTER - - T2-INTRA - - T3 - - T4 - examples: - - PRIMAIRE - qualification: - $ref: '#/components/schemas/qualification' - location: - $ref: '#/components/schemas/location' - initialAlert: - $ref: '#/components/schemas/alert' - owner: - type: string - title: CRRA traitant - x-health-only: false - x-cols: 6 - example: example.json#/owner - description: "Attribut qui permet de transf\xE9rer la prise en charge d'un\ - \ dossier \xE0 un autre CRAA\nA valoriser avec l'identifiant de l'organisation\ - \ concern\xE9 (orgId = {pays}.{domaine}.{organisation})" - pattern: ^fr(\.[\w-]+){2,3}$ - examples: - - fr.health.samu440 - patient: - type: array - items: - $ref: '#/components/schemas/patient' - medicalNote: - type: array - items: - $ref: '#/components/schemas/medicalNote' - decision: - type: array - items: - $ref: '#/components/schemas/decision' - additionalInformation: - $ref: '#/components/schemas/additionalInformation' - additionalProperties: false - patient: - type: object - title: Patient - x-display: expansion-panels - x-health-only: false - required: - - patientId - - lastName - - firstName - properties: - patientId: - type: string - title: "ID partag\xE9 du patient" - x-health-only: false - x-cols: 6 - example: example.json#/patient/patientId - description: "Identifiant unique du patient. \nA valoriser par {ID du SAMU\ - \ qui engage le SMUR}.{ID du DRM}.P{num\xE9ro d\u2019ordre chronologique}\ - \ : fr.health.samu690.DRFR15DDXAAJJJ00001.P01" - examples: - - fr.health.samu690.patient.DRFR15DDXAAJJJ00001.1 - birthName: - type: string - title: Nom de naissance - x-health-only: false - x-cols: 6 - example: example.json#/patient/birthName - description: Nom de naissance du patient - examples: - - Dupont - lastName: - type: string - title: Nom usuel - x-health-only: false - x-cols: 6 - example: example.json#/patient/lastName - description: Nom usuel du patient - examples: - - Maleis - firstName: - type: string - title: "Pr\xE9nom usuel" - x-health-only: false - x-cols: 6 - example: example.json#/patient/firstName - description: "Pr\xE9nom du patient" - examples: - - Jean - birthDate: - type: string - title: Date de naissance - x-health-only: false - x-cols: 6 - example: example.json#/patient/birthDate - description: Date de naissance du patient - examples: - - 17/02/1936 - age: - type: string - title: Age - x-health-only: false - x-cols: 6 - example: example.json#/patient/age - description: "La date de naissance n'est pas tout le temps connu, cette\ - \ donn\xE9e permet d'indiquer un \xE2ge entier. " - examples: - - PY69 - sex: - type: string - title: Sexe - x-health-only: false - x-cols: 6 - example: example.json#/patient/sex - description: "Sexe du patient, suivant le libell\xE9 court de la nomenclature\ - \ SI-SAMU-NOMENC_SEXE" - enum: - - M - - F - - O - - UN - examples: - - F - externalId: - type: array - items: - $ref: '#/components/schemas/externalId' - height: - type: integer - title: Taille - x-health-only: false - x-cols: 6 - example: example.json#/patient/height - description: A valoriser avec le poids en kilogrammes - examples: - - 31 - weight: - type: integer - title: Poids - x-health-only: false - x-cols: 6 - example: example.json#/patient/weight - description: "A valoriser avec la taille en centim\xE8tres du patient" - examples: - - 109 - additionalProperties: false - example: example.json#/patient - medicalNote: - type: object - title: "Observation m\xE9dicale" - x-display: expansion-panels - x-health-only: false - required: - - operator - - medicalNoteId - - freetext - properties: - patientId: - type: string - title: "ID patient partag\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/medicalNote/0/patientId - description: "Identifiant partag\xE9 du patient concern\xE9 par l'observation,\ - \ a remplir obligatoirement si ce patient existe et est identifi\xE9 dans\ - \ le syst\xE8me emetteur, \n\nValoris\xE9 comme suit lors de sa cr\xE9\ - ation : \n{OrgId \xE9metteur}.patient.{n\xB0patient unique dans le syst\xE8\ - me \xE9metteur}\n\nOU, si un n\xB0patient unique n'existe pas dans le\ - \ syst\xE8me \xE9metteur :\n{ID \xE9metteur}.{senderCaseId}.patient.{num\xE9\ - ro d\u2019ordre chronologique au dossier}" - pattern: ^([\w-]+\.){3,4}patient(\.[\w-]+){1,2}$ - examples: - - 'fr.health.samu690.patient.P23AZ59 - - fr.health.samu690.patient.DRFR15690242370035.1' - operator: - $ref: '#/components/schemas/operator' - medicalNoteId: - type: string - title: ID Observation - x-health-only: false - x-cols: 6 - example: example.json#/medicalNote/0/medicalNoteId - description: "Identifiant partag\xE9 de l'observation, g\xE9n\xE9r\xE9 une\ - \ seule fois par le syst\xE8me du partenaire qui cr\xE9\xE9 l'observation\n\ - Il est valoris\xE9 comme suit lors de sa cr\xE9ation : \n{OrgId \xE9metteur}.medicalNote.{ID\ - \ unique de l\u2019observation dans le syst\xE8me \xE9metteur}\n\nOU -\ - \ uniquement dans le cas o\xF9 un ID unique de la note n'est pas disponible\ - \ dans le syst\xE8me : \n{OrgId \xE9metteur}.medicalNote.{senderCaseId}.{num\xE9\ - ro chronologique de l\u2019observation}\n\nCet identifiant a vocation\ - \ \xE0 devenir obligatoire pour permettre les mises \xE0 jour, il est\ - \ laiss\xE9 en facultatif temporairement.\n" - pattern: ^([\w-]+\.){3,4}medicalNote(\.[\w-]+){1,2}$ - examples: - - 'fr.health.samu540.medicalNote.46585A - - fr.health.samu540.medicalNote.DRFR15540241600125.20' - creation: - type: string - title: Date Heure de l'observation - x-health-only: false - x-cols: 6 - example: example.json#/medicalNote/0/creation - description: "A valoriser avec le groupe date heure de cr\xE9ation de l'observation.\ - \ L'indicateur de fuseau horaire Z ne doit pas \xEAtre utilis\xE9." - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:23:34+02:00' - freetext: - type: string - title: Observations et commentaires - x-health-only: false - x-cols: 6 - example: example.json#/medicalNote/0/freetext - description: "Champ libre qui permet de compl\xE9ter les informations de\ - \ nature m\xE9dicales, faites par un ARM, un m\xE9decin ou un autre professionnel\ - \ de sant\xE9." - examples: - - None - additionalProperties: false - example: example.json#/medicalNote/0 - decision: - type: object - title: Transport - x-display: expansion-panels - x-health-only: false - required: - - resourceType - - vehicleType - - medicalLevel - properties: - resourceType: - type: string - title: Moyen de transport - x-health-only: false - x-cols: 6 - example: example.json#/orientation/decision/resourceType - description: "Pr\xE9cise le type de moyen engag\xE9 dans l'intervention\ - \ (SMUR, TSU, HOSPIT, etc.). \nA valoriser par un code de la nomenclature\ - \ SI-SAMU-TYPE_MOYEN." - enum: - - SMUR - - SMUR.ADULT - - SMUR.PED - - SMUR.UMH-S - - SMUR.CUMP - - HOSPIT - - LIBERAL - - LIBERAL.MG - - LIBERAL.PHARM - - LIBERAL.INF - - LIBERAL.KINE - - LIBERAL.SOS - - LIBERAL.MMG - - LIBERAL.MSPD - - LIBERAL.MCS - - LIBERAL.SPEMED - - LIBERAL.DENT - - LIBERAL.LABO - - LIBERAL.AUTREPRO - - 'TSU ' - - SIS - - SIS.MEDSP - - SIS.ISP - - SIS.SP - - AASC - - FDO - - FDO.PN - - FDO.GEND - - FDO.PM - - FDO.DOUANES - - AUTRE - - AUTRE.ADM - - AUTRE.DAE - - AUTRE.AUTRE - examples: - - SMUR - vehicleType: - type: string - title: Type de vecteur de transport - x-health-only: false - x-cols: 6 - example: example.json#/orientation/decision/vehicleType - description: "Pr\xE9cise le type de v\xE9hicule terrestre / a\xE9rien /\ - \ maritime engag\xE9 dans l'intervention.\nA valoriser par un code de\ - \ la nomenclature SI-SAMU-TYPE_VECTEUR." - enum: - - AASC - - AASC.VLSC - - AASC.VPSP - - AASC.AUTRESC - - AUTREVEC - - AUTREVEC.APIED - - AUTREVEC.AVION - - AUTREVEC.PERSO - - AUTREVEC.TAXI - - AUTREVEC.TRAIN - - AUTREVEC.TRANSP - - AUTREVEC.AUTRE - - AUTREVEC.AUTRETRA - - FSI - - FSI.HELIFSI - - FSI.VLFSI - - FSI.FFSI - - FSI.VHFSI - - LIB - - LIB.MEDV - - LIB.INF - - LIB.AUTREPRO - - SIS - - SIS.DRAGON - - SIS.AVSC - - SIS.FEUSIS - - SIS.GRIMP - - SIS.NAVISIS - - SIS.PCSIS - - SIS.SRSIS - - SIS.VCH - - SIS.VLCG - - SIS.VLISP - - SIS.VLMSP - - SIS.VLSIS - - SIS.VPL - - SIS.VPMA - - SIS.VR - - SIS.VSAV - - SIS.MOYSSE - - SIS.AUTRESIS - - SMUR - - SMUR.VLM - - SMUR.VL - - SMUR.PSM1 - - SMUR.PSM2 - - SMUR.PSM3 - - SMUR.PSMP - - SMUR.VPC - - SMUR.AR - - SMUR.AR-BAR - - SMUR.AR-PED - - SMUR.HELISMUR - - SMUR.HELISAN - - SMUR.AVSMUR - - SMUR.AVSAN - - SMUR.NAVISMUR - - TSU - - TSU.VSL - - TSU.AMB-GV - - TSU.AMB-PV - - TSU.AMB-BAR - - TSU.AMB - examples: - - AR, VLM, VSAV - medicalLevel: - type: string - title: "Niveau de m\xE9dicalisation du transport" - x-health-only: false - x-cols: 6 - example: example.json#/orientation/decision/medicalLevel - description: "Type d\u2019\xE9quipe (m\xE9dical, param\xE9dicale, secouriste).\n\ - A valoriser par un code de la nomenclature SI-SAMU-NIVSOIN." - enum: - - MED - - PARAMED - - SECOURS - - SANS - examples: - - PARAMED - additionalProperties: false - example: example.json#/orientation/decision - examples: - - resourceType: SMUR - vehicleType: AR, VLM, VSAV - medicalLevel: PARAMED - caseDetails: - type: object - title: "D\xE9tails du dossier " - x-display: expansion-panels - x-health-only: false - required: [] - properties: - status: - type: string - title: Etat du dossier - x-health-only: false - x-cols: 6 - example: example.json#/qualification/details/status - description: "A valoriser avec l'\xE9tat du dossier dans le syst\xE8me \xE9\ - metteur\nSp\xE9cificit\xE9 15-15 : peut \xEAtre ignor\xE9 en r\xE9ception,\ - \ partag\xE9 \xE0 titre indicatif uniquement\nSp\xE9cificit\xE9 15-SMUR\ - \ : \xE0 utiliser \xE0 minima pour transmettre le statut CLOTURE \xE0\ - \ la tablette" - enum: - - PROGRAM - - ACTIF - - ACHEVE - - VALIDE - - CLOTURE - - CLASSE - - ARCHIVE - examples: - - None - priority: - type: string - title: "Priorit\xE9 de r\xE9gulation m\xE9dicale" - x-health-only: false - x-cols: 6 - example: example.json#/qualification/details/priority - description: "D\xE9crit la priorit\xE9 de r\xE9gulation m\xE9dicale du dossier\ - \ : P0, P1, P2, P3" - enum: - - P0 - - P1 - - P2 - - P3 - - NR - examples: - - P1 - careLevel: - type: string - title: Niveau de soins du dossier - x-health-only: false - x-cols: 6 - example: example.json#/qualification/details/careLevel - description: "D\xE9crit le niveau de soins global du dossier identifi\xE9\ - \ au cours de l'acte de r\xE9gulation m\xE9dicale : s'il y a plusieurs\ - \ niveaux de soins diff\xE9rents pour chaque patient, on indique ici le\ - \ niveau le plus grave.\ncf.nomenclature associ\xE9e." - enum: - - R1 - - R2 - - R3 - - R4 - examples: - - R1 - additionalProperties: false - example: example.json#/qualification/details - examples: - - status: None - priority: P1 - careLevel: R1 - highway: - type: object - title: Autoroute - x-display: expansion-panels - x-health-only: false - required: [] - properties: - name: - type: string - title: Nom - x-health-only: false - x-cols: 6 - example: example.json#/location/detailedAddress/highway/name - description: "A valoriser avec le nom de l'autoroute, de la voie ferr\xE9\ - e ou voie navigable." - examples: - - A4 - pk: - type: string - title: "Point kilom\xE9trique" - x-health-only: false - x-cols: 6 - example: example.json#/location/detailedAddress/highway/pk - description: "A valoriser avec le point kilom\xE9trique de l'autoroute,\ - \ de la voie ferr\xE9e ou voie navigable. " - examples: - - PK10 - direction: - type: string - title: Sens - x-health-only: false - x-cols: 6 - example: example.json#/location/detailedAddress/highway/direction - description: A valoriser avec le sens de l'autoroute. - examples: - - Paris - additionalProperties: false - example: example.json#/location/detailedAddress/highway - examples: - - name: A4 - pk: PK10 - direction: Paris - administrativeFile: - type: object - title: Dossier administratif - x-display: expansion-panels - x-health-only: false - required: [] - properties: - externalId: - type: array - items: - $ref: '#/components/schemas/externalId' - generalPractitioner: - $ref: '#/components/schemas/generalPractitioner' - additionalProperties: false - example: example.json#/patient/0/administrativeFile - Identity: - type: object - title: "Identit\xE9" - x-display: expansion-panels - x-health-only: false - required: [] - properties: - strictFeatures: - $ref: '#/components/schemas/insStrictFeatures' - nonStrictFeatures: - $ref: '#/components/schemas/detailedName' - additionalProperties: false - example: example.json#/patient/0/identity - patientDetail: - type: object - title: Informations patient - x-display: expansion-panels - x-health-only: false - required: [] - properties: - weight: - type: number - title: Poids - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/detail/weight - description: A valoriser avec le poids en kilogrammes - examples: - - 31 - height: - type: number - title: Taille - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/detail/height - description: "A valoriser avec la taille en centim\xE8tres du patient" - examples: - - 109 - age: - type: string - title: Age - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/detail/age - description: "A valoriser avec l'age du patient.\nAu format \"Dur\xE9e\"\ - \ de la norme ISO 8601 (https://fr.wikipedia.org/wiki/ISO_8601#Dur%C3%A9e)\ - \ et en n'utilisant qu'une seule unit\xE9 de dur\xE9e (ann\xE9es, mois,\ - \ semaines ou jours)" - pattern: ^P[0-9]{1,3}[YMWD]$ - examples: - - P6Y - careLevel: - type: string - title: Niveau de soin du patient - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/detail/careLevel - description: "A valoriser avec le niveau de soins sp\xE9cifique au patient" - enum: - - R1 - - R2 - - R3 - - R4 - examples: - - R1 - medicalHistory: - type: string - title: "Ant\xE9c\xE9dents" - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/detail/medicalHistory - description: "Texte libre pour d\xE9crire les ant\xE9c\xE9dents du patient.\ - \ \nSi ce n'est pas g\xE9r\xE9 de mani\xE8re structur\xE9s : \xE0 afficher\ - \ dans une note li\xE9e au patient en r\xE9ception. " - examples: - - Arthrite, asthme - treatment: - type: string - title: Traitements - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/detail/treatment - description: "Texte libre pour d\xE9crire les traitements du patient.\n\ - Si ce n'est pas g\xE9r\xE9 de mani\xE8re structur\xE9s : \xE0 afficher\ - \ dans une note li\xE9e au patient en r\xE9ception. " - examples: - - "Amoxicilline 1 g et parac\xE9tamol 1 g depuis 5 jours." - additionalProperties: false - example: example.json#/patient/0/detail - examples: - - weight: 31 - height: 109 - age: P6Y - careLevel: R1 - medicalHistory: Arthrite, asthme - treatment: "Amoxicilline 1 g et parac\xE9tamol 1 g depuis 5 jours." - hypothesis: - type: object - title: "Hypoth\xE8ses de r\xE9gulation m\xE9dicale" - x-display: expansion-panels - x-health-only: false - required: [] - properties: - mainDiagnosis: - $ref: '#/components/schemas/mainDiagnosis' - otherDiagnosis: - type: array - items: - $ref: '#/components/schemas/otherDiagnosis' - additionalProperties: false - example: example.json#/patient/0/hypothesis - externalId: - type: object - title: Identifiant(s) patient(s) - x-display: expansion-panels - x-health-only: false - required: - - source - - value - properties: - source: - type: string - title: Source / type d'identifiant - x-health-only: false - x-cols: 6 - example: example.json#/patient/externalId/0/source - description: Type de l'identifiant fourni - enum: - - NIR - - SINUS - - SI-VIC - - DOSSARD - - PLACE - examples: - - "NIR, SINUS, SI-VIC, \u2026" - value: - type: string - title: Identifiant - x-health-only: false - x-cols: 6 - example: example.json#/patient/externalId/0/value - description: "L'identifiant en lui-m\xEAme" - examples: - - id1234 - additionalProperties: false - example: example.json#/patient/externalId/0 - examples: - - source: "NIR, SINUS, SI-VIC, \u2026" - value: id1234 - generalPractitioner: - type: object - title: "M\xE9decin traitant " - x-display: expansion-panels - x-health-only: false - required: - - detailedName - properties: - detailedName: - $ref: '#/components/schemas/detailedName' - rppsId: - type: string - title: Identifiant RPPS - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/administrativeFile/generalPractitioner/rppsId - description: "Num\xE9ro RPPS du m\xE9decin traitant" - examples: - - 10000668540 - contact: - type: array - items: - $ref: '#/components/schemas/personalContact' - additionalProperties: false - example: example.json#/patient/0/administrativeFile/generalPractitioner - personalContact: - type: object - title: "Contact m\xE9decin" - x-display: expansion-panels - x-health-only: false - required: - - type - - detail - properties: - type: - type: string - title: Type de contact - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/administrativeFile/generalPractitioner/contact/0/type - description: "A valoriser avec le type de l'URI utilis\xE9e. Cf nomenclature\ - \ associ\xE9e." - enum: - - EMAIL - - FAX - - MSS - - POSTAL - - RADIO - - TEL - - WEB - examples: - - TEL - detail: - type: string - title: URI du contact - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/administrativeFile/generalPractitioner/contact/0/detail - description: "A valoriser avec la valeur de l'URI utilis\xE9e.\nLe format\ - \ attendu pour un num\xE9ro de t\xE9l\xE9phone est le suivant : +{indicatif\ - \ pays}{num\xE9ro de t\xE9l\xE9phone}." - examples: - - '+33671830530' - additionalProperties: false - example: example.json#/patient/0/administrativeFile/generalPractitioner/contact/0 - examples: - - type: TEL - detail: '+33671830530' - insStrictFeatures: - type: object - title: "Traits stricts de l'identit\xE9" - x-display: expansion-panels - x-health-only: false - required: [] - properties: - birthName: - type: string - title: Nom de naissance - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/identity/strictFeatures/birthName - description: "A valoriser avec le nom de naissance du patient. Egalement\ - \ appel\xE9 nom de famille." - examples: - - Dupont - birthDate: - type: string - title: Date de naissance - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/identity/strictFeatures/birthDate - description: A valoriser avec la date de naissance du patient - pattern: ^\d{4}-\d{2}-\d{2}$ - examples: - - None - sex: - type: string - title: 'Sexe ' - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/identity/strictFeatures/sex - description: A valoriser avec le sexe du patient - enum: - - M - - F - - O - - UN - examples: - - F - additionalProperties: false - example: example.json#/patient/0/identity/strictFeatures - examples: - - birthName: Dupont - birthDate: None - sex: F - mainDiagnosis: - type: object - title: "Hypoth\xE8se de r\xE9gulation m\xE9dicale principale" - x-display: expansion-panels - x-health-only: false - required: - - code - - label - properties: - code: - type: string - title: Code - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/hypothesis/mainDiagnosis/code - description: "A valoriser avec le code de la nomenclature associ\xE9e" - pattern: ^[A-Z]\d{2}(\.[\d\+\-]{1,3})?$ - examples: - - C07.13.02 - label: - type: string - title: "Libell\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/hypothesis/mainDiagnosis/label - description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ - e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ - tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ - \ fourni avec le code." - examples: - - "Rod\xE9o automobile" - additionalProperties: false - example: example.json#/patient/0/hypothesis/mainDiagnosis - examples: - - code: C07.13.02 - label: "Rod\xE9o automobile" - otherDiagnosis: - type: object - title: "Hypoth\xE8ses de r\xE9gulation m\xE9dicale secondaires" - x-display: expansion-panels - x-health-only: false - required: - - code - - label - properties: - code: - type: string - title: Code - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/hypothesis/otherDiagnosis/0/code - description: "A valoriser avec le code de la nomenclature associ\xE9e" - pattern: ^[A-Z]\d{2}(\.[\d\+\-]{1,3})?$ - examples: - - C07.13.02 - label: - type: string - title: "Libell\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/patient/0/hypothesis/otherDiagnosis/0/label - description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ - e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ - tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ - \ fourni avec le code." - examples: - - "Rod\xE9o automobile" - additionalProperties: false - example: example.json#/patient/0/hypothesis/otherDiagnosis/0 - examples: - - code: C07.13.02 - label: "Rod\xE9o automobile" - operator: - type: object - title: "Professionnel de sant\xE9 qui r\xE9alise l'observation" - x-display: expansion-panels - x-health-only: false - required: - - role - properties: - label: - type: string - title: Label - x-health-only: false - x-cols: 6 - example: example.json#/medicalNote/0/operator/label - description: "A valoriser si besoin avec la valeur souhait\xE9e, en fonction\ - \ des pr\xE9f\xE9rences de chaque partenaire : cela peut \xEAtre le nom\ - \ et pr\xE9nom de l'op\xE9rateur, ou un identifiant." - examples: - - None - role: - type: string - title: "R\xF4le" - x-health-only: false - x-cols: 6 - example: example.json#/medicalNote/0/operator/role - description: "A valoriser avec le r\xF4le de l'op\xE9rateur au sein de l'entit\xE9\ - \ \xE9mettrice du message : " - enum: - - AMBULANCIER - - ARM - - INFIRMIER - - MEDECIN - - PILOTE - - TCM - - AUTRE - - INCONNU - examples: - - ARM - additionalProperties: false - example: example.json#/medicalNote/0/operator - examples: - - label: None - role: ARM - destination: - type: object - title: Destination - x-display: expansion-panels - x-health-only: false - required: - - destinationCountry - - destinationCategory - - healthcareType - - finess - properties: - destinationCountry: - type: string - title: Pays de destination - x-health-only: false - x-cols: 6 - example: example.json#/orientation/destination/destinationCountry - description: "A valoriser par le code de la nomenclature associ\xE9e" - enum: - - AF - - AX - - AL - - DZ - - AS - - AD - - AO - - AI - - AQ - - AG - - AR - - AM - - AW - - AU - - AT - - AZ - - BS - - BH - - BD - - BB - - BY - - BE - - BZ - - BJ - - BM - - BT - - BO - - BA - - BW - - BV - - BR - - IO - - BN - - BG - - BF - - BI - - CV - - KH - - CM - - CA - - KY - - CF - - TD - - CL - - CN - - CX - - CC - - CO - - KM - - CG - - CK - - CR - - CI - - HR - - CU - - CW - - CY - - CZ - - DK - - DJ - - DM - - DO - - EC - - EG - - SV - - GQ - - ER - - EE - - SZ - - ET - - FK - - FO - - FJ - - FI - - FR - - GF - - PF - - TF - - GA - - GM - - GE - - DE - - GH - - GI - - GR - - GL - - GD - - GP - - GU - - GT - - GG - - GN - - GW - - GY - - HT - - HM - - VA - - HN - - HK - - HU - - IS - - IN - - ID - - IR - - IQ - - IE - - IM - - IL - - IT - - JM - - JP - - JE - - JO - - KZ - - KE - - KI - - KP - - KW - - KG - - LA - - LV - - LB - - LS - - LR - - LY - - LI - - LT - - LU - - MO - - MG - - MW - - MY - - MV - - ML - - MT - - MH - - MQ - - MR - - MU - - YT - - MX - - FM - - MC - - MN - - ME - - MS - - MA - - MZ - - MM - - NA - - NR - - NP - - NL - - NC - - NZ - - NI - - NE - - NG - - NU - - NF - - MK - - MP - - 'NO' - - OM - - PK - - PW - - PA - - PG - - PY - - PE - - PH - - PN - - PL - - PT - - PR - - QA - - RE - - RO - - RU - - RW - - BL - - KN - - LC - - MF - - PM - - VC - - WS - - SM - - ST - - SA - - SN - - RS - - SC - - SL - - SG - - SX - - SK - - SI - - SB - - SO - - ZA - - GS - - SS - - ES - - LK - - SD - - SR - - SJ - - SE - - CH - - SY - - TJ - - TH - - TL - - TG - - TK - - TO - - TT - - TN - - TR - - TM - - TC - - TV - - UG - - UA - - AE - - GB - - US - - UM - - UY - - UZ - - VU - - VE - - VN - - VG - - VI - - WF - - EH - - YE - - ZM - - ZW - examples: - - FR - destinationCategory: - type: string - title: "Cat\xE9gorie de l'\xE9tablissement de destination" - x-health-only: false - x-cols: 6 - example: example.json#/orientation/destination/destinationCategory - description: "A valoriser par le code de la nomenclature associ\xE9e" - examples: - - None - healthcareType: - type: string - title: "Type d'activit\xE9 de soins de l'unit\xE9 fonctionnelle de destination" - x-health-only: false - x-cols: 6 - example: example.json#/orientation/destination/healthcareType - description: "A valoriser par le code de la nomenclature ActiviteOperationnelle\ - \ (\xE0 venir). " - examples: - - None - finess: - type: string - title: "FINESS g\xE9ographique" - x-health-only: false - x-cols: 6 - example: example.json#/orientation/destination/finess - description: "FINESS g\xE9ographique de l\u2019\xE9tablissement de destination\ - \ (9 chiffres)" - examples: - - None - additionalProperties: false - example: example.json#/orientation/destination - examples: - - destinationCountry: FR - destinationCategory: None - healthcareType: None - finess: None - createCaseHealthUpdate: - $id: classpath:/json-schema/schema# - x-id: RS-EDA-MAJ.schema.json# - example: example.json# - type: object - title: createCaseHealthUpdate - required: - - caseId - properties: - caseId: - type: string - title: Identifiant affaire/dossier - x-health-only: false - x-cols: 6 - example: example.json#/caseId - description: "Identifiant partag\xE9 de l'affaire/dossier, g\xE9n\xE9r\xE9\ - \ une seule fois par le syst\xE8me du partenaire qui recoit la primo-demande\ - \ de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9 comme suit\ - \ lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ - \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ - e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ - \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ - \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ - \ num\xE9ro unique dans son syst\xE8me." - pattern: ^fr(\.[\w-]+){3,4}$ - examples: - - fr.health.samu440.DRFR15440241550012 - senderCaseId: - type: string - title: Identifiant local de l'affaire/dossier - x-health-only: false - x-cols: 6 - example: example.json#/senderCaseId - description: "A valoriser avec le num\xE9ro du dossier dans le SI de l'\xE9\ - metteur du message.\n" - examples: - - DRFR15440241550012 - perimeter: - type: string - title: "Fili\xE8re" - x-health-only: false - x-cols: 6 - example: example.json#/perimeter - description: "Sert \xE0 indiquer \xE0 quelle fili\xE8re du CRRA destinataire\ - \ le dossier doit \xEAtre adress\xE9/affich\xE9, lorsque celle-ci est\ - \ sp\xE9cifique ou d\xE9di\xE9e." - enum: - - AMU - - NEONAT - - PSY - - SNP - examples: - - AMU - qualification: - $ref: '#/components/schemas/qualification' - location: - $ref: '#/components/schemas/location' - initialAlert: - $ref: '#/components/schemas/alert' - owner: - type: string - title: CRRA traitant - x-health-only: false - x-cols: 6 - example: example.json#/owner - description: "Attribut qui permet de transf\xE9rer la prise en charge d'un\ - \ dossier \xE0 un autre CRAA\nA valoriser avec l'identifiant de l'organisation\ - \ concern\xE9 (orgId = {pays}.{domaine}.{organisation})" - pattern: ^fr(\.[\w-]+){2,3}$ - examples: - - fr.health.samu440 - patient: - type: array - items: - $ref: '#/components/schemas/patient' - medicalNote: - type: array - items: - $ref: '#/components/schemas/medicalNote' - decision: - type: array - items: - $ref: '#/components/schemas/decision' - freetext: - type: string - title: "Informations suppl\xE9mentaires modifi\xE9es" - x-health-only: false - x-cols: 6 - example: example.json#/freetext - description: "Champ libre qui permet de concat\xE9ner en une seule note\ - \ toutes les autres valeurs modifi\xE9es dans le dossier, ne figurant\ - \ pas de mani\xE8re structur\xE9e dans le RS-EDA-MAJ." - examples: - - "adresse : 7bis rue du ch\xE2teau - Neuilly sur Seine" - additionalInformation: - $ref: '#/components/schemas/additionalInformation' - additionalProperties: false - emsi: - $id: classpath:/json-schema/schema# - x-id: EMSI.schema.json# - example: example.json# - type: object - title: emsi - required: - - CONTEXT - - EVENT - properties: - CONTEXT: - $ref: '#/components/schemas/context' - EVENT: - $ref: '#/components/schemas/event' - MISSION: - type: array - items: - $ref: '#/components/schemas/mission' - RESOURCE: - type: array - items: - $ref: '#/components/schemas/resource' - additionalProperties: false - context: - type: object - title: Contexte - x-display: expansion-panels - x-health-only: false - required: - - ID - - MODE - - MSGTYPE - properties: - ID: - type: string - title: Identifiant du message - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/ID - description: "A constituer par le r\xE9dacteur du pr\xE9sent EMSI pour \xEA\ - tre unique, il est pr\xE9conis\xE9 de reprendre la valeur du champ messageId\ - \ de l'ent\xEAte RC-DE." - examples: - - d350c9d2-9d76-4568-b0b7-a747ffadc949 - MODE: - type: string - title: Mode - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/MODE - description: "Valeur constante dans le cadre des \xE9changes LRM-NexSIS\ - \ : ACTUAL" - enum: - - ACTUAL - - EXERCS - - SYSTEM - - TEST - examples: - - ACTUAL - MSGTYPE: - type: string - title: Type de message - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/MSGTYPE - description: "- A valoriser avec la valeur \"ALERT\" lors du premier \xE9\ - change entre syst\xE8mes.\n- A valoriser avec la valeur constante \"UPDATE\"\ - \ ensuite.\nPeut ne pas \xEAtre interpr\xE9t\xE9 par les LRM." - enum: - - ACK - - ALERT - - CANCEL - - ERROR - - UPDATE - examples: - - UPDATE - CREATION: - type: string - title: "Date et heure de cr\xE9ation" - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/CREATION - description: "Obligatoire dans le cadre d'une demande de concours, contient\ - \ la date de cr\xE9ation de la demande de concours dans le syst\xE8me\ - \ du partenaire requ\xE9rant.\nA valoriser avec le m\xEAme horaire que\ - \ dateTimeSent dans le message RC-DE associ\xE9.\nDans le cadre d'une\ - \ demande de concours, obligatoire. Ce champ est valoris\xE9e avec l'heure\ - \ de cr\xE9ation de la demande de concours chez le partenaire emetteur.\ - \ L'heure d'envoi du message peut \xEAtre obtenue via l'enveloppe EDXL-DE\ - \ (se r\xE9f\xE9rer au DST)" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:25:54+02:00' - LINK: - type: array - items: - $ref: '#/components/schemas/link' - LEVEL: - type: string - title: Niveau - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/LEVEL - description: A valoriser avec la valeur constante "OPR" dans le cadre d'un - message EMSI, incluant une mission OPG - enum: - - STRTGC - - OPR - - TACTCL - examples: - - OPR - SECLASS: - type: string - title: Niveau de classification - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/SECLASS - description: "Optionnel\n\nDans NexSIS ; \nLes messages transmis par NexSIS\ - \ auront un champ valoris\xE9 avec syst\xE9matiquement le m\xEAme code:\ - \ \"RESTRC\"=restricted\nLes LRM doivent \xE9galement renseigner la valeur\ - \ \"RESTRC\"" - enum: - - CONFID - - RESTRC - - SECRET - - TOPSRT - - UNCLAS - - UNMARK - examples: - - RESTRC - FREETEXT: - type: string - title: Texte libre - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/FREETEXT - description: "Texte libre, optionnel\n\nDans NexSIS;\nFonction de l'\xE9\ - v\xE9nement g\xE9n\xE9rateur\nRG 1 : la valeur de \ - \ reste \xE0 'Cr\xE9ation d'un \xE9v\xE9nement op\xE9rationnel EMSI'\ - \ & version & 'suite \xE0 r\xE9ception d'une affaire*' dans le cadre de\ - \ la cr\xE9ation d'une op\xE9ration commune (conforme RG 2 de NEXSIS-6618)\n\ - RG 3 : les \xE9v\xE9nements g\xE9n\xE9rateurs sont ceux d\xE9finis au\ - \ sein de NEXSIS-6619 RG 1 de tra\xE7abilit\xE9 ( input = = CREATION_OPERATION / MAJ_MODIFICATION_ETAT_OPERATION\ - \ / AJOUT_RESSOURCE / RETRAIT_RESSOURCE / MAJ_ETAT_SITUATION_RESSOURCE\ - \ / MAJ_LOCALISATION_ADRESSE) auxquels seront ajout\xE9s les \xE9ventuels\ - \ \xE9v\xE9nements \xE0 venir." - examples: - - "Contexte de grand incendie \xE0 Nantes" - ORIGIN: - $ref: '#/components/schemas/origin' - EXTERNAL_INFO: - type: array - items: - $ref: '#/components/schemas/externalInfo' - URGENCY: - type: string - title: "Niveau d'urgence de l'\xE9v\xE9nement" - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/URGENCY - description: "Niveau d'urgence pour l'affaire en cours\nDans le cadre des\ - \ \xE9changes LRM-NexSIS, optionnel" - enum: - - URGENT - - NOT_URGENT - examples: - - URGENT - additionalProperties: false - example: example.json#/CONTEXT - event: - type: object - title: "Ev\xE8nement" - x-display: expansion-panels - x-health-only: false - required: - - orgId - - senderCaseId - - creationDate - - decisionDate - - ressourceFinessLegal - - ressourceFinessGeo - - ressourceStructure - properties: - orgId: - type: string - title: Identifiant de l'organisation du SAMU qui engage le SMUR - x-health-only: false - x-cols: 6 - example: example.json#/context/orgId - description: "Num\xE9ro du SAMU r\xE9gulant la mission SMUR. \nA valoriser\ - \ par fr.health.samuXXX : {pays}.{domaine}.{organisation}\n" - pattern: ^[a-z]{2,3}\.[a-z]+\.\w*$ - examples: - - fr.health.samu440 - senderCaseId: - type: string - title: "Identifiant local du dossier de r\xE9gulation m\xE9dicale (DRM)" - x-health-only: false - x-cols: 6 - example: example.json#/context/senderCaseId - description: "Num\xE9ro du dossier SAMU \xE0 l\u2019origine de la mission\ - \ SMUR\nA valoriser par DRFR15DDXAAJJJ00000 : \n- DR = d\xE9signation\ - \ d'un dossier sous forme abr\xE9g\xE9e,\n- FR : d\xE9signe le pays (FR\ - \ = France),\n- 15 : d\xE9signe le fait que le dossier a \xE9t\xE9 pris\ - \ en charge par un SAMU / SAS,\n- DD : d\xE9signe le d\xE9partement o\xF9\ - \ est situ\xE9 le SAMU / SAS qui a trait\xE9 le dossier,\n- X : lettre\ - \ d\xE9signant le SAMU / SAS en cas de pluralit\xE9 de SAMU / SAS sur\ - \ le m\xEAme d\xE9partement ou le troisi\xE8me chiffre des DOM,\n- AA\ - \ : ann\xE9e durant laquelle l\u2019appel a \xE9t\xE9 cr\xE9\xE9,\n- JJJ\ - \ : d\xE9signe le jour de l'ann\xE9e (de 1j \xE0 365j),\\par\n- 00000\ - \ : num\xE9ro d\u2019ordre chronologique du dossier dans la journ\xE9\ - e de r\xE9f\xE9rence ci-dessus." - examples: - - DRFR15DDXAAJJJ00000 - creationDate: - type: string - title: "Date et heure de cr\xE9ation du dossier de r\xE9gulation" - x-health-only: false - x-cols: 6 - example: example.json#/context/creationDate - description: s'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:23:34+02:00' - decisionDate: - type: string - title: "Date et heure de la d\xE9cision d\u2019engagement du SMUR" - x-health-only: false - x-cols: 6 - example: example.json#/context/decisionDate - description: s'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:23:34+02:00' - ressourceFinessLegal: - type: string - title: 'FINESS juridique ' - x-health-only: false - x-cols: 6 - example: example.json#/context/ressourceFinessLegal - description: "FINESS juridique \xE9tablissement rattachement SMUR" - examples: - - None - ressourceFinessGeo: - type: string - title: "FINESS g\xE9ographique " - x-health-only: false - x-cols: 6 - example: example.json#/context/ressourceFinessGeo - description: "FINESS g\xE9ographique \xE9tablissement rattachement SMUR\ - \ ou antenne SMUR" - examples: - - None - ressourceStructure: - type: string - title: Type de structure SMUR - x-health-only: false - x-cols: 6 - example: example.json#/context/ressourceStructure - description: "9 = Antenne SMUR, 0 = SMUR g\xE9n\xE9ral, 1 = SMUR p\xE9diatrique,\ - \ 2 = SMUR neonatal " - examples: - - None - additionalProperties: false - example: example.json#/context - examples: - - orgId: fr.health.samu440 - senderCaseId: DRFR15DDXAAJJJ00000 - creationDate: '2022-09-27T08:23:34+02:00' - decisionDate: '2022-09-27T08:23:34+02:00' - ressourceFinessLegal: None - ressourceFinessGeo: None - ressourceStructure: None - mission: - type: object - title: Missions - x-display: expansion-panels - x-health-only: false - required: - - TYPE - - ID - - NAME - - STATUS - properties: - TYPE: - type: string - title: Type - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/TYPE - description: "Le champ MISSION TYPE permet d'identifier l'effet \xE0 obtenir\ - \ souhait\xE9 \xE0 partir de la combinaison du code ACTOR et du code TYPE.\n\ - => La table de transcodage permettant d'identifier les concourants et\ - \ les effets \xE0 obtenir \xE0 partir d'un code EMSI est fournie en annexe\ - \ \"R\xE9f\xE9rentiel Effets \xE0 Obtenir - correspondance EMSI\".\nDans\ - \ le cadre d'une r\xE9ponse \xE0 DC :\n- reprendre le type de la DC si\ - \ le code r\xE9ponse choisi est vien \"VALIDE\"\nDans le cadre d'une mission\ - \ d\xE9crivant les op\xE9rations en cours :\n- reprendre la nomenclature\ - \ EMSI pour caract\xE9riser la mission en cours." - enum: - - SAV/ASC - - FR_MED/REGLTN - - GEN/SUPRTN - - SAV/AR/FR_MED - - SAV/AR/FR_PARAMD - - SAV - - GEN/TRNSPN - - SAV/SARCSL - - SAV/ASC/FR_PPL/LIFT - - GEN/RECVRY - - SAV/RHD - - FFST/FR_FIRE - - FSTT/RRHAZ/FR_CO - - CBRN/TSA - - INT/RECCE/FR_SMLL - - FSTT/TA - - SAV/AR/FR_PPL/GRP - - INT/RECCE - - GEN/TRNSPN/FR_SECNDRY - - OPR/LOG - - SAV/AR/FR_PPL/OBS - - FSTT/TA/FR_CLRACCSS - examples: - - SAV/ASC - FREETEXT: - type: string - title: Texte libre - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/FREETEXT - description: "Contient des commentaires relatifs aux objectifs et moyens\ - \ sollicit\xE9s dans le cadre de la demande de concours. Les \xE9quipements\ - \ suppl\xE9mentaires souhait\xE9s ou le nom/ pr\xE9nom des patients \xE0\ - \ prendre en charge peuvent \xEAtre explicitement indiqu\xE9s ici." - examples: - - "Besoin d'un grand v\xE9hicule car patients \xE0 prendre en charge volumineux.\ - \ Ne pas utiliser les gyrophares en approche" - ID: - type: string - title: Identifiant de la mission - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/ID - description: "Contient un identifiant de demande de concours unique. Cet\ - \ identifiant sera r\xE9utilisable par le partenaire pour r\xE9pondre\ - \ \xE0 cette demande.\nIdentifiant unique de la mission dans le syst\xE8\ - me du partenaire la conduisant." - examples: - - /FF#bb511708-b004-4d7e-8820-1d56c19f1823 - ORG_ID: - type: string - title: "Identifiant de l'organisation propri\xE9taire" - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/ORG_ID - description: "Indique l'organisation du partenaire concern\xE9 par la Demande\ - \ de Concours (voir DSF). Le code CRRA ou le code du SIS peut \xEAtre\ - \ utilis\xE9.\nIndique l'organisation du service r\xE9alisant la mission.\ - \ \nDans le cas d'une r\xE9ponse, c'est l'organisation du concourant qui\ - \ doit \xEAtre indiqu\xE9e.\nSe r\xE9f\xE9rer au DSF pour la structure\ - \ norm\xE9e des organisations\nLe format est le suivant {pays}.{domaine}.{organisation}.{structure\ - \ interne}*.{unit\xE9 fonctionnelle}*." - examples: - - fr.fire.cgo440 - NAME: - type: string - title: Nom de la mission - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/NAME - description: "Le nom de la mission est construit \xE0 partir de l'expression\ - \ r\xE9guli\xE8re suivante :\n\"#DEMANDE_CONCOURS#\"{libelle_cadre_conventionnel}\"\ - #\"{code_cadre_conventionnel}\"#\"\no\xF9 le code_cadre_conventionnel\ - \ est issue d'une nomenclature CISU-Cadre Conventionnel (A Venir)\nNB\ - \ : ce champ est d\xE9tourn\xE9 par rapport au standard EMSI pour permettre\ - \ l'expression d'une demande de concours et indiquer le cadre conventionnel\ - \ dans lequel elle est effectu\xE9e.\nPour une r\xE9ponse \xE0 demande\ - \ de concours :\n- Le nom de la mission est construit \xE0 partir de l'expression\ - \ r\xE9guli\xE8re suivante :\n\"#REPONSE_DEMANDE_CONCOURS#\"{code_reponse}\"\ - #\"\no\xF9 le code_reponse peut prendre les valeurs ACCEPTE, REFUS, PARTIELLE,\ - \ DIVERGENTE\n- sinon libre" - examples: - - '#DEMANDE_CONCOURS#CARENCE#Z.01.00.00#' - STATUS: - type: string - title: Status de la mission - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/STATUS - description: "Les valeurs possibles avec lesquelles valoriser ce champ sont\ - \ d\xE9taill\xE9es au sein d'une nomenclature EMSI\n- ABO : mission refus\xE9\ - e (ABOrted)\n- CANCLD : mission annul\xE9e (CANCeLeD)**\n- NST : mission\ - \ non d\xE9but\xE9 pour le m\xE9tier (Not STarted)\n- IPR : mission d\xE9\ - but\xE9 pour le m\xE9tier (In PRogress). la valeur IPR peut \xEAtre suivi\ - \ d'une valeur num\xE9rique de 00 \xE0 100 (IPRnn) sp\xE9cifiant le degr\xE9\ - \ d'avancement de la mission. Ce principe n'est pas retenu au sein de\ - \ NexSIS qui ne transmettra pas d'indication sur le degr\xE9 d'avancement\ - \ de la mission via ce champ.\n- PAU : \xE9v\xE9nement arr\xEAt\xE9, en\ - \ pause pour m\xE9tier, pas de besoin suppl\xE9mentaire\n- COM : \xE9\ - v\xE9nement termin\xE9 pour le m\xE9tier (COMplete)\nLe status de la mission\ - \ et celui des RESSOURCE associ\xE9es doit \xEAtre coh\xE9rent et transcodable\ - \ avec un status ANTARES (voir DSF)\n\nDans le cas d'un objet MISSION\ - \ g\xE9n\xE9rique de r\xE9ponse \xE0 demande de concours, le champ doit\ - \ \xEAtre valoris\xE9 \xE0 \"NST\"" - enum: - - ABO - - NST - - CANCLD - - COM - - IPR - - PAU - examples: - - IPR - START_TIME: - type: string - title: "D\xE9but de la mission" - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/START_TIME - description: "- Dans le cadre d'une r\xE9ponse \xE0 Demande de Concours\n\ - Horraire cible pour l'arriv\xE9e sur les lieux d\xE9crites (peut diverger\ - \ de l'horaire demand\xE9)\n- Dans le cadre d'une mission d\xE9crivant\ - \ les op\xE9rations en cours :\nHoraire effectif de d\xE9but de la mission" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:25:00+02:00' - END_TIME: - type: string - title: Fin de la mission - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/END_TIME - description: "A valoriser selon la cat\xE9gorie de mission :\n- Dans le\ - \ cadre d'une mission de r\xE9ponse \xE0 demande de concours : ne pas\ - \ renseigner\n- Dans le cadre d'une mission d\xE9crivant les op\xE9rations\ - \ en cours :\n Si c'est un d\xE9placement, l'heure d'arriv\xE9e, si c'est\ - \ une prise en charge patient/victime, la fin de la prise en charge." - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:55:00+02:00' - RESOURCE_ID: - type: array - x-health-only: false - items: - type: string - title: "Ressource engag\xE9e" - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/RESOURCE_ID/0 - description: "Liste des identifiants des ressources engag\xE9es dans la\ - \ mission (voir RESOURCE.ID)" - examples: - - 77_45102#VSAV 1 - PARENT_MISSION_ID: - type: array - x-health-only: false - items: - type: string - title: Missions parentes - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/PARENT_MISSION_ID/0 - description: "Dans le cadre d'une demande de concours, ne doit pas \xEA\ - tre renseign\xE9\nLa mission peut d\xE9j\xE0 \xEAtre rattach\xE9e \xE0\ - \ des missions filles mais leurs d\xE9tails ne doivent pas \xEAtre n\xE9\ - cessaires pour traiter la demande de concours dans le syst\xE8me du\ - \ partenaire.\nCf. DSF pour l'organisation liens entre MISSION (sous-section\ - \ \"D\xE9coupage de l'op\xE9ration en missions\")" - examples: - - None - CHILD_MISSION_ID: - type: array - x-health-only: false - items: - type: string - title: Missions filles - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/CHILD_MISSION_ID/0 - description: "Cf. DSF pour l'organisation liens entre MISSION (sous-section\ - \ \"D\xE9coupage de l'op\xE9ration en missions\")" - examples: - - None - MAIN_MISSION_ID: - type: string - title: Mission principale - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/MAIN_MISSION_ID - description: "- Dans le cas d'une mission g\xE9n\xE9rique de r\xE9ponse\ - \ \xE0 demande de concours, indiquer l'ID de la mission g\xE9n\xE9rique\ - \ utilis\xE9e pour mod\xE9liser la demande de concours\n- Dans le cas\ - \ d'une mission d\xE9clench\xE9e dans le cadre d'une r\xE9ponse \xE0 demande\ - \ de concours, l'ID de la mission g\xE9n\xE9rique de r\xE9ponse peut \xEA\ - tre utilis\xE9e dans ce champ pour indiquer qu'elle est li\xE9e \xE0 une\ - \ r\xE9ponse" - examples: - - /FF#bb511708-b004-4d7e-8820-1d56c19f1855 - POSITION: - $ref: '#/components/schemas/position' - PRIORITY: - type: string - title: "Priorit\xE9 de la mission" - x-health-only: false - x-cols: 6 - example: example.json#/MISSION/0/PRIORITY - description: "Indique une \xE9chelle de priorit\xE9 pour la demande de concours.\ - \ Dans le cadre du standard EMSI, cette \xE9chelle doit \xEAtre comprise\ - \ entre 0 et 5. Ce champ peut ne pas \xEAtre interpr\xE9t\xE9 ni aliment\xE9\ - \ par les LRMs.\nDans le cadre d'un \xE9change des op\xE9rations, optionnel.\ - \ Le champ peut ne pas \xEAtre \xE9mis ni interpr\xE9t\xE9." - enum: - - '0' - - '1' - - '2' - - '3' - - '4' - - '5' - examples: - - 5 - additionalProperties: false - example: example.json#/MISSION/0 - resource: - type: object - title: Ressource - x-display: expansion-panels - x-health-only: false - required: - - vehicleType - properties: - vehicleType: - type: string - title: Type de vecteur - x-health-only: false - x-cols: 6 - example: example.json#/resource/0/vehicleType - description: "A valoriser avec le type de vecteur mobilis\xE9 : cf. nomenclature\ - \ associ\xE9e" - enum: - - AASC - - AASC.VLSC - - AASC.VPSP - - AASC.AUTRESC - - AUTREVEC - - AUTREVEC.APIED - - AUTREVEC.AVION - - AUTREVEC.PERSO - - AUTREVEC.TAXI - - AUTREVEC.TRAIN - - AUTREVEC.TRANSP - - AUTREVEC.AUTRE - - AUTREVEC.AUTRETRA - - FSI - - FSI.HELIFSI - - FSI.VLFSI - - FSI.FFSI - - FSI.VHFSI - - LIB - - LIB.MEDV - - LIB.INF - - LIB.AUTREPRO - - SIS - - SIS.DRAGON - - SIS.AVSC - - SIS.FEUSIS - - SIS.GRIMP - - SIS.NAVISIS - - SIS.PCSIS - - SIS.SRSIS - - SIS.VCH - - SIS.VLCG - - SIS.VLISP - - SIS.VLMSP - - SIS.VLSIS - - SIS.VPL - - SIS.VPMA - - SIS.VR - - SIS.VSAV - - SIS.MOYSSE - - SIS.AUTRESIS - - SMUR - - SMUR.VLM - - SMUR.VL - - SMUR.PSM1 - - SMUR.PSM2 - - SMUR.PSM3 - - SMUR.PSMP - - SMUR.VPC - - SMUR.AR - - SMUR.AR-BAR - - SMUR.AR-PED - - SMUR.HELISMUR - - SMUR.HELISAN - - SMUR.AVSMUR - - SMUR.AVSAN - - SMUR.NAVISMUR - - TSU - - TSU.VSL - - TSU.AMB-GV - - TSU.AMB-PV - - TSU.AMB-BAR - - TSU.AMB - examples: - - VLM - name: - type: string - title: Nom du vecteur - x-health-only: false - x-cols: 6 - example: example.json#/resource/0/name - description: "A valoriser avec le nom donn\xE9 \xE0 la ressource par l\u2019\ - organisation d\u2019appartenance" - examples: - - SMUR 123 - team: - $ref: '#/components/schemas/team' - freetext: - type: array - x-health-only: false - items: - type: string - title: Commentaires - x-health-only: false - x-cols: 6 - example: example.json#/resource/0/freetext/0 - description: "Texte libre permettant de passer toute autre information\ - \ sur la ressource (\xE9quipements suppl\xE9mentaires / sp\xE9cifiques,\ - \ particularit\xE9s du vecteur, etc.)" - examples: - - "SMUR p\xE9diatrique" - additionalProperties: false - example: example.json#/resource/0 - link: - type: object - title: Lien - x-display: expansion-panels - x-health-only: false - required: - - ID - properties: - ID: - type: string - title: ID - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/LINK/0/ID - description: "A renseigner avec l'identifiant de l'organisation (champ organization\ - \ du message RC-EDA) suivi de l'identifiant local de l'affaire du partenaire\ - \ requ\xE9rant (champ senderCaseId du message RC-EDA).\n{pays}.{domaine}.{organisation}.{structure\ - \ interne}*.{unit\xE9 fonctionnelle}*.{num\xE9ro de dossier}" - examples: - - fr.health.samu440.DRFR15DDXAAJJJ0000 - LINK_ROLE: - type: string - title: "R\xF4le du lien" - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/LINK/0/LINK_ROLE - description: "Optionnel : \xE0 valoriser avec la constante \"SPRSDS\" pour\ - \ un message EMSI, incluant des missions RDC et/ou OPG et avec le libell\xE9\ - \ \"ADDSTO\" pour un message EMSI, incluant uniquement qu'une demande\ - \ de concours (EMSI-DC)." - enum: - - ADDSTO - - SPRSDS - examples: - - ADDSTO - additionalProperties: false - example: example.json#/CONTEXT/LINK/0 - examples: - - ID: fr.health.samu440.DRFR15DDXAAJJJ0000 - LINK_ROLE: ADDSTO - origin: - type: object - title: Origine - x-display: expansion-panels - x-health-only: false - required: [] - properties: - ORG_ID: - type: string - title: Origine ID - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/ORIGIN/ORG_ID - description: "Optionnel, identifiant du service \xE0 l'origine de l'EMSI\n\ - Se r\xE9f\xE9rer au DSF pour la structure norm\xE9e des organisations\n\ - Le format est le suivant {pays}.{domaine}.{organisation}.{structure interne}*.{unit\xE9\ - \ fonctionnelle}*." - examples: - - fr.health.samu440 - USER_ID: - type: string - title: ID d'utilisateur de l'origine - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/ORIGIN/USER_ID - description: "Optionnel, identifiant de l'op\xE9rateur du service \xE0 l'origine\ - \ de l'EMSI, qui g\xE8re l'op\xE9ration. \nCe champ peut \xEAtre diff\xE9\ - rent du calltakerId du message RC-EDA. " - examples: - - id1234 - NAME: - type: string - title: 'Nom Origine ' - x-health-only: false - x-cols: 6 - example: example.json#/CONTEXT/ORIGIN/NAME - description: "Optionnel, A constituer par le r\xE9dacteur pour \xEAtre intelligible\ - \ (exemple [structure] [code d\xE9partement]).\nCe champ n'est pas norm\xE9\ - \ obligatoirement. Chaque service d\xE9cide de la structure de son nom\ - \ d'origine." - examples: - - samu 44, cgo 77, codis 78, cdau 91, les pompiers du 23 - additionalProperties: false - example: example.json#/CONTEXT/ORIGIN - examples: - - ORG_ID: fr.health.samu440 - USER_ID: id1234 - NAME: samu 44, cgo 77, codis 78, cdau 91, les pompiers du 23 - etype: - type: object - title: "Type de l'\xE9v\xE9nement" - x-display: expansion-panels - x-health-only: false - required: - - CATEGORY - - ACTOR - - LOCTYPE - properties: - CATEGORY: - type: array - x-health-only: false - items: - type: string - title: "Cat\xE9gorie d'\xE9v\xE9nement" - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/ETYPE/CATEGORY/0 - description: "Le champ peut ne pas \xEAtre interpr\xE9t\xE9 ou renseign\xE9\ - \ avec une valeur comme 'UKN' = 'UNKOWN'\nA constituer depuis ref_mapping_EMSI_NEXSIS" - enum: - - ASB - - ASR - - EXP - - FIR - - FLD - - GND - - HLT - - POL - - PSW - - TRP - - ASB/ABV - - ASR/ATM - - ASR/HGT - - ASR/ICE - - ASR/MAR - - ASR/SIL - - ASR/TRP - - ASR/UDG - - ASR/WAT - - EXP/AER - - EXP/AMM - - EXP/BLEVE - - EXP/CHM - - EXP/CYL - - EXP/DST - - EXP/FRW - - EXP/GAS - - EXP/HGHFLM - - EXP/HPP - - EXP/IMP - - EXP/LPG - - EXP/NUK - - EXP/PRD - - EXP/UKN - - FIR/CLA - - FIR/CLB - - FIR/CLC - - FIR/CLD - - FIR/UKN - - FLD/FLS - - FLD/PLN - - FLD/TID - - GND/AVL - - GND/EQK - - GND/GEY - - GND/LDS - - GND/MUD - - GND/SUB - - GND/VUL - - HLT/EPI - - HLT/FMN - - HLT/NDS - - POL/BIO - - POL/CHM - - POL/NUK - - POL/RAD - - PSW/ALM - - PSW/ASY - - PSW/DEM - - PSW/IMM - - PSW/MEV - - PSW/MIS - - PSW/PKG - - PSW/PRO - - PSW/PRSUIT - - PSW/RIOT - - PSW/SUS - - PSW/WNG - - TRP/BRK - - TRP/COL - - TRP/CRS - examples: - - FIR - minItems: 1 - ACTOR: - type: array - x-health-only: false - items: - type: string - title: Acteurs - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/ETYPE/ACTOR/0 - description: "Dans de futures versions de NexSIS, les demandes de concours\ - \ seront diffus\xE9es \xE0 plusieurs partenaires. Seul le syst\xE8me\ - \ de la force concern\xE9e par la demande de concours devra r\xE9pondre\ - \ effectivement \xE0 la demande. Ce syst\xE8me de la force concern\xE9\ - e sera identifi\xE9 comme le \"concourant\" \xE0 la demande de concours.\n\ - Le libell\xE9 du champ ACTOR permet d'identifier le concourant souhait\xE9\ - \ dans la demande de concours. Pour les premi\xE8res impl\xE9mentations\ - \ du contrat d'interface 15-18, il n'y a pas de n\xE9cessit\xE9 pour\ - \ les syst\xE8mes r\xE9cepteurs de filtrer les demandes de concours\ - \ re\xE7ues via le Hub Sant\xE9.\nLe champ MISSION TYPE permet en compl\xE9\ - ment d'identifier l'effet \xE0 obtenir souhait\xE9 \xE0 partir de la\ - \ combinaison du code ACTOR et du code TYPE.\nLe transcodage entre ces\ - \ deux nomenclature est d\xE9crit dans l'annexe \"R\xE9f\xE9rentiel\ - \ Effets \xE0 Obtenir - correspondance EMSI\"" - enum: - - ANI - - BEV - - PPL - - VEH - - ANI/CON - - ANI/DEA - - ANI/DGR - - ANI/FRM - - ANI/HRD - - ANI/INJ - - ANI/LIV - - ANI/PET - - ANI/PRO - - ANI/SPC - - ANI/WLD - - BEV/ASR - - BEV/IND - - BEV/NRES - - BEV/OFF - - BEV/OTH - - BEV/RESDW - - BEV/RESIN - - BEV/RESINT - - BEV/RESOTH - - BEV/SHP - - PPL/1 - - PPL/ADU - - PPL/CHD - - PPL/CNT - - PPL/DED - - PPL/EVC - - PPL/GND - - PPL/GRP - - PPL/HST - - PPL/INT - - PPL/OTH - - PPL/PRS - - PPL/SNS - - PPL/VIO - - PPL/VLN - - PPL/WTN - - PPL/CHD/BAB - - PPL/CHD/CHILD - - PPL/CHD/INF - - PPL/CHD/YOUTH - - PPL/GND/FML - - PPL/GND/MAL - - PPL/GND/UND - - PPL/HST/PCF - - PPL/HST/SUI - - PPL/HST/THT - - PPL/HST/WPN - - PPL/PRS/CST - - PPL/PRS/ESC - - PPL/PRS/HGS - - PPL/SNS/ETH - - PPL/SNS/FOR - - PPL/SNS/LAN - - PPL/SNS/REL - - PPL/SNS/VIP - - PPL/VLN/BLD - - PPL/VLN/DEF - - PPL/VLN/DSB - - PPL/VLN/ELD - - PPL/VLN/INJ - - PPL/VLN/LDF - - PPL/VLN/OBS - - PPL/VLN/PAT - - PPL/VLN/PGN - - PPL/VLN/SLFPRS - - PPL/VLN/UNC - - VEH/AIR - - VEH/ANI - - VEH/BIC - - VEH/CAR - - VEH/EMG - - VEH/MBK - - VEH/MIL - - VEH/OTH - - VEH/TRK - - VEH/TRN - - VEH/VES - - VEH/AIR/ARM - - VEH/AIR/FLBA - - VEH/AIR/FRG - - VEH/AIR/FXBA - - VEH/AIR/GLD - - VEH/AIR/HEL - - VEH/AIR/HVY - - VEH/AIR/JET - - VEH/AIR/LGT - - VEH/AIR/MIL - - VEH/AIR/ORD - - VEH/AIR/OTH - - VEH/AIR/PAS - - VEH/AIR/PRBA - - VEH/AIR/PST - - VEH/AIR/RKT - - VEH/AIR/SEA - - VEH/AIR/SNO - - VEH/AIR/TNK - - VEH/AIR/UAV - - VEH/AIR/ULG - - VEH/OTH/HIL - - VEH/OTH/SNO - - VEH/TRK/ART - - VEH/TRK/EXC - - VEH/TRK/HZD - - VEH/TRK/NHZ - - VEH/TRK/NUK - - VEH/TRK/REF - - VEH/TRK/UND - - VEH/TRN/3RL - - VEH/TRN/DSL - - VEH/TRN/HZD - - VEH/TRN/LOC - - VEH/TRN/NHZ - - VEH/TRN/NUK - - VEH/TRN/OVH - - VEH/TRN/PAS - - VEH/TRN/REF - - VEH/TRN/STM - - VEH/TRN/TRM - - VEH/TRN/UDG - - VEH/TRN/UND - - VEH/TRN/VIP - - VEH/TRN/VLT - - VEH/VES/AMB - - VEH/VES/BOT - - VEH/VES/CNO - - VEH/VES/CRG - - VEH/VES/DSL - - VEH/VES/FLO - - VEH/VES/FRY - - VEH/VES/HOV - - VEH/VES/HZD - - VEH/VES/JSK - - VEH/VES/LEI - - VEH/VES/LIS - - VEH/VES/MIL - - VEH/VES/MPW - - VEH/VES/NHZ - - VEH/VES/NUK - - VEH/VES/PAS - - VEH/VES/POL - - VEH/VES/PTL - - VEH/VES/RSC - - VEH/VES/SAI - - VEH/VES/SBM - - VEH/VES/SINK - - VEH/VES/SPC - - VEH/VES/STE - - VEH/VES/SUNK - - VEH/VES/UNM - examples: - - PPL/GRP - minItems: 1 - LOCTYPE: - type: array - x-health-only: false - items: - type: string - title: Type de localisation - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/ETYPE/LOCTYPE/0 - description: "Le champ peut ne pas \xEAtre affich\xE9. Par d\xE9faut,\ - \ possible de renvoyer le code \"OTH\" = \"OTHER\"" - examples: - - URB/STRT - minItems: 1 - ENV: - type: string - title: Environnement - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/ETYPE/ENV - description: Optionnel - enum: - - CDIS - - DIS - - TER - - CDIS/RIOT - - DIS/CBRN - - DIS/ERTHQK - - DIS/FIRE - - DIS/FLOOD - - DIS/INDHAZ - - DIS/LNDSLD - - DIS/PWROUT - - DIS/RADCNT - - DIS/SNOW - - DIS/STCLPS - - DIS/STORM - - DIS/TRSPRT - - DIS/TSNAMI - examples: - - CDIS/RIOT - additionalProperties: false - example: example.json#/EVENT/ETYPE - reference: - $id: classpath:/json-schema/schema# - x-id: RC-REF.schema.json# - example: example.json# - type: object - title: reference - required: - - distributionID - properties: - distributionID: - type: string - title: "Identifiant du message r\xE9f\xE9renc\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/distributionID - description: "Identifiant unique du message r\xE9f\xE9renc\xE9" - examples: - - None - refused: - type: boolean - title: Indicateur de refus de message - x-health-only: false - x-cols: 6 - example: example.json#/refused - description: "Indique si le message acquitt\xE9 a \xE9t\xE9 refus\xE9" - examples: - - None - errorDistributionID: - type: string - title: "Identifiant du message d'erreur li\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/errorDistributionID - description: "Identifiant unique du message d'erreur li\xE9" - examples: - - None - additionalProperties: false - examples: - - distributionID: None - refused: None - errorDistributionID: None - casualties: - type: object - title: Victimes - x-display: expansion-panels - x-health-only: false - required: - - CONTEXT - properties: - CONTEXT: - type: string - title: Contexte - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/CASUALTIES/0/CONTEXT - description: "Le champ doit \xEAtre renseign\xE9 mais peut ne pas \xEAtre\ - \ interpr\xE9t\xE9" - examples: - - REQ_ACTION - DATIME: - type: string - title: Timestamp du contexte - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/CASUALTIES/0/DATIME - description: Optionnel - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:00:00+02:00' - DECONT: - type: integer - title: "D\xE9contamination" - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/CASUALTIES/0/DECONT - description: Optionnel - examples: - - 0 - TRIAGERED: - type: integer - title: Triage Rouge - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/CASUALTIES/0/TRIAGERED - description: Optionnel, Triage victime au sens EMSI - examples: - - 0 - TRIAGEYELLOW: - type: integer - title: Triage Jaune - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/CASUALTIES/0/TRIAGEYELLOW - description: Optionnel - examples: - - 1 - TRIAGEGREEN: - type: integer - title: Triage Vert - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/CASUALTIES/0/TRIAGEGREEN - description: Optionnel - examples: - - 0 - TRIAGEBLACK: - type: integer - title: Triage Noir - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/CASUALTIES/0/TRIAGEBLACK - description: Optionnel - examples: - - 0 - MISSING: - type: integer - title: Disparus - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/CASUALTIES/0/MISSING - description: Optionnel - examples: - - 0 - additionalProperties: false - example: example.json#/EVENT/CASUALTIES/0 - examples: - - CONTEXT: REQ_ACTION - DATIME: '2022-09-27T08:00:00+02:00' - DECONT: 0 - TRIAGERED: 0 - TRIAGEYELLOW: 1 - TRIAGEGREEN: 0 - TRIAGEBLACK: 0 - MISSING: 0 - evac: - type: object - title: "Evacu\xE9s" - x-display: expansion-panels - x-health-only: false - required: [] - properties: - DATIME: - type: string - title: timestamp - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/EVAC/0/DATIME - description: Optionnel - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T10:00:00+02:00' - DISPLACED: - type: integer - title: "d\xE9plac\xE9s" - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/EVAC/0/DISPLACED - description: Optionnel - examples: - - 0 - EVACUATED: - type: integer - title: "\xE9vacu\xE9s" - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/EVAC/0/EVACUATED - description: Optionnel - examples: - - 1 - additionalProperties: false - example: example.json#/EVENT/EVAC/0 - examples: - - DATIME: '2022-09-27T10:00:00+02:00' - DISPLACED: 0 - EVACUATED: 1 - egeo: - type: object - title: "Localisation de l'\xE9v\xE9nement" - x-display: expansion-panels - x-health-only: false - required: [] - properties: - DATIME: - type: string - title: "Date des derni\xE8res remont\xE9es de localisation" - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/EGEO/0/DATIME - description: "Optionnel\nLa localisation de l'affaire est transmise en amont\ - \ dans un message RC-EDA et le lieu souhait\xE9 pour l'intervention est\ - \ syst\xE9matiquement repr\xE9cis\xE9 dans un objet MISSION" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:26:00+02:00' - TYPE: - type: string - title: Type de localisation - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/EGEO/0/TYPE - description: "Optionnel\nLa localisation de l'affaire est transmise en amont\ - \ dans un message RC-EDA et le lieu souhait\xE9 pour l'intervention est\ - \ syst\xE9matiquement repr\xE9cis\xE9 dans un objet MISSION.\nA constituer\ - \ depuis ref_mapping_EMSI_EVENT_EGEO_TYPE_NEXSIS_\n/!\\ plusieurs champs\ - \ NEXSIS\n/!\\ plusieurs valeurs par champs d'o\xF9 un groupe \xE0\ - \ cr\xE9er par type diff\xE9rents" - enum: - - AIR - - CMB - - DGR - - FLAME - - GEN - - PLUME - - SMOKE - - VULN - - AIR/COR - - AIR/FLDZ - - AIR/LZ - - AIR/NOFLZN - - AIR/PZ - - AIR/UAVASP - - CMB/CZ - - CMB/DNGR - - CMB/EXTZN - - CMB/IMPTPT - - DGR/BIO - - DGR/BOMB - - DGR/CBRNHZ - - DGR/CBRNRSD - - DGR/CHM - - DGR/HZD - - DGR/MIND - - DGR/NGA - - DGR/NGACIV - - DGR/NUKCNL - - DGR/OBSGEN - - DGR/PRHBAR - - DGR/RAD - - DGR/RADCLD - - DGR/RSTR - - DGR/SGA - - DGR/SITKIL - - DGR/UNXOD - - GEN/AOR - - GEN/ASYGEN - - GEN/ASYSPL - - GEN/BDYOR - - GEN/BDYPOA - - GEN/BDYPT - - GEN/CKPGEN - - GEN/CNTPTL - - GEN/COLDZ - - GEN/COMCKP - - GEN/COMLOW - - GEN/COMMZ - - GEN/COMUP - - GEN/CONTAR - - GEN/CORDON - - GEN/CRDPNT - - GEN/DIVRT - - GEN/DROPPT - - GEN/ENTPT - - GEN/EVENT - - GEN/EXITPT - - GEN/FWCTPT - - GEN/HOTZ - - GEN/INCGRD - - GEN/LA - - GEN/LIMARE - - GEN/LOCAT - - GEN/MSR - - GEN/PSSGPT - - GEN/PTINT - - GEN/RCNSAR - - GEN/RNDZPT - - GEN/ROUTE - - GEN/SAFERT - - GEN/SAFZ - - GEN/SARPNT - - GEN/SEARAR - - GEN/SPRISK - - GEN/STRTPT - - GEN/SUPARE - - GEN/SUPPT - - GEN/TRSTRT - - GEN/WARMZ - examples: - - HLT - WEATHER: - type: array - x-health-only: false - items: - type: string - title: "Condition m\xE9t\xE9o" - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/EGEO/0/WEATHER/0 - description: "Optionnel\nLa localisation de l'affaire est transmise en\ - \ amont dans un message RC-EDA et le lieu souhait\xE9 pour l'intervention\ - \ est syst\xE9matiquement repr\xE9cis\xE9 dans un objet MISSION" - enum: - - HUM - - ICY - - TDS - - TMP - - VIS - - WDS - - WIN - - HUM/CORECT - - HUM/DRZLE - - HUM/FOG - - HUM/RAIN - - HUM/RAINSR - - HUM/THSTRN - - ICY/BLWSNW - - ICY/CLRICE - - ICY/CORECT - - ICY/FDRZLE - - ICY/FRAIN - - ICY/FRZFOG - - ICY/HAIL - - ICY/ICECRY - - ICY/ICEPLT - - ICY/MIXICE - - ICY/RIMICE - - ICY/SLEET - - ICY/SNOW - - ICY/SNWGRN - - ICY/SNWSHR - - TDS/CORECT - - TDS/LGTNNG - - TDS/THST - - VIS/CORECT - - VIS/HAZE - - VIS/SMOKE - - WIN/CORECT - - WIN/CYCL - - WIN/DSTDVL - - WIN/DSTSND - - WIN/DSTSTR - - WIN/FNLCLD - - WIN/HURR - - WIN/SNDSTR - - WIN/STORM - - WIN/TORN - - WIN/TRST - - WIN/TYPH - - WIN/WHIR - - WIN/WTRSPT - examples: - - HUM/RAIN - FREETEXT: - type: string - title: "Description de l'\xE9v\xE9nement" - x-health-only: false - x-cols: 6 - example: example.json#/EVENT/EGEO/0/FREETEXT - description: "Optionnel\nLa localisation de l'affaire est transmise en amont\ - \ dans un message RC-EDA et le lieu souhait\xE9 pour l'intervention est\ - \ syst\xE9matiquement repr\xE9cis\xE9 dans un objet MISSION" - examples: - - Un peu de pluie vers 8h - POSITION: - $ref: '#/components/schemas/position' - additionalProperties: false - example: example.json#/EVENT/EGEO/0 - position: - type: object - title: Position - x-display: expansion-panels - x-health-only: false - required: - - resourceId - - datetime - - coord - properties: - resourceId: - type: string - title: "Identifiant de la ressource partag\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/position/0/resourceId - description: "A valoriser avec l'identifiant partag\xE9 unique de la ressource\ - \ engag\xE9e, norm\xE9 comme suit :\n{orgID}.resource.{ID unique de la\ - \ ressource partag\xE9e}\nOU - uniquement dans le cas o\xF9 un ID unique\ - \ de ressource ne peut pas \xEAtre garanti par l'organisation propri\xE9\ - taire :\n{orgID}.resource.{sendercaseId}.{n\xB0 d\u2019ordre chronologique\ - \ de la ressource}" - pattern: ^([\w-]+\.){3,4}resource(\.[\w-]+){1,2}$ - examples: - - 'fr.health.samu770.resource.VLM250 - - fr.health.samu440.resource.DRFR15DDXAAJJJ0000.1' - datetime: - type: string - title: "Date et heure des derni\xE8res remont\xE9es d'informations de la\ - \ ressource" - x-health-only: false - x-cols: 6 - example: example.json#/position/0/datetime - description: "Date et heure de la derni\xE8re position connue" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2024-01-27T08:44:00+02:00' - receptionDatetime: - type: string - title: "Date et heure de la r\xE9ception de la derni\xE8re localisation" - x-health-only: false - x-cols: 6 - example: example.json#/position/0/receptionDatetime - description: "Date et heure de la r\xE9ception de la derni\xE8re position\ - \ connue dans le syst\xE8me de l'organisme" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2024-01-27T08:45:00+02:00' - coord: - type: array - items: - $ref: '#/components/schemas/coord' - minItems: 1 - speed: - type: number - title: Vitesse de la ressource - x-health-only: false - x-cols: 6 - example: example.json#/position/0/speed - description: "Vitesse de la ressource enregistr\xE9e, exprim\xE9e en km/h" - examples: - - 80 - cap: - type: string - title: Direction de la ressource - x-health-only: false - x-cols: 6 - example: example.json#/position/0/cap - description: "Direction de la ressource, exprim\xE9 en degr\xE9s" - examples: - - 96 - move: - type: string - title: Mouvement de la ressource - x-health-only: false - x-cols: 6 - example: example.json#/position/0/move - description: Indique si la ressource est en mouvement (MOBILE) ou non (STATIQUE) - enum: - - MOBILE - - STATIQUE - examples: - - MOBILE - engineOn: - type: boolean - title: Etat du moteur de la ressource - x-health-only: false - x-cols: 6 - example: example.json#/position/0/engineOn - description: "Indique si le moteur de la ressource est \xE9teint (FAUX)\ - \ ou allum\xE9/en marche (VRAI)" - examples: - - 1 - groundStatus: - type: boolean - title: "Etat de l'h\xE9licopt\xE8re" - x-health-only: false - x-cols: 6 - example: example.json#/position/0/groundStatus - description: "Indique si l'h\xE9licopt\xE8re est au sol (VRAI) ou en l'air\ - \ (FAUX)" - examples: - - 1 - status: - type: string - title: Statut de la ressource - x-health-only: false - x-cols: 6 - example: example.json#/position/0/status - description: "D\xE9finit le statut de disponibilit\xE9 d'une ressource.\n\ - - DISPONIBLE : Lorsque la ressource est disponible\n- INDISPONIBLE : Lorsque\ - \ la ressource n'est pas disponible, celle-ci peut \xEAtre engag\xE9e\ - \ ou en maintenance\n- INCONNU : Lorsque le status est inconnu" - enum: - - DISPONIBLE - - INDISPONIBLE - - INCONNU - examples: - - DISPONIBLE - engagedStatus: - type: string - title: "Statut de la ressource engag\xE9e" - x-health-only: false - x-cols: 6 - example: example.json#/position/0/engagedStatus - description: "Pr\xE9cise le statut d'une ressource qui est engag\xE9e sur\ - \ une mission" - enum: - - ALERTEE - - PARTIE - - ARRIVEE_LIEU - - TRANSPORT_DESTINATION - - ARRIVEE_DESTINATION - - FIN_MED - - QUITTE_DESTINATION - - RETOUR_DISPONIBLE - - RETOUR_INDISPONIBLE - - ARRIVEE_CENTRE - examples: - - PARTIE - additionalProperties: false - example: example.json#/position/0 - rtype: - type: object - title: Type de la ressource - x-display: expansion-panels - x-health-only: false - required: - - RCLASS - properties: - RCLASS: - type: array - x-health-only: false - items: - type: string - title: Classes de la ressource - x-health-only: false - x-cols: 6 - example: example.json#/RESOURCE/0/RTYPE/RCLASS/0 - description: "Permet d'indiquer la classe de l'objet RESOURCE. Plusieurs\ - \ niveau de d\xE9tails sont fournis par la nomenclature associ\xE9e.\n\ - Le premier niveau permet notamment de d\xE9crire la classe principale\ - \ de ressource :\n- Un v\xE9hicule,\n- Le personnel mobilis\xE9,\n-\ - \ Des consommables/ du mat\xE9riel,\n- Un lieu ou une organisation (non\ - \ utilis\xE9 pour le moment)\nVoir nomenclature EMSI associ\xE9e" - enum: - - FAC - - HUM - - MAT - - ORG - - FAC/BRIDGE - - FAC/BUILDN - - FAC/DEPOT - - FAC/NETWK - - FAC/OPR - - FAC/OTH - - FAC/WATFIR - - FAC/BRIDGE/MILVHL - - FAC/BUILDN/BARRCK - - FAC/BUILDN/BUNKER - - FAC/BUILDN/COB - - FAC/BUILDN/CTT - - FAC/BUILDN/DAM - - FAC/BUILDN/GYMNAS - - FAC/BUILDN/HANGAR - - FAC/BUILDN/HOUSE - - FAC/BUILDN/HUT - - FAC/BUILDN/INDINS - - FAC/BUILDN/OFFICE - - FAC/BUILDN/SCHOOL - - FAC/BUILDN/SHD - - FAC/BUILDN/SHLSUR - - FAC/BUILDN/SHLUND - - FAC/BUILDN/SHOP - - FAC/BUILDN/TOW - - FAC/BUILDN/TUN - - FAC/BUILDN/WALL - - FAC/BUILDN/WTW - - FAC/DEPOT/BIO - - FAC/DEPOT/CBRN - - FAC/DEPOT/CHM - - FAC/DEPOT/ENG - - FAC/DEPOT/MED - - FAC/DEPOT/MUN - - FAC/DEPOT/POL - - FAC/NETWK/ADSL - - FAC/NETWK/ATM - - FAC/NETWK/CTZALT - - FAC/NETWK/EMGNWK - - FAC/NETWK/GPRS - - FAC/NETWK/GSM - - FAC/NETWK/INTRAN - - FAC/NETWK/INTRNT - - FAC/NETWK/ISDN - - FAC/NETWK/LAN - - FAC/NETWK/PAMR - - FAC/NETWK/PDMR - - FAC/NETWK/PGSM - - FAC/NETWK/PSTN - - FAC/NETWK/RADEHF - - FAC/NETWK/RADHF - - FAC/NETWK/RADIO - - FAC/NETWK/RADLF - - FAC/NETWK/RADMF - - FAC/NETWK/RADSHF - - FAC/NETWK/RADUHF - - FAC/NETWK/RADVHF - - FAC/NETWK/RADVLF - - FAC/NETWK/RAYNET - - FAC/NETWK/RELAY - - FAC/NETWK/SDSL - - FAC/NETWK/TV - - FAC/NETWK/UMTS - - FAC/NETWK/VDSL - - FAC/NETWK/WAN - - FAC/NETWK/WIMAX - - FAC/NETWK/WLAN - - FAC/OPR/AMBFAC - - FAC/OPR/BDHOLD - - FAC/OPR/CAMP - - FAC/OPR/CASBUR - - FAC/OPR/CASCLR - - FAC/OPR/CASCOL - - FAC/OPR/CP - - FAC/OPR/CSCLPT - - FAC/OPR/CVCLPT - - FAC/OPR/DEBRDP - - FAC/OPR/DECONP - - FAC/OPR/DISBED - - FAC/OPR/DOCFAC - - FAC/OPR/EMMORT - - FAC/OPR/EQPOOL - - FAC/OPR/EVASSP - - FAC/OPR/FACAIR - - FAC/OPR/FACMIL - - FAC/OPR/FACNAV - - FAC/OPR/FAMFRD - - FAC/OPR/FIRFAC - - FAC/OPR/FSAAMM - - FAC/OPR/GERBED - - FAC/OPR/HOLD - - FAC/OPR/HPD - - FAC/OPR/HPT - - FAC/OPR/HSP - - FAC/OPR/HSPFLD - - FAC/OPR/HSPFLD2 - - FAC/OPR/IRM - - FAC/OPR/MARSHAL - - FAC/OPR/MATBED - - FAC/OPR/MEDBED - - FAC/OPR/MEDSPT - - FAC/OPR/MOBLCP - - FAC/OPR/OPCTCN - - FAC/OPR/PHARMA - - FAC/OPR/POLFAC - - FAC/OPR/POLPT - - FAC/OPR/REFARE - - FAC/OPR/RRRSPT - - FAC/OPR/SITLOG - - FAC/OPR/SPTARE - - FAC/OPR/SRVCNT - - FAC/OPR/STCOCN - - FAC/OPR/STCTCN - - FAC/OPR/TCCTCN - - FAC/OTH/ACCOM - - FAC/OTH/AIRFLD - - FAC/OTH/BANK - - FAC/OTH/BATH - - FAC/OTH/CAN - - FAC/OTH/CEM - - FAC/OTH/DCH - - FAC/OTH/ELCINS - - FAC/OTH/ELCSPL - - FAC/OTH/EQIMFT - - FAC/OTH/FACGOV - - FAC/OTH/FACPOW - - FAC/OTH/FACTEC - - FAC/OTH/FACTEL - - FAC/OTH/FACTRN - - FAC/OTH/FATST - - FAC/OTH/FERINS - - FAC/OTH/FHPT - - FAC/OTH/LGRLPT - - FAC/OTH/MAINTF - - FAC/OTH/PTL - - FAC/OTH/RES - - FAC/OTH/VST - - FAC/OTH/WATSPL - - FAC/OTH/WSHFAC - - FAC/WATFIR/FOMBLK - - FAC/WATFIR/HYDRNT - - FAC/WATFIR/TOWNMN - - HUM/CAPAB - - HUM/PERSON - - HUM/UNIT - - HUM/CAPAB/AMB - - HUM/CAPAB/FIR - - HUM/CAPAB/MED - - HUM/CAPAB/MIL - - HUM/CAPAB/POL - - HUM/CAPAB/TRP - - HUM/CAPAB/AMB/INCOFF - - HUM/CAPAB/AMB/PARAMD - - HUM/CAPAB/AMB/SAFOFF - - HUM/CAPAB/AMB/TECHNIC - - HUM/CAPAB/FIR/BACOFF - - HUM/CAPAB/FIR/BAEOFF - - HUM/CAPAB/FIR/COMOFF - - HUM/CAPAB/FIR/CONOFF - - HUM/CAPAB/FIR/DECOFF - - HUM/CAPAB/FIR/FINOFF - - HUM/CAPAB/FIR/FOMOFF - - HUM/CAPAB/FIR/HAZOFF - - HUM/CAPAB/FIR/INCCOM - - HUM/CAPAB/FIR/LIAOFF - - HUM/CAPAB/FIR/LOGOFF - - HUM/CAPAB/FIR/MAROFF - - HUM/CAPAB/FIR/MEDOFF - - HUM/CAPAB/FIR/OPRCOM - - HUM/CAPAB/FIR/SAFOFF - - HUM/CAPAB/FIR/SALOFF - - HUM/CAPAB/FIR/SECCOM - - HUM/CAPAB/FIR/STAOFF - - HUM/CAPAB/FIR/STRCOM - - HUM/CAPAB/FIR/TACCOM - - HUM/CAPAB/FIR/WATOFF - - HUM/CAPAB/MED/ANSPHY - - HUM/CAPAB/MED/DNTPHY - - HUM/CAPAB/MED/DOCTOR - - HUM/CAPAB/MED/GYNPHY - - HUM/CAPAB/MED/HDNPHY - - HUM/CAPAB/MED/INMPHY - - HUM/CAPAB/MED/NURSE - - HUM/CAPAB/MED/ORTPHY - - HUM/CAPAB/MED/OTHPHY - - HUM/CAPAB/MED/PRCPHY - - HUM/CAPAB/MED/PSYPHY - - HUM/CAPAB/MED/PTHPHY - - HUM/CAPAB/MED/RADPHY - - HUM/CAPAB/MED/SURPHY - - HUM/CAPAB/MIL/AUTCDR - - HUM/CAPAB/MIL/INTOFF - - HUM/CAPAB/MIL/LIAISN - - HUM/CAPAB/MIL/OF1 - - HUM/CAPAB/MIL/OF10 - - HUM/CAPAB/MIL/OF2 - - HUM/CAPAB/MIL/OF3 - - HUM/CAPAB/MIL/OF4 - - HUM/CAPAB/MIL/OF5 - - HUM/CAPAB/MIL/OF6 - - HUM/CAPAB/MIL/OF7 - - HUM/CAPAB/MIL/OF8 - - HUM/CAPAB/MIL/OF9 - - HUM/CAPAB/MIL/OFFR - - HUM/CAPAB/MIL/OPSOFF - - HUM/CAPAB/MIL/OR1 - - HUM/CAPAB/MIL/OR2 - - HUM/CAPAB/MIL/OR3 - - HUM/CAPAB/MIL/OR4 - - HUM/CAPAB/MIL/OR5 - - HUM/CAPAB/MIL/OR6 - - HUM/CAPAB/MIL/OR7 - - HUM/CAPAB/MIL/OR8 - - HUM/CAPAB/MIL/OR9 - - HUM/CAPAB/MIL/OTHR - - HUM/CAPAB/MIL/POC - - HUM/CAPAB/POL/BMBOFF - - HUM/CAPAB/POL/CASOFF - - HUM/CAPAB/POL/COFF - - HUM/CAPAB/POL/DETCTV - - HUM/CAPAB/POL/DIVER - - HUM/CAPAB/POL/MOM - - HUM/CAPAB/POL/PIO - - HUM/CAPAB/POL/PMR - - HUM/CAPAB/POL/RDINV - - HUM/CAPAB/POL/SCO - - HUM/CAPAB/POL/SIO - - HUM/CAPAB/POL/STTTK - - HUM/CAPAB/TRP/AIRFW - - HUM/CAPAB/TRP/AIRRW - - HUM/CAPAB/TRP/AMPH - - HUM/CAPAB/TRP/LNDRAI - - HUM/CAPAB/TRP/LNDWHL - - HUM/CAPAB/TRP/SEASS - - HUM/CAPAB/TRP/SEASUR - - HUM/PERSON/CFIROF - - HUM/PERSON/GOVEMP - - HUM/PERSON/INTLCT - - HUM/PERSON/JRNLST - - HUM/PERSON/MEDIA - - HUM/PERSON/NONGVE - - HUM/PERSON/POLCHF - - HUM/PERSON/VILELD - - HUM/PERSON/WRITER - - HUM/UNIT/AIRLSN - - HUM/UNIT/C2 - - HUM/UNIT/CBRN - - HUM/UNIT/CONST - - HUM/UNIT/CRSMAN - - HUM/UNIT/DISID - - HUM/UNIT/EMPOFF - - HUM/UNIT/ENG - - HUM/UNIT/ENVOFF - - HUM/UNIT/FINANC - - HUM/UNIT/FIXWNG - - HUM/UNIT/GUID - - HUM/UNIT/HELCTR - - HUM/UNIT/LAWENF - - HUM/UNIT/LNDSPT - - HUM/UNIT/LOG - - HUM/UNIT/MAGRSP - - HUM/UNIT/MAINT - - HUM/UNIT/MDSADV - - HUM/UNIT/MEDCL - - HUM/UNIT/MST - - HUM/UNIT/MSURTM - - HUM/UNIT/NAVAL - - HUM/UNIT/POL - - HUM/UNIT/PSYCH - - HUM/UNIT/RAILWY - - HUM/UNIT/RECCE - - HUM/UNIT/RELCHP - - HUM/UNIT/RIVERN - - HUM/UNIT/SAR - - HUM/UNIT/SECPOL - - HUM/UNIT/SHRPAT - - HUM/UNIT/SPECIA - - HUM/UNIT/SURG - - HUM/UNIT/TRAUMA - - HUM/UNIT/TRNPTN - - HUM/UNIT/VET - - HUM/UNIT/WLFCOR - - HUM/UNIT/POL/AIRSPT - - HUM/UNIT/POL/MNTPOL - - HUM/UNIT/POL/PUBORD - - HUM/UNIT/POL/RDSPT - - HUM/UNIT/POL/SPCLST - - HUM/UNIT/SAR/CSAR - - HUM/UNIT/SAR/MSAR - - HUM/UNIT/SAR/RSAR - - HUM/UNIT/SAR/RST - - HUM/UNIT/SAR/SSAR - - HUM/UNIT/SAR/USAR - - HUM/UNIT/SAR/WSAR - - HUM/UNIT/SAR/USAR/CANIN - - HUM/UNIT/SAR/USAR/DETEC - - MAT/CM - - MAT/EQ - - MAT/VEH - - MAT/CM/ABSAG - - MAT/CM/BIOAGN - - MAT/CM/CHMAGN - - MAT/CM/CON - - MAT/CM/EXTAG - - MAT/CM/FOO - - MAT/CM/FUEL - - MAT/CM/FUSE - - MAT/CM/LUBRIC - - MAT/CM/MATING - - MAT/CM/MEDICN - - MAT/CM/MEDSPL - - MAT/CM/MEGPHN - - MAT/CM/MONEY - - MAT/CM/OIL - - MAT/CM/PAINT - - MAT/CM/PAPER - - MAT/CM/PPE - - MAT/CM/RATCO - - MAT/CM/RATFR - - MAT/CM/RATTI - - MAT/CM/RETAG - - MAT/CM/TIMBER - - MAT/CM/UNIFRM - - MAT/CM/WIRE - - MAT/CM/WTREXT - - MAT/CM/WTRPOT - - MAT/CM/ABSAG/CHM - - MAT/CM/ABSAG/PHY - - MAT/CM/EXTAG/CO2 - - MAT/CM/EXTAG/DRYMIN - - MAT/CM/EXTAG/FATFIR - - MAT/CM/EXTAG/FOAM - - MAT/CM/EXTAG/HALON - - MAT/CM/EXTAG/INERT - - MAT/CM/EXTAG/METPWD - - MAT/CM/EXTAG/POWDER - - MAT/CM/EXTAG/FOAM/AFFF - - MAT/CM/EXTAG/FOAM/AFFFAR - - MAT/CM/EXTAG/FOAM/OTH - - MAT/CM/FUEL/AVNFU - - MAT/CM/FUEL/DIESEL - - MAT/CM/FUEL/KEROS - - MAT/CM/FUEL/LPG - - MAT/CM/FUEL/NATGAS - - MAT/CM/FUEL/PETROL - - MAT/CM/MEDICN/1STAID - - MAT/CM/MEDICN/AMPHTM - - MAT/CM/MEDICN/BLOOD - - MAT/CM/MEDICN/BNDDR - - MAT/CM/MEDICN/KTMINE - - MAT/CM/MEDICN/MORFIN - - MAT/CM/MEDICN/WTRMED - - MAT/CM/PPE/CBRNKIT - - MAT/CM/PPE/CLOTH - - MAT/CM/PPE/RESP - - MAT/CM/PPE/SURCOT - - MAT/CM/PPE/CLOTH/CHEMCL - - MAT/CM/PPE/CLOTH/FFCLO - - MAT/CM/PPE/CLOTH/FKIT - - MAT/CM/PPE/CLOTH/CHEMCL/CHEMB - - MAT/CM/PPE/CLOTH/CHEMCL/CHEMG - - MAT/CM/PPE/CLOTH/CHEMCL/GASSU - - MAT/CM/PPE/CLOTH/CHEMCL/LIQSU - - MAT/CM/PPE/CLOTH/CHEMCL/SPLASU - - MAT/CM/PPE/CLOTH/CHEMCL/TEMPSU - - MAT/EQ/CBRN - - MAT/EQ/ELC - - MAT/EQ/ENG - - MAT/EQ/OTH - - MAT/EQ/POLICE - - MAT/EQ/CBRN/ABICHM - - MAT/EQ/CBRN/ABIDET - - MAT/EQ/CBRN/ACHDET - - MAT/EQ/CBRN/ARDDET - - MAT/EQ/CBRN/BIOINT - - MAT/EQ/CBRN/BIOSTO - - MAT/EQ/CBRN/CBRNDEC - - MAT/EQ/CBRN/CBRNREC - - MAT/EQ/CBRN/CHMMON - - MAT/EQ/CBRN/MSSPTR - - MAT/EQ/CBRN/RDSPTR - - MAT/EQ/ELC/AMTRAD - - MAT/EQ/ELC/C3I - - MAT/EQ/ELC/COMSYS - - MAT/EQ/ELC/COMVEH - - MAT/EQ/ELC/MULTIRE - - MAT/EQ/ELC/NAV - - MAT/EQ/ELC/NAVRAD - - MAT/EQ/ELC/OTH - - MAT/EQ/ELC/POWGN - - MAT/EQ/ELC/RIDD - - MAT/EQ/ELC/SEN - - MAT/EQ/ELC/SONAR - - MAT/EQ/ELC/THIMC - - MAT/EQ/ELC/VIBRA - - MAT/EQ/ELC/COMSYS/MEGPHN - - MAT/EQ/ELC/COMSYS/PAGER - - MAT/EQ/ELC/COMSYS/PMRRDIO - - MAT/EQ/ELC/COMSYS/PUBADD - - MAT/EQ/ELC/COMSYS/RDBRCT - - MAT/EQ/ENG/BRIDGG - - MAT/EQ/ENG/CNSTVE - - MAT/EQ/ENG/CONST - - MAT/EQ/ENG/DOZER - - MAT/EQ/ENG/ERTHMV - - MAT/EQ/ENG/FIRFGT - - MAT/EQ/ENG/INTEL - - MAT/EQ/ENG/MINECL - - MAT/EQ/ENG/MINEDT - - MAT/EQ/ENG/MINEMR - - MAT/EQ/ENG/WPNPRT - - MAT/EQ/ENG/FIRFGT/BRHTAP - - MAT/EQ/ENG/FIRFGT/CEAR - - MAT/EQ/ENG/FIRFGT/CEC - - MAT/EQ/ENG/FIRFGT/CECH - - MAT/EQ/ENG/FIRFGT/CEEV - - MAT/EQ/ENG/FIRFGT/CEM - - MAT/EQ/ENG/FIRFGT/CEPC - - MAT/EQ/ENG/FIRFGT/CEPO - - MAT/EQ/ENG/FIRFGT/CEPOL - - MAT/EQ/ENG/FIRFGT/CER - - MAT/EQ/ENG/FIRFGT/CESD - - MAT/EQ/ENG/FIRFGT/GRDMON - - MAT/EQ/ENG/FIRFGT/MPR - - MAT/EQ/ENG/FIRFGT/RAR - - MAT/EQ/ENG/FIRFGT/UMIR - - MAT/EQ/ENG/FIRFGT/VAMUR - - MAT/EQ/ENG/INTEL/CAMERA - - MAT/EQ/ENG/INTEL/CCTVCM - - MAT/EQ/ENG/INTEL/CDVDOG - - MAT/EQ/ENG/INTEL/FSPDCM - - MAT/EQ/ENG/INTEL/FTFLCM - - MAT/EQ/ENG/INTEL/PSPDCM - - MAT/EQ/ENG/INTEL/TCKDOG - - MAT/EQ/ENG/WPNPRT/BALVST - - MAT/EQ/ENG/WPNPRT/BATON - - MAT/EQ/ENG/WPNPRT/ENFDOG - - MAT/EQ/ENG/WPNPRT/FIREARM - - MAT/EQ/ENG/WPNPRT/HNDCUF - - MAT/EQ/ENG/WPNPRT/OFFPRT - - MAT/EQ/ENG/WPNPRT/PRSCNT - - MAT/EQ/OTH/BLNKT - - MAT/EQ/OTH/CONTNR - - MAT/EQ/OTH/CUTING - - MAT/EQ/OTH/TANK - - MAT/EQ/OTH/TENT - - MAT/EQ/OTH/WATPUR - - MAT/EQ/POLICE/BRTEST - - MAT/EQ/POLICE/CONE - - MAT/EQ/POLICE/LAMP - - MAT/EQ/POLICE/STINGER - - MAT/EQ/POLICE/TORCH - - MAT/EQ/POLICE/UNFRMC - - MAT/EQ/POLICE/UNFRMN - - MAT/VEH/AIRCRF - - MAT/VEH/HORSE - - MAT/VEH/RAILVE - - MAT/VEH/ROADVE - - MAT/VEH/VESSEL - - MAT/VEH/AIRCRF/AIRTRS - - MAT/VEH/AIRCRF/CMDCTL - - MAT/VEH/AIRCRF/HEL - - MAT/VEH/AIRCRF/HELCMD - - MAT/VEH/AIRCRF/HELMED - - MAT/VEH/AIRCRF/HELREC - - MAT/VEH/AIRCRF/MEDEVC - - MAT/VEH/AIRCRF/PLANE - - MAT/VEH/AIRCRF/POLHEL - - MAT/VEH/AIRCRF/RECCE - - MAT/VEH/AIRCRF/SAR - - MAT/VEH/AIRCRF/TANKER - - MAT/VEH/AIRCRF/UAV - - MAT/VEH/RAILVE/LCMDSE - - MAT/VEH/RAILVE/LCMDSL - - MAT/VEH/RAILVE/LCMELC - - MAT/VEH/RAILVE/LCMSTM - - MAT/VEH/RAILVE/LCMTND - - MAT/VEH/RAILVE/LCMTVE - - MAT/VEH/RAILVE/RLDEQP - - MAT/VEH/RAILVE/RLLSTK - - MAT/VEH/RAILVE/TRAM - - MAT/VEH/RAILVE/WGNART - - MAT/VEH/RAILVE/WGNBRK - - MAT/VEH/RAILVE/WGNCAR - - MAT/VEH/RAILVE/WGNCRG - - MAT/VEH/RAILVE/WGNCSS - - MAT/VEH/RAILVE/WGNCTL - - MAT/VEH/RAILVE/WGNFLB - - MAT/VEH/RAILVE/WGNFUL - - MAT/VEH/RAILVE/WGNHPR - - MAT/VEH/RAILVE/WGNISO - - MAT/VEH/RAILVE/WGNLQD - - MAT/VEH/RAILVE/WGNMNR - - MAT/VEH/RAILVE/WGNOPC - - MAT/VEH/RAILVE/WGNPAS - - MAT/VEH/RAILVE/WGNRFG - - MAT/VEH/RAILVE/WGNRPR - - MAT/VEH/RAILVE/WGNSPP - - MAT/VEH/RAILVE/WGNWAT - - MAT/VEH/RAILVE/WGNWFL - - MAT/VEH/ROADVE/AMBUL - - MAT/VEH/ROADVE/AUTOMO - - MAT/VEH/ROADVE/BICYCL - - MAT/VEH/ROADVE/BUS - - MAT/VEH/ROADVE/CCTRCK - - MAT/VEH/ROADVE/CRANE - - MAT/VEH/ROADVE/FRFGTN - - MAT/VEH/ROADVE/HETVEH - - MAT/VEH/ROADVE/MAINT - - MAT/VEH/ROADVE/MHVEH - - MAT/VEH/ROADVE/MILUV - - MAT/VEH/ROADVE/MOTCYC - - MAT/VEH/ROADVE/POD - - MAT/VEH/ROADVE/POLICE - - MAT/VEH/ROADVE/SEMI - - MAT/VEH/ROADVE/TRACTR - - MAT/VEH/ROADVE/TRAILR - - MAT/VEH/ROADVE/TRLBUS - - MAT/VEH/ROADVE/TRUCK - - MAT/VEH/ROADVE/FRFGTN/AERIAL - - MAT/VEH/ROADVE/FRFGTN/BREATH - - MAT/VEH/ROADVE/FRFGTN/C3 - - MAT/VEH/ROADVE/FRFGTN/FRF - - MAT/VEH/ROADVE/FRFGTN/HAZMAT - - MAT/VEH/ROADVE/FRFGTN/OTHR - - MAT/VEH/ROADVE/FRFGTN/PERCAR - - MAT/VEH/ROADVE/FRFGTN/PUMP - - MAT/VEH/ROADVE/FRFGTN/RSC - - MAT/VEH/ROADVE/POLICE/COMLIA - - MAT/VEH/ROADVE/POLICE/DOGUNT - - MAT/VEH/ROADVE/POLICE/GENPUR - - MAT/VEH/ROADVE/POLICE/HAZMAT - - MAT/VEH/ROADVE/POLICE/MBIKE - - MAT/VEH/ROADVE/POLICE/PATROL - - MAT/VEH/ROADVE/POLICE/RSPONSE - - MAT/VEH/ROADVE/POLICE/TRAFFIC - - MAT/VEH/ROADVE/POLICE/TRANSIT - - MAT/VEH/ROADVE/POLICE/VAN - - MAT/VEH/VESSEL/AIRCAR - - MAT/VEH/VESSEL/AMPH - - MAT/VEH/VESSEL/BARGE - - MAT/VEH/VESSEL/BARSHP - - MAT/VEH/VESSEL/BRDGBT - - MAT/VEH/VESSEL/CNTSHP - - MAT/VEH/VESSEL/CSRSHP - - MAT/VEH/VESSEL/CSTSHP - - MAT/VEH/VESSEL/DPSMVS - - MAT/VEH/VESSEL/FERRY - - MAT/VEH/VESSEL/FIRBOT - - MAT/VEH/VESSEL/FLTCRN - - MAT/VEH/VESSEL/FLTDRG - - MAT/VEH/VESSEL/FLTDRY - - MAT/VEH/VESSEL/FREBLK - - MAT/VEH/VESSEL/FRELIQ - - MAT/VEH/VESSEL/HOSSHP - - MAT/VEH/VESSEL/HOVCRF - - MAT/VEH/VESSEL/ICEBRK - - MAT/VEH/VESSEL/LAUNCH - - MAT/VEH/VESSEL/LGHTER - - MAT/VEH/VESSEL/LNDCRF - - MAT/VEH/VESSEL/MERSHP - - MAT/VEH/VESSEL/MOBLS - - MAT/VEH/VESSEL/OILER - - MAT/VEH/VESSEL/PASSGR - - MAT/VEH/VESSEL/PATVES - - MAT/VEH/VESSEL/POLSPD - - MAT/VEH/VESSEL/PRV - - MAT/VEH/VESSEL/RAFT - - MAT/VEH/VESSEL/RPRSHP - - MAT/VEH/VESSEL/SAILVS - - MAT/VEH/VESSEL/SALSHP - - MAT/VEH/VESSEL/SMLLBO - - MAT/VEH/VESSEL/SUBMAR - - MAT/VEH/VESSEL/TANKER - - MAT/VEH/VESSEL/TENDER - - MAT/VEH/VESSEL/TUGBOT - - ORG/AMBUL - - ORG/CIVP - - ORG/COASTG - - ORG/DOCTOR - - ORG/ENVAGC - - ORG/FIRFS - - ORG/GEND - - ORG/HOSP - - ORG/IDCOM - - ORG/LCRESF - - ORG/LOCAUT - - ORG/MARAGC - - ORG/METAGC - - ORG/MIL - - ORG/NGO - - ORG/POLCNG - - ORG/POLICE - - ORG/RGRESF - - ORG/SPADPV - - ORG/TRS - - ORG/WATAGC + - C01.00.00 + - C01.01.00 + - C01.01.01 + - C01.01.02 + - C01.01.03 + - C01.01.04 + - C01.01.05 + - C01.01.06 + - C01.02.00 + - C01.02.01 + - C01.02.02 + - C01.03.00 + - C01.03.01 + - C01.03.02 + - C01.04.00 + - C01.04.01 + - C01.04.02 + - C01.04.03 + - C01.04.04 + - C01.05.00 + - C02.00.00 + - C02.01.00 + - C02.02.00 + - C02.03.00 + - C02.03.01 + - C02.03.02 + - C02.04.00 + - C02.04.01 + - C02.04.02 + - C02.04.03 + - C02.05.00 + - C02.05.01 + - C02.05.02 + - C02.05.03 + - C02.06.00 + - C02.06.01 + - C02.07.00 + - C02.07.01 + - C02.07.02 + - C02.07.03 + - C02.07.04 + - C02.07.05 + - C02.08.00 + - C02.08.01 + - C02.08.02 + - C02.08.03 + - C02.08.04 + - C02.08.05 + - C02.08.06 + - C02.08.07 + - C02.08.08 + - C02.09.00 + - C02.09.01 + - C02.09.02 + - C02.09.03 + - C02.09.04 + - C02.09.05 + - C02.09.06 + - C02.09.07 + - C02.10.00 + - C02.11.00 + - C02.11.01 + - C02.11.02 + - C02.12.00 + - C02.13.00 + - C02.13.01 + - C02.13.02 + - C02.13.03 + - C02.13.04 + - C02.13.05 + - C02.13.06 + - C02.13.07 + - C02.13.08 + - C02.14.00 + - C02.14.01 + - C02.14.02 + - C02.14.03 + - C02.14.04 + - C02.15.00 + - C02.15.01 + - C02.15.02 + - C02.15.03 + - C02.15.04 + - C02.15.05 + - C02.15.06 + - C02.16.00 + - C02.16.01 + - C02.16.02 + - C02.16.03 + - C03.00.00 + - C03.01.00 + - C03.01.01 + - C03.01.02 + - C03.01.03 + - C03.01.04 + - C03.01.05 + - C03.02.00 + - C03.02.01 + - C03.02.02 + - C03.02.03 + - C03.02.04 + - C03.02.05 + - C03.02.06 + - C03.02.07 + - C03.02.08 + - C03.02.09 + - C03.02.10 + - C03.02.11 + - C03.02.12 + - C03.02.13 + - C03.02.14 + - C03.02.15 + - C03.03.00 + - C03.03.01 + - C03.03.02 + - C03.04.00 + - C03.04.01 + - C03.04.02 + - C03.05.00 + - C03.06.00 + - C03.07.00 + - C03.08.00 + - C03.09.00 + - C03.10.00 + - C03.11.00 + - C03.12.00 + - C03.13.00 + - C03.14.00 + - C03.15.00 + - C04.00.00 + - C04.01.00 + - C04.01.01 + - C04.01.02 + - C04.01.03 + - C04.01.04 + - C04.01.05 + - C04.01.06 + - C04.01.07 + - C04.01.08 + - C04.01.09 + - C04.01.10 + - C04.01.11 + - C04.02.00 + - C04.02.01 + - C04.02.02 + - C04.02.03 + - C04.02.04 + - C04.03.00 + - C04.04.00 + - C04.05.00 + - C04.06.00 + - C04.07.00 + - C04.07.01 + - C04.07.02 + - C04.07.03 + - C04.07.04 + - C04.08.00 + - C04.09.00 + - C05.00.00 + - C05.00.01 + - C05.00.02 + - C05.00.03 + - C05.00.04 + - C05.00.05 + - C06.00.00 + - C06.01.00 + - C06.02.00 + - C06.03.00 + - C06.03.01 + - C06.03.02 + - C06.03.03 + - C06.03.04 + - C06.03.05 + - C06.03.06 + - C06.04.00 + - C06.04.01 + - C06.04.02 + - C06.05.00 + - C06.06.00 + - C06.06.01 + - C06.07.00 + - C06.07.01 + - C06.07.02 + - C06.08.00 + - C06.08.01 + - C06.08.02 + - C06.08.03 + - C06.08.04 + - C06.08.05 + - C06.08.06 + - C07.00.00 + - C07.01.00 + - C07.02.00 + - C07.03.00 + - C07.03.01 + - C07.03.02 + - C07.03.03 + - C07.03.04 + - C07.03.05 + - C07.04.00 + - C07.04.01 + - C07.04.02 + - C07.04.03 + - C07.04.04 + - C07.05.00 + - C07.06.00 + - C07.07.00 + - C07.07.01 + - C07.07.02 + - C07.07.03 + - C07.07.04 + - C07.07.05 + - C07.08.00 + - C07.08.01 + - C07.08.02 + - C07.08.03 + - C07.09.00 + - C07.09.01 + - C07.09.02 + - C07.09.03 + - C07.09.05 + - C07.10.00 + - C07.11.00 + - C07.12.00 + - C07.13.00 + - C07.13.01 + - C07.13.02 + - C07.13.03 + - C07.13.04 + - C07.13.05 + - C07.13.06 + - C07.13.07 + - C08.00.00 + - C08.01.00 + - C08.02.00 + - C08.03.00 + - C08.04.00 + - C08.05.00 + - C08.06.00 + - C08.07.00 + - C08.08.00 + - C08.08.01 + - C08.08.02 + - C08.09.00 + - C08.10.00 + - C08.10.01 + - C09.00.00 + - C09.01.00 + - C09.01.01 + - C09.01.02 + - C09.01.03 + - C09.01.04 + - C09.02.00 + - C09.03.00 + - C09.03.01 + - C09.04.00 + - C09.04.01 + - C09.04.02 + - C09.05.00 + - C09.06.00 + - C09.07.00 + - C09.08.00 + - C10.00.00 + - C10.01.00 + - C10.01.01 + - C10.01.02 + - C10.01.03 + - C10.01.04 + - C10.01.05 + - C10.01.06 + - C10.01.07 + - C10.01.08 + - C10.02.00 + - C10.02.01 + - C10.02.02 + - C10.03.00 + - C10.03.01 + - C10.03.02 + - C10.04.00 + - C10.04.01 + - C10.04.02 + - C10.05.00 + - C10.06.00 + - C10.07.00 + - C10.08.00 + - C11.00.00 + - C11.01.00 + - C11.02.00 + - C11.02.01 + - C11.02.02 + - C11.03.00 + - C11.03.01 + - C11.03.02 + - C11.04.00 + - C11.05.00 + - C11.05.01 + - C11.05.02 + - C11.05.03 + - C11.06.00 + examples: + - AVPAR + label: + type: string + title: "Libell\xE9 court" + x-health-only: false + x-cols: 6 + example: example.json#/regulation/whatsHappen/label + description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ + e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ + tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ + \ fourni avec le code." + examples: + - Accident routier + additionalProperties: false + example: example.json#/regulation/whatsHappen + examples: + - code: AVPAR + label: Accident routier + locationKind: + type: object + title: Type de lieu + x-display: expansion-panels + x-health-only: false + required: + - code + - label + properties: + code: + type: string + title: Code + x-health-only: false + x-cols: 6 + example: example.json#/qualification/locationKind/code + description: "A valoriser avec le code de la nomenclature associ\xE9e" + enum: + - L01.00.00 + - L01.01.00 + - L01.01.01 + - L01.01.02 + - L01.01.03 + - L01.01.04 + - L01.02.00 + - L01.02.01 + - L01.02.02 + - L01.02.03 + - L01.02.04 + - L01.02.05 + - L01.02.06 + - L01.02.07 + - L01.02.08 + - L01.02.09 + - L01.02.10 + - L01.02.11 + - L01.02.12 + - L01.03.00 + - L01.03.01 + - L01.03.02 + - L01.03.03 + - L01.04.00 + - L02.00.00 + - L02.01.00 + - L02.02.00 + - L02.02.01 + - L02.02.02 + - L02.02.03 + - L02.02.04 + - L02.02.05 + - L02.03.00 + - L02.03.01 + - L02.03.02 + - L02.03.03 + - L02.04.00 + - L02.05.00 + - L02.05.01 + - L02.05.02 + - L02.05.03 + - L02.05.04 + - L02.05.05 + - L02.05.06 + - L02.05.07 + - L02.05.08 + - L02.05.09 + - L02.05.10 + - L02.05.11 + - L02.05.12 + - L02.05.13 + - L02.05.14 + - L02.05.15 + - L02.05.16 + - L02.06.00 + - L02.06.01 + - L02.06.02 + - L02.06.03 + - L02.06.04 + - L02.06.05 + - L02.06.06 + - L02.06.07 + - L02.06.08 + - L02.07.00 + - L02.07.01 + - L02.07.02 + - L02.08.00 + - L03.00.00 + - L03.01.00 + - L03.02.00 + - L03.03.00 + - L03.04.00 + - L03.05.00 + - L04.00.00 + - L04.01.00 + - L04.02.00 + - L04.02.01 + - L04.02.02 + - L04.02.03 + - L04.03.00 + - L04.03.01 + - L04.03.02 + - L04.03.03 + - L04.04.00 + - L04.05.00 + - L04.06.00 + - L04.06.01 + - L04.06.02 + - L04.06.03 + - L04.06.04 + - L04.06.05 + - L04.07.00 + - L04.07.01 + - L04.07.02 + - L04.07.03 + - L04.08.00 + - L04.08.01 + - L04.08.02 + - L04.09.00 + - L04.09.01 + - L04.09.02 + - L04.10.00 + - L04.11.00 + - L04.11.01 + - L04.11.02 + - L04.11.03 + - L04.11.04 + - L04.12.00 + - L04.12.01 + - L04.12.02 + - L04.12.03 + - L04.12.04 + - L04.13.00 + - L04.13.01 + - L04.13.02 + - L04.13.03 + - L04.13.04 + - L04.14.00 + - L04.14.01 + - L04.14.02 + - L04.15.00 + - L04.16.00 + - L05.00.00 + - L05.01.00 + - L05.01.01 + - L05.01.02 + - L05.01.03 + - L05.01.04 + - L05.02.00 + - L05.02.01 + - L05.02.02 + - L05.02.03 + - L05.02.04 + - L05.03.00 + - L05.03.01 + - L05.03.02 + - L05.04.00 + - L05.04.01 + - L05.04.02 + - L05.04.03 + - L05.04.04 + - L05.04.05 + - L05.04.06 + - L05.05.00 + - L05.06.00 + - L05.07.00 + - L06.00.00 + - L06.01.00 + - L06.01.01 + - L06.01.02 + - L06.01.03 + - L06.01.04 + - L06.01.05 + - L06.01.06 + - L06.01.07 + - L06.01.08 + - L06.02.00 + - L06.03.00 + - L06.03.01 + - L06.03.02 + - L06.03.03 + - L06.03.04 + - L06.03.05 + - L06.04.00 + - L06.05.00 + - L06.05.01 + - L06.05.02 + - L06.06.00 + - L06.06.01 + - L06.06.02 + - L06.06.03 + - L06.06.04 + - L06.07.00 + - L06.07.01 + - L06.07.02 + - L07.00.00 + - L07.01.00 + - L07.01.01 + - L07.02.00 + examples: + - C07.13.02 + label: + type: string + title: "Libell\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/qualification/locationKind/label + description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ + e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ + tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ + \ fourni avec le code." + examples: + - "Rod\xE9o automobile" + additionalProperties: false + example: example.json#/qualification/locationKind + examples: + - code: C07.13.02 + label: "Rod\xE9o automobile" + healthMotive: + type: object + title: 'Motif de recours ' + x-display: expansion-panels + x-health-only: false + required: + - code + - label + properties: + code: + type: string + title: Code + x-health-only: false + x-cols: 6 + example: example.json#/regulation/healthMotive/code + description: "A valoriser avec le code de la nomenclature associ\xE9e." + enum: + - M01.00 + - M01.01 + - M01.02 + - M01.03 + - M02.00 + - M02.01 + - M02.02 + - M02.03 + - M02.04 + - M02.05 + - M02.06 + - M02.07 + - M02.08 + - M02.09 + - M02.10 + - M03.00 + - M03.01 + - M03.02 + - M03.03 + - M03.04 + - M03.05 + - M03.06 + - M03.07 + - M03.08 + - M03.09 + - M03.10 + - M03.11 + - M03.12 + - M03.13 + - M03.14 + - M03.15 + - M03.16 + - M03.17 + - M03.18 + - M03.19 + - M03.20 + - M03.21 + - M03.22 + - M04.00 + - M04.01 + - M04.02 + - M04.03 + - M04.04 + - M05.00 + - M05.01 + - M05.02 + - M06.00 + - M06.01 + - M06.02 + - M06.03 + - M06.04 + - M07.00 + examples: + - AVPAR + label: + type: string + title: "Libell\xE9 court" + x-health-only: false + x-cols: 6 + example: example.json#/regulation/healthMotive/label + description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ + e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ + tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ + \ fourni avec le code." + examples: + - Accident routier + additionalProperties: false + example: example.json#/regulation/healthMotive + examples: + - code: AVPAR + label: Accident routier + victims: + type: object + title: Patients-Victimes + x-display: expansion-panels + x-health-only: false + required: [] + properties: + count: + type: string + title: Nombre de patients-victimes + x-health-only: false + x-cols: 6 + example: example.json#/qualification/victims/count + description: "Indique le nombre de victimes selon la nomenclature du r\xE9\ + f\xE9rentiel CISU" + enum: + - '0' + - '1' + - PLUSIEURS + - BEAUCOUP + - INCONNU + - NON DEFINI + examples: + - PLUSIEURS + mainVictim: + type: string + title: Type du patient-victime principal + x-health-only: false + x-cols: 6 + example: example.json#/qualification/victims/mainVictim + description: "Identifie le type de la principale victime (celle dont l'\xE9\ + tat de sant\xE9 provoque le d\xE9clenchement de l'envoi des secours).\ + \ Prend les valeurs du r\xE9f\xE9rentiel CISU. Entre dans la d\xE9termination\ + \ des partenaires impliqu\xE9s par NexSIS." + enum: + - NOURRISSON + - ENFANT + - ADULTE + - SENIOR + - ENCEINTE + examples: + - ENFANT + freetext: + type: string + title: "Informations compl\xE9mentaires sur les patients-victimes" + x-health-only: false + x-cols: 6 + example: example.json#/qualification/victims/freetext + description: "Permet de compl\xE9menter en commentaire libre la(les) victime(s)" + examples: + - "Jeanne Dupont, 6 ans, ne r\xE9pond plus" + additionalProperties: false + example: example.json#/qualification/victims + examples: + - count: PLUSIEURS + mainVictim: ENFANT + freetext: "Jeanne Dupont, 6 ans, ne r\xE9pond plus" + externalLocationId: + type: object + title: Identifiant(s) du lieu + x-display: expansion-panels + x-health-only: false + required: + - source + - value + properties: + source: + type: string + title: Source / type d'identifiant + x-health-only: false + x-cols: 6 + example: example.json#/decision/0/destination/externalLocationId/0/source + description: "A valoriser avec le type de l'identifiant fourni. Cf nomenclature\ + \ associ\xE9e." + enum: + - FINESS_ADMINISTRATIF + - FINESS_GEOGRAPHIQUE + - SIREN + - SIRET + - APE_NAF + examples: + - "FINESS g\xE9ographique, FINESS administratif, SIREN, SIRET, APE, NAF" + value: + type: string + title: Identifiant + x-health-only: false + x-cols: 6 + example: example.json#/decision/0/destination/externalLocationId/0/value + description: "A valoriser avec l'identifiant en lui-m\xEAme" + pattern: ^([0-9A-Z]{2}0\d{5}\d|\d{9}|\d{14}|\d{4}[A-Za-z])$ + examples: + - "920000650\_" + additionalProperties: false + example: example.json#/decision/0/destination/externalLocationId/0 + examples: + - source: "FINESS g\xE9ographique, FINESS administratif, SIREN, SIRET, APE,\ + \ NAF" + value: "920000650\_" + detailedAddress: + type: object + title: Adresse de l'intervention + x-display: expansion-panels + x-health-only: false + required: + - inseeCode + - city + properties: + inseeCode: + type: string + title: Code INSEE de la commune + x-health-only: false + x-cols: 6 + example: example.json#/intervention/location/detailedAddress/inseeCode + description: "Code INSEE de la commune actuelle sur la base du Code Officiel\ + \ g\xE9ographique en vigueur. Obligatoire si le nom de la commune est\ + \ renseign\xE9.\nLe Code INSEE peut \xE9galement pr\xE9cis\xE9 le pays\ + \ d'intervention, si \xE9tranger. " + pattern: ^[0-9]{5}$ + examples: + - 92300 + city: + type: string + title: Nom de la commune + x-health-only: false + x-cols: 6 + example: example.json#/intervention/location/detailedAddress/city + description: Nom officiel de la commune actuelle + examples: + - Levallois-Perret + additionalProperties: false + example: example.json#/intervention/location/detailedAddress + examples: + - inseeCode: 92300 + city: Levallois-Perret + city: + type: object + title: "D\xE9tails de la commune" + x-display: expansion-panels + x-health-only: false + required: [] + properties: + name: + type: string + title: Nom de la commune + x-health-only: false + x-cols: 6 + example: example.json#/location/city/name + description: A valoriser avec le nom officiel de la commune + examples: + - Lille + inseeCode: + type: string + title: Code INSEE de la commune + x-health-only: false + x-cols: 6 + example: example.json#/location/city/inseeCode + description: "A valoriser avec le code INSEE de la commune actuelle sur\ + \ la base du Code Officiel g\xE9ographique en vigueur. \nLa valeur du\ + \ code INSEE est obligatoire d\xE8s que le nom de la commune est renseign\xE9\ + \ (city.name)." + pattern: ^[0-9]{5}$ + examples: + - 59350 + additionalProperties: false + example: example.json#/location/city + examples: + - name: Lille + inseeCode: 59350 + access: + type: object + title: "D\xE9tails d'acc\xE8s" + x-display: expansion-panels + x-health-only: false + required: [] + properties: + floor: + type: string + title: Etage + x-health-only: false + x-cols: 6 + example: example.json#/location/access/floor + description: "A valoriser avec le num\xE9ro ou nom de l'\xE9tage " + examples: + - RDC + roomNumber: + type: string + title: "Num\xE9ro de porte" + x-health-only: false + x-cols: 6 + example: example.json#/location/access/roomNumber + description: "A valoriser avec le num\xE9ro d'appartement, de chambre, de\ + \ bureau" + examples: + - A16 + interphone: + type: string + title: Interphone + x-health-only: false + x-cols: 6 + example: example.json#/location/access/interphone + description: "A valoriser avec les informations n\xE9cessaires \xE0 l'identification\ + \ de l'interphone (num\xE9ro, nom)" + examples: + - Dupont + accessCode: + type: array + x-health-only: false + items: + type: string + title: Digicode + x-health-only: false + x-cols: 6 + example: example.json#/location/access/accessCode/0 + description: "A valoriser avec le ou les digicodes, dans l'ordre de progression\ + \ dans le b\xE2timent." + examples: + - 1234A + elevator: + type: string + title: Ascenseur/escalier + x-health-only: false + x-cols: 6 + example: example.json#/location/access/elevator + description: "A valoriser avec le nom ou le num\xE9ro de l'ascenseur ou\ + \ de la cage d'escalier " + examples: + - C3 + buildingName: + type: string + title: "B\xE2timent" + x-health-only: false + x-cols: 6 + example: example.json#/location/access/buildingName + description: "A valoriser avec le nom du b\xE2timent" + examples: + - Batiment B + entrance: + type: string + title: "Entr\xE9e" + x-health-only: false + x-cols: 6 + example: example.json#/location/access/entrance + description: "A valoriser avec le nom de l'entr\xE9e" + examples: + - "A valoriser avec le nom de l'entr\xE9e" + entity: + type: string + title: Service + x-health-only: false + x-cols: 6 + example: example.json#/location/access/entity + description: "A valoriser avec le nom du service concern\xE9 au sein de\ + \ l'\xE9tablissement : infirmerie, service finance, service comptabilit\xE9\ + ." + examples: + - Infirmerie + phoneNumber: + type: string + title: "N\xB0 de t\xE9l\xE9phone du lieu" + x-health-only: false + x-cols: 6 + example: example.json#/location/access/phoneNumber + description: "A valoriser avec le num\xE9ro de t\xE9l\xE9phone du lieu de\ + \ l'intervention, par exemple : t\xE9l\xE9phone du secr\xE9tariat, t\xE9\ + l\xE9phone du service administratif ou se trouve le patient/ la victime.\n\ + Le format attendu est le suivant : +{indicatif pays}{num\xE9ro de t\xE9\ + l\xE9phone}" + pattern: ^\+\d{5,18}$ + examples: + - '+33123452323' + additionalProperties: false + example: example.json#/location/access + geometry: + type: object + title: "G\xE9ometrie associ\xE9e" + x-display: expansion-panels + x-health-only: false + required: + - datetime + properties: + datetime: + type: string + title: "Heure du dernier relev\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/location/geometry/datetime + description: "A valoriser avec le groupe date heure de renseignement des\ + \ coordonn\xE9es du point cl\xE9 de la localisation. \nPermet de conna\xEE\ + tre la fra\xEEcheur et donc la pertinence des informations pour intervenir." + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:23:34+02:00' + point: + $ref: '#/components/schemas/point' + additionalProperties: false + example: example.json#/location/geometry + externalInfo: + type: object + title: 'Informations exterieures ' + x-display: expansion-panels + x-health-only: false + required: + - URI + properties: + FREETEXT: + type: string + title: 'Texte libre ' + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/EXTERNAL_INFO/0/FREETEXT + description: Optionnel + examples: + - None + URI: + type: string + title: "URI informations ext\xE9rieures" + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/EXTERNAL_INFO/0/URI + description: Optionnel + examples: + - 289d6939-d225-4c71-9a56-68c03ada2f5e + TYPE: + type: string + title: Type + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/EXTERNAL_INFO/0/TYPE + description: Optionnel + enum: + - MANUAL + - MAP + - OTHER + - PHOTO + - WEBSIT + examples: + - SPRSDS + additionalProperties: false + example: example.json#/CONTEXT/EXTERNAL_INFO/0 + examples: + - FREETEXT: None + URI: 289d6939-d225-4c71-9a56-68c03ada2f5e + TYPE: SPRSDS + wayName: + type: object + title: Type et nom de voie + x-display: expansion-panels + x-health-only: false + required: + - complete + properties: + complete: + type: string + title: Type et nom + x-health-only: false + x-cols: 6 + example: example.json#/location/detailedAddress/wayName/complete + description: "A valoriser avec le type et le nom de la voie.\nSi les attributs\ + \ \"type\" et \"name\" de \"wayName\" sont \xE9galement renseign\xE9s,\ + \ alors \"complete\" doit \xEAtre valoris\xE9 ainsi : \"{type} {nom}\"\ + ." + examples: + - Boulevard du Montparnasse + type: + type: string + title: Type + x-health-only: false + x-cols: 6 + example: example.json#/location/detailedAddress/wayName/type + description: A valoriser avec le type de la voie + examples: + - Boulevard + name: + type: string + title: Nom + x-health-only: false + x-cols: 6 + example: example.json#/location/detailedAddress/wayName/name + description: A valoriser avec le nom de la voie + examples: + - du Montparnasse + additionalProperties: false + example: example.json#/location/detailedAddress/wayName + examples: + - complete: Boulevard du Montparnasse + type: Boulevard + name: du Montparnasse + point: + type: object + title: 'Point ' + x-display: expansion-panels + x-health-only: false + required: + - coord + properties: + coord: + $ref: '#/components/schemas/coord' + isAml: + type: boolean + title: Dispositif AML + x-health-only: false + x-cols: 6 + example: example.json#/location/geometry/point/isAml + description: "Attribut qui permet de pr\xE9ciser si les coordonn\xE9es fournies\ + \ proviennent du dispositif AML (Advanced Mobile Location) - TRUE - ou\ + \ non - FALSE. " + examples: + - 'TRUE' + additionalProperties: false + example: example.json#/location/geometry/point + coord: + type: object + title: "Coordonn\xE9es" + x-display: expansion-panels + x-health-only: false + required: + - lat + - lon + properties: + lat: + type: number + title: 'Latitude ' + x-health-only: false + x-cols: 6 + example: example.json#/position/0/coord/0/lat + description: "Derni\xE8re coordonn\xE9e x connue de la ressource, entre\ + \ \u221290 and +90" + examples: + - '47.221866' + lon: + type: number + title: Longitude + x-health-only: false + x-cols: 6 + example: example.json#/position/0/coord/0/lon + description: "Derni\xE8re coordonn\xE9e y connue de la ressource, entre\ + \ \u2212180 and +180" + examples: + - '-1.575807' + height: + type: number + title: Altitude + x-health-only: false + x-cols: 6 + example: example.json#/position/0/coord/0/height + description: "Derni\xE8re coordonn\xE9e z connue de la ressource, en m\xE8\ + tres sans bornes" + examples: + - 1 + additionalProperties: false + example: example.json#/position/0/coord/0 + examples: + - lat: '47.221866' + lon: '-1.575807' + height: 1 + notes: + type: object + title: "Informations compl\xE9mentaires sur l'alerte" + x-display: expansion-panels + x-health-only: false + required: [] + properties: + creation: + type: string + title: "Date et heure de l'information compl\xE9mentaire" + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/notes/0/creation + description: "A valoriser avec le groupe date heure de cr\xE9ation de l'information\ + \ compl\xE9mentaire" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - None + freetext: + type: string + title: Commentaire/Observations + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/notes/0/freetext + description: "A valoriser avec un texte libre contenant les indications\ + \ compl\xE9mentaires renseign\xE9es sur l'alerte/appel.\n\nSp\xE9cificit\xE9\ + s 15-15 : cet attribut ne doit pas \xEAtre valoris\xE9 avec des notes\ + \ \xE0 caract\xE8re m\xE9dical, qui serait li\xE9e \xE0 un interrogatoire\ + \ ARM ou m\xE9decin, ou \xE0 un patient en particulier" + examples: + - "Accident de bricolage, accident domestique, d\xE9clenchement t\xE9l\xE9\ + alarme, voisine sur les lieux" + additionalProperties: false + example: example.json#/initialAlert/notes/0 + examples: + - creation: None + freetext: "Accident de bricolage, accident domestique, d\xE9clenchement t\xE9\ + l\xE9alarme, voisine sur les lieux" + caller: + type: object + title: "Requ\xE9rant" + x-display: expansion-panels + x-health-only: false + required: + - callerContact + properties: + callerContact: + $ref: '#/components/schemas/contact' + callbackContact: + $ref: '#/components/schemas/contact' + language: + type: string + title: "Langue parl\xE9e" + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/caller/language + description: "A valoriser avec la langue parl\xE9e par le requ\xE9rant.\ + \ \ncf.nomenclature associ\xE9e." + enum: + - aa + - ab + - ae + - af + - ak + - am + - an + - ar + - as + - av + - ay + - az + - ba + - be + - bg + - bi + - bm + - bn + - bo + - br + - bs + - ca + - ce + - ch + - co + - cr + - cs + - cu + - cv + - cy + - da + - de + - dv + - dz + - ee + - el + - en + - eo + - es + - et + - eu + - fa + - ff + - fi + - fj + - fo + - fr + - fy + - ga + - gd + - gl + - gn + - gu + - gv + - ha + - he + - hi + - ho + - hr + - ht + - hu + - hy + - hz + - ia + - id + - ie + - ig + - ii + - ik + - io + - is + - it + - iu + - ja + - jv + - ka + - kg + - ki + - kj + - kk + - kl + - km + - kn + - ko + - kr + - ks + - ku + - kv + - kw + - ky + - la + - lb + - lg + - li + - ln + - lo + - lt + - lu + - lv + - mg + - mh + - mi + - mk + - ml + - mn + - mr + - ms + - mt + - my + - na + - nb + - nd + - ne + - ng + - nl + - nn + - 'no' + - nr + - nv + - ny + - oc + - oj + - om + - or + - os + - pa + - pi + - pl + - ps + - pt + - qu + - rm + - rn + - ro + - ru + - rw + - sa + - sc + - sd + - se + - sg + - si + - sk + - sl + - sm + - sn + - so + - sq + - sr + - ss + - st + - su + - sv + - sw + - ta + - te + - tg + - th + - ti + - tk + - tl + - tn + - to + - tr + - ts + - tt + - tw + - ty + - ug + - uk + - ur + - uz + - ve + - vi + - vo + - wa + - wo + - xh + - yi + - yo + - za + - zh + - zu + examples: + - FR + type: + type: string + title: "Type de requ\xE9rant" + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/caller/type + description: "A valoriser avec la relation du requ\xE9rant avec l'incident\ + \ / le patient / la victime.\ncf. nomenclature associ\xE9e." + enum: + - SUJET + - FAMILLE + - TIERS + - POMPIER + - AMBULANC + - AMBULANC.AASC + - AMBULANC.AUTRESEC + - SECOUR + - MED + - MED.MEDSOS + - MED.MRL + - MED.EFFML + - SANTE + - SANTE.INF + - SANTE.AIDESOIN + - SANTE.SF + - SANTE.AIDEDOM + - SANTE.PHARMA + - SANTE.DENTISTE + - SANTE.LABO + - FDO-MILI + - FDO-MILI.POL + - FDO-MILI.GENDARM + - FDO-MILI.MILI + - ADM-TUTL + - VIP + - OBJCONNC + - AUTRE + - INCONNU + examples: + - FAMILLE, TIERS + communication: + type: string + title: "Difficult\xE9 de communication" + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/caller/communication + description: "A valoriser avec la nature des \xE9ventuelles difficult\xE9\ + s de communication rencontr\xE9es par le requ\xE9rant. \ncf.nomenclature\ + \ associ\xE9e." + enum: + - AUCUNE + - MUET + - VISION + - LANGUE + - PANIQUE + - HOSTILE + - AGITE + - AUTRE + - IMPOSS + examples: + - "Malentendant, aucune difficult\xE9 de communication" + freetext: + type: string + title: "Informations compl\xE9mentaires sur le requ\xE9rant" + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/caller/freetext + description: "Champ libre qui permet de compl\xE9ter les informations sp\xE9\ + cifiquement li\xE9es au requ\xE9rant." + examples: + - "t\xE9moin de l'accident" + detailedName: + $ref: '#/components/schemas/detailedName' + additionalProperties: false + example: example.json#/initialAlert/caller + callTaker: + type: object + title: Agent + x-display: expansion-panels + x-health-only: false + required: + - organization + - controlRoom + properties: + organization: + type: string + title: Service d'urgence + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/callTaker/organization + description: "D\xE9crit la structure ou le service \xE0 laquelle est rattach\xE9\ + e l'agent (en fonction du niveau de pr\xE9cision disponible).\nSe r\xE9\ + f\xE9rer au DSF pour la structure norm\xE9e des organisations.\nLe format\ + \ est le suivant {pays}.{domaine}.{organisation}.{structure interne}*.{unit\xE9\ + \ fonctionnelle}*." + examples: + - fr.health.samu440 + controlRoom: + type: string + title: Centre d'appels + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/callTaker/controlRoom + description: "D\xE9crit le centre d'appel auquel est rattach\xE9 l'agent" + examples: + - CGA, CGO 21, CRRA 44, ... + role: + type: string + title: "R\xF4le agent" + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/callTaker/role + description: "D\xE9crit le r\xF4le de l'agent au sein du service selon la\ + \ nomenclature PERSO (nomenclature SI-SAMU)" + examples: + - ARM + calltakerContact: + $ref: '#/components/schemas/contact' + calltakerId: + type: string + title: ID de l'agent + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/callTaker/calltakerId + description: "Identifiant unique de l'op\xE9rateur ayant trait\xE9 l'alerte\ + \ (peut \xEAtre un identifiant technique, un num\xE9ro de carte CPS etc)" + examples: + - id1234 + additionalProperties: false + example: example.json#/initialAlert/callTaker + examples: + - organization: fr.health.samu440 + controlRoom: CGA, CGO 21, CRRA 44, ... + role: ARM + calltakerContact: {} + calltakerId: id1234 + attachment: + type: object + title: "Pi\xE8ces jointes" + x-display: expansion-panels + x-health-only: false + required: + - URI + properties: + description: + type: string + title: Type ou description pj + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/attachment/0/description + description: "D\xE9crit la ressource en pr\xE9cisant le type et le contenu,\ + \ tels que \xABcarte\xBB ou \xABphoto\xBB" + examples: + - "photo, carte, \u2026" + mimeType: + type: string + title: Type MIME + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/attachment/0/mimeType + description: "L'identifiant du type MIME de contenu et sous-type d\xE9crivant\ + \ la ressource" + examples: + - "PDF, XML, JPEG, \u2026" + size: + type: integer + title: Taille approximative + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/attachment/0/size + description: Taille approximative de la ressource en kO + examples: + - "1235, 35, \u2026" + URI: + type: string + title: URI + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/attachment/0/URI + description: "Une URI, g\xE9n\xE9ralement une URL, qui permet d'atteindre\ + \ la ressource sur Internet ou sur un r\xE9seau priv\xE9\nNous sugg\xE9\ + rons d'employer le format suivant de regex (https?|ftp|file):\\/\\/([\\\ + w-]+(\\.[\\w-]+)*)(\\/[\\w\\-\\.]*)*\\/?(\\?[^\\s]*)?" + examples: + - https://hub.esante.gouv.fr/resourceExample + derefURI: + type: string + title: URI base 64 + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/attachment/0/derefURI + description: "Peut \xEAtre utilis\xE9 \xE0 la place de l'\xE9l\xE9ment 'URI'\ + \ pour envoyer la ressource encod\xE9e en base64 pour \xE9viter des probl\xE8\ + mes de transcodage (sur des double quotes qui casseraient le message,\ + \ \u2026)" + examples: + - None + digest: + type: string + title: Hash + x-health-only: false + x-cols: 6 + example: example.json#/initialAlert/attachment/0/digest + description: "Hash de la ressource pour confirmer la r\xE9ception de la\ + \ bonne ressource\nLa ressource est hash\xE9e avec le protocole SHA-256" + examples: + - None + additionalProperties: false + example: example.json#/initialAlert/attachment/0 + examples: + - description: "photo, carte, \u2026" + mimeType: "PDF, XML, JPEG, \u2026" + size: "1235, 35, \u2026" + URI: https://hub.esante.gouv.fr/resourceExample + derefURI: None + digest: None + contact: + type: object + title: Contacts + x-display: expansion-panels + x-health-only: false + required: [] + properties: + type: + type: string + title: Type de contact + x-health-only: false + x-cols: 6 + example: example.json#/resource/0/contacts/0/type + description: "Type de contact, voir \xE9num\xE9ration associ\xE9e\n1. PMRADD\ + \ (si RFGI disponible)\n2. PHNADD pour t\xE9l\xE9phonie" + enum: + - PMRADD + - PHNADD + examples: + - PHNADD + details: + type: string + title: "D\xE9tails de contact" + x-health-only: false + x-cols: 6 + example: example.json#/resource/0/contacts/0/details + description: "1. RFGI (si RFGI disponible)\n2. Num\xE9ro de t\xE9l\xE9phone" + examples: + - '0612342536' + additionalProperties: false + example: example.json#/resource/0/contacts/0 + examples: + - type: PHNADD + details: '0612342536' + detailedName: + type: object + title: "Pr\xE9nom & nom usuel" + x-display: expansion-panels + x-health-only: false + required: + - complete + properties: + complete: + type: string + title: "Pr\xE9nom et nom" + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/administrativeFile/generalPractitioner/detailedName/complete + description: "A valoriser avec le pr\xE9nom et le nom usuel du requ\xE9\ + rant/appelant.\nSi les champs callerLastName et callerFirstName sont \xE9\ + galement renseign\xE9s, le champ callerName doit \xEAtre valoris\xE9 ainsi\ + \ : \"{callerFirstName} {callerLastName}\".\n\nSp\xE9cificit\xE9s 15-18\ + \ : NexSIS ne dispose que de ces informations (concat\xE9n\xE9es) et\ + \ pas de deux champs s\xE9par\xE9s." + examples: + - Jean Dupont + lastName: + type: string + title: Nom + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/administrativeFile/generalPractitioner/detailedName/lastName + description: "A valoriser avec le nom usuel du requ\xE9rant" + examples: + - Dupont + firstName: + type: string + title: "Pr\xE9nom" + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/administrativeFile/generalPractitioner/detailedName/firstName + description: "A valoriser avec le pr\xE9nom usuel du r\xE9qu\xE9rant.\n\ + Par convention les pr\xE9noms compos\xE9s doivent pr\xE9f\xE9rablement\ + \ \xEAtre s\xE9par\xE9s par le caract\xE8re \"-\"" + examples: + - Jean + additionalProperties: false + example: example.json#/patient/0/administrativeFile/generalPractitioner/detailedName + examples: + - complete: Jean Dupont + lastName: Dupont + firstName: Jean + customMap: + type: object + title: "Cl\xE9 valeur adaptable" + x-display: expansion-panels + x-health-only: false + required: + - key + - value + properties: + key: + type: string + title: "Cl\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/additionalInformation/customMap/0/key + description: A valoriser avec le nom de la balise + examples: + - neighborhood + label: + type: string + title: "Libell\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/additionalInformation/customMap/0/label + description: "A valoriser avec le libell\xE9 correspondant" + examples: + - Quartier + value: + type: string + title: Valeur + x-health-only: false + x-cols: 6 + example: example.json#/additionalInformation/customMap/0/value + description: "A valoriser avec la valeur associ\xE9e \xE0 la cl\xE9" + examples: + - LYON 2e arrondissement + freetext: + type: string + title: "D\xE9tails" + x-health-only: false + x-cols: 6 + example: example.json#/additionalInformation/customMap/0/freetext + description: "Informations compl\xE9mentaires sur le contexte / utilisation\ + \ de cette correspondance additionnelle" + examples: + - "Pr\xE9cision sur le quartier d'intervention" + additionalProperties: false + example: example.json#/additionalInformation/customMap/0 + examples: + - key: neighborhood + label: Quartier + value: LYON 2e arrondissement + freetext: "Pr\xE9cision sur le quartier d'intervention" + createCaseHealth: + $id: classpath:/json-schema/schema# + x-id: RS-EDA.schema.json# + example: example.json# + type: object + title: createCaseHealth + required: + - caseId + - creation + - qualification + - location + - owner + properties: + caseId: + type: string + title: Identifiant affaire/dossier + x-health-only: false + x-cols: 6 + example: example.json#/caseId + description: "Identifiant partag\xE9 de l'affaire/dossier, g\xE9n\xE9r\xE9\ + \ une seule fois par le syst\xE8me du partenaire qui recoit la primo-demande\ + \ de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9 comme suit\ + \ lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ + \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ + e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ + \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ + \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ + \ num\xE9ro unique dans son syst\xE8me." + pattern: ^fr(\.[\w-]+){3,4}$ + examples: + - fr.health.samu440.DRFR15440241550012 + senderCaseId: + type: string + title: Identifiant local de l'affaire/dossier + x-health-only: false + x-cols: 6 + example: example.json#/senderCaseId + description: "A valoriser avec le num\xE9ro du dossier dans le SI de l'\xE9\ + metteur du message.\n" + examples: + - DRFR15440241550012 + creation: + type: string + title: "Date Heure de cr\xE9ation de l'affaire/dossier" + x-health-only: false + x-cols: 6 + example: example.json#/creation + description: "A valoriser avec le groupe date heure de cr\xE9ation du dossier/affaire.\n\ + \nSp\xE9cificit\xE9 15-18 : A valoriser avec le groupe date heure de d\xE9\ + but de partage li\xE9 \xE0 la cr\xE9ation de l'affaire (et donc de g\xE9\ + n\xE9ration du caseId). \nLors de l'ajout d'une nouvelle alerte, la valeur\ + \ de ce champ ne doit pas \xEAtre modifi\xE9e. \nL'indicateur de fuseau\ + \ horaire Z ne doit pas \xEAtre utilis\xE9.\nIl doit \xEAtre renseign\xE9\ + \ \xE0 la fin du processus de la cr\xE9ation de la premi\xE8re alerte." + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:23:34+02:00' + perimeter: + type: string + title: "Fili\xE8re" + x-health-only: false + x-cols: 6 + example: example.json#/perimeter + description: "Sert \xE0 indiquer \xE0 quelle fili\xE8re du CRRA destinataire\ + \ le dossier doit \xEAtre adress\xE9/affich\xE9, lorsque celle-ci est\ + \ sp\xE9cifique ou d\xE9di\xE9e." + enum: + - AMU + - NEONAT + - PSY + - SNP + examples: + - AMU + interventionType: + type: string + title: Type d'intervention + x-health-only: false + x-cols: 6 + example: example.json#/interventionType + description: "A valoriser en indiquant s'il s'agit d'un dossier dit primaire\ + \ (premi\xE8re intervention urgente) ou secondaire (par exemple TIH)" + enum: + - T1 + - T2-INTER + - T2-INTRA + - T3 + - T4 + examples: + - PRIMAIRE + qualification: + $ref: '#/components/schemas/qualification' + location: + $ref: '#/components/schemas/location' + initialAlert: + $ref: '#/components/schemas/alert' + owner: + type: string + title: CRRA traitant + x-health-only: false + x-cols: 6 + example: example.json#/owner + description: "Attribut qui permet de transf\xE9rer la prise en charge d'un\ + \ dossier \xE0 un autre CRAA\nA valoriser avec l'identifiant de l'organisation\ + \ concern\xE9 (orgId = {pays}.{domaine}.{organisation})" + pattern: ^fr(\.[\w-]+){2,3}$ + examples: + - fr.health.samu440 + patient: + type: array + items: + $ref: '#/components/schemas/patient' + medicalNote: + type: array + items: + $ref: '#/components/schemas/medicalNote' + decision: + type: array + items: + $ref: '#/components/schemas/decision' + additionalInformation: + $ref: '#/components/schemas/additionalInformation' + additionalProperties: false + patient: + type: object + title: Patient + x-display: expansion-panels + x-health-only: false + required: + - patientId + - lastName + - firstName + properties: + patientId: + type: string + title: "ID partag\xE9 du patient" + x-health-only: false + x-cols: 6 + example: example.json#/patient/patientId + description: "Identifiant unique du patient. \nA valoriser par {ID du SAMU\ + \ qui engage le SMUR}.{ID du DRM}.P{num\xE9ro d\u2019ordre chronologique}\ + \ : fr.health.samu690.DRFR15DDXAAJJJ00001.P01" + examples: + - fr.health.samu690.patient.DRFR15DDXAAJJJ00001.1 + birthName: + type: string + title: Nom de naissance + x-health-only: false + x-cols: 6 + example: example.json#/patient/birthName + description: Nom de naissance du patient + examples: + - Dupont + lastName: + type: string + title: Nom usuel + x-health-only: false + x-cols: 6 + example: example.json#/patient/lastName + description: Nom usuel du patient + examples: + - Maleis + firstName: + type: string + title: "Pr\xE9nom usuel" + x-health-only: false + x-cols: 6 + example: example.json#/patient/firstName + description: "Pr\xE9nom du patient" + examples: + - Jean + birthDate: + type: string + title: Date de naissance + x-health-only: false + x-cols: 6 + example: example.json#/patient/birthDate + description: Date de naissance du patient + examples: + - 17/02/1936 + age: + type: string + title: Age + x-health-only: false + x-cols: 6 + example: example.json#/patient/age + description: "La date de naissance n'est pas tout le temps connu, cette\ + \ donn\xE9e permet d'indiquer un \xE2ge entier. " + examples: + - PY69 + sex: + type: string + title: Sexe + x-health-only: false + x-cols: 6 + example: example.json#/patient/sex + description: "Sexe du patient, suivant le libell\xE9 court de la nomenclature\ + \ SI-SAMU-NOMENC_SEXE" + enum: + - M + - F + - O + - UN + examples: + - F + externalId: + type: array + items: + $ref: '#/components/schemas/externalId' + height: + type: integer + title: Taille + x-health-only: false + x-cols: 6 + example: example.json#/patient/height + description: A valoriser avec le poids en kilogrammes + examples: + - 31 + weight: + type: integer + title: Poids + x-health-only: false + x-cols: 6 + example: example.json#/patient/weight + description: "A valoriser avec la taille en centim\xE8tres du patient" + examples: + - 109 + additionalProperties: false + example: example.json#/patient + medicalNote: + type: object + title: "Observation m\xE9dicale" + x-display: expansion-panels + x-health-only: false + required: + - operator + - medicalNoteId + - freetext + properties: + patientId: + type: string + title: "ID patient partag\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/medicalNote/0/patientId + description: "Identifiant partag\xE9 du patient concern\xE9 par l'observation,\ + \ a remplir obligatoirement si ce patient existe et est identifi\xE9 dans\ + \ le syst\xE8me emetteur, \n\nValoris\xE9 comme suit lors de sa cr\xE9\ + ation : \n{OrgId \xE9metteur}.patient.{n\xB0patient unique dans le syst\xE8\ + me \xE9metteur}\n\nOU, si un n\xB0patient unique n'existe pas dans le\ + \ syst\xE8me \xE9metteur :\n{ID \xE9metteur}.{senderCaseId}.patient.{num\xE9\ + ro d\u2019ordre chronologique au dossier}" + pattern: ^([\w-]+\.){3,4}patient(\.[\w-]+){1,2}$ + examples: + - 'fr.health.samu690.patient.P23AZ59 + + fr.health.samu690.patient.DRFR15690242370035.1' + operator: + $ref: '#/components/schemas/operator' + medicalNoteId: + type: string + title: ID Observation + x-health-only: false + x-cols: 6 + example: example.json#/medicalNote/0/medicalNoteId + description: "Identifiant partag\xE9 de l'observation, g\xE9n\xE9r\xE9 une\ + \ seule fois par le syst\xE8me du partenaire qui cr\xE9\xE9 l'observation\n\ + Il est valoris\xE9 comme suit lors de sa cr\xE9ation : \n{OrgId \xE9metteur}.medicalNote.{ID\ + \ unique de l\u2019observation dans le syst\xE8me \xE9metteur}\n\nOU -\ + \ uniquement dans le cas o\xF9 un ID unique de la note n'est pas disponible\ + \ dans le syst\xE8me : \n{OrgId \xE9metteur}.medicalNote.{senderCaseId}.{num\xE9\ + ro chronologique de l\u2019observation}\n\nCet identifiant a vocation\ + \ \xE0 devenir obligatoire pour permettre les mises \xE0 jour, il est\ + \ laiss\xE9 en facultatif temporairement.\n" + pattern: ^([\w-]+\.){3,4}medicalNote(\.[\w-]+){1,2}$ + examples: + - 'fr.health.samu540.medicalNote.46585A + + fr.health.samu540.medicalNote.DRFR15540241600125.20' + creation: + type: string + title: Date Heure de l'observation + x-health-only: false + x-cols: 6 + example: example.json#/medicalNote/0/creation + description: "A valoriser avec le groupe date heure de cr\xE9ation de l'observation.\ + \ L'indicateur de fuseau horaire Z ne doit pas \xEAtre utilis\xE9." + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:23:34+02:00' + freetext: + type: string + title: Observations et commentaires + x-health-only: false + x-cols: 6 + example: example.json#/medicalNote/0/freetext + description: "Champ libre qui permet de compl\xE9ter les informations de\ + \ nature m\xE9dicales, faites par un ARM, un m\xE9decin ou un autre professionnel\ + \ de sant\xE9." + examples: + - None + additionalProperties: false + example: example.json#/medicalNote/0 + decision: + type: object + title: Transport + x-display: expansion-panels + x-health-only: false + required: + - resourceType + - vehicleType + - medicalLevel + properties: + resourceType: + type: string + title: Moyen de transport + x-health-only: false + x-cols: 6 + example: example.json#/orientation/decision/resourceType + description: "Pr\xE9cise le type de moyen engag\xE9 dans l'intervention\ + \ (SMUR, TSU, HOSPIT, etc.). \nA valoriser par un code de la nomenclature\ + \ SI-SAMU-TYPE_MOYEN." + enum: + - SMUR + - SMUR.ADULT + - SMUR.PED + - SMUR.UMH-S + - SMUR.CUMP + - HOSPIT + - LIBERAL + - LIBERAL.MG + - LIBERAL.PHARM + - LIBERAL.INF + - LIBERAL.KINE + - LIBERAL.SOS + - LIBERAL.MMG + - LIBERAL.MSPD + - LIBERAL.MCS + - LIBERAL.SPEMED + - LIBERAL.DENT + - LIBERAL.LABO + - LIBERAL.AUTREPRO + - 'TSU ' + - SIS + - SIS.MEDSP + - SIS.ISP + - SIS.SP + - AASC + - FDO + - FDO.PN + - FDO.GEND + - FDO.PM + - FDO.DOUANES + - AUTRE + - AUTRE.ADM + - AUTRE.DAE + - AUTRE.AUTRE + examples: + - SMUR + vehicleType: + type: string + title: Type de vecteur de transport + x-health-only: false + x-cols: 6 + example: example.json#/orientation/decision/vehicleType + description: "Pr\xE9cise le type de v\xE9hicule terrestre / a\xE9rien /\ + \ maritime engag\xE9 dans l'intervention.\nA valoriser par un code de\ + \ la nomenclature SI-SAMU-TYPE_VECTEUR." + enum: + - AASC + - AASC.VLSC + - AASC.VPSP + - AASC.AUTRESC + - AUTREVEC + - AUTREVEC.APIED + - AUTREVEC.AVION + - AUTREVEC.PERSO + - AUTREVEC.TAXI + - AUTREVEC.TRAIN + - AUTREVEC.TRANSP + - AUTREVEC.AUTRE + - AUTREVEC.AUTRETRA + - FSI + - FSI.HELIFSI + - FSI.VLFSI + - FSI.FFSI + - FSI.VHFSI + - LIB + - LIB.MEDV + - LIB.INF + - LIB.AUTREPRO + - SIS + - SIS.DRAGON + - SIS.AVSC + - SIS.FEUSIS + - SIS.GRIMP + - SIS.NAVISIS + - SIS.PCSIS + - SIS.SRSIS + - SIS.VCH + - SIS.VLCG + - SIS.VLISP + - SIS.VLMSP + - SIS.VLSIS + - SIS.VPL + - SIS.VPMA + - SIS.VR + - SIS.VSAV + - SIS.MOYSSE + - SIS.AUTRESIS + - SMUR + - SMUR.VLM + - SMUR.VL + - SMUR.PSM1 + - SMUR.PSM2 + - SMUR.PSM3 + - SMUR.PSMP + - SMUR.VPC + - SMUR.AR + - SMUR.AR-BAR + - SMUR.AR-PED + - SMUR.HELISMUR + - SMUR.HELISAN + - SMUR.AVSMUR + - SMUR.AVSAN + - SMUR.NAVISMUR + - TSU + - TSU.VSL + - TSU.AMB-GV + - TSU.AMB-PV + - TSU.AMB-BAR + - TSU.AMB + examples: + - AR, VLM, VSAV + medicalLevel: + type: string + title: "Niveau de m\xE9dicalisation du transport" + x-health-only: false + x-cols: 6 + example: example.json#/orientation/decision/medicalLevel + description: "Type d\u2019\xE9quipe (m\xE9dical, param\xE9dicale, secouriste).\n\ + A valoriser par un code de la nomenclature SI-SAMU-NIVSOIN." + enum: + - MED + - PARAMED + - SECOURS + - SANS + examples: + - PARAMED + additionalProperties: false + example: example.json#/orientation/decision + examples: + - resourceType: SMUR + vehicleType: AR, VLM, VSAV + medicalLevel: PARAMED + caseDetails: + type: object + title: "D\xE9tails du dossier " + x-display: expansion-panels + x-health-only: false + required: [] + properties: + status: + type: string + title: Etat du dossier + x-health-only: false + x-cols: 6 + example: example.json#/qualification/details/status + description: "A valoriser avec l'\xE9tat du dossier dans le syst\xE8me \xE9\ + metteur\nSp\xE9cificit\xE9 15-15 : peut \xEAtre ignor\xE9 en r\xE9ception,\ + \ partag\xE9 \xE0 titre indicatif uniquement\nSp\xE9cificit\xE9 15-SMUR\ + \ : \xE0 utiliser \xE0 minima pour transmettre le statut CLOTURE \xE0\ + \ la tablette" + enum: + - PROGRAM + - ACTIF + - ACHEVE + - VALIDE + - CLOTURE + - CLASSE + - ARCHIVE + examples: + - None + priority: + type: string + title: "Priorit\xE9 de r\xE9gulation m\xE9dicale" + x-health-only: false + x-cols: 6 + example: example.json#/qualification/details/priority + description: "D\xE9crit la priorit\xE9 de r\xE9gulation m\xE9dicale du dossier\ + \ : P0, P1, P2, P3" + enum: + - P0 + - P1 + - P2 + - P3 + - NR + examples: + - P1 + careLevel: + type: string + title: Niveau de soins du dossier + x-health-only: false + x-cols: 6 + example: example.json#/qualification/details/careLevel + description: "D\xE9crit le niveau de soins global du dossier identifi\xE9\ + \ au cours de l'acte de r\xE9gulation m\xE9dicale : s'il y a plusieurs\ + \ niveaux de soins diff\xE9rents pour chaque patient, on indique ici le\ + \ niveau le plus grave.\ncf.nomenclature associ\xE9e." + enum: + - R1 + - R2 + - R3 + - R4 + examples: + - R1 + additionalProperties: false + example: example.json#/qualification/details + examples: + - status: None + priority: P1 + careLevel: R1 + highway: + type: object + title: Autoroute + x-display: expansion-panels + x-health-only: false + required: [] + properties: + name: + type: string + title: Nom + x-health-only: false + x-cols: 6 + example: example.json#/location/detailedAddress/highway/name + description: "A valoriser avec le nom de l'autoroute, de la voie ferr\xE9\ + e ou voie navigable." + examples: + - A4 + pk: + type: string + title: "Point kilom\xE9trique" + x-health-only: false + x-cols: 6 + example: example.json#/location/detailedAddress/highway/pk + description: "A valoriser avec le point kilom\xE9trique de l'autoroute,\ + \ de la voie ferr\xE9e ou voie navigable. " + examples: + - PK10 + direction: + type: string + title: Sens + x-health-only: false + x-cols: 6 + example: example.json#/location/detailedAddress/highway/direction + description: A valoriser avec le sens de l'autoroute. + examples: + - Paris + additionalProperties: false + example: example.json#/location/detailedAddress/highway + examples: + - name: A4 + pk: PK10 + direction: Paris + administrativeFile: + type: object + title: Dossier administratif + x-display: expansion-panels + x-health-only: false + required: [] + properties: + externalId: + type: array + items: + $ref: '#/components/schemas/externalId' + generalPractitioner: + $ref: '#/components/schemas/generalPractitioner' + additionalProperties: false + example: example.json#/patient/0/administrativeFile + Identity: + type: object + title: "Identit\xE9" + x-display: expansion-panels + x-health-only: false + required: [] + properties: + strictFeatures: + $ref: '#/components/schemas/insStrictFeatures' + nonStrictFeatures: + $ref: '#/components/schemas/detailedName' + additionalProperties: false + example: example.json#/patient/0/identity + patientDetail: + type: object + title: Informations patient + x-display: expansion-panels + x-health-only: false + required: [] + properties: + weight: + type: number + title: Poids + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/detail/weight + description: A valoriser avec le poids en kilogrammes + examples: + - 31 + height: + type: number + title: Taille + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/detail/height + description: "A valoriser avec la taille en centim\xE8tres du patient" + examples: + - 109 + age: + type: string + title: Age + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/detail/age + description: "A valoriser avec l'age du patient.\nAu format \"Dur\xE9e\"\ + \ de la norme ISO 8601 (https://fr.wikipedia.org/wiki/ISO_8601#Dur%C3%A9e)\ + \ et en n'utilisant qu'une seule unit\xE9 de dur\xE9e (ann\xE9es, mois,\ + \ semaines ou jours)" + pattern: ^P[0-9]{1,3}[YMWD]$ + examples: + - P6Y + careLevel: + type: string + title: Niveau de soin du patient + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/detail/careLevel + description: "A valoriser avec le niveau de soins sp\xE9cifique au patient" + enum: + - R1 + - R2 + - R3 + - R4 + examples: + - R1 + medicalHistory: + type: string + title: "Ant\xE9c\xE9dents" + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/detail/medicalHistory + description: "Texte libre pour d\xE9crire les ant\xE9c\xE9dents du patient.\ + \ \nSi ce n'est pas g\xE9r\xE9 de mani\xE8re structur\xE9s : \xE0 afficher\ + \ dans une note li\xE9e au patient en r\xE9ception. " + examples: + - Arthrite, asthme + treatment: + type: string + title: Traitements + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/detail/treatment + description: "Texte libre pour d\xE9crire les traitements du patient.\n\ + Si ce n'est pas g\xE9r\xE9 de mani\xE8re structur\xE9s : \xE0 afficher\ + \ dans une note li\xE9e au patient en r\xE9ception. " + examples: + - "Amoxicilline 1 g et parac\xE9tamol 1 g depuis 5 jours." + additionalProperties: false + example: example.json#/patient/0/detail + examples: + - weight: 31 + height: 109 + age: P6Y + careLevel: R1 + medicalHistory: Arthrite, asthme + treatment: "Amoxicilline 1 g et parac\xE9tamol 1 g depuis 5 jours." + hypothesis: + type: object + title: "Hypoth\xE8ses de r\xE9gulation m\xE9dicale" + x-display: expansion-panels + x-health-only: false + required: [] + properties: + mainDiagnosis: + $ref: '#/components/schemas/mainDiagnosis' + otherDiagnosis: + type: array + items: + $ref: '#/components/schemas/otherDiagnosis' + additionalProperties: false + example: example.json#/patient/0/hypothesis + externalId: + type: object + title: Identifiant(s) patient(s) + x-display: expansion-panels + x-health-only: false + required: + - source + - value + properties: + source: + type: string + title: Source / type d'identifiant + x-health-only: false + x-cols: 6 + example: example.json#/patient/externalId/0/source + description: Type de l'identifiant fourni + enum: + - NIR + - SINUS + - SI-VIC + - DOSSARD + - PLACE + examples: + - "NIR, SINUS, SI-VIC, \u2026" + value: + type: string + title: Identifiant + x-health-only: false + x-cols: 6 + example: example.json#/patient/externalId/0/value + description: "L'identifiant en lui-m\xEAme" + examples: + - id1234 + additionalProperties: false + example: example.json#/patient/externalId/0 + examples: + - source: "NIR, SINUS, SI-VIC, \u2026" + value: id1234 + generalPractitioner: + type: object + title: "M\xE9decin traitant " + x-display: expansion-panels + x-health-only: false + required: + - detailedName + properties: + detailedName: + $ref: '#/components/schemas/detailedName' + rppsId: + type: string + title: Identifiant RPPS + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/administrativeFile/generalPractitioner/rppsId + description: "Num\xE9ro RPPS du m\xE9decin traitant" + examples: + - 10000668540 + contact: + type: array + items: + $ref: '#/components/schemas/personalContact' + additionalProperties: false + example: example.json#/patient/0/administrativeFile/generalPractitioner + personalContact: + type: object + title: "Contact m\xE9decin" + x-display: expansion-panels + x-health-only: false + required: + - type + - detail + properties: + type: + type: string + title: Type de contact + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/administrativeFile/generalPractitioner/contact/0/type + description: "A valoriser avec le type de l'URI utilis\xE9e. Cf nomenclature\ + \ associ\xE9e." + enum: + - EMAIL + - FAX + - MSS + - POSTAL + - RADIO + - TEL + - WEB + examples: + - TEL + detail: + type: string + title: URI du contact + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/administrativeFile/generalPractitioner/contact/0/detail + description: "A valoriser avec la valeur de l'URI utilis\xE9e.\nLe format\ + \ attendu pour un num\xE9ro de t\xE9l\xE9phone est le suivant : +{indicatif\ + \ pays}{num\xE9ro de t\xE9l\xE9phone}." + examples: + - '+33671830530' + additionalProperties: false + example: example.json#/patient/0/administrativeFile/generalPractitioner/contact/0 + examples: + - type: TEL + detail: '+33671830530' + insStrictFeatures: + type: object + title: "Traits stricts de l'identit\xE9" + x-display: expansion-panels + x-health-only: false + required: [] + properties: + birthName: + type: string + title: Nom de naissance + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/identity/strictFeatures/birthName + description: "A valoriser avec le nom de naissance du patient. Egalement\ + \ appel\xE9 nom de famille." + examples: + - Dupont + birthDate: + type: string + title: Date de naissance + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/identity/strictFeatures/birthDate + description: A valoriser avec la date de naissance du patient + pattern: ^\d{4}-\d{2}-\d{2}$ + examples: + - None + sex: + type: string + title: 'Sexe ' + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/identity/strictFeatures/sex + description: A valoriser avec le sexe du patient + enum: + - M + - F + - O + - UN + examples: + - F + additionalProperties: false + example: example.json#/patient/0/identity/strictFeatures + examples: + - birthName: Dupont + birthDate: None + sex: F + mainDiagnosis: + type: object + title: "Hypoth\xE8se de r\xE9gulation m\xE9dicale principale" + x-display: expansion-panels + x-health-only: false + required: + - code + - label + properties: + code: + type: string + title: Code + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/hypothesis/mainDiagnosis/code + description: "A valoriser avec le code de la nomenclature associ\xE9e" + pattern: ^[A-Z]\d{2}(\.[\d\+\-]{1,3})?$ + examples: + - C07.13.02 + label: + type: string + title: "Libell\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/hypothesis/mainDiagnosis/label + description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ + e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ + tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ + \ fourni avec le code." + examples: + - "Rod\xE9o automobile" + additionalProperties: false + example: example.json#/patient/0/hypothesis/mainDiagnosis + examples: + - code: C07.13.02 + label: "Rod\xE9o automobile" + otherDiagnosis: + type: object + title: "Hypoth\xE8ses de r\xE9gulation m\xE9dicale secondaires" + x-display: expansion-panels + x-health-only: false + required: + - code + - label + properties: + code: + type: string + title: Code + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/hypothesis/otherDiagnosis/0/code + description: "A valoriser avec le code de la nomenclature associ\xE9e" + pattern: ^[A-Z]\d{2}(\.[\d\+\-]{1,3})?$ + examples: + - C07.13.02 + label: + type: string + title: "Libell\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/patient/0/hypothesis/otherDiagnosis/0/label + description: "A valoriser avec le libell\xE9 de la nomenclature associ\xE9\ + e.\nDans le cas o\xF9 un syst\xE8me n'est pas en mesure de reconna\xEE\ + tre un code, il peut choisir d'afficher le libell\xE9 qui est obligatoirement\ + \ fourni avec le code." + examples: + - "Rod\xE9o automobile" + additionalProperties: false + example: example.json#/patient/0/hypothesis/otherDiagnosis/0 + examples: + - code: C07.13.02 + label: "Rod\xE9o automobile" + operator: + type: object + title: "Professionnel de sant\xE9 qui r\xE9alise l'observation" + x-display: expansion-panels + x-health-only: false + required: + - role + properties: + label: + type: string + title: Label + x-health-only: false + x-cols: 6 + example: example.json#/medicalNote/0/operator/label + description: "A valoriser si besoin avec la valeur souhait\xE9e, en fonction\ + \ des pr\xE9f\xE9rences de chaque partenaire : cela peut \xEAtre le nom\ + \ et pr\xE9nom de l'op\xE9rateur, ou un identifiant." + examples: + - None + role: + type: string + title: "R\xF4le" + x-health-only: false + x-cols: 6 + example: example.json#/medicalNote/0/operator/role + description: "A valoriser avec le r\xF4le de l'op\xE9rateur au sein de l'entit\xE9\ + \ \xE9mettrice du message : " + enum: + - AMBULANCIER + - ARM + - INFIRMIER + - MEDECIN + - PILOTE + - TCM + - AUTRE + - INCONNU + examples: + - ARM + additionalProperties: false + example: example.json#/medicalNote/0/operator + examples: + - label: None + role: ARM + destination: + type: object + title: Destination + x-display: expansion-panels + x-health-only: false + required: + - destinationCountry + - destinationCategory + - healthcareType + - finess + properties: + destinationCountry: + type: string + title: Pays de destination + x-health-only: false + x-cols: 6 + example: example.json#/orientation/destination/destinationCountry + description: "A valoriser par le code de la nomenclature associ\xE9e" + enum: + - AF + - AX + - AL + - DZ + - AS + - AD + - AO + - AI + - AQ + - AG + - AR + - AM + - AW + - AU + - AT + - AZ + - BS + - BH + - BD + - BB + - BY + - BE + - BZ + - BJ + - BM + - BT + - BO + - BA + - BW + - BV + - BR + - IO + - BN + - BG + - BF + - BI + - CV + - KH + - CM + - CA + - KY + - CF + - TD + - CL + - CN + - CX + - CC + - CO + - KM + - CG + - CK + - CR + - CI + - HR + - CU + - CW + - CY + - CZ + - DK + - DJ + - DM + - DO + - EC + - EG + - SV + - GQ + - ER + - EE + - SZ + - ET + - FK + - FO + - FJ + - FI + - FR + - GF + - PF + - TF + - GA + - GM + - GE + - DE + - GH + - GI + - GR + - GL + - GD + - GP + - GU + - GT + - GG + - GN + - GW + - GY + - HT + - HM + - VA + - HN + - HK + - HU + - IS + - IN + - ID + - IR + - IQ + - IE + - IM + - IL + - IT + - JM + - JP + - JE + - JO + - KZ + - KE + - KI + - KP + - KW + - KG + - LA + - LV + - LB + - LS + - LR + - LY + - LI + - LT + - LU + - MO + - MG + - MW + - MY + - MV + - ML + - MT + - MH + - MQ + - MR + - MU + - YT + - MX + - FM + - MC + - MN + - ME + - MS + - MA + - MZ + - MM + - NA + - NR + - NP + - NL + - NC + - NZ + - NI + - NE + - NG + - NU + - NF + - MK + - MP + - 'NO' + - OM + - PK + - PW + - PA + - PG + - PY + - PE + - PH + - PN + - PL + - PT + - PR + - QA + - RE + - RO + - RU + - RW + - BL + - KN + - LC + - MF + - PM + - VC + - WS + - SM + - ST + - SA + - SN + - RS + - SC + - SL + - SG + - SX + - SK + - SI + - SB + - SO + - ZA + - GS + - SS + - ES + - LK + - SD + - SR + - SJ + - SE + - CH + - SY + - TJ + - TH + - TL + - TG + - TK + - TO + - TT + - TN + - TR + - TM + - TC + - TV + - UG + - UA + - AE + - GB + - US + - UM + - UY + - UZ + - VU + - VE + - VN + - VG + - VI + - WF + - EH + - YE + - ZM + - ZW + examples: + - FR + destinationCategory: + type: string + title: "Cat\xE9gorie de l'\xE9tablissement de destination" + x-health-only: false + x-cols: 6 + example: example.json#/orientation/destination/destinationCategory + description: "A valoriser par le code de la nomenclature associ\xE9e" + examples: + - None + healthcareType: + type: string + title: "Type d'activit\xE9 de soins de l'unit\xE9 fonctionnelle de destination" + x-health-only: false + x-cols: 6 + example: example.json#/orientation/destination/healthcareType + description: "A valoriser par le code de la nomenclature ActiviteOperationnelle\ + \ (\xE0 venir). " + examples: + - None + finess: + type: string + title: "FINESS g\xE9ographique" + x-health-only: false + x-cols: 6 + example: example.json#/orientation/destination/finess + description: "FINESS g\xE9ographique de l\u2019\xE9tablissement de destination\ + \ (9 chiffres)" + examples: + - None + additionalProperties: false + example: example.json#/orientation/destination + examples: + - destinationCountry: FR + destinationCategory: None + healthcareType: None + finess: None + createCaseHealthUpdate: + $id: classpath:/json-schema/schema# + x-id: RS-EDA-MAJ.schema.json# + example: example.json# + type: object + title: createCaseHealthUpdate + required: + - caseId + properties: + caseId: + type: string + title: Identifiant affaire/dossier + x-health-only: false + x-cols: 6 + example: example.json#/caseId + description: "Identifiant partag\xE9 de l'affaire/dossier, g\xE9n\xE9r\xE9\ + \ une seule fois par le syst\xE8me du partenaire qui recoit la primo-demande\ + \ de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9 comme suit\ + \ lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ + \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ + e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ + \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ + \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ + \ num\xE9ro unique dans son syst\xE8me." + pattern: ^fr(\.[\w-]+){3,4}$ + examples: + - fr.health.samu440.DRFR15440241550012 + senderCaseId: + type: string + title: Identifiant local de l'affaire/dossier + x-health-only: false + x-cols: 6 + example: example.json#/senderCaseId + description: "A valoriser avec le num\xE9ro du dossier dans le SI de l'\xE9\ + metteur du message.\n" + examples: + - DRFR15440241550012 + perimeter: + type: string + title: "Fili\xE8re" + x-health-only: false + x-cols: 6 + example: example.json#/perimeter + description: "Sert \xE0 indiquer \xE0 quelle fili\xE8re du CRRA destinataire\ + \ le dossier doit \xEAtre adress\xE9/affich\xE9, lorsque celle-ci est\ + \ sp\xE9cifique ou d\xE9di\xE9e." + enum: + - AMU + - NEONAT + - PSY + - SNP + examples: + - AMU + qualification: + $ref: '#/components/schemas/qualification' + location: + $ref: '#/components/schemas/location' + initialAlert: + $ref: '#/components/schemas/alert' + owner: + type: string + title: CRRA traitant + x-health-only: false + x-cols: 6 + example: example.json#/owner + description: "Attribut qui permet de transf\xE9rer la prise en charge d'un\ + \ dossier \xE0 un autre CRAA\nA valoriser avec l'identifiant de l'organisation\ + \ concern\xE9 (orgId = {pays}.{domaine}.{organisation})" + pattern: ^fr(\.[\w-]+){2,3}$ + examples: + - fr.health.samu440 + patient: + type: array + items: + $ref: '#/components/schemas/patient' + medicalNote: + type: array + items: + $ref: '#/components/schemas/medicalNote' + decision: + type: array + items: + $ref: '#/components/schemas/decision' + freetext: + type: string + title: "Informations suppl\xE9mentaires modifi\xE9es" + x-health-only: false + x-cols: 6 + example: example.json#/freetext + description: "Champ libre qui permet de concat\xE9ner en une seule note\ + \ toutes les autres valeurs modifi\xE9es dans le dossier, ne figurant\ + \ pas de mani\xE8re structur\xE9e dans le RS-EDA-MAJ." + examples: + - "adresse : 7bis rue du ch\xE2teau - Neuilly sur Seine" + additionalInformation: + $ref: '#/components/schemas/additionalInformation' + additionalProperties: false + emsi: + $id: classpath:/json-schema/schema# + x-id: EMSI.schema.json# + example: example.json# + type: object + title: emsi + required: + - CONTEXT + - EVENT + properties: + CONTEXT: + $ref: '#/components/schemas/context' + EVENT: + $ref: '#/components/schemas/event' + MISSION: + type: array + items: + $ref: '#/components/schemas/mission' + RESOURCE: + type: array + items: + $ref: '#/components/schemas/resource' + additionalProperties: false + context: + type: object + title: Contexte + x-display: expansion-panels + x-health-only: false + required: + - ID + - MODE + - MSGTYPE + properties: + ID: + type: string + title: Identifiant du message + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/ID + description: "A constituer par le r\xE9dacteur du pr\xE9sent EMSI pour \xEA\ + tre unique, il est pr\xE9conis\xE9 de reprendre la valeur du champ messageId\ + \ de l'ent\xEAte RC-DE." + examples: + - d350c9d2-9d76-4568-b0b7-a747ffadc949 + MODE: + type: string + title: Mode + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/MODE + description: "Valeur constante dans le cadre des \xE9changes LRM-NexSIS\ + \ : ACTUAL" + enum: + - ACTUAL + - EXERCS + - SYSTEM + - TEST + examples: + - ACTUAL + MSGTYPE: + type: string + title: Type de message + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/MSGTYPE + description: "- A valoriser avec la valeur \"ALERT\" lors du premier \xE9\ + change entre syst\xE8mes.\n- A valoriser avec la valeur constante \"UPDATE\"\ + \ ensuite.\nPeut ne pas \xEAtre interpr\xE9t\xE9 par les LRM." + enum: + - ACK + - ALERT + - CANCEL + - ERROR + - UPDATE + examples: + - UPDATE + CREATION: + type: string + title: "Date et heure de cr\xE9ation" + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/CREATION + description: "Obligatoire dans le cadre d'une demande de concours, contient\ + \ la date de cr\xE9ation de la demande de concours dans le syst\xE8me\ + \ du partenaire requ\xE9rant.\nA valoriser avec le m\xEAme horaire que\ + \ dateTimeSent dans le message RC-DE associ\xE9.\nDans le cadre d'une\ + \ demande de concours, obligatoire. Ce champ est valoris\xE9e avec l'heure\ + \ de cr\xE9ation de la demande de concours chez le partenaire emetteur.\ + \ L'heure d'envoi du message peut \xEAtre obtenue via l'enveloppe EDXL-DE\ + \ (se r\xE9f\xE9rer au DST)" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:25:54+02:00' + LINK: + type: array + items: + $ref: '#/components/schemas/link' + LEVEL: + type: string + title: Niveau + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/LEVEL + description: A valoriser avec la valeur constante "OPR" dans le cadre d'un + message EMSI, incluant une mission OPG + enum: + - STRTGC + - OPR + - TACTCL + examples: + - OPR + SECLASS: + type: string + title: Niveau de classification + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/SECLASS + description: "Optionnel\n\nDans NexSIS ; \nLes messages transmis par NexSIS\ + \ auront un champ valoris\xE9 avec syst\xE9matiquement le m\xEAme code:\ + \ \"RESTRC\"=restricted\nLes LRM doivent \xE9galement renseigner la valeur\ + \ \"RESTRC\"" + enum: + - CONFID + - RESTRC + - SECRET + - TOPSRT + - UNCLAS + - UNMARK + examples: + - RESTRC + FREETEXT: + type: string + title: Texte libre + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/FREETEXT + description: "Texte libre, optionnel\n\nDans NexSIS;\nFonction de l'\xE9\ + v\xE9nement g\xE9n\xE9rateur\nRG 1 : la valeur de \ + \ reste \xE0 'Cr\xE9ation d'un \xE9v\xE9nement op\xE9rationnel EMSI'\ + \ & version & 'suite \xE0 r\xE9ception d'une affaire*' dans le cadre de\ + \ la cr\xE9ation d'une op\xE9ration commune (conforme RG 2 de NEXSIS-6618)\n\ + RG 3 : les \xE9v\xE9nements g\xE9n\xE9rateurs sont ceux d\xE9finis au\ + \ sein de NEXSIS-6619 RG 1 de tra\xE7abilit\xE9 ( input = = CREATION_OPERATION / MAJ_MODIFICATION_ETAT_OPERATION\ + \ / AJOUT_RESSOURCE / RETRAIT_RESSOURCE / MAJ_ETAT_SITUATION_RESSOURCE\ + \ / MAJ_LOCALISATION_ADRESSE) auxquels seront ajout\xE9s les \xE9ventuels\ + \ \xE9v\xE9nements \xE0 venir." + examples: + - "Contexte de grand incendie \xE0 Nantes" + ORIGIN: + $ref: '#/components/schemas/origin' + EXTERNAL_INFO: + type: array + items: + $ref: '#/components/schemas/externalInfo' + URGENCY: + type: string + title: "Niveau d'urgence de l'\xE9v\xE9nement" + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/URGENCY + description: "Niveau d'urgence pour l'affaire en cours\nDans le cadre des\ + \ \xE9changes LRM-NexSIS, optionnel" + enum: + - URGENT + - NOT_URGENT + examples: + - URGENT + additionalProperties: false + example: example.json#/CONTEXT + event: + type: object + title: "Ev\xE8nement" + x-display: expansion-panels + x-health-only: false + required: + - orgId + - senderCaseId + - creationDate + - decisionDate + - ressourceFinessLegal + - ressourceFinessGeo + - ressourceStructure + properties: + orgId: + type: string + title: Identifiant de l'organisation du SAMU qui engage le SMUR + x-health-only: false + x-cols: 6 + example: example.json#/context/orgId + description: "Num\xE9ro du SAMU r\xE9gulant la mission SMUR. \nA valoriser\ + \ par fr.health.samuXXX : {pays}.{domaine}.{organisation}\n" + pattern: ^[a-z]{2,3}\.[a-z]+\.\w*$ + examples: + - fr.health.samu440 + senderCaseId: + type: string + title: "Identifiant local du dossier de r\xE9gulation m\xE9dicale (DRM)" + x-health-only: false + x-cols: 6 + example: example.json#/context/senderCaseId + description: "Num\xE9ro du dossier SAMU \xE0 l\u2019origine de la mission\ + \ SMUR\nA valoriser par DRFR15DDXAAJJJ00000 : \n- DR = d\xE9signation\ + \ d'un dossier sous forme abr\xE9g\xE9e,\n- FR : d\xE9signe le pays (FR\ + \ = France),\n- 15 : d\xE9signe le fait que le dossier a \xE9t\xE9 pris\ + \ en charge par un SAMU / SAS,\n- DD : d\xE9signe le d\xE9partement o\xF9\ + \ est situ\xE9 le SAMU / SAS qui a trait\xE9 le dossier,\n- X : lettre\ + \ d\xE9signant le SAMU / SAS en cas de pluralit\xE9 de SAMU / SAS sur\ + \ le m\xEAme d\xE9partement ou le troisi\xE8me chiffre des DOM,\n- AA\ + \ : ann\xE9e durant laquelle l\u2019appel a \xE9t\xE9 cr\xE9\xE9,\n- JJJ\ + \ : d\xE9signe le jour de l'ann\xE9e (de 1j \xE0 365j),\\par\n- 00000\ + \ : num\xE9ro d\u2019ordre chronologique du dossier dans la journ\xE9\ + e de r\xE9f\xE9rence ci-dessus." + examples: + - DRFR15DDXAAJJJ00000 + creationDate: + type: string + title: "Date et heure de cr\xE9ation du dossier de r\xE9gulation" + x-health-only: false + x-cols: 6 + example: example.json#/context/creationDate + description: s'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:23:34+02:00' + decisionDate: + type: string + title: "Date et heure de la d\xE9cision d\u2019engagement du SMUR" + x-health-only: false + x-cols: 6 + example: example.json#/context/decisionDate + description: s'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:23:34+02:00' + ressourceFinessLegal: + type: string + title: 'FINESS juridique ' + x-health-only: false + x-cols: 6 + example: example.json#/context/ressourceFinessLegal + description: "FINESS juridique \xE9tablissement rattachement SMUR" + examples: + - None + ressourceFinessGeo: + type: string + title: "FINESS g\xE9ographique " + x-health-only: false + x-cols: 6 + example: example.json#/context/ressourceFinessGeo + description: "FINESS g\xE9ographique \xE9tablissement rattachement SMUR\ + \ ou antenne SMUR" + examples: + - None + ressourceStructure: + type: string + title: Type de structure SMUR + x-health-only: false + x-cols: 6 + example: example.json#/context/ressourceStructure + description: "9 = Antenne SMUR, 0 = SMUR g\xE9n\xE9ral, 1 = SMUR p\xE9diatrique,\ + \ 2 = SMUR neonatal " + examples: + - None + additionalProperties: false + example: example.json#/context + examples: + - orgId: fr.health.samu440 + senderCaseId: DRFR15DDXAAJJJ00000 + creationDate: '2022-09-27T08:23:34+02:00' + decisionDate: '2022-09-27T08:23:34+02:00' + ressourceFinessLegal: None + ressourceFinessGeo: None + ressourceStructure: None + mission: + type: object + title: Missions + x-display: expansion-panels + x-health-only: false + required: + - TYPE + - ID + - NAME + - STATUS + properties: + TYPE: + type: string + title: Type + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/TYPE + description: "Le champ MISSION TYPE permet d'identifier l'effet \xE0 obtenir\ + \ souhait\xE9 \xE0 partir de la combinaison du code ACTOR et du code TYPE.\n\ + => La table de transcodage permettant d'identifier les concourants et\ + \ les effets \xE0 obtenir \xE0 partir d'un code EMSI est fournie en annexe\ + \ \"R\xE9f\xE9rentiel Effets \xE0 Obtenir - correspondance EMSI\".\nDans\ + \ le cadre d'une r\xE9ponse \xE0 DC :\n- reprendre le type de la DC si\ + \ le code r\xE9ponse choisi est vien \"VALIDE\"\nDans le cadre d'une mission\ + \ d\xE9crivant les op\xE9rations en cours :\n- reprendre la nomenclature\ + \ EMSI pour caract\xE9riser la mission en cours." + enum: + - SAV/ASC + - FR_MED/REGLTN + - GEN/SUPRTN + - SAV/AR/FR_MED + - SAV/AR/FR_PARAMD + - SAV + - GEN/TRNSPN + - SAV/SARCSL + - SAV/ASC/FR_PPL/LIFT + - GEN/RECVRY + - SAV/RHD + - FFST/FR_FIRE + - FSTT/RRHAZ/FR_CO + - CBRN/TSA + - INT/RECCE/FR_SMLL + - FSTT/TA + - SAV/AR/FR_PPL/GRP + - INT/RECCE + - GEN/TRNSPN/FR_SECNDRY + - OPR/LOG + - SAV/AR/FR_PPL/OBS + - FSTT/TA/FR_CLRACCSS + examples: + - SAV/ASC + FREETEXT: + type: string + title: Texte libre + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/FREETEXT + description: "Contient des commentaires relatifs aux objectifs et moyens\ + \ sollicit\xE9s dans le cadre de la demande de concours. Les \xE9quipements\ + \ suppl\xE9mentaires souhait\xE9s ou le nom/ pr\xE9nom des patients \xE0\ + \ prendre en charge peuvent \xEAtre explicitement indiqu\xE9s ici." + examples: + - "Besoin d'un grand v\xE9hicule car patients \xE0 prendre en charge volumineux.\ + \ Ne pas utiliser les gyrophares en approche" + ID: + type: string + title: Identifiant de la mission + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/ID + description: "Contient un identifiant de demande de concours unique. Cet\ + \ identifiant sera r\xE9utilisable par le partenaire pour r\xE9pondre\ + \ \xE0 cette demande.\nIdentifiant unique de la mission dans le syst\xE8\ + me du partenaire la conduisant." + examples: + - /FF#bb511708-b004-4d7e-8820-1d56c19f1823 + ORG_ID: + type: string + title: "Identifiant de l'organisation propri\xE9taire" + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/ORG_ID + description: "Indique l'organisation du partenaire concern\xE9 par la Demande\ + \ de Concours (voir DSF). Le code CRRA ou le code du SIS peut \xEAtre\ + \ utilis\xE9.\nIndique l'organisation du service r\xE9alisant la mission.\ + \ \nDans le cas d'une r\xE9ponse, c'est l'organisation du concourant qui\ + \ doit \xEAtre indiqu\xE9e.\nSe r\xE9f\xE9rer au DSF pour la structure\ + \ norm\xE9e des organisations\nLe format est le suivant {pays}.{domaine}.{organisation}.{structure\ + \ interne}*.{unit\xE9 fonctionnelle}*." + examples: + - fr.fire.cgo440 + NAME: + type: string + title: Nom de la mission + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/NAME + description: "Le nom de la mission est construit \xE0 partir de l'expression\ + \ r\xE9guli\xE8re suivante :\n\"#DEMANDE_CONCOURS#\"{libelle_cadre_conventionnel}\"\ + #\"{code_cadre_conventionnel}\"#\"\no\xF9 le code_cadre_conventionnel\ + \ est issue d'une nomenclature CISU-Cadre Conventionnel (A Venir)\nNB\ + \ : ce champ est d\xE9tourn\xE9 par rapport au standard EMSI pour permettre\ + \ l'expression d'une demande de concours et indiquer le cadre conventionnel\ + \ dans lequel elle est effectu\xE9e.\nPour une r\xE9ponse \xE0 demande\ + \ de concours :\n- Le nom de la mission est construit \xE0 partir de l'expression\ + \ r\xE9guli\xE8re suivante :\n\"#REPONSE_DEMANDE_CONCOURS#\"{code_reponse}\"\ + #\"\no\xF9 le code_reponse peut prendre les valeurs ACCEPTE, REFUS, PARTIELLE,\ + \ DIVERGENTE\n- sinon libre" + examples: + - '#DEMANDE_CONCOURS#CARENCE#Z.01.00.00#' + STATUS: + type: string + title: Status de la mission + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/STATUS + description: "Les valeurs possibles avec lesquelles valoriser ce champ sont\ + \ d\xE9taill\xE9es au sein d'une nomenclature EMSI\n- ABO : mission refus\xE9\ + e (ABOrted)\n- CANCLD : mission annul\xE9e (CANCeLeD)**\n- NST : mission\ + \ non d\xE9but\xE9 pour le m\xE9tier (Not STarted)\n- IPR : mission d\xE9\ + but\xE9 pour le m\xE9tier (In PRogress). la valeur IPR peut \xEAtre suivi\ + \ d'une valeur num\xE9rique de 00 \xE0 100 (IPRnn) sp\xE9cifiant le degr\xE9\ + \ d'avancement de la mission. Ce principe n'est pas retenu au sein de\ + \ NexSIS qui ne transmettra pas d'indication sur le degr\xE9 d'avancement\ + \ de la mission via ce champ.\n- PAU : \xE9v\xE9nement arr\xEAt\xE9, en\ + \ pause pour m\xE9tier, pas de besoin suppl\xE9mentaire\n- COM : \xE9\ + v\xE9nement termin\xE9 pour le m\xE9tier (COMplete)\nLe status de la mission\ + \ et celui des RESSOURCE associ\xE9es doit \xEAtre coh\xE9rent et transcodable\ + \ avec un status ANTARES (voir DSF)\n\nDans le cas d'un objet MISSION\ + \ g\xE9n\xE9rique de r\xE9ponse \xE0 demande de concours, le champ doit\ + \ \xEAtre valoris\xE9 \xE0 \"NST\"" + enum: + - ABO + - NST + - CANCLD + - COM + - IPR + - PAU + examples: + - IPR + START_TIME: + type: string + title: "D\xE9but de la mission" + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/START_TIME + description: "- Dans le cadre d'une r\xE9ponse \xE0 Demande de Concours\n\ + Horraire cible pour l'arriv\xE9e sur les lieux d\xE9crites (peut diverger\ + \ de l'horaire demand\xE9)\n- Dans le cadre d'une mission d\xE9crivant\ + \ les op\xE9rations en cours :\nHoraire effectif de d\xE9but de la mission" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:25:00+02:00' + END_TIME: + type: string + title: Fin de la mission + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/END_TIME + description: "A valoriser selon la cat\xE9gorie de mission :\n- Dans le\ + \ cadre d'une mission de r\xE9ponse \xE0 demande de concours : ne pas\ + \ renseigner\n- Dans le cadre d'une mission d\xE9crivant les op\xE9rations\ + \ en cours :\n Si c'est un d\xE9placement, l'heure d'arriv\xE9e, si c'est\ + \ une prise en charge patient/victime, la fin de la prise en charge." + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:55:00+02:00' + RESOURCE_ID: + type: array + x-health-only: false + items: + type: string + title: "Ressource engag\xE9e" + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/RESOURCE_ID/0 + description: "Liste des identifiants des ressources engag\xE9es dans la\ + \ mission (voir RESOURCE.ID)" examples: - - MAT/VEH/ROADVE/FRFGTN - minItems: 1 - CAPABILITY: + - 77_45102#VSAV 1 + PARENT_MISSION_ID: + type: array + x-health-only: false + items: + type: string + title: Missions parentes + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/PARENT_MISSION_ID/0 + description: "Dans le cadre d'une demande de concours, ne doit pas \xEA\ + tre renseign\xE9\nLa mission peut d\xE9j\xE0 \xEAtre rattach\xE9e \xE0\ + \ des missions filles mais leurs d\xE9tails ne doivent pas \xEAtre n\xE9\ + cessaires pour traiter la demande de concours dans le syst\xE8me du\ + \ partenaire.\nCf. DSF pour l'organisation liens entre MISSION (sous-section\ + \ \"D\xE9coupage de l'op\xE9ration en missions\")" + examples: + - None + CHILD_MISSION_ID: type: array x-health-only: false - items: - type: string - title: "Capacit\xE9s de la ressource" - x-health-only: false - x-cols: 6 - example: example.json#/RESOURCE/0/RTYPE/CAPABILITY/0 - description: "Permet d'indiquer les capacit\xE9s de la ressource d'apr\xE8\ - s le standard EMSI" - examples: - - None - CHARACTERISTICS: - type: array + items: + type: string + title: Missions filles + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/CHILD_MISSION_ID/0 + description: "Cf. DSF pour l'organisation liens entre MISSION (sous-section\ + \ \"D\xE9coupage de l'op\xE9ration en missions\")" + examples: + - None + MAIN_MISSION_ID: + type: string + title: Mission principale + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/MAIN_MISSION_ID + description: "- Dans le cas d'une mission g\xE9n\xE9rique de r\xE9ponse\ + \ \xE0 demande de concours, indiquer l'ID de la mission g\xE9n\xE9rique\ + \ utilis\xE9e pour mod\xE9liser la demande de concours\n- Dans le cas\ + \ d'une mission d\xE9clench\xE9e dans le cadre d'une r\xE9ponse \xE0 demande\ + \ de concours, l'ID de la mission g\xE9n\xE9rique de r\xE9ponse peut \xEA\ + tre utilis\xE9e dans ce champ pour indiquer qu'elle est li\xE9e \xE0 une\ + \ r\xE9ponse" + examples: + - /FF#bb511708-b004-4d7e-8820-1d56c19f1855 + POSITION: + $ref: '#/components/schemas/position' + PRIORITY: + type: string + title: "Priorit\xE9 de la mission" + x-health-only: false + x-cols: 6 + example: example.json#/MISSION/0/PRIORITY + description: "Indique une \xE9chelle de priorit\xE9 pour la demande de concours.\ + \ Dans le cadre du standard EMSI, cette \xE9chelle doit \xEAtre comprise\ + \ entre 0 et 5. Ce champ peut ne pas \xEAtre interpr\xE9t\xE9 ni aliment\xE9\ + \ par les LRMs.\nDans le cadre d'un \xE9change des op\xE9rations, optionnel.\ + \ Le champ peut ne pas \xEAtre \xE9mis ni interpr\xE9t\xE9." + enum: + - '0' + - '1' + - '2' + - '3' + - '4' + - '5' + examples: + - 5 + additionalProperties: false + example: example.json#/MISSION/0 + resource: + type: object + title: Ressource + x-display: expansion-panels + x-health-only: false + required: + - resourceId + - orgId + - resourceType + properties: + resourceId: + type: string + title: "Identifiant de la ressource partag\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/resource/0/resourceId + description: "A valoriser avec l'identifiant partag\xE9 unique de la ressource\ + \ engag\xE9e, norm\xE9 comme suit :\n{orgID}.resource.{ID unique de la\ + \ ressource partag\xE9e}\nOU - uniquement dans le cas o\xF9 un ID unique\ + \ de ressource ne peut pas \xEAtre garanti par l'organisation propri\xE9\ + taire :\n{orgID}.resource.{sendercaseId}.{n\xB0 d\u2019ordre chronologique\ + \ de la ressource}" + pattern: ^([\w-]+\.){3,4}resource(\.[\w-]+){1,2}$ + examples: + - 'fr.health.samu770.resource.VLM250 + + fr.health.samu440.resource.DRFR15DDXAAJJJ0000.1' + orgId: + type: string + title: "Identifiant de l'organisation propri\xE9taire" + x-health-only: false + x-cols: 6 + example: example.json#/resource/0/orgId + description: "Identifiant unique de l'organisme : {pays}.{domaine}.{organisation}.{structure\ + \ interne}*.{unit\xE9 fonctionnelle}*\n*donn\xE9es facultatives" + examples: + - fr.health.samu76A + name: + type: string + title: Nom de la ressource + x-health-only: false + x-cols: 6 + example: example.json#/resource/0/name + description: "Nom donn\xE9 \xE0 la ressource par l'organisme propri\xE9\ + taire. \nL'immatriculation peut \xEAtre utilis\xE9e dans le nom courant\ + \ des v\xE9hicules." + examples: + - SMUR 1 Rouen + resourceType: + type: string + title: Type de ressource + x-health-only: false + x-cols: 6 + example: example.json#/resource/0/resourceType + description: "Cat\xE9gorie de la ressource (SMUR, SDIS, TSU, SNP, MSPE,\ + \ navire)" + enum: + - SMUR + - SDIS + - TSU + - SNP + - MSPE + - SHIP + examples: + - SMUR + nature: + type: string + title: Nature de la ressource + x-health-only: false + x-cols: 6 + example: example.json#/resource/0/nature + description: Nature de la ressource (effecteur, base) + enum: + - EFFECTEUR + - BASE + examples: + - BASE + mobility: + type: string + title: "Mobilit\xE9 de la ressource" + x-health-only: false + x-cols: 6 + example: example.json#/resource/0/mobility + description: "Mobilit\xE9 de la ressource (fixe, vehicule, heliport\xE9\ + , navire)" + enum: + - FIXE + - VEHICULE + - HELICOPTERE + - SHIP + examples: + - VEHICULE + capacity: + type: string + title: "Capacit\xE9s de la ressource" x-health-only: false + x-cols: 6 + example: example.json#/resource/0/capacity + description: "Capacit\xE9 de transport d'un patient" + enum: + - URGENCE + - MEDICALE + - PARAMEDICALE + - INCONNUE + examples: + - MEDICALE + contacts: + type: array items: - type: string - title: "Caract\xE9ristiques de la ressource" - x-health-only: false - x-cols: 6 - example: example.json#/RESOURCE/0/RTYPE/CHARACTERISTICS/0 - description: "Permet d'indiquer des caract\xE9ristique physiques de la\ - \ ressource (hauteur, largeur, longueur et poids).\nLe d\xE9tail de\ - \ fonctionnement de cette nomenclature est fournie en annexe." - examples: - - None + $ref: '#/components/schemas/contact' additionalProperties: false - example: example.json#/RESOURCE/0/RTYPE - rgeo: + example: example.json#/resource/0 + link: type: object - title: Localisation de la ressource + title: Lien x-display: expansion-panels x-health-only: false required: - - TYPE + - ID properties: - DATIME: + ID: type: string - title: Horaire de la localisation + title: ID x-health-only: false x-cols: 6 - example: example.json#/RESOURCE/0/RGEO/0/DATIME - description: "Horaire associ\xE9 \xE0 l'arriv\xE9e de la ressource sur la\ - \ position. En fonction du TYPE de position, peut indiquer un horaire\ - \ de relev\xE9 de position, un horaire cible d'arriv\xE9e." - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time + example: example.json#/CONTEXT/LINK/0/ID + description: "A renseigner avec l'identifiant de l'organisation (champ organization\ + \ du message RC-EDA) suivi de l'identifiant local de l'affaire du partenaire\ + \ requ\xE9rant (champ senderCaseId du message RC-EDA).\n{pays}.{domaine}.{organisation}.{structure\ + \ interne}*.{unit\xE9 fonctionnelle}*.{num\xE9ro de dossier}" examples: - - '2022-09-27T08:44:00+02:00' - TYPE: + - fr.health.samu440.DRFR15DDXAAJJJ0000 + LINK_ROLE: type: string - title: Type de localisation + title: "R\xF4le du lien" x-health-only: false x-cols: 6 - example: example.json#/RESOURCE/0/RGEO/0/TYPE - description: "Type de position indiqu\xE9 pour la ressource :\n- ASP : assembly\ - \ point. Point de rassemblement par d\xE9faut des ressources li\xE9es\ - \ \xE0 la mission. Peut ne pas \xEAtre utilis\xE9\n- CUR : current. Position\ - \ actualis\xE9e de la ressource permettant le suivi g\xE9olocalis\xE9\ - \ des v\xE9hicules notamment. Peut ne pas \xEAtre utilis\xE9\n- INC :\ - \ incident. Consigne relative au positionnement de la ressource sur le\ - \ lieu d'intervention. Peut ne pas \xEAtre utilis\xE9\n- STG : staging\ - \ point. Consigne relative au stationnement des v\xE9hicules ou au stockage\ - \ du mat\xE9riel par exemple. peut ne pas \xEAtre utilis\xE9\n- TGT :\ - \ targer location. Si renseign\xE9, doit \xEAtre coh\xE9rent avec la position\ - \ renseign\xE9e pour la mission.\nPlusieurs positions du m\xEAme type\ - \ avec des horodatages diff\xE9rents peuvent \xEAtre fournies. " + example: example.json#/CONTEXT/LINK/0/LINK_ROLE + description: "Optionnel : \xE0 valoriser avec la constante \"SPRSDS\" pour\ + \ un message EMSI, incluant des missions RDC et/ou OPG et avec le libell\xE9\ + \ \"ADDSTO\" pour un message EMSI, incluant uniquement qu'une demande\ + \ de concours (EMSI-DC)." enum: - - ASP - - CUR - - INC - - STG - - TGT + - ADDSTO + - SPRSDS examples: - - CUR - FREETEXT: + - ADDSTO + additionalProperties: false + example: example.json#/CONTEXT/LINK/0 + examples: + - ID: fr.health.samu440.DRFR15DDXAAJJJ0000 + LINK_ROLE: ADDSTO + origin: + type: object + title: Origine + x-display: expansion-panels + x-health-only: false + required: [] + properties: + ORG_ID: type: string - title: 'Texte libre ' + title: Origine ID x-health-only: false x-cols: 6 - example: example.json#/RESOURCE/0/RGEO/0/FREETEXT - description: "Permet de rajouter des pr\xE9cisions sur la localisation de\ - \ la ressource transmise" + example: example.json#/CONTEXT/ORIGIN/ORG_ID + description: "Optionnel, identifiant du service \xE0 l'origine de l'EMSI\n\ + Se r\xE9f\xE9rer au DSF pour la structure norm\xE9e des organisations\n\ + Le format est le suivant {pays}.{domaine}.{organisation}.{structure interne}*.{unit\xE9\ + \ fonctionnelle}*." examples: - - "Position actualis\xE9e du VSAV 1 Nantes" - ID: + - fr.health.samu440 + USER_ID: type: string - title: ID localisation + title: ID d'utilisateur de l'origine x-health-only: false x-cols: 6 - example: example.json#/RESOURCE/0/RGEO/0/ID - description: "Identifiant unique de la position dans le syst\xE8me du partenaire" + example: example.json#/CONTEXT/ORIGIN/USER_ID + description: "Optionnel, identifiant de l'op\xE9rateur du service \xE0 l'origine\ + \ de l'EMSI, qui g\xE8re l'op\xE9ration. \nCe champ peut \xEAtre diff\xE9\ + rent du calltakerId du message RC-EDA. " examples: - - None - POSITION: - type: array - items: - $ref: '#/components/schemas/position' + - id1234 + NAME: + type: string + title: 'Nom Origine ' + x-health-only: false + x-cols: 6 + example: example.json#/CONTEXT/ORIGIN/NAME + description: "Optionnel, A constituer par le r\xE9dacteur pour \xEAtre intelligible\ + \ (exemple [structure] [code d\xE9partement]).\nCe champ n'est pas norm\xE9\ + \ obligatoirement. Chaque service d\xE9cide de la structure de son nom\ + \ d'origine." + examples: + - samu 44, cgo 77, codis 78, cdau 91, les pompiers du 23 additionalProperties: false - example: example.json#/RESOURCE/0/RGEO/0 - geoPositionsUpdate: - $id: classpath:/json-schema/schema# - x-id: GEO-POS.schema.json# - example: example.json# + example: example.json#/CONTEXT/ORIGIN + examples: + - ORG_ID: fr.health.samu440 + USER_ID: id1234 + NAME: samu 44, cgo 77, codis 78, cdau 91, les pompiers du 23 + etype: type: object - title: geoPositionsUpdate + title: "Type de l'\xE9v\xE9nement" + x-display: expansion-panels + x-health-only: false required: - - position + - CATEGORY + - ACTOR + - LOCTYPE properties: - position: + CATEGORY: type: array + x-health-only: false items: - $ref: '#/components/schemas/position' + type: string + title: "Cat\xE9gorie d'\xE9v\xE9nement" + x-health-only: false + x-cols: 6 + example: example.json#/EVENT/ETYPE/CATEGORY/0 + description: "Le champ peut ne pas \xEAtre interpr\xE9t\xE9 ou renseign\xE9\ + \ avec une valeur comme 'UKN' = 'UNKOWN'\nA constituer depuis ref_mapping_EMSI_NEXSIS" + enum: + - ASB + - ASR + - EXP + - FIR + - FLD + - GND + - HLT + - POL + - PSW + - TRP + - ASB/ABV + - ASR/ATM + - ASR/HGT + - ASR/ICE + - ASR/MAR + - ASR/SIL + - ASR/TRP + - ASR/UDG + - ASR/WAT + - EXP/AER + - EXP/AMM + - EXP/BLEVE + - EXP/CHM + - EXP/CYL + - EXP/DST + - EXP/FRW + - EXP/GAS + - EXP/HGHFLM + - EXP/HPP + - EXP/IMP + - EXP/LPG + - EXP/NUK + - EXP/PRD + - EXP/UKN + - FIR/CLA + - FIR/CLB + - FIR/CLC + - FIR/CLD + - FIR/UKN + - FLD/FLS + - FLD/PLN + - FLD/TID + - GND/AVL + - GND/EQK + - GND/GEY + - GND/LDS + - GND/MUD + - GND/SUB + - GND/VUL + - HLT/EPI + - HLT/FMN + - HLT/NDS + - POL/BIO + - POL/CHM + - POL/NUK + - POL/RAD + - PSW/ALM + - PSW/ASY + - PSW/DEM + - PSW/IMM + - PSW/MEV + - PSW/MIS + - PSW/PKG + - PSW/PRO + - PSW/PRSUIT + - PSW/RIOT + - PSW/SUS + - PSW/WNG + - TRP/BRK + - TRP/COL + - TRP/CRS + examples: + - FIR minItems: 1 - additionalProperties: false - geoResourcesRequest: - $id: classpath:/json-schema/schema# - x-id: GEO-REQ.schema.json# - example: example.json# - type: object - title: geoResourcesRequest - required: - - resourceId - properties: - resourceId: + ACTOR: type: array x-health-only: false items: type: string - title: "Identifiant(s) de la ressource(s) partag\xE9(s)" + title: Acteurs x-health-only: false x-cols: 6 - example: example.json#/resourceId/0 - description: "Liste des ID des ressources pour lesquels le demandeur a\ - \ besoin d'obtenir plus de d\xE9tails. \nA valoriser avec l'identifiant\ - \ partag\xE9 unique de la ressource engag\xE9e, norm\xE9 comme suit\ - \ :\n{orgID}.resource.{ID unique de la ressource partag\xE9e}\nOU -\ - \ uniquement dans le cas o\xF9 un ID unique de ressource ne peut pas\ - \ \xEAtre garanti par l'organisation propri\xE9taire :\n{orgID}.resource.{sendercaseId}.{n\xB0\ - \ d\u2019ordre chronologique de la ressource}" - pattern: ^([\w-]+\.){3,4}resource(\.[\w-]+){1,2}$ + example: example.json#/EVENT/ETYPE/ACTOR/0 + description: "Dans de futures versions de NexSIS, les demandes de concours\ + \ seront diffus\xE9es \xE0 plusieurs partenaires. Seul le syst\xE8me\ + \ de la force concern\xE9e par la demande de concours devra r\xE9pondre\ + \ effectivement \xE0 la demande. Ce syst\xE8me de la force concern\xE9\ + e sera identifi\xE9 comme le \"concourant\" \xE0 la demande de concours.\n\ + Le libell\xE9 du champ ACTOR permet d'identifier le concourant souhait\xE9\ + \ dans la demande de concours. Pour les premi\xE8res impl\xE9mentations\ + \ du contrat d'interface 15-18, il n'y a pas de n\xE9cessit\xE9 pour\ + \ les syst\xE8mes r\xE9cepteurs de filtrer les demandes de concours\ + \ re\xE7ues via le Hub Sant\xE9.\nLe champ MISSION TYPE permet en compl\xE9\ + ment d'identifier l'effet \xE0 obtenir souhait\xE9 \xE0 partir de la\ + \ combinaison du code ACTOR et du code TYPE.\nLe transcodage entre ces\ + \ deux nomenclature est d\xE9crit dans l'annexe \"R\xE9f\xE9rentiel\ + \ Effets \xE0 Obtenir - correspondance EMSI\"" + enum: + - ANI + - BEV + - PPL + - VEH + - ANI/CON + - ANI/DEA + - ANI/DGR + - ANI/FRM + - ANI/HRD + - ANI/INJ + - ANI/LIV + - ANI/PET + - ANI/PRO + - ANI/SPC + - ANI/WLD + - BEV/ASR + - BEV/IND + - BEV/NRES + - BEV/OFF + - BEV/OTH + - BEV/RESDW + - BEV/RESIN + - BEV/RESINT + - BEV/RESOTH + - BEV/SHP + - PPL/1 + - PPL/ADU + - PPL/CHD + - PPL/CNT + - PPL/DED + - PPL/EVC + - PPL/GND + - PPL/GRP + - PPL/HST + - PPL/INT + - PPL/OTH + - PPL/PRS + - PPL/SNS + - PPL/VIO + - PPL/VLN + - PPL/WTN + - PPL/CHD/BAB + - PPL/CHD/CHILD + - PPL/CHD/INF + - PPL/CHD/YOUTH + - PPL/GND/FML + - PPL/GND/MAL + - PPL/GND/UND + - PPL/HST/PCF + - PPL/HST/SUI + - PPL/HST/THT + - PPL/HST/WPN + - PPL/PRS/CST + - PPL/PRS/ESC + - PPL/PRS/HGS + - PPL/SNS/ETH + - PPL/SNS/FOR + - PPL/SNS/LAN + - PPL/SNS/REL + - PPL/SNS/VIP + - PPL/VLN/BLD + - PPL/VLN/DEF + - PPL/VLN/DSB + - PPL/VLN/ELD + - PPL/VLN/INJ + - PPL/VLN/LDF + - PPL/VLN/OBS + - PPL/VLN/PAT + - PPL/VLN/PGN + - PPL/VLN/SLFPRS + - PPL/VLN/UNC + - VEH/AIR + - VEH/ANI + - VEH/BIC + - VEH/CAR + - VEH/EMG + - VEH/MBK + - VEH/MIL + - VEH/OTH + - VEH/TRK + - VEH/TRN + - VEH/VES + - VEH/AIR/ARM + - VEH/AIR/FLBA + - VEH/AIR/FRG + - VEH/AIR/FXBA + - VEH/AIR/GLD + - VEH/AIR/HEL + - VEH/AIR/HVY + - VEH/AIR/JET + - VEH/AIR/LGT + - VEH/AIR/MIL + - VEH/AIR/ORD + - VEH/AIR/OTH + - VEH/AIR/PAS + - VEH/AIR/PRBA + - VEH/AIR/PST + - VEH/AIR/RKT + - VEH/AIR/SEA + - VEH/AIR/SNO + - VEH/AIR/TNK + - VEH/AIR/UAV + - VEH/AIR/ULG + - VEH/OTH/HIL + - VEH/OTH/SNO + - VEH/TRK/ART + - VEH/TRK/EXC + - VEH/TRK/HZD + - VEH/TRK/NHZ + - VEH/TRK/NUK + - VEH/TRK/REF + - VEH/TRK/UND + - VEH/TRN/3RL + - VEH/TRN/DSL + - VEH/TRN/HZD + - VEH/TRN/LOC + - VEH/TRN/NHZ + - VEH/TRN/NUK + - VEH/TRN/OVH + - VEH/TRN/PAS + - VEH/TRN/REF + - VEH/TRN/STM + - VEH/TRN/TRM + - VEH/TRN/UDG + - VEH/TRN/UND + - VEH/TRN/VIP + - VEH/TRN/VLT + - VEH/VES/AMB + - VEH/VES/BOT + - VEH/VES/CNO + - VEH/VES/CRG + - VEH/VES/DSL + - VEH/VES/FLO + - VEH/VES/FRY + - VEH/VES/HOV + - VEH/VES/HZD + - VEH/VES/JSK + - VEH/VES/LEI + - VEH/VES/LIS + - VEH/VES/MIL + - VEH/VES/MPW + - VEH/VES/NHZ + - VEH/VES/NUK + - VEH/VES/PAS + - VEH/VES/POL + - VEH/VES/PTL + - VEH/VES/RSC + - VEH/VES/SAI + - VEH/VES/SBM + - VEH/VES/SINK + - VEH/VES/SPC + - VEH/VES/STE + - VEH/VES/SUNK + - VEH/VES/UNM examples: - - 'fr.health.samu770.resource.VLM250 - - fr.health.samu440.resource.DRFR15DDXAAJJJ0000.1' + - PPL/GRP minItems: 1 - additionalProperties: false - geoResourcesDetails: - $id: classpath:/json-schema/schema# - x-id: GEO-RES.schema.json# - example: example.json# - type: object - title: geoResourcesDetails - required: [] - properties: - resource: + LOCTYPE: type: array + x-health-only: false items: - $ref: '#/components/schemas/resource' + type: string + title: Type de localisation + x-health-only: false + x-cols: 6 + example: example.json#/EVENT/ETYPE/LOCTYPE/0 + description: "Le champ peut ne pas \xEAtre affich\xE9. Par d\xE9faut,\ + \ possible de renvoyer le code \"OTH\" = \"OTHER\"" + examples: + - URB/STRT + minItems: 1 + ENV: + type: string + title: Environnement + x-health-only: false + x-cols: 6 + example: example.json#/EVENT/ETYPE/ENV + description: Optionnel + enum: + - CDIS + - DIS + - TER + - CDIS/RIOT + - DIS/CBRN + - DIS/ERTHQK + - DIS/FIRE + - DIS/FLOOD + - DIS/INDHAZ + - DIS/LNDSLD + - DIS/PWROUT + - DIS/RADCNT + - DIS/SNOW + - DIS/STCLPS + - DIS/STORM + - DIS/TRSPRT + - DIS/TSNAMI + examples: + - CDIS/RIOT additionalProperties: false - error: + example: example.json#/EVENT/ETYPE + reference: $id: classpath:/json-schema/schema# - x-id: RS-ERROR.schema.json# + x-id: RC-REF.schema.json# example: example.json# type: object - title: error + title: reference required: - - errorCode - - errorCause - - referencedDistributionID + - distributionID properties: - errorCode: - $ref: '#/components/schemas/errorCode' - errorCause: + distributionID: type: string - title: Cause d'erreur + title: "Identifiant du message r\xE9f\xE9renc\xE9" x-health-only: false x-cols: 6 - example: example.json#/errorCause - description: La ou les causes d'erreur dans le message source + example: example.json#/distributionID + description: "Identifiant unique du message r\xE9f\xE9renc\xE9" examples: - - The following errors have occurred:\nNot allowed content type - sourceMessage: - $ref: '#/components/schemas/sourceMessage' - referencedDistributionID: + - None + refused: + type: boolean + title: Indicateur de refus de message + x-health-only: false + x-cols: 6 + example: example.json#/refused + description: "Indique si le message acquitt\xE9 a \xE9t\xE9 refus\xE9" + examples: + - None + errorDistributionID: type: string - title: "DistributionID referenc\xE9" + title: "Identifiant du message d'erreur li\xE9" x-health-only: false x-cols: 6 - example: example.json#/referencedDistributionID - description: DistributionID du message source + example: example.json#/errorDistributionID + description: "Identifiant unique du message d'erreur li\xE9" examples: - None additionalProperties: false - errorCode: + examples: + - distributionID: None + refused: None + errorDistributionID: None + casualties: type: object - title: Erreur + title: Victimes x-display: expansion-panels x-health-only: false required: - - statusCode - - statusString + - CONTEXT properties: - statusCode: - type: number - title: Code d'erreur + CONTEXT: + type: string + title: Contexte x-health-only: false x-cols: 6 - example: example.json#/errorCode/statusCode - description: Code numerique represenant l'erreur + example: example.json#/EVENT/CASUALTIES/0/CONTEXT + description: "Le champ doit \xEAtre renseign\xE9 mais peut ne pas \xEAtre\ + \ interpr\xE9t\xE9" examples: - - 101 - statusString: + - REQ_ACTION + DATIME: type: string - title: Titre d'erreur + title: Timestamp du contexte x-health-only: false x-cols: 6 - example: example.json#/errorCode/statusString - description: Chaine de caracteres representant l'erreur + example: example.json#/EVENT/CASUALTIES/0/DATIME + description: Optionnel + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - NOT_ALLOWED_CONTENT_TYPE - additionalProperties: false - example: example.json#/errorCode - examples: - - statusCode: 101 - statusString: NOT_ALLOWED_CONTENT_TYPE - sourceMessage: - type: object - title: Message source - x-display: expansion-panels - x-health-only: false - required: [] - properties: {} - additionalProperties: true - example: example.json#/sourceMessage - examples: - - {} - info: - $id: classpath:/json-schema/schema# - x-id: RS-INFO.schema.json# - example: example.json# - type: object - title: info - required: - - info - properties: - info: - type: string - title: Information + - '2022-09-27T08:00:00+02:00' + DECONT: + type: integer + title: "D\xE9contamination" x-health-only: false x-cols: 6 - example: example.json#/info - description: "\_Champ libre permettant de transmettre des informations quelconques" + example: example.json#/EVENT/CASUALTIES/0/DECONT + description: Optionnel examples: - - None - additionalProperties: false - examples: - - info: None - resourcesInfo: - $id: classpath:/json-schema/schema# - x-id: RS-RI.schema.json# - example: example.json# - type: object - title: resourcesInfo - required: - - caseId - - resource - properties: - caseId: - type: string - title: Identifiant affaire/dossier + - 0 + TRIAGERED: + type: integer + title: Triage Rouge x-health-only: false x-cols: 6 - example: example.json#/caseId - description: "A valoriser avec l'identifiant partag\xE9 de l'affaire/dossier,\ - \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui recoit\ - \ la primo-demande de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9\ - \ comme suit lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ - \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ - e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ - \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ - \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ - \ num\xE9ro unique dans son syst\xE8me." - pattern: ^fr(\.[\w-]+){3,4}$ + example: example.json#/EVENT/CASUALTIES/0/TRIAGERED + description: Optionnel, Triage victime au sens EMSI examples: - - fr.health.samu440.DRFR15440241550012 - resource: - type: array - items: - $ref: '#/components/schemas/resource' - minItems: 1 - additionalProperties: false - team: - type: object - title: "Composition de l'\xE9quipage" - x-display: expansion-panels - x-health-only: false - required: - - doctor - - nurse - - driver - properties: - doctor: - type: boolean - title: "M\xE9decin" + - 0 + TRIAGEYELLOW: + type: integer + title: Triage Jaune x-health-only: false x-cols: 6 - example: example.json#/intervention/team/doctor - description: "Permet d'identifier si un m\xE9decin compose l'\xE9quipe.\n\ - Cette donn\xE9e peut \xEAtre automatiquement d\xE9duite, d\xE8s que le\ - \ nom et pr\xE9nom du m\xE9decin est saisi sur la tablette. " + example: example.json#/EVENT/CASUALTIES/0/TRIAGEYELLOW + description: Optionnel examples: - - OUI - nurse: - type: boolean - title: Infirmier + - 1 + TRIAGEGREEN: + type: integer + title: Triage Vert x-health-only: false x-cols: 6 - example: example.json#/intervention/team/nurse - description: "Permet d'identifier si un infirmier compose l'\xE9quipe.\n\ - Cette donn\xE9e peut \xEAtre automatiquement d\xE9duite, d\xE8s que le\ - \ nom et pr\xE9nom de l'infirmier est saisi sur la tablette. " + example: example.json#/EVENT/CASUALTIES/0/TRIAGEGREEN + description: Optionnel examples: - - NON - driver: - type: boolean - title: Ambulancier/Pilote + - 0 + TRIAGEBLACK: + type: integer + title: Triage Noir x-health-only: false x-cols: 6 - example: example.json#/intervention/team/driver - description: "Permet d'identifier si un ambulancier compose l'\xE9quipe.\n\ - Cette donn\xE9e peut \xEAtre automatiquement d\xE9duite, d\xE8s que le\ - \ nom et pr\xE9nom de l'ambulancier est saisi sur la tablette. " + example: example.json#/EVENT/CASUALTIES/0/TRIAGEBLACK + description: Optionnel examples: - - OUI + - 0 + MISSING: + type: integer + title: Disparus + x-health-only: false + x-cols: 6 + example: example.json#/EVENT/CASUALTIES/0/MISSING + description: Optionnel + examples: + - 0 additionalProperties: false - example: example.json#/intervention/team + example: example.json#/EVENT/CASUALTIES/0 examples: - - doctor: OUI - nurse: NON - driver: OUI - state: + - CONTEXT: REQ_ACTION + DATIME: '2022-09-27T08:00:00+02:00' + DECONT: 0 + TRIAGERED: 0 + TRIAGEYELLOW: 1 + TRIAGEGREEN: 0 + TRIAGEBLACK: 0 + MISSING: 0 + evac: type: object - title: Etat vecteur + title: "Evacu\xE9s" x-display: expansion-panels x-health-only: false - required: - - datetime - - status + required: [] properties: - datetime: + DATIME: type: string - title: Date/heure de changement de statut + title: timestamp x-health-only: false x-cols: 6 - example: example.json#/state/datetime - description: A valoriser avec la date et heure d'engagement de changement - vers le nouveau statut + example: example.json#/EVENT/EVAC/0/DATIME + description: Optionnel pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ format: date-time examples: - - '2022-09-27T08:23:34+02:00' - status: - type: string - title: Statut du vecteur + - '2022-09-27T10:00:00+02:00' + DISPLACED: + type: integer + title: "d\xE9plac\xE9s" x-health-only: false x-cols: 6 - example: example.json#/state/status - description: "A valoriser avec le statut du vecteur. Cf nomenclature associ\xE9\ - e." - enum: - - DECISION - - DECLENCHE - - DEPART - - ANNULE - - ARRIVEE - - PEC - - BILAN - - ORIENTAT - - TRANSP - - ETAPE1 - - TRANSP2 - - ETAPE2 - - TRANSP3 - - DESTIN - - FINPEC - - RETOUR - - RET-BASE - - REN-BASE + example: example.json#/EVENT/EVAC/0/DISPLACED + description: Optionnel examples: - - ARRIVE - availability: - type: boolean - title: "Disponibilit\xE9 du vecteur" + - 0 + EVACUATED: + type: integer + title: "\xE9vacu\xE9s" x-health-only: false x-cols: 6 - example: example.json#/state/availability - description: "A valoriser de mani\xE8re \xE0 indiquer la disponibilit\xE9\ - \ du vecteur.\nTRUE = DISPONIBLE\nFALSE = INDISPONIBLE\nVIDE = INCONNU" + example: example.json#/EVENT/EVAC/0/EVACUATED + description: Optionnel examples: - - 'FALSE' + - 1 additionalProperties: false - example: example.json#/state + example: example.json#/EVENT/EVAC/0 examples: - - datetime: '2022-09-27T08:23:34+02:00' - status: ARRIVE - availability: 'FALSE' - resourcesEngagement: - $id: classpath:/json-schema/schema# - x-id: RS-ER.schema.json# - example: example.json# + - DATIME: '2022-09-27T10:00:00+02:00' + DISPLACED: 0 + EVACUATED: 1 + egeo: type: object - title: resourcesEngagement - required: - - caseId - - resource + title: "Localisation de l'\xE9v\xE9nement" + x-display: expansion-panels + x-health-only: false + required: [] properties: - caseId: + DATIME: type: string - title: Identifiant affaire/dossier + title: "Date des derni\xE8res remont\xE9es de localisation" x-health-only: false x-cols: 6 - example: example.json#/caseId - description: "A valoriser avec l'identifiant partag\xE9 de l'affaire/dossier,\ - \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui recoit\ - \ la primo-demande de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9\ - \ comme suit lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ - \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ - e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ - \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ - \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ - \ num\xE9ro unique dans son syst\xE8me." - pattern: ^fr(\.[\w-]+){3,4}$ + example: example.json#/EVENT/EGEO/0/DATIME + description: "Optionnel\nLa localisation de l'affaire est transmise en amont\ + \ dans un message RC-EDA et le lieu souhait\xE9 pour l'intervention est\ + \ syst\xE9matiquement repr\xE9cis\xE9 dans un objet MISSION" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - fr.health.samu440.DRFR15440241550012 - resource: - type: array - items: - $ref: '#/components/schemas/resource' - minItems: 1 - additionalProperties: false - resourcesRequest: - $id: classpath:/json-schema/schema# - x-id: RS-DR.schema.json# - example: example.json# - type: object - title: resourcesRequest - required: - - caseId - - request - properties: - caseId: + - '2022-09-27T08:26:00+02:00' + TYPE: type: string - title: Identifiant affaire/dossier + title: Type de localisation x-health-only: false x-cols: 6 - example: example.json#/caseId - description: "A valoriser avec l'identifiant partag\xE9 de l'affaire/dossier,\ - \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui recoit\ - \ la primo-demande de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9\ - \ comme suit lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ - \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ - e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ - \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ - \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ - \ num\xE9ro unique dans son syst\xE8me." - pattern: ^fr(\.[\w-]+){3,4}$ + example: example.json#/EVENT/EGEO/0/TYPE + description: "Optionnel\nLa localisation de l'affaire est transmise en amont\ + \ dans un message RC-EDA et le lieu souhait\xE9 pour l'intervention est\ + \ syst\xE9matiquement repr\xE9cis\xE9 dans un objet MISSION.\nA constituer\ + \ depuis ref_mapping_EMSI_EVENT_EGEO_TYPE_NEXSIS_\n/!\\ plusieurs champs\ + \ NEXSIS\n/!\\ plusieurs valeurs par champs d'o\xF9 un groupe \xE0\ + \ cr\xE9er par type diff\xE9rents" + enum: + - AIR + - CMB + - DGR + - FLAME + - GEN + - PLUME + - SMOKE + - VULN + - AIR/COR + - AIR/FLDZ + - AIR/LZ + - AIR/NOFLZN + - AIR/PZ + - AIR/UAVASP + - CMB/CZ + - CMB/DNGR + - CMB/EXTZN + - CMB/IMPTPT + - DGR/BIO + - DGR/BOMB + - DGR/CBRNHZ + - DGR/CBRNRSD + - DGR/CHM + - DGR/HZD + - DGR/MIND + - DGR/NGA + - DGR/NGACIV + - DGR/NUKCNL + - DGR/OBSGEN + - DGR/PRHBAR + - DGR/RAD + - DGR/RADCLD + - DGR/RSTR + - DGR/SGA + - DGR/SITKIL + - DGR/UNXOD + - GEN/AOR + - GEN/ASYGEN + - GEN/ASYSPL + - GEN/BDYOR + - GEN/BDYPOA + - GEN/BDYPT + - GEN/CKPGEN + - GEN/CNTPTL + - GEN/COLDZ + - GEN/COMCKP + - GEN/COMLOW + - GEN/COMMZ + - GEN/COMUP + - GEN/CONTAR + - GEN/CORDON + - GEN/CRDPNT + - GEN/DIVRT + - GEN/DROPPT + - GEN/ENTPT + - GEN/EVENT + - GEN/EXITPT + - GEN/FWCTPT + - GEN/HOTZ + - GEN/INCGRD + - GEN/LA + - GEN/LIMARE + - GEN/LOCAT + - GEN/MSR + - GEN/PSSGPT + - GEN/PTINT + - GEN/RCNSAR + - GEN/RNDZPT + - GEN/ROUTE + - GEN/SAFERT + - GEN/SAFZ + - GEN/SARPNT + - GEN/SEARAR + - GEN/SPRISK + - GEN/STRTPT + - GEN/SUPARE + - GEN/SUPPT + - GEN/TRSTRT + - GEN/WARMZ examples: - - fr.health.samu440.DRFR15440241550012 - request: - $ref: '#/components/schemas/request' - status: + - HLT + WEATHER: + type: array + x-health-only: false + items: + type: string + title: "Condition m\xE9t\xE9o" + x-health-only: false + x-cols: 6 + example: example.json#/EVENT/EGEO/0/WEATHER/0 + description: "Optionnel\nLa localisation de l'affaire est transmise en\ + \ amont dans un message RC-EDA et le lieu souhait\xE9 pour l'intervention\ + \ est syst\xE9matiquement repr\xE9cis\xE9 dans un objet MISSION" + enum: + - HUM + - ICY + - TDS + - TMP + - VIS + - WDS + - WIN + - HUM/CORECT + - HUM/DRZLE + - HUM/FOG + - HUM/RAIN + - HUM/RAINSR + - HUM/THSTRN + - ICY/BLWSNW + - ICY/CLRICE + - ICY/CORECT + - ICY/FDRZLE + - ICY/FRAIN + - ICY/FRZFOG + - ICY/HAIL + - ICY/ICECRY + - ICY/ICEPLT + - ICY/MIXICE + - ICY/RIMICE + - ICY/SLEET + - ICY/SNOW + - ICY/SNWGRN + - ICY/SNWSHR + - TDS/CORECT + - TDS/LGTNNG + - TDS/THST + - VIS/CORECT + - VIS/HAZE + - VIS/SMOKE + - WIN/CORECT + - WIN/CYCL + - WIN/DSTDVL + - WIN/DSTSND + - WIN/DSTSTR + - WIN/FNLCLD + - WIN/HURR + - WIN/SNDSTR + - WIN/STORM + - WIN/TORN + - WIN/TRST + - WIN/TYPH + - WIN/WHIR + - WIN/WTRSPT + examples: + - HUM/RAIN + FREETEXT: type: string - title: Etat annulation + title: "Description de l'\xE9v\xE9nement" x-health-only: false x-cols: 6 - example: example.json#/status - description: "A quoi \xE7a sert d'avoir un objet demande " - enum: - - ANNULEE + example: example.json#/EVENT/EGEO/0/FREETEXT + description: "Optionnel\nLa localisation de l'affaire est transmise en amont\ + \ dans un message RC-EDA et le lieu souhait\xE9 pour l'intervention est\ + \ syst\xE9matiquement repr\xE9cis\xE9 dans un objet MISSION" examples: - - ANNULEE + - Un peu de pluie vers 8h + POSITION: + $ref: '#/components/schemas/position' additionalProperties: false - request: + example: example.json#/EVENT/EGEO/0 + position: type: object - title: Demande de ressource + title: Position x-display: expansion-panels x-health-only: false required: - - requestId + - resourceId - datetime - - purpose + - coord properties: - requestId: + resourceId: type: string - title: "ID Demande partag\xE9" + title: "Identifiant de la ressource partag\xE9" x-health-only: false x-cols: 6 - example: example.json#/request/requestId - description: "Identifiant unique partag\xE9 de la demande de ressource,\ - \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui\ - \ \xE9met la demande \nIl est valoris\xE9 comme suit lors de sa cr\xE9\ - ation : \n{orgID}.request.{ID unique de la demande dans le syst\xE8me\ - \ \xE9metteur}\n\nOU - uniquement si un ID unique de la demande n'est\ - \ pas disponible : \n{OrgId \xE9metteur}.request.{senderCaseId}.{num\xE9\ - ro d\u2019ordre chronologique}" - pattern: ^([\w-]+\.){3,4}request(\.[\w-]+){1,2}$ + example: example.json#/position/0/resourceId + description: "A valoriser avec l'identifiant partag\xE9 unique de la ressource\ + \ engag\xE9e, norm\xE9 comme suit :\n{orgID}.resource.{ID unique de la\ + \ ressource partag\xE9e}\nOU - uniquement dans le cas o\xF9 un ID unique\ + \ de ressource ne peut pas \xEAtre garanti par l'organisation propri\xE9\ + taire :\n{orgID}.resource.{sendercaseId}.{n\xB0 d\u2019ordre chronologique\ + \ de la ressource}" + pattern: ^([\w-]+\.){3,4}resource(\.[\w-]+){1,2}$ examples: - - 'fr.health.samu770.request.1249875 + - 'fr.health.samu770.resource.VLM250 - fr.health.samu690.request.DRFR15690242370035.3' + fr.health.samu440.resource.DRFR15DDXAAJJJ0000.1' datetime: type: string - title: "Date Heure de cr\xE9ation de la demande" + title: "Date et heure des derni\xE8res remont\xE9es d'informations de la\ + \ ressource" x-health-only: false x-cols: 6 - example: example.json#/request/datetime - description: "A valoriser avec le groupe date heure de cr\xE9ation de la\ - \ demande" + example: example.json#/position/0/datetime + description: "Date et heure de la derni\xE8re position connue" pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ format: date-time examples: - - '2022-09-27T08:23:34+02:00' - convention: - type: string - title: Cadre conventionnel - x-health-only: false - x-cols: 6 - example: example.json#/request/convention - description: "A valoriser avec le cadre conventionnel de la demande. Cf\ - \ nomenclature associ\xE9e" - enum: - - DRSIS - - MISSION - - ITSP - - CARENCE - - CONVENT - - SPE - - HORS - - AUTRE1 - - AUTRE2 - - AUTRE3 - examples: - - HORS - purpose: - type: string - title: "Effet \xE0 obtenir" - x-health-only: false - x-cols: 6 - example: example.json#/request/purpose - description: "A valoriser avec le motif de la demande de ressource aupr\xE8\ - s du partenaire. Cf Nomenclature associ\xE9e." - enum: - - SAP - - REGUL - - CUMP - - SMUR - - MG - - PARAMED - - SAMU - - RELEVE - - NOVI - - TIH - - BRANCARD - - BARIA - examples: - - SMUR - deadline: - type: string - title: "D\xE9lai d'intervention" - x-health-only: false - x-cols: 6 - example: example.json#/request/deadline - description: "A valoriser avec le d\xE9lai d'intervention maximum souhait\xE9\ - \ (cf. nomenclature associ\xE9e)" - enum: - - DEL0 - - ASAP - - 30M - - 45M - - 1H - - 2H - - 4H - - 8H - - 12H - - 24H - - RDV - examples: - - 10 - freetext: - type: string - title: "Pr\xE9cisions sur la demande" - x-health-only: false - x-cols: 6 - example: example.json#/request/freetext - description: "Texte libre permettant de d\xE9tailler la demande" - examples: - - "Pr\xE9voir un kit p\xE9diatrique" - additionalProperties: false - example: example.json#/request - examples: - - requestId: 'fr.health.samu770.request.1249875 - - fr.health.samu690.request.DRFR15690242370035.3' - datetime: '2022-09-27T08:23:34+02:00' - convention: HORS - purpose: SMUR - deadline: 10 - freetext: "Pr\xE9voir un kit p\xE9diatrique" - resourcesResponse: - $id: classpath:/json-schema/schema# - x-id: RS-RR.schema.json# - example: example.json# - type: object - title: resourcesResponse - required: - - caseId - - requestId - - response - properties: - caseId: + - '2024-01-27T08:44:00+02:00' + receptionDatetime: type: string - title: Identifiant affaire/dossier + title: "Date et heure de la r\xE9ception de la derni\xE8re localisation" x-health-only: false x-cols: 6 - example: example.json#/caseId - description: "A valoriser avec l'identifiant partag\xE9 de l'affaire/dossier,\ - \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui recoit\ - \ la primo-demande de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9\ - \ comme suit lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ - \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ - e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ - \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ - \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ - \ num\xE9ro unique dans son syst\xE8me." - pattern: ^fr(\.[\w-]+){3,4}$ + example: example.json#/position/0/receptionDatetime + description: "Date et heure de la r\xE9ception de la derni\xE8re position\ + \ connue dans le syst\xE8me de l'organisme" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - fr.health.samu440.DRFR15440241550012 - requestId: - type: string - title: "ID Demande partag\xE9" + - '2024-01-27T08:45:00+02:00' + coord: + type: array + items: + $ref: '#/components/schemas/coord' + minItems: 1 + speed: + type: number + title: Vitesse de la ressource x-health-only: false x-cols: 6 - example: example.json#/requestId - description: "A valoriser avec l'identifiant unique partag\xE9 de la demande\ - \ de ressource, g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire\ - \ qui \xE9met la demande \nIl est valoris\xE9 comme suit lors de sa cr\xE9\ - ation : \n{orgID}.request.{ID unique de la demande dans le syst\xE8me\ - \ \xE9metteur}\n\nOU - uniquement si un ID unique de la demande n'est\ - \ pas disponible : \nOrgId \xE9metteur}.request.{senderCaseId}.{num\xE9\ - ro d\u2019ordre chronologique}" - pattern: ^([\w-]+\.){3,4}request(\.[\w-]+){1,2}$ + example: example.json#/position/0/speed + description: "Vitesse de la ressource enregistr\xE9e, exprim\xE9e en km/h" examples: - - 'fr.health.samu770.request.1249875 - - fr.health.samu690.request.DRFR15690242370035.3' - response: - $ref: '#/components/schemas/response' - additionalProperties: false - response: - type: object - title: "R\xE9ponse \xE0 la demande de ressources" - x-display: expansion-panels - x-health-only: false - required: - - datetime - - answer - properties: - datetime: + - 80 + cap: type: string - title: "Date Heure de r\xE9ponse" + title: Direction de la ressource x-health-only: false x-cols: 6 - example: example.json#/response/datetime - description: "Groupe date heure de d\xE9but de la demande" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time + example: example.json#/position/0/cap + description: "Direction de la ressource, exprim\xE9 en degr\xE9s" examples: - - '2022-09-27T08:23:34+02:00' - answer: + - 96 + move: type: string - title: "R\xE9ponse" + title: Mouvement de la ressource x-health-only: false x-cols: 6 - example: example.json#/response/answer - description: "A valoriser avec la r\xE9ponse apport\xE9e. Cf Nomenclature\ - \ associ\xE9e\nACCEPTEE, REFUSEE, PARTIELLE, DIFFEREE" + example: example.json#/position/0/move + description: Indique si la ressource est en mouvement (MOBILE) ou non (STATIQUE) enum: - - ACCEPTEE - - PARTIELLE - - REFUSEE - - DIFFEREE + - MOBILE + - STATIQUE examples: - - ACCEPTEE - deadline: - type: string - title: "D\xE9lai d'intervention" + - MOBILE + engineOn: + type: boolean + title: Etat du moteur de la ressource x-health-only: false x-cols: 6 - example: example.json#/response/deadline - description: "A valoriser avec le d\xE9lai de r\xE9ponse auquel s'engage\ - \ l'exp\xE9diteur (cf. nomenclature) \nCas particulier : en cas de r\xE9\ - ponse \"Partielle\" car le d\xE9lai souhait\xE9 ne peut pas \xEAtre respect\xE9\ - , \xE0 valoriser obligatoirement avec le d\xE9lai de r\xE9ponse maximum\ - \ auquel s'engage l'exp\xE9diteur de la r\xE9ponse,\n" - enum: - - DEL0 - - ASAP - - 30M - - 45M - - 1H - - 2H - - 4H - - 8H - - 12H - - 24H - - RDV + example: example.json#/position/0/engineOn + description: "Indique si le moteur de la ressource est \xE9teint (FAUX)\ + \ ou allum\xE9/en marche (VRAI)" examples: - - 10 - freetext: + - 1 + groundStatus: + type: boolean + title: "Etat de l'h\xE9licopt\xE8re" + x-health-only: false + x-cols: 6 + example: example.json#/position/0/groundStatus + description: "Indique si l'h\xE9licopt\xE8re est au sol (VRAI) ou en l'air\ + \ (FAUX)" + examples: + - 1 + status: type: string - title: "Pr\xE9cisions sur la r\xE9ponse" + title: Statut de la ressource x-health-only: false x-cols: 6 - example: example.json#/response/freetext - description: "Commentaire libre permettant d'apporter toutes pr\xE9cisions\ - \ utiles \xE0 la r\xE9ponse. Le motif de refus est notifi\xE9 dans ce\ - \ champ." + example: example.json#/position/0/status + description: "D\xE9finit le statut de disponibilit\xE9 d'une ressource.\n\ + - DISPONIBLE : Lorsque la ressource est disponible\n- INDISPONIBLE : Lorsque\ + \ la ressource n'est pas disponible, celle-ci peut \xEAtre engag\xE9e\ + \ ou en maintenance\n- INCONNU : Lorsque le status est inconnu" + enum: + - DISPONIBLE + - INDISPONIBLE + - INCONNU examples: - - SMUR 1 non dispo - additionalProperties: false - example: example.json#/response - examples: - - datetime: '2022-09-27T08:23:34+02:00' - answer: ACCEPTEE - deadline: 10 - freetext: SMUR 1 non dispo - rpis: - $id: classpath:/json-schema/schema# - x-id: RS-RPIS.schema.json# - example: example.json# - type: object - title: rpis - required: - - context - - regulation - - patient - - intervention - - orientation - properties: - context: - $ref: '#/components/schemas/event' - regulation: - $ref: '#/components/schemas/regulation' - patient: - $ref: '#/components/schemas/patient' - intervention: - $ref: '#/components/schemas/intervention' - orientation: - $ref: '#/components/schemas/orientation' - additionalProperties: false - regulation: - type: object - title: "R\xE9gulation m\xE9dicale" - x-display: expansion-panels - x-health-only: false - required: - - whatsHappen - - healthMotive - - medicalLevel - properties: - whatsHappen: - $ref: '#/components/schemas/whatsHappen' - healthMotive: - $ref: '#/components/schemas/healthMotive' - medicalLevel: + - DISPONIBLE + engagedStatus: type: string - title: "Niveau de m\xE9dicalisation initial" + title: "Statut de la ressource engag\xE9e" x-health-only: false x-cols: 6 - example: example.json#/regulation/medicalLevel - description: "Type d\u2019\xE9quipe (m\xE9dical, param\xE9dicale, secouriste).\n\ - A valoriser par un code de la nomenclature SI-SAMU-NIVSOIN.\nPermet de\ - \ d\xE9duire avec la donn\xE9e \"niveau de m\xE9dicalisation du transport\"\ - , si un UMHP est devenu un SMUR. " + example: example.json#/position/0/engagedStatus + description: "Pr\xE9cise le statut d'une ressource qui est engag\xE9e sur\ + \ une mission" enum: - - MED - - PARAMED - - SECOURS - - SANS + - ALERTEE + - PARTIE + - ARRIVEE_LIEU + - TRANSPORT_DESTINATION + - ARRIVEE_DESTINATION + - FIN_MED + - QUITTE_DESTINATION + - RETOUR_DISPONIBLE + - RETOUR_INDISPONIBLE + - ARRIVEE_CENTRE examples: - - PARAMED + - PARTIE additionalProperties: false - example: example.json#/regulation - intervention: + example: example.json#/position/0 + rtype: type: object - title: Intervention + title: Type de la ressource x-display: expansion-panels x-health-only: false required: - - location - - team - - mainDiagnosis + - RCLASS properties: - location: - $ref: '#/components/schemas/location' - team: - $ref: '#/components/schemas/team' - smurStatus: - $ref: '#/components/schemas/resourceStatus' - procedure: + RCLASS: + type: array + x-health-only: false + items: + type: string + title: Classes de la ressource + x-health-only: false + x-cols: 6 + example: example.json#/RESOURCE/0/RTYPE/RCLASS/0 + description: "Permet d'indiquer la classe de l'objet RESOURCE. Plusieurs\ + \ niveau de d\xE9tails sont fournis par la nomenclature associ\xE9e.\n\ + Le premier niveau permet notamment de d\xE9crire la classe principale\ + \ de ressource :\n- Un v\xE9hicule,\n- Le personnel mobilis\xE9,\n-\ + \ Des consommables/ du mat\xE9riel,\n- Un lieu ou une organisation (non\ + \ utilis\xE9 pour le moment)\nVoir nomenclature EMSI associ\xE9e" + enum: + - FAC + - HUM + - MAT + - ORG + - FAC/BRIDGE + - FAC/BUILDN + - FAC/DEPOT + - FAC/NETWK + - FAC/OPR + - FAC/OTH + - FAC/WATFIR + - FAC/BRIDGE/MILVHL + - FAC/BUILDN/BARRCK + - FAC/BUILDN/BUNKER + - FAC/BUILDN/COB + - FAC/BUILDN/CTT + - FAC/BUILDN/DAM + - FAC/BUILDN/GYMNAS + - FAC/BUILDN/HANGAR + - FAC/BUILDN/HOUSE + - FAC/BUILDN/HUT + - FAC/BUILDN/INDINS + - FAC/BUILDN/OFFICE + - FAC/BUILDN/SCHOOL + - FAC/BUILDN/SHD + - FAC/BUILDN/SHLSUR + - FAC/BUILDN/SHLUND + - FAC/BUILDN/SHOP + - FAC/BUILDN/TOW + - FAC/BUILDN/TUN + - FAC/BUILDN/WALL + - FAC/BUILDN/WTW + - FAC/DEPOT/BIO + - FAC/DEPOT/CBRN + - FAC/DEPOT/CHM + - FAC/DEPOT/ENG + - FAC/DEPOT/MED + - FAC/DEPOT/MUN + - FAC/DEPOT/POL + - FAC/NETWK/ADSL + - FAC/NETWK/ATM + - FAC/NETWK/CTZALT + - FAC/NETWK/EMGNWK + - FAC/NETWK/GPRS + - FAC/NETWK/GSM + - FAC/NETWK/INTRAN + - FAC/NETWK/INTRNT + - FAC/NETWK/ISDN + - FAC/NETWK/LAN + - FAC/NETWK/PAMR + - FAC/NETWK/PDMR + - FAC/NETWK/PGSM + - FAC/NETWK/PSTN + - FAC/NETWK/RADEHF + - FAC/NETWK/RADHF + - FAC/NETWK/RADIO + - FAC/NETWK/RADLF + - FAC/NETWK/RADMF + - FAC/NETWK/RADSHF + - FAC/NETWK/RADUHF + - FAC/NETWK/RADVHF + - FAC/NETWK/RADVLF + - FAC/NETWK/RAYNET + - FAC/NETWK/RELAY + - FAC/NETWK/SDSL + - FAC/NETWK/TV + - FAC/NETWK/UMTS + - FAC/NETWK/VDSL + - FAC/NETWK/WAN + - FAC/NETWK/WIMAX + - FAC/NETWK/WLAN + - FAC/OPR/AMBFAC + - FAC/OPR/BDHOLD + - FAC/OPR/CAMP + - FAC/OPR/CASBUR + - FAC/OPR/CASCLR + - FAC/OPR/CASCOL + - FAC/OPR/CP + - FAC/OPR/CSCLPT + - FAC/OPR/CVCLPT + - FAC/OPR/DEBRDP + - FAC/OPR/DECONP + - FAC/OPR/DISBED + - FAC/OPR/DOCFAC + - FAC/OPR/EMMORT + - FAC/OPR/EQPOOL + - FAC/OPR/EVASSP + - FAC/OPR/FACAIR + - FAC/OPR/FACMIL + - FAC/OPR/FACNAV + - FAC/OPR/FAMFRD + - FAC/OPR/FIRFAC + - FAC/OPR/FSAAMM + - FAC/OPR/GERBED + - FAC/OPR/HOLD + - FAC/OPR/HPD + - FAC/OPR/HPT + - FAC/OPR/HSP + - FAC/OPR/HSPFLD + - FAC/OPR/HSPFLD2 + - FAC/OPR/IRM + - FAC/OPR/MARSHAL + - FAC/OPR/MATBED + - FAC/OPR/MEDBED + - FAC/OPR/MEDSPT + - FAC/OPR/MOBLCP + - FAC/OPR/OPCTCN + - FAC/OPR/PHARMA + - FAC/OPR/POLFAC + - FAC/OPR/POLPT + - FAC/OPR/REFARE + - FAC/OPR/RRRSPT + - FAC/OPR/SITLOG + - FAC/OPR/SPTARE + - FAC/OPR/SRVCNT + - FAC/OPR/STCOCN + - FAC/OPR/STCTCN + - FAC/OPR/TCCTCN + - FAC/OTH/ACCOM + - FAC/OTH/AIRFLD + - FAC/OTH/BANK + - FAC/OTH/BATH + - FAC/OTH/CAN + - FAC/OTH/CEM + - FAC/OTH/DCH + - FAC/OTH/ELCINS + - FAC/OTH/ELCSPL + - FAC/OTH/EQIMFT + - FAC/OTH/FACGOV + - FAC/OTH/FACPOW + - FAC/OTH/FACTEC + - FAC/OTH/FACTEL + - FAC/OTH/FACTRN + - FAC/OTH/FATST + - FAC/OTH/FERINS + - FAC/OTH/FHPT + - FAC/OTH/LGRLPT + - FAC/OTH/MAINTF + - FAC/OTH/PTL + - FAC/OTH/RES + - FAC/OTH/VST + - FAC/OTH/WATSPL + - FAC/OTH/WSHFAC + - FAC/WATFIR/FOMBLK + - FAC/WATFIR/HYDRNT + - FAC/WATFIR/TOWNMN + - HUM/CAPAB + - HUM/PERSON + - HUM/UNIT + - HUM/CAPAB/AMB + - HUM/CAPAB/FIR + - HUM/CAPAB/MED + - HUM/CAPAB/MIL + - HUM/CAPAB/POL + - HUM/CAPAB/TRP + - HUM/CAPAB/AMB/INCOFF + - HUM/CAPAB/AMB/PARAMD + - HUM/CAPAB/AMB/SAFOFF + - HUM/CAPAB/AMB/TECHNIC + - HUM/CAPAB/FIR/BACOFF + - HUM/CAPAB/FIR/BAEOFF + - HUM/CAPAB/FIR/COMOFF + - HUM/CAPAB/FIR/CONOFF + - HUM/CAPAB/FIR/DECOFF + - HUM/CAPAB/FIR/FINOFF + - HUM/CAPAB/FIR/FOMOFF + - HUM/CAPAB/FIR/HAZOFF + - HUM/CAPAB/FIR/INCCOM + - HUM/CAPAB/FIR/LIAOFF + - HUM/CAPAB/FIR/LOGOFF + - HUM/CAPAB/FIR/MAROFF + - HUM/CAPAB/FIR/MEDOFF + - HUM/CAPAB/FIR/OPRCOM + - HUM/CAPAB/FIR/SAFOFF + - HUM/CAPAB/FIR/SALOFF + - HUM/CAPAB/FIR/SECCOM + - HUM/CAPAB/FIR/STAOFF + - HUM/CAPAB/FIR/STRCOM + - HUM/CAPAB/FIR/TACCOM + - HUM/CAPAB/FIR/WATOFF + - HUM/CAPAB/MED/ANSPHY + - HUM/CAPAB/MED/DNTPHY + - HUM/CAPAB/MED/DOCTOR + - HUM/CAPAB/MED/GYNPHY + - HUM/CAPAB/MED/HDNPHY + - HUM/CAPAB/MED/INMPHY + - HUM/CAPAB/MED/NURSE + - HUM/CAPAB/MED/ORTPHY + - HUM/CAPAB/MED/OTHPHY + - HUM/CAPAB/MED/PRCPHY + - HUM/CAPAB/MED/PSYPHY + - HUM/CAPAB/MED/PTHPHY + - HUM/CAPAB/MED/RADPHY + - HUM/CAPAB/MED/SURPHY + - HUM/CAPAB/MIL/AUTCDR + - HUM/CAPAB/MIL/INTOFF + - HUM/CAPAB/MIL/LIAISN + - HUM/CAPAB/MIL/OF1 + - HUM/CAPAB/MIL/OF10 + - HUM/CAPAB/MIL/OF2 + - HUM/CAPAB/MIL/OF3 + - HUM/CAPAB/MIL/OF4 + - HUM/CAPAB/MIL/OF5 + - HUM/CAPAB/MIL/OF6 + - HUM/CAPAB/MIL/OF7 + - HUM/CAPAB/MIL/OF8 + - HUM/CAPAB/MIL/OF9 + - HUM/CAPAB/MIL/OFFR + - HUM/CAPAB/MIL/OPSOFF + - HUM/CAPAB/MIL/OR1 + - HUM/CAPAB/MIL/OR2 + - HUM/CAPAB/MIL/OR3 + - HUM/CAPAB/MIL/OR4 + - HUM/CAPAB/MIL/OR5 + - HUM/CAPAB/MIL/OR6 + - HUM/CAPAB/MIL/OR7 + - HUM/CAPAB/MIL/OR8 + - HUM/CAPAB/MIL/OR9 + - HUM/CAPAB/MIL/OTHR + - HUM/CAPAB/MIL/POC + - HUM/CAPAB/POL/BMBOFF + - HUM/CAPAB/POL/CASOFF + - HUM/CAPAB/POL/COFF + - HUM/CAPAB/POL/DETCTV + - HUM/CAPAB/POL/DIVER + - HUM/CAPAB/POL/MOM + - HUM/CAPAB/POL/PIO + - HUM/CAPAB/POL/PMR + - HUM/CAPAB/POL/RDINV + - HUM/CAPAB/POL/SCO + - HUM/CAPAB/POL/SIO + - HUM/CAPAB/POL/STTTK + - HUM/CAPAB/TRP/AIRFW + - HUM/CAPAB/TRP/AIRRW + - HUM/CAPAB/TRP/AMPH + - HUM/CAPAB/TRP/LNDRAI + - HUM/CAPAB/TRP/LNDWHL + - HUM/CAPAB/TRP/SEASS + - HUM/CAPAB/TRP/SEASUR + - HUM/PERSON/CFIROF + - HUM/PERSON/GOVEMP + - HUM/PERSON/INTLCT + - HUM/PERSON/JRNLST + - HUM/PERSON/MEDIA + - HUM/PERSON/NONGVE + - HUM/PERSON/POLCHF + - HUM/PERSON/VILELD + - HUM/PERSON/WRITER + - HUM/UNIT/AIRLSN + - HUM/UNIT/C2 + - HUM/UNIT/CBRN + - HUM/UNIT/CONST + - HUM/UNIT/CRSMAN + - HUM/UNIT/DISID + - HUM/UNIT/EMPOFF + - HUM/UNIT/ENG + - HUM/UNIT/ENVOFF + - HUM/UNIT/FINANC + - HUM/UNIT/FIXWNG + - HUM/UNIT/GUID + - HUM/UNIT/HELCTR + - HUM/UNIT/LAWENF + - HUM/UNIT/LNDSPT + - HUM/UNIT/LOG + - HUM/UNIT/MAGRSP + - HUM/UNIT/MAINT + - HUM/UNIT/MDSADV + - HUM/UNIT/MEDCL + - HUM/UNIT/MST + - HUM/UNIT/MSURTM + - HUM/UNIT/NAVAL + - HUM/UNIT/POL + - HUM/UNIT/PSYCH + - HUM/UNIT/RAILWY + - HUM/UNIT/RECCE + - HUM/UNIT/RELCHP + - HUM/UNIT/RIVERN + - HUM/UNIT/SAR + - HUM/UNIT/SECPOL + - HUM/UNIT/SHRPAT + - HUM/UNIT/SPECIA + - HUM/UNIT/SURG + - HUM/UNIT/TRAUMA + - HUM/UNIT/TRNPTN + - HUM/UNIT/VET + - HUM/UNIT/WLFCOR + - HUM/UNIT/POL/AIRSPT + - HUM/UNIT/POL/MNTPOL + - HUM/UNIT/POL/PUBORD + - HUM/UNIT/POL/RDSPT + - HUM/UNIT/POL/SPCLST + - HUM/UNIT/SAR/CSAR + - HUM/UNIT/SAR/MSAR + - HUM/UNIT/SAR/RSAR + - HUM/UNIT/SAR/RST + - HUM/UNIT/SAR/SSAR + - HUM/UNIT/SAR/USAR + - HUM/UNIT/SAR/WSAR + - HUM/UNIT/SAR/USAR/CANIN + - HUM/UNIT/SAR/USAR/DETEC + - MAT/CM + - MAT/EQ + - MAT/VEH + - MAT/CM/ABSAG + - MAT/CM/BIOAGN + - MAT/CM/CHMAGN + - MAT/CM/CON + - MAT/CM/EXTAG + - MAT/CM/FOO + - MAT/CM/FUEL + - MAT/CM/FUSE + - MAT/CM/LUBRIC + - MAT/CM/MATING + - MAT/CM/MEDICN + - MAT/CM/MEDSPL + - MAT/CM/MEGPHN + - MAT/CM/MONEY + - MAT/CM/OIL + - MAT/CM/PAINT + - MAT/CM/PAPER + - MAT/CM/PPE + - MAT/CM/RATCO + - MAT/CM/RATFR + - MAT/CM/RATTI + - MAT/CM/RETAG + - MAT/CM/TIMBER + - MAT/CM/UNIFRM + - MAT/CM/WIRE + - MAT/CM/WTREXT + - MAT/CM/WTRPOT + - MAT/CM/ABSAG/CHM + - MAT/CM/ABSAG/PHY + - MAT/CM/EXTAG/CO2 + - MAT/CM/EXTAG/DRYMIN + - MAT/CM/EXTAG/FATFIR + - MAT/CM/EXTAG/FOAM + - MAT/CM/EXTAG/HALON + - MAT/CM/EXTAG/INERT + - MAT/CM/EXTAG/METPWD + - MAT/CM/EXTAG/POWDER + - MAT/CM/EXTAG/FOAM/AFFF + - MAT/CM/EXTAG/FOAM/AFFFAR + - MAT/CM/EXTAG/FOAM/OTH + - MAT/CM/FUEL/AVNFU + - MAT/CM/FUEL/DIESEL + - MAT/CM/FUEL/KEROS + - MAT/CM/FUEL/LPG + - MAT/CM/FUEL/NATGAS + - MAT/CM/FUEL/PETROL + - MAT/CM/MEDICN/1STAID + - MAT/CM/MEDICN/AMPHTM + - MAT/CM/MEDICN/BLOOD + - MAT/CM/MEDICN/BNDDR + - MAT/CM/MEDICN/KTMINE + - MAT/CM/MEDICN/MORFIN + - MAT/CM/MEDICN/WTRMED + - MAT/CM/PPE/CBRNKIT + - MAT/CM/PPE/CLOTH + - MAT/CM/PPE/RESP + - MAT/CM/PPE/SURCOT + - MAT/CM/PPE/CLOTH/CHEMCL + - MAT/CM/PPE/CLOTH/FFCLO + - MAT/CM/PPE/CLOTH/FKIT + - MAT/CM/PPE/CLOTH/CHEMCL/CHEMB + - MAT/CM/PPE/CLOTH/CHEMCL/CHEMG + - MAT/CM/PPE/CLOTH/CHEMCL/GASSU + - MAT/CM/PPE/CLOTH/CHEMCL/LIQSU + - MAT/CM/PPE/CLOTH/CHEMCL/SPLASU + - MAT/CM/PPE/CLOTH/CHEMCL/TEMPSU + - MAT/EQ/CBRN + - MAT/EQ/ELC + - MAT/EQ/ENG + - MAT/EQ/OTH + - MAT/EQ/POLICE + - MAT/EQ/CBRN/ABICHM + - MAT/EQ/CBRN/ABIDET + - MAT/EQ/CBRN/ACHDET + - MAT/EQ/CBRN/ARDDET + - MAT/EQ/CBRN/BIOINT + - MAT/EQ/CBRN/BIOSTO + - MAT/EQ/CBRN/CBRNDEC + - MAT/EQ/CBRN/CBRNREC + - MAT/EQ/CBRN/CHMMON + - MAT/EQ/CBRN/MSSPTR + - MAT/EQ/CBRN/RDSPTR + - MAT/EQ/ELC/AMTRAD + - MAT/EQ/ELC/C3I + - MAT/EQ/ELC/COMSYS + - MAT/EQ/ELC/COMVEH + - MAT/EQ/ELC/MULTIRE + - MAT/EQ/ELC/NAV + - MAT/EQ/ELC/NAVRAD + - MAT/EQ/ELC/OTH + - MAT/EQ/ELC/POWGN + - MAT/EQ/ELC/RIDD + - MAT/EQ/ELC/SEN + - MAT/EQ/ELC/SONAR + - MAT/EQ/ELC/THIMC + - MAT/EQ/ELC/VIBRA + - MAT/EQ/ELC/COMSYS/MEGPHN + - MAT/EQ/ELC/COMSYS/PAGER + - MAT/EQ/ELC/COMSYS/PMRRDIO + - MAT/EQ/ELC/COMSYS/PUBADD + - MAT/EQ/ELC/COMSYS/RDBRCT + - MAT/EQ/ENG/BRIDGG + - MAT/EQ/ENG/CNSTVE + - MAT/EQ/ENG/CONST + - MAT/EQ/ENG/DOZER + - MAT/EQ/ENG/ERTHMV + - MAT/EQ/ENG/FIRFGT + - MAT/EQ/ENG/INTEL + - MAT/EQ/ENG/MINECL + - MAT/EQ/ENG/MINEDT + - MAT/EQ/ENG/MINEMR + - MAT/EQ/ENG/WPNPRT + - MAT/EQ/ENG/FIRFGT/BRHTAP + - MAT/EQ/ENG/FIRFGT/CEAR + - MAT/EQ/ENG/FIRFGT/CEC + - MAT/EQ/ENG/FIRFGT/CECH + - MAT/EQ/ENG/FIRFGT/CEEV + - MAT/EQ/ENG/FIRFGT/CEM + - MAT/EQ/ENG/FIRFGT/CEPC + - MAT/EQ/ENG/FIRFGT/CEPO + - MAT/EQ/ENG/FIRFGT/CEPOL + - MAT/EQ/ENG/FIRFGT/CER + - MAT/EQ/ENG/FIRFGT/CESD + - MAT/EQ/ENG/FIRFGT/GRDMON + - MAT/EQ/ENG/FIRFGT/MPR + - MAT/EQ/ENG/FIRFGT/RAR + - MAT/EQ/ENG/FIRFGT/UMIR + - MAT/EQ/ENG/FIRFGT/VAMUR + - MAT/EQ/ENG/INTEL/CAMERA + - MAT/EQ/ENG/INTEL/CCTVCM + - MAT/EQ/ENG/INTEL/CDVDOG + - MAT/EQ/ENG/INTEL/FSPDCM + - MAT/EQ/ENG/INTEL/FTFLCM + - MAT/EQ/ENG/INTEL/PSPDCM + - MAT/EQ/ENG/INTEL/TCKDOG + - MAT/EQ/ENG/WPNPRT/BALVST + - MAT/EQ/ENG/WPNPRT/BATON + - MAT/EQ/ENG/WPNPRT/ENFDOG + - MAT/EQ/ENG/WPNPRT/FIREARM + - MAT/EQ/ENG/WPNPRT/HNDCUF + - MAT/EQ/ENG/WPNPRT/OFFPRT + - MAT/EQ/ENG/WPNPRT/PRSCNT + - MAT/EQ/OTH/BLNKT + - MAT/EQ/OTH/CONTNR + - MAT/EQ/OTH/CUTING + - MAT/EQ/OTH/TANK + - MAT/EQ/OTH/TENT + - MAT/EQ/OTH/WATPUR + - MAT/EQ/POLICE/BRTEST + - MAT/EQ/POLICE/CONE + - MAT/EQ/POLICE/LAMP + - MAT/EQ/POLICE/STINGER + - MAT/EQ/POLICE/TORCH + - MAT/EQ/POLICE/UNFRMC + - MAT/EQ/POLICE/UNFRMN + - MAT/VEH/AIRCRF + - MAT/VEH/HORSE + - MAT/VEH/RAILVE + - MAT/VEH/ROADVE + - MAT/VEH/VESSEL + - MAT/VEH/AIRCRF/AIRTRS + - MAT/VEH/AIRCRF/CMDCTL + - MAT/VEH/AIRCRF/HEL + - MAT/VEH/AIRCRF/HELCMD + - MAT/VEH/AIRCRF/HELMED + - MAT/VEH/AIRCRF/HELREC + - MAT/VEH/AIRCRF/MEDEVC + - MAT/VEH/AIRCRF/PLANE + - MAT/VEH/AIRCRF/POLHEL + - MAT/VEH/AIRCRF/RECCE + - MAT/VEH/AIRCRF/SAR + - MAT/VEH/AIRCRF/TANKER + - MAT/VEH/AIRCRF/UAV + - MAT/VEH/RAILVE/LCMDSE + - MAT/VEH/RAILVE/LCMDSL + - MAT/VEH/RAILVE/LCMELC + - MAT/VEH/RAILVE/LCMSTM + - MAT/VEH/RAILVE/LCMTND + - MAT/VEH/RAILVE/LCMTVE + - MAT/VEH/RAILVE/RLDEQP + - MAT/VEH/RAILVE/RLLSTK + - MAT/VEH/RAILVE/TRAM + - MAT/VEH/RAILVE/WGNART + - MAT/VEH/RAILVE/WGNBRK + - MAT/VEH/RAILVE/WGNCAR + - MAT/VEH/RAILVE/WGNCRG + - MAT/VEH/RAILVE/WGNCSS + - MAT/VEH/RAILVE/WGNCTL + - MAT/VEH/RAILVE/WGNFLB + - MAT/VEH/RAILVE/WGNFUL + - MAT/VEH/RAILVE/WGNHPR + - MAT/VEH/RAILVE/WGNISO + - MAT/VEH/RAILVE/WGNLQD + - MAT/VEH/RAILVE/WGNMNR + - MAT/VEH/RAILVE/WGNOPC + - MAT/VEH/RAILVE/WGNPAS + - MAT/VEH/RAILVE/WGNRFG + - MAT/VEH/RAILVE/WGNRPR + - MAT/VEH/RAILVE/WGNSPP + - MAT/VEH/RAILVE/WGNWAT + - MAT/VEH/RAILVE/WGNWFL + - MAT/VEH/ROADVE/AMBUL + - MAT/VEH/ROADVE/AUTOMO + - MAT/VEH/ROADVE/BICYCL + - MAT/VEH/ROADVE/BUS + - MAT/VEH/ROADVE/CCTRCK + - MAT/VEH/ROADVE/CRANE + - MAT/VEH/ROADVE/FRFGTN + - MAT/VEH/ROADVE/HETVEH + - MAT/VEH/ROADVE/MAINT + - MAT/VEH/ROADVE/MHVEH + - MAT/VEH/ROADVE/MILUV + - MAT/VEH/ROADVE/MOTCYC + - MAT/VEH/ROADVE/POD + - MAT/VEH/ROADVE/POLICE + - MAT/VEH/ROADVE/SEMI + - MAT/VEH/ROADVE/TRACTR + - MAT/VEH/ROADVE/TRAILR + - MAT/VEH/ROADVE/TRLBUS + - MAT/VEH/ROADVE/TRUCK + - MAT/VEH/ROADVE/FRFGTN/AERIAL + - MAT/VEH/ROADVE/FRFGTN/BREATH + - MAT/VEH/ROADVE/FRFGTN/C3 + - MAT/VEH/ROADVE/FRFGTN/FRF + - MAT/VEH/ROADVE/FRFGTN/HAZMAT + - MAT/VEH/ROADVE/FRFGTN/OTHR + - MAT/VEH/ROADVE/FRFGTN/PERCAR + - MAT/VEH/ROADVE/FRFGTN/PUMP + - MAT/VEH/ROADVE/FRFGTN/RSC + - MAT/VEH/ROADVE/POLICE/COMLIA + - MAT/VEH/ROADVE/POLICE/DOGUNT + - MAT/VEH/ROADVE/POLICE/GENPUR + - MAT/VEH/ROADVE/POLICE/HAZMAT + - MAT/VEH/ROADVE/POLICE/MBIKE + - MAT/VEH/ROADVE/POLICE/PATROL + - MAT/VEH/ROADVE/POLICE/RSPONSE + - MAT/VEH/ROADVE/POLICE/TRAFFIC + - MAT/VEH/ROADVE/POLICE/TRANSIT + - MAT/VEH/ROADVE/POLICE/VAN + - MAT/VEH/VESSEL/AIRCAR + - MAT/VEH/VESSEL/AMPH + - MAT/VEH/VESSEL/BARGE + - MAT/VEH/VESSEL/BARSHP + - MAT/VEH/VESSEL/BRDGBT + - MAT/VEH/VESSEL/CNTSHP + - MAT/VEH/VESSEL/CSRSHP + - MAT/VEH/VESSEL/CSTSHP + - MAT/VEH/VESSEL/DPSMVS + - MAT/VEH/VESSEL/FERRY + - MAT/VEH/VESSEL/FIRBOT + - MAT/VEH/VESSEL/FLTCRN + - MAT/VEH/VESSEL/FLTDRG + - MAT/VEH/VESSEL/FLTDRY + - MAT/VEH/VESSEL/FREBLK + - MAT/VEH/VESSEL/FRELIQ + - MAT/VEH/VESSEL/HOSSHP + - MAT/VEH/VESSEL/HOVCRF + - MAT/VEH/VESSEL/ICEBRK + - MAT/VEH/VESSEL/LAUNCH + - MAT/VEH/VESSEL/LGHTER + - MAT/VEH/VESSEL/LNDCRF + - MAT/VEH/VESSEL/MERSHP + - MAT/VEH/VESSEL/MOBLS + - MAT/VEH/VESSEL/OILER + - MAT/VEH/VESSEL/PASSGR + - MAT/VEH/VESSEL/PATVES + - MAT/VEH/VESSEL/POLSPD + - MAT/VEH/VESSEL/PRV + - MAT/VEH/VESSEL/RAFT + - MAT/VEH/VESSEL/RPRSHP + - MAT/VEH/VESSEL/SAILVS + - MAT/VEH/VESSEL/SALSHP + - MAT/VEH/VESSEL/SMLLBO + - MAT/VEH/VESSEL/SUBMAR + - MAT/VEH/VESSEL/TANKER + - MAT/VEH/VESSEL/TENDER + - MAT/VEH/VESSEL/TUGBOT + - ORG/AMBUL + - ORG/CIVP + - ORG/COASTG + - ORG/DOCTOR + - ORG/ENVAGC + - ORG/FIRFS + - ORG/GEND + - ORG/HOSP + - ORG/IDCOM + - ORG/LCRESF + - ORG/LOCAUT + - ORG/MARAGC + - ORG/METAGC + - ORG/MIL + - ORG/NGO + - ORG/POLCNG + - ORG/POLICE + - ORG/RGRESF + - ORG/SPADPV + - ORG/TRS + - ORG/WATAGC + examples: + - MAT/VEH/ROADVE/FRFGTN + minItems: 1 + CAPABILITY: type: array x-health-only: false items: type: string - title: "Actes r\xE9alis\xE9s par le SMUR" + title: "Capacit\xE9s de la ressource" x-health-only: false x-cols: 6 - example: example.json#/intervention/procedure/0 - description: "Pr\xE9cise aussi bien les actes r\xE9alis\xE9s par le SMUR\ - \ sur le lieu de l'intervention \xE0 son arriv\xE9e que ceux r\xE9alis\xE9\ - s avant son intervention. \nA valoriser avec un code de la nomenclature\ - \ ACTES_SMUR(\xE0 venir)." + example: example.json#/RESOURCE/0/RTYPE/CAPABILITY/0 + description: "Permet d'indiquer les capacit\xE9s de la ressource d'apr\xE8\ + s le standard EMSI" examples: - None - mainDiagnosis: - type: string - title: Diagnostic principal SMUR - x-health-only: false - x-cols: 6 - example: example.json#/intervention/mainDiagnosis - description: "Th\xE9saurus SFMU-FEDORU.\nA valoriser par un code de la nomenclature\ - \ Diagnostic SMUR(\xE0 venir)." - examples: - - MD30.Z - associatedDiagnosis: - type: string - title: "Diagnostic associ\xE9 SMUR" - x-health-only: false - x-cols: 6 - example: example.json#/intervention/associatedDiagnosis - description: "Th\xE9saurus SFMU-FEDORU.\nA valoriser par un code de la nomenclature\ - \ Diagnostic SMUR (\xE0 venir)." - examples: - - 8B22.1 - additionalProperties: false - example: example.json#/intervention - orientation: - type: object - title: "D\xE9cision d'orientation" - x-display: expansion-panels - x-health-only: false - required: - - type - properties: - type: - type: string - title: Type de devenir du patient - x-health-only: false - x-cols: 6 - example: example.json#/orientation/type - description: "Indique si le patient est transport\xE9 ou non (Sans transport\ - \ associ\xE9 / avec transport associ\xE9). \nA valoriser par un code de\ - \ la nomenclature SI SAMU-NOMENC_DEVENIR_PAT.\nSi le type d'orientation\ - \ est sans transport associ\xE9, les objets Destination et Transport sont\ - \ facultatifs. " - examples: - - TEMP - destination: - $ref: '#/components/schemas/destination' - decision: - $ref: '#/components/schemas/decision' - additionalProperties: false - example: example.json#/orientation - residentialAddress: - type: object - title: "Adresse de r\xE9sidence" - x-display: expansion-panels - x-health-only: false - required: - - inseeCode - - city - properties: - inseeCode: - type: string - title: "Code INSEE de la commune de r\xE9sidence" - x-health-only: false - x-cols: 6 - example: example.json#/patient/residentialAddress/inseeCode - description: "Code INSEE de la commune actuelle sur la base du Code Officiel\ - \ g\xE9ographique en vigueur. Obligatoire si le nom de la commune est\ - \ renseign\xE9.\nLe Code INSEE peut \xE9galement pr\xE9cis\xE9 le pays\ - \ de r\xE9sidence, si \xE9tranger. " - pattern: ^[0-9]{5}$ - examples: - - 92300 - city: - type: string - title: Nom de la commune + CHARACTERISTICS: + type: array x-health-only: false - x-cols: 6 - example: example.json#/patient/residentialAddress/city - description: Nom officiel de la commune actuelle - examples: - - Levallois-Perret + items: + type: string + title: "Caract\xE9ristiques de la ressource" + x-health-only: false + x-cols: 6 + example: example.json#/RESOURCE/0/RTYPE/CHARACTERISTICS/0 + description: "Permet d'indiquer des caract\xE9ristique physiques de la\ + \ ressource (hauteur, largeur, longueur et poids).\nLe d\xE9tail de\ + \ fonctionnement de cette nomenclature est fournie en annexe." + examples: + - None additionalProperties: false - example: example.json#/patient/residentialAddress - examples: - - inseeCode: 92300 - city: Levallois-Perret - resourceStatus: + example: example.json#/RESOURCE/0/RTYPE + rgeo: type: object - title: Statuts des horaires du SMUR + title: Localisation de la ressource x-display: expansion-panels x-health-only: false required: - - departSmur - - teamAvailable - - returnSmur + - TYPE properties: - departSmur: - type: string - title: "Date et heure du d\xE9part de la base SMUR" - x-health-only: false - x-cols: 6 - example: example.json#/intervention/smurStatus/departSmur - description: "Date et heure \xE0 laquelle le SMUR quitte sa base. \ns'exprime\ - \ au format ISO 8601 YYY-MM-DDThh:mm:ss" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:23:34+02:00' - arrivedSmur: - type: string - title: "Date et heure de l\u2019arriv\xE9e sur les lieux de l\u2019intervention" - x-health-only: false - x-cols: 6 - example: example.json#/intervention/smurStatus/arrivedSmur - description: "Date et heure \xE0 laquelle le SMUR arrive sur les lieux de\ - \ l'intervention. \ns'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time - examples: - - '2022-09-27T08:23:34+02:00' - departLocation: + DATIME: type: string - title: "Date et heure du d\xE9part des lieux de l\u2019intervention" + title: Horaire de la localisation x-health-only: false x-cols: 6 - example: example.json#/intervention/smurStatus/departLocation - description: "Date et heure \xE0 laquelle le SMUR quitte les lieux de l'intervention.\ - \ \ns'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss" + example: example.json#/RESOURCE/0/RGEO/0/DATIME + description: "Horaire associ\xE9 \xE0 l'arriv\xE9e de la ressource sur la\ + \ position. En fonction du TYPE de position, peut indiquer un horaire\ + \ de relev\xE9 de position, un horaire cible d'arriv\xE9e." pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ format: date-time examples: - - '2022-09-27T08:23:34+02:00' - arrivedDestination: + - '2022-09-27T08:44:00+02:00' + TYPE: type: string - title: "Date et heure d\u2019arriv\xE9e \xE0 destination" + title: Type de localisation x-health-only: false x-cols: 6 - example: example.json#/intervention/smurStatus/arrivedDestination - description: "Date et heure \xE0 laquelle le SMUR qui transporte arrive\ - \ \xE0 destination. \ns'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time + example: example.json#/RESOURCE/0/RGEO/0/TYPE + description: "Type de position indiqu\xE9 pour la ressource :\n- ASP : assembly\ + \ point. Point de rassemblement par d\xE9faut des ressources li\xE9es\ + \ \xE0 la mission. Peut ne pas \xEAtre utilis\xE9\n- CUR : current. Position\ + \ actualis\xE9e de la ressource permettant le suivi g\xE9olocalis\xE9\ + \ des v\xE9hicules notamment. Peut ne pas \xEAtre utilis\xE9\n- INC :\ + \ incident. Consigne relative au positionnement de la ressource sur le\ + \ lieu d'intervention. Peut ne pas \xEAtre utilis\xE9\n- STG : staging\ + \ point. Consigne relative au stationnement des v\xE9hicules ou au stockage\ + \ du mat\xE9riel par exemple. peut ne pas \xEAtre utilis\xE9\n- TGT :\ + \ targer location. Si renseign\xE9, doit \xEAtre coh\xE9rent avec la position\ + \ renseign\xE9e pour la mission.\nPlusieurs positions du m\xEAme type\ + \ avec des horodatages diff\xE9rents peuvent \xEAtre fournies. " + enum: + - ASP + - CUR + - INC + - STG + - TGT examples: - - '2022-09-27T08:23:34+02:00' - teamAvailable: + - CUR + FREETEXT: type: string - title: "Date et heure de disponibilit\xE9 de l\u2019\xE9quipe" + title: 'Texte libre ' x-health-only: false x-cols: 6 - example: example.json#/intervention/smurStatus/teamAvailable - description: "Date et heure \xE0 laquelle le SMUR est disponible (dispose\ - \ de tout les \xE9quipements pour faire une autre intervention). \ns'exprime\ - \ au format ISO 8601 YYY-MM-DDThh:mm:ss" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time + example: example.json#/RESOURCE/0/RGEO/0/FREETEXT + description: "Permet de rajouter des pr\xE9cisions sur la localisation de\ + \ la ressource transmise" examples: - - '2022-09-27T08:23:34+02:00' - returnSmur: + - "Position actualis\xE9e du VSAV 1 Nantes" + ID: type: string - title: "Date et heure de retour \xE0 la base SMUR" + title: ID localisation x-health-only: false x-cols: 6 - example: example.json#/intervention/smurStatus/returnSmur - description: "Date et heure \xE0 laquelle le SMUR est de retour \xE0 la\ - \ base. \ns'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss" - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time + example: example.json#/RESOURCE/0/RGEO/0/ID + description: "Identifiant unique de la position dans le syst\xE8me du partenaire" examples: - - '2022-09-27T08:23:34+02:00' - additionalProperties: false - example: example.json#/intervention/smurStatus - examples: - - departSmur: '2022-09-27T08:23:34+02:00' - arrivedSmur: '2022-09-27T08:23:34+02:00' - departLocation: '2022-09-27T08:23:34+02:00' - arrivedDestination: '2022-09-27T08:23:34+02:00' - teamAvailable: '2022-09-27T08:23:34+02:00' - returnSmur: '2022-09-27T08:23:34+02:00' - customContent: - $id: classpath:/json-schema/schema# - x-id: customContent.schema.json# - example: example.json# - type: object - title: customContent - required: [] - properties: {} - additionalProperties: true - examples: - - {} - resourcesStatus: + - None + POSITION: + type: array + items: + $ref: '#/components/schemas/position' + additionalProperties: false + example: example.json#/RESOURCE/0/RGEO/0 + resourcesInfo: $id: classpath:/json-schema/schema# - x-id: RS-SR.schema.json# + x-id: RS-RI.schema.json# example: example.json# type: object - title: resourcesStatus + title: resourcesInfo required: - caseId - - resourceId - - state + - resource properties: caseId: type: string @@ -7106,569 +6650,771 @@ components: pattern: ^fr(\.[\w-]+){3,4}$ examples: - fr.health.samu440.DRFR15440241550012 - resourceId: - type: string - title: "ID Ressource partag\xE9" - x-health-only: false - x-cols: 6 - example: example.json#/resourceId - description: "A valoriser avec l'identifiant partag\xE9 unique de la ressource\ - \ engag\xE9e , norm\xE9 comme suit :\n{orgID}.R.{ID unique de la ressource\ - \ partag\xE9e}\nOu, uniquement dans le cas o\xF9 un ID unique de ressource\ - \ ne peut pas \xEAtre garanti par l'organisation propri\xE9taire :\n{orgID}.R.{ID\ - \ du dossier partag\xE9}.{num\xE9ro d\u2019ordre chronologique ressource}\n\ - \nN.B. Il s'agit de l'orgId de l'organisation \xE0 qui appartient la ressource" - pattern: ^([\w-]+\.){3,4}resource(\.[\w-]+){1,2}$ - examples: - - 'fr.health.samu770.resource.VLM250 ; - - fr.health.samu440.resource.DRFR15DDXAAJJJ0000.1' - state: - $ref: '#/components/schemas/state' + resource: + type: array + items: + $ref: '#/components/schemas/resource' + minItems: 1 additionalProperties: false - technical: - $id: classpath:/json-schema/schema# - x-id: TECHNICAL.schema.json# - example: example.json# + team: type: object - title: technical + title: "Composition de l'\xE9quipage" + x-display: expansion-panels + x-health-only: false required: - - requiredStringField - - requiredArray + - doctor + - nurse + - driver properties: - requiredStringField: - type: string - title: Required string + doctor: + type: boolean + title: "M\xE9decin" x-health-only: false x-cols: 6 - example: example.json#/requiredStringField - description: This field is required + example: example.json#/intervention/team/doctor + description: "Permet d'identifier si un m\xE9decin compose l'\xE9quipe.\n\ + Cette donn\xE9e peut \xEAtre automatiquement d\xE9duite, d\xE8s que le\ + \ nom et pr\xE9nom du m\xE9decin est saisi sur la tablette. " examples: - - None - optionalStringField: - type: string - title: Optional string + - OUI + nurse: + type: boolean + title: Infirmier x-health-only: false x-cols: 6 - example: example.json#/optionalStringField - description: This field is optional + example: example.json#/intervention/team/nurse + description: "Permet d'identifier si un infirmier compose l'\xE9quipe.\n\ + Cette donn\xE9e peut \xEAtre automatiquement d\xE9duite, d\xE8s que le\ + \ nom et pr\xE9nom de l'infirmier est saisi sur la tablette. " examples: - - None - enumerationField: - type: string - title: Enumeration + - NON + driver: + type: boolean + title: Ambulancier/Pilote x-health-only: false x-cols: 6 - example: example.json#/enumerationField - description: This is an enumeration - enum: - - ENUM_VALUE_1 - - ENUM_VALUE_2 - - ENUM_VALUE_3 - - ENUM_VALUE_4 - - ENUM_VALUE_5 + example: example.json#/intervention/team/driver + description: "Permet d'identifier si un ambulancier compose l'\xE9quipe.\n\ + Cette donn\xE9e peut \xEAtre automatiquement d\xE9duite, d\xE8s que le\ + \ nom et pr\xE9nom de l'ambulancier est saisi sur la tablette. " examples: - - None - integerField: - type: integer - title: Optional integer + - OUI + additionalProperties: false + example: example.json#/intervention/team + examples: + - doctor: OUI + nurse: NON + driver: OUI + state: + type: object + title: Etat vecteur + x-display: expansion-panels + x-health-only: false + required: + - datetime + - status + properties: + datetime: + type: string + title: Date/heure de changement de statut x-health-only: false x-cols: 6 - example: example.json#/integerField - description: This is an integer + example: example.json#/state/datetime + description: A valoriser avec la date et heure d'engagement de changement + vers le nouveau statut + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - None - numberField: - type: number - title: Optional number + - '2022-09-27T08:23:34+02:00' + status: + type: string + title: Statut du vecteur x-health-only: false x-cols: 6 - example: example.json#/numberField - description: This is a number + example: example.json#/state/status + description: "A valoriser avec le statut du vecteur. Cf nomenclature associ\xE9\ + e." + enum: + - DECISION + - DECLENCHE + - DEPART + - ANNULE + - ARRIVEE + - PEC + - BILAN + - ORIENTAT + - TRANSP + - ETAPE1 + - TRANSP2 + - ETAPE2 + - TRANSP3 + - DESTIN + - FINPEC + - RETOUR + - RET-BASE + - REN-BASE examples: - - None - booleanField: + - ARRIVE + availability: type: boolean - title: Optional boolean + title: "Disponibilit\xE9 du vecteur" x-health-only: false x-cols: 6 - example: example.json#/booleanField - description: This is a boolean + example: example.json#/state/availability + description: "A valoriser de mani\xE8re \xE0 indiquer la disponibilit\xE9\ + \ du vecteur.\nTRUE = DISPONIBLE\nFALSE = INDISPONIBLE\nVIDE = INCONNU" examples: - - None - objectField: - $ref: '#/components/schemas/technicalObject' - arrayField: - type: array - x-health-only: false - items: - type: string - title: Array - x-health-only: false - x-cols: 6 - example: example.json#/arrayField/0 - description: This is an array - examples: - - None - enumArrayField: - type: array - x-health-only: false - items: - type: string - title: Array of enumerations - x-health-only: false - x-cols: 6 - example: example.json#/enumArrayField/0 - description: This is an array of enumerations - enum: - - ENUM_VALUE_10 - - ENUM_VALUE_20 - - ENUM_VALUE_30 - - ENUM_VALUE_40 - - ENUM_VALUE_50 - examples: - - None - requiredArray: - type: array - x-health-only: false - items: - type: string - title: Required array - x-health-only: false - x-cols: 6 - example: example.json#/requiredArray/0 - description: This array is required - examples: - - None - minItems: 1 - arrayWithMaxLength: - type: array - x-health-only: false - items: - type: string - title: Array with maximum length - x-health-only: false - x-cols: 6 - example: example.json#/arrayWithMaxLength/0 - description: This is an array with a maximum length - examples: - - None - maxItems: 5 - phoneNumberField: + - 'FALSE' + additionalProperties: false + example: example.json#/state + examples: + - datetime: '2022-09-27T08:23:34+02:00' + status: ARRIVE + availability: 'FALSE' + resourcesEngagement: + $id: classpath:/json-schema/schema# + x-id: RS-ER.schema.json# + example: example.json# + type: object + title: resourcesEngagement + required: + - caseId + - resource + properties: + caseId: type: string - title: Phone number with regex + title: Identifiant affaire/dossier x-health-only: false x-cols: 6 - example: example.json#/phoneNumberField - description: Phone number with regex - pattern: ^\+?[0-9]{2,14}$ + example: example.json#/caseId + description: "A valoriser avec l'identifiant partag\xE9 de l'affaire/dossier,\ + \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui recoit\ + \ la primo-demande de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9\ + \ comme suit lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ + \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ + e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ + \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ + \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ + \ num\xE9ro unique dans son syst\xE8me." + pattern: ^fr(\.[\w-]+){3,4}$ examples: - - None - dateField: + - fr.health.samu440.DRFR15440241550012 + resource: + type: array + items: + $ref: '#/components/schemas/resource' + minItems: 1 + additionalProperties: false + resourcesStatus: + $id: classpath:/json-schema/schema# + x-id: RS-SR.schema.json# + example: example.json# + type: object + title: resourcesStatus + required: + - caseId + - resourceId + - state + properties: + caseId: type: string - title: Date + title: Identifiant affaire/dossier x-health-only: false x-cols: 6 - example: example.json#/dateField - description: Date - pattern: ^\d{4}-\d{2}-\d{2}$ + example: example.json#/caseId + description: "A valoriser avec l'identifiant partag\xE9 de l'affaire/dossier,\ + \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui recoit\ + \ la primo-demande de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9\ + \ comme suit lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ + \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ + e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ + \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ + \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ + \ num\xE9ro unique dans son syst\xE8me." + pattern: ^fr(\.[\w-]+){3,4}$ examples: - - None - emailField: + - fr.health.samu440.DRFR15440241550012 + resourceId: type: string - title: Email with regex + title: "ID Ressource partag\xE9" x-health-only: false x-cols: 6 - example: example.json#/emailField - description: Email with regex - pattern: ^[\w\-\.]+@([\w\-]+\.)+[\w\-]{2,4}$ + example: example.json#/resourceId + description: "A valoriser avec l'identifiant partag\xE9 unique de la ressource\ + \ engag\xE9e , norm\xE9 comme suit :\n{orgID}.R.{ID unique de la ressource\ + \ partag\xE9e}\nOu, uniquement dans le cas o\xF9 un ID unique de ressource\ + \ ne peut pas \xEAtre garanti par l'organisation propri\xE9taire :\n{orgID}.R.{ID\ + \ du dossier partag\xE9}.{num\xE9ro d\u2019ordre chronologique ressource}\n\ + \nN.B. Il s'agit de l'orgId de l'organisation \xE0 qui appartient la ressource" + pattern: ^([\w-]+\.){3,4}resource(\.[\w-]+){1,2}$ examples: - - None - datetimeField: + - 'fr.health.samu770.resource.VLM250 ; + + fr.health.samu440.resource.DRFR15DDXAAJJJ0000.1' + state: + $ref: '#/components/schemas/state' + additionalProperties: false + resourcesRequest: + $id: classpath:/json-schema/schema# + x-id: RS-DR.schema.json# + example: example.json# + type: object + title: resourcesRequest + required: + - caseId + - request + properties: + caseId: type: string - title: Datetime + title: Identifiant affaire/dossier x-health-only: false x-cols: 6 - example: example.json#/datetimeField - description: Datetime - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time + example: example.json#/caseId + description: "A valoriser avec l'identifiant partag\xE9 de l'affaire/dossier,\ + \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui recoit\ + \ la primo-demande de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9\ + \ comme suit lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ + \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ + e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ + \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ + \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ + \ num\xE9ro unique dans son syst\xE8me." + pattern: ^fr(\.[\w-]+){3,4}$ examples: - - None - objectLevel1: - $ref: '#/components/schemas/levelOneData' - nomenclatureField: + - fr.health.samu440.DRFR15440241550012 + request: + $ref: '#/components/schemas/request' + status: type: string - title: Nomenclature + title: Etat annulation x-health-only: false x-cols: 6 - example: example.json#/nomenclatureField - description: Enum from extenal nomenclature file + example: example.json#/status + description: "A quoi \xE7a sert d'avoir un objet demande " enum: - - M - - F - - O - - UN + - ANNULEE examples: - - None + - ANNULEE additionalProperties: false - technicalObject: + request: type: object - title: Object + title: Demande de ressource x-display: expansion-panels x-health-only: false required: - - objectPropertyRequiredString + - requestId + - datetime + - purpose properties: - objectPropertyString: + requestId: type: string - title: Object property A + title: "ID Demande partag\xE9" x-health-only: false x-cols: 6 - example: example.json#/objectField/objectPropertyString - description: Object property string + example: example.json#/request/requestId + description: "Identifiant unique partag\xE9 de la demande de ressource,\ + \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui\ + \ \xE9met la demande \nIl est valoris\xE9 comme suit lors de sa cr\xE9\ + ation : \n{orgID}.request.{ID unique de la demande dans le syst\xE8me\ + \ \xE9metteur}\n\nOU - uniquement si un ID unique de la demande n'est\ + \ pas disponible : \n{OrgId \xE9metteur}.request.{senderCaseId}.{num\xE9\ + ro d\u2019ordre chronologique}" + pattern: ^([\w-]+\.){3,4}request(\.[\w-]+){1,2}$ examples: - - None - objectPropertyNumber: - type: number - title: Object property B + - 'fr.health.samu770.request.1249875 + + fr.health.samu690.request.DRFR15690242370035.3' + datetime: + type: string + title: "Date Heure de cr\xE9ation de la demande" x-health-only: false x-cols: 6 - example: example.json#/objectField/objectPropertyNumber - description: Object property number + example: example.json#/request/datetime + description: "A valoriser avec le groupe date heure de cr\xE9ation de la\ + \ demande" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - None - objectPropertyRequiredString: + - '2022-09-27T08:23:34+02:00' + convention: type: string - title: Required Object Property + title: Cadre conventionnel x-health-only: false x-cols: 6 - example: example.json#/objectField/objectPropertyRequiredString - description: Required object property + example: example.json#/request/convention + description: "A valoriser avec le cadre conventionnel de la demande. Cf\ + \ nomenclature associ\xE9e" + enum: + - DRSIS + - MISSION + - ITSP + - CARENCE + - CONVENT + - SPE + - HORS + - AUTRE1 + - AUTRE2 + - AUTRE3 examples: - - None - additionalProperties: false - example: example.json#/objectField - examples: - - objectPropertyString: None - objectPropertyNumber: None - objectPropertyRequiredString: None - levelOneData: - type: object - title: Level 1 Object - x-display: expansion-panels - x-health-only: false - required: [] - properties: - object1Level2: - $ref: '#/components/schemas/levelTwoData' - stringLevel2: + - HORS + purpose: type: string - title: Level 2 Field + title: "Effet \xE0 obtenir" x-health-only: false x-cols: 6 - example: example.json#/objectLevel1/stringLevel2 - description: String field at level 2 + example: example.json#/request/purpose + description: "A valoriser avec le motif de la demande de ressource aupr\xE8\ + s du partenaire. Cf Nomenclature associ\xE9e." + enum: + - SAP + - REGUL + - CUMP + - SMUR + - MG + - PARAMED + - SAMU + - RELEVE + - NOVI + - TIH + - BRANCARD + - BARIA examples: - - None - object2Level2: - $ref: '#/components/schemas/secondLevelTwoData' - additionalProperties: false - example: example.json#/objectLevel1 - levelTwoData: - type: object - title: Level 2 Object 1 - x-display: expansion-panels - x-health-only: false - required: [] - properties: - object1Level3: - $ref: '#/components/schemas/levelThreeData' - stringLevel3: + - SMUR + deadline: + type: string + title: "D\xE9lai d'intervention" + x-health-only: false + x-cols: 6 + example: example.json#/request/deadline + description: "A valoriser avec le d\xE9lai d'intervention maximum souhait\xE9\ + \ (cf. nomenclature associ\xE9e)" + enum: + - DEL0 + - ASAP + - 30M + - 45M + - 1H + - 2H + - 4H + - 8H + - 12H + - 24H + - RDV + examples: + - 10 + freetext: type: string - title: Level 3 Field + title: "Pr\xE9cisions sur la demande" x-health-only: false x-cols: 6 - example: example.json#/objectLevel1/object1Level2/stringLevel3 - description: String field at level 3 + example: example.json#/request/freetext + description: "Texte libre permettant de d\xE9tailler la demande" examples: - - None - additionalProperties: false - example: example.json#/objectLevel1/object1Level2 - secondLevelTwoData: - type: object - title: Level 2 Object 2 - x-display: expansion-panels - x-health-only: false - required: [] - properties: - object2Level3: - $ref: '#/components/schemas/levelThreeData' + - "Pr\xE9voir un kit p\xE9diatrique" additionalProperties: false - example: example.json#/objectLevel1/object2Level2 + example: example.json#/request examples: - - object2Level3: {} - levelThreeData: + - requestId: 'fr.health.samu770.request.1249875 + + fr.health.samu690.request.DRFR15690242370035.3' + datetime: '2022-09-27T08:23:34+02:00' + convention: HORS + purpose: SMUR + deadline: 10 + freetext: "Pr\xE9voir un kit p\xE9diatrique" + resourcesResponse: + $id: classpath:/json-schema/schema# + x-id: RS-RR.schema.json# + example: example.json# type: object - title: Level 3 Object 1 - x-display: expansion-panels - x-health-only: false - required: [] + title: resourcesResponse + required: + - caseId + - requestId + - response properties: - stringLevel4: + caseId: type: string - title: Level 4 Field + title: Identifiant affaire/dossier x-health-only: false x-cols: 6 - example: example.json#/objectLevel1/object1Level2/object1Level3/stringLevel4 - description: String field at level 4 + example: example.json#/caseId + description: "A valoriser avec l'identifiant partag\xE9 de l'affaire/dossier,\ + \ g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire qui recoit\ + \ la primo-demande de secours (cr\xE9ateur du dossier). \nIl est valoris\xE9\ + \ comme suit lors de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ + \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ + e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ + \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ + \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ + \ num\xE9ro unique dans son syst\xE8me." + pattern: ^fr(\.[\w-]+){3,4}$ examples: - - None + - fr.health.samu440.DRFR15440241550012 + requestId: + type: string + title: "ID Demande partag\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/requestId + description: "A valoriser avec l'identifiant unique partag\xE9 de la demande\ + \ de ressource, g\xE9n\xE9r\xE9 une seule fois par le syst\xE8me du partenaire\ + \ qui \xE9met la demande \nIl est valoris\xE9 comme suit lors de sa cr\xE9\ + ation : \n{orgID}.request.{ID unique de la demande dans le syst\xE8me\ + \ \xE9metteur}\n\nOU - uniquement si un ID unique de la demande n'est\ + \ pas disponible : \nOrgId \xE9metteur}.request.{senderCaseId}.{num\xE9\ + ro d\u2019ordre chronologique}" + pattern: ^([\w-]+\.){3,4}request(\.[\w-]+){1,2}$ + examples: + - 'fr.health.samu770.request.1249875 + + fr.health.samu690.request.DRFR15690242370035.3' + response: + $ref: '#/components/schemas/response' additionalProperties: false - example: example.json#/objectLevel1/object1Level2/object1Level3 - examples: - - stringLevel4: None - technicalNoreq: - $id: classpath:/json-schema/schema# - x-id: TECHNICAL_NOREQ.schema.json# - example: example.json# + response: type: object - title: technicalNoreq - required: [] + title: "R\xE9ponse \xE0 la demande de ressources" + x-display: expansion-panels + x-health-only: false + required: + - datetime + - answer properties: - optionalStringField: + datetime: type: string - title: Optional string + title: "Date Heure de r\xE9ponse" x-health-only: false x-cols: 6 - example: example.json#/optionalStringField - description: This field is optional + example: example.json#/response/datetime + description: "Groupe date heure de d\xE9but de la demande" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - None - enumerationField: + - '2022-09-27T08:23:34+02:00' + answer: type: string - title: Enumeration + title: "R\xE9ponse" x-health-only: false x-cols: 6 - example: example.json#/enumerationField - description: This is an enumeration + example: example.json#/response/answer + description: "A valoriser avec la r\xE9ponse apport\xE9e. Cf Nomenclature\ + \ associ\xE9e\nACCEPTEE, REFUSEE, PARTIELLE, DIFFEREE" enum: - - ENUM_VALUE_1 - - ENUM_VALUE_2 - - ENUM_VALUE_3 - - ENUM_VALUE_4 - - ENUM_VALUE_5 - examples: - - None - integerField: - type: integer - title: Optional integer - x-health-only: false - x-cols: 6 - example: example.json#/integerField - description: This is an integer + - ACCEPTEE + - PARTIELLE + - REFUSEE + - DIFFEREE examples: - - None - numberField: - type: number - title: Optional number + - ACCEPTEE + deadline: + type: string + title: "D\xE9lai d'intervention" x-health-only: false x-cols: 6 - example: example.json#/numberField - description: This is a number + example: example.json#/response/deadline + description: "A valoriser avec le d\xE9lai de r\xE9ponse auquel s'engage\ + \ l'exp\xE9diteur (cf. nomenclature) \nCas particulier : en cas de r\xE9\ + ponse \"Partielle\" car le d\xE9lai souhait\xE9 ne peut pas \xEAtre respect\xE9\ + , \xE0 valoriser obligatoirement avec le d\xE9lai de r\xE9ponse maximum\ + \ auquel s'engage l'exp\xE9diteur de la r\xE9ponse,\n" + enum: + - DEL0 + - ASAP + - 30M + - 45M + - 1H + - 2H + - 4H + - 8H + - 12H + - 24H + - RDV examples: - - None - booleanField: - type: boolean - title: Optional boolean + - 10 + freetext: + type: string + title: "Pr\xE9cisions sur la r\xE9ponse" x-health-only: false x-cols: 6 - example: example.json#/booleanField - description: This is a boolean + example: example.json#/response/freetext + description: "Commentaire libre permettant d'apporter toutes pr\xE9cisions\ + \ utiles \xE0 la r\xE9ponse. Le motif de refus est notifi\xE9 dans ce\ + \ champ." examples: - - None - objectField: - $ref: '#/components/schemas/technicalObject' - arrayField: - type: array - x-health-only: false - items: - type: string - title: Array - x-health-only: false - x-cols: 6 - example: example.json#/arrayField/0 - description: This is an array - examples: - - None - enumArrayField: - type: array - x-health-only: false - items: - type: string - title: Array of enumerations - x-health-only: false - x-cols: 6 - example: example.json#/enumArrayField/0 - description: This is an array of enumerations - enum: - - ENUM_VALUE_10 - - ENUM_VALUE_20 - - ENUM_VALUE_30 - - ENUM_VALUE_40 - - ENUM_VALUE_50 - examples: - - None - arrayWithMaxLength: + - SMUR 1 non dispo + additionalProperties: false + example: example.json#/response + examples: + - datetime: '2022-09-27T08:23:34+02:00' + answer: ACCEPTEE + deadline: 10 + freetext: SMUR 1 non dispo + rpis: + $id: classpath:/json-schema/schema# + x-id: RS-RPIS.schema.json# + example: example.json# + type: object + title: rpis + required: + - context + - regulation + - patient + - intervention + - orientation + properties: + context: + $ref: '#/components/schemas/event' + regulation: + $ref: '#/components/schemas/regulation' + patient: + $ref: '#/components/schemas/patient' + intervention: + $ref: '#/components/schemas/intervention' + orientation: + $ref: '#/components/schemas/orientation' + additionalProperties: false + regulation: + type: object + title: "R\xE9gulation m\xE9dicale" + x-display: expansion-panels + x-health-only: false + required: + - whatsHappen + - healthMotive + - medicalLevel + properties: + whatsHappen: + $ref: '#/components/schemas/whatsHappen' + healthMotive: + $ref: '#/components/schemas/healthMotive' + medicalLevel: + type: string + title: "Niveau de m\xE9dicalisation initial" + x-health-only: false + x-cols: 6 + example: example.json#/regulation/medicalLevel + description: "Type d\u2019\xE9quipe (m\xE9dical, param\xE9dicale, secouriste).\n\ + A valoriser par un code de la nomenclature SI-SAMU-NIVSOIN.\nPermet de\ + \ d\xE9duire avec la donn\xE9e \"niveau de m\xE9dicalisation du transport\"\ + , si un UMHP est devenu un SMUR. " + enum: + - MED + - PARAMED + - SECOURS + - SANS + examples: + - PARAMED + additionalProperties: false + example: example.json#/regulation + intervention: + type: object + title: Intervention + x-display: expansion-panels + x-health-only: false + required: + - location + - team + - mainDiagnosis + properties: + location: + $ref: '#/components/schemas/location' + team: + $ref: '#/components/schemas/team' + smurStatus: + $ref: '#/components/schemas/resourceStatus' + procedure: type: array x-health-only: false items: type: string - title: Array with maximum length + title: "Actes r\xE9alis\xE9s par le SMUR" x-health-only: false x-cols: 6 - example: example.json#/arrayWithMaxLength/0 - description: This is an array with a maximum length + example: example.json#/intervention/procedure/0 + description: "Pr\xE9cise aussi bien les actes r\xE9alis\xE9s par le SMUR\ + \ sur le lieu de l'intervention \xE0 son arriv\xE9e que ceux r\xE9alis\xE9\ + s avant son intervention. \nA valoriser avec un code de la nomenclature\ + \ ACTES_SMUR(\xE0 venir)." examples: - None - maxItems: 5 - phoneNumberField: + mainDiagnosis: type: string - title: Phone number with regex + title: Diagnostic principal SMUR x-health-only: false x-cols: 6 - example: example.json#/phoneNumberField - description: Phone number with regex - pattern: ^\+?[0-9]{2,14}$ + example: example.json#/intervention/mainDiagnosis + description: "Th\xE9saurus SFMU-FEDORU.\nA valoriser par un code de la nomenclature\ + \ Diagnostic SMUR(\xE0 venir)." examples: - - None - dateField: + - MD30.Z + associatedDiagnosis: type: string - title: Date + title: "Diagnostic associ\xE9 SMUR" x-health-only: false x-cols: 6 - example: example.json#/dateField - description: Date - pattern: ^\d{4}-\d{2}-\d{2}$ + example: example.json#/intervention/associatedDiagnosis + description: "Th\xE9saurus SFMU-FEDORU.\nA valoriser par un code de la nomenclature\ + \ Diagnostic SMUR (\xE0 venir)." examples: - - None - emailField: + - 8B22.1 + additionalProperties: false + example: example.json#/intervention + orientation: + type: object + title: "D\xE9cision d'orientation" + x-display: expansion-panels + x-health-only: false + required: + - type + properties: + type: type: string - title: Email with regex + title: Type de devenir du patient x-health-only: false x-cols: 6 - example: example.json#/emailField - description: Email with regex - pattern: ^[\w\-\.]+@([\w\-]+\.)+[\w\-]{2,4}$ + example: example.json#/orientation/type + description: "Indique si le patient est transport\xE9 ou non (Sans transport\ + \ associ\xE9 / avec transport associ\xE9). \nA valoriser par un code de\ + \ la nomenclature SI SAMU-NOMENC_DEVENIR_PAT.\nSi le type d'orientation\ + \ est sans transport associ\xE9, les objets Destination et Transport sont\ + \ facultatifs. " examples: - - None - datetimeField: + - TEMP + destination: + $ref: '#/components/schemas/destination' + decision: + $ref: '#/components/schemas/decision' + additionalProperties: false + example: example.json#/orientation + residentialAddress: + type: object + title: "Adresse de r\xE9sidence" + x-display: expansion-panels + x-health-only: false + required: + - inseeCode + - city + properties: + inseeCode: type: string - title: Datetime + title: "Code INSEE de la commune de r\xE9sidence" x-health-only: false x-cols: 6 - example: example.json#/datetimeField - description: Datetime - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ - format: date-time + example: example.json#/patient/residentialAddress/inseeCode + description: "Code INSEE de la commune actuelle sur la base du Code Officiel\ + \ g\xE9ographique en vigueur. Obligatoire si le nom de la commune est\ + \ renseign\xE9.\nLe Code INSEE peut \xE9galement pr\xE9cis\xE9 le pays\ + \ de r\xE9sidence, si \xE9tranger. " + pattern: ^[0-9]{5}$ examples: - - None - objectLevel1: - $ref: '#/components/schemas/levelOneData' - nomenclatureField: + - 92300 + city: type: string - title: Nomenclature + title: Nom de la commune x-health-only: false x-cols: 6 - example: example.json#/nomenclatureField - description: Enum from extenal nomenclature file - enum: - - M - - F - - O - - UN + example: example.json#/patient/residentialAddress/city + description: Nom officiel de la commune actuelle examples: - - None + - Levallois-Perret additionalProperties: false - documentLink: - $id: classpath:/json-schema/schema# - x-id: RS-URL.schema.json# - example: example.json# + example: example.json#/patient/residentialAddress + examples: + - inseeCode: 92300 + city: Levallois-Perret + resourceStatus: type: object - title: documentLink + title: Statuts des horaires du SMUR + x-display: expansion-panels + x-health-only: false required: - - caseId - - document + - departSmur + - teamAvailable + - returnSmur properties: - caseId: + departSmur: type: string - title: "Identifiant partag\xE9 du dossier de r\xE9gulation m\xE9dicale (DRM)" + title: "Date et heure du d\xE9part de la base SMUR" x-health-only: false x-cols: 6 - example: example.json#/caseId - description: "Identifiant partag\xE9 du dossier, g\xE9n\xE9r\xE9 une seule\ - \ fois par le syst\xE8me du partenaire qui recoit la primo-demande de\ - \ secours (cr\xE9ateur du dossier). \nIl est valoris\xE9 comme suit lors\ - \ de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ - \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ - e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ - \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ - \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ - \ num\xE9ro unique dans son syst\xE8me." + example: example.json#/intervention/smurStatus/departSmur + description: "Date et heure \xE0 laquelle le SMUR quitte sa base. \ns'exprime\ + \ au format ISO 8601 YYY-MM-DDThh:mm:ss" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - fr.health.samu440.DRFR15440241550012 - patientId: + - '2022-09-27T08:23:34+02:00' + arrivedSmur: type: string - title: "Identifiant partag\xE9 du patient" + title: "Date et heure de l\u2019arriv\xE9e sur les lieux de l\u2019intervention" x-health-only: false x-cols: 6 - example: example.json#/patientId - description: "Indique l'identifiant partag\xE9 du patient auquel les documents\ - \ sont rattach\xE9s" - pattern: ^([\w-]+\.){3,4}patient(\.[\w-]+){1,2}$ + example: example.json#/intervention/smurStatus/arrivedSmur + description: "Date et heure \xE0 laquelle le SMUR arrive sur les lieux de\ + \ l'intervention. \ns'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - 'fr.health.samu690.patient.P23AZ59 - - fr.health.samu690.patient.DRFR15690242370035.1' - document: - type: array - items: - $ref: '#/components/schemas/document' - minItems: 1 - additionalProperties: false - document: - type: object - title: Documents - x-display: expansion-panels - x-health-only: false - required: - - url - properties: - documentType: + - '2022-09-27T08:23:34+02:00' + departLocation: type: string - title: Type de document + title: "Date et heure du d\xE9part des lieux de l\u2019intervention" x-health-only: false x-cols: 6 - example: example.json#/document/0/documentType - description: Informe l'utilisateur du type de document que le lien URL permet - d'ouvrir + example: example.json#/intervention/smurStatus/departLocation + description: "Date et heure \xE0 laquelle le SMUR quitte les lieux de l'intervention.\ + \ \ns'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - "Photo, ECG, bilan pdf, prescription, carte d'identit\xE9" - url: + - '2022-09-27T08:23:34+02:00' + arrivedDestination: + type: string + title: "Date et heure d\u2019arriv\xE9e \xE0 destination" + x-health-only: false + x-cols: 6 + example: example.json#/intervention/smurStatus/arrivedDestination + description: "Date et heure \xE0 laquelle le SMUR qui transporte arrive\ + \ \xE0 destination. \ns'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:23:34+02:00' + teamAvailable: + type: string + title: "Date et heure de disponibilit\xE9 de l\u2019\xE9quipe" + x-health-only: false + x-cols: 6 + example: example.json#/intervention/smurStatus/teamAvailable + description: "Date et heure \xE0 laquelle le SMUR est disponible (dispose\ + \ de tout les \xE9quipements pour faire une autre intervention). \ns'exprime\ + \ au format ISO 8601 YYY-MM-DDThh:mm:ss" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time + examples: + - '2022-09-27T08:23:34+02:00' + returnSmur: type: string - title: URL + title: "Date et heure de retour \xE0 la base SMUR" x-health-only: false x-cols: 6 - example: example.json#/document/0/url - description: "URL qui permet \xE0 l'utilisateur du LRM d'ouvrir le type\ - \ de document pr\xE9cis\xE9 dans le champ pr\xE9c\xE9dent" + example: example.json#/intervention/smurStatus/returnSmur + description: "Date et heure \xE0 laquelle le SMUR est de retour \xE0 la\ + \ base. \ns'exprime au format ISO 8601 YYY-MM-DDThh:mm:ss" + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\-+]\d{2}:\d{2}$ + format: date-time examples: - - https://hub.esante.gouv.fr/ + - '2022-09-27T08:23:34+02:00' additionalProperties: false - example: example.json#/document/0 + example: example.json#/intervention/smurStatus examples: - - documentType: "Photo, ECG, bilan pdf, prescription, carte d'identit\xE9" - url: https://hub.esante.gouv.fr/ + - departSmur: '2022-09-27T08:23:34+02:00' + arrivedSmur: '2022-09-27T08:23:34+02:00' + departLocation: '2022-09-27T08:23:34+02:00' + arrivedDestination: '2022-09-27T08:23:34+02:00' + teamAvailable: '2022-09-27T08:23:34+02:00' + returnSmur: '2022-09-27T08:23:34+02:00' interventionReport: $id: classpath:/json-schema/schema# x-id: RS-BPV.schema.json# @@ -7907,3 +7653,241 @@ components: ne, Fr\xE9quence respiratoire, Temp\xE9rature, Hemoglucotest, Glasgow" value: None precision: "bras droit/gauche, d\xE9bit oxyg\xE8ne, \u2026" + documentLink: + $id: classpath:/json-schema/schema# + x-id: RS-URL.schema.json# + example: example.json# + type: object + title: documentLink + required: + - caseId + - document + properties: + caseId: + type: string + title: "Identifiant partag\xE9 du dossier de r\xE9gulation m\xE9dicale (DRM)" + x-health-only: false + x-cols: 6 + example: example.json#/caseId + description: "Identifiant partag\xE9 du dossier, g\xE9n\xE9r\xE9 une seule\ + \ fois par le syst\xE8me du partenaire qui recoit la primo-demande de\ + \ secours (cr\xE9ateur du dossier). \nIl est valoris\xE9 comme suit lors\ + \ de sa cr\xE9ation : \n{pays}.{domaine}.{organisation}.{senderCaseId}\n\ + \nIl doit pouvoir \xEAtre g\xE9n\xE9r\xE9 de fa\xE7on d\xE9centralis\xE9\ + e et ne pr\xE9senter aucune ambigu\xEFt\xE9.\n Il doit \xEAtre unique\ + \ dans l'ensemble des syst\xE8mes : le num\xE9ro de dossier fourni par\ + \ celui qui g\xE9n\xE8re l'identifiant partag\xE9 doit donc \xEAtre un\ + \ num\xE9ro unique dans son syst\xE8me." + examples: + - fr.health.samu440.DRFR15440241550012 + patientId: + type: string + title: "Identifiant partag\xE9 du patient" + x-health-only: false + x-cols: 6 + example: example.json#/patientId + description: "Indique l'identifiant partag\xE9 du patient auquel les documents\ + \ sont rattach\xE9s" + pattern: ^([\w-]+\.){3,4}patient(\.[\w-]+){1,2}$ + examples: + - 'fr.health.samu690.patient.P23AZ59 + + fr.health.samu690.patient.DRFR15690242370035.1' + code: + type: string + title: "Code d'acc\xE8s au bilan" + x-health-only: false + x-cols: 6 + example: example.json#/code + description: "Code unitaire par bilan qui permet \xE0 l'utilisateur qui\ + \ re\xE7oit ce lien d'ouvrir le bilan lorsque celui ci ne n\xE9cessite\ + \ pas une connexion nominative mais un code bilan " + examples: + - 5f5h8s9 + document: + type: array + items: + $ref: '#/components/schemas/document' + minItems: 1 + additionalProperties: false + document: + type: object + title: Documents + x-display: expansion-panels + x-health-only: false + required: + - url + properties: + documentType: + type: string + title: Type de document + x-health-only: false + x-cols: 6 + example: example.json#/document/0/documentType + description: Informe l'utilisateur du type de document que le lien URL permet + d'ouvrir + examples: + - "Photo, ECG, bilan pdf, prescription, carte d'identit\xE9" + url: + type: string + title: URL + x-health-only: false + x-cols: 6 + example: example.json#/document/0/url + description: "URL qui permet \xE0 l'utilisateur du LRM d'ouvrir le type\ + \ de document pr\xE9cis\xE9 dans le champ pr\xE9c\xE9dent" + examples: + - https://hub.esante.gouv.fr/ + additionalProperties: false + example: example.json#/document/0 + examples: + - documentType: "Photo, ECG, bilan pdf, prescription, carte d'identit\xE9" + url: https://hub.esante.gouv.fr/ + geoPositionsUpdate: + $id: classpath:/json-schema/schema# + x-id: GEO-POS.schema.json# + example: example.json# + type: object + title: geoPositionsUpdate + required: + - position + properties: + position: + type: array + items: + $ref: '#/components/schemas/position' + minItems: 1 + additionalProperties: false + geoResourcesRequest: + $id: classpath:/json-schema/schema# + x-id: GEO-REQ.schema.json# + example: example.json# + type: object + title: geoResourcesRequest + required: + - resourceId + properties: + resourceId: + type: array + x-health-only: false + items: + type: string + title: "Identifiant(s) de la ressource(s) partag\xE9(s)" + x-health-only: false + x-cols: 6 + example: example.json#/resourceId/0 + description: "Liste des ID des ressources pour lesquels le demandeur a\ + \ besoin d'obtenir plus de d\xE9tails. \nA valoriser avec l'identifiant\ + \ partag\xE9 unique de la ressource engag\xE9e, norm\xE9 comme suit\ + \ :\n{orgID}.resource.{ID unique de la ressource partag\xE9e}\nOU -\ + \ uniquement dans le cas o\xF9 un ID unique de ressource ne peut pas\ + \ \xEAtre garanti par l'organisation propri\xE9taire :\n{orgID}.resource.{sendercaseId}.{n\xB0\ + \ d\u2019ordre chronologique de la ressource}" + pattern: ^([\w-]+\.){3,4}resource(\.[\w-]+){1,2}$ + examples: + - 'fr.health.samu770.resource.VLM250 + + fr.health.samu440.resource.DRFR15DDXAAJJJ0000.1' + minItems: 1 + additionalProperties: false + geoResourcesDetails: + $id: classpath:/json-schema/schema# + x-id: GEO-RES.schema.json# + example: example.json# + type: object + title: geoResourcesDetails + required: [] + properties: + resource: + type: array + items: + $ref: '#/components/schemas/resource' + additionalProperties: false + error: + $id: classpath:/json-schema/schema# + x-id: RS-ERROR.schema.json# + example: example.json# + type: object + title: error + required: + - errorCode + - errorCause + - referencedDistributionID + properties: + errorCode: + $ref: '#/components/schemas/errorCode' + errorCause: + type: string + title: Cause d'erreur + x-health-only: false + x-cols: 6 + example: example.json#/errorCause + description: La ou les causes d'erreur dans le message source + examples: + - The following errors have occurred:\nNot allowed content type + sourceMessage: + $ref: '#/components/schemas/sourceMessage' + referencedDistributionID: + type: string + title: "DistributionID referenc\xE9" + x-health-only: false + x-cols: 6 + example: example.json#/referencedDistributionID + description: DistributionID du message source + examples: + - None + additionalProperties: false + errorCode: + type: object + title: Erreur + x-display: expansion-panels + x-health-only: false + required: + - statusCode + - statusString + properties: + statusCode: + type: number + title: Code d'erreur + x-health-only: false + x-cols: 6 + example: example.json#/errorCode/statusCode + description: Code numerique represenant l'erreur + examples: + - 101 + statusString: + type: string + title: Titre d'erreur + x-health-only: false + x-cols: 6 + example: example.json#/errorCode/statusString + description: Chaine de caracteres representant l'erreur + examples: + - NOT_ALLOWED_CONTENT_TYPE + additionalProperties: false + example: example.json#/errorCode + examples: + - statusCode: 101 + statusString: NOT_ALLOWED_CONTENT_TYPE + sourceMessage: + type: object + title: Message source + x-display: expansion-panels + x-health-only: false + required: [] + properties: {} + additionalProperties: true + example: example.json#/sourceMessage + examples: + - {} + customContent: + $id: classpath:/json-schema/schema# + x-id: customContent.schema.json# + example: example.json# + type: object + title: customContent + required: [] + properties: {} + additionalProperties: true + examples: + - {} diff --git a/csv_parser/out/schemas.yaml b/csv_parser/out/schemas.yaml new file mode 100644 index 0000000000..3f7cd05a52 --- /dev/null +++ b/csv_parser/out/schemas.yaml @@ -0,0 +1,211 @@ +schemas: +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: technical + perimeter: TECHNICAL + rootElement: technical + schema: TECHNICAL + subschema: N + xmlns: cisu:3.0:technical +- automaticGeneration: Y + customExtendClass: ContentMessage + customExtendPackage: com.hubsante.model.edxl + header: N + package: technical.noreq + perimeter: TECHNICAL_NOREQ + rootElement: technicalNoreq + schema: TECHNICAL_NOREQ + subschema: N + xmlns: cisu:3.0:technicalNoreq +- automaticGeneration: N + customExtendClass: null + customExtendPackage: null + header: N + package: rcde + perimeter: 15-15 + rootElement: distributionElement + schema: RC-DE + subschema: N + xmlns: null +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: cisu + perimeter: 15-18 + rootElement: createCase + schema: RC-EDA + subschema: N + xmlns: cisu:3.0 +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: health + perimeter: 15-15 + rootElement: createCaseHealth + schema: RS-EDA + subschema: N + xmlns: cisu:3.0:createCaseHealth +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: health + perimeter: 15-MAJ + rootElement: createCaseHealthUpdate + schema: RS-EDA-MAJ + subschema: Y + xmlns: cisu:3.0:createCaseHealthUpdate +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: emsi + perimeter: 15-15 + rootElement: emsi + schema: EMSI + subschema: N + xmlns: cisu:3.0:emsi +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.info + perimeter: 15-15 + rootElement: resourcesInfo + schema: RS-RI + subschema: N + xmlns: cisu:3.0:resourcesinfo +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.info + perimeter: 15-SMUR + rootElement: resourcesEngagement + schema: RS-ER + subschema: Y + xmlns: cisu:3.0:resourcesengagement +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.status + perimeter: 15-15 + rootElement: resourcesStatus + schema: RS-SR + subschema: N + xmlns: cisu:3.0:resourcesstatus +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.request + perimeter: 15-15 + rootElement: resourcesRequest + schema: RS-DR + subschema: N + xmlns: cisu:3.0:resourcesrequest +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: resources.response + perimeter: 15-15 + rootElement: resourcesResponse + schema: RS-RR + subschema: N + xmlns: cisu:3.0:resourcesresponse +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: rpis + perimeter: 15-15 + rootElement: rpis + schema: RS-RPIS + subschema: N + xmlns: cisu:3.0:rpis +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: interventionreport + perimeter: 15-SMUR + rootElement: interventionReport + schema: RS-BPV + subschema: N + xmlns: cisu:3.0:interventionreport +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: documentlink + perimeter: 15-SMUR + rootElement: documentLink + schema: RS-URL + subschema: N + xmlns: cisu:3.0:documentlink +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: geolocation + perimeter: 15-15 + rootElement: geoPositionsUpdate + schema: GEO-POS + subschema: N + xmlns: cisu:3.0:geopositionsupdate +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: geolocation + perimeter: 15-15 + rootElement: geoResourcesRequest + schema: GEO-REQ + subschema: N + xmlns: cisu:3.0:georesourcesrequest +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: geolocation + perimeter: 15-15 + rootElement: geoResourcesDetails + schema: GEO-RES + subschema: N + xmlns: cisu:3.0:georesourcesdetails +- automaticGeneration: N + customExtendClass: null + customExtendPackage: null + header: N + package: report + perimeter: 15-15 + rootElement: error + schema: RS-ERROR + subschema: N + xmlns: cisu:3.0 +- automaticGeneration: Y + customExtendClass: null + customExtendPackage: null + header: Y + package: reference + perimeter: 15-15 + rootElement: reference + schema: RC-REF + subschema: N + xmlns: cisu:3.0 +- automaticGeneration: N + customExtendClass: null + customExtendPackage: null + header: N + package: customContent + perimeter: 15-15 + rootElement: customContent + schema: customContent + subschema: N + xmlns: cisu:3.0 diff --git a/csv_parser/workflow.py b/csv_parser/workflow.py index 1cc5e1d4aa..f9d7b91e12 100644 --- a/csv_parser/workflow.py +++ b/csv_parser/workflow.py @@ -12,33 +12,13 @@ prog='Workflow Automator', description='Automates the build workflow for the model (specs, schemas, ...)', ) -parser.add_argument('-s', '--stage', required=True, choices=['parser_and_mv', 'test_case_parser'], +parser.add_argument('-s', '--stage', required=True, choices=['parser_and_mv', 'test_case_parser', 'output_schemas_yaml'], help='The workflow stage to run') args = parser.parse_args() print(args.stage) # ---------------------------------------- SCHEMAS CONFIGURATION -sheets = [ - 'RC-DE', - 'RC-EDA', - 'EMSI', - 'GEO-POS', - 'GEO-REQ', - 'GEO-RES', - 'RC-REF', - 'RS-ERROR', - 'RS-INFO', - 'RS-RI', - 'RS-DR', - 'RS-RR', - 'RS-RPIS', - 'customContent', - 'RS-SR', - 'TECHNICAL', - 'RS-URL', - 'RS-BPV' -] perimeters = [{ 'name': 'Périmetre 15-15', @@ -48,6 +28,12 @@ # ---------------------------------------- STAGE FUNCTIONS def parser_and_mv(): + # Iterate over files in the models folder and extract every sheet name that doesn't start with # + sheets = [] + for file in os.listdir('models'): + if file.endswith('.xlsx'): + sheets += [sheet for sheet in pd.ExcelFile(f'./models/{file}').sheet_names if not sheet.startswith('#')] + # Iterate over each sheet for sheet in sheets: full_df = None @@ -123,11 +109,69 @@ def test_case_parser(): # Generate test-cases.json test_case_generator.run(perimeters) +def output_schemas_yaml(): + print("Generating schemas.yaml file...") + # Iterate over every non-# sheet in the models folder and extract the mini-tables starting at A1 which contain + # all the necessary schema information; specifically the following fields in the following order: + # schema, perimeter, rootElement, package, customExtendPackage, customExtendClass, automaticGeneration, subschema + # header, xmlns + schemaMap = {'schemas': []} + for file in os.listdir('models'): + if file.endswith('.xlsx'): + for sheet in pd.ExcelFile(f'./models/{file}').sheet_names: + if not sheet.startswith('#'): + full_df = pd.read_excel(f'./models/{file}', header=None, sheet_name=sheet) + try: + #First, find the cell containing the header 'schema', which denotes the start of the schema details table + schemaIndex = None + for i in range(full_df.shape[0]): + if full_df.iloc[i, 0] == 'schema': + schemaIndex = i + break + #Then, find the width of the schema details table + schemaWidth = None + for i in range(full_df.shape[1]): + if pd.isna(full_df.iloc[schemaIndex, i]): + schemaWidth = i + break + + #Then, find the end of the table + endIndex = None + for i in range(schemaIndex + 1, full_df.shape[0]): + if pd.isna(full_df.iloc[i, 0]): + endIndex = i + break + except: + print(f"Error in sheet {sheet}: schema details table is not well formatted.") + exit(1) + #Now that we have the dimensions of the table, we can extract it + schemaTable = full_df.iloc[schemaIndex:endIndex, 0:schemaWidth] + schemaTable.columns = schemaTable.iloc[0] + schemaTable = schemaTable[1:] + schemaTable.reset_index(drop=True, inplace=True) + + #Replace NaN values with null + schemaTable = schemaTable.where(pd.notnull(schemaTable), None) + + #Add the dataframes as dicts to the schemaMap['schemas'] + print("Successfully detected schema table in sheet", sheet) + for i in range(schemaTable.shape[0]): + schemaMap['schemas'].append(schemaTable.iloc[i].to_dict()) + print("Added schema to schemaMap:", schemaTable.at[i, 'schema']) + + #Write the schemaMap to a yaml file + with open('out/schemas.yaml', 'w') as file: + yaml.dump(schemaMap, file) + print("schemas.yaml successfully written to file.") + + # ---------------------------------------- RUN if args.stage == 'parser_and_mv': parser_and_mv() elif args.stage == 'test_case_parser': test_case_parser() +elif args.stage == 'output_schemas_yaml': + output_schemas_yaml() else: exit(1) diff --git a/generator/config/EMSI/EMSI.generator-config.json b/generator/config/generated/EMSI/EMSI.generator-config.json similarity index 99% rename from generator/config/EMSI/EMSI.generator-config.json rename to generator/config/generated/EMSI/EMSI.generator-config.json index f2df4add57..76300591b4 100644 --- a/generator/config/EMSI/EMSI.generator-config.json +++ b/generator/config/generated/EMSI/EMSI.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/EMSI/EMSI.usecase.generator-config.json b/generator/config/generated/EMSI/EMSI.usecase.generator-config.json similarity index 94% rename from generator/config/EMSI/EMSI.usecase.generator-config.json rename to generator/config/generated/EMSI/EMSI.usecase.generator-config.json index 8bbf028685..041dba43dc 100644 --- a/generator/config/EMSI/EMSI.usecase.generator-config.json +++ b/generator/config/generated/EMSI/EMSI.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:emsi", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/EMSI/EMSI.wrapper.generator-config.json b/generator/config/generated/EMSI/EMSI.wrapper.generator-config.json similarity index 99% rename from generator/config/EMSI/EMSI.wrapper.generator-config.json rename to generator/config/generated/EMSI/EMSI.wrapper.generator-config.json index edbf86523f..5ac43b3657 100644 --- a/generator/config/EMSI/EMSI.wrapper.generator-config.json +++ b/generator/config/generated/EMSI/EMSI.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/GEO-POS/GEO-POS.generator-config.json b/generator/config/generated/GEO-POS/GEO-POS.generator-config.json similarity index 99% rename from generator/config/GEO-POS/GEO-POS.generator-config.json rename to generator/config/generated/GEO-POS/GEO-POS.generator-config.json index 4b8e2e48c7..9a79e95b7c 100644 --- a/generator/config/GEO-POS/GEO-POS.generator-config.json +++ b/generator/config/generated/GEO-POS/GEO-POS.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/GEO-POS/GEO-POS.usecase.generator-config.json b/generator/config/generated/GEO-POS/GEO-POS.usecase.generator-config.json similarity index 92% rename from generator/config/GEO-POS/GEO-POS.usecase.generator-config.json rename to generator/config/generated/GEO-POS/GEO-POS.usecase.generator-config.json index 494cb7d422..96453be94f 100644 --- a/generator/config/GEO-POS/GEO-POS.usecase.generator-config.json +++ b/generator/config/generated/GEO-POS/GEO-POS.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:geopositionsupdate", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/GEO-POS/GEO-POS.wrapper.generator-config.json b/generator/config/generated/GEO-POS/GEO-POS.wrapper.generator-config.json similarity index 99% rename from generator/config/GEO-POS/GEO-POS.wrapper.generator-config.json rename to generator/config/generated/GEO-POS/GEO-POS.wrapper.generator-config.json index 08fb5fc7a1..28c1a17947 100644 --- a/generator/config/GEO-POS/GEO-POS.wrapper.generator-config.json +++ b/generator/config/generated/GEO-POS/GEO-POS.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/GEO-REQ/GEO-REQ.generator-config.json b/generator/config/generated/GEO-REQ/GEO-REQ.generator-config.json similarity index 99% rename from generator/config/GEO-REQ/GEO-REQ.generator-config.json rename to generator/config/generated/GEO-REQ/GEO-REQ.generator-config.json index 97c6f33a10..f0558414c9 100644 --- a/generator/config/GEO-REQ/GEO-REQ.generator-config.json +++ b/generator/config/generated/GEO-REQ/GEO-REQ.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/GEO-REQ/GEO-REQ.usecase.generator-config.json b/generator/config/generated/GEO-REQ/GEO-REQ.usecase.generator-config.json similarity index 92% rename from generator/config/GEO-REQ/GEO-REQ.usecase.generator-config.json rename to generator/config/generated/GEO-REQ/GEO-REQ.usecase.generator-config.json index 2a1636ddd5..0e6e790056 100644 --- a/generator/config/GEO-REQ/GEO-REQ.usecase.generator-config.json +++ b/generator/config/generated/GEO-REQ/GEO-REQ.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:georesourcesrequest", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/GEO-REQ/GEO-REQ.wrapper.generator-config.json b/generator/config/generated/GEO-REQ/GEO-REQ.wrapper.generator-config.json similarity index 99% rename from generator/config/GEO-REQ/GEO-REQ.wrapper.generator-config.json rename to generator/config/generated/GEO-REQ/GEO-REQ.wrapper.generator-config.json index 8a42eb7c8e..362366c25c 100644 --- a/generator/config/GEO-REQ/GEO-REQ.wrapper.generator-config.json +++ b/generator/config/generated/GEO-REQ/GEO-REQ.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/GEO-RES/GEO-RES.generator-config.json b/generator/config/generated/GEO-RES/GEO-RES.generator-config.json similarity index 99% rename from generator/config/GEO-RES/GEO-RES.generator-config.json rename to generator/config/generated/GEO-RES/GEO-RES.generator-config.json index b4511b8609..256eba73a2 100644 --- a/generator/config/GEO-RES/GEO-RES.generator-config.json +++ b/generator/config/generated/GEO-RES/GEO-RES.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/GEO-RES/GEO-RES.usecase.generator-config.json b/generator/config/generated/GEO-RES/GEO-RES.usecase.generator-config.json similarity index 92% rename from generator/config/GEO-RES/GEO-RES.usecase.generator-config.json rename to generator/config/generated/GEO-RES/GEO-RES.usecase.generator-config.json index e47d421679..b5c50e7d3f 100644 --- a/generator/config/GEO-RES/GEO-RES.usecase.generator-config.json +++ b/generator/config/generated/GEO-RES/GEO-RES.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:georesourcesdetails", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/GEO-RES/GEO-RES.wrapper.generator-config.json b/generator/config/generated/GEO-RES/GEO-RES.wrapper.generator-config.json similarity index 99% rename from generator/config/GEO-RES/GEO-RES.wrapper.generator-config.json rename to generator/config/generated/GEO-RES/GEO-RES.wrapper.generator-config.json index 0085f70b9d..1c7ee7366f 100644 --- a/generator/config/GEO-RES/GEO-RES.wrapper.generator-config.json +++ b/generator/config/generated/GEO-RES/GEO-RES.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RC-EDA/RC-EDA.generator-config.json b/generator/config/generated/RC-EDA/RC-EDA.generator-config.json similarity index 99% rename from generator/config/RC-EDA/RC-EDA.generator-config.json rename to generator/config/generated/RC-EDA/RC-EDA.generator-config.json index 4bb3956265..2271a4c98c 100644 --- a/generator/config/RC-EDA/RC-EDA.generator-config.json +++ b/generator/config/generated/RC-EDA/RC-EDA.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RC-EDA/RC-EDA.usecase.generator-config.json b/generator/config/generated/RC-EDA/RC-EDA.usecase.generator-config.json similarity index 95% rename from generator/config/RC-EDA/RC-EDA.usecase.generator-config.json rename to generator/config/generated/RC-EDA/RC-EDA.usecase.generator-config.json index f8d1be1cb4..d5ab976476 100644 --- a/generator/config/RC-EDA/RC-EDA.usecase.generator-config.json +++ b/generator/config/generated/RC-EDA/RC-EDA.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RC-EDA/RC-EDA.wrapper.generator-config.json b/generator/config/generated/RC-EDA/RC-EDA.wrapper.generator-config.json similarity index 99% rename from generator/config/RC-EDA/RC-EDA.wrapper.generator-config.json rename to generator/config/generated/RC-EDA/RC-EDA.wrapper.generator-config.json index b1fada12e1..e1aa86a3e8 100644 --- a/generator/config/RC-EDA/RC-EDA.wrapper.generator-config.json +++ b/generator/config/generated/RC-EDA/RC-EDA.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RC-REF/RC-REF.generator-config.json b/generator/config/generated/RC-REF/RC-REF.generator-config.json similarity index 99% rename from generator/config/RC-REF/RC-REF.generator-config.json rename to generator/config/generated/RC-REF/RC-REF.generator-config.json index 4eba1fb608..3b0ed4f3ba 100644 --- a/generator/config/RC-REF/RC-REF.generator-config.json +++ b/generator/config/generated/RC-REF/RC-REF.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RC-REF/RC-REF.usecase.generator-config.json b/generator/config/generated/RC-REF/RC-REF.usecase.generator-config.json similarity index 95% rename from generator/config/RC-REF/RC-REF.usecase.generator-config.json rename to generator/config/generated/RC-REF/RC-REF.usecase.generator-config.json index d24c95d9b1..7c6eb5c48e 100644 --- a/generator/config/RC-REF/RC-REF.usecase.generator-config.json +++ b/generator/config/generated/RC-REF/RC-REF.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RC-REF/RC-REF.wrapper.generator-config.json b/generator/config/generated/RC-REF/RC-REF.wrapper.generator-config.json similarity index 99% rename from generator/config/RC-REF/RC-REF.wrapper.generator-config.json rename to generator/config/generated/RC-REF/RC-REF.wrapper.generator-config.json index 2d4ea05b76..d3fc9fc114 100644 --- a/generator/config/RC-REF/RC-REF.wrapper.generator-config.json +++ b/generator/config/generated/RC-REF/RC-REF.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-BPV/RS-BPV.generator-config.json b/generator/config/generated/RS-BPV/RS-BPV.generator-config.json similarity index 99% rename from generator/config/RS-BPV/RS-BPV.generator-config.json rename to generator/config/generated/RS-BPV/RS-BPV.generator-config.json index 02d52c9936..4bae9e88d7 100644 --- a/generator/config/RS-BPV/RS-BPV.generator-config.json +++ b/generator/config/generated/RS-BPV/RS-BPV.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-BPV/RS-BPV.usecase.generator-config.json b/generator/config/generated/RS-BPV/RS-BPV.usecase.generator-config.json similarity index 92% rename from generator/config/RS-BPV/RS-BPV.usecase.generator-config.json rename to generator/config/generated/RS-BPV/RS-BPV.usecase.generator-config.json index a615b78052..1e1ad46b78 100644 --- a/generator/config/RS-BPV/RS-BPV.usecase.generator-config.json +++ b/generator/config/generated/RS-BPV/RS-BPV.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:interventionreport", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-BPV/RS-BPV.wrapper.generator-config.json b/generator/config/generated/RS-BPV/RS-BPV.wrapper.generator-config.json similarity index 100% rename from generator/config/RS-BPV/RS-BPV.wrapper.generator-config.json rename to generator/config/generated/RS-BPV/RS-BPV.wrapper.generator-config.json diff --git a/generator/config/RS-DR/RS-DR.generator-config.json b/generator/config/generated/RS-DR/RS-DR.generator-config.json similarity index 99% rename from generator/config/RS-DR/RS-DR.generator-config.json rename to generator/config/generated/RS-DR/RS-DR.generator-config.json index b4b62052b1..cfd57dc960 100644 --- a/generator/config/RS-DR/RS-DR.generator-config.json +++ b/generator/config/generated/RS-DR/RS-DR.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-DR/RS-DR.usecase.generator-config.json b/generator/config/generated/RS-DR/RS-DR.usecase.generator-config.json similarity index 92% rename from generator/config/RS-DR/RS-DR.usecase.generator-config.json rename to generator/config/generated/RS-DR/RS-DR.usecase.generator-config.json index 005cedb9ca..0051a6dac8 100644 --- a/generator/config/RS-DR/RS-DR.usecase.generator-config.json +++ b/generator/config/generated/RS-DR/RS-DR.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:resourcesrequest", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-DR/RS-DR.wrapper.generator-config.json b/generator/config/generated/RS-DR/RS-DR.wrapper.generator-config.json similarity index 99% rename from generator/config/RS-DR/RS-DR.wrapper.generator-config.json rename to generator/config/generated/RS-DR/RS-DR.wrapper.generator-config.json index ca474c389d..9e8915fc54 100644 --- a/generator/config/RS-DR/RS-DR.wrapper.generator-config.json +++ b/generator/config/generated/RS-DR/RS-DR.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-EDA-MAJ/RS-EDA-MAJ.usecase.generator-config.json b/generator/config/generated/RS-EDA-MAJ/RS-EDA-MAJ.usecase.generator-config.json similarity index 91% rename from generator/config/RS-EDA-MAJ/RS-EDA-MAJ.usecase.generator-config.json rename to generator/config/generated/RS-EDA-MAJ/RS-EDA-MAJ.usecase.generator-config.json index b4036dbac9..752e2e8dbc 100644 --- a/generator/config/RS-EDA-MAJ/RS-EDA-MAJ.usecase.generator-config.json +++ b/generator/config/generated/RS-EDA-MAJ/RS-EDA-MAJ.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:createCaseHealthUpdate", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-EDA-MAJ/RS-EDA-MAJ.wrapper.generator-config.json b/generator/config/generated/RS-EDA-MAJ/RS-EDA-MAJ.wrapper.generator-config.json similarity index 99% rename from generator/config/RS-EDA-MAJ/RS-EDA-MAJ.wrapper.generator-config.json rename to generator/config/generated/RS-EDA-MAJ/RS-EDA-MAJ.wrapper.generator-config.json index cc7f07e15f..277322dd19 100644 --- a/generator/config/RS-EDA-MAJ/RS-EDA-MAJ.wrapper.generator-config.json +++ b/generator/config/generated/RS-EDA-MAJ/RS-EDA-MAJ.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-EDA/RS-EDA.generator-config.json b/generator/config/generated/RS-EDA/RS-EDA.generator-config.json similarity index 99% rename from generator/config/RS-EDA/RS-EDA.generator-config.json rename to generator/config/generated/RS-EDA/RS-EDA.generator-config.json index c6fc2a04dc..350f56f7e5 100644 --- a/generator/config/RS-EDA/RS-EDA.generator-config.json +++ b/generator/config/generated/RS-EDA/RS-EDA.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-EDA/RS-EDA.usecase.generator-config.json b/generator/config/generated/RS-EDA/RS-EDA.usecase.generator-config.json similarity index 92% rename from generator/config/RS-EDA/RS-EDA.usecase.generator-config.json rename to generator/config/generated/RS-EDA/RS-EDA.usecase.generator-config.json index 1ca093febf..7660940d2f 100644 --- a/generator/config/RS-EDA/RS-EDA.usecase.generator-config.json +++ b/generator/config/generated/RS-EDA/RS-EDA.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:createCaseHealth", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-EDA/RS-EDA.wrapper.generator-config.json b/generator/config/generated/RS-EDA/RS-EDA.wrapper.generator-config.json similarity index 99% rename from generator/config/RS-EDA/RS-EDA.wrapper.generator-config.json rename to generator/config/generated/RS-EDA/RS-EDA.wrapper.generator-config.json index 22a6c4af0d..6c539f4d02 100644 --- a/generator/config/RS-EDA/RS-EDA.wrapper.generator-config.json +++ b/generator/config/generated/RS-EDA/RS-EDA.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-ER/RS-ER.usecase.generator-config.json b/generator/config/generated/RS-ER/RS-ER.usecase.generator-config.json similarity index 92% rename from generator/config/RS-ER/RS-ER.usecase.generator-config.json rename to generator/config/generated/RS-ER/RS-ER.usecase.generator-config.json index 6297e340b3..aca726eb67 100644 --- a/generator/config/RS-ER/RS-ER.usecase.generator-config.json +++ b/generator/config/generated/RS-ER/RS-ER.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:resourcesengagement", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-ER/RS-ER.wrapper.generator-config.json b/generator/config/generated/RS-ER/RS-ER.wrapper.generator-config.json similarity index 99% rename from generator/config/RS-ER/RS-ER.wrapper.generator-config.json rename to generator/config/generated/RS-ER/RS-ER.wrapper.generator-config.json index f73f359dde..83b062305b 100644 --- a/generator/config/RS-ER/RS-ER.wrapper.generator-config.json +++ b/generator/config/generated/RS-ER/RS-ER.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-RI/RS-RI.generator-config.json b/generator/config/generated/RS-RI/RS-RI.generator-config.json similarity index 99% rename from generator/config/RS-RI/RS-RI.generator-config.json rename to generator/config/generated/RS-RI/RS-RI.generator-config.json index af320f63cf..9a4db17c43 100644 --- a/generator/config/RS-RI/RS-RI.generator-config.json +++ b/generator/config/generated/RS-RI/RS-RI.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-RI/RS-RI.usecase.generator-config.json b/generator/config/generated/RS-RI/RS-RI.usecase.generator-config.json similarity index 93% rename from generator/config/RS-RI/RS-RI.usecase.generator-config.json rename to generator/config/generated/RS-RI/RS-RI.usecase.generator-config.json index e0e917d37f..34d31ad157 100644 --- a/generator/config/RS-RI/RS-RI.usecase.generator-config.json +++ b/generator/config/generated/RS-RI/RS-RI.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:resourcesinfo", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-RI/RS-RI.wrapper.generator-config.json b/generator/config/generated/RS-RI/RS-RI.wrapper.generator-config.json similarity index 99% rename from generator/config/RS-RI/RS-RI.wrapper.generator-config.json rename to generator/config/generated/RS-RI/RS-RI.wrapper.generator-config.json index 5a1792f09d..c1837ffe26 100644 --- a/generator/config/RS-RI/RS-RI.wrapper.generator-config.json +++ b/generator/config/generated/RS-RI/RS-RI.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-RPIS/RS-RPIS.generator-config.json b/generator/config/generated/RS-RPIS/RS-RPIS.generator-config.json similarity index 99% rename from generator/config/RS-RPIS/RS-RPIS.generator-config.json rename to generator/config/generated/RS-RPIS/RS-RPIS.generator-config.json index 907c409ce0..393a293e4d 100644 --- a/generator/config/RS-RPIS/RS-RPIS.generator-config.json +++ b/generator/config/generated/RS-RPIS/RS-RPIS.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-RPIS/RS-RPIS.usecase.generator-config.json b/generator/config/generated/RS-RPIS/RS-RPIS.usecase.generator-config.json similarity index 94% rename from generator/config/RS-RPIS/RS-RPIS.usecase.generator-config.json rename to generator/config/generated/RS-RPIS/RS-RPIS.usecase.generator-config.json index 845e3f8ee5..955085f523 100644 --- a/generator/config/RS-RPIS/RS-RPIS.usecase.generator-config.json +++ b/generator/config/generated/RS-RPIS/RS-RPIS.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:rpis", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-RPIS/RS-RPIS.wrapper.generator-config.json b/generator/config/generated/RS-RPIS/RS-RPIS.wrapper.generator-config.json similarity index 99% rename from generator/config/RS-RPIS/RS-RPIS.wrapper.generator-config.json rename to generator/config/generated/RS-RPIS/RS-RPIS.wrapper.generator-config.json index 377b83f95c..88d57670d2 100644 --- a/generator/config/RS-RPIS/RS-RPIS.wrapper.generator-config.json +++ b/generator/config/generated/RS-RPIS/RS-RPIS.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-RR/RS-RR.generator-config.json b/generator/config/generated/RS-RR/RS-RR.generator-config.json similarity index 99% rename from generator/config/RS-RR/RS-RR.generator-config.json rename to generator/config/generated/RS-RR/RS-RR.generator-config.json index 1188776c2d..dc1ff5fcd8 100644 --- a/generator/config/RS-RR/RS-RR.generator-config.json +++ b/generator/config/generated/RS-RR/RS-RR.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-RR/RS-RR.usecase.generator-config.json b/generator/config/generated/RS-RR/RS-RR.usecase.generator-config.json similarity index 92% rename from generator/config/RS-RR/RS-RR.usecase.generator-config.json rename to generator/config/generated/RS-RR/RS-RR.usecase.generator-config.json index 20a5e945b0..1987a414ff 100644 --- a/generator/config/RS-RR/RS-RR.usecase.generator-config.json +++ b/generator/config/generated/RS-RR/RS-RR.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:resourcesresponse", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-RR/RS-RR.wrapper.generator-config.json b/generator/config/generated/RS-RR/RS-RR.wrapper.generator-config.json similarity index 99% rename from generator/config/RS-RR/RS-RR.wrapper.generator-config.json rename to generator/config/generated/RS-RR/RS-RR.wrapper.generator-config.json index cca597d80e..890ee9d716 100644 --- a/generator/config/RS-RR/RS-RR.wrapper.generator-config.json +++ b/generator/config/generated/RS-RR/RS-RR.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-SR/RS-SR.generator-config.json b/generator/config/generated/RS-SR/RS-SR.generator-config.json similarity index 99% rename from generator/config/RS-SR/RS-SR.generator-config.json rename to generator/config/generated/RS-SR/RS-SR.generator-config.json index c6ca888a53..47e0c9bb4a 100644 --- a/generator/config/RS-SR/RS-SR.generator-config.json +++ b/generator/config/generated/RS-SR/RS-SR.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-SR/RS-SR.usecase.generator-config.json b/generator/config/generated/RS-SR/RS-SR.usecase.generator-config.json similarity index 92% rename from generator/config/RS-SR/RS-SR.usecase.generator-config.json rename to generator/config/generated/RS-SR/RS-SR.usecase.generator-config.json index 5ecd7ad61f..5463bc29f5 100644 --- a/generator/config/RS-SR/RS-SR.usecase.generator-config.json +++ b/generator/config/generated/RS-SR/RS-SR.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:resourcesstatus", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-SR/RS-SR.wrapper.generator-config.json b/generator/config/generated/RS-SR/RS-SR.wrapper.generator-config.json similarity index 99% rename from generator/config/RS-SR/RS-SR.wrapper.generator-config.json rename to generator/config/generated/RS-SR/RS-SR.wrapper.generator-config.json index 298ae3c460..c1cbebfed5 100644 --- a/generator/config/RS-SR/RS-SR.wrapper.generator-config.json +++ b/generator/config/generated/RS-SR/RS-SR.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-URL/RS-URL.generator-config.json b/generator/config/generated/RS-URL/RS-URL.generator-config.json similarity index 99% rename from generator/config/RS-URL/RS-URL.generator-config.json rename to generator/config/generated/RS-URL/RS-URL.generator-config.json index a0bdf58f95..b979b360fd 100644 --- a/generator/config/RS-URL/RS-URL.generator-config.json +++ b/generator/config/generated/RS-URL/RS-URL.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-URL/RS-URL.usecase.generator-config.json b/generator/config/generated/RS-URL/RS-URL.usecase.generator-config.json similarity index 93% rename from generator/config/RS-URL/RS-URL.usecase.generator-config.json rename to generator/config/generated/RS-URL/RS-URL.usecase.generator-config.json index aab8293068..6109ef57dc 100644 --- a/generator/config/RS-URL/RS-URL.usecase.generator-config.json +++ b/generator/config/generated/RS-URL/RS-URL.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:documentlink", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-URL/RS-URL.wrapper.generator-config.json b/generator/config/generated/RS-URL/RS-URL.wrapper.generator-config.json similarity index 100% rename from generator/config/RS-URL/RS-URL.wrapper.generator-config.json rename to generator/config/generated/RS-URL/RS-URL.wrapper.generator-config.json diff --git a/generator/config/TECHNICAL/TECHNICAL.generator-config.json b/generator/config/generated/TECHNICAL/TECHNICAL.generator-config.json similarity index 99% rename from generator/config/TECHNICAL/TECHNICAL.generator-config.json rename to generator/config/generated/TECHNICAL/TECHNICAL.generator-config.json index 7a56d91deb..f9992112b9 100644 --- a/generator/config/TECHNICAL/TECHNICAL.generator-config.json +++ b/generator/config/generated/TECHNICAL/TECHNICAL.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/TECHNICAL/TECHNICAL.usecase.generator-config.json b/generator/config/generated/TECHNICAL/TECHNICAL.usecase.generator-config.json similarity index 93% rename from generator/config/TECHNICAL/TECHNICAL.usecase.generator-config.json rename to generator/config/generated/TECHNICAL/TECHNICAL.usecase.generator-config.json index 899eaa7dfc..b3722eaab9 100644 --- a/generator/config/TECHNICAL/TECHNICAL.usecase.generator-config.json +++ b/generator/config/generated/TECHNICAL/TECHNICAL.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:technical", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/TECHNICAL/TECHNICAL.wrapper.generator-config.json b/generator/config/generated/TECHNICAL/TECHNICAL.wrapper.generator-config.json similarity index 99% rename from generator/config/TECHNICAL/TECHNICAL.wrapper.generator-config.json rename to generator/config/generated/TECHNICAL/TECHNICAL.wrapper.generator-config.json index efc81f1046..ece1cb2525 100644 --- a/generator/config/TECHNICAL/TECHNICAL.wrapper.generator-config.json +++ b/generator/config/generated/TECHNICAL/TECHNICAL.wrapper.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/TECHNICAL_NOREQ/TECHNICAL_NOREQ.generator-config.json b/generator/config/generated/TECHNICAL_NOREQ/TECHNICAL_NOREQ.generator-config.json similarity index 99% rename from generator/config/TECHNICAL_NOREQ/TECHNICAL_NOREQ.generator-config.json rename to generator/config/generated/TECHNICAL_NOREQ/TECHNICAL_NOREQ.generator-config.json index 5fe7ee1ab8..75f0735088 100644 --- a/generator/config/TECHNICAL_NOREQ/TECHNICAL_NOREQ.generator-config.json +++ b/generator/config/generated/TECHNICAL_NOREQ/TECHNICAL_NOREQ.generator-config.json @@ -19,4 +19,4 @@ "supportUrlQuery": false, "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/TECHNICAL_NOREQ/TECHNICAL_NOREQ.usecase.generator-config.json b/generator/config/generated/TECHNICAL_NOREQ/TECHNICAL_NOREQ.usecase.generator-config.json similarity index 93% rename from generator/config/TECHNICAL_NOREQ/TECHNICAL_NOREQ.usecase.generator-config.json rename to generator/config/generated/TECHNICAL_NOREQ/TECHNICAL_NOREQ.usecase.generator-config.json index adac3acea2..2ff738ca41 100644 --- a/generator/config/TECHNICAL_NOREQ/TECHNICAL_NOREQ.usecase.generator-config.json +++ b/generator/config/generated/TECHNICAL_NOREQ/TECHNICAL_NOREQ.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:3.0:technicalNoreq", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/TECHNICAL_NOREQ/TECHNICAL_NOREQ.wrapper.generator-config.json b/generator/config/generated/TECHNICAL_NOREQ/TECHNICAL_NOREQ.wrapper.generator-config.json similarity index 78% rename from generator/config/TECHNICAL_NOREQ/TECHNICAL_NOREQ.wrapper.generator-config.json rename to generator/config/generated/TECHNICAL_NOREQ/TECHNICAL_NOREQ.wrapper.generator-config.json index d134196218..77d6647b1c 100644 --- a/generator/config/TECHNICAL_NOREQ/TECHNICAL_NOREQ.wrapper.generator-config.json +++ b/generator/config/generated/TECHNICAL_NOREQ/TECHNICAL_NOREQ.wrapper.generator-config.json @@ -17,6 +17,10 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, - "enablePostProcessFile": true + "enablePostProcessFile": true, + "customExtend": { + "package": "com.hubsante.model.edxl", + "className": "ContentMessage" + } } -} \ No newline at end of file +} diff --git a/generator/config/RC-DE/RC-DE.generator-config.json b/generator/config/manual/RC-DE/RC-DE.generator-config.json similarity index 100% rename from generator/config/RC-DE/RC-DE.generator-config.json rename to generator/config/manual/RC-DE/RC-DE.generator-config.json diff --git a/generator/config/RC-DE/RC-DE.distribution-element.generator-config.json b/generator/config/manual/RC-DE/RC-DE.usecase.generator-config.json similarity index 100% rename from generator/config/RC-DE/RC-DE.distribution-element.generator-config.json rename to generator/config/manual/RC-DE/RC-DE.usecase.generator-config.json diff --git a/generator/config/RS-ERROR/RS-ERROR.generator-config.json b/generator/config/manual/RS-ERROR/RS-ERROR.generator-config.json similarity index 100% rename from generator/config/RS-ERROR/RS-ERROR.generator-config.json rename to generator/config/manual/RS-ERROR/RS-ERROR.generator-config.json diff --git a/generator/config/RS-ERROR/RS-ERROR.usecase.generator-config.json b/generator/config/manual/RS-ERROR/RS-ERROR.usecase.generator-config.json similarity index 94% rename from generator/config/RS-ERROR/RS-ERROR.usecase.generator-config.json rename to generator/config/manual/RS-ERROR/RS-ERROR.usecase.generator-config.json index 7c66c9d3d2..d75b95a6dd 100644 --- a/generator/config/RS-ERROR/RS-ERROR.usecase.generator-config.json +++ b/generator/config/manual/RS-ERROR/RS-ERROR.usecase.generator-config.json @@ -17,6 +17,7 @@ "serializationLibrary": "jackson", "openApiNullable": true, "supportUrlQuery": false, + "xmlns": "cisu:2.0:error", "enablePostProcessFile": true } -} \ No newline at end of file +} diff --git a/generator/config/RS-ERROR/RS-ERROR.wrapper.generator-config.json b/generator/config/manual/RS-ERROR/RS-ERROR.wrapper.generator-config.json similarity index 100% rename from generator/config/RS-ERROR/RS-ERROR.wrapper.generator-config.json rename to generator/config/manual/RS-ERROR/RS-ERROR.wrapper.generator-config.json diff --git a/generator/input/RS-URL.openapi.yaml b/generator/input/RS-URL.openapi.yaml index 45137d486e..39c1a6a143 100644 --- a/generator/input/RS-URL.openapi.yaml +++ b/generator/input/RS-URL.openapi.yaml @@ -48,6 +48,17 @@ components: - 'fr.health.samu690.patient.P23AZ59 fr.health.samu690.patient.DRFR15690242370035.1' + code: + type: string + title: "Code d'acc\xE8s au bilan" + x-health-only: false + x-cols: 6 + example: example.json#/code + description: "Code unitaire par bilan qui permet \xE0 l'utilisateur qui\ + \ re\xE7oit ce lien d'ouvrir le bilan lorsque celui ci ne n\xE9cessite\ + \ pas une connexion nominative mais un code bilan " + examples: + - 5f5h8s9 document: type: array items: diff --git a/generator/templates/useCase/pojo.mustache b/generator/templates/useCase/pojo.mustache index 4817250813..39e66da0eb 100644 --- a/generator/templates/useCase/pojo.mustache +++ b/generator/templates/useCase/pojo.mustache @@ -26,7 +26,7 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/serializableModel}} @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:{{name}}"; + String xmlns = "urn:emergency:{{xmlns}}"; {{#vars}} {{#isEnum}} {{^isContainer}} {{>modelInnerEnum}} @@ -617,4 +617,4 @@ public boolean equals(Object o) { }; {{/parcelableModel}} - } \ No newline at end of file + } diff --git a/src/main/java/com/hubsante/model/EdxlWrapperUtils.java b/src/main/java/com/hubsante/model/EdxlWrapperUtils.java index 1a700afeef..282ef9618b 100644 --- a/src/main/java/com/hubsante/model/EdxlWrapperUtils.java +++ b/src/main/java/com/hubsante/model/EdxlWrapperUtils.java @@ -88,4 +88,4 @@ public static JsonNode addDistributionElementFields(JsonNode jsonNode) { } return jsonNode; } -} \ No newline at end of file +} diff --git a/src/main/java/com/hubsante/model/cisu/CreateCase.java b/src/main/java/com/hubsante/model/cisu/CreateCase.java index 91367675ca..7a246cca39 100644 --- a/src/main/java/com/hubsante/model/cisu/CreateCase.java +++ b/src/main/java/com/hubsante/model/cisu/CreateCase.java @@ -61,7 +61,7 @@ public class CreateCase { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:createCase"; + String xmlns = "urn:emergency:cisu:3.0"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; diff --git a/src/main/java/com/hubsante/model/documentlink/DocumentLink.java b/src/main/java/com/hubsante/model/documentlink/DocumentLink.java index d63b5c3a8f..5590c17062 100644 --- a/src/main/java/com/hubsante/model/documentlink/DocumentLink.java +++ b/src/main/java/com/hubsante/model/documentlink/DocumentLink.java @@ -44,21 +44,24 @@ /** * DocumentLink */ -@JsonPropertyOrder({DocumentLink.JSON_PROPERTY_CASE_ID, - DocumentLink.JSON_PROPERTY_PATIENT_ID, - DocumentLink.JSON_PROPERTY_DOCUMENT}) +@JsonPropertyOrder( + {DocumentLink.JSON_PROPERTY_CASE_ID, DocumentLink.JSON_PROPERTY_PATIENT_ID, + DocumentLink.JSON_PROPERTY_CODE, DocumentLink.JSON_PROPERTY_DOCUMENT}) @JsonTypeName("documentLink") @JsonInclude(JsonInclude.Include.NON_EMPTY) public class DocumentLink { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:documentLink"; + String xmlns = "urn:emergency:cisu:3.0:documentlink"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; public static final String JSON_PROPERTY_PATIENT_ID = "patientId"; private String patientId; + public static final String JSON_PROPERTY_CODE = "code"; + private String code; + public static final String JSON_PROPERTY_DOCUMENT = "document"; private List document = new ArrayList<>(); @@ -118,6 +121,31 @@ public void setPatientId(String patientId) { this.patientId = patientId; } + public DocumentLink code(String code) { + + this.code = code; + return this; + } + + /** + * Code unitaire par bilan qui permet à l'utilisateur qui reçoit ce lien + *d'ouvrir le bilan lorsque celui ci ne nécessite pas une connexion + *nominative mais un code bilan + * @return code + **/ + @JsonProperty(JSON_PROPERTY_CODE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getCode() { + return code; + } + + @JsonProperty(JSON_PROPERTY_CODE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCode(String code) { + this.code = code; + } + public DocumentLink document(List document) { this.document = document; @@ -168,12 +196,13 @@ public boolean equals(Object o) { DocumentLink documentLink = (DocumentLink)o; return Objects.equals(this.caseId, documentLink.caseId) && Objects.equals(this.patientId, documentLink.patientId) && + Objects.equals(this.code, documentLink.code) && Objects.equals(this.document, documentLink.document); } @Override public int hashCode() { - return Objects.hash(caseId, patientId, document); + return Objects.hash(caseId, patientId, code, document); } @Override @@ -184,6 +213,7 @@ public String toString() { sb.append(" patientId: ") .append(toIndentedString(patientId)) .append("\n"); + sb.append(" code: ").append(toIndentedString(code)).append("\n"); sb.append(" document: ").append(toIndentedString(document)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/hubsante/model/edxl/ContentMessage.java b/src/main/java/com/hubsante/model/edxl/ContentMessage.java index 7c93c46654..0cc85ea563 100644 --- a/src/main/java/com/hubsante/model/edxl/ContentMessage.java +++ b/src/main/java/com/hubsante/model/edxl/ContentMessage.java @@ -13,71 +13,79 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +/************************************************************************** + * This file has been generated by the automatic schema generator script. + **************************************************************************/ + package com.hubsante.model.edxl; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; + +import com.hubsante.model.technical.Technical; +import com.hubsante.model.technical.TechnicalWrapper; +import com.hubsante.model.technical.noreq.TechnicalNoreq; +import com.hubsante.model.technical.noreq.TechnicalNoreqWrapper; import com.hubsante.model.cisu.CreateCase; import com.hubsante.model.cisu.CreateCaseWrapper; -import com.hubsante.model.custom.CustomMessage; -import com.hubsante.model.documentlink.DocumentLink; -import com.hubsante.model.emsi.Emsi; -import com.hubsante.model.emsi.EmsiWrapper; -import com.hubsante.model.geolocation.*; import com.hubsante.model.health.CreateCaseHealth; +import com.hubsante.model.health.CreateCaseHealthWrapper; import com.hubsante.model.health.CreateCaseHealthUpdate; import com.hubsante.model.health.CreateCaseHealthUpdateWrapper; -import com.hubsante.model.health.CreateCaseHealthWrapper; -import com.hubsante.model.interventionreport.InterventionReport; -import com.hubsante.model.reference.Reference; -import com.hubsante.model.reference.ReferenceWrapper; -import com.hubsante.model.report.ErrorWrapper; -import com.hubsante.model.resources.info.ResourcesEngagement; +import com.hubsante.model.emsi.Emsi; +import com.hubsante.model.emsi.EmsiWrapper; import com.hubsante.model.resources.info.ResourcesInfo; import com.hubsante.model.resources.info.ResourcesInfoWrapper; +import com.hubsante.model.resources.info.ResourcesEngagement; +import com.hubsante.model.resources.info.ResourcesEngagementWrapper; +import com.hubsante.model.resources.status.ResourcesStatus; +import com.hubsante.model.resources.status.ResourcesStatusWrapper; import com.hubsante.model.resources.request.ResourcesRequest; import com.hubsante.model.resources.request.ResourcesRequestWrapper; import com.hubsante.model.resources.response.ResourcesResponse; import com.hubsante.model.resources.response.ResourcesResponseWrapper; -import com.hubsante.model.resources.status.ResourcesStatus; -import com.hubsante.model.resources.status.ResourcesStatusWrapper; import com.hubsante.model.rpis.Rpis; import com.hubsante.model.rpis.RpisWrapper; -import com.hubsante.model.technical.Technical; -import com.hubsante.model.technical.TechnicalWrapper; -import com.hubsante.model.technical.noreq.TechnicalNoreq; -import com.hubsante.model.technical.noreq.TechnicalNoreqWrapper; -import com.hubsante.model.documentlink.DocumentLinkWrapper; -import com.hubsante.model.resources.info.ResourcesEngagementWrapper; +import com.hubsante.model.interventionreport.InterventionReport; import com.hubsante.model.interventionreport.InterventionReportWrapper; - - +import com.hubsante.model.documentlink.DocumentLink; +import com.hubsante.model.documentlink.DocumentLinkWrapper; +import com.hubsante.model.geolocation.GeoPositionsUpdate; +import com.hubsante.model.geolocation.GeoPositionsUpdateWrapper; +import com.hubsante.model.geolocation.GeoResourcesRequest; +import com.hubsante.model.geolocation.GeoResourcesRequestWrapper; +import com.hubsante.model.geolocation.GeoResourcesDetails; +import com.hubsante.model.geolocation.GeoResourcesDetailsWrapper; +import com.hubsante.model.reference.Reference; +import com.hubsante.model.reference.ReferenceWrapper; +import com.hubsante.model.report.ErrorWrapper; +import com.hubsante.model.custom.CustomMessage; import java.util.Map; import java.util.stream.Collectors; import java.util.stream.Stream; @JsonTypeInfo(use = JsonTypeInfo.Id.DEDUCTION) -@JsonSubTypes({ +@JsonSubTypes({ + @JsonSubTypes.Type(TechnicalWrapper.class), + @JsonSubTypes.Type(TechnicalNoreqWrapper.class), @JsonSubTypes.Type(CreateCaseWrapper.class), @JsonSubTypes.Type(CreateCaseHealthWrapper.class), @JsonSubTypes.Type(CreateCaseHealthUpdateWrapper.class), - @JsonSubTypes.Type(ReferenceWrapper.class), - @JsonSubTypes.Type(ErrorWrapper.class), - @JsonSubTypes.Type(CustomMessage.class), @JsonSubTypes.Type(EmsiWrapper.class), - @JsonSubTypes.Type(GeoPositionsUpdateWrapper.class), - @JsonSubTypes.Type(GeoResourcesRequestWrapper.class), - @JsonSubTypes.Type(GeoResourcesDetailsWrapper.class), @JsonSubTypes.Type(ResourcesInfoWrapper.class), + @JsonSubTypes.Type(ResourcesEngagementWrapper.class), + @JsonSubTypes.Type(ResourcesStatusWrapper.class), @JsonSubTypes.Type(ResourcesRequestWrapper.class), @JsonSubTypes.Type(ResourcesResponseWrapper.class), - @JsonSubTypes.Type(ResourcesStatusWrapper.class), @JsonSubTypes.Type(RpisWrapper.class), - @JsonSubTypes.Type(TechnicalWrapper.class), - @JsonSubTypes.Type(TechnicalNoreqWrapper.class), - @JsonSubTypes.Type(DocumentLinkWrapper.class), - @JsonSubTypes.Type(ResourcesEngagementWrapper.class), @JsonSubTypes.Type(InterventionReportWrapper.class), + @JsonSubTypes.Type(DocumentLinkWrapper.class), + @JsonSubTypes.Type(GeoPositionsUpdateWrapper.class), + @JsonSubTypes.Type(GeoResourcesRequestWrapper.class), + @JsonSubTypes.Type(GeoResourcesDetailsWrapper.class), + @JsonSubTypes.Type(ReferenceWrapper.class), + @JsonSubTypes.Type(ErrorWrapper.class), + @JsonSubTypes.Type(CustomMessage.class) }) public class ContentMessage { @@ -99,25 +107,27 @@ public int hashCode() { public static class UseCaseHelper { public static final Map useCases = Stream.of(new String[][] { - {"createCase", CreateCase.class.getCanonicalName()}, - {"createCaseHealth", CreateCaseHealth.class.getCanonicalName()}, - {"createCaseHealthUpdate", CreateCaseHealthUpdate.class.getCanonicalName()}, - {"reference", Reference.class.getCanonicalName()}, - {"error", ErrorWrapper.class.getCanonicalName()}, - {"emsi", Emsi.class.getCanonicalName()}, - {"geoPositionsUpdate", GeoPositionsUpdate.class.getCanonicalName()}, - {"geoResourcesRequest", GeoResourcesRequest.class.getCanonicalName()}, - {"geoResourcesDetails", GeoResourcesDetails.class.getCanonicalName()}, - {"resourcesInfo", ResourcesInfo.class.getCanonicalName()}, - {"resourcesRequest", ResourcesRequest.class.getCanonicalName()}, - {"resourcesResponse", ResourcesResponse.class.getCanonicalName()}, - {"resourcesStatus", ResourcesStatus.class.getCanonicalName()}, - {"rpis", Rpis.class.getCanonicalName()}, - {"technical", Technical.class.getCanonicalName()}, - {"technicalNoreq", TechnicalNoreq.class.getCanonicalName()}, - {"documentLink", DocumentLink.class.getCanonicalName()}, - {"resourcesEngagement", ResourcesEngagement.class.getCanonicalName()}, - {"interventionReport", InterventionReport.class.getCanonicalName()} + + {"technical", Technical.class.getCanonicalName()}, + {"technicalNoreq", TechnicalNoreq.class.getCanonicalName()}, + {"createCase", CreateCase.class.getCanonicalName()}, + {"createCaseHealth", CreateCaseHealth.class.getCanonicalName()}, + {"createCaseHealthUpdate", CreateCaseHealthUpdate.class.getCanonicalName()}, + {"emsi", Emsi.class.getCanonicalName()}, + {"resourcesInfo", ResourcesInfo.class.getCanonicalName()}, + {"resourcesEngagement", ResourcesEngagement.class.getCanonicalName()}, + {"resourcesStatus", ResourcesStatus.class.getCanonicalName()}, + {"resourcesRequest", ResourcesRequest.class.getCanonicalName()}, + {"resourcesResponse", ResourcesResponse.class.getCanonicalName()}, + {"rpis", Rpis.class.getCanonicalName()}, + {"interventionReport", InterventionReport.class.getCanonicalName()}, + {"documentLink", DocumentLink.class.getCanonicalName()}, + {"geoPositionsUpdate", GeoPositionsUpdate.class.getCanonicalName()}, + {"geoResourcesRequest", GeoResourcesRequest.class.getCanonicalName()}, + {"geoResourcesDetails", GeoResourcesDetails.class.getCanonicalName()}, + {"reference", Reference.class.getCanonicalName()}, + {"error", ErrorWrapper.class.getCanonicalName()}, + {"customContent", CustomMessage.class.getCanonicalName()} }).collect(Collectors.toMap(useCaseData -> useCaseData[0], useCaseData -> useCaseData[1])); } } diff --git a/src/main/java/com/hubsante/model/edxl/Keyword.java b/src/main/java/com/hubsante/model/edxl/Keyword.java new file mode 100644 index 0000000000..bb70f8129f --- /dev/null +++ b/src/main/java/com/hubsante/model/edxl/Keyword.java @@ -0,0 +1,15 @@ +/** + * Copyright © 2023-2024 Agence du Numerique en Sante (ANS) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ diff --git a/src/main/java/com/hubsante/model/emsi/Emsi.java b/src/main/java/com/hubsante/model/emsi/Emsi.java index c4dd6d0568..a078eca319 100644 --- a/src/main/java/com/hubsante/model/emsi/Emsi.java +++ b/src/main/java/com/hubsante/model/emsi/Emsi.java @@ -55,7 +55,7 @@ public class Emsi { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:emsi"; + String xmlns = "urn:emergency:cisu:3.0:emsi"; public static final String JSON_PROPERTY_C_O_N_T_E_X_T = "CONTEXT"; private Context CONTEXT; diff --git a/src/main/java/com/hubsante/model/geolocation/GeoPositionsUpdate.java b/src/main/java/com/hubsante/model/geolocation/GeoPositionsUpdate.java index c0aa6b869f..22d4958daa 100644 --- a/src/main/java/com/hubsante/model/geolocation/GeoPositionsUpdate.java +++ b/src/main/java/com/hubsante/model/geolocation/GeoPositionsUpdate.java @@ -50,7 +50,7 @@ public class GeoPositionsUpdate { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:geoPositionsUpdate"; + String xmlns = "urn:emergency:cisu:3.0:geopositionsupdate"; public static final String JSON_PROPERTY_POSITION = "position"; private List position = new ArrayList<>(); diff --git a/src/main/java/com/hubsante/model/geolocation/GeoResourcesDetails.java b/src/main/java/com/hubsante/model/geolocation/GeoResourcesDetails.java index c0bf7cdfaf..95dc106bff 100644 --- a/src/main/java/com/hubsante/model/geolocation/GeoResourcesDetails.java +++ b/src/main/java/com/hubsante/model/geolocation/GeoResourcesDetails.java @@ -50,7 +50,7 @@ public class GeoResourcesDetails { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:geoResourcesDetails"; + String xmlns = "urn:emergency:cisu:3.0:georesourcesdetails"; public static final String JSON_PROPERTY_RESOURCE = "resource"; private List resource; diff --git a/src/main/java/com/hubsante/model/geolocation/GeoResourcesRequest.java b/src/main/java/com/hubsante/model/geolocation/GeoResourcesRequest.java index da41465853..7ad7b26eda 100644 --- a/src/main/java/com/hubsante/model/geolocation/GeoResourcesRequest.java +++ b/src/main/java/com/hubsante/model/geolocation/GeoResourcesRequest.java @@ -49,7 +49,7 @@ public class GeoResourcesRequest { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:geoResourcesRequest"; + String xmlns = "urn:emergency:cisu:3.0:georesourcesrequest"; public static final String JSON_PROPERTY_RESOURCE_ID = "resourceId"; private List resourceId = new ArrayList<>(); diff --git a/src/main/java/com/hubsante/model/health/CreateCaseHealth.java b/src/main/java/com/hubsante/model/health/CreateCaseHealth.java index 9402e4aceb..65538140cd 100644 --- a/src/main/java/com/hubsante/model/health/CreateCaseHealth.java +++ b/src/main/java/com/hubsante/model/health/CreateCaseHealth.java @@ -69,7 +69,7 @@ public class CreateCaseHealth { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:createCaseHealth"; + String xmlns = "urn:emergency:cisu:3.0:createCaseHealth"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; diff --git a/src/main/java/com/hubsante/model/health/CreateCaseHealthUpdate.java b/src/main/java/com/hubsante/model/health/CreateCaseHealthUpdate.java index 2804ebd611..c52db9ea30 100644 --- a/src/main/java/com/hubsante/model/health/CreateCaseHealthUpdate.java +++ b/src/main/java/com/hubsante/model/health/CreateCaseHealthUpdate.java @@ -68,7 +68,7 @@ public class CreateCaseHealthUpdate { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:createCaseHealthUpdate"; + String xmlns = "urn:emergency:cisu:3.0:createCaseHealthUpdate"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; diff --git a/src/main/java/com/hubsante/model/interventionreport/InterventionReport.java b/src/main/java/com/hubsante/model/interventionreport/InterventionReport.java index 29369d464d..e7afbe3b4d 100644 --- a/src/main/java/com/hubsante/model/interventionreport/InterventionReport.java +++ b/src/main/java/com/hubsante/model/interventionreport/InterventionReport.java @@ -56,7 +56,7 @@ public class InterventionReport { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:interventionReport"; + String xmlns = "urn:emergency:cisu:3.0:interventionreport"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; diff --git a/src/main/java/com/hubsante/model/interventionreport/ParameterDetail.java b/src/main/java/com/hubsante/model/interventionreport/ParameterDetail.java deleted file mode 100644 index 583378a917..0000000000 --- a/src/main/java/com/hubsante/model/interventionreport/ParameterDetail.java +++ /dev/null @@ -1,143 +0,0 @@ -/** - * Copyright © 2023-2024 Agence du Numerique en Sante (ANS) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/* - * - * - * - * - * - * - * NOTE: This class is auto generated by OpenAPI Generator - * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit - * the class manually. - */ - -package com.hubsante.model.interventionreport; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import com.fasterxml.jackson.dataformat.xml.annotation.*; -import java.util.Arrays; -import java.util.Arrays; -import java.util.Objects; - -/** - * ParameterDetail - */ -@JsonPropertyOrder( - {ParameterDetail.JSON_PROPERTY_TYPE, ParameterDetail.JSON_PROPERTY_VALUE}) -@JsonTypeName("parameterDetail") -@JsonInclude(JsonInclude.Include.NON_EMPTY) - -public class ParameterDetail { - public static final String JSON_PROPERTY_TYPE = "type"; - private String type; - - public static final String JSON_PROPERTY_VALUE = "value"; - private String value; - - public ParameterDetail() {} - - public ParameterDetail type(String type) { - - this.type = type; - return this; - } - - /** - * Fréquence cardiaque, Pression artérielle, Saturation en oxygène, Fréquence - *respiratoire, Température, Hemoglucotest, Glasgow, Hémoglobine ? - * @return type - **/ - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getType() { - return type; - } - - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setType(String type) { - this.type = type; - } - - public ParameterDetail value(String value) { - - this.value = value; - return this; - } - - /** - * Get value - * @return value - **/ - @JsonProperty(JSON_PROPERTY_VALUE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getValue() { - return value; - } - - @JsonProperty(JSON_PROPERTY_VALUE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setValue(String value) { - this.value = value; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - ParameterDetail parameterDetail = (ParameterDetail)o; - return Objects.equals(this.type, parameterDetail.type) && - Objects.equals(this.value, parameterDetail.value); - } - - @Override - public int hashCode() { - return Objects.hash(type, value); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class ParameterDetail {\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); - sb.append(" value: ").append(toIndentedString(value)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} diff --git a/src/main/java/com/hubsante/model/reference/Reference.java b/src/main/java/com/hubsante/model/reference/Reference.java index 755d66e6d3..7c6abe3c58 100644 --- a/src/main/java/com/hubsante/model/reference/Reference.java +++ b/src/main/java/com/hubsante/model/reference/Reference.java @@ -49,7 +49,7 @@ public class Reference { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:reference"; + String xmlns = "urn:emergency:cisu:3.0"; public static final String JSON_PROPERTY_DISTRIBUTION_I_D = "distributionID"; private String distributionID; diff --git a/src/main/java/com/hubsante/model/report/ErrorCode.java b/src/main/java/com/hubsante/model/report/ErrorCode.java index a78af6448d..ead9753934 100644 --- a/src/main/java/com/hubsante/model/report/ErrorCode.java +++ b/src/main/java/com/hubsante/model/report/ErrorCode.java @@ -82,4 +82,4 @@ public boolean isExpired() { public boolean isUndelivered() { return this.statusCode >= 500; } -} \ No newline at end of file +} diff --git a/src/main/java/com/hubsante/model/resources/info/ResourcesEngagement.java b/src/main/java/com/hubsante/model/resources/info/ResourcesEngagement.java index 21e26e00e0..e03255da9f 100644 --- a/src/main/java/com/hubsante/model/resources/info/ResourcesEngagement.java +++ b/src/main/java/com/hubsante/model/resources/info/ResourcesEngagement.java @@ -51,7 +51,7 @@ public class ResourcesEngagement { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:resourcesEngagement"; + String xmlns = "urn:emergency:cisu:3.0:resourcesengagement"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; diff --git a/src/main/java/com/hubsante/model/resources/info/ResourcesInfo.java b/src/main/java/com/hubsante/model/resources/info/ResourcesInfo.java index 0b8650d1fa..3f86a7fb49 100644 --- a/src/main/java/com/hubsante/model/resources/info/ResourcesInfo.java +++ b/src/main/java/com/hubsante/model/resources/info/ResourcesInfo.java @@ -51,7 +51,7 @@ public class ResourcesInfo { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:resourcesInfo"; + String xmlns = "urn:emergency:cisu:3.0:resourcesinfo"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; diff --git a/src/main/java/com/hubsante/model/resources/request/ResourcesRequest.java b/src/main/java/com/hubsante/model/resources/request/ResourcesRequest.java index 2d78b9f5ec..7705b597c5 100644 --- a/src/main/java/com/hubsante/model/resources/request/ResourcesRequest.java +++ b/src/main/java/com/hubsante/model/resources/request/ResourcesRequest.java @@ -50,7 +50,7 @@ public class ResourcesRequest { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:resourcesRequest"; + String xmlns = "urn:emergency:cisu:3.0:resourcesrequest"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; diff --git a/src/main/java/com/hubsante/model/resources/response/ResourcesResponse.java b/src/main/java/com/hubsante/model/resources/response/ResourcesResponse.java index e46e78ad66..a984b3ed42 100644 --- a/src/main/java/com/hubsante/model/resources/response/ResourcesResponse.java +++ b/src/main/java/com/hubsante/model/resources/response/ResourcesResponse.java @@ -50,7 +50,7 @@ public class ResourcesResponse { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:resourcesResponse"; + String xmlns = "urn:emergency:cisu:3.0:resourcesresponse"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; diff --git a/src/main/java/com/hubsante/model/resources/status/ResourcesStatus.java b/src/main/java/com/hubsante/model/resources/status/ResourcesStatus.java index 5917d763fc..00046533c6 100644 --- a/src/main/java/com/hubsante/model/resources/status/ResourcesStatus.java +++ b/src/main/java/com/hubsante/model/resources/status/ResourcesStatus.java @@ -50,7 +50,7 @@ public class ResourcesStatus { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:resourcesStatus"; + String xmlns = "urn:emergency:cisu:3.0:resourcesstatus"; public static final String JSON_PROPERTY_CASE_ID = "caseId"; private String caseId; diff --git a/src/main/java/com/hubsante/model/rpis/Rpis.java b/src/main/java/com/hubsante/model/rpis/Rpis.java index e6fd7649fb..c94e22c8b3 100644 --- a/src/main/java/com/hubsante/model/rpis/Rpis.java +++ b/src/main/java/com/hubsante/model/rpis/Rpis.java @@ -54,7 +54,7 @@ public class Rpis { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:rpis"; + String xmlns = "urn:emergency:cisu:3.0:rpis"; public static final String JSON_PROPERTY_CONTEXT = "context"; private Event context; diff --git a/src/main/java/com/hubsante/model/technical/Technical.java b/src/main/java/com/hubsante/model/technical/Technical.java index 546c798f64..558e63dc20 100644 --- a/src/main/java/com/hubsante/model/technical/Technical.java +++ b/src/main/java/com/hubsante/model/technical/Technical.java @@ -68,7 +68,7 @@ public class Technical { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:technical"; + String xmlns = "urn:emergency:cisu:3.0:technical"; public static final String JSON_PROPERTY_REQUIRED_STRING_FIELD = "requiredStringField"; private String requiredStringField; diff --git a/src/main/java/com/hubsante/model/technical/noreq/TechnicalNoreq.java b/src/main/java/com/hubsante/model/technical/noreq/TechnicalNoreq.java index 116f91e7cd..bdb3b2f2b0 100644 --- a/src/main/java/com/hubsante/model/technical/noreq/TechnicalNoreq.java +++ b/src/main/java/com/hubsante/model/technical/noreq/TechnicalNoreq.java @@ -67,7 +67,7 @@ public class TechnicalNoreq { @JacksonXmlProperty(isAttribute = true) - String xmlns = "urn:emergency:cisu:2.0:technicalNoreq"; + String xmlns = "urn:emergency:cisu:3.0:technicalNoreq"; public static final String JSON_PROPERTY_OPTIONAL_STRING_FIELD = "optionalStringField"; private String optionalStringField; diff --git a/src/main/java/com/hubsante/model/technical/noreq/TechnicalNoreqWrapper.java b/src/main/java/com/hubsante/model/technical/noreq/TechnicalNoreqWrapper.java index 92c16a6706..0acf672228 100644 --- a/src/main/java/com/hubsante/model/technical/noreq/TechnicalNoreqWrapper.java +++ b/src/main/java/com/hubsante/model/technical/noreq/TechnicalNoreqWrapper.java @@ -34,7 +34,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import com.fasterxml.jackson.dataformat.xml.annotation.*; -import com.hubsante.model.rcde.DistributionElement; +import com.hubsante.model.edxl.ContentMessage; import com.hubsante.model.technical.noreq.TechnicalNoreq; import java.util.Arrays; import java.util.Arrays; @@ -43,17 +43,11 @@ /** * TechnicalNoreqWrapper */ -@JsonPropertyOrder({DistributionElement.JSON_PROPERTY_MESSAGE_ID, - DistributionElement.JSON_PROPERTY_SENDER, - DistributionElement.JSON_PROPERTY_SENT_AT, - DistributionElement.JSON_PROPERTY_KIND, - DistributionElement.JSON_PROPERTY_STATUS, - DistributionElement.JSON_PROPERTY_RECIPIENT, - TechnicalNoreqWrapper.JSON_PROPERTY_TECHNICAL_NOREQ}) +@JsonPropertyOrder({TechnicalNoreqWrapper.JSON_PROPERTY_TECHNICAL_NOREQ}) @JsonTypeName("technicalNoreqWrapper") @JsonInclude(JsonInclude.Include.NON_EMPTY) -public class TechnicalNoreqWrapper extends DistributionElement { +public class TechnicalNoreqWrapper extends ContentMessage { @JacksonXmlProperty(isAttribute = true) String xmlns = "urn:emergency:cisu:2.0"; public static final String JSON_PROPERTY_TECHNICAL_NOREQ = "technicalNoreq"; diff --git a/src/main/resources/json-schema/EDXL-DE-full.schema.json b/src/main/resources/json-schema/EDXL-DE-full.schema.json index 1be90235e0..c815f340da 100644 --- a/src/main/resources/json-schema/EDXL-DE-full.schema.json +++ b/src/main/resources/json-schema/EDXL-DE-full.schema.json @@ -73,6 +73,45 @@ "EmbeddedJsonContent": { "type": "object", "oneOf": [ + { + "allOf": [ + { + "properties": { + "message": { + "$ref": "RC-DE.schema.json" + } + } + }, + { + "properties": { + "message": { + "properties": { + "technical": { + "$ref": "TECHNICAL.schema.json" + } + }, + "required": [ + "technical" + ] + } + } + } + ] + }, + { + "properties": { + "message": { + "properties": { + "technicalNoreq": { + "$ref": "TECHNICAL_NOREQ.schema.json" + } + }, + "required": [ + "technicalNoreq" + ] + } + } + }, { "allOf": [ { @@ -161,12 +200,12 @@ "properties": { "message": { "properties": { - "reference": { - "$ref": "RC-REF.schema.json" + "emsi": { + "$ref": "EMSI.schema.json" } }, "required": [ - "reference" + "emsi" ] } } @@ -174,32 +213,29 @@ ] }, { - "properties": { - "message": { + "allOf": [ + { "properties": { - "info": { - "$ref": "RS-INFO.schema.json" + "message": { + "$ref": "RC-DE.schema.json" } - }, - "required": [ - "info" - ] - } - } - }, - { - "properties": { - "message": { + } + }, + { "properties": { - "error": { - "$ref": "RS-ERROR.schema.json" + "message": { + "properties": { + "resourcesInfo": { + "$ref": "RS-RI.schema.json" + } + }, + "required": [ + "resourcesInfo" + ] } - }, - "required": [ - "error" - ] + } } - } + ] }, { "allOf": [ @@ -214,12 +250,12 @@ "properties": { "message": { "properties": { - "emsi": { - "$ref": "EMSI.schema.json" + "resourcesEngagement": { + "$ref": "RS-ER.schema.json" } }, "required": [ - "emsi" + "resourcesEngagement" ] } } @@ -239,12 +275,12 @@ "properties": { "message": { "properties": { - "resourcesInfo": { - "$ref": "RS-RI.schema.json" + "resourcesStatus": { + "$ref": "RS-SR.schema.json" } }, "required": [ - "resourcesInfo" + "resourcesStatus" ] } } @@ -289,12 +325,12 @@ "properties": { "message": { "properties": { - "resourcesStatus": { - "$ref": "RS-SR.schema.json" + "resourcesResponse": { + "$ref": "RS-RR.schema.json" } }, "required": [ - "resourcesStatus" + "resourcesResponse" ] } } @@ -314,12 +350,12 @@ "properties": { "message": { "properties": { - "resourcesResponse": { - "$ref": "RS-RR.schema.json" + "rpis": { + "$ref": "RS-RPIS.schema.json" } }, "required": [ - "resourcesResponse" + "rpis" ] } } @@ -339,12 +375,12 @@ "properties": { "message": { "properties": { - "rpis": { - "$ref": "RS-RPIS.schema.json" + "interventionReport": { + "$ref": "RS-BPV.schema.json" } }, "required": [ - "rpis" + "interventionReport" ] } } @@ -389,12 +425,12 @@ "properties": { "message": { "properties": { - "resourcesEngagement": { - "$ref": "RS-ER.schema.json" + "geoPositionsUpdate": { + "$ref": "GEO-POS.schema.json" } }, "required": [ - "resourcesEngagement" + "geoPositionsUpdate" ] } } @@ -414,32 +450,18 @@ "properties": { "message": { "properties": { - "interventionReport": { - "$ref": "RS-BPV.schema.json" + "geoResourcesRequest": { + "$ref": "GEO-REQ.schema.json" } }, "required": [ - "interventionReport" + "geoResourcesRequest" ] } } } ] }, - { - "properties": { - "message": { - "properties": { - "customContent": { - "$ref": "customContent.schema.json" - } - }, - "required": [ - "customContent" - ] - } - } - }, { "allOf": [ { @@ -452,37 +474,13 @@ { "properties": { "message": { - "oneOf": [ - { - "properties": { - "geoPositionsUpdate": { - "$ref": "GEO-POS.schema.json" - } - }, - "required": [ - "geoPositionsUpdate" - ] - }, - { - "properties": { - "geoResourcesRequest": { - "$ref": "GEO-REQ.schema.json" - } - }, - "required": [ - "geoResourcesRequest" - ] - }, - { - "properties": { - "geoResourcesDetails": { - "$ref": "GEO-RES.schema.json" - } - }, - "required": [ - "geoResourcesDetails" - ] + "properties": { + "geoResourcesDetails": { + "$ref": "GEO-RES.schema.json" } + }, + "required": [ + "geoResourcesDetails" ] } } @@ -502,12 +500,12 @@ "properties": { "message": { "properties": { - "technical": { - "$ref": "TECHNICAL.schema.json" + "reference": { + "$ref": "RC-REF.schema.json" } }, "required": [ - "technical" + "reference" ] } } @@ -518,12 +516,26 @@ "properties": { "message": { "properties": { - "technicalNoreq": { - "$ref": "TECHNICAL_NOREQ.schema.json" + "customContent": { + "$ref": "customContent.schema.json" } }, "required": [ - "technicalNoreq" + "customContent" + ] + } + } + }, + { + "properties": { + "message": { + "properties": { + "error": { + "$ref": "RS-ERROR.schema.json" + } + }, + "required": [ + "error" ] } } @@ -580,4 +592,4 @@ ] } } -} \ No newline at end of file +} diff --git a/src/main/resources/json-schema/EMSI.schema.json b/src/main/resources/json-schema/EMSI.schema.json index ff254944f0..3d4ec0ef97 100644 --- a/src/main/resources/json-schema/EMSI.schema.json +++ b/src/main/resources/json-schema/EMSI.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "EMSI.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "emsi", diff --git a/src/main/resources/json-schema/GEO-POS.schema.json b/src/main/resources/json-schema/GEO-POS.schema.json index f17646c0da..594fa22765 100644 --- a/src/main/resources/json-schema/GEO-POS.schema.json +++ b/src/main/resources/json-schema/GEO-POS.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "GEO-POS.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "geoPositionsUpdate", diff --git a/src/main/resources/json-schema/GEO-REQ.schema.json b/src/main/resources/json-schema/GEO-REQ.schema.json index ec3f8feab6..0f2678b84f 100644 --- a/src/main/resources/json-schema/GEO-REQ.schema.json +++ b/src/main/resources/json-schema/GEO-REQ.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "GEO-REQ.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "geoResourcesRequest", diff --git a/src/main/resources/json-schema/GEO-RES.schema.json b/src/main/resources/json-schema/GEO-RES.schema.json index 8e5656b003..ba13124c11 100644 --- a/src/main/resources/json-schema/GEO-RES.schema.json +++ b/src/main/resources/json-schema/GEO-RES.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "GEO-RES.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "geoResourcesDetails", diff --git a/src/main/resources/json-schema/RC-DE.schema.json b/src/main/resources/json-schema/RC-DE.schema.json index b32b29c1a9..56ef1f1d5a 100644 --- a/src/main/resources/json-schema/RC-DE.schema.json +++ b/src/main/resources/json-schema/RC-DE.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RC-DE.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "DistributionElement", diff --git a/src/main/resources/json-schema/RC-EDA.schema.json b/src/main/resources/json-schema/RC-EDA.schema.json index fc9411eb36..9f6f9208f9 100644 --- a/src/main/resources/json-schema/RC-EDA.schema.json +++ b/src/main/resources/json-schema/RC-EDA.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RC-EDA.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "createCase", diff --git a/src/main/resources/json-schema/RC-REF.schema.json b/src/main/resources/json-schema/RC-REF.schema.json index ee34aa00e0..93b016f693 100644 --- a/src/main/resources/json-schema/RC-REF.schema.json +++ b/src/main/resources/json-schema/RC-REF.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RC-REF.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "reference", diff --git a/src/main/resources/json-schema/RS-BPV.schema.json b/src/main/resources/json-schema/RS-BPV.schema.json index 43c9f6880f..dbc2ae9b38 100644 --- a/src/main/resources/json-schema/RS-BPV.schema.json +++ b/src/main/resources/json-schema/RS-BPV.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-BPV.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "interventionReport", diff --git a/src/main/resources/json-schema/RS-DR.schema.json b/src/main/resources/json-schema/RS-DR.schema.json index 31bdbcaeef..cacca5f94f 100644 --- a/src/main/resources/json-schema/RS-DR.schema.json +++ b/src/main/resources/json-schema/RS-DR.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-DR.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "resourcesRequest", diff --git a/src/main/resources/json-schema/RS-EDA-MAJ.schema.json b/src/main/resources/json-schema/RS-EDA-MAJ.schema.json index a4fb1d7994..976df88dab 100644 --- a/src/main/resources/json-schema/RS-EDA-MAJ.schema.json +++ b/src/main/resources/json-schema/RS-EDA-MAJ.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-EDA-MAJ.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "createCaseHealthUpdate", diff --git a/src/main/resources/json-schema/RS-EDA.schema.json b/src/main/resources/json-schema/RS-EDA.schema.json index 2643f6eaba..05c3f8e8d8 100644 --- a/src/main/resources/json-schema/RS-EDA.schema.json +++ b/src/main/resources/json-schema/RS-EDA.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-EDA.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "createCaseHealth", diff --git a/src/main/resources/json-schema/RS-ER.schema.json b/src/main/resources/json-schema/RS-ER.schema.json index c2fe07a58a..77bc18e0ae 100644 --- a/src/main/resources/json-schema/RS-ER.schema.json +++ b/src/main/resources/json-schema/RS-ER.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-ER.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "resourcesEngagement", diff --git a/src/main/resources/json-schema/RS-ERROR.schema.json b/src/main/resources/json-schema/RS-ERROR.schema.json index 99e6da0b6b..a284bb15fe 100644 --- a/src/main/resources/json-schema/RS-ERROR.schema.json +++ b/src/main/resources/json-schema/RS-ERROR.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-ERROR.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "error", diff --git a/src/main/resources/json-schema/RS-INFO.schema.json b/src/main/resources/json-schema/RS-INFO.schema.json deleted file mode 100644 index 11cabba363..0000000000 --- a/src/main/resources/json-schema/RS-INFO.schema.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "classpath:/json-schema/schema#", - "x-id": "RS-INFO.schema.json#", - "version": "24.11.29", - "example": "example.json#", - "type": "object", - "title": "info", - "required": [ - "info" - ], - "properties": { - "info": { - "type": "string", - "title": "Information", - "x-health-only": false, - "x-cols": 6, - "example": "example.json#/info", - "description": " Champ libre permettant de transmettre des informations quelconques" - } - }, - "definitions": {}, - "additionalProperties": false -} \ No newline at end of file diff --git a/src/main/resources/json-schema/RS-RI.schema.json b/src/main/resources/json-schema/RS-RI.schema.json index 70986de7b4..eb596e7e51 100644 --- a/src/main/resources/json-schema/RS-RI.schema.json +++ b/src/main/resources/json-schema/RS-RI.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-RI.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "resourcesInfo", diff --git a/src/main/resources/json-schema/RS-RPIS.schema.json b/src/main/resources/json-schema/RS-RPIS.schema.json index fef646cdd6..e2dd77c8e8 100644 --- a/src/main/resources/json-schema/RS-RPIS.schema.json +++ b/src/main/resources/json-schema/RS-RPIS.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-RPIS.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "rpis", diff --git a/src/main/resources/json-schema/RS-RR.schema.json b/src/main/resources/json-schema/RS-RR.schema.json index 35ccb997f1..fb0f665d4f 100644 --- a/src/main/resources/json-schema/RS-RR.schema.json +++ b/src/main/resources/json-schema/RS-RR.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-RR.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "resourcesResponse", diff --git a/src/main/resources/json-schema/RS-SR.schema.json b/src/main/resources/json-schema/RS-SR.schema.json index 369ac77468..1012a8c361 100644 --- a/src/main/resources/json-schema/RS-SR.schema.json +++ b/src/main/resources/json-schema/RS-SR.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-SR.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "resourcesStatus", diff --git a/src/main/resources/json-schema/RS-URL.schema.json b/src/main/resources/json-schema/RS-URL.schema.json index b647016c27..3eca8390c5 100644 --- a/src/main/resources/json-schema/RS-URL.schema.json +++ b/src/main/resources/json-schema/RS-URL.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "RS-URL.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "documentLink", @@ -28,6 +28,14 @@ "description": "Indique l'identifiant partagé du patient auquel les documents sont rattachés", "pattern": "^([\\w-]+\\.){3,4}patient(\\.[\\w-]+){1,2}$" }, + "code": { + "type": "string", + "title": "Code d'accès au bilan", + "x-health-only": false, + "x-cols": 6, + "example": "example.json#/code", + "description": "Code unitaire par bilan qui permet à l'utilisateur qui reçoit ce lien d'ouvrir le bilan lorsque celui ci ne nécessite pas une connexion nominative mais un code bilan " + }, "document": { "type": "array", "items": { diff --git a/src/main/resources/json-schema/TECHNICAL.schema.json b/src/main/resources/json-schema/TECHNICAL.schema.json index 1a26737b5d..20ad770a76 100644 --- a/src/main/resources/json-schema/TECHNICAL.schema.json +++ b/src/main/resources/json-schema/TECHNICAL.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "TECHNICAL.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "technical", diff --git a/src/main/resources/json-schema/TECHNICAL_NOREQ.schema.json b/src/main/resources/json-schema/TECHNICAL_NOREQ.schema.json index 8486df7328..e4b0c394dd 100644 --- a/src/main/resources/json-schema/TECHNICAL_NOREQ.schema.json +++ b/src/main/resources/json-schema/TECHNICAL_NOREQ.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "TECHNICAL_NOREQ.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "technicalNoreq", diff --git a/src/main/resources/json-schema/customContent.schema.json b/src/main/resources/json-schema/customContent.schema.json index 31d98b1a78..f98d01137f 100644 --- a/src/main/resources/json-schema/customContent.schema.json +++ b/src/main/resources/json-schema/customContent.schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "classpath:/json-schema/schema#", "x-id": "customContent.schema.json#", - "version": "24.11.29", + "version": "24.12.16", "example": "example.json#", "type": "object", "title": "customContent", diff --git a/src/main/resources/sample/examples/EMSI/EMSI-Complet-DC-RDC-OPG-message.xml b/src/main/resources/sample/examples/EMSI/EMSI-Complet-DC-RDC-OPG-message.xml index 8a83732946..7c08dd283b 100644 --- a/src/main/resources/sample/examples/EMSI/EMSI-Complet-DC-RDC-OPG-message.xml +++ b/src/main/resources/sample/examples/EMSI/EMSI-Complet-DC-RDC-OPG-message.xml @@ -1,5 +1,5 @@ - + d350c9d2-9d76-4568-b0b7-a747ffadc949 ACTUAL diff --git a/src/main/resources/sample/examples/EMSI/EMSI-OPG-message.xml b/src/main/resources/sample/examples/EMSI/EMSI-OPG-message.xml index a8c49402d5..d938857abc 100644 --- a/src/main/resources/sample/examples/EMSI/EMSI-OPG-message.xml +++ b/src/main/resources/sample/examples/EMSI/EMSI-OPG-message.xml @@ -1,5 +1,5 @@ - + d350c9d2-9d76-4568-b0b7-a747ffadc949 ACTUAL diff --git a/src/main/resources/sample/examples/EMSI/EMSI-RDC-message.xml b/src/main/resources/sample/examples/EMSI/EMSI-RDC-message.xml index 48fce8ddf0..8555b2a4b2 100644 --- a/src/main/resources/sample/examples/EMSI/EMSI-RDC-message.xml +++ b/src/main/resources/sample/examples/EMSI/EMSI-RDC-message.xml @@ -1,5 +1,5 @@ - + d350c9d2-9d76-4568-b0b7-a747ffadc949 ACTUAL diff --git a/src/main/resources/sample/examples/EMSI/emsi-DC-message.xml b/src/main/resources/sample/examples/EMSI/emsi-DC-message.xml index 9cc57376d0..ef2d55127f 100644 --- a/src/main/resources/sample/examples/EMSI/emsi-DC-message.xml +++ b/src/main/resources/sample/examples/EMSI/emsi-DC-message.xml @@ -1,5 +1,5 @@ - + d350c9d2-9d76-4568-b0b7-a747ffadc949 ACTUAL diff --git a/src/main/resources/sample/examples/GEO-POS/CU2_Geolocation.xml b/src/main/resources/sample/examples/GEO-POS/CU2_Geolocation.xml index 6c0a0b40de..30130d8854 100644 --- a/src/main/resources/sample/examples/GEO-POS/CU2_Geolocation.xml +++ b/src/main/resources/sample/examples/GEO-POS/CU2_Geolocation.xml @@ -1,5 +1,5 @@ - + fr.health.samu760.resource.VLM250 2024-01-27T08:44:00+02:00 diff --git a/src/main/resources/sample/examples/GEO-REQ/CU3_Geolocation.xml b/src/main/resources/sample/examples/GEO-REQ/CU3_Geolocation.xml index 20f03673dd..37a2c7a193 100644 --- a/src/main/resources/sample/examples/GEO-REQ/CU3_Geolocation.xml +++ b/src/main/resources/sample/examples/GEO-REQ/CU3_Geolocation.xml @@ -1,5 +1,5 @@ - + fr.health.samu760.resource.VLM250 fr.health.samu760.resource.VLM211 fr.health.samu760.resource.VLM213 diff --git a/src/main/resources/sample/examples/GEO-RES/CU1_Geolocation.xml b/src/main/resources/sample/examples/GEO-RES/CU1_Geolocation.xml index 62e558746e..6f47979d6f 100644 --- a/src/main/resources/sample/examples/GEO-RES/CU1_Geolocation.xml +++ b/src/main/resources/sample/examples/GEO-RES/CU1_Geolocation.xml @@ -1,5 +1,5 @@ - + fr.health.samu760.resource.VLM250 fr.health.760.samu76 diff --git a/src/main/resources/sample/examples/RC-EDA/RC-EDA-FemmeEnceinte-DelphineVigneau.xml b/src/main/resources/sample/examples/RC-EDA/RC-EDA-FemmeEnceinte-DelphineVigneau.xml index 8e33a547df..3c9bf4c8ef 100644 --- a/src/main/resources/sample/examples/RC-EDA/RC-EDA-FemmeEnceinte-DelphineVigneau.xml +++ b/src/main/resources/sample/examples/RC-EDA/RC-EDA-FemmeEnceinte-DelphineVigneau.xml @@ -1,5 +1,5 @@ - + fr.fire.sis044.cga-044.SC-20240526-044-cga-AL8 SC-20240526-044-cga-AL8 2024-05-26T13:15:00+02:00 diff --git a/src/main/resources/sample/examples/RC-EDA/RC-EDA-FuiteDeGaz-AliceGregoireNormand.xml b/src/main/resources/sample/examples/RC-EDA/RC-EDA-FuiteDeGaz-AliceGregoireNormand.xml index 5685c992fe..a9b0f08b9a 100644 --- a/src/main/resources/sample/examples/RC-EDA/RC-EDA-FuiteDeGaz-AliceGregoireNormand.xml +++ b/src/main/resources/sample/examples/RC-EDA/RC-EDA-FuiteDeGaz-AliceGregoireNormand.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 DRFR154402413800236 2024-05-18T18:15:00+02:00 diff --git a/src/main/resources/sample/examples/RC-REF/RC-REF.xml b/src/main/resources/sample/examples/RC-REF/RC-REF.xml index 52f4c8ddce..6829497790 100644 --- a/src/main/resources/sample/examples/RC-REF/RC-REF.xml +++ b/src/main/resources/sample/examples/RC-REF/RC-REF.xml @@ -1,4 +1,4 @@ - + fr.health.samuB_2607723d-507d-4cbf-bf74-12345f7064cd diff --git a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FemmeEnceinte_DelphineVigneau.10.xml b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FemmeEnceinte_DelphineVigneau.10.xml index 96787e815d..7bc47a4c17 100644 --- a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FemmeEnceinte_DelphineVigneau.10.xml +++ b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FemmeEnceinte_DelphineVigneau.10.xml @@ -1,5 +1,5 @@ - + fr.fire.sis044.cga-044.SC-20240526-044-cga-AL8 38978621DV diff --git a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_AliceNormand.12b.xml b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_AliceNormand.12b.xml index a0e05a6ccf..c3f01da2d3 100644 --- a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_AliceNormand.12b.xml +++ b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_AliceNormand.12b.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 38978624AN diff --git a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_AliceNormand.14b.xml b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_AliceNormand.14b.xml index cb46bf743a..6c184a404f 100644 --- a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_AliceNormand.14b.xml +++ b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_AliceNormand.14b.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 38978624AN diff --git a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_GregoireNormand.12a.xml b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_GregoireNormand.12a.xml index 76279f7ae9..4c5286500e 100644 --- a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_GregoireNormand.12a.xml +++ b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_GregoireNormand.12a.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 38978624GN diff --git a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_GregoireNormand.14a.xml b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_GregoireNormand.14a.xml index fbdd13aea9..2fa02a7631 100644 --- a/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_GregoireNormand.14a.xml +++ b/src/main/resources/sample/examples/RS-BPV/RS-BPV_FuiteDeGaz_GregoireNormand.14a.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 38978624GN diff --git a/src/main/resources/sample/examples/RS-BPV/RS-BPV_Secondaire_RobertVermande.07.xml b/src/main/resources/sample/examples/RS-BPV/RS-BPV_Secondaire_RobertVermande.07.xml index c432d1844e..7585994e88 100644 --- a/src/main/resources/sample/examples/RS-BPV/RS-BPV_Secondaire_RobertVermande.07.xml +++ b/src/main/resources/sample/examples/RS-BPV/RS-BPV_Secondaire_RobertVermande.07.xml @@ -1,5 +1,5 @@ - + fr.health.samu680.DRFR154402413800555 38978621TG diff --git a/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_DidierMorel.04a.xml b/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_DidierMorel.04a.xml index 76c415cc9f..34cbe4ac24 100644 --- a/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_DidierMorel.04a.xml +++ b/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_DidierMorel.04a.xml @@ -1,5 +1,5 @@ - + fr.health.samu770.DRFR157702400400055 fr.health.samu770.request.as41pb diff --git a/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_EnfantsNguyen.04a.xml b/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_EnfantsNguyen.04a.xml index 67b95e3937..68c6cd3c2f 100644 --- a/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_EnfantsNguyen.04a.xml +++ b/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_EnfantsNguyen.04a.xml @@ -1,5 +1,5 @@ - + fr.health.samu800.DRFR158002421400215 fr.health.samu76A.request.af78b21 diff --git a/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_LolaHalimi.03a.xml b/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_LolaHalimi.03a.xml index d5bf4d5917..b1f83e8e25 100644 --- a/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_LolaHalimi.03a.xml +++ b/src/main/resources/sample/examples/RS-DR/RS-DR_partageRessources_LolaHalimi.03a.xml @@ -1,5 +1,5 @@ - + fr.health.samu950.DRFR159502401800159 fr.health.samu950.request.zs498qo diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.06.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.06.xml index c502bd514c..81bb51b1a1 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.06.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.06.xml @@ -1,5 +1,5 @@ - + fr.fire.cga-044.SC-20240526-044-cga-AL8 fr.health.samu440.patient.DRFR154402414300123.1 diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.08.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.08.xml index 2d9a2f5ad1..1becd97a03 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.08.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.08.xml @@ -1,5 +1,5 @@ - + fr.fire.cga-044.SC-20240526-044-cga-AL8 fr.health.samu440.patient.DRFR154402414300123.1 diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.12.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.12.xml index b8ee988e58..5244734e20 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.12.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FemmeEnceinte_DelphineVigneau.12.xml @@ -1,5 +1,5 @@ - + fr.fire.cga-044.SC-20240526-044-cga-AL8
diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.07.json b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.07.json index f151b1c08f..062d5ac5db 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.07.json +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.07.json @@ -3,7 +3,7 @@ "qualification": { "details": { "priority": "P1", - "status": " ACTIF" + "status": "ACTIF" } }, "medicalNote": [ diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.07.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.07.xml new file mode 100644 index 0000000000..da6a18b3d1 --- /dev/null +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.07.xml @@ -0,0 +1,44 @@ + + + fr.health.samu440.DRFR154402413800236 + +
+ ACTIF + P1 +
+
+ + fr.health.samu440.patient.DRFR154402413800236.1 + + 44 + 155 + + + + fr.health.samu440.patient.DRFR154402413800236.2 + + 34 + 143 + + + + fr.health.samu440.patient.DRFR154402413800236.P2 + + + MEDECIN + + fr.health.samu440.medicalNote.000233 + 2024-05-18T18:20:00+02:00 + Se plaint de difficulté respiratoire et de maux de tête. Hospitalisations antérieures pour crises d'asthme sévères (dernière en octobre 2023). Allergies connues : pollen, acariens + + + fr.health.samu440.patient.DRFR154402413800236.1 + + + MEDECIN + + fr.health.samu440.medicalNote.000234 + 2024-05-18T18:21:00+02:00 + Enfant conscient, légèrement somnolent, se plaignant de maux de tête et de nausées. Légère confusion, répond correctement aux questions simples + +
diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.10.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.10.xml index 9cb60d44fe..6b1e55ade8 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.10.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.10.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 fr.health.samu440.patient.DRFR154402413800236.2 diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.16.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.16.xml index 335855e5ad..e8ff05395a 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.16.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_FuiteDeGaz_AliceGregoireNormand.16.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236
diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_Secondaire_RobertVermande.09.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_Secondaire_RobertVermande.09.xml index fff0d2eda9..b5d917cf21 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_Secondaire_RobertVermande.09.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_Secondaire_RobertVermande.09.xml @@ -1,5 +1,5 @@ - + fr.health.samu680.DRFR154402413800555
diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_DidierMorel.02.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_DidierMorel.02.xml index e221f5ca04..6c784cf10b 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_DidierMorel.02.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_DidierMorel.02.xml @@ -1,5 +1,5 @@ - + fr.health.samu770.DRFR157702400400055 fr.health.samu770.patient.DRFR157702400400055.2 diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_EnfantsNguyen.03a.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_EnfantsNguyen.03a.xml index 3b43f00f0a..a7e8ffe4dd 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_EnfantsNguyen.03a.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_EnfantsNguyen.03a.xml @@ -1,5 +1,5 @@ - + fr.health.samu800.DRFR158002421400215 fr.health.samu800.patient.DRFR158002421400215.1 diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_LolaHalimi.02.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_LolaHalimi.02.xml index c7358fcb2c..c8d114a166 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_LolaHalimi.02.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_LolaHalimi.02.xml @@ -1,5 +1,5 @@ - + fr.health.samu950.DRFR159502401800159
diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_MonsieurX.02a.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_MonsieurX.02a.xml index 8ec4ee67e4..bd1e87fb81 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_MonsieurX.02a.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_MonsieurX.02a.xml @@ -1,5 +1,5 @@ - + fr.health.samu009.DRFR150092406301259
diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_MonsieurX.02b.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_MonsieurX.02b.xml index 90d5e76d25..4bf9e99f07 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_MonsieurX.02b.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_partageDossier_MonsieurX.02b.xml @@ -1,5 +1,5 @@ - + fr.health.samu009.DRFR150092406301259 fr.health.samu009.patient.DRFR150092406301259.1 diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_priseEnCharge_EnfantsNguyen.02.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_priseEnCharge_EnfantsNguyen.02.xml index ef86f6dcbe..99c0b157b0 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_priseEnCharge_EnfantsNguyen.02.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_priseEnCharge_EnfantsNguyen.02.xml @@ -1,5 +1,5 @@ - + fr.health.samu800.DRFR158002421400215 fr.health.samu76A diff --git a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_priseEnCharge_OuardiaBoudadi.02.xml b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_priseEnCharge_OuardiaBoudadi.02.xml index 8ba4241976..8293ae10e3 100644 --- a/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_priseEnCharge_OuardiaBoudadi.02.xml +++ b/src/main/resources/sample/examples/RS-EDA-MAJ/RS-EDA-MAJ_priseEnCharge_OuardiaBoudadi.02.xml @@ -1,5 +1,5 @@ - + fr.health.samu950.DRFR159502401000233 fr.health.samu780 diff --git a/src/main/resources/sample/examples/RS-EDA/RS-EDA_Secondaire_RobertVermande.01.xml b/src/main/resources/sample/examples/RS-EDA/RS-EDA_Secondaire_RobertVermande.01.xml index 87bdb294bf..830316899f 100644 --- a/src/main/resources/sample/examples/RS-EDA/RS-EDA_Secondaire_RobertVermande.01.xml +++ b/src/main/resources/sample/examples/RS-EDA/RS-EDA_Secondaire_RobertVermande.01.xml @@ -1,5 +1,5 @@ - + fr.health.samu680.DRFR154402413800555 DRFR154402413800555 2024-11-18T06:57:00+02:00 diff --git a/src/main/resources/sample/examples/RS-EDA/RS-EDA_partageDossier_LolaHalimi.01a.xml b/src/main/resources/sample/examples/RS-EDA/RS-EDA_partageDossier_LolaHalimi.01a.xml index 79391d96a8..f99450c6e8 100644 --- a/src/main/resources/sample/examples/RS-EDA/RS-EDA_partageDossier_LolaHalimi.01a.xml +++ b/src/main/resources/sample/examples/RS-EDA/RS-EDA_partageDossier_LolaHalimi.01a.xml @@ -1,5 +1,5 @@ - + fr.health.samu950.DRFR159502401800159 2024-01-18T18:00:00+01:00 diff --git a/src/main/resources/sample/examples/RS-EDA/RS-EDA_partageDossier_MonsieurX.01.xml b/src/main/resources/sample/examples/RS-EDA/RS-EDA_partageDossier_MonsieurX.01.xml index 843ced91ba..8a61e58044 100644 --- a/src/main/resources/sample/examples/RS-EDA/RS-EDA_partageDossier_MonsieurX.01.xml +++ b/src/main/resources/sample/examples/RS-EDA/RS-EDA_partageDossier_MonsieurX.01.xml @@ -1,5 +1,5 @@ - + fr.health.samu009.DRFR150092406301259 2024-03-03T15:00:00+01:00 diff --git a/src/main/resources/sample/examples/RS-ER/RS-ER-FuiteDeGaz_AliceGregoireNORMAND.02a.xml b/src/main/resources/sample/examples/RS-ER/RS-ER-FuiteDeGaz_AliceGregoireNORMAND.02a.xml index 566e948149..7b9a18063a 100644 --- a/src/main/resources/sample/examples/RS-ER/RS-ER-FuiteDeGaz_AliceGregoireNORMAND.02a.xml +++ b/src/main/resources/sample/examples/RS-ER/RS-ER-FuiteDeGaz_AliceGregoireNORMAND.02a.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 SMUR.AR diff --git a/src/main/resources/sample/examples/RS-ER/RS-ER_FemmeEnceinte_DelphineVIGNEAU.02.xml b/src/main/resources/sample/examples/RS-ER/RS-ER_FemmeEnceinte_DelphineVIGNEAU.02.xml index 74a45f61eb..4e49bf94c3 100644 --- a/src/main/resources/sample/examples/RS-ER/RS-ER_FemmeEnceinte_DelphineVIGNEAU.02.xml +++ b/src/main/resources/sample/examples/RS-ER/RS-ER_FemmeEnceinte_DelphineVIGNEAU.02.xml @@ -1,5 +1,5 @@ - + fr.fire.sis044.cga-044.SC-20240526-044-cga-AL8 SMUR.AR diff --git a/src/main/resources/sample/examples/RS-ER/RS-ER_FuiteDeGaz_AliceGregoireNORMAND.02.xml b/src/main/resources/sample/examples/RS-ER/RS-ER_FuiteDeGaz_AliceGregoireNORMAND.02.xml index 9dc6ce7718..598c350806 100644 --- a/src/main/resources/sample/examples/RS-ER/RS-ER_FuiteDeGaz_AliceGregoireNORMAND.02.xml +++ b/src/main/resources/sample/examples/RS-ER/RS-ER_FuiteDeGaz_AliceGregoireNORMAND.02.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 SMUR.VLM diff --git a/src/main/resources/sample/examples/RS-ER/RS-ER_Secondaire_RobertVermande.02.xml b/src/main/resources/sample/examples/RS-ER/RS-ER_Secondaire_RobertVermande.02.xml index 4a20ab9c20..0c8bba4537 100644 --- a/src/main/resources/sample/examples/RS-ER/RS-ER_Secondaire_RobertVermande.02.xml +++ b/src/main/resources/sample/examples/RS-ER/RS-ER_Secondaire_RobertVermande.02.xml @@ -1,5 +1,5 @@ - + fr.health.samu680.DRFR154402413800555 SMUR.AR diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_FemmeEnceinte_DelphineVigneau.03.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_FemmeEnceinte_DelphineVigneau.03.xml index 4c5fe5705e..cbf2215ee3 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_FemmeEnceinte_DelphineVigneau.03.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_FemmeEnceinte_DelphineVigneau.03.xml @@ -1,5 +1,5 @@ - + fr.fire.sis044.cga-044.SC-20240526-044-cga-AL8 2024-05-26T13:22:00+02:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_FuiteDeGaz_AliceGregoireNORMAND.03.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_FuiteDeGaz_AliceGregoireNORMAND.03.xml index cd98b0386f..e260897fa3 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_FuiteDeGaz_AliceGregoireNORMAND.03.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_FuiteDeGaz_AliceGregoireNORMAND.03.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 2024-05-18T18:20:00+02:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_FuiteDeGaz_AliceGregoireNORMAND.06.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_FuiteDeGaz_AliceGregoireNORMAND.06.xml index f0c6de1125..995a57d771 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_FuiteDeGaz_AliceGregoireNORMAND.06.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_FuiteDeGaz_AliceGregoireNORMAND.06.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 2024-05-18T18:20:00+02:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_Secondaire_RobertVermande.03.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_Secondaire_RobertVermande.03.xml index 59db2e1af4..480abe1d40 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_Secondaire_RobertVermande.03.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_Secondaire_RobertVermande.03.xml @@ -1,5 +1,5 @@ - + fr.health.samu680.DRFR154402413800555 2024-11-18T07:00:00+02:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_DidierMorel.01b.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_DidierMorel.01b.xml index 5c667e790d..afa2e5446b 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_DidierMorel.01b.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_DidierMorel.01b.xml @@ -1,5 +1,5 @@ - + fr.health.samu770.DRFR157702400400055 2024-01-04T08:05:00+01:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_EnfantsNguyen.03b.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_EnfantsNguyen.03b.xml index e6e64b4778..dbf4ce8bab 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_EnfantsNguyen.03b.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_EnfantsNguyen.03b.xml @@ -1,5 +1,5 @@ - + fr.health.samu800.DRFR158002421400215 2024-08-01T16:42:00+02:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_LolaHalimi.01b.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_LolaHalimi.01b.xml index f28d5bd72f..35c50d1823 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_LolaHalimi.01b.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_partageDossier_LolaHalimi.01b.xml @@ -1,5 +1,5 @@ - + fr.health.samu950.DRFR159502401800159 2024-01-18T18:06:00+01:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_DidierMorel.04c.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_DidierMorel.04c.xml index a3dcfae7f7..72a02e2b3d 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_DidierMorel.04c.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_DidierMorel.04c.xml @@ -1,5 +1,5 @@ - + fr.health.samu770.DRFR157702400400055 2024-01-04T08:32:00+01:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_EnfantsNguyen.04c.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_EnfantsNguyen.04c.xml index c96c4dd56a..1a2fbc9794 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_EnfantsNguyen.04c.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_EnfantsNguyen.04c.xml @@ -1,5 +1,5 @@ - + fr.health.samu800.DRFR158002421400215 2024-08-01T16:55:00+02:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_LolaHalimi.03c.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_LolaHalimi.03c.xml index a79fc9f786..b83960173e 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_LolaHalimi.03c.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_LolaHalimi.03c.xml @@ -1,5 +1,5 @@ - + fr.health.samu950.DRFR159502401800159 2024-01-18T18:23:00+01:00 diff --git a/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_MonsieurX.03.xml b/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_MonsieurX.03.xml index c29b996067..e244d3b916 100644 --- a/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_MonsieurX.03.xml +++ b/src/main/resources/sample/examples/RS-RI/RS-RI_partageRessources_MonsieurX.03.xml @@ -1,5 +1,5 @@ - + fr.health.samu009.DRFR150092406301259 2024-03-03T15:17:00+01:00 diff --git a/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FemmeEnceinte_DelphineVigneau.11.xml b/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FemmeEnceinte_DelphineVigneau.11.xml index 5c1d12cc68..b213a660ff 100644 --- a/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FemmeEnceinte_DelphineVigneau.11.xml +++ b/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FemmeEnceinte_DelphineVigneau.11.xml @@ -1,5 +1,5 @@ - + fr.health.samu440 DRFR154402414300123 diff --git a/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FuiteDeGaz_AliceNormand.15a.xml b/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FuiteDeGaz_AliceNormand.15a.xml index d2c96316ea..9d334f6a0f 100644 --- a/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FuiteDeGaz_AliceNormand.15a.xml +++ b/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FuiteDeGaz_AliceNormand.15a.xml @@ -1,5 +1,5 @@ - + fr.health.samu440 DRFR154402413800236 diff --git a/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FuiteDeGaz_GregoireNormand.15b.xml b/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FuiteDeGaz_GregoireNormand.15b.xml index 451e3f9697..9420e682cf 100644 --- a/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FuiteDeGaz_GregoireNormand.15b.xml +++ b/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_FuiteDeGaz_GregoireNormand.15b.xml @@ -1,5 +1,5 @@ - + fr.health.samu440 DRFR154402413800236 diff --git a/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_Secondaire_RobertVermande.08.xml b/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_Secondaire_RobertVermande.08.xml index f0729ec959..ae4cfc4a6e 100644 --- a/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_Secondaire_RobertVermande.08.xml +++ b/src/main/resources/sample/examples/RS-RPIS/RS-RPIS_Secondaire_RobertVermande.08.xml @@ -1,5 +1,5 @@ - + fr.health.samu680 DRFR154402413800555 diff --git a/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_DidierMorel.04b.xml b/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_DidierMorel.04b.xml index 2d54961b59..2fe9171e3b 100644 --- a/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_DidierMorel.04b.xml +++ b/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_DidierMorel.04b.xml @@ -1,5 +1,5 @@ - + fr.health.samu770.DRFR157702400400055 fr.health.samu770.request.as41pb diff --git a/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_EnfantsNguyen.04b.xml b/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_EnfantsNguyen.04b.xml index 358a2572bb..7ae1afa1b4 100644 --- a/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_EnfantsNguyen.04b.xml +++ b/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_EnfantsNguyen.04b.xml @@ -1,5 +1,5 @@ - + fr.health.samu800.DRFR158002421400215 fr.health.samu76A.request.af78b21 diff --git a/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_LolaHalimi.03b.xml b/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_LolaHalimi.03b.xml index 2eb2c34991..ea70201b37 100644 --- a/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_LolaHalimi.03b.xml +++ b/src/main/resources/sample/examples/RS-RR/RS-RR_partageRessources_LolaHalimi.03b.xml @@ -1,5 +1,5 @@ - + fr.health.samu950.DRFR159502401800159 fr.health.samu950.request.zs498qo diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.04.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.04.xml index c665ffc5d6..1511067a53 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.04.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.04.xml @@ -1,5 +1,5 @@ - + fr.fire.sis044.cga-044.SC-20240526-044-cga-AL8 fr.health.samu440.resource.VLM4 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.07.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.07.xml index b551b95ca5..84959b3393 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.07.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.07.xml @@ -1,5 +1,5 @@ - + fr.fire.sis044.cga-044.SC-20240526-044-cga-AL8 fr.health.samu440.resource.VLM4 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.09.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.09.xml index f106fa9d11..78eb4883f6 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.09.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_FemmeEnceinte_DelphineVIGNEAU.09.xml @@ -1,5 +1,5 @@ - + fr.fire.sis044.cga-044.SC-20240526-044-cga-AL8 fr.health.samu440.resource.VLM4 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.04.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.04.xml index 73394b79d2..d86d85e7e8 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.04.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.04.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 fr.health.samu440.resource.VLM2 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.08.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.08.xml index 76069dd17c..b43043e1e3 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.08.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.08.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 fr.health.samu440.resource.VLM2 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.11.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.11.xml index d08fb83ab7..1f5dfe347a 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.11.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.11.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 fr.health.samu440.resource.VLM2 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.13.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.13.xml index 71985fed56..e93aa176ae 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.13.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_FuiteDeGaz_AliceGregoireNORMAND.13.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 fr.health.samu440.resource.VLM2 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_Secondaire_RobertVermande.04.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_Secondaire_RobertVermande.04.xml index 5bc1a21ad0..92d1987378 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_Secondaire_RobertVermande.04.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_Secondaire_RobertVermande.04.xml @@ -1,5 +1,5 @@ - + fr.health.samu680.DRFR154402413800555 fr.health.samu680.resource.AR1 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_Secondaire_RobertVermande.06.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_Secondaire_RobertVermande.06.xml index cdeceea5c2..d7fffcce35 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_Secondaire_RobertVermande.06.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_Secondaire_RobertVermande.06.xml @@ -1,5 +1,5 @@ - + fr.health.samu680.DRFR154402413800555 fr.health.samu680.resource.AR1 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_partageDossier_DidierMorel.03a.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_partageDossier_DidierMorel.03a.xml index 209979b7b6..e71258c622 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_partageDossier_DidierMorel.03a.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_partageDossier_DidierMorel.03a.xml @@ -1,5 +1,5 @@ - + fr.health.samu770.DRFR157702400400055 fr.fire.sis077.cgo-077.resource.VSAV32 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_partageDossier_DidierMorel.03b.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_partageDossier_DidierMorel.03b.xml index 001dfdb86a..eb60fd185f 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_partageDossier_DidierMorel.03b.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_partageDossier_DidierMorel.03b.xml @@ -1,5 +1,5 @@ - + fr.health.samu770.DRFR157702400400055 fr.health.samu770.resource.VLM250 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05a.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05a.xml index 75529bbb6d..830fdffe7d 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05a.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05a.xml @@ -1,5 +1,5 @@ - + fr.health.samu800.DRFR158002421400215 fr.health.samu76A.resource.VLM12 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05b.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05b.xml index b354c79115..1fdc490927 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05b.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05b.xml @@ -1,5 +1,5 @@ - + fr.health.samu800.DRFR158002421400215 fr.fire.sis076.cgo-076.resource.VSAV3A diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05c.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05c.xml index 49c49f79f3..11e1790bac 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05c.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_EnfantsNguyen.05c.xml @@ -1,5 +1,5 @@ - + fr.health.samu800.DRFR158002421400215 fr.health.samu800.resource.Heli80bec6 diff --git a/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_LolaHalimi.04.xml b/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_LolaHalimi.04.xml index d1f467490c..6515b28690 100644 --- a/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_LolaHalimi.04.xml +++ b/src/main/resources/sample/examples/RS-SR/RS-SR_partageRessources_LolaHalimi.04.xml @@ -1,5 +1,5 @@ - + fr.health.samu950.DRFR159502401800159 fr.health.samu780.resource.SMUR78-E diff --git a/src/main/resources/sample/examples/RS-URL/RS-URL_FemmeEnceinte_DelphineVigneau.05.xml b/src/main/resources/sample/examples/RS-URL/RS-URL_FemmeEnceinte_DelphineVigneau.05.xml index d28b0a5c29..b719cdf045 100644 --- a/src/main/resources/sample/examples/RS-URL/RS-URL_FemmeEnceinte_DelphineVigneau.05.xml +++ b/src/main/resources/sample/examples/RS-URL/RS-URL_FemmeEnceinte_DelphineVigneau.05.xml @@ -1,5 +1,5 @@ - + fr.fire.sis044.cga-044.SC-20240526-044-cga-AL8 fr.health.samu440.patient.DRFR154402414300123.1 diff --git a/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_AliceNormand.05b.xml b/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_AliceNormand.05b.xml index 878b572076..a43ee7c1fa 100644 --- a/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_AliceNormand.05b.xml +++ b/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_AliceNormand.05b.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 fr.health.samu440.patient.DRFR154402413800236.1 diff --git a/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_GregoireNormand.05a.xml b/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_GregoireNormand.05a.xml index b0f410dd90..be6e2ff4b0 100644 --- a/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_GregoireNormand.05a.xml +++ b/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_GregoireNormand.05a.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 fr.health.samu440.patient.DRFR154402413800236.2 diff --git a/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_GregoireNormand.09.xml b/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_GregoireNormand.09.xml index 2bd75dcfe2..98795fcb30 100644 --- a/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_GregoireNormand.09.xml +++ b/src/main/resources/sample/examples/RS-URL/RS-URL_FuiteDeGaz_GregoireNormand.09.xml @@ -1,5 +1,5 @@ - + fr.health.samu440.DRFR154402413800236 fr.health.samu440.patient.DRFR154402413800236.2 diff --git "a/src/main/resources/sample/examples/RS-URL/RS-URL_Secondaire_RobertVermande.05\342\200\213.xml" "b/src/main/resources/sample/examples/RS-URL/RS-URL_Secondaire_RobertVermande.05\342\200\213.xml" index c503fc77d4..b2893fea5a 100644 --- "a/src/main/resources/sample/examples/RS-URL/RS-URL_Secondaire_RobertVermande.05\342\200\213.xml" +++ "b/src/main/resources/sample/examples/RS-URL/RS-URL_Secondaire_RobertVermande.05\342\200\213.xml" @@ -1,5 +1,5 @@ - + fr.health.samu680.DRFR154402413800555 fr.health.samu680.patient.68263 diff --git a/src/main/resources/sample/failing/EDXL-DE/completely-missing-RC-DE.json b/src/main/resources/sample/failing/EDXL-DE/completely-missing-RC-DE.json index ee0ef72768..268a1e5596 100644 --- a/src/main/resources/sample/failing/EDXL-DE/completely-missing-RC-DE.json +++ b/src/main/resources/sample/failing/EDXL-DE/completely-missing-RC-DE.json @@ -28,4 +28,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/error-in-RC-DE.json b/src/main/resources/sample/failing/EDXL-DE/error-in-RC-DE.json index 0af36059a7..fe87e98d32 100644 --- a/src/main/resources/sample/failing/EDXL-DE/error-in-RC-DE.json +++ b/src/main/resources/sample/failing/EDXL-DE/error-in-RC-DE.json @@ -42,4 +42,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/error-in-envelope-and-RC-DE.json b/src/main/resources/sample/failing/EDXL-DE/error-in-envelope-and-RC-DE.json index 317d1dc627..0a192e788b 100644 --- a/src/main/resources/sample/failing/EDXL-DE/error-in-envelope-and-RC-DE.json +++ b/src/main/resources/sample/failing/EDXL-DE/error-in-envelope-and-RC-DE.json @@ -42,4 +42,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/error-in-envelope-and-content.json b/src/main/resources/sample/failing/EDXL-DE/error-in-envelope-and-content.json index 4a857c3b99..009a281539 100644 --- a/src/main/resources/sample/failing/EDXL-DE/error-in-envelope-and-content.json +++ b/src/main/resources/sample/failing/EDXL-DE/error-in-envelope-and-content.json @@ -41,4 +41,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/error-in-envelope.json b/src/main/resources/sample/failing/EDXL-DE/error-in-envelope.json index 01033f7d11..1716c44884 100644 --- a/src/main/resources/sample/failing/EDXL-DE/error-in-envelope.json +++ b/src/main/resources/sample/failing/EDXL-DE/error-in-envelope.json @@ -27,4 +27,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/errors-in-RC-DE-and-content.json b/src/main/resources/sample/failing/EDXL-DE/errors-in-RC-DE-and-content.json index a83c9f6530..609c03112b 100644 --- a/src/main/resources/sample/failing/EDXL-DE/errors-in-RC-DE-and-content.json +++ b/src/main/resources/sample/failing/EDXL-DE/errors-in-RC-DE-and-content.json @@ -41,4 +41,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/invalid-header.json b/src/main/resources/sample/failing/EDXL-DE/invalid-header.json index 0af36059a7..fe87e98d32 100644 --- a/src/main/resources/sample/failing/EDXL-DE/invalid-header.json +++ b/src/main/resources/sample/failing/EDXL-DE/invalid-header.json @@ -42,4 +42,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/missing-EDXL-required-field.json b/src/main/resources/sample/failing/EDXL-DE/missing-EDXL-required-field.json index 6f51f4e5c7..ee8529bd55 100644 --- a/src/main/resources/sample/failing/EDXL-DE/missing-EDXL-required-field.json +++ b/src/main/resources/sample/failing/EDXL-DE/missing-EDXL-required-field.json @@ -22,4 +22,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-RC-DE.json b/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-RC-DE.json index 9a7649a933..ff01efbb85 100644 --- a/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-RC-DE.json +++ b/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-RC-DE.json @@ -42,4 +42,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-content.json b/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-content.json index 7ae3977829..8615ed79b0 100644 --- a/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-content.json +++ b/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-content.json @@ -39,4 +39,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-envelope.json b/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-envelope.json index ba23fee64f..190234f0a1 100644 --- a/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-envelope.json +++ b/src/main/resources/sample/failing/EDXL-DE/multiple-errors-in-envelope.json @@ -24,4 +24,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/no-schemas.json b/src/main/resources/sample/failing/EDXL-DE/no-schemas.json index 292d5685a0..12b09ec5eb 100644 --- a/src/main/resources/sample/failing/EDXL-DE/no-schemas.json +++ b/src/main/resources/sample/failing/EDXL-DE/no-schemas.json @@ -36,4 +36,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/too-many-schemas-and-errors-in-content.json b/src/main/resources/sample/failing/EDXL-DE/too-many-schemas-and-errors-in-content.json index eb551ff623..e1e8f1b8e2 100644 --- a/src/main/resources/sample/failing/EDXL-DE/too-many-schemas-and-errors-in-content.json +++ b/src/main/resources/sample/failing/EDXL-DE/too-many-schemas-and-errors-in-content.json @@ -47,4 +47,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/too-many-schemas.json b/src/main/resources/sample/failing/EDXL-DE/too-many-schemas.json index 61c3f1be34..24c1d5bbd5 100644 --- a/src/main/resources/sample/failing/EDXL-DE/too-many-schemas.json +++ b/src/main/resources/sample/failing/EDXL-DE/too-many-schemas.json @@ -44,4 +44,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/unknown-property-at-root.json b/src/main/resources/sample/failing/EDXL-DE/unknown-property-at-root.json index a9c1ac9385..f5511da1f2 100644 --- a/src/main/resources/sample/failing/EDXL-DE/unknown-property-at-root.json +++ b/src/main/resources/sample/failing/EDXL-DE/unknown-property-at-root.json @@ -25,4 +25,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/failing/EDXL-DE/unknown-property-deep.json b/src/main/resources/sample/failing/EDXL-DE/unknown-property-deep.json index 4a09a660e1..56d9e18fbf 100644 --- a/src/main/resources/sample/failing/EDXL-DE/unknown-property-deep.json +++ b/src/main/resources/sample/failing/EDXL-DE/unknown-property-deep.json @@ -43,4 +43,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/valid/EDXL-DE/EDXL-DE.json b/src/main/resources/sample/valid/EDXL-DE/EDXL-DE.json index c8d0a07c0c..bc36253672 100644 --- a/src/main/resources/sample/valid/EDXL-DE/EDXL-DE.json +++ b/src/main/resources/sample/valid/EDXL-DE/EDXL-DE.json @@ -36,4 +36,4 @@ } } ] -} \ No newline at end of file +} diff --git a/src/main/resources/sample/valid/RC-EDA/RC-EDA.xml b/src/main/resources/sample/valid/RC-EDA/RC-EDA.xml index 5d523a01e8..e88061b67f 100644 --- a/src/main/resources/sample/valid/RC-EDA/RC-EDA.xml +++ b/src/main/resources/sample/valid/RC-EDA/RC-EDA.xml @@ -185,4 +185,4 @@ - \ No newline at end of file + diff --git a/src/main/resources/xsd/EMSI.xsd b/src/main/resources/xsd/EMSI.xsd index 4e42c33323..f8b7a378ab 100644 --- a/src/main/resources/xsd/EMSI.xsd +++ b/src/main/resources/xsd/EMSI.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/GEO-POS.xsd b/src/main/resources/xsd/GEO-POS.xsd index 2d10a5f539..3a513bcf13 100644 --- a/src/main/resources/xsd/GEO-POS.xsd +++ b/src/main/resources/xsd/GEO-POS.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/GEO-REQ.xsd b/src/main/resources/xsd/GEO-REQ.xsd index 24991b1d4f..cd34ca8b58 100644 --- a/src/main/resources/xsd/GEO-REQ.xsd +++ b/src/main/resources/xsd/GEO-REQ.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/GEO-RES.xsd b/src/main/resources/xsd/GEO-RES.xsd index c0768f9816..395ec0e636 100644 --- a/src/main/resources/xsd/GEO-RES.xsd +++ b/src/main/resources/xsd/GEO-RES.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RC-EDA.xsd b/src/main/resources/xsd/RC-EDA.xsd index b37cdeb237..71c8757657 100644 --- a/src/main/resources/xsd/RC-EDA.xsd +++ b/src/main/resources/xsd/RC-EDA.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RC-REF.xsd b/src/main/resources/xsd/RC-REF.xsd index 0592275ce3..63f0be5c0c 100644 --- a/src/main/resources/xsd/RC-REF.xsd +++ b/src/main/resources/xsd/RC-REF.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RC-XML-ContentType.xsd b/src/main/resources/xsd/RC-XML-ContentType.xsd index e903b71921..2d6708326a 100644 --- a/src/main/resources/xsd/RC-XML-ContentType.xsd +++ b/src/main/resources/xsd/RC-XML-ContentType.xsd @@ -1,51 +1,61 @@ + - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - @@ -64,26 +74,23 @@ - - - - + + + + + + + + + - - - - - - - - - - - - - - + + + + + + @@ -93,10 +100,9 @@ + - - diff --git a/src/main/resources/xsd/RS-BPV.xsd b/src/main/resources/xsd/RS-BPV.xsd index 9f345e148e..804f963b4b 100644 --- a/src/main/resources/xsd/RS-BPV.xsd +++ b/src/main/resources/xsd/RS-BPV.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RS-DR.xsd b/src/main/resources/xsd/RS-DR.xsd index 4baeea4b08..2a2dd62ffb 100644 --- a/src/main/resources/xsd/RS-DR.xsd +++ b/src/main/resources/xsd/RS-DR.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RS-EDA-MAJ.xsd b/src/main/resources/xsd/RS-EDA-MAJ.xsd index 23e4c25f79..c10e63dc07 100644 --- a/src/main/resources/xsd/RS-EDA-MAJ.xsd +++ b/src/main/resources/xsd/RS-EDA-MAJ.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RS-EDA.xsd b/src/main/resources/xsd/RS-EDA.xsd index 869c580581..b68b1034ba 100644 --- a/src/main/resources/xsd/RS-EDA.xsd +++ b/src/main/resources/xsd/RS-EDA.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RS-ER.xsd b/src/main/resources/xsd/RS-ER.xsd index 20f1201df2..40c228e1f9 100644 --- a/src/main/resources/xsd/RS-ER.xsd +++ b/src/main/resources/xsd/RS-ER.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RS-INFO.xsd b/src/main/resources/xsd/RS-INFO.xsd deleted file mode 100644 index b8435c88bf..0000000000 --- a/src/main/resources/xsd/RS-INFO.xsd +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - -  Champ libre permettant de transmettre des informations quelconques - - - - - diff --git a/src/main/resources/xsd/RS-RI.xsd b/src/main/resources/xsd/RS-RI.xsd index a3863b244d..f8ec5e74f3 100644 --- a/src/main/resources/xsd/RS-RI.xsd +++ b/src/main/resources/xsd/RS-RI.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RS-RPIS.xsd b/src/main/resources/xsd/RS-RPIS.xsd index 16f0a080c5..9c4e496cf7 100644 --- a/src/main/resources/xsd/RS-RPIS.xsd +++ b/src/main/resources/xsd/RS-RPIS.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RS-RR.xsd b/src/main/resources/xsd/RS-RR.xsd index c1a18af7dc..9b4c97ffa6 100644 --- a/src/main/resources/xsd/RS-RR.xsd +++ b/src/main/resources/xsd/RS-RR.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RS-SR.xsd b/src/main/resources/xsd/RS-SR.xsd index e03536955d..97371cead6 100644 --- a/src/main/resources/xsd/RS-SR.xsd +++ b/src/main/resources/xsd/RS-SR.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/RS-URL.xsd b/src/main/resources/xsd/RS-URL.xsd index 702cc28574..4c6bae4d11 100644 --- a/src/main/resources/xsd/RS-URL.xsd +++ b/src/main/resources/xsd/RS-URL.xsd @@ -1,4 +1,4 @@ - + @@ -22,6 +22,11 @@ Il doit pouvoir être généré de façon décentralisée et ne présenter aucun + + + Code unitaire par bilan qui permet à l'utilisateur qui reçoit ce lien d'ouvrir le bilan lorsque celui ci ne nécessite pas une connexion nominative mais un code bilan + + diff --git a/src/main/resources/xsd/TECHNICAL.xsd b/src/main/resources/xsd/TECHNICAL.xsd index 6fab30763d..ffd2d01c0a 100644 --- a/src/main/resources/xsd/TECHNICAL.xsd +++ b/src/main/resources/xsd/TECHNICAL.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/TECHNICAL_NOREQ.xsd b/src/main/resources/xsd/TECHNICAL_NOREQ.xsd index 498c74bf78..4d55231e8c 100644 --- a/src/main/resources/xsd/TECHNICAL_NOREQ.xsd +++ b/src/main/resources/xsd/TECHNICAL_NOREQ.xsd @@ -1,4 +1,4 @@ - + diff --git a/src/main/resources/xsd/customContent.xsd b/src/main/resources/xsd/customContent.xsd new file mode 100644 index 0000000000..7ad8ae250d --- /dev/null +++ b/src/main/resources/xsd/customContent.xsd @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/test/java/com/hubsante/model/builders/EDXL_DE_BuilderTest.java b/src/test/java/com/hubsante/model/builders/EDXL_DE_BuilderTest.java index e5655f33db..04919bf39e 100644 --- a/src/test/java/com/hubsante/model/builders/EDXL_DE_BuilderTest.java +++ b/src/test/java/com/hubsante/model/builders/EDXL_DE_BuilderTest.java @@ -169,4 +169,4 @@ public void shouldThrowExceptionIfBuilderIsNotInitializedWithMandatoryParameters private ContentMessage getCustomContentMessage() { return new CustomMessage(); } -} \ No newline at end of file +} diff --git a/src/test/java/com/hubsante/model/edxlhandler/EdxlHandlerTest.java b/src/test/java/com/hubsante/model/edxlhandler/EdxlHandlerTest.java index 083cbe412a..c3bf47d32f 100644 --- a/src/test/java/com/hubsante/model/edxlhandler/EdxlHandlerTest.java +++ b/src/test/java/com/hubsante/model/edxlhandler/EdxlHandlerTest.java @@ -78,6 +78,18 @@ public void verifyXmlPrefix() throws IOException { assertTrue(() -> xml.startsWith(xmlPrefix())); } + @Test + @DisplayName("should deserialize complete message with EDXL-DE envelope") + public void deserializeCompleteMessages() throws IOException { + File jsonMessage = new File(TestMessagesHelper.class.getClassLoader().getResource("sample/valid/EDXL-DE/EDXL-DE.json").getFile()); + String useCaseJson = new String(Files.readAllBytes(jsonMessage.toPath()), StandardCharsets.UTF_8); + EdxlMessage message = converter.deserializeJsonEDXL(useCaseJson); + + File xmlMessage = new File(TestMessagesHelper.class.getClassLoader().getResource("sample/valid/EDXL-DE/EDXL-DE.xml").getFile()); + String useCaseXml = new String(Files.readAllBytes(xmlMessage.toPath()), StandardCharsets.UTF_8); + EdxlMessage expectedMessage = converter.deserializeXmlEDXL(useCaseXml); + } + @Test @DisplayName("all examples files deserializing") public void examplesBundlePassingTest() {