

Technologies
For those interested in the technologies underlying California's electronic filing (e-filing) standards, this page lists the technologies presently in use and several expected to be used in future specifications. While a passing familiarity with these technologies is advisable for most users, mastery of some or all is a prerequisite only for developers.
Current Technologies
Extensible Markup Language (XML)
XML is a set of open technologies defined under the auspices of the W3C. These technologies address the formatting of structured documents (such as spreadsheets, invoices, technical drawings, and court documents) on the Web. XML provides a set of rules that let you structure your data in a hierarchical fashion through the use of user-definable markup tags.
XML Schema
While XML 1.0 supplies a mechanism-the Document Type Definition (DTD)- for declaring constraints on the use of markup, automated processing of XML documents requires more rigorous and comprehensive facilities in this area. XML Schema was designed to address that need and is now a W3C-recommended standard.
XML Schema will be used in California's Second Generation Electronic Filing Specifications project. It is likely that future OASIS/LegalXML TC standards will be issued in Schema, and those presently in DTD form will be converted to Schema.
XML Family of Technologies
XML 1.0 serves as and serves as the core technology for the Court Filing Standard, but an expanding family of XML technologies is now available for processing XML documents:
- Namespaces
avoids confusion when multiple XML documents use similar names;
- XSL
-FO, more advanced than CSS and based on XSLT and DOM, is used for expressing style sheets;
- XSLT
is a transformation language used for rearranging, adding, and deleting tags and attributes;
- XPath
is a language for addressing parts of an XML document and is designed to be used by both XSLT and XPointer;
- XML Signatures
are digital signatures designed for use in XML transactions;
- XML Encryption
provides end-to-end security for applications that require secure exchange of structured data;
- XQuery
, derived from XPath, is the language for querying XML documents;
- XLink
describes a standard way to add hyperlinks to an XML file;
- DOM
is a standard set of function calls for manipulating XML (and HTML) files from a programming language; and
- CSS
, the cascading style sheet language, is applicable to XML just as it is to HTML.
Hypertext Transport Protocol (HTTP)
Hypertext Transport Protocol, or HTTP, is a text-based messaging format used for Internet communications. It is the protocol used to send Web pages to and from Web browsers and Web servers. It is a stable and well-understood Internet standard.
Secure Sockets Layer (SSL)
Secure Sockets Layer, often referred to as SSL, is a protocol, or set of rules (developed by Netscape and supported by others), for securely transmitting confidential documents over the Internet. It is often used in financial, personal, and other confidential transactions. SSL uses two keys to encode the data that is transferred over the Internet connection. By convention, URLs that require an SSL connection start with https: instead of http:./p>
SSL is the encryption method specified for California's current Technical Standards. It is widely used on the Web and supported by many Web services and products.
Simple Mail Transfer Protocol (SMTP)
Simple Mail Transfer Protocol, or SMTP, is an Internet Engineering Task Force (IETF) standard for transporting electronic mail. It is a stable and well-understood Internet standard.
Base64 Encoding
Base64 encoding is a means of transforming a binary electronic file into an encoded text representation. Base64 encoding results in text that does not include any of the XML reserved characters. XML reserved characters must be avoided. In short, because base64 encoded text does not include any XML reserved characters, it is "XML safe" and easy to insert into an XML document. Base64 encoding is an accepted means of inserting a binary electronic document, such as a Microsoft Word document or a PDF document, into XML. The disadvantage of base64 encoding is that the encoded text is approximately 33 percent larger than the original binary file and bloats the resulting XML file. If an XML file is too large, it can result in performance problems for XML software such as parsers.
Future Technologies
These technologies have yet to be used in electronic filing standards, but they are candidates for future specifications and standards.
Web Services
A Web service can be generically defined as an Internet-based address where XML can be sent and received or requested and received. An XML over an HTTP connection could be considered a Web service.
Web services technologies include, among other things, XML, SOAP, SOAP Attachments (formerly called Direct Internet Message Encapsulation, or DIME), and Web Services Description Language (WSDL). The W3C has a Web services activity, and the Web Services Interoperability Organization (WS-I) also develops Web services technologies and profiles.
Simple Object Access Protocol (SOAP)
SOAP is an Internet protocol (a set of rules) based on XML and designed for the exchange of information in a decentralized, distributed environment. It consists of three parts:
- An envelope that defines a framework for describing what is in the message and how to process it;
- A set of encoding rules for describing the types of data in the message; and
- A convention for remotely calling programs and a means to deal with the results of running those programs.
SOAP helps facilitate the transmission of messages between Web applications in a standard way and provides a standard mechanism for one Web application to invoke another application on the same or different servers over the Internet. It portends to be one of the key technologies that enable Web services.
Web Services Description Language (WSDL)
Web Services Description Language (WSDL) provides a model and an XML format for describing Web services. WSDL enables one to separate the description of the abstract functionality offered by a service from concrete details of a service description, such as "how" and "where" that functionality is offered.
Universal Description, Discovery, and Integration (UDDI)
UDDI consists of two parts:
- An open, vendor-neutral, standards-based (XML and SOAP) specification for service description and discovery; and
- A shared operation of a business registry on the Web.
UDDI arose out of a collaborative effort by Microsoft, IBM, and Ariba to specify a standard way of describing and discovering services available on the Web. Coupled with an open, shared registry to store this information, UDDI provides a yellow pages function for a Web service to advertise its service or to locate vendors that provide a required Web service.
Using UDDI or the UDDI model, courts could advertise to potential electronic filers available services; provide information on submitting filings; specify required fields and formats and court-specific requirements; and publish additional information, perhaps fulfilling the needs recognized in the CEFTS specification for the Court URL Directory.
Digital Signatures
Like a written signature, a digital signature guarantees that the party sending the message really is the individual he or she claims to be. It must be unique to the individual, and only that individual can affix it to the document (no one should be able to forge the digital signature). Digital signatures use cryptography and usually employ certificate authorities-trusted third parties who verify that each party really is the individual he or she claims to be. Companies such as VeriSign and Entrust are certificate authorities.
Determining how digital signatures should be applied to XML documents is a joint effort of the W3C and IETF; a standard has now reached "recommended" status, and many implementations are now extant.