Skip to main content

Home/ PSI_ESEI_08/ Group items tagged w3c

Rss Feed Group items tagged

David Gelpi Fleta

IBM SJ 45-2 | Technical context and cultural consequences of XML - 0 views

  • Technical context and cultural consequences of XML
  • Introduction In 1996, a committee of the World Wide Web Consortium (W3C**) began work on what became the Extensible Markup Language (XML).1 Based on SGML2 (Standard Generalized Markup Language), XML is a general-purpose markup language that creates domain- and industry-specific markup vocabularies which share certain semantic and syntactic characteristics, facilitating interoperability of tools, techniques, and even programs.
  • Technical ecosystem and foundations
  • ...37 more annotations...
  • Expanding needs of business and scientific communities The ever-growing need of industry and government to integrate disparate IT (information technology) systems has resulted in interconnected networks that can no longer be constructed, managed, or enhanced centrally.
  • The overall stability of such systems requires that the individual components be loosely coupled so that they can be managed, modified, and replaced without threatening the operational integrity of the entire system.
  • This requirement has become equally important for both internal operations of large enterprises and business-to-business interactions between enterprises of differing size.
  • System architects realized early that many specialized languages suited to specific domains were required to represent the numerous bodies of data used in those domains.
  • Each language needed well-defined and self-consistent mechanisms for describing data
  • Data elements needed to be easy to transport, transform, search, combine, extract, filter, and view in different forms.
  • The definitions of the languages themselves needed to be easily shared and maintained by a large body of users.
  • Role of open source/open standards To address these common requirements, a committee (more commonly referred to as a working group) of the World Wide Web Consortium was formed in 1996.
  • XML is rarely used alone. A body of standards emerged around XML to support its use.
  • Companies participated in and adopted the XML open standards and worked on open-source technology for many reasons:
  • XML and its related standards enabled data interoperability, content manipulation, content sharing and reuse, document assembly, document security and access control, document filtering, and document formatting across all disciplines and for all types of devices and applications.
  • XML could not have happened without the World Wide Web. The Web has become a universal mechanism to deliver information to consumers and increasingly, to applications as well.
  • This new generation of XML-centric interactions led to the birth of the Web Services platform
  • It enabled information reuse by integrating text and data from different sources and by searching and linking across these sources, thereby breaking down traditional silos, which were barriers to information sharing
  • XML also could not have had such impact without a diverse collection of tremendous advances in computer science made over approximately a 50-year period.
  • The value of information hiding, generalization, encapsulation, and reuse in programming languages and methodologies
  • XML provides a rich data representation, with significant opportunities for high-value semantic tagging, which can provide superior support for information retrieval and related activities.
  • Lisp language introduced the concept of an attribute list
  • A standardized nonprocedural, high-performance approach to storage and retrieval of structured information—Relational databases7 possessing a powerful data model, underlying concurrency control, integrity and performance benefits, and a consistent Structured Query Language (SQL)8 interface were a great advance of the 1970s and 1980s.
  • The utility of simple key-value pair tagging and its application to providing metadata through annotations—With GML (Generalized Markup Language)13 in the late 1970s and then SGML, which was standardized in 1986,
  • A consensus on a layered-protocol stack for network communication, which standardizes not only layered protocols but also the interfaces to those layers
  • XML is clearly an advanced presentation layer protocol,
  • The necessity and practicality of sophisticated user interfaces programmed with very high-level techniques—Metaphor-based interfaces (i.e., those in which the target audience interacts with aesthetic concepts familiar to their area of expertise)
  • Performance and bandwidth—Relative to optimized binary formats, XML is expensive to process (parse) and transmit and would not have been practical without the many decades during which processor performance and network bandwidth have been accelerating according to Moore's law.
  • Connecting business to business with Web Services
    • David Gelpi Fleta
       
      Analiza el problema de integración de sistemas propuesto en el caso de la agencia de viajes (y/o para tu PFC). Identifica en este artículo "Conecting business to business with Web Services" las tecnologías que emplearías para solventar los distintos problemas comentados en la sesión de laboratorio.
  • The ubiquity of XML and its ability to be used as an underlying specification language enabled a new generation of application-to-application communication, supporting flexible integration of heterogeneous systems in a variety of domains.
  • XML is more accurately a technology for labeling information with descriptive names that can be consistently used and accessed in a multitude of applications
  • The Web Services technology suite is also an important enabler of the SOAs that are now being embraced by the entire IT industry. SOA is an abstract architectural concept founded on the idea of building software systems with uniformly described, discoverable services that interact in a loosely coupled way and can be composed.
  • The success of Web Services in this arena can be attributed to the nonproprietary nature of the underlying technologies as well as the loose coupling supported by the technology.
  • the participants in Web Services communications are loosely coupled and need only agree on the format of messages and their semantics. I
  • Web Services had their beginnings in mid to late 2000 with the introduction of the Simple Object Access Protocol (SOAP),45 Web Service Description Language (WSDL),46,47 and Universal Description, Discovery and Integration (UDDI).48
  • XML provides the interoperable format to describe message content between Web Services, and is the basic language in which Web Services specifications are defined.49
  • The difference between Web Services and traditional approaches is primarily in the use of self-describing, platform-independent messages to enable loose coupling of aspects of the architecture, making the approach more dynamic and adaptable to change.
  • HTTP provides a commonly used interoperable protocol for SOAP
  • SOAP provides only the protocol for exchanging self-describing messages between services, but by itself does not provide any information about the services. WSDL is a common grammar for providing design-time description of services and messages. It defines a template to encode the information required by service clients to access and interact with the service. It describes what a Web service does, where it resides, and how it should be invoked.
  • UDDI provides a mechanism for clients to dynamically find other Web services
  • It provides a uniform mechanism for exchanging structural and typed information encoded as XML.
