[EP-tech] Adding items to EP-XML template
Christopher Gutteridge
cjg at ecs.soton.ac.uk
Tue Nov 21 17:01:59 GMT 2017
Yes, what John said :)
By the way, for some of our sites, we use the normal views feature for
this. Every /view/ page can have a .include file. eg.
https://eprints.soton.ac.uk/view/people/bf4af598-26bf-47f4-a0a4-800095a23eb5.html
has a matching
https://eprints.soton.ac.uk/view/people/bf4af598-26bf-47f4-a0a4-800095a23eb5.include
with just the HTML of the main bit in. Handy to include elsewhere.
On 21/11/2017 16:49, John Salter wrote:
>
> > Both "date" and "datestamp" should be stored in the same format in
> EPrints:
>
> Ah, Mr. Gutteridge… close, but no cigar! :o)
>
> The 'date' field normally doesn't include the time component - so the
> regex
>
> /^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})$/
>
> won't match. This should:
>
> /^(\d{4})-(\d{2})-(\d{2})$/
>
> **BUT** I'd advise against updating the RSS2 feed to do this. People
> may be using it in the way it's intended.
>
> I'd subclass the RSS2 feed - adding your new date sorting method.
>
> -OR- configure an author browse view, and use the RSS links embedded
> in them (or pull in the .include version of the view page).
>
> Cheers,
>
> John
>
> *From:*eprints-tech-bounces at ecs.soton.ac.uk
> [mailto:eprints-tech-bounces at ecs.soton.ac.uk] *On Behalf Of
> *Christopher Gutteridge
> *Sent:* 21 November 2017 16:28
> *To:* eprints-tech at ecs.soton.ac.uk; Andrew Beeken <anbeeken at lincoln.ac.uk>
> *Subject:* Re: [EP-tech] Adding items to EP-XML template
>
> That's the correct behaviour for an RSS feed. I'm guessing the logic
> of this is that your website has an RSS importer already that makes it
> the desired route.
>
> Both "date" and "datestamp" should be stored in the same format in
> EPrints, so you should just have this:
>
> my $datestamp = $eprint->get_value( "date" );
>
> if( $datestamp =~ /^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})$/ )
>
> {
>
> my $time = timelocal( $6, $5, $4, $3, $2-1, $1 );
>
> $item->appendChild( $session->render_data_element(
>
> 2,
>
> "pubDate",
>
> EPrints::Time::rfc822_datetime( $time ) ) );
>
> }
>
> So now it's an RSS feed with the dates of the items in the catalogue,
> rather than of catalogue records.
>
> On 21/11/2017 16:05, Andrew Beeken wrote:
>
> Okay, so the goalposts have shifted on this since talking in more
> detail with our ICT team!
>
> Basically, our repository feeds our staff directory pages in real
> time using the available feeds; specifically this feed:
> http://eprints.lincoln.ac.uk/cgi/exportview/creators/userid/RSS2/userid.xml.
> I did question why the RSS2 feed was being used and received the
> answer that this particular feed formats up a “Description” which
> can be pulled straight into the staff profiles which are then
> ordered based on the date on the record. So far, so good, but the
> issue at hand is those dates. I initially thought the problem was
> the format that the dates were coming out in and proposed that we
> include the records pre-formatted citation in the standard XML
> feed for them.
>
> However, it now transpires that the date on the RSS2 feed is just
> plain wrong; it’s using the datestamp, when the record was
> created, rather than the date that the article, book etc was
> published, as stored in the date field. For the academics this
> means that the records on their staff profile are not in
> publication order. So we come back to the decision – use the
> standard XML file and add the citation, or change the RSS2
> template to use the published date rather than the created date.
> ICT would prefer the latter so that they don’t have to change the
> staff directory code.
>
> I’ve been taking a look at the latter an I think I’ve found the
> chunk in the RSS2 script that deals with the date:
>
> my $datestamp = $eprint->get_value( "datestamp" );
>
> if( $datestamp =~ /^(\d{4})-(\d{2})-(\d{2})
> (\d{2}):(\d{2}):(\d{2})$/ )
>
> {
>
> my $time = timelocal( $6, $5, $4, $3, $2-1, $1 );
>
> $item->appendChild( $session->render_data_element(
>
> 2,
>
> "pubDate",
>
> EPrints::Time::rfc822_datetime( $time ) ) );
>
> }
>
> I tried tweaking this to change datestamp to date, however this
> completely removed the date from the feed. I’m guessing that this
> is something to do with how the RegEx decides to proceed on the if
> statement. So I thought I’d see what happened if I just pushed the
> date straight into the element which… didn’t work…
>
> $item->appendChild( $session->render_data_element(
>
> 2,
>
> "pubDate",
>
> EPrints::Time::rfc822_datetime(
> $eprint->get_value( "date" ) ) ) );
>
> I’m sure there’s obvious reasons for that which I probably can’t
> see (I always feel code dyslexic when I look at EPrints source for
> some reason…) Personally I’d prefer to push the citation in a more
> capable feed than RSS2 but I think I’m going to be at the behest
> of the Staff Directory here.
>
> *From:*eprints-tech-bounces at ecs.soton.ac.uk
> <mailto:eprints-tech-bounces at ecs.soton.ac.uk>
> [mailto:eprints-tech-bounces at ecs.soton.ac.uk] *On Behalf Of *John
> Salter
> *Sent:* 21 November 2017 14:53
> *To:* eprints-tech at ecs.soton.ac.uk
> <mailto:eprints-tech at ecs.soton.ac.uk>
> *Subject:* Re: [EP-tech] Adding items to EP-XML template
>
> > The XML export just exports all the fields on an object
>
> Unless that field has
>
> export_as_xml => 0,
>
> - like the suggestions field does by default…
>
> What are you trying to achieve with your export?
>
> Personally, I'd suggest subclassing that plugin, and adding a
> citation to it that way - as always, TMTOWTDI!
>
> It depends on how and when you'll be calling the plugin.
>
> If it's for active, user-generated requests, Adam's method may be
> more suitable, as the processing is done when a record is saved,
> rather than when a record is requested.
>
> Cheers,
>
> John
>
> *From:*eprints-tech-bounces at ecs.soton.ac.uk
> <mailto:eprints-tech-bounces at ecs.soton.ac.uk>
> [mailto:eprints-tech-bounces at ecs.soton.ac.uk] *On Behalf Of *Adam
> Field
> *Sent:* 21 November 2017 14:34
> *To:* eprints-tech at ecs.soton.ac.uk
> <mailto:eprints-tech at ecs.soton.ac.uk>
> *Subject:* Re: [EP-tech] Adding items to EP-XML template
>
> Hi Andrew
>
> The XML export just exports all the fields on an
> object. I wouldn’t modify it if I were you. The simplest way
> would be to add a new field to your item.
>
> I’m not sure if virtual fields come out in the XML
> export, but if they do, adding a virtual field to your object may
> be the easiest way to do this. Alternatively, use an automatic
> field and write the citation to it. See
>
> https://wiki.eprints.org/w/Training_Video:Virtual_Fields and
> https://wiki.eprints.org/w/Training_Video:Automatic_Fields
>
> --
>
> Adam
>
> *From: *<eprints-tech-bounces at ecs.soton.ac.uk
> <mailto:eprints-tech-bounces at ecs.soton.ac.uk>> on behalf of Andrew
> Beeken <anbeeken at lincoln.ac.uk <mailto:anbeeken at lincoln.ac.uk>>
> *Reply-To: *<eprints-tech at ecs.soton.ac.uk
> <mailto:eprints-tech at ecs.soton.ac.uk>>
> *Date: *Tuesday, 21 November 2017 14:24
> *To: *"eprints-tech at ecs.soton.ac.uk
> <mailto:eprints-tech at ecs.soton.ac.uk>"
> <eprints-tech at ecs.soton.ac.uk <mailto:eprints-tech at ecs.soton.ac.uk>>
> *Subject: *[EP-tech] Adding items to EP-XML template
>
> Hi all,
>
> Just took a dive into the EPrints XML export template
> (perl_lib/EPrints/Plugin/Export/XML.pm) to try and add a node for
> the records citation to it and I can’t see where you would do
> this? Is there somewhere separate that defines what data it pulls
> through?
>
> Cheers in advance!
>
> Andrew
>
>
> Image removed by sender. EF Gold <http://www.lincoln.ac.uk/opendays>
>
> *The University of Lincoln, located in the heart of the city of
> Lincoln, has established an international reputation based on high
> student satisfaction, excellent graduate employment and
> world-class research.*
>
>
> The information in this e-mail and any attachments may be
> confidential. If you have received this email in error please
> notify the sender immediately and remove it from your system. Do
> not disclose the contents to another person or take copies.
>
> Email is not secure and may contain viruses. The University of
> Lincoln makes every effort to ensure email is sent without
> viruses, but cannot guarantee this and recommends recipients take
> appropriate precautions.
>
> The University may monitor email traffic data and content in
> accordance with its policies and English law. Further information
> can be found at: http://www.lincoln.ac.uk/legal.
>
> *** Options:
> http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech ***
> Archive: http://www.eprints.org/tech.php/ *** EPrints community
> wiki: http://wiki.eprints.org/ *** EPrints developers Forum:
> http://forum.eprints.org/
>
>
>
>
> *** Options:http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>
> *** Archive:http://www.eprints.org/tech.php/
>
> *** EPrints community wiki:http://wiki.eprints.org/
>
> *** EPrints developers Forum:http://forum.eprints.org/
>
>
>
> --
> Christopher Gutteridge --http://users.ecs.soton.ac.uk/cjg
> University of Southampton Open Data Service:http://data.southampton.ac.uk/
> You should read our Web & Data Innovation blog:http://blogs.ecs.soton.ac.uk/webteam/
>
>
> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
> *** Archive: http://www.eprints.org/tech.php/
> *** EPrints community wiki: http://wiki.eprints.org/
> *** EPrints developers Forum: http://forum.eprints.org/
--
Christopher Gutteridge -- http://users.ecs.soton.ac.uk/cjg
University of Southampton Open Data Service: http://data.southampton.ac.uk/
You should read our Web & Data Innovation blog: http://blogs.ecs.soton.ac.uk/webteam/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ecs.soton.ac.uk/pipermail/eprints-tech/attachments/20171121/ecee88b1/attachment-0001.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 1543 bytes
Desc: not available
Url : http://mailman.ecs.soton.ac.uk/pipermail/eprints-tech/attachments/20171121/ecee88b1/attachment-0001.jpg
More information about the Eprints-tech
mailing list