Uploaded image for project: 'Forrest'
  1. Forrest
  2. FOR-107

DTDs available via Forrest site as well as catalog entity resolver

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 0.6
    • Fix Version/s: 0.7
    • Labels:
      None

      Description

      Proper editors can use the catalog entity resolver (http://forrest.apache.org/catalog.html). For dumb clients we will make the DTDs available from the website by using apache .htaccess redirect.

        Activity

        Hide
        crossley David Crossley added a comment -
        There are already ways to resolve the DTDs to local copies for any sensible xml tool. Anyway, for those who want to use the brute-force approach, there is now a Proposal to also add them to the Apache webserver.

        http://marc.theaimsgroup.com/?l=forrest-dev&m=107405602729886
        http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=107405602729889
        Show
        crossley David Crossley added a comment - There are already ways to resolve the DTDs to local copies for any sensible xml tool. Anyway, for those who want to use the brute-force approach, there is now a Proposal to also add them to the Apache webserver. http://marc.theaimsgroup.com/?l=forrest-dev&m=107405602729886 http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=107405602729889
        Hide
        crossley David Crossley added a comment -
        The referenced email threads show that we have found a way to do this using .htaccess and ProxyPass. Still needs to be implemented in SVN and tweaked to enable proper caching.

        We have already added an xdoc to help people who do have proper xml editors.

        Need to also edit all of Forrest's xdocs to have a consistent document type declaration.
        Show
        crossley David Crossley added a comment - The referenced email threads show that we have found a way to do this using .htaccess and ProxyPass. Still needs to be implemented in SVN and tweaked to enable proper caching. We have already added an xdoc to help people who do have proper xml editors. Need to also edit all of Forrest's xdocs to have a consistent document type declaration.
        Hide
        brondsem Dave Brondsema added a comment -
        Per http://marc.theaimsgroup.com/?l=forrest-dev&m=107421932515207&w=2 the DTDs of the form http://apache.org/forrest/dtd/* should be deprecated in favor of http://xml.apache.org/forrest/dtd/*

        Since this is a significant change I thought I'd raise this issue again before I try to do this.
        Show
        brondsem Dave Brondsema added a comment - Per http://marc.theaimsgroup.com/?l=forrest-dev&m=107421932515207&w=2 the DTDs of the form http://apache.org/forrest/dtd/* should be deprecated in favor of http://xml.apache.org/forrest/dtd/* Since this is a significant change I thought I'd raise this issue again before I try to do this.
        Hide
        jefft Jeff Turner added a comment -
        The referenced email suggests how both needs (support URL space, and easy committer access) can be satisfied at once. So why deprecate http://apache.org/forrest/* in favour of http://xml.apache.org/forrest?

        What happens if Forrest becomes a TLP? Deprecate http://xml.apache.org and switch to http://forrest.apache.org? This perfectly illustrates why the original URI was chosen, namely to eliminate as much as possible that may change in future. It is primarily an identifier, and secondarily a locator.

        Please read through www.w3.org/Provider/Style/URI, repent, and let us never speak again about breaking URL contracts again ;)
        Show
        jefft Jeff Turner added a comment - The referenced email suggests how both needs (support URL space, and easy committer access) can be satisfied at once. So why deprecate http://apache.org/forrest/* in favour of http://xml.apache.org/forrest? What happens if Forrest becomes a TLP? Deprecate http://xml.apache.org and switch to http://forrest.apache.org? This perfectly illustrates why the original URI was chosen, namely to eliminate as much as possible that may change in future. It is primarily an identifier, and secondarily a locator. Please read through www.w3.org/Provider/Style/URI, repent, and let us never speak again about breaking URL contracts again ;)
        Hide
        crossley David Crossley added a comment -
        Jeff, we only have control of the xml.apache.org/forrest/ area, so that is where we can put the .htaccess file. We cannot do anything at apache.org/forrest/

        If/when we move to a top-level project we would not need to change these URLs again because we would still be affiliated with the XML project.

        Dave, the current experimental .htaccess file is on the cvs.apache.org machine at /www/cocoon.apache.org/dtd/ - i planned to move it to xml.apache.org/forrest/dtd/ and enhance it.
        Show
        crossley David Crossley added a comment - Jeff, we only have control of the xml.apache.org/forrest/ area, so that is where we can put the .htaccess file. We cannot do anything at apache.org/forrest/ If/when we move to a top-level project we would not need to change these URLs again because we would still be affiliated with the XML project. Dave, the current experimental .htaccess file is on the cvs.apache.org machine at /www/cocoon.apache.org/dtd/ - i planned to move it to xml.apache.org/forrest/dtd/ and enhance it.
        Hide
        crossley David Crossley added a comment -
        One other important thing. We should not put this mechanism in place until we are absolutely sure that the catalog entity resolver is working. Otherwise we would not know if it was busted, because Forrest would happily get the DTDs across the network.

        It was broken recently in the "copyless" branch. I think that i fixed that today.

        We should have some sort of build test (anteater?) to ensure that the entity resolver is always working.
        Show
        crossley David Crossley added a comment - One other important thing. We should not put this mechanism in place until we are absolutely sure that the catalog entity resolver is working. Otherwise we would not know if it was busted, because Forrest would happily get the DTDs across the network. It was broken recently in the "copyless" branch. I think that i fixed that today. We should have some sort of build test (anteater?) to ensure that the entity resolver is always working.
        Hide
        crossley David Crossley added a comment -
        Changing the Issue description.
        Show
        crossley David Crossley added a comment - Changing the Issue description.
        Hide
        crossley David Crossley added a comment -
        Now that we are the top-level domain, this is set up at
        forrest.apache.org/dtd/ where there is a basic .htaccess ... all of you Apache httpd experts please enhance it.

        This uses re-write rules to get the current file from the SVN repository .

        There is a self-describing test document at forrest.apache.org/dtd-test-2/faq.xml
        Show
        crossley David Crossley added a comment - Now that we are the top-level domain, this is set up at forrest.apache.org/dtd/ where there is a basic .htaccess ... all of you Apache httpd experts please enhance it. This uses re-write rules to get the current file from the SVN repository . There is a self-describing test document at forrest.apache.org/dtd-test-2/faq.xml
        Hide
        crossley David Crossley added a comment -
        Beware now. If Forrest's own entity resolver is ever broken, or even if a DTD is not declared in the catalog, then poor Forrest will be trundling onto the network. Beware if you use the XSLT document() function too - there is a Xalan bug.
        Show
        crossley David Crossley added a comment - Beware now. If Forrest's own entity resolver is ever broken, or even if a DTD is not declared in the catalog, then poor Forrest will be trundling onto the network. Beware if you use the XSLT document() function too - there is a Xalan bug.
        Hide
        crossley David Crossley added a comment -
        Next step is to change all the SystemIdentifiers in our xdocs.
        Show
        crossley David Crossley added a comment - Next step is to change all the SystemIdentifiers in our xdocs.
        Hide
        brondsem Dave Brondsema added a comment -
        Should we also encourage end-users to change their system identifiers?
        Show
        brondsem Dave Brondsema added a comment - Should we also encourage end-users to change their system identifiers?
        Hide
        crossley David Crossley added a comment -
        Yes, good idea. I am working up an entry for status.xml and will do one for updating_06.xml too.
        Show
        crossley David Crossley added a comment - Yes, good idea. I am working up an entry for status.xml and will do one for updating_06.xml too.
        Hide
        crossley David Crossley added a comment -
        This handles the DTDs now and will suffice for 0.6 release. However there is still enhancement needed for the .htaccess file.
        Show
        crossley David Crossley added a comment - This handles the DTDs now and will suffice for 0.6 release. However there is still enhancement needed for the .htaccess file.
        Hide
        crossley David Crossley added a comment -
        Schedule more fixes for the 0.7 version.
        Show
        crossley David Crossley added a comment - Schedule more fixes for the 0.7 version.
        Hide
        crossley David Crossley added a comment -
        These are the notes inside /dtd/.htaccess

        # NOTE: There is a problem with getting the correct media-types ...
        # i.e. http://svn.apache.org/repos/asf/forrest/trunk/.../*.dtd
        # Currently the server just delivers text/plain
        # We can do 'svn propset svn:mime-type' for the *.dtd etc.
        # which will cause them to be delivered properly.
        # However there are Issues for SVN (#1002 and #1233)
        # whereby the files will be seen by SVN as binary, hence no diffs.
        # http://subversion.tigris.org/issues/show_bug.cgi?id=1002
        # http://subversion.tigris.org/issues/show_bug.cgi?id=1233
        # http://issues.cocoondev.org/jira/secure/ViewIssue.jspa?key=FOR-107
        #
        # So the workaround is to use ViewCVS to explicity set the media-type.
        ...
        Show
        crossley David Crossley added a comment - These are the notes inside /dtd/.htaccess # NOTE: There is a problem with getting the correct media-types ... # i.e. http://svn.apache.org/repos/asf/forrest/trunk/.../*.dtd # Currently the server just delivers text/plain # We can do 'svn propset svn:mime-type' for the *.dtd etc. # which will cause them to be delivered properly. # However there are Issues for SVN (#1002 and #1233) # whereby the files will be seen by SVN as binary, hence no diffs. # http://subversion.tigris.org/issues/show_bug.cgi?id=1002 # http://subversion.tigris.org/issues/show_bug.cgi?id=1233 # http://issues.cocoondev.org/jira/secure/ViewIssue.jspa?key=FOR-107 # # So the workaround is to use ViewCVS to explicity set the media-type. ...
        Hide
        crossley David Crossley added a comment -
        This RFC was noted in one of the abovementioned email threads:
         RFC 3023 - XML Media Types
         http://www.faqs.org/rfcs/rfc3023.html
        Show
        crossley David Crossley added a comment - This RFC was noted in one of the abovementioned email threads:  RFC 3023 - XML Media Types   http://www.faqs.org/rfcs/rfc3023.html
        Hide
        crossley David Crossley added a comment -
        infrastructure@a.o asked that we do this DTD delivery a different way. Decided to do 'svn co' of the /dtd/ and /entity/ directories. There is now a .htaccess which uses directives Files/ForceType to set the content type properly.
        Show
        crossley David Crossley added a comment - infrastructure@a.o asked that we do this DTD delivery a different way. Decided to do 'svn co' of the /dtd/ and /entity/ directories. There is now a .htaccess which uses directives Files/ForceType to set the content type properly.

          People

          • Assignee:
            crossley David Crossley
            Reporter:
            mroch Marshall Roch
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development