Federal XML Naming and Design Rules and Guidelines (NDRG) / XML Schema Guidelines (XSG) – An Overview Ken Sall , SAIC / KC Morris , NIST Presented to the Data Architecture Subcommittee (DAS) of the CIO Council’s Architecture and Infrastructure Committee (AIC) July 13, 2006
24
Embed
Federal XML Naming and Design Rules and Guidelines (NDRG) / XML Schema Guidelines (XSG) – An Overview Ken SallKen Sall, SAIC / KC Morris, NISTKC Morris.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Federal XML Naming and Design Rules and Guidelines (NDRG) / XML Schema Guidelines
(XSG) – An Overview
Ken Sall, SAIC / KC Morris, NIST
Presented to the Data Architecture Subcommittee (DAS) of the CIO Council’s
– NDR is? / Background / Status of NDRG / Participants
• Why:
– Interoperability / Reuse /Sharing / Proliferation of NDRs
• How:
– Approach for Going Forward / Quality of Design (QOD) Tool / XML Schema Guidelines (XSG) / Authoring and Sharing Environment
• Where:
– CORE.gov, NIST, SourceForge
3
3
What is an “NDR”?
• Naming and Design Rules
• Any of a series of rules documents since 2003 that restrict XML Schema flexibility by proscribing which features should, may, may not, should not, must, or must not be used
• Focuses only on XML Schema
– not DTDs, RELAX NG, XSLT, XSL-FO, DOM, SAX, etc.
• Tends to be very specific and integrated; adopt as a whole, not partially – debatable!
• Original impetus was E-Commerce (UN/CEFACT and UBL)
4
4
What is an NDR? — Naming Rules….
• Naming rules: the names are the [XML] tags used by the exchange file
• Names represent information to be exchanged
• Names vary between the systems being integrated
• A single common name for a given concept is adopted for the integration
• Consistently representing those names helps usability of the XML Schema
Source: KC Morris ([email protected]), Boonserm Kulvatunyou, et al, NIST/MSID (Manufacturing Systems Integration Division
5
5
What is an NDR? – … and Design Rules
• Design Rules address how information is structured
• Superstructures: namespaces
• Microstructures: global vs local elements
Source: KC Morris ([email protected]), Boonserm Kulvatunyou, et al, NIST/MSID (Manufacturing Systems Integration Division
6
6
Why is an NDR needed?
• Many features of XML (in general) and XML Schema are optional, so developers have many choices to make:
• Highly structured, consistent, and clear rules or guidelines promote reusability, interoperability and information sharing both within an organization and across organizations.
7
7
Benefits of NDR Encoding
• NDR can be computationally enforced!
• Encoding of rules results in better rules
– The process of encoding tests the rules
• Executing the rules results in better XML Schemas
– The benefits of the NDR are achieved
• Cycle time from requirements for a schema to production XML is reduced
– [Korean group reduced time from 2 weeks to 3 days]
Source: KC Morris ([email protected]), Boonserm Kulvatunyou, et al, NIST/MSID (Manufacturing Systems Integration Division
8
8
NDRG Background and Status [1]
• NDR = (XML) Naming and Design Rules – generic term
• NDRG = (Federal XML) Naming and Design Rules and Guidelines
• May 2005: Work initially funded by GSA/OGP, under the XML Community of Practice (Owen Ambur, co-chair). LMI: authors/editors. A dozen participants.
• 5 drafts circulated over about 9 months. Many open issues. No code examples until last version.
• Participation varied, only a few agencies represented.
• Mar. 6, 2006: Cease Work Instruction issued by GSA.
9
9
NDRG Background and Status [2]
• Mar. 15, 2006: Going Forward - XML CoP presentations at NIST:
– NIST Quality of Design Tool (QOD)
– Lessons Learned from Encoding the DON NDR
– Potential Next Steps
• Since May 2006 – Bi-weekly telecons hosted by NIST.
– Quality of Design Tool (QOD) progressing nicely
– XML Schema Guidelines (XSG) – outline only
– Using CORE.gov for docs: NDRG/XSG Community
– Using SourceForge for QOD development
– Few participants
– July 19, 2006: KC Morris presenting to DoD Metadata WG
5. Universal Business Language (UBL) Naming and Design Rules
6. UN/CEFACT XML Naming and Design Rules Technical Specification
7. AIAG (Automotive Industry Action Group)
8. Others?
15
15
NIST Quality of Design Testing Tool (QOD)
• Contains rules based on NDRs from a number of sources
• Stores executable test cases written in Schematron and Java Expert System Shell (JESS)
• Executes tests against user-provided schemas and reports results [i.e., which rules does schema not comply with]
• Used to organize tests into profiles
Source: KC Morris ([email protected]), Boonserm Kulvatunyou, et al, NIST/MSID (Manufacturing Systems Integration Division
16
16
Why QOD?
• Addresses proliferation of NDRs
– Overlapping NDR standards
– Supports reusability of rules
• Highlights ambiguous rules
• Provides an explicit structure for rules in NDRs
– [Betty Harvey is developing an XML Schema for NDR rule structure and another for NDR document structure]
• Automates rule enforcement
• Enables versioning and traceability
Source: KC Morris ([email protected]), Boonserm Kulvatunyou, et al, NIST/MSID (Manufacturing Systems Integration Division
17
17
Quality of Design Tool – Testing Environment
Common Rule Database
Schema Compliance Report
Schema to Check
Rule Input & Test
GUI
18
18
QOD is a Database of Rules
• Where we are: QOD as a Testing Tool
– Tool is available online with an account
– Database contains sampling of rules from DON, UBL, AIAG
– Users may submit others
• Where we are going: NDR Authoring and Sharing Environment
– Tool being developed at NIST
– XML Schema Guidelines (XSG) being developed within XML CoP – help is needed!
Source: KC Morris ([email protected]), Boonserm Kulvatunyou, et al, NIST/MSID (Manufacturing Systems Integration Division
19
19
NDR Authoring and Sharing Environment
• Work in progress
• [One] XML Schema for rule [description] and exchange
• [Another] XML Schema for NDR documentation
• XML Schema Guidelines for expansion of rule base
• Reuse of rules by new COIs
– [Clone or Modify]
• Traceability and versioning of rules
Source: KC Morris ([email protected]), Boonserm Kulvatunyou, et al, NIST/MSID (Manufacturing Systems Integration Division
20
20
Quality of Design Tool – w/ Authoring and Sharing Env.
Common Rule Database
Schema Compliance Report
Schema to Check
Rule Selection
Custom NDRs
Sharing GUI
Rule Input & Test
GUI
21
21
Benefits of NDR Authoring and Sharing Environment
• Makes an NDR real
– Executable rules are integral to NDR
– Schemas can be tested for consistency with NDR
– Problems in written rules are [uncovered] as they are developed
• Reduce time spent on formatting
– Multiple output [formats] from same source (HTML, PDF, …)
• Promote reuse
– Make it easier to extract rules from document
– Make it easier to tailor an existing NDR to meet new requirements
– Improve traceability
Source: KC Morris ([email protected]), Boonserm Kulvatunyou, et al, NIST/MSID (Manufacturing Systems Integration Division
22
22
Goals and Objectives of the Current Federal XML NDRG / XSG [1]
1. Common source of XML Schema rules that may be applied (to varying degrees) across most US government XML efforts.
2. Derived from UN/CEFACT, ISO, and OASIS “NDR” standards.
3. Customizable for adoption at various organizational levels: federal, department, agency, and project. That is, IRS, DoN, Education, DoJ, EPA, IC, etc. can each have their own NDR derived from (and traceable to) the common source.
4. Provides varying degrees of interoperability across these levels, proportional to the degree of strictness of rule selection.
23
23
Goals and Objectives of the Current Federal XML NDRG / XSG [2]
5. Set guidelines for use of xsd:documentation to facilitate XML Registry Services integration.
6. Facilitate practical use of the NDRG by providing tools for customization of the common source, and for testing how well specific XML Schemas adhere to their respective organization’s NDRs (via the NIST Quality of Design tool).
7. Develop QOD NDR Authoring and Sharing Environment at NIST.
24
24
Proposed Action Plan for NDRG/XSG Working Group
• Write charter based on objectives, goals, and benefits.
• Present charter to DAS for approval.
• Expand QOD Testing Environment to QOD Authoring and Sharing Environment.
• Expand initial rule set and test cases.
• Write documentation explaining how to create a rule and test case.
• Solicit input rules from all (interested) agencies.
• Solicit test cases for these rules from original contributors or work with them to develop test cases.
• Demonstrate creation of an NDR using the QOD Authoring and Sharing Environment, perhaps for the IC.
• Tackle specific problems with TEMs, such as to develop an XML Namespace Recommendation.