David Gelpi Fleta

XSLT Transformation - 0 views

  • xmlns:xsl="http://www.w3.org/1999/XSL/Transform" points to the official W3C XSLT namespace.
  • Link the XSL Style Sheet to the XML Document Add the XSL style sheet reference to your XML document
  • <xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  • ...3 more annotations...
  • <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  • orrect Style Sheet Declaration The root element that declares the document to be an XSL style sheet is <xsl:stylesheet> or <xsl:transform>.
  • Example study: How to transform XML into XHTML using XSLT.
David Gelpi Fleta

Introduction to XPath - 0 views

  • XPath is a language for finding information in an XML document
  • What is XPath? XPath is a syntax for defining parts of an XML document XPath uses path expressions to navigate in XML documents XPath contains a library of standard functions XPath is a major element in XSLT XPath is a W3C recommendation
David Gelpi Fleta

Introduction to XML Schemas - 0 views

  • XML Schema is an XML-based alternative to DTD. An XML schema describes the structure of an XML document. The XML Schema language is also referred to as XML Schema Definition (XSD).
  • An XML Schema: defines elements that can appear in a document defines attributes that can appear in a document defines which elements are child elements defines the order of child elements defines the number of child elements defines whether an element is empty or can include text defines data types for elements and attributes defines default and fixed values for elements and attributes
  • XML Schemas are extensible to future additions XML Schemas are richer and more powerful than DTDs XML Schemas are written in XML XML Schemas support data types XML Schemas support namespaces
  • ...1 more annotation...
  • XML Schema became a W3C Recommendation 02. May 2001.
David Gelpi Fleta

