Skip to content

[BUG] - Faceted Scalar should call out requirement #98

@mprather

Description

@mprather

Description

If a user takes the approach of minimalist development (i.e. use only what is needed) to build up to a project, the documentation states a fact but assumes the underlying config is set.

In section 3.2.2.5, the following is stated:

OML considers a following set of faceted scalars as standard:

However, if the underlying config does not include the correct dependencies in the gradle download task, these items will not be available.

So, the question is how?

Steps to Reproduce

  1. Since the developer is starting with a lean and mean project and they have no intent to ingest other vocabs, the typical dependency section might be empty (or simply not listed as a dependency).
  task omlToOwl(type:io.opencaesar.oml2owl.Oml2OwlTask, dependsOn: []) {
   // details omitted for clarity
  }
  1. Build task is basically used to reason on the oml and stop (i.e. convert to owl but does not load data into fuseki, gen reports, etc.)
  2. Developer reads section 3.2.2.5 and attempts to use a standard faceted scalar. They add the necessary extends markup to their vocabulary.
  3. Attempt to run build

Result:

Execution failed for task ':omlToOwl'.
> java.io.FileNotFoundException: C:\src\build\oml\www.w3.org\2001\XMLSchema.omljson (The system cannot find the path specified)

The error does give a good clue. Documentation states it is standard. Seems like it should work but some info is missing.

Expected Behavior

The documentation should call out what is needed to get the "standard" stuff. In this case, the following gradle dependency was added to direct the download.

  task omlToOwl(type:io.opencaesar.oml2owl.Oml2OwlTask, dependsOn: [downloadDependencies]) {
   // details omitted for clarity
  }

where then the dependency chain was updated to eventually include the dependencies defined as...

dependencies {
  // Reference: https://repo1.maven.org/maven2/io/opencaesar/
  oml "io.opencaesar.ontologies:core-vocabularies:3+"
}

If this is already called out in existing documentation, a link in the section to the existing documentation would be helpful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions