<Project Name> Solution Architecture – Preliminary Solution Design ■Gate 2 Date: <dd/mm/yyyy> Version: <nn.nn> Security Classification: <Confidential / Restricted / Unclassified / Public> <Company Name> <Company Logo> ■Gate 2 Solution Architecture Submission for <Project Name> 1 Preliminary Solution Design Change Log Any moderate or significant changes to the solution design must be resubmitted to TSG for review and approval prior to making any actual implementation change(s). In most cases, the review and approval of any changes would be performed internally within TSG. Notes: 1. Use of a word processing automated change tracking feature is required when resubmitting this document in order to simplify the review and approval process. Once a version of the document has been approved, then that version of the document should be saved for archival purposes. Prior to submitting a new version of the document, all prior tracked changes should be accepted. This process for resubmission can then be repeated as many times as necessary until the final approval has been issued. 2. Failure to resubmit changes for review and approval could result in a recommendation by TSG that the project approval status be reconsidered. If there are any questions as to whether or not a change is substantive enough to warrant review and approval, please send an email on eau.mita@gov.mt for clarification. 3. Maintain a summary of changes in the table below. [A] Change Log Summary – Description (For instructional purposes examples have been provided) <Initial Submission> (Note: this entry is for instructional purposes) <Included further information within the Development Quality Description section> (Note: this entry is for instructional purposes) Security Classification: < Confidential / Restricted / Unclassified / Public> Version Date <1.0> <04/10/2011> (Note: this entry is for instructional purposes) (Note: this entry is for instructional purposes) <2.0> <24/10/2012> (Note: this entry is for instructional purposes) (Note: this entry is for instructional purposes) ■Gate 2 Solution Architecture Submission for <Project Name> 2 Preliminary Solution Design The Preliminary Solution Design Section has been designed to capture only the most essential information required to obtain Preliminary Design approval. While the items listed are not intended to be an exhaustive list of the possible technologies that may be utilized in the implementation of an application, it does reflect some of the more common choices as well as important items that should be considered during the design phase. 2.1 Preliminary Solution Checklist Disclaimer: Any technologies listed below have been provided solely for convenience, the information provided is not intended to be exhaustive nor does it indicate product endorsement by TSG. Preliminary Solution Checklist [A] Development Approach Responses – Select all that apply Commercial Off The Shelf (COTS): <Yes/No/NA> Free Libre‘ Open Source Software (FLOSS): <Yes/No/NA> Commercial Open Source: <Yes/No/NA> Custom/Bespoke: <Yes/No/NA> (Note: Customizations to COTS or FLOSS solutions must be limited to 10% and be fully supported in future releases or versions) [B] Software Licenses Specify the license frameworks that have been agreed upon (including any IPR arrangements): <Insert license agreement terms> (NOTE: Specify License Framework. Such as GPLv3, EUPL, LGPL, BSD, MITA IPR, etc) [C] Web Based Specify how other dependent software required by the solution (such as Operating Systems / Application Servers / Database Servers including any Client Access Licenses (CALs) ) shall be procured: <Insert source of procurement> Is the solution web based? <Yes/No/NA> If not web based, is it virtualizable? <Yes/No/NA> (NOTE: For non web based solutions indicate if the desktop application can be abstracted via virtualization) [D] [E] [F] Architectural Approach Processing Type Development Platform Solution Architecture Document SOA: <Yes/No/NA> 3/N Tier: <Yes/No/NA> Other: <Insert other architectural approaches> OLTP: <Yes/No/NA> OLAP: <Yes/No/NA> Other: <Insert other processing types> J2EE: <Yes/No/NA> Version: <Insert version> .NET: <Yes/No/NA> Version: <Insert version> Other: <Specify other> Version: <Insert version> Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 1 ■Gate 2 Solution Architecture Submission for <Project Name> Preliminary Solution Checklist [G] [H] [I] Architectural Framework(s) Architectural Pattern(s) Application Details Responses – Select all that apply STRUTS: <Yes/No/NA> JATO: <Yes/No/NA> JSF: <Yes/No/NA> Other: <Insert other architectural frameworks> MVC: <Yes/No/NA> Factory: <Yes/No/NA> Controller: <Yes/No/NA> Data Access Object: <Yes/No/NA> Other: <Insert other architectural patterns> Application name: <Insert name of application> Application uses an existing database? <Yes/No> If the answer to the previous question is Yes, please proceed to the next set of questions. Was the database documented in a previous solution architecture assessment? <Yes/No/NA> If the answer to the previous question is Yes, enter the following details: o Existing Database Name: <Insert name of database> o Project Name: <Insert Project Name> If the answer is NO, enter the following details: o Database Name: <Insert name of database> o Technology platform or product used to implement Database (include version): <Insert name of technology platform> o Attach Database Schema: <Insert name of schema file attached to the solution architecture document> Minimum items required for the database schema are: Database Name o Table Name Attribute Name Attribute Type Attribute Length (Note: The schema is preferably scripted in an XML format as defined in the XSD schema provided in Appendix B) Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 2 ■Gate 2 Solution Architecture Submission for <Project Name> Preliminary Solution Checklist [J] Responses – Select all that apply New Database Details Database Name: <Insert name of database> (Ignore this section if the application is not using a new database) Technology platform or product used to implement Database (include version): <Insert name of technology platform> Attach Database Schema: <Insert name of schema file attached to the solution architecture document> (If application uses multiple new databases, add one entry per database) Minimum items required for the database schema are: Database Name o Table Name Attribute Name Attribute Type Attribute Length (Note: The schema is preferably scripted in an XML format as defined in the XSD schema provided in Appendix B) [K] Application Communication Technologies Service Interface: Web Services (HTTP, XML, SOAP, WSDL, UDDI): <Yes/No/NA> o Public Facing: <Yes/No/NA> o Internal Facing: <Yes/No/NA> Messaging /Message Queuing: <Yes/No/NA> (Within the Solution Domain) Platform Specific: .NET Remoting: <Yes/No/NA> EJB/RMI – IIOP: <Yes/No/NA> Other: <Insert technologies> [L] other platform specific communication Solution Integration Technologies XML: <Yes/No/NA> Web Services: <Yes/No/NA> (Both for service provisioning and service consumption) Messaging: <Yes/No/NA> EDI: <Yes/No/NA> CORBA: <Yes/No/NA> IIOP: <Yes/No/NA> Adaptors: <Yes/No/NA> Secure FTP: <Yes/No/NA> Proprietary API: <Yes/No/NA> Via: <Insert proprietary API name including link to documentation> Other: <Insert other solution integration technologies> (Note: Kindly fill in the Service Contract/Adapter Definition template (Refer to Appendix A), to include any additional information with respect to the service/s being offered through the solution) Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 3 ■Gate 2 Solution Architecture Submission for <Project Name> Preliminary Solution Checklist Responses – Select all that apply [M] In case of websites, illustrate how the solution will be secured against: Security Technologies SQL Injection: <Insert information here> Cross Site Scripting: <Insert information here> Other: <Insert information here> (Ensure that the solution is inline with OWASP top 10 https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project ) Secure Authentication: <Insert information here> (How is the user authentication process secured? What authentication mechanism and security level is being proposed? What technologies are being proposed? Please highlight the authentication mechanism and level used for each respective user type and role) Secure transport: <Insert information here> (How is data secured in transit? What technologies/mechanisms are being proposed?) Secure Storage: <Insert information here> (How is data secured when persisted? What technologies/mechanisms are being proposed?) (Provide the security technologies which have been used in the mentioned contexts. The government adopted specifications related to Encryption and signing algorithms can be found on http://ictpolicies.gov.mt/) [N] Solution Capacity Growth State the envisaged capacity growth for the solution in terms of the following: Network Bandwidth (Intra/Internet): <Insert envisaged bandwidth growth> Storage (DBMS/File System/Entire VM Image): <Insert envisaged storage growth> <How can the solution scale horizontally and vertically?> (Scale horizontal or scale out is the process of adding more nodes to a system. For example: a single web server system is scaled out to a three web server system. Scale vertical or scale up is the process of adding more resources to a node. For example: adding memory to a single server) (Note: this section is associated with the Estimated Total Number of Consumers, Estimated Total Number of Concurrent Consumers and Estimated Annual Customer Growth Rate sections in Gate 1) [O] Business Domain Protocols/Standards Specify whether the application will make use of protocols/standards which are mandated by the business domain through either best practices, legal mandate or EU law/directive/outcome: (e.g.HL7 for the health Industry) <Insert standards/protocols including brief description> Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 4 ■Gate 2 Solution Architecture Submission for <Project Name> Preliminary Solution Checklist Responses – Select all that apply [P] Please specify any performance requirements related to the following classes of performance clearly highlighting the scenario, the value and unit of measurement, method of measurement. Performance Requirements Response times: <Insert response time, unit and method of measurement> (How fast the solution handle individual requests, what a real user would experience) Throughput: <Insert response time, unit and method of measurement> (How many requests the solution can handle) Concurrency: <Insert response time, unit and method of measurement> (How many users or threads work simultaneously) (Note: Fill as deemed necessary) [Q] Application Backup Requirements Full Backup: <Yes/No/NA> Daily: <Yes/No/NA> Weekly: <Yes/No/NA> Incremental Backup: <Yes/No/NA> Hourly: <Yes/No/NA> Daily: <Yes/No/NA> Weekly: <Yes/No/NA> [R] Production Availability Expectations on a monthly basis Scheduled Downtime: Hours: <Insert number of hours> Minutes: <Insert number of minutes> Service Restoration: Hours: <Insert number of hours> Minutes: <Insert number of minutes> Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 5 ■Gate 2 Solution Architecture Submission for <Project Name> Preliminary Solution Checklist Responses – Select all that apply [S] Citizen authentication level required: Electronic Identity (eID) (This section should only be populated if the solution will make use of eID) Username and Password: <Yes/No/NA> Username, Password and Certificate: <Yes/No/NA> Select all the relevant options: Business Authentication: <Yes/No/NA> Support Service Delegation: <Yes/No/NA> Support Agent Functionality: <Yes/No/NA> (eID developer’s toolkit is accessible from the following address: https://www.mita.gov.mt/page.aspx?pageid=258) It is important to highlight that due to the exclusivity of e-ID authentication as highlighted in the OPM circular No. 15/2007, whenever a public facing government website (gov.mt) requires an additional authentication mechanism, the following process needs to be carried out: [T] 1. Client/CIO needs to sends a request/business case to the parliament secretary of the Minister of Investment, Industry and Information Technology (permsec.mitc@gov.mt) copying the IDMO (idmo.mitc@gov.mt) explaining the reason why an additional authentication mechanism is required 2. IDMO shall submit advice to PS, MITC and issue reply accordingly. 3. IDMO will keep MITA’s ICT compliance team (ictcompliance.mita@gov.mt) copied on such requests and outcomes. Government Public Administration Federated Authentication (GPA IDP) State if the solution requires to authenticate public service employees: <Yes/No/NA> (This section should only be populated if the solution will require to authenticate Public Service Employees) (Please note that the GPA IDP returns the following attributes upon successful authentication (outgoing claims): Name, (e.g. Joe) Surname, (e.g. Borg) Email address (e.g. joe.borg@gov.mt) and User account name. (e.g. borgj999@corp.root.gov.mt)) (The user account name should be used as the user unique identifier) (The Government Public Administration Federated Authentication guidelines is accessible via the following address: https://www.mita.gov.mt/page.aspx?pageid=258) [U] myBills The solution will: (This section should only be populated if the solution will make use of myBills) Make use of myBills Hosted Payment Page: <Yes/No/NA> And shall fully integrate with myBills: <Yes/No/NA> (Have a look at the Electronic Payment Policy accessible via the following address: https://www.mita.gov.mt/MediaCenter/PDFs/1_GMICT_P_0105_Electronic_Pay ments_v1.0.pdf) (myBills developer’s toolkit is accessible from the following address: https://www.mita.gov.mt/page.aspx?pageid=261) Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 6 ■Gate 2 Solution Architecture Submission for <Project Name> Preliminary Solution Checklist Responses – Select all that apply [V] With regards to the use of mGov, select all the relevant options from below: Mobile Government (mGov) (This section should only be populated if the solution will make use of mGov) Sending messages: <Yes/No/NA> Sending and receiving messages: <Yes/No/NA> Sending bulk mobile messages: <Yes/No/NA> Sending bulk electronic messages: <Yes/No/NA> (Have a look at the Mobile Messaging Service Policy accessible via the following address: https://www.mita.gov.mt/MediaCenter/PDFs/1_GMICT_P_0107_Mobile_Messa ging_Service_v1.0.pdf) (mGov developer’s toolkit is accessible from the following address: https://www.mita.gov.mt/page.aspx?pageid=262) 2.2 Development Quality Description The Development Quality Description section has been designed to capture how quality aspects such as portability, maintainability, extensibility, supportability and re-usability shall be reflected in the software part of the proposed solution. Portability [A] <Insert information on the portability of the solution> (The ability for a solution to be migrated/installed on a different environment other then the original one, without the need of any code changes) Maintainability [B] <Insert information on the maintainability of the solution> (Ease of extending the solution functionality, fixing of errors etc) Extensibility [C] <Insert information on the extensibility of the solution> (The ability for the solution to be extended with ease and with minor modifications (future proof solution)) Supportability [D] <Insert information on the supportability of the solution> (The ability for the solution to be more efficient in terms of product maintainability thus reducing operational costs (installation, configuration and monitoring) maintaining business continuity) Re-usability [E] <Insert information on the re-usability of the solution> (The ability to use modified or unmodified solution components (subroutines etc) in other solutions) 2.3 Preliminary Solution Design Description Provide a diagram (or diagrams) with corresponding narrative that depicts an accurate and detailed description of the preliminary design for the entire application. The design must document how each of the requirements specified in the conceptual design will be logically accomplished. The preliminary Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 7 ■Gate 2 Solution Architecture Submission for <Project Name> design must align with the Principles, Practices, and Standards that are published in the http://ictpolicies.gov.mt and https://www.mita.gov.mt/edev portals respectively. At this point, properties such as scalability, availability, and security posture should be reflected. External network connection speeds (for both the citizen and employee) should be documented. The supporting application should perform at acceptable levels when utilizing lowest common access speeds. Specify any known hardware and software details (brand, model, version, etc) for clients, servers, and other network infrastructure; programming languages selected, and deployment location (i.e. server location where code is deployed). Interfaces must be identified. SSL Remote Access Employees (N=50) VPN Web Server VPN VPN Employee Desktop (N=300) Zone 3 Firewall VPN Zone 3 (Hardened Internal Network) Zone 2 (Internal Network) Zone 2 Firewall Citizen (5000 Transactions Per day Transaction Zone (Hardened DMZ) Load Balancer Zone 0/1 Internet Transaction Zone Firewall Line of Business Application – Logical Design Appl. Server (Cluster) Zone 3 Firewall VPN VPN Field Employees (N=100) WAN Identity Access Management System EDI Service Broker Common Payment Service (CC and ACH) External Agency Application Credit Card Authorization VPN Dedicated Circuit External Business Partner DB Server (Mirror) SAMPLE 2.4 Solution Architecture Quality Description The Service Quality Description section has been designed to capture how quality aspects such as Performance/Throughput, Security, Integrity, Reliability, Availability, Scalability, Manageability, Serviceability and Recoverability shall be reflected in the proposed solution. Fill in the applicable section hence reflecting how the solution shall be delivered. Note: this section should provide information for both the hosting environment and solution’s areas. Performance/Throughput [A] Response times: <Insert information on the response times of the solution> (How fast the solution handles individual requests in terms of user experience) Throughput: <Insert information on the throughput of the solution> (How many requests the solution can handle) Concurrency: <Insert information on the concurrency of the solution> (How many users or threads work simultaneously) Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 8 ■Gate 2 Solution Architecture Submission for <Project Name> (Specify the mechanism/s that the solution uses to achieve/support the above mentioned factors where applicable) Security [B] Authentication: <Insert information here> Authorization: <Insert information here> (The substantiation of the identity of a person or entity related to the solution in some way). (The definition and enforcement of permitted capabilities for a person or entity whose identity has been established) Audit: <Specify whether the application (i) will be carrying out auditing, (ii) which actions will be audited, (iii) what audit data will be stored and (iv) where will the audit data be stored> (The ability to provide forensic data attesting that the solution was used in accordance with stated security policies) Assurance: <Insert information here> (The ability to test and prove that the solution has the security attributes required to uphold the stated security policies) Asset Protection: <Insert information here> (The protection of information assets from loss or unintended disclosure, and resources from unauthorized and unintended use) Administration: <Insert information here> (The ability to add and change security policies, add or change how policies are implemented in the solution, and add or change the persons or entities related to the solution) (Specify the mechanism/s that the solution uses to achieve/support the above mentioned factors) Integrity [C] <Insert information here> (The capability for an application to bring data or a function from one application program together with that of another application program) (Specify the mechanism/s that the solution uses to achieve/support the above mentioned factors) Reliability [D] <Insert information here> (The ability for a solution to be aware of the hardware and software components to determine where and why failure is high and consequently is able to apply actions in order to reduce failure) (Specify the mechanism/s that the solution uses to achieve/support the above mentioned factors) Availability [E] <Insert information here> (The ability of the solution to function without service interruption or depletion despite abnormal or malicious events) (Specify the mechanism/s that the solution uses to achieve/support the above mentioned factors) Scalability [F] <Insert information here> (A property of a solution or process, which indicates its ability to either handle growing amounts of work (in terms of work load capacity – computational power etc) in a graceful manner or the ability and ease of enhancing the solution to handle new requirements) Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 9 ■Gate 2 Solution Architecture Submission for <Project Name> (Specify the mechanism/s that the solution uses to achieve/support the above mentioned factors) Manageability [G] The building blocks of manageability can be viewed as: Deployable: <Insert information here> (Solution deployment (moving or replication of information or binaries) aspects) Diagnosable: <Insert information here> (Ability for Solution to provide auditing functionality to enable easy tracing and diagnosis of errors/issues) Disaster-recoverable: <Insert information here> (The ability for the solution to recover from run-time crashes; considerations should also include data recovery aspects) (Specify the mechanism/s that the solution uses to achieve/support the above mentioned factors) Serviceability [H] <Insert information here> (The ease and extent of changes that can be affected without interrupting the application and the environment, consequently affecting availability) (Specify the mechanism/s that the solution uses to achieve/support the above mentioned factors) Recoverability [I] <Insert information here> (The ability towards a fast, easy, and reliable recovery of business data from virtually any disruption or event) (Specify the mechanism/s that the solution uses to achieve/support the above mentioned factors) Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 10 ■Gate 2 Solution Architecture Submission for <Project Name> Appendix A – Service Contract/Adapter Definition Section 1 – Functional Consumption Information <How is the service going to be consumed?> (Example: The service provides an SMTP relay from the consumer to gov.mt domains and other domains registered through ICANN domain registration services, including subdomains and have the appropriate Mail Exchanger DNS Mechanisms in place. The transmission of data through the consumption of this service is not secured through the use of TLS/SSL certificates; therefore it is the responsibility of the consumer to encrypt data. User authentication for each connection is not required. Sender domain must be valid and defined by MITA. Access control is configured through Firewalls at the Segregated Environment Edge. Each message is scanned against a list of viruses and malicious content) Interfaces provided <Provide technical information on how the service can be accessed> Standards <Provide the standards which are relevant to the provisioning of the service within the table below> Standard Information <Example: SMTP> <Example: http://tools.ietf.org/html/rfc5321> <Example: TLS/SSL> <Example: http://tools.ietf.org/html/rfc5246> <Example: DNS> <Example: http://www.ietf.org/rfc/rfc1035.txt> <Example: SNMP> <Example: http://www.snmp.com/protocol/> Location of Documentation <Provide the technical design, including interfacing documentation and architecture blueprint of this adapter> Section 2 – Other Terms of Usage Transactional <If the adapter is designed to support transactions provide the process of how it remediates in case of failure> Service Level Terms and Conditions <Provide the Service Level Agreements (SLAs) and other terms and conditions related to the consumption of this service> Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 11 ■Gate 2 Solution Architecture Submission for <Project Name> (Example: The adapter is monitored through MITA central monitoring services via SNMP. The uptime availability is available through the MITA hosting services. Each consumer should not send more than 10 mails per second when messages do not exceed 10 Kilobytes each. Consumers abusing the system will be disconnected without notice) Quality of Service <Specify the quality checks that will be carried out during the design, development and deployment of this adapter?> (Example: This adapter was designed according to IETF specifications and best practices. It is based on IP protocols to ensure scalability and re-usability. The implementation is controlled by the MITA Change Management process) Auditing Information <Specify the auditing mechanisms provided by the adapter, including the data elements that are recorded for auditing purposes. Include the Data Protection measures that are in place according to GMICT policy and legislation> Defined processes <Specify the processes which are available in order to apply for usage, disconnection or modifications of this adapter, as well as processes related to the consumer accessibility to the adapter> (Example: Requests for consumption of this adapter are controlled by MITA. A change request is required to open port 25 from the Segregated Hosting Environment to the service as defined under interfaces. Requests for access to the adapter are identified through the solution architecture to be presented according to the Solution Architecture Templates available at http://mita.gov.mt. Project Manager is responsible to trigger change management process) Section 3 – Responsibilities This section should provide information about the roles and persons responsible for the provision of the service through this adapter. Responsible Role <Organisation-Team-Contact Info> Accountable Role <Organisation-Team-Contact Info> Consultative Role <Organisation-Team-Contact Info> Informative Role <Organisation-Team-Contact Info> Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 12 ■Gate 2 Solution Architecture Submission for <Project Name> Appendix B – Database XSD Schema <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="database"> <xs:complexType> <xs:sequence> <xs:element name="dbname" type="xs:string"/> <xs:element ref="table" maxOccurs='unbounded'/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="table"> <xs:complexType> <xs:sequence> <xs:element name="tbname" type="xs:string"/> <xs:element name="attributes" type="baseattributestype" maxOccurs='unbounded'/> </xs:sequence> </xs:complexType> </xs:element> <xs:complexType name="baseattributestype"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="type" type="xs:string"/> <xs:element name="length"> <xs:simpleType> <xs:restriction base="xs:positiveInteger"> <xs:minInclusive value="1"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:schema> Solution Architecture Document Template Version: 6.0 <Confidential / Restricted / Unclassified / Public> Malta Information Technology Agency - Technology and Systems Governance Telephone: (+356) 21234710 Fax: (+356) 21234701 Website: www.mita.gov.mt Page 13