This isn't specifically a Linux development question, but given the way Gnome and KDE have embraced XML, I thought it might be of interest...
I want to use some XML-based data exports/imports for a software product. There's one problem in the XML Schema design for which I haven't been able to find a good/"best practices"/recommended solution. See the schema snippet below for an example of what I mean. <?xml version = "1.0" encoding = "UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault = "qualified"> <!-- These roles are specific to each customer using the software --> <!-- That is, two customers may have different sets of valid roles --> <xsd:simpleType name = "roleType"> <xsd:restriction base = "xsd:string"> <xsd:enumeration value = "CONSUMER"/> <xsd:enumeration value = "WHOLESALE"/> </xsd:restriction> </xsd:simpleType> <!-- This schema defines a set of customers, each with a role --> <xsd:element name="CustomerSet"> <xsd:complexType> <xsd:sequence> <!-- Each customer has a name and a role --> <xsd:element name="Customer" minOccurs="0" maxOccurs="unbounded"> <xsd:complexType> <xsd:attribute name="id" use="required" type="xsd:string"/> <xsd:attribute name="role" use="required" type="roleType"/> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> An example document might look like this <?xml version="1.0" encoding="UTF-8"?> <CustomerSet> <Customer id="123456789" role="CONSUMER" /> </CustomerSet> I'd like the roles to be validated by the XML parser, but the set of valid roles varies depending upon which customer is using the software. Is there a way to do this without having a completely different version of the schema at each customer site? Am I stuck with using xsd:string for the role attribute and doing all of the validation in the code (driven by a site-specific properties file)? Would you somehow separate out the portions that change per customer and let those responsible for installing the system tweak the customer-specific portions of the schema? Thanks, ---Tom _______________________________________________ Dev mailing list [EMAIL PROTECTED] http://www.trilug.org/mailman/listinfo/dev