QueryPath is a PHP library for working with HTML, XML, and web services that follows the jQuery interface. It provides a simpler way to work with DOM compared to other PHP libraries like DOM and SimpleXML. QueryPath can be used to search, modify, and extract data from XML/HTML files, strings, and URLs. It has been used in various projects and modules like interacting with Drupal. The latest version adds new features and documentation.
This presentation demonstrates how QueryPath can be used within Drupal to integrate web services and create rich mash-ups.
The "official" DrupalCon Paris video of this presentation can be found here: http://technosophos.com/content/querypath-mashups-and-web-services-video
In this presentation we will discuss what Relstroage is, and the effect it can have on your Plone site. We will compare different Relstorage backends (MySQL and PostgreSQL) and how they perform compared to the default filestorage. We will also discuss why you may or may not want to use Relstorage in your environment. We will also review any changes you will need to make to your environment to maintain Relstorage.
This presentation demonstrates how QueryPath can be used within Drupal to integrate web services and create rich mash-ups.
The "official" DrupalCon Paris video of this presentation can be found here: http://technosophos.com/content/querypath-mashups-and-web-services-video
In this presentation we will discuss what Relstroage is, and the effect it can have on your Plone site. We will compare different Relstorage backends (MySQL and PostgreSQL) and how they perform compared to the default filestorage. We will also discuss why you may or may not want to use Relstorage in your environment. We will also review any changes you will need to make to your environment to maintain Relstorage.
MongoDB and Ecommerce : A perfect combinationSteven Francia
Presentation given at the MongoDB NYC Meetup by Steve Francia, VP of Engineering at OpenSky. OpenSky uses MongoDB to develop the next ecommerce platform. OpenSky also uses Symfony 2, Doctrine 2, PHP 5.3, PHPUnit 3.5, jQuery, node.js, Git (with gitflow) and a touch of Java and Python. The OpenSky team contributes back to many of these technologies and employs core members of the Symfony 2 and Doctrine 2 teams.
XFILES, The APEX 4 version - The truth is in thereMarco Gralike
XFILES on APEX presentation, in cooperation with Roel Hartman. The presentation demonstrated implementing versioning for Oracle APEX based on XMLDB versioning functionality.
More info and APEX source code can be found via
http://xace.sourceforge.net
A rubyist's naive comparison of some database systems and toolkitsBelighted
This talk is a quick comparison of some of the many relational and non relational database systems that can be used with ruby.
It was given at Fosdem 2010 (http://fosdem.org) in the Ruby on Rails Developer Room.
Disqus talks about how they scale their Python web application to over 500 million visitors a month.
Video is available here: http://pycon.blip.tv/file/4880330/
Out of the box, Plone includes an integrated and powerful search engine with features such as live search and full text indexing. Sometimes this isn't enough or you need more robust search features to provide your site visitors with a more custom search experience.
In this talk, Six Feet Up CTO Calvin Hendryx-Parker, will go into the details of implementing Solr with Plone for a large project. Solr is an enterprise search engine that can be deployed alongside of Plone.
Some of the topics to be discussed include:
weighted search
thesaurus
spell check
flexible query parsing
faster search performance
and more...
These are the slides of our talk at Fosdem 2008 (http://fosdem.org).
We explain what REST is, how it is used in Rails, and finally we give some tips on how to architecture your application so that it follows the REST philosophy.
MongoDB and Ecommerce : A perfect combinationSteven Francia
Presentation given at the MongoDB NYC Meetup by Steve Francia, VP of Engineering at OpenSky. OpenSky uses MongoDB to develop the next ecommerce platform. OpenSky also uses Symfony 2, Doctrine 2, PHP 5.3, PHPUnit 3.5, jQuery, node.js, Git (with gitflow) and a touch of Java and Python. The OpenSky team contributes back to many of these technologies and employs core members of the Symfony 2 and Doctrine 2 teams.
XFILES, The APEX 4 version - The truth is in thereMarco Gralike
XFILES on APEX presentation, in cooperation with Roel Hartman. The presentation demonstrated implementing versioning for Oracle APEX based on XMLDB versioning functionality.
More info and APEX source code can be found via
http://xace.sourceforge.net
A rubyist's naive comparison of some database systems and toolkitsBelighted
This talk is a quick comparison of some of the many relational and non relational database systems that can be used with ruby.
It was given at Fosdem 2010 (http://fosdem.org) in the Ruby on Rails Developer Room.
Disqus talks about how they scale their Python web application to over 500 million visitors a month.
Video is available here: http://pycon.blip.tv/file/4880330/
Out of the box, Plone includes an integrated and powerful search engine with features such as live search and full text indexing. Sometimes this isn't enough or you need more robust search features to provide your site visitors with a more custom search experience.
In this talk, Six Feet Up CTO Calvin Hendryx-Parker, will go into the details of implementing Solr with Plone for a large project. Solr is an enterprise search engine that can be deployed alongside of Plone.
Some of the topics to be discussed include:
weighted search
thesaurus
spell check
flexible query parsing
faster search performance
and more...
These are the slides of our talk at Fosdem 2008 (http://fosdem.org).
We explain what REST is, how it is used in Rails, and finally we give some tips on how to architecture your application so that it follows the REST philosophy.
QueryPath provides a jQuery-like tool in PHP. Use it to work with local files, or with remote web services. This presentation illustrates how QueryPath can be used to build elaborate multi-source mash-ups in Drupal.
What are some practical uses for Domain Specific Languages (DSL)? And how do you go about designing DSLs, implementing them in Groovy, creating tests for your models and evolving the structure of the languages over time?
In this fast paced session, Peter Bell will examine a real world Groovy DSL, how it was designed and implemented, the testing strategies employed and the options for evolving the structure (grammar) of the DSL.
If you've built DSLs but want to go further, or if you've still not figured out how a DSL might help you to build better, more maintainable apps more quickly and easily, come along and learn more about creating practical, maintainable DSLs for your projects.
Just a thought . . . If you are interested in this talk you might also be interested in Core Gradle: Gradle, a Build System for Java Workshop and Graeme Rocher's Groovy and Grails Workshop
Discover in more depth about what features are available to you today with HTML5, how you can utilize them and what the future holds once more browsers gain support for features
MongoDB at Sailthru: Scaling and Schema DesignDATAVERSITY
Sailthru provides all your website email delivery needs, ensuring Inbox delivery for transactional and mass mail. Sailthru started out as a MySQL-powered transactional-mail service. Starting in 2009, we migrated to the document-oriented "nosql" database MongoDB. Moving entirely to MongoDB has allowed us to build complex user profiles to power behavioral-targeted mass emails and onsite recommendations. How and why we made the move, and how we use MongoDB today.
Persistence Smoothie: Blending SQL and NoSQL (RubyNation Edition)Michael Bleigh
Persistence Smoothie is a talk given at RubyNation 2010 about when, how, and why to use combinations of persistence engines (including both SQL and NoSQL options) with a live example. The code is available at http://github.com/mbleigh/persistence-smoothie
1. QueryPath
It’s like PHP jQuery for Drupal
http://querypath.org
http://api.querypath.org
Tuesday, August 17, 2010
2. Matt Butcher
Maintainer of QueryPath
Author of 6 books
Drupal developer at
ConsumerSearch.Com “Learning Drupal 7” will be
out in RAW this month
http://packtpub.com
Tuesday, August 17, 2010
3. Emily Brand
Just completed a
GSoC QueryPath project.
MA in Computer Science
IT Developer/Engineer
HP
Tuesday, August 17, 2010
8. The Task
Find all
<a></a>
tags who have
the ancestor
<div></div>
Tuesday, August 17, 2010
9. The DOM API
• At least seventeen
classes, each with dozens
of methods.
• Complex data structure.
• Checkered history in
PHP.
• VERY powerful.
Tuesday, August 17, 2010
10. SimpleXML
• One class, about a dozen
functions and methods.
• Turns XML into basic
objects.
• Makes easy stuff easy,
and makes everything
else insanely hard.
Same size as DOM
Example
Tuesday, August 17, 2010
11. SAX / Expat
Same size,
fewer features
• Event based.
• Write your own parser
handler.
• One per XML format.
• Only reliable “legacy”
library.
Tuesday, August 17, 2010
12. QueryPath
• Compact library.
• Functions are short and
mnemonic.
[This space intentionally left blank ]
• The power of DOM, but
simpler than SimpleXML
• (Shhh... don’t tell, but it’s
built on the DOM.)
Tuesday, August 17, 2010
14. Files, strings, objects...
• Open XML/HTML file: qp(‘somefile.xml’);
• Parse string: qp(‘<html>...</html>’);
• Get URL: qp(‘http://drupal.org');
• Use DOM or SimpleXML object: qp($ele);
Tuesday, August 17, 2010
15. Search with CSS
<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/"
version="2.0" xml:base="http://technosophos.com">
<channel>
<title>TechnoSophos</title>
<link>http://technosophos.com</link>
<item>
<title>
qp($rss_url, ‘item > title’);
Drupal Dojo: "QueryPath"
</title>
<link>http://technosophos.com/content/...</link>
<description>
On August 17th at 12pm EDT (9AM PDT)...
</description>
</item>
</channel>
</rss>
Tuesday, August 17, 2010
19. Some Things it Does
• Import/Scrape HTML • Work with RDFa
• Read XML files • Run SPARQL queries on
Semantic Web
• Remote web services
• Generate XML
• SVG image manipulation
• Transform using XSLT
• RSS or Atom feeds
• Interact with RDBMS
• Retrieve database data
into XML/HTML • And more...
Tuesday, August 17, 2010
21. Myth
“QueryPath is for Drupal”
QueryPath is a PHP library, and
will work with any PHP tool.*
Tuesday, August 17, 2010
22. Fact
The QueryPath Drupal modules
provides all you need.
You can easily use QueryPath
within Drupal.
http://drupal.org/project/querypath
Tuesday, August 17, 2010