Expert Shell System Tool
Abraxas Software, Inc. Provider of high quality language development tools.
APRESS . COM Publishes computer technology books for professionals, by professionals.
Site includes catalog, code from books, and frequent buyer discount.
Intelligent Systems Research Involves faculty and students in the Engineering Science department. Overview,
projects, publications, researchers, facilities and collaborations.
Carlo TASSO-Home Page University of Udine - Knowledge based system development, student modeling, user
modeling, intelligent information retrieval, intelligent information filtering.
CNN - Artificial intelligence means never having to say you're ... [CNN]
Backcountry, Powder Skiing & Mountain Biking Videos Pictures, Gear ... Online publication containing articles and photographs relating to skiing and
other outdoor activities in the Western US.
Jess, the Rule Engine for the Java Platform A Java Expert System Shell and scripting environment. [Commercial]
CLIPS: A Tool for Building Expert Systems Productive expert system development and delivery tool; a full environment for
creating rule and/or object based expert systems.
Perforce-Related Software: Jam, API, Webkeeper, ssh, MergeRight ... Freeware - A make replacement featuring dependency scanning, per-target viewpathing,
parallel threads, multiple platforms, variant builds, and control flow ...
Microsoft Windows XP Expert Zone Community The official Microsoft online community for Windows XP enthusiasts.
Complex Systems Homepage Listing Resources on Nonlinear Dynamics and Complex Systems NCSL,
TMYCIN: Medical Reasoning System Developed by Novak and Causey in 1988, TMYCIN is a medical reasoning system
developed at the University of Texas, Austin, using EMYCIN as a model.
Sys Admin Magazine>Sys Admin Magazine Magazine catering to Unix system managers.
KBS/Ontology Projects Worldwide A catalog of links to projects, tools, and events.
LabMice.net: The Windows 2000\2003\XP Resource Center for IT ... Offers annotated resource directory for Windows users and administrators with a
searchable index of thousands of Windows 2000/NT resources.
DeskArtes - 3D software for industrial design, rapid prototyping ... DeskArtes develops and markets 3D Industrial Design software products. "Design Expert"
is for extensive 3D modeling and visualization for Win 95/98/NT/2000.
Softizer - Your Shareware Catalog - Favorite Software Free Downloads A software catalog with thousands of shareware and freeware programs, games and
utilities, clearly organized and regularly updated.
Open Source Software in Java(tm) A directory of open source software focused on Java.
oreilly.com -- Welcome to O'Reilly Media, Inc. -- computer books ... Open source advocate and publisher of technical and computer book documentation
for Unix, X Windows, the Internet, and other open source systems.
FREE POPLOG/POP11/LISP/PROLOG/ML/AI-TOOLS A multi-language AI system that contains Prolog, Common Lisp, ML and POP-11
implementation.
rss_url = $url;
$this->num_to_show = $numtoshow;
$this->do_update = $update;
$this->my_html = preg_replace("/(#{.*?):(.*?})/", "\\1__\\2", $html); //xx:xx tag workaround
$this->content = $this->fetch_feed();
$this->parse_feed();
$this->show();
}
/* string */
function fetch_feed()
{
$url_parts = parse_url($this->rss_url);
$filename = $url_parts['host'] . str_replace("/", ",", $url_parts['path']) . "_" . @$url_parts['query'];
if(file_exists($this->data_directory . "/$filename")) {
$last = filemtime($this->data_directory . "/$filename");
if(time() - $last > $this->update_interval * 60 || $this->update_interval == 0) {
$update = 1;
}
} else {
$create= 1;
}
if($create == 1 || ($this->do_update == TRUE && $update == 1)) {
$fp = @fsockopen($url_parts['host'], 80, $errno, $errstr, 5);
if (!$fp) {
echo "Couldn't open rss feed {$this->feed_url} in {$_SERVER['PHP_SELF']}
\n";
return;
}
fputs($fp, "GET " . $url_parts['path'] . "?" . @$url_parts['query'] . " HTTP/1.0\r\n"
."Host: " . $url_parts['host'] . "\r\n"
."User-Agent: Drew's RSS Reader 0.1\r\n"
."Connection: Close\r\n\r\n");
while(!feof($fp)) {
$rss_data .= @fgets($fp, 1024);
}
list(, $rss_data) = explode("\r\n\r\n", $rss_data, 2);
$output = @fopen($this->data_directory . "/$filename", "w+");
if(!$output) {
return $rss_data;
} else {
flock($output, LOCK_EX);
fputs($output, $rss_data);
flock($output, LOCK_UN);
fclose($output);
}
} //update
return file_get_contents($this->data_directory . "/$filename");
}
/* void */
function parse_feed()
{
preg_match("/
(.*?)<\/title>/", $this->content, $title);
$this->feed_title = @$title[1];
preg_match("/ (.*?)<\/link>/", $this->content, $link);
$this->feed_link = @$link[1];
preg_match("/(.*?)<\/description>/", $this->content, $description);
$this->feed_description = @$description[1];
preg_match_all("/- ]*>(.*?)<\/item>/s", $this->content, $items);
if (sizeof($items[0]) == 0) {
echo "No item elements found in rss feed.
\n";
}
for($i = 0; $i < sizeof($items[0]); ++$i) {
preg_match_all("/(?:<([\w:]*)[^>]*>(?:)?<\/\\1>)+?/si", preg_replace("/- ]*>/", "", $items[0][$i]), $elements);
for($j = 0; $j < sizeof($elements[0]); ++$j) {
$elements[1][$j] = str_replace(":", "__", $elements[1][$j]); //regex fix for items with : like dc:date
$this->rss[$i][$elements[1][$j]] = trim(html_entity_decode($elements[2][$j]));
}
}
}
/* void */
function show()
{
if($this->my_html == "") {
$this->show_html();
} else {
$this->show_user_html();
}
}
function show_html()
{
$show = (sizeof($this->rss) > $this->num_to_show ? $this->num_to_show : sizeof($this->rss));
for($i = 0; $i < $show; ++$i) {
echo "-
rss[$i]['link']}\" target=\"_new\">{$this->rss[$i]['title']} \n";
}
}
function show_user_html()
{
$show = (sizeof($this->rss) > $this->num_to_show ? $this->num_to_show : sizeof($this->rss));
for($i = 0; $i < $show; ++$i) {
extract($this->rss[$i]);
$item = preg_replace("/#\{([^}]+)}/e", "$\\1", $this->my_html);
echo $item;
}
}
} // end class
$url = "http://www.justinpfister.com/gnewsfeed.php?q=Expert&lang=en&ned=us";
$show = 3;
$html = "#{title} #{description} ";
$update = 1;
$rss = new rss_parser($url, $show, $html, $update);
$url = "http://search.news.yahoo.com/usns/ynsearch/categories/47/index.html?p=Expert";
$show = 3;
$html = "#{title} #{description} ";
$update = 1;
$rss = new rss_parser($url, $show, $html, $update);
?>