XML Schema Part 0: Primer Second Edition - 1 views

  • The schemaLocation attribute value consists of one or more pairs of URI references, separated by white space. The first member of each pair is a namespace name, and the second member of the pair is a hint describing where to find an appropriate schema document for that namespace
  • there is a noNamespaceSchemaLocation attribute which is used to provide hints for the locations of schema documents that do not have target namespaces.
  • the include element has a required schemaLocation attribute, and it contains a URI reference which must identify a schema document.
  • ...63 more annotations...
  • the import element has optional namespace and schemaLocation attributes. If present, the schemaLocation attribute is understood in a way which parallels the interpretation of xsi:schemaLocation
  • The default value for both the minOccurs and the maxOccurs attributes is 1.
  • Be sure that if you specify a value for only the minOccurs attribute, it is less than or equal to the default value of maxOccurs,
  • Attributes may appear once or not at all, but no other number of times
  • The existence of a substitution group does not require any of the elements in that class to be used
  • Several facets can be applied to list types: length, minLength, maxLength, pattern, and enumeration
  • <xsd:simpleType name="USStateList"> <xsd:list itemType="USState"/> </xsd:simpleType> <xsd:simpleType name="SixUSStates"> <xsd:restriction base="USStateList"> <xsd:length value="6"/> </xsd:restriction> </xsd:simpleType>
    • David Gelpi Fleta
       
      USState es una enumeración, definida en este documento en la sección 2.3. ASí, precisamos siempre de un tipo de dato definido previamente para construir una lista.
  • Note that it is possible to derive a list type from the atomic type string. However, a string may contain white space, and white space delimits the items in a list type, so you should be careful using list types whose base type is string.
  • The include mechanism enables you to use externally created schema components "as-is", that is, without any modification.
  • <complexType name="Address">
  • base="ipo:Address"
    • David Gelpi Fleta
       
      El tipo base y el extendido tienen igual identificador.
      Fuera del elemento "redefine" cualquier intento de nombrar a dos tipos de datos usando el mismo identificador producirá un error.
      Notar cómo el elemento "redefine" debe ser el primer hijo del elemento "schema" y encerrar al tipo de dato que redefinimos.
  • </redefine>
  • The redefine element acts very much like the include element as it includes all the declarations and definitions from the address.xsd file
  • Outside of the redefine element, any such attempt to define a complex type with the same name (and in the same namespace) as the base from which it is being derived would cause an error.
  • Now that Address has been redefined, the extension applies to all schema components that make use of Address
    • David Gelpi Fleta
       
      Cuando un elemento es redefinido, la extensión se aplica a todos los tipos de datos que hacen uso de él como, p.e., sus tipos derivados (ver sección 4.2 y 4.3, así como los ejemplos en Creaweb).
  • Substitution GroupsXML Schema provides a mechanism, called substitution groups, that allows elements to be substituted for other elements. More specifically, elements can be assigned to a special group of elements that are said to be substitutable for a particular named element called the head element. (Note that the head element as well as the substitutable elementsmust be declared as global elements
  • Elements in a substitution group must have the same type as the head element, or they can have a type that has been derived from the head element's type
  • <element name="shipComment" type="string" substitutionGroup="ipo:comment"/>
  • substitutionGroup="ipo:comment"/>
  • <ipo:shipComment>
    • David Gelpi Fleta
       
      - no todos los elementos del grupo de sustitución han de aparecer en la instancia XML. - los indicadores minOccurs y maxOccurs del elemento cabecera deben ser adecuados al número de elementos de sustitución que permitamos aparecer (pueden aparecer tantos como el valor maxOccurs del elemento cabecera). - si maxOccurs así lo permite, puede aparecer el elemento cabecera y sus sustitutos.
  • <ipo:customerComment>
  • global declarations cannot contain the attributes > minOccurs > , > maxOccurs > , or > use > . >
  • Abstract Elements and TypesXML Schema provides a mechanism to force substitution for a particular element or type. When an element or type is declared to be "abstract", it cannot be used in an instance document. When an element is declared to be abstract, a member of that element's substitution group must appear in the instance document. When an element's corresponding type definition is declared as abstract, all instances of that element must use xsi:type to indicate a derived type that is not abstract.
  • Declaring an element as abstract requires the use of a substitution group. Declaring a type as abstract simply requires the use of a type derived from it (and identified by the xsi:type attribute) in the instance document
    • David Gelpi Fleta
       
      Ver los ejemplos "abstract_tipo" y "abstract_elemento" en Creaweb.
  • the redefine mechanism we describe here enables you to redefine simple and complex types, groups, and attribute groups that are obtained from external schema files. Like the include mechanism, redefine requires the external components to be in the same target namespace as the redefining schema,
  • abstract="true"
  • abstract="true"
  • extension base
  • extension
  • extension
  • xsi:type="Car"
  • Controlling the Creation & Use of Derived Types
  • schema authors will sometimes want to control derivations of particular types, and the use of derived types in instances.
  • to specify that for a particular complex type, new types may not be derived from it, either (a) by restriction, (b) by extension, or (c) at all.
  • substitutionGroup=
  • The restriction value of the final attribute prevents derivations by restriction. Preventing derivations at all, or by extension, are indicated by the values #all and extension respectively
  • an optional finalDefault attribute on the schema element whose value can be one of the values allowed for the final attribute. The effect of specifying the finalDefault attribute is equivalent to specifying a final attribute on every type definition and element declaration in the schema.
  • When a simple type is defined, the fixed attribute may be applied to any of its facets to prevent a derivation of that type from modifying the value of the fixed facets.
  • fixed="true"
  • a mechanism that controls which derivations and substitution groups may be used in instance documents
  • eplacement by derived types can be controlled using the block attribute in a type definition
    • David Gelpi Fleta
       
      Previene la sustitución de un elemento por su tipo derivado, bien sea por extensión o restricción. No confundir este mecanismo con "final", que sólo previene la definición de tipos derivados (por extensión o restricción) de un tipo determinado.
  • final="restriction"
  • final="restriction"
  • Preventing replacement by derivations at all, or by derivations-by-extension, are indicated by the values #all and extension respectively. As with final, there exists an optional blockDefault attribute on the schema element whose value can be one of the values allowed for the block attribute.
  • block="restriction"
  • final="restriction"
  • mechanism that enables schema components from different target namespaces to be used together, and hence enables the schema validation of instance content defined across multiple namespaces.
  • Importing Types
  • only global schema components can be imported:
  • Only named complex types can be imported; local, anonymously defined types cannot.
  • each namespace must be identified with a separate import element.
  • The import elements themselves must appear as the first children of the schema element
  • each namespace must be associated with a prefix, using a standard namespace declaration
  • import elements optionally contain a schemaLocation attribute to help locate resources associated with the namespaces.
  • ref="xipo:
  • Deriving Types by Extension
  • we indicate that the content models of the new types are complex, i.e. contain elements, by using the complexContent element, and we indicate that we are extending the base type Address by the value of the base attribute on the extension element.
  • xsi:type="ipo:UKAddress">
  • xsi:type="ipo:USAddress">
  • Deriving Complex Types by Restriction
  • the values represented by the new type are a subset of the values represented by the base type (as is the case with restriction of simple types).
  • <complexContent> <restriction base=
  • Table 3 shows several examples of how element and attribute declarations within type definitions may be restricted
David Gelpi Fleta

XML DTD - 0 views

  • XML with correct syntax is "Well Formed" XML. XML validated against a DTD is "Valid" XML.
  • Well Formed XML Documents A "Well Formed" XML document has correct XML syntax.
  • A "Well Formed" XML document has correct XML syntax. A "Well Formed" XML document is a document that conforms to the XML syntax rules that were described in the previous chapters: XML documents must have a root element XML elements must have a closing tag XML tags are case sensitive XML elements must be properly nested XML attribute values must always be quoted
  • ...4 more annotations...
  • A "Valid" XML document also conforms to a DTD. A "Valid" XML document is a "Well Formed" XML document, which also conforms to the rules of a Document Type Definition (DTD):
  • Valid XML Documents A "Valid" XML document is a "Well Formed" XML document, which also conforms to the rules of a Document Type Definition (DTD):
  • XML Schema is an XML based alternative to DTD.
  • XML Schema  W3C supports an XML based alternative to DTD called XML Schema:
David Gelpi Fleta

Introduction to XSLT - 0 views

  • How Does it Work? In the transformation process, XSLT uses XPath to define parts of the source document that should match one or more predefined templates. When a match is found, XSLT will transform the matching part of the source document into the result document.
  • XSLT Uses XPath XSLT uses XPath to find information in an XML document. XPath is used to navigate through elements and attributes in XML documents.
  • A common way to describe the transformation process is to say that XSLT transforms an XML source-tree into an XML result-tree.
  • ...2 more annotations...
  • XSLT is used to transform an XML document into another XML document, or another type of document that is recognized by a browser, like HTML and XHTML. Normally XSLT does this by transforming each XML element into an (X)HTML element.
  • What is XSLT? XSLT stands for XSL Transformations XSLT is the most important part of XSL XSLT transforms an XML document into another XML document XSLT uses XPath to navigate in XML documents XSLT is a W3C Recommendation
1 - 7 of 7
Showing 20 items per page