Skip to content

Commit

Permalink
Merge conflict resolved.
Browse files Browse the repository at this point in the history
  • Loading branch information
mpomarlan committed Oct 24, 2022
2 parents b3799ad + daec219 commit 551fa2e
Show file tree
Hide file tree
Showing 40 changed files with 1,874 additions and 428 deletions.
111 changes: 79 additions & 32 deletions .github/workflows/deployment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,83 +23,130 @@ jobs:
with:
fetch-depth: 1

- name: Setup Java
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '18'
cache: 'maven'

- name: Create directories
run: |
mkdir -p $GITHUB_WORKSPACE/build/owl/current &&
mkdir mkdir -p $GITHUB_WORKSPACE/build/files
- name: Compile current
if: startsWith(github.ref, 'refs/tags/') != true
uses: docker://swipl:8.0.3
with:
SOMA_VERSION: current
args: swipl -f prolog/uglify.pl -t uglify
run: |
mvn spring-boot:run -f scripts/java/pom.xml \
-Dspring-boot.run.arguments="--versionInfo=current"
- name: Compile tag
if: startsWith(github.ref, 'refs/tags/')
uses: docker://swipl:8.0.3
with:
SOMA_VERSION: ${{ github.event.release.tag_name }}
args: swipl -f prolog/uglify.pl -t uglify

- name: Convert
uses: ./.github/actions/convert
with:
args: python3 ./scripts/uglify_ease_as_owl.py
run: |
mvn spring-boot:run -f scripts/java/pom.xml \
-Dspring-boot.run.arguments="--versionInfo=${{ github.event.release.tag_name }}"
- name: Upload SOMA
uses: actions/upload-artifact@v1
with:
name: SOMA Ontology
path: ./build/SOMA.owl
path: ./build/owl/current/SOMA.owl

- name: Upload SOMA-HOME
uses: actions/upload-artifact@v1
with:
name: SOMA-HOME Ontology
path: ./build/SOMA-HOME.owl
path: ./build/owl/current/SOMA-HOME.owl

- name: Upload DUL
uses: actions/upload-artifact@v1
with:
name: DUL Ontology
path: ./owl/DUL.owl

- name: Copy DUL
run: sudo cp ./owl/DUL.owl $GITHUB_WORKSPACE/build/DUL.owl

- name: Metrics
run: sudo ./scripts/OntoMetrics.sh $GITHUB_WORKSPACE/build/SOMA.owl $GITHUB_WORKSPACE/build

- name: Upload Metrics
uses: actions/upload-artifact@v1
with:
name: Metrics
path: ./build/metrics.json
- name: Copy all OWL files to be deployed
run: sudo cp -n ./owl/*.owl $GITHUB_WORKSPACE/build/owl/current

- name: Compile NEEM Handbook
uses: docker://blang/latex:ubuntu
with:
args: make -f ./docs/NEEM-handbook/Makefile

- name: Copy NEEM Handbook
run: sudo cp $GITHUB_WORKSPACE/docs/NEEM-handbook/main.pdf $GITHUB_WORKSPACE/build/NEEM-Handbook.pdf
run: sudo cp $GITHUB_WORKSPACE/docs/NEEM-handbook/main.pdf $GITHUB_WORKSPACE/build/files/NEEM-Handbook.pdf

- name: Deploy current
- name: Deploy files current
uses: JamesIves/github-pages-deploy-action@releases/v3
if: github.ref == 'refs/heads/master'
with:
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
BRANCH: gh-pages
FOLDER: build
TARGET_FOLDER: owl/current
FOLDER: build/files
TARGET_FOLDER: /files/current

- name: Deploy tag
- name: Deploy owl current
uses: JamesIves/github-pages-deploy-action@releases/v3
if: github.ref == 'refs/heads/master'
with:
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
BRANCH: gh-pages
FOLDER: build/owl/current/
TARGET_FOLDER: /owl/current

- name: Deploy owl tag
uses: JamesIves/github-pages-deploy-action@releases/v3
if: startsWith(github.ref, 'refs/tags/')
with:
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
BRANCH: gh-pages
FOLDER: build
FOLDER: build/owl/current/
TARGET_FOLDER: owl/${{ github.event.release.tag_name }}
#TARGET_FOLDER: owl/${{ GITHUB_REF/refs\/tags\// }}
#TARGET_FOLDER: owl/${{ GITHUB_REF#refs/tags/ }}

# Metrics have to be created after the deployment step, because
# OntoMetrics only allows POST with an URI at the moment
- name: Metrics
if: github.ref == 'refs/heads/master'
run: |
sudo ./scripts/OntoMetrics.sh \
https://raw.githubusercontent.com/ease-crc/soma/gh-pages/owl/current/SOMA.owl \
$GITHUB_WORKSPACE/build/files
- name: Metrics
if: startsWith(github.ref, 'refs/tags/')
run: |
sudo ./scripts/OntoMetrics.sh \
https://raw.githubusercontent.com/ease-crc/soma/gh-pages/owl/${{ github.event.release.tag_name }}/SOMA.owl \
$GITHUB_WORKSPACE/build/files
- name: Upload Metrics
uses: actions/upload-artifact@v1
with:
name: Metrics
path: ./build/files/metrics.json

- name: Deploy files current
uses: JamesIves/github-pages-deploy-action@releases/v3
if: github.ref == 'refs/heads/master'
with:
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
BRANCH: gh-pages
FOLDER: build/files
TARGET_FOLDER: /files/current

- name: Deploy files tag
uses: JamesIves/github-pages-deploy-action@releases/v3
if: startsWith(github.ref, 'refs/tags/')
with:
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
BRANCH: gh-pages
FOLDER: build/files/
TARGET_FOLDER: files/${{ github.event.release.tag_name }}
#TARGET_FOLDER: owl/${{ GITHUB_REF/refs\/tags\// }}
#TARGET_FOLDER: owl/${{ GITHUB_REF#refs/tags/ }}

- name: Deploy failure
if: failure()
run: echo Deployment failed. If the other steps succeeded, maybe no ACCESS_TOKEN was set?
58 changes: 38 additions & 20 deletions .github/workflows/evaluation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,28 @@ jobs:
with:
fetch-depth: 1

- name: Compile
uses: docker://swipl:8.0.3
- name: Setup Java
uses: actions/setup-java@v3
with:
SOMA_VERSION: current
args: swipl -f prolog/uglify.pl -t uglify
distribution: 'temurin'
java-version: '18'
cache: 'maven'

- name: Create directories
run: |
mkdir -p $GITHUB_WORKSPACE/build/owl/current &&
mkdir mkdir -p $GITHUB_WORKSPACE/build/files
- name: Compile
run: |
mvn spring-boot:run -f scripts/java/pom.xml \
-Dspring-boot.run.arguments="--versionInfo=current"
- name: Upload OWL file
uses: actions/upload-artifact@v1
with:
name: SOMA OWL
path: ./build/SOMA-HOME.owl
path: ./build/owl/current/SOMA-HOME.owl

pitfalls:
name: OOPS
Expand All @@ -48,10 +59,15 @@ jobs:
with:
fetch-depth: 1

- name: Create directories
run: |
mkdir -p $GITHUB_WORKSPACE/build/owl/current &&
mkdir mkdir -p $GITHUB_WORKSPACE/build/files
- uses: actions/download-artifact@v1
with:
name: SOMA OWL
path: ./build
path: ./build/owl/current/

- name: Setup Python
uses: actions/setup-python@v2
Expand All @@ -62,48 +78,50 @@ jobs:
sudo pip install requests
- name: Find pitfalls
run: sudo python ./scripts/oops.py $GITHUB_WORKSPACE/build/SOMA-HOME.owl $GITHUB_WORKSPACE/build
run: sudo python ./scripts/oops.py $GITHUB_WORKSPACE/build/owl/current/SOMA-HOME.owl $GITHUB_WORKSPACE/build/files

- name: Generate annotations
run: sudo python ./scripts/oops-github.py $GITHUB_WORKSPACE/build/oops.xml
run: sudo python ./scripts/oops-github.py $GITHUB_WORKSPACE/build/files/oops.xml

- name: Upload pitfalls
uses: actions/upload-artifact@v1
with:
name: OOPS Results
path: ./build/oops.xml
path: ./build/files/oops.xml

consistency:
name: Konclude
runs-on: ubuntu-latest
needs: compile

steps:
- name: Checkout
uses: actions/checkout@v1
with:
fetch-depth: 1

- uses: actions/download-artifact@v1
- name: Setup Java
uses: actions/setup-java@v3
with:
name: SOMA OWL
path: ./build
distribution: 'temurin'
java-version: '18'
cache: 'maven'

- name: Download DUL
run: wget http://www.ease-crc.org/ont/DUL.owl -O ./build/DUL.owl
- name: Compile
run: |
mvn spring-boot:run -f scripts/java/pom.xml \
-Dspring-boot.run.arguments="--versionInfo=current \
--propertyListPath=$PWD/properties"
- name: Konclude
uses: ./.github/actions/Konclude
with:
args: classification -i ./build/SOMA-HOME.owl -o ./konclude.output
run: docker run -v $PWD/build:/data --rm konclude/konclude classify -i /data/SOMA-HOME.owl -o /data/konclude.output

- name: Print Konclude output
run: cat ./konclude.output
run: cat ./build/konclude.output
if: always()

- name: Evaluate Konclude output
if: success()
uses: docker://python:3.7.6-slim
with:
args: python ./scripts/konclude_test.py -k ./.github/actions/Konclude -s ./build/SOMA-HOME.owl -o ./owl/konclude.html ./konclude.output
args: python ./scripts/konclude_test.py -k ./.github/actions/Konclude -s ./build/SOMA-HOME.owl -o ./owl/konclude.html ./build/konclude.output

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -35,3 +35,4 @@
*EASE-UGLY.owl
SOMA.owl
build
*.lst
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,11 @@ SOMA is fully implemented in form of an OWL ontology which is based on the DOLCE
[DUL](http://www.ontologydesignpatterns.org/ont/dul/DUL.owl) is a carefully designed upper-level ontology that seeks to model general categories underlying human cognition without making any discipline-specific assumptions.
Our extensions mainly focus on characterizing different aspects of activities that were not considered sufficiently in DUL for the scope of autonomous robotics.

## Release Notes

You can find the list of historic, current and upcoming SOMA versions here: [Release_Notes.md](RELEASE_NOTES.md)


## Further Information

SOMA-related papers, releases, metrics, and some tools can be accessed on the [SOMA Project Website](https://ease-crc.github.io/soma/)
74 changes: 74 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# Release Notes

## Upcoming (expected version is 2.0.0)
* BREAKING CHANGE: Removal of `IOLite`
<details>
<summary>Details</summary>
<ul>
<li>
Reason: incompatible with <code>DUL-v32</code>
</li>
<li>
Note: Some important concepts, e.g. <code>IOLite#DigitalResource</code>, are still referenced in the taxonomy for backwards-compatibility. If you are missing any crucial concepts/roles, let us know
</li>
<li>
Ongoing effort to create a model of CRAM (see next point) will replace some of the IOLite taxonomy at some point
</li>
</ul>
</details>
* BREAKING CHANGE: Complete and still ongoing remodeling of `SOMA-IO`
<details>
<summary>Details</summary>
<ul>
<li>
Reason: Was in a primitive state; we need a better model of IO stuff to model CRAM
</li>
<li>
Note: Removal/resorting of various concepts and roles. To the best of our knowledge, these should not have been in use anyway - please let us know if you are missing anything
</li>
</ul>
</details>
* BREAKING CHANGE: New ontology in the import structure: `SOMA NEEM`
<details>
<summary>Details</summary>
Some SOMA entities, e.g., <code>KynoDinamicData</code>, have been decided to be too specific for the basic SOMA ontology. These have been moved to <code>SOMA NEEM</code>, which is of course part of the collapsed SOMA version
</details>
* Feat: Added mising labels to various concepts and roles
* Feat: Metadata for Episodes, e.g., to represent a temporal context or a table setting
* Feat: Protégé-setup for offline development
<details>
<summary>Details</summary>
When opening SOMA locally from the cloned repository, Protégé will follow the IRI redirects in the catalog file from the same folder. There, we redirected the imports from the online version to the local version. This allows offline editing, while not changing anything when opening the ontologies via the IRI elsewhere
</details>
* Feat: We now host and use our own, modified copy of `DUL`
<details>
<summary>Details</summary>
<ul>
<li>
Reason: <code>DUL</code> is unreliable (e.g., down for a whole week and no one can open <code>SOMA</code>)
</li>
<li>
As a side effect, we can make changes to <code>DUL</code>, if necessary (yes, we will be very careful)
<ul>
<li>
Removed italian lables
</li>
<li>
Added missing annotations of `rdfs:isDefinedIn` (only for <code>DUL</code> concepts / roles)
</li>
<li>
Removed unnecessary annotations of author and date
</li>
<li>
Added missing english labels
</li>
</ul>
</li>
</ul>
</details>
## 1.2.0
* Base release for starting the changelog! Yay, now you get information why stuff might break!
<details>
<summary>Details</summary>
The SOMA ontologies can now be accessed via a version IRI, e.g., <a href="http://www.ease-crc.org/ont/1.2.0/SOMA-STATE.owl">http://www.ease-crc.org/ont/1.2.0/SOMA-STATE.owl</a>. These are guaranteed to stay the way they are. The basic ontology IRI, e.g., <a href="http://www.ease-crc.org/ont/SOMA-STATE.owl">http://www.ease-crc.org/ont/SOMA-STATE.owl</a>, now refers to the latest version that is available (not neccessary associated to a stable release), and is referred to "Upcoming" at the top!
</details>
2 changes: 1 addition & 1 deletion docs/vocab/SOMA-vocabulary.tex
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
from owl_reader import OWLReader

OWL_FILES=[
"http://www.ease-crc.org/ont/SOMA.owl"
"https://raw.githubusercontent.com/ease-crc/soma/master/owl/SOMA.owl"
]

reader = OWLReader(OWL_FILES)
Expand Down
Loading

0 comments on commit 551fa2e

Please sign in to comment.