On 15/08/2019 13:02, Claude Warren wrote:
Learn something new every day...
On Wed, Aug 14, 2019 at 5:44 PM Andy Seaborne <a...@apache.org> wrote:
(and it is technically wrong to have a # in the base)
so as a base "http://example.com/myfile.txt#" is incorrect but "
http://example.com/myfile.txt/" is correct?
They are completely different URIs. "/" means something in http URIs.
Fragments are within the document named.
Base URIs are like HTTP requests which also do not have a fragement,
Resolving <one> against base URIs:
and it's the same outcome.
RFC 3986, section 5.2
5.2.3 - "Base.fragment" is not mentioned.
Jena does cope with # in the base - it drops it as per 5.2, 5.2.3
The only assignment is
T.fragment = R.fragment
(R being the relative URI being resolved, T the output)
Relative <#one> gives:
or technically does the last segment of the base need to be an NCName?
"need" - no.
NCName is an XML-ism.
For RDF/XML it is a good idea - classes and properties can end up as XML
in which case "http://example.com/myfile.txt" but not "
http://example.com/myfile.txt#" or "http://example.com/myfile.txt/"
How does one create a technically correct base that will convert
<one> can't become <http://example.com/myfile.txt#one>
Resolution can't introduce a fragment that isn't in the relative URI to
start with. <#one> works.
? Or is that just not possible?