Class ShaclSelCompileTask

java.lang.Object
org.gradle.api.internal.AbstractTask
org.gradle.api.DefaultTask
name.jurgenei.gradle.xml.ShaclSelCompileTask
All Implemented Interfaces:
Comparable<org.gradle.api.Task>, org.gradle.api.internal.DynamicObjectAware, org.gradle.api.internal.TaskInternal, org.gradle.api.Named, org.gradle.api.plugins.ExtensionAware, org.gradle.api.Task, org.gradle.util.Configurable<org.gradle.api.Task>

@DisableCachingByDefault(because="Compiler output depends on SHACL schema content and grouped output mapping") public abstract class ShaclSelCompileTask extends org.gradle.api.DefaultTask
Compiles SHACL relation shapes into an executable SEL extraction stylesheet.

Input must be RDF/XML SHACL for deterministic namespace-aware parsing. Generated stylesheet follows same grouped SEL structure as Schematron SEL compile flow.

  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.gradle.api.Named

    org.gradle.api.Named.Namer
  • Field Summary

    Fields inherited from interface org.gradle.api.Task

    TASK_ACTION, TASK_CONSTRUCTOR_ARGS, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates compile task with default generated Schematron location.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Compiles SHACL relation rules into SEL extraction stylesheet and generated Schematron.
    abstract org.gradle.api.provider.MapProperty<String,String>
    Returns logical group to output-path mapping.
    abstract org.gradle.api.provider.Property<String>
    Returns optional override for SEL namespace prefix.
    abstract org.gradle.api.provider.Property<String>
    Returns optional override for SEL namespace URI.
    abstract org.gradle.api.file.RegularFileProperty
    Returns generated intermediate Schematron output target.
    abstract org.gradle.api.file.RegularFileProperty
    Returns generated SEL stylesheet output target.
    abstract org.gradle.api.file.RegularFileProperty
    Returns SHACL RDF/XML schema source.
    void
    groupOutput(String group, String outputPath)
    Configures output mapping for logical group.
    void
    output(Object path)
    Sets stylesheet output path.
    void
    Sets SEL output namespace prefix override.
    void
    Sets SEL output namespace URI override.
    void
    Sets generated Schematron output path.
    void
    schema(Object path)
    Sets SHACL schema source path.

    Methods inherited from class org.gradle.api.DefaultTask

    compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, getTimeout, hasProperty, mustRunAfter, onlyIf, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, usesService

    Methods inherited from class org.gradle.api.internal.AbstractTask

    acceptServiceReferences, appendParallelSafeAction, doNotTrackState, doNotTrackStateIf, getAsDynamicObject, getIdentityPath, getImpliesSubProjects, getLifecycleDependencies, getLoggingManager, getOnlyIf, getReasonNotToTrackState, getReasonsNotToTrackState, getReasonTaskIsIncompatibleWithConfigurationCache, getRequiredServices, getServices, getSharedResources, getStandardOutputCapture, getTaskActions, getTaskIdentity, getTemporaryDirFactory, hasTaskActions, injectIntoNewInstance, isCompatibleWithConfigurationCache, isEnabled, isHasCustomActions, notCompatibleWithConfigurationCache, prependParallelSafeAction, restoreOnlyIf, restoreTaskActions, setImpliesSubProjects

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.gradle.api.Task

    doNotTrackState, notCompatibleWithConfigurationCache
  • Constructor Details

    • ShaclSelCompileTask

      @Inject public ShaclSelCompileTask()
      Creates compile task with default generated Schematron location.
  • Method Details

    • getSchema

      @InputFile @PathSensitive(RELATIVE) public abstract org.gradle.api.file.RegularFileProperty getSchema()
      Returns SHACL RDF/XML schema source.
      Returns:
      schema file property
    • getOutputStylesheet

      @OutputFile public abstract org.gradle.api.file.RegularFileProperty getOutputStylesheet()
      Returns generated SEL stylesheet output target.
      Returns:
      stylesheet output file property
    • getOutputSchematron

      @OutputFile public abstract org.gradle.api.file.RegularFileProperty getOutputSchematron()
      Returns generated intermediate Schematron output target.
      Returns:
      Schematron output file property
    • getGroupOutputs

      @Input public abstract org.gradle.api.provider.MapProperty<String,String> getGroupOutputs()
      Returns logical group to output-path mapping.
      Returns:
      configured group outputs
    • getOutputNamespaceUri

      @Input @Optional public abstract org.gradle.api.provider.Property<String> getOutputNamespaceUri()
      Returns optional override for SEL namespace URI.
      Returns:
      namespace URI property
    • getOutputNamespacePrefix

      @Input @Optional public abstract org.gradle.api.provider.Property<String> getOutputNamespacePrefix()
      Returns optional override for SEL namespace prefix.
      Returns:
      namespace prefix property
    • schema

      public void schema(Object path)
      Sets SHACL schema source path.
      Parameters:
      path - file notation accepted by Project.file.
    • output

      public void output(Object path)
      Sets stylesheet output path.
      Parameters:
      path - file notation accepted by Project.file.
    • outputSchematron

      public void outputSchematron(Object path)
      Sets generated Schematron output path.
      Parameters:
      path - file notation accepted by Project.file.
    • groupOutput

      public void groupOutput(String group, String outputPath)
      Configures output mapping for logical group.
      Parameters:
      group - group key
      outputPath - output file path relative to extraction stem directory
    • outputNamespaceUri

      public void outputNamespaceUri(String value)
      Sets SEL output namespace URI override.
      Parameters:
      value - namespace URI
    • outputNamespacePrefix

      public void outputNamespacePrefix(String value)
      Sets SEL output namespace prefix override.
      Parameters:
      value - namespace prefix; empty string means default namespace output
    • compile

      public void compile()
      Compiles SHACL relation rules into SEL extraction stylesheet and generated Schematron.