title: Fully qualified path Vs. Canonical Path
body: <p>There is a canonical path concept in Java.<br>
  And there is a fully-qualified path in WinApi.</p>
  
  <p>I know well what canonical path is, but I don't understand <a href="http://msdn.microsoft.com/en-us/library/aa365247(v=VS.85).aspx#fully_qualified_vs._relative_paths" rel="noreferrer">fully-qualified path's concepts</a>.</p>
  
  <p>For a file or directory, does fully-qulified path exist only one thing? -like canonical path.</p>
  
  <p>Are both of them totally same concepts?</p>
  
  <p><strong>Edit</strong>:<br>
  One more thing, 
  Is a symbloc link or a hard link belong to Fully qualified path?</p>
  
  <p><strong>Edit</strong><br>
  I asked someone who maintains <a href="http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx" rel="noreferrer">Naming Files, Paths, and Namespaces</a> page to let me know this.<br>
  And he replied me.</p>
  
  <p><strong>Is this also Fully-qualified path?</strong><br>
  <em>C:\directory\..\directory\file.txt</em></p>
  
  <blockquote>
    <p>Technically that is a relative path because it contains the double dot (..) and some APIs do not process those correctly (the docs will clearly state that it needs a fully qualified path).<br>
    The two are mutually exclusive.</p>
  </blockquote>
  
  <p>What he means is, in my guessing, if we put a param like this "C:\directory\..\directory\file.txt" to the function required fully-qualified path, the function never reinterpret the path and then fails.</p>
  
  <p>If so, fully-qualified path is totally same with an canonical path. Isn't it.</p>