Skip to Content.
Sympa Menu

pcplantdb - Re: [pcplantdb] Job One

pcplantdb@lists.ibiblio.org

Subject: pcplantdb

List archive

Chronological Thread  
  • From: Richard Morris <webmaster@pfaf.org>
  • To: Permaculture Plant Database <pcplantdb@lists.ibiblio.org>
  • Subject: Re: [pcplantdb] Job One
  • Date: Fri, 17 Dec 2004 11:49:03 +0000

Chad
Ok, I made some more changes and I'm hoping this will be the end of my
playing at web-master. I'm hoping Bear will take on design and layout
with John H. as technical assistance / backup. I think these latest
changes will leave the site in a neutral enough state that Bear
doesn't have to immediately start fixing things. It's not great but I
think is comes in above the "completely sucks" bar. Are you willing
Bear and John?

I'm hoping that this is the way things will go. I think Chads time is more useful on backend stuff. Frontend design stuff like logos etc
can quite easily be seperated. Theoretically this could all be put in a stylesheet and we can have one person (Bear?) working on that.
It might be fun to follow the css zen garden approach http://www.csszengarden.com/ where the actual style sheet can be selected from a menu. This could be good now while we are experimenting with new designs. It might also be good in the long term as a good way to configure the output, for example we could have a "Print" stylesheet
to layout suitable for printing, or an "Academic" style sheet which displays all the book references.

If we go down this line it will have some implications on the backend code. It might be advantageous to define a set of css-classes
for the various elements for example

<h1 class="LatinNameTitle">Salix alba</h1>

and in the style sheet we have

LatinNameTitle .h1 { font-family: ..... ; }

If we want to be really fancy we can take this a bit further by
using a pure xml output from the backend and use a xml translator (xslt)
to convert the xml into html. So using the above example the backend produces

<LatinNameTitle>Salix alba</LatinNameTitle>

and the xsl template

<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl";>
<xsl:template match="LatinNameTitle">
<h1>
<xsl:apply-templates/>
</h1>
</xsl:template>
</xsl:stylesheet>

This has the effect of converting the <LatinNameTitle> into an <h1> element. XSLT is very flexible as it allows the order of tags to be rearranged and certain tags missed out.

Again this brings us back to schema as the set of tags or classes will match closely with the the elements in the schema.

Bear K wrote:
Agree with Lawrence and Rich.
We've already been around this discussion way back - got to have a
back end (DB and 'data engine') before we can have a front end; dev
and test of back end requires a simple/straightforward front end to
support it (and also be initial/generic/low bandwidth front end,
especially for all that *input* we are hoping to get from somewhere
out there).

Fully agree. I believe I mentioned that I wanted to see the back-end discussion restarted. I've mentioned a few DB related ideas without much response.

Indeed. Care to repost?

Looking at RDF is looking very exciting, especially with this http://139.91.183.30:9090/RDF/
See http://139.91.183.30:9090/RDF/RQL/Manual.html to see what it can do. See Figure 1 on that page.

Not 100% sure if RDF is quite the right format in XML space there
are quite a few different ways to do the same thing. XLink is another way to represent link info.

RDF does have its place indeed its one of the things we need to do with the Creative Commons license as the author and copyright info need
to be included in the output.

<rdf:RDF xmlns="http://web.resource.org/cc/";
xmlns:dc="http://purl.org/dc/elements/1.1/";
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";>
<Work rdf:about="http://www.pfaf.org/";>
<dc:title>Plants For A Future</dc:title>
<dc:date>2004-06-27</dc:date>
<dc:description>A database of information about useful plants</dc:description>
<dc:creator><Agent>
<dc:title>Ken Fern, Richard Morris, Plants For A Future</dc:title>
</Agent></dc:creator>
<dc:rights><Agent>
<dc:title>Plants For A Future/Ken Fern</dc:title>
</Agent></dc:rights>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/Text"; />
<license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/1.0"; />
</Work>

<License rdf:about="http://creativecommons.org/licenses/by-nc-sa/1.0";>
<requires rdf:resource="http://web.resource.org/cc/Attribution"; />
<requires rdf:resource="http://web.resource.org/cc/ShareAlike"; />
<permits rdf:resource="http://web.resource.org/cc/Reproduction"; />
<permits rdf:resource="http://web.resource.org/cc/Distribution"; />
<permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"; />
<prohibits rdf:resource="http://web.resource.org/cc/CommercialUse"; />
<requires rdf:resource="http://web.resource.org/cc/Notice"; />
</License>

Flexible, extensible, RDBMS backend, RDF/XML interchange, OO concepts.
Then we could work on actually developing a schema.
Chad, do you think this is something that could work? It needs a C++ compiler, Postgres DB.

I don't think we really want to go through changing the backend
systems again. I've very happy to stick with whats Chads developed so far. A python/mySQL system does meet or needs and I'm pretty sure that
we can do RDF/XML interchange.

> Do you have SSH access on the ibiblio account?

Yes.

> It
seems like something which could make expansion of the project easy, as it seems the library handles the table creation in the RDBMS, etc. We could start developing the relationships, classes, etc. Start with the PFAF db, then easily connect more relationships to the plants (microorganisms, etc). This system would also seem to allow things like: Assigning information to plant Families, Genus, etc with information about the group as a whole (botanical differences, etc). The vocabulary Chad set up could be set up, with each value having a long(er) English description, then perhaps translatable to other languages. These would be accessed through RQL, and wouldn't require updating hardcoded information. This would also seem to allow easy addition of comments, and authorship info.

RQL is nice. Its a good way to specify search criteria, sort of an XML version of SQL.

As its almost the festive season how about the project buys
Chad an XMas present: XML in a nutshell.

Rich

--
Plants for a Future: 7000 useful plants
Web: http://www.pfaf.org/ same as http://www.comp.leeds.ac.uk/pfaf/
Post: 1 Lerryn View, Lerryn, Lostwithiel, Cornwall, PL22 0QJ
Tel: 01208 872 963 / 0845 458 4719
Email: webmaster@pfaf.org
PFAF electronic mailing list http://groups.yahoo.com/group/pfaf






Archive powered by MHonArc 2.6.24.

Top of Page