title: Snakemake subworkflow result is not found if I specify a target in subfolder
body: <p>Let's regard two snakefiles, one main file and one subworkflow:</p>
  
  <p>./Snakefile:</p>
  
  <pre><code>subworkflow sub:
      workdir: "."
      snakemake: "subworkflow/Snakefile"
  
  rule all:
      input: sub("subresult")
  </code></pre>
  
  <p>./subworkflow/Snakefile:</p>
  
  <pre><code>rule sub_all:
      output: "subresult"
      shell: "touch {output}"
  </code></pre>
  
  <p>This code works pretty well. Now let's introduce a small change: substitute "subresult" with "./subresult" in the main file:
  <code>output: "./subresult"</code>
  That still works, but if I make the same change in the subworkflow, I get the exception:</p>
  
  <pre><code>MissingRuleException:
  No rule to produce subresult
  </code></pre>
  
  <p>The same exception is thrown if I specify any other subfolder in the output of the subworkflow's rule:</p>
  
  <pre><code>subworkflow sub:
      workdir: "."
      snakemake: "subworkflow/Snakefile"
  
  rule all:
      input: sub("ANY_PATH/subresult")
  </code></pre>
  
  <pre><code>rule sub_all:
      output: "ANY_PATH/subresult"
      shell: "touch {output}"
  </code></pre>
  
  <p>I guess this is not a normal behavior. Is there anything wrong in my code? Is there a way to specify subworkflow's target in a subfolder?</p>
  
  <p><strong>OS</strong>: Windows + MinGW</p>
  
  <p><strong>Python</strong> 3.6.5</p>
  
  <p><strong>Snakemake</strong> 5.4.5, 5.2</p>
  
  <p><strong>Update:</strong></p>
  
  <p>I tried the example provided by @JeeYem, and even <em>data</em> subdirectory didn't work on my system. After some investigation I found that this is a platform-specific problem for Windows or Windows/MinGW combination. Below is the code that works and shows the problem (I left the original code commented for comparison):</p>
  
  <p>File Snakefile:</p>
  
  <pre><code>subworkflow otherworkflow:
      workdir:
          "."
      snakefile:
          "kingmaker.Snakefile"
  
  rule all:
      input:
          otherworkflow('data/a.txt')
  </code></pre>
  
  <p>Subworkflow file kingmaker.Snakefile:</p>
  
  <pre><code>rule write_file:
      output:
          #'data/a.txt'
          'data\\a.txt'
      shell:
          #'touch {output}'
          'touch data/a.txt'
  </code></pre>
  
  <p>Note that I even cannot use {output} variable in the shell section.</p>
  
  <p>I will submit a ticket to the Snakemake repository.</p>