快速业务通道

使用XForms和Ruby on Rails开发小型门诊管理系统,第2部分 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14

使用XForms和Ruby on Rails开发小型门诊管理系统,第2部分

时间:2011-11-29 ibm Michael Galpin

实现患者信息XForm

简介

本系列文章的第 1 部分设计了一个 Web 应用程序,让患者在医生办公室中输入信息。讨论了如何使用 XForms、DB2 pureXML 和 Ruby on Rails 创建这样的应用程序,并对这些技术的用法做了一些实验。本文是第 2 部分,我们开始实现该应用程序。我们将设计第一个 XForm,并建立从表单向 DB2 插入数据的 Ruby on Rails 后端。您将看到如何通过这三种技术在整个应用程序中利用 XML。

先决条件

本文假设读者对 XML 和 Web 应用程序有一定的了解。事先对这三种核心技术,XForms、DB2 pureXML 和 Ruby on Rails 有所涉猎当然很有帮助,不过绝对不是必需的。本文使用了 Mozilla XForms 0.8.0.3 版插件。它为所有 Mozilla 浏览器,如 Firefox,提供了 XForms 运行时支持。另一种有用的 Mozilla 插件是 XForms Buddy,提供了 XForms 调试器。本文使用的是 0.5.6 版。还需要 IBM 的 DB2 数据库服务器。本文使用 DB2 Express-C 9.5 版,支持 Windows®、Linux® 和 UNIX® 系统。此外还需要 Ruby on Rails,本文使用的是 Ruby 1.8.6 和 Rails 1.2.5。还用到了与 Rails 结合使用的 Mongrel Web 服务器。可通过 Ruby Gems 安装(只要在命令行中输入 gem install mongrel 即可)。

患者信息

第 1 部分讨论了所用的 XForms、DB2 pureXML 以及 Ruby on Rails,它们支持在应用程序的前端和后端使用 XML。这种设计的一个好处是将 XML 数据放在了核心位置。XML 数据模型的设计决定了如何实现基于 XForms 的前端,以及如何使用后端的 Ruby on Rails 从 DB2 检索数据。因此,开发应用程序应该首先从设计 XML 数据模型开始。

XML 数据模型

应用程序允许患者输入医生和其他医务人员需要的信息。比如患者的姓名、保险公司、年龄、合作医疗支付额度等,当然还有他们的症状。了解这些之后,清单 1 显示了典型的数据模型实例。

清单 1. 典型的患者信息 XML 实例

<?xml version="1.0" encoding="UTF-8"?>
<Info>
<FirstName>John</FirstName>
<MiddleName>David</MiddleName>
<LastName>Smith</LastName>
<Age>33</Age>
<Insurer>HealthCo</Insurer>
<Id>555-69-1212</Id>
<PolicyHolder>true</PolicyHolder>
<Copay>10</Copay>
<Symptoms>Cough, Fever</Symptoms>
</Info>

使用XForms和Ruby on Rails开发小型门诊管理系统,第2部分(2)

时间:2011-11-29 ibm Michael Galpin

大部分是简单的字符串,但也有少数例外。中间名应该是可选的字段。年龄是整数,并且必须是非负数。co-pay 同样如此。保单持有者是一个 Boolean 标志。Id 应该定义成固定的范式:三个数字、两个数字、四个数字。清单 2 显示了描述患者数据模型的 XML 模式。

清单 2. 患者模式

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://developerworks.ibm.com/patient"
xmlns="http://developerworks.ibm.com/patient"
elementFormDefault="qualified"
xmlns:this="http://developerworks.ibm.com/patient">
<xs:simpleType name="policyId">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{3}-[0-9]{2}-[0-9]{4}"/>
</xs:restriction>
</

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号