Skip to content

GH-3: Rebase branch#3

Merged
bern-soptim merged 4 commits into
bern-soptim:GT-3-Allow-any-cim-namespace-URIsfrom
SOPTIM:GT-3-Allow-any-cim-namespace-URIs
Jun 30, 2026
Merged

GH-3: Rebase branch#3
bern-soptim merged 4 commits into
bern-soptim:GT-3-Allow-any-cim-namespace-URIsfrom
SOPTIM:GT-3-Allow-any-cim-namespace-URIs

Conversation

@spah-soptim

@spah-soptim spah-soptim commented Jun 12, 2026

Copy link
Copy Markdown

Merged main into this branch and added empty checks for data type maps in cimxml parsing.

renovate Bot and others added 4 commits June 2, 2026 13:40
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jan-Hendrik Spahn <jan-hendrik.spahn@soptim.de>
# Conflicts:
#	cimxml/pom.xml
#	cimxml/src/main/java/de/soptim/opencgmes/cimxml/graph/FastDeltaGraph.java
#	cimxml/src/main/java/de/soptim/opencgmes/cimxml/parser/system/StreamCIMXMLToDatasetGraph.java
#	cimxml/src/test/java/de/soptim/opencgmes/cimxml/graph/TestCimProfile16.java
#	cimxml/src/test/java/de/soptim/opencgmes/cimxml/graph/TestCimProfile17.java
#	cimxml/src/test/java/de/soptim/opencgmes/cimxml/graph/TestCimProfile18.java
#	cimxml/src/test/java/de/soptim/opencgmes/parser/TestParserRDFXMLConformity.java
@bern-soptim
bern-soptim merged commit 7325bf6 into bern-soptim:GT-3-Allow-any-cim-namespace-URIs Jun 30, 2026
1 check failed
@bern-soptim
bern-soptim deleted the GT-3-Allow-any-cim-namespace-URIs branch June 30, 2026 07:36
bern-soptim added a commit that referenced this pull request Jul 3, 2026
The CIMXML library now supports any cim namespace and a configurable mapping of cim namespace URIs to custom `CimProfile` implementations besides the existing `CimProfile16`, `CimProfile17` and `CimProfile18`.

For this mapping, the `CimNamespaceFactoryRegistry` has been introduced.

The static enum `CimVersion` has be removed and all usages have been replaced by the namespace URIs.

Before, there was a fixed set of cim namespaces supported by the CIMXML library:

"iec.ch/TC57/2013/CIM-schema-cim16#"; -> `CimVersion.`;
"iec.ch/TC57/CIM100#"; -> `CimVersion.CIM_17`;
"cim.ucaiug.io/ns#"; -> `CimVersion.CIM_18`;
anything else: `CimVersion.NO_CIM`;

New public method CimProfileRegistry#getMatchingProfiles to find matching profile for a given set of `owlVerionIRIs`.
--> this enables for generich JSON-LD export demonstrated in `TestConvertCimXmlToJsonLd`

Upgraded to Jena 6.1.0
Using Apache Jena `GraphFactory.createGraphMem()` instead of specific graph implementations.

- added several code quality plugins
- spotbugs-maven-plugin
- maven-checkstyle-plugin
- maven-pmd-plugin
- jacoco-maven-plugin
- license-maven-plugin
- cyclonedx-maven-plugin (for SBOM)
- using the Google coding conventions for Java (checkstyle)
- configured IntelliJ for Google coding conventions for Java

Refactored CIMXML handling: rename classes and methods for consistency, add code style configuration, and update .gitignore.
Updated keyword for FileHeaderProfiles for compatibility with CGMES 3.0 and refactor URI handling in conversion.
Improved model retrieval logic in CimModelHeader.
Enhanced documentation in DisjointMultiUnion.
bern-soptim added a commit that referenced this pull request Jul 3, 2026
The CIMXML library now supports any cim namespace and a configurable mapping of cim namespace URIs to custom `CimProfile` implementations besides the existing `CimProfile16`, `CimProfile17` and `CimProfile18`.

For this mapping, the `CimNamespaceFactoryRegistry` has been introduced.

The static enum `CimVersion` has be removed and all usages have been replaced by the namespace URIs.

Before, there was a fixed set of cim namespaces supported by the CIMXML library:

"iec.ch/TC57/2013/CIM-schema-cim16#"; -> `CimVersion.`;
"iec.ch/TC57/CIM100#"; -> `CimVersion.CIM_17`;
"cim.ucaiug.io/ns#"; -> `CimVersion.CIM_18`;
anything else: `CimVersion.NO_CIM`;

New public method CimProfileRegistry#getMatchingProfiles to find matching profile for a given set of `owlVerionIRIs`.
--> this enables for generich JSON-LD export demonstrated in `TestConvertCimXmlToJsonLd`

Upgraded to Jena 6.1.0
Using Apache Jena `GraphFactory.createGraphMem()` instead of specific graph implementations.

- added several code quality plugins
- spotbugs-maven-plugin
- maven-checkstyle-plugin
- maven-pmd-plugin
- jacoco-maven-plugin
- license-maven-plugin
- cyclonedx-maven-plugin (for SBOM)
- using the Google coding conventions for Java (checkstyle)
- configured IntelliJ for Google coding conventions for Java

Refactored CIMXML handling: rename classes and methods for consistency, add code style configuration, and update .gitignore.
Updated keyword for FileHeaderProfiles for compatibility with CGMES 3.0 and refactor URI handling in conversion.
Improved model retrieval logic in CimModelHeader.
Enhanced documentation in DisjointMultiUnion.
bern-soptim added a commit that referenced this pull request Jul 3, 2026
The CIMXML library now supports any cim namespace and a configurable mapping of cim namespace URIs to custom `CimProfile` implementations besides the existing `CimProfile16`, `CimProfile17` and `CimProfile18`.

For this mapping, the `CimNamespaceFactoryRegistry` has been introduced.

The static enum `CimVersion` has be removed and all usages have been replaced by the namespace URIs.

Before, there was a fixed set of cim namespaces supported by the CIMXML library:

"iec.ch/TC57/2013/CIM-schema-cim16#"; -> `CimVersion.`;
"iec.ch/TC57/CIM100#"; -> `CimVersion.CIM_17`;
"cim.ucaiug.io/ns#"; -> `CimVersion.CIM_18`;
anything else: `CimVersion.NO_CIM`;

New public method CimProfileRegistry#getMatchingProfiles to find matching profile for a given set of `owlVerionIRIs`.
--> this enables for generich JSON-LD export demonstrated in `TestConvertCimXmlToJsonLd`

Upgraded to Jena 6.1.0
Using Apache Jena `GraphFactory.createGraphMem()` instead of specific graph implementations.

- added several code quality plugins
- spotbugs-maven-plugin
- maven-checkstyle-plugin
- maven-pmd-plugin
- jacoco-maven-plugin
- license-maven-plugin
- cyclonedx-maven-plugin (for SBOM)
- using the Google coding conventions for Java (checkstyle)
- configured IntelliJ for Google coding conventions for Java

Refactored CIMXML handling: rename classes and methods for consistency, add code style configuration, and update .gitignore.
Updated keyword for FileHeaderProfiles for compatibility with CGMES 3.0 and refactor URI handling in conversion.
Improved model retrieval logic in CimModelHeader.
Enhanced documentation in DisjointMultiUnion.
spah-soptim pushed a commit that referenced this pull request Jul 6, 2026
The CIMXML library now supports any cim namespace and a configurable mapping of cim namespace URIs to custom `CimProfile` implementations besides the existing `CimProfile16`, `CimProfile17` and `CimProfile18`.

For this mapping, the `CimNamespaceFactoryRegistry` has been introduced.

The static enum `CimVersion` has be removed and all usages have been replaced by the namespace URIs.

Before, there was a fixed set of cim namespaces supported by the CIMXML library:

"iec.ch/TC57/2013/CIM-schema-cim16#"; -> `CimVersion.`;
"iec.ch/TC57/CIM100#"; -> `CimVersion.CIM_17`;
"cim.ucaiug.io/ns#"; -> `CimVersion.CIM_18`;
anything else: `CimVersion.NO_CIM`;

New public method CimProfileRegistry#getMatchingProfiles to find matching profile for a given set of `owlVerionIRIs`.
--> this enables for generich JSON-LD export demonstrated in `TestConvertCimXmlToJsonLd`

Upgraded to Jena 6.1.0
Using Apache Jena `GraphFactory.createGraphMem()` instead of specific graph implementations.

- added several code quality plugins
- spotbugs-maven-plugin
- maven-checkstyle-plugin
- maven-pmd-plugin
- jacoco-maven-plugin
- license-maven-plugin
- cyclonedx-maven-plugin (for SBOM)
- using the Google coding conventions for Java (checkstyle)
- configured IntelliJ for Google coding conventions for Java

Refactored CIMXML handling: rename classes and methods for consistency, add code style configuration, and update .gitignore.
Updated keyword for FileHeaderProfiles for compatibility with CGMES 3.0 and refactor URI handling in conversion.
Improved model retrieval logic in CimModelHeader.
Enhanced documentation in DisjointMultiUnion.
bern-soptim pushed a commit that referenced this pull request Jul 7, 2026
main's GH-3 (allow any cim namespace URIs) reworked the CimProfile API:
CimVersion/getCIMVersion were replaced by getCimNamespace(), and
getOwlVersionIRIs() was renamed to getOwlVersionIris(). GraphMemRoaring
is also no longer used by the cimxml tests.

- cimxml test: rewrite the pre-2020 rdfs:Literal test assertions against
  the new API (GraphFactory.createGraphMem, getCimNamespace,
  getOwlVersionIris).
- cimvocabcheck-core: rename the two getOwlVersionIRIs() call sites.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0113Z5qUAPo8mKze3uasc5xq
bern-soptim pushed a commit that referenced this pull request Jul 7, 2026
- cimxml/performance.md: drop stale GraphMem2Roaring/LAZY_PARALLEL claims;
  the parser now uses plain GraphFactory.createGraphMem() everywhere,
  matching main's GH-3 README update.
- cimxml/overview.md, installation.md: fix Jena version drift (5.5.0/6.0.0
  -> 6.1.0, matching jena-arq) and note CimNamespaceFactoryRegistry support
  for arbitrary CIM namespaces beyond 16/17/18.
- cimxml/architecture.md: same arbitrary-namespace clarification for
  CimProfile.
- developer-guide/code-style.md, contributing.md: document the license
  header requirement (scripts/license-headers.sh, mycila/Spotless/ESLint
  gates, .idea/copyright profile) added in f2f6451, previously undocumented.
- developer-guide/ci-and-releases.md, overview.md: account for the two
  workflows missing from the "six workflows" count (docker-publish.yml,
  deploy-docs.yml); scripts/ row now lists license-headers.sh.
- cimnotebook/overview.md: the VS Code/IntelliJ parity note no longer
  claims a hover/go-to-definition gap now that those fixes landed in the
  shared CIMLangServer; only notebook cell validation remains VS Code-only.
- cimvocabcheck/cli.md: document init's -d/--dir and -f/--force options.
- developer-guide/overview.md: QueryAndValidationUI/ now has a README and
  screenshots in-repo; update the "not yet built" wording accordingly
  (still not public).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants