2011-11-20 58 views
0

上述标题是Android应用程序的要求之一。我知道XML是用于存储数据的代码,比如电子表格等......但是应用程序应该如何“设计”XML模式?此外如何适用于Android应用程序?对不起,我的android应用程序的知识,或一般android是非常低的。设计和使用自定义XML模式

+0

没有android和Java相关的Dave的答案状态。 – Renaud

回答

0

应用程序没有设计架构,应用程序设计师。 (这不是代码,它是数据。)

该过程与其他任何相同:您需要保存什么?什么是需要在各个层面上拯救的实体?想要一个实际的模式(.xsd文件),您可以在其中定义类型,或者您只需要一个简单的基于XML的数据文件?两者是完全不同的东西。

简单的XML可能是这样的:

<contacts> 
    <contact> 
    <first>Dave</first> 
    <last>Newton</last> 
    <phone>630-555-1212</phone> 
    </contact> 

  <contact> 
    <first>Foo</first> 
    <last>Bar</last> 
    <phone>312-123-4567</phone> 
    </contact> 
</contacts> 

这种模式定义描述了什么是中的元素,什么样的顺序他们在,什么是可选的(或没有),他们的类型等

这与Android没有任何关系,而是XML。

0

戴夫提供了一个简单明了的答案。

我的两分钱:

维基百科是我们对于这类问题的朋友:

可扩展标记语言(XML)是编码机器可读形式的文件,一组规则。它在W3C制定的XML 1.0规范[4]中定义,以及其他几个相关规范,都是免费的开放标准。

XML是否符合您的需求?这取决于...实际上,这取决于您(或您的业务客户)需要实施的数据模型。 Dave是对的,应用程序不设计模式,开发团队根据底层业务知识设计数据模型。一旦你的数据模型在那里,你需要实现它作为最终用户应用程序的基础。如果有充分的理由使用XML,请不要重新设计轮子。如果您的需求不符合现有的XML派生格式,那么您将不得不考虑您的数据模型和相关约束条件。根据模型和相关的模型化约束,您必须选择如何定义:W3C XML Schema,Relax NG,schematron约束等。

为什么我们要做所有这些事情:只要确保输入/输出数据符合我们的需求,如果需要和应用程序可以理解是可互操作的......模式就像应用程序的I/O合同(数据是否有效?)

它超出范围,但android,作为一个嵌入式平台,对于开箱即用的模式验证(我的意思是W3C XML模式验证)并不是很好,因为API在那里,但没有实现。验证不是不可能的(因为没有不可能),但是强制执行服务器端数据结构验证(对于客户端/服务器用例)是合理的。如果你有一个内部模型,android首选的方式来实现数据模型是sqlite(或者你可以使用普通的java),但这是另一个问题的另一个答案...