# Presentation: 426117

## Collaboration & Registration:XML Collaborator

- Kevin Williams
- Blue Oxide Technologies
- September 18, 2002

## What is needed to facilitate enterprise-wide design of XML and XML Web services?

- Shared design approach: Collaboration
- Publication of released structures: Registration

## Collaboration 

- Multiple stakeholders, geographically diverse
- Segmented vertically:    areas of interest
- EPA, Justice, DOD, etc.
- Segmented horizontally:  size of effort
- Federal, state, local

- Reuse has to happen across verticals and across horizontals!

- EPA

- WV DEP

- DOJ

## Collaboration (continued) 

-  Granular reuse
- elements, datapoints, datatypes, enumeration
- Audit trail
- Search capabilities
- Peer-to-peer development environment

## Registration

- Published versions of XML Schemas or XML Web services
- Organizations and points of contact responsible for deliverables
- Supporting documentation
- UML models, business process information, etc.
- Compliance with existing registry standards
- ISO 11179, ebXML, UDDI

## Three registry models

## Lessons learned: MISMO

- XML design is a social, not technical, challenge
- Quarterly three-day meetings do not work
- Neither does e-mailing XML Schemas back and forth between stakeholders
- Collaboration has to be democratic and easily accessible by all stakeholders
- Work products (registered items) need to be well-documented and simple to implement

## XML Collaborator

- Real-time collaboration on XML and XML Web service design
- Shared XML Collaborator servers are accessed over the Internet
- Distributed collaboration and registry allows multiple participants to share the implementation costs and allows key participants to retain a level of ownership
- Threaded collaboration allows participants to collaborate on every aspect of the design process
- Full-featured security model

## XML Collaborator (continued)

- Information design independent of serialization allows the same structures to be used to create XML Schemas, DTDs, HTML documentation, and so on
- Import/export functionality allows existing work to easily be migrated to the XML Collaborator platform
- Full versioning system to track changes to components of information design and determine responsible users through full audit trail
- Namespace support
- Registration of supporting content

## XML Collaborator architecture

- Interfaces exposed as XML Web services
- XML Web service definitions are freely published
- Version 1.0 runs on the Microsoft .NET platform

## XML Collaborator architecture

- Metadata storage:
- Metadata is stored in a relational database (MS SQL Server in version 1.0)
- Information is tracked for namespaces assigned to the server
- Metadata is used to drive collaboration and registry interfaces

## XML Collaborator architecture

- Administrative services:
- User, group and role creation
- Selective grants of permissions to users or groups by namespace
- Servers may be added to the distributed registry through this interface

## XML Collaborator architecture

- Edit services:
- The heart of the collaboration engine
- Users modify structures, datapoints, enumerations, datatypes, services, and so on through these interfaces

## XML Collaborator architecture

- Browse services:
- Provides design-time discovery of existing development efforts in the distributed registry
- Full search capabilities are provided, including search by object name, server, namespace, and keyword
- Data objects discovered this way may be reused in other structures

## XML Collaborator architecture

- Render services:
- Generate various views of the metadata structures based on the specific needs of the user
- XML Schemas
- WSDL
- HTML documentation
- SQL DDL
- .NET DOM and SAX parsers
- Java parsers

## XML Collaborator architecture

- Collaboration interface:
- Leverages admin, edit, browse, and render services through a rich UI
- Windows client, version 1.0
- Browser client, Netscape/Mozilla and Internet Explorer, version 1.5.

## XML Collaborator architecture

- Registry services:
- Structures and interfaces designated as released in the collaboration effort are published through these interfaces
- A subset of browse and render services is available for published objects only

## XML Collaborator architecture

- Registry interface:
- Browser interface, version 1.0
- Calls XML Web services provided by Registry Services module and wraps those services in a user-friendly interface

## XML Collaborator architecture

- Shared registry services:
- Server-to-server calls
- Allow information to be shared between servers in a distributed development environment
- Servers perform lazy lookup to minimize code duplication and improve speed

## XML Collaborator architecture

- Distributed registry bus:
- Servers exchange messages along the distributed registry bus
- Any XML Collaborator server registered as part of the distributed registry has secured access to any other server’s content via the bus

##  Q & A

- More info may be found at _[www.blueoxide.com](http://www.blueoxide.com/)_
- “XML Collaborator: XML Design Collaboration and Registry Software” white paper
- Feel free to email questions to _[info@blueoxide.com](mailto:info@blueoxide.com)_ or call 304.724.6767 and ask for Kevin