Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 0 additions & 41 deletions README-origin.md

This file was deleted.

65 changes: 41 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,42 +1,59 @@
# loinc-data
# LOINC Pipeline

### Team Ownership - Product Owner
Data Team
**Prerequisites**

## Getting Started
* JDK 24+
* Maven 3.9.9+
* Nexus Repository (optional)

Follow these instructions to generate a loinc dataset:
**Clone Project and Configure Maven Settings**

1. Clone the [loinc-data repository](https://github.com/ikmdev/loinc-data)

```bash
git clone [Rep URL]
```
```
git clone https://github.com/ikmdev/loinc-data.git
```

2. Change local directory to `loinc-data`
2. Configure Maven settings.xml based on the [provided sample](https://ikmdev.atlassian.net/wiki/spaces/IKDT/pages/1036648449/Centralized+Documentation+for+Maven+Settings+File+Configuration).

3. Download Loinc file from LOINC site: https://loinc.org/downloads/
3. Change local directory to `loinc-data`

4. Place the downloaded Loinc_*_.zip in your local Downloads directory.
**Run Origin Packaging**

5. Ensure the loinc-data/pom.xml contains the proper tags containing source filename for the downloaded files such as:
<source.zip>, <source.version>, etc.
The following source data is required for this pipeline and can be obtained from LOINC:

6. Create a ~/Solor directory and ensure ~/Solor/generated-data does not exist or is empty.
* Loinc_2.81.zip

7. You can create a reasoned or unreasoned dataset by either including or commenting out the loinc-data/pom.xml <module>loinc-reasoner</module>
More information can be found on: https://loinc.org/downloads/

8. Enter the following command to build the dataset:
1. Place the downloaded ZIPs in your ~/Downloads directory.

```bash
mvn clean install -U "-DMaven.build.cache.enable=false"
```
2. Ensure the properties defined in loinc-data/pom.xml are set to the correct file names:
- <source.zip>

9. Enter the following command to deploy the dataset:
3. Run origin packaging and deployment.

```bash
mvn deploy -f loinc-export "-DdeployToNexus=true" "-Dmaven.deploy.skip=true" "-Dmaven.build.cache.enabled=false"
```
To deploy origin artifact to a shared Nexus repository, run the following command, specifying the repository ID and URL in `-DaltDeploymentRepository`
```
mvn clean deploy -f loinc-origin -Ptinkarbuild -DaltDeploymentRepository=tinkar-snapshot::https://nexus.tinkar.org/repository/maven-snapshots/ -Dmaven.build.cache.enabled=false
```

- NOTE. This repo is built on top of an unreasoned spined array DB from snomed-ct-data. Therefore, make sure you have it built before running step #8.
To install origin artifact to a local M2 repository, run the following command:
```
mvn clean install -f loinc-origin -Ptinkarbuild,generateDataLocal -Dmaven.build.cache.enabled=false
```

**Run Transformation Pipeline**

The transformation pipeline can be built after origin data is available in Nexus or a local M2 repository.

1. Build the pipeline with the following command:
```
mvn clean install -U -Ptinkarbuild -Dmaven.build.cache.enabled=false
```

2. Deploy transformed data artifacts to Nexus, run the following command:
```
mvn deploy -f loinc-export -Ptinkarbuild -DaltDeploymentRepository=tinkar-snapshot::https://nexus.tinkar.org/repository/maven-snapshots/ -Dmaven.build.cache.enabled=false
```

Empty file removed loinc-origin/.mvn/jvm.config
Empty file.
Empty file removed loinc-origin/.mvn/maven.config
Empty file.
1 change: 1 addition & 0 deletions loinc-owl-transform/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
</goals>
<configuration>
<dataStore>${dataStoreLocation}/${dataStore}</dataStore>
<isolate>false</isolate>
</configuration>
</execution>
</executions>
Expand Down
1 change: 1 addition & 0 deletions loinc-reasoner/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
<configuration>
<dataStore>${dataStoreLocation}/${dataStore}</dataStore>
<reasonerType>${reasoner-type}</reasonerType>
<isolate>false</isolate>
</configuration>
</execution>
</executions>
Expand Down
1 change: 1 addition & 0 deletions loinc-starterdata/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@
<include>**/*-${tinkar-starter-data.classifier}.zip</include>
</includes>
</fileset>
<isolate>false</isolate>
</configuration>
<id>load-data</id>
<phase>install</phase>
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@
<tinkar-starter-data.groupId>dev.ikm.data.tinkar</tinkar-starter-data.groupId>
<tinkar-starter-data.artifactId>tinkar-starter-data</tinkar-starter-data.artifactId>
<tinkar-starter-data.classifier>unreasoned-pb</tinkar-starter-data.classifier>
<tinkar-starter-data.version>20250813</tinkar-starter-data.version>
<tinkar-starter-data.version>20250915</tinkar-starter-data.version>
<!-- reasoner options (ElkOwlReasoner, ElkSnomedReasoner, HybridReasoner)-->
<reasoner-type>ElkSnomedReasoner</reasoner-type>
</properties>
Expand Down
Loading