EP1872263A2 - Determining fields for presentable files and extensible markup language schemas for bibliographies and citations - Google Patents

Determining fields for presentable files and extensible markup language schemas for bibliographies and citations

Info

Publication number
EP1872263A2
EP1872263A2 EP06750320A EP06750320A EP1872263A2 EP 1872263 A2 EP1872263 A2 EP 1872263A2 EP 06750320 A EP06750320 A EP 06750320A EP 06750320 A EP06750320 A EP 06750320A EP 1872263 A2 EP1872263 A2 EP 1872263A2
Authority
EP
European Patent Office
Prior art keywords
tag
datatag
label
raw data
field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP06750320A
Other languages
German (de)
French (fr)
Other versions
EP1872263A4 (en
Inventor
Jennifer P. Michelstein
Joe K. Yap
Edison Nica
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/109,415 external-priority patent/US7818668B2/en
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of EP1872263A2 publication Critical patent/EP1872263A2/en
Publication of EP1872263A4 publication Critical patent/EP1872263A4/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/123Storage facilities

Definitions

  • Word processing documents can include embedded fields. Fields represent a portion of a document that is visibly represented by presentation data based on a field type and at least one field parameter. The presentation data can therefore change in response to changes in the value(s) of the at least one field parameter. There can be different types of fields for different purposes. Examples include a number of pages of a document, a name of the file of the document, the current date/time, a number for a (e.g., paragraph, outline, page, etc.) numbering feature, and so forth.
  • the presentation data is likewise updated based on the at least one parameter. For example, if there is a field for a number of pages of a document, each time the document is updated for printing, the current number of pages of the document is inserted as the presentation data at the location of the embedded field.
  • the at least one field parameter pertains to intrinsically known or determinable information. For instance, the date and/or time is intrinsically known by a computing system. Also, the file name and the internal numbering operations are intrinsically determinable from the document itself. Consequently, existing embedded field technology is relatively limited and inflexible.
  • Fields for presentable files can be determined by an application (i) based on a field type and at least one parameter of each of the fields and (ii) responsive to raw data and a transformation engine that is separable from and external to the application, even when the application is unaware of the internal mechanics of the transformation engine.
  • the field type indicates that the given field is to be evaluated based on raw data that is referenced by the at least one parameter of the given field.
  • the transformation engine is applied to the referenced raw data to produce a result for the given field that is suitable for presentation.
  • the transformation engine includes multiples sets of presentation rules that may be selectively established for application to the fields.
  • respective presentation rule subsets target respective types of raw data.
  • the fields comprise bibliographies and citations to bibliographic sources
  • the raw data comprises bibliographic data for the cited sources
  • the different sets of presentation rules comprise different bibliographic formatting standards
  • the respective types of raw data comprise respective types of sources.
  • Extensible markup language schemas for bibliographies and citations facilitate utilization of bibliographic information.
  • a schema utilization module may enable the creation, modification, interpretation, etc. of a schema for bibliographic information.
  • a schema utilization module may be an independent program, part of an application program, and so forth.
  • a schema for bibliographic information defines a framework for bibliographic information.
  • the bibliographic information may be embedded in a document, may be embodied as a master list, and so forth.
  • the schema for bibliographic information is realized using an open-standard such as extensible markup language (XML).
  • XML extensible markup language
  • the schema enumerates multiple source types and the data types associated therewith.
  • employing a schema utilization module in conjunction with a schema for bibliographic information enables bibliographic source information to be created, to be inserted into a document as a citation, to be added to a master list, to be reused later, and so forth.
  • FIG. 1 is a block diagram example of a presented file including presentation data resulting from a field.
  • FIG. 2 is a block diagram example of a presentable file and an application that is capable of presenting the presentable file using raw data and a transformation engine.
  • FIG. 3 is a flow diagram that illustrates an example of a method for presenting a presentable file having an embedded field.
  • FIG. 4 is a block diagram of an example interpretation of an embedded field.
  • FIG. 5 is a block diagram of an example extraction of raw data for the embedded field.
  • FIG. 6 is a block diagram of an example transformation of the extracted raw data.
  • FIG. 7 is a block diagram of an example transformation engine.
  • FIG. 8 is a block diagram that provides bibliographic-related examples for the more general concepts and terms illustrated in FIGS. 1-7.
  • FIG. 9 illustrates an example of a computing (or general device) operating environment that is capable of (wholly or partially) implementing at least one aspect of determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations as described herein.
  • FIG. 10 illustrates an example schema that defines a framework for bibliographic information and/or that enables utilization of the bibliographic information.
  • Word processing documents can include embedded fields. Fields represent a portion of a document that is visibly represented by presentation data based on a field type and at least one field parameter. The presentation data can therefore change in response to changes in the value(s) of the at least one field parameter. There can be different types of fields for different purposes. Examples include a number of pages of a document, a name of the file of the document, the current date/time, a number for a (e.g., paragraph, outline, page, etc.) numbering feature, and so forth.
  • the presentation data is likewise updated based on the at least one parameter. For example, if there is a field for a number of pages of a document, each time the document is updated for printing, the current number of pages of the document is inserted as the presentation data at the location of the embedded field.
  • the at least one field parameter pertains to intrinsically known or determinable information. For instance, the date and/or time are intrinsically known by a computing system. Also, the file name and the internal numbering operations are intrinsically determinable from the document itself. Consequently, existing embedded field technology is relatively limited and inflexible.
  • a field can be a transform reference field type.
  • a transformed reference field type indicates that referenced raw data is to be transformed, and the transformed raw data is then presented as the presentation data result of the field.
  • a set of presentation rules may be selected from a transformation engine so that the referenced raw data is presented in a desired manner.
  • the transformation engine is independent of the application presenting the field, and the application is unaware of the specifics of the internal mechanics (e.g., the presentation rules) of the transformation engine. Moreover, a user can independently create or modify a transformation engine without utilizing the application, relying on the application, or even understanding details on how the application is to apply the transformation engine, as long as the created transformation engine adheres to or comports with a schema as promulgated for transformation engines generally. For example, using non-proprietary, open standards such as XML and XSLT enables a user to create, edit, etc. the raw data and the transformation engine, respectively, without involving the application.
  • Fields of a transform reference field type may be employed in a myriad of contexts.
  • a bibliographic feature employs transform reference field type schemes, mechanisms, techniques, etc.
  • Raw data contains one or more bibliographic sources
  • the transformation engine includes at least one set of presentation rules.
  • Each presentation rale can implement a documented approach for citing bibliographic sources.
  • bibliographies and citations can be quickly repurposed by changing the selected set of presentation rules. This can cause the presentation of each cited bibliographic source to be changed accordingly.
  • bibliographic information may be input once, edited at will, and retrieved for reuse across different documents using open-standard technology, for example.
  • creating the bibliographic information in accordance with a schema can enable utilization of the bibliographic information in different environments.
  • extensible markup language schemas for bibliographies and citations are described herein.
  • Extensible markup language is a universal language that provides a way to identify, exchange, and process various kinds of data.
  • XML may be used to create documents that can be utilized by a variety of different application programs.
  • Elements of an XML file typically have an associated namespace and schema.
  • a namespace is a unique identifier for a collection of names that are used in XML documents to define element/attribute names and types.
  • the name of a namespace is commonly used to uniquely identify each class of XML document.
  • XML schemata (schema) provide a way to describe and validate data in an XML context.
  • a schema indicates, for example, what elements and attributes are used to describe content in an XML document, where each element is allowed, what types of content are allowed within it, and/or which elements can appear within which other elements.
  • the use of schemas can ensure that documents are structured in a consistent and predictable manner, which facilitates a standard document construction and enables subsequent interpretation of individual documents.
  • a first section is related to FIGS. 1-3 and is entitled “General Example Implementations for Determining Fields”.
  • a second section is related to FIGS. 4-7 and is entitled “Specific Example Implementations for Determining Fields”.
  • a third section is related to FIG. 8 and is entitled “Bibliographic-Related Example Implementations for Determining Fields”.
  • a fourth section is entitled “Conclusion for Determining Fields”.
  • a fifth section references FIG. 9 and is entitled “Example Operating Environment for Computer or Other Device”.
  • a sixth section is related to FIG. 10 and is entitled “Extensible Markup Language Schemas for bibliographies and Citations".
  • the description of the seventh section which is entitled “Extensible Markup Language-Based Descriptions of Source Types for bibliographies and Citations", interfaces with the description of the sixth section.
  • FIG. 1 is a block diagram example of a presented file 102 having presentation data 106 resulting from a field 108.
  • presented file 102 comprises a data stream presentation 104 including presentation data 106.
  • Presented file 102 may be from a presentable file of any type.
  • Example presentable file types include a word processing file, a spreadsheet file, a slideshow file, an email file, a browser file, a multimedia file, some combination thereof, and so forth.
  • data stream presentation 104 and presentation data 106 may comprise any number of symbols of any kind.
  • Data stream construction 110 for field 108 is illustrated.
  • Data stream construction 110 may be represented as ⁇ (Field Type) (Field Parameter(s))
  • the "Field Type” indicates a field type of many possible field types to which a given field 108 belongs.
  • the "Field Parameter(s)” recite at least one field parameter that serves as an argument for the Field Type.
  • the "Result” symbolizes the result of a function characterized by a Field Type and Field Parameter(s) pair.
  • the field type may be a paragraph reference number with the field parameter being a pointer to the referenced paragraph having a number. The result is therefore the current paragraph number of the referenced paragraph.
  • the field parameter may be empty or omitted when the field type alone provides information that is sufficient to determine the result.
  • Field 108 includes function information 114 and result 120.
  • Function information 114 includes the pair of field type 116 and one or more parameters 118.
  • result 120 is produced.
  • result 120 is presented as presentation data 106 as part of data stream presentation 104.
  • FIG. 2 is a block diagram example of a presentable file 202 and an application 208 that is capable of presenting the presentable file 202 using raw data
  • application 208 determines result 120 of field 108 based on field type 116 and at least one parameter 118 and responsive to raw data 204 and transformation engine
  • Presentable file 202 is the origin or underlying information for presented file 102 (of FIG. 1). In other words, the information in presentable file
  • Presentable file 202 enables an application to create data stream presentation 104 (of FIG. 1) when presentable file 202 is being presented.
  • Presentable file 202 may be presented on a visual screen, on a print out, and so forth.
  • presentable file 202 includes data stream information
  • Data stream presentation 104 is produced primarily from data stream information 210.
  • Additional information 212 if present, contains additional information that is usable for manipulating, presenting, or otherwise utilizing data stream information 210 and/or the overall presentable file
  • additional information 212 may include properties information, a change history, etc. for presentable file 202.
  • additional information 212 can contain all or a portion of raw data 204 and/or transformation engine 206 to enhance the portability of presentable file 202, as is described further herein below with particular reference to FIG. 8.
  • Raw data 204 and transformation engine 206 are also illustrated in
  • Raw data 204 includes data that is to be at least partially presented as presentation data 106 (of FIG. 1) for field 108.
  • Transformation engine 206 includes presentation rules (not explicitly shown in FIG. 2) that transform raw data 204 into result 120.
  • Transformation engine 206 in an example implementation, complies with an open standard so that individual users may elect to modify or augment a transformation engine provided by others or to create a new transformation engine without using application 208 (which may be of any general application type, including a word processing program such as Microsoft ® Word from Microsoft ® Corporation). Examples of raw data 204 are described further herein below with particular reference to FIGS. 5 and 6, and examples of transformation engine 206 (including presentation rules) are described further herein below with particular reference to FIGS. 6 and 7. Also, the transformation is described further herein below with particular reference to FIGS. 6 and 7.
  • Application 208 includes field interpreter 214, raw data extractor 216, and raw data transformer 218.
  • Field interpreter 214 is capable of interpreting field 108, especially function information 114.
  • Raw data extractor 216 is capable of extracting raw data from raw data 204 in accordance with a parameter 118 that contains a reference to raw data 204.
  • Raw data transformer 218 is capable of transforming the extracted raw data in accordance with one or more presentation rales of transformation engine 206 without being in direct control of the transformation.
  • Raw data transformer 218 is capable of applying transformation engine 206 to the extracted data of raw data 204 without being aware of the internal mechanics (including the specifics of any included presentation rules) of transformation engine 206.
  • result 120 of field 108 can be independent of application 208.
  • a schema 220 is known to application 208, and application 208 is adapted to interoperate with transformation engines 206 that adhere to/comport with schema 220.
  • Schema 220 specifies one or more formats for transformation engine 206. Consequently, as long as transformation engine 206 adheres to/comports with schema 220, raw data transformer 218 is capable of applying transformation engine 206 to raw data 204 without being aware of the internal mechanics thereof.
  • application 208 may also be capable of independently interpreting other (e.g., traditional) fields 108 without relying on raw data 204 or a transformation engine 206.
  • raw data 204 and transformation engine 206 are separate from presentable file 202 and application 208.
  • raw data 204 may be a separate file, such as a separate master raw data file.
  • transformation engine 206 may be an independent file, a separate program, a plug-in module, an operating system (OS) feature, and so forth. As noted above, however, all or a portion of raw data 204 and/or transformation engine 206 may alternatively be included as part of additional information 212.
  • OS operating system
  • transformation engine 206 is stored as part of additional information 212, and at least a portion of transformation engine 206 may be utilized by application 208 when transforming referenced raw data 204 to produce result 120.
  • at least the relevant (e.g., referenced) raw data of raw data 204 is transportable as part of presentable file 202. Consequently, a presentable file 202 may be e.g. emailed to a recipient with the relevant raw data being included as part of presentable file 202.
  • the recipient has an application 208 that is expected to access and properly present presentable file 202, the inclusion of at least a portion of transformation engine 206 as a part of additional information 212 ensures that presentable file 202 can be presented in a manner intended by its creator.
  • FIG. 3 is a flow diagram 300 that illustrates an example of a method for presenting a presentable file having an embedded field.
  • Flow diagram 300 includes five (5) "primary" blocks 302-310 and six (6) “secondary" blocks.
  • FIGS. 1 and 2 are used in particular to illustrate certain aspects and examples of the method.
  • the actions of flow diagram 300 may be performed by an application 208 on a presentable file 202 using raw data 204 and transformation engine 206.
  • data stream information of a presentable file is processed until an embedded field is encountered.
  • data stream information 210 of presentable file 202 may be processed into data stream presentation 104 of presented file 102 until a field 108 is encountered.
  • the field is interpreted. For example, field interpreter
  • 214 of application 208 may interpret field 108. More specifically, at block 304(1), a field type is ascertained. For instance, field interpreter 214 may ascertain field type 116 of function information 114. At block 304(2), one or more parameters 118 are acquired. For instance, field interpreter 214 may acquire parameter(s) 118 of function information 114.
  • field type 116 comprises a transform reference field type 116. This indicates to field interpreter 214 that a reference points to raw data, which is to be transformed prior to presentation.
  • at least one parameter 118 comprises a reference to raw data 204.
  • Another parameter 118 may identify all or part of transformation engine 206.
  • a transformation engine 206 that is to be employed for a presentable file 202 may be identified (and optionally contained) in the additional information 212.
  • transformation engine 206 may be identified by a global setting that is set by or through application 208.
  • raw data for the field is extracted.
  • raw data extractor 216 of application 208 may extract raw data for field 108 from raw data 204. More specifically, at block 306(1), raw data is located responsive to acquired parameter(s). For instance, raw data extractor 216 may locate raw data 204, and/or a portion thereof, responsive to at least one parameter 118 that includes a reference to the raw data.
  • the located raw data is retrieved. For instance, raw data extractor 216 may retrieve the located raw data from raw data 204.
  • the extracted raw data is transformed.
  • raw data transformer 218 of application 208 may cause the extracted raw data of raw data 204 to be transformed responsive to the separate transformation engine 206.
  • the relevant transformation engine 206 is identified.
  • raw data transformer 218 may identify the relevant transformation engine 206, and/or the relevant presentation rules thereof, using at least one parameter 118, using a transform identification (e.g., a transformation engine identifier) in additional information 212, using a global setting of application 208, and so forth.
  • the identified transformation engine is applied to the retrieved raw data.
  • raw data transformer 218 may apply the identified transformation engine 206, including a set of presentation rules thereof, to the retrieved raw data of raw data 204 to produce result 120.
  • Raw data transformer 218 can cause transformation engine 206 to perform this transformation without knowing any specifics about the contents of transformation engine 206.
  • the transformed raw data, or field result is presented as part of the data stream presentation of the presented file.
  • application 208 may present result 120, which comprises the transformed raw data, as presentation data 106 for field 108 as part of presented file 102.
  • the actions of flow diagram 300 may be performed in orders that vary from those that are illustrated.
  • the transforming of block 308 may be performed prior to or completely or partially overlapping with the extracting of block 306. Thus, in an example implementation, only those portions of the raw data that are to remain after any filtering need be fully extracted.
  • FIG. 4 is a block diagram of an example interpretation of an embedded field 108.
  • a field 108 includes a field type 116 and at least one parameter 118.
  • field type 116 comprises a transform reference 402 field type
  • parameter(s) 118 includes at least a raw data reference 404.
  • Field interpreter 214 ascertains that field type 116 is a transform reference field type 402 as indicated by arrow 408. As such, field 108 is determined based on raw data reference 404 and responsive to (i) raw data 204 (of FIG. 2) that is referenced by raw data reference 404 and (ii) transformation engine 206. [0052] Field interpreter 214 provides raw data reference 404 to raw data extractor 216 as indicated by arrow 410. Field interpreter 214 also provides transform identification 406 to raw data transformer 218 as indicated by arrow 412. Three example locations at which transform identification 406 may be found are illustrated. These examples include parameter(s) 118, additional information 212, and application 208. However, transform identification 406 may alternatively be located within or in association with other component(s). Also, raw data transformer 218 may alternatively be capable of independently acquiring transform identification 406 from any location.
  • FIG. 5 is a block diagram of an example extraction of raw data 204 for the embedded field.
  • raw data 204 includes one or more data items 502.
  • raw data 204 includes "k" data items 502(1 ... k): item #1 502(1), item #2 502(2) ... item #k 502(k).
  • Each data item 502 corresponds to a data item type.
  • data item #1 502(1) corresponds to data item type " ⁇ ”
  • data item #2 502(2) corresponds to data item type " ⁇ ”
  • data item #k 502(k) also corresponds to data item type " ⁇ ".
  • Data item types are described further herein below with particular reference to FIGS. 6 and 7.
  • Data items 502 include one or more respective tag fields 504 and associated respective data 506, which are referred to herein as tag-data couplets.
  • data item #k 502(k) includes "n" respective tag fields 504 that are associated with "n” respective data entries 506.
  • tag field #1 is associated with data entry #1
  • tag field #2 is associated with data entry #2
  • tag field #3 is associated with data entry #3
  • tag field #n is associated with data entry #n.
  • raw data reference 404 references data item #k 502(k).
  • Raw data reference 404 can comprise a link, a pointer, an address, a universal resource locator, a uniform resource locator, some combination thereof, and so forth.
  • Raw data extractor 216 uses raw data reference 404 to locate and then retrieve data item #k 502(k) as indicated by arrow portion 508. Data item #k 502(k), or at least a portion thereof, is then provided to raw data transformer 218 as indicated by arrow portion 510.
  • FIG. 6 is a block diagram of an example transformation of the extracted raw data 204.
  • raw data transformer 218 applies data item #k 502(k) to transformation engine 206 as indicated by arrow 604.
  • transformation engine 206 includes a filter, order, and/or format capability 602. The specifics of filter, order, and/or format capability 602 are unknown to raw data transformer 218.
  • Filter, order, and/or format capability 602 is adapted so as to filter, order, and/or format data item #k 502(k) with respect to tag fields 504, in accordance with a selected set of presentation rules, and responsive to a data item type of data item #k 502(k).
  • the selected set of presentation rules pertaining to data item type " ⁇ " is applied to data item #k 502(k) because it is of data item type " ⁇ ".
  • presentation rules can stipulate which tag fields 504 are filtered out, how the remaining tag fields 504 are ordered, and how the surviving data entries 506 are formatted.
  • tag-data couplets e.g., respective tag fields 504 that are associated with respective data entries 506
  • tag-data couplets may be filtered, ordered, and/or formatted. More specifically, one or more individual tag-data couplets may be filtered out (e.g., removed and/or excluded from presentation).
  • tag-data couplets may be reordered into a prescribed order.
  • tag- data couplets may be formatted such that the presented text is centered, bolded, italicized, underlined, spaced appropriately, capitalized, punctuated, some combination thereof, and so forth.
  • filter, order, and/or format capability 602 of transformation engine 206 produces result 120, which is presented as presentation data 106.
  • the tag-data couplets from #1 to #n have been filtered out except for the tag-data couplets #1, #3, and #m as shown at result 120. These couplets have also been re-ordered as follows: tag-data couplet #3, tag-data couplet #1, and tag-data couplet #m.
  • FIG. 7 is a block diagram of an example transformation engine 206.
  • transformation engine 206 includes at least one set of presentation rules 702.
  • transformation engine 206 includes four (4) sets of presentation rules 702: presentation rules A 702(A), presentation rules B 702(B), presentation rules C 702(C), and presentation rules D 702(D).
  • transformation engine 206 may alternatively have fewer or more than four sets of presentation rules 702.
  • presentation rules A 702(A) there is a different subset 704 of presentation rules for each data item type of multiple data item types.
  • presentation rules A 702(A) includes rule subsets 704 that target data items of type ⁇ , type ⁇ , type ⁇ ... type ⁇ .
  • the presentation rule subsets 704 for each data item type may include their own set of filter, order, and/or format capability 602. Consequently, data entries 506 that are associated with the same kind of tag field 504 may be filtered, ordered, and/or formatted differently if they are part of data items 502 that correspond to different data item types. This is further explained by way of example in the following section with the bibliographic- related examples.
  • Transform identification 406 may identify an individual set of presentation rules 702 of a transformation engine 206. If the set of presentation rules 702 is globally established (e.g., by application 208 or additional information 212), then fields 108 of the transform reference 402 field type are each presented in accordance with the globally established set of presentation rules 702. Alternatively, the set of presentation rules 702 to be used may be established for each field (e.g., with a parameter 118), for each section or area of a file (e.g., also possibly identified in additional information 212), or in any other manner. [0064] Although both sets of presentation rules A and B 702(A and B) as illustrated in the transformation engine 206 of FIG.
  • presentation rule subsets 704 may differ.
  • presentation rules C 702(C) does not include a presentation rules subset 704 for data items 502 of type ⁇ , but it does have a presentation rules subset 704 for data items 502 of type ⁇ .
  • presentation rules D 702(D) only includes presentation rule subsets 704 for data items 502 of types ⁇ , ⁇ , ⁇ , and T.
  • a presentation rule subset 704 for a given data item type may be exclusive to a single set of presentation rules 702. Other combinations and permutations of presentation rule sets 702 and presentation rule subsets 704 are possible.
  • An example application for determining fields, in accordance with certain implementations as described herein above, is in a bibliographic context.
  • bibliographic data for cited sources may be entered once, and the bibliographic data may subsequently be used for footnotes, endnotes, and so forth.
  • a user can retrieve bibliographic data for a citation or bibliography entry to a given source whenever that source data has been entered.
  • cited sources within a presentable file 202 are included within data stream information 210 as fields 108 having a field type 116 of transform reference 402. Accordingly, bibliographic data may be extracted from raw data 204. Additionally, the raw bibliographic data 204 may be transformed in accordance with an established presentation rule 702.
  • the presented file 102 may then be re-purposed merely be selecting a different presentation rule 702.
  • the user can insert a citation or bibliographic entry, pulling raw data (the source data) and transforming it according to a documentation style such as MLA or APA. After a citation or bibliographic entry is inserted, it can be repurposed by selecting a different documentation style (transform).
  • FIG. 8 is a block diagram that provides bibliographic-related examples for the more general concepts and terms illustrated in FIGS. 1-7. The bibliographic- related examples and realizations are annotated in the illustration of FIG. 8 with italicized text.
  • FIG. 8 includes raw data 204 and transformation engine 206.
  • raw data 204 may be implemented in various ways, in a described implementation raw data 204 comprises an extensible markup language (XML) file or a portion of a file that is configured in accordance with XML.
  • transformation engine 206 comprises an extensible stylesheet language (XSLT) file or a portion of a file that is configured in accordance with XSLT in a described implementation. However, either may be realized using other mechanism(s).
  • XML extensible markup language
  • XSLT extensible stylesheet language
  • Using a non-proprietary, open standard such as XML and XSLT enables a user to create, edit, etc. raw data 204 and/or transformation engine 206 without using application 208
  • Transformation engine 206 (e.g., as an XSLT or other non-proprietary file) is installed and/or called by application 208.
  • application 208 need not be used to create or modify a transformation engine 206.
  • a user may utilize any program that is capable of generating a file that adheres to or comports with the schema 220 that specifies available format(s) for transformation engine 206.
  • a transformation engine 206 that is generated by an unknown file can be installed and/or called by application 208 to determine fields in presentable files.
  • a word processing program realization of application 208 may install or call any transformation engine 206 that comports with the specified schema 220, regardless of how the transformation engine 206 was created.
  • raw data 204 may comprise a master bibliographic data file and/or a portion of additional information 212 of presentable file 202.
  • a user may enter bibliographic data directly into a master file and have cited portions thereof copied into additional information 212.
  • a user may enter bibliographic data directly into additional information 212 (e.g., via an application 208) and have the bibliographic data of the newly-entered citations copied into the master file for subsequent use.
  • inclusion of bibliographic data in additional information 212 is an optional implementation.
  • Raw data 204 includes at least one data item 502. As illustrated in
  • raw data 204 includes data item #k 502(k) of type ⁇ .
  • data item #k 502(k) comprises an individual bibliographic source #k that is being cited
  • the type ⁇ comprises a source type such as a book.
  • Other example bibliographic source types include, but are not limited to: periodicals, journals, broadcast programs, conference proceedings, speeches, journal articles, magazine or newspaper articles, sound recordings, performances, theses/dissertations/reports, art works, musical compositions, internet sites, documents from internet sites, and so forth.
  • Data item #k 502(k) typically includes multiple entries. Specifically, there are respective data entries 506 that are associated with respective tag fields 504.
  • Tag field #n 504 is shown in this example as a title for the book that is the source for this data item 502. Consequently, the associated data entry #n 506 comprises the actual title of source #k. Although only one tag-data couplet is shown in FIG. 8, there are typically multiple such couplets. Additional example bibliographic-related realizations for tag fields 504 include, but are not limited to: author, publication date, pages, publisher, chapter title, article title, volume, issue, edition, URL, performer, writer, artist, version, director, and so forth. The specific tag fields 504 that are supported may optionally vary by data item type.
  • transformation engine 206 comprises one or more bibliographic formatting standards.
  • each presentation rule 702 may be realized as an individual bibliographic formatting standard.
  • presentation rules A 702(A) is realized as a set of rules that transforms raw bibliographic data into bibliographic data that comports with the American Psychological Association (APA) rules of documentation style.
  • APA American Psychological Association
  • Other example bibliographic-related realizations for presentation rules 702 include, but are not limited to the following bibliographic standards: Modern Language Association (MLA), Chicago Manual of Style, Turabian, Author-Date, and so forth.
  • XSLT for MLA, APA, etc.
  • Other XSLTs for other bibliographic documentation styles can be created by users and then installed or called by the word processing application.
  • Such other transformation engine 206 realizations operate in conjunction with the word processing application as long as they are created so as to adhere to the specified schema 220.
  • the word processing application need not understand the internal mechanics of a transformation engine, and the user need not create or modify the transformation engine with the word processing application.
  • presentation rules 702 tend to differ by source type, each source type has a corresponding item type presentation rule subset 704. Consequently, book citations may be formatted differently from periodical citations.
  • item type ⁇ 704 is realized as a presentation rules subset 704 of APA that is targeted to transforming raw data for books into book citations that comport with the APA 5 and item type ⁇ is realized as a presentation rules subset 704 of APA that is targeted to transforming raw data for periodicals into periodical citations that comport with the APA.
  • parameters in a presentation rules subset 704 stipulate which tag fields 504 are to be present in result 120 as well as their order. They may also stipulate the appropriate formatting, including capitalization and punctuation. More specifically, the parameters stipulate which ones of data entries 506 are to be presented as presentation data 106 of presented file 102.
  • a transformation engine is created in accordance with a selected open standard (e.g., XSTL) so as to adhere to a given schema.
  • the given schema is associated with a given application.
  • the given schema specifies a format for transformation engines with which the given application is capable of interoperating.
  • the given application is adapted to apply the transformation engine to fields of a presentable file (e.g., by installing and/or calling the transformation engine).
  • the fields may be determined by the given application based on a field type and at least one parameter of the field, as well as responsive to raw data and the transformation engine. This determination may be effectuated by the application even if the application is unaware of the internal mechanics of the transformation engine.
  • the transformation engine may be created, modified, etc. by a user without utilizing the given application.
  • the creation and/or modification is performed such that the resulting transformation engine comports with the given schema.
  • the user may utilize any program that is capable of manipulating files for transformation engines.
  • the fields being determined can be bibliographic-related entries for a word processing document.
  • the raw data which may be formatted in accordance with an open standard such as XML, may include bibliographic-related data.
  • the transformation engine may comprise one or more bibliographic citation styles, such as APA and MLA. A user may create his or her own bibliographic citation style or modify a documented one without utilizing the word processing application. Regardless, the word processing application may determine bibliographic-related fields of the word processing document by applying a transformation engine comprising at least one bibliographic citation style without the word processing application having to understand details of the internal mechanics of the transformation engine.
  • FIG. 9 illustrates an example computing (or general device) operating environment 900 that is capable of (fully or partially) implementing at least one system, device, apparatus, component, arrangement, protocol, approach, method, procedure, media, application programming interface (API), some combination thereof, etc. for determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations as described herein.
  • Operating environment 900 may be utilized in the computer and network architectures described below.
  • Example operating environment 900 is only one example of an environment and is not intended to suggest any limitation as to the scope of use or functionality of the applicable device (including computer, network node, entertainment device, mobile appliance, general electronic device, etc.) architectures. Neither should operating environment 900 (or the devices thereof) be interpreted as having any dependency or requirement relating to any one or to any combination of components as illustrated in FIG. 9.
  • implementations for determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations may be realized with numerous other general purpose or special purpose device (including computing system) environments or configurations.
  • Examples of well known devices, systems, environments, and/or configurations that may be suitable for use include, but are not limited to, personal computers, server computers, thin clients, thick clients, personal digital assistants (PDAs) or mobile telephones, watches, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, video game machines, game consoles, portable or handheld gaming units, network PCs, videoconferencing equipment, minicomputers, mainframe computers, network nodes, distributed or multi-processing computing environments that include any of the above systems or devices, some combination thereof, and so forth.
  • PDAs personal digital assistants
  • processor-executable instructions include routines, programs, protocols, objects, functions, interfaces, components, schemas, data structures, etc. that perform and/or enable particular tasks and/or implement particular abstract data types.
  • Realizations of determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations may also be practiced in distributed processing environments where tasks are performed by remotely-linked processing devices that are connected through a communications link and/or network.
  • processor-executable instructions may be located in separate storage media, executed by different processors, and/or propagated over transmission media.
  • Example operating environment 900 includes a general-purpose computing device in the form of a computer 902, which may comprise any (e.g., electronic) device with computing/processing capabilities.
  • the components of computer 902 may include, but are not limited to, one or more processors or processing units 904, a system memory 906, and a system bus 908 that couples various system components including processor 904 to system memory 906.
  • processors 904 are not limited by the materials from which they are formed or the processing mechanisms employed therein.
  • processors 904 may be comprised of semiconductor(s) and/or transistors (e.g., electronic integrated circuits (ICs)).
  • processor-executable instructions may be electronically-executable instructions.
  • the mechanisms of or for processors 904, and thus of or for computer 902 may include, but are not limited to, quantum computing, optical computing, mechanical computing (e.g., using nanotechnology), and so forth.
  • System bus 908 represents one or more of any of many types of wired or wireless bus structures, including a memory bus or memory controller, a point-to- point connection, a switching fabric, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures.
  • bus architectures may include an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an Enhanced ISA (EISA) bus, a Video Electronics Standards Association (VES A) local bus, a Peripheral Component Interconnects (PCI) bus also known as a Mezzanine bus, some combination thereof, and so forth.
  • Computer 902 typically includes a variety of processor-accessible media. Such media may be any available media that is accessible by computer 902 or another (e.g., electronic) device, and it includes both volatile and non- volatile media, removable and non-removable media, and storage and transmission media.
  • System memory 906 includes processor-accessible storage media in the form of volatile memory, such as random access memory (RAM) 910, and/or non- volatile memory, such as read only memory (ROM) 912.
  • RAM 910 random access memory
  • ROM read only memory
  • BIOS basic input/output system
  • RAM 910 typically contains data and/or program modules/instructions that are immediately accessible to and/or being presently operated on by processing unit 904.
  • Computer 902 may also include other removable/non-removable and/or volatile/non- volatile storage media.
  • FIG. 9 illustrates a hard disk drive or disk drive array 916 for reading from and writing to a (typically) non-removable, non-volatile magnetic media (not separately shown); a magnetic disk drive 918 for reading from and writing to a (typically) removable, non- volatile magnetic disk 920 (e.g., a "floppy disk”); and an optical disk drive 922 for reading from and/or writing to a (typically) removable, non-volatile optical disk 924 such as a CD, DVD, or other optical media.
  • Hard disk drive 916, magnetic disk drive 918, and optical disk drive 922 are each connected to system bus 908 by one or more storage media interfaces 926. Alternatively, hard disk drive 916, magnetic disk drive 918, and optical disk drive 922 may be connected to system bus 908 by one or more other separate or combined interfaces (not shown). [0090]
  • the disk drives and their associated processor-accessible media provide non-volatile storage of processor-executable instructions, such as data structures, program modules, and other data for computer 902.
  • example computer 902 illustrates a hard disk 916, a removable magnetic disk 920, and a removable optical disk 924
  • processor- accessible media may store instructions that are accessible by a device, such as magnetic cassettes or other magnetic storage devices, flash memory, compact disks (CDs), digital versatile disks (DVDs) or other optical storage, RAM, ROM, electrically-erasable programmable read-only memories (EEPROM), and so forth.
  • Such media may also include so-called special purpose or hard-wired IC chips.
  • any processor-accessible media may be utilized to realize the storage media of the example operating environment 900.
  • processor-executable instructions may include, for example, one or more of: a presentable file 202 having embedded fields 108, raw data 204, a transformation engine 206, an application 208 that is capable of processing embedded fields 108, some combination thereof, and so forth.
  • processor-executable instructions may further include, for example, a schema, the accessing of a schema, the modifying of a schema, the use of a schema to interpret and/or create a data structure, and so forth.
  • a user may enter commands and/or information into computer 902 via input devices such as a keyboard 936 and a pointing device 938 (e.g., a "mouse").
  • Other input devices 940 may include a microphone, joystick, game pad, satellite dish, serial port, video camera, scanner, and/or the like.
  • input/output interfaces 942 are coupled to system bus 908.
  • input devices and/or output devices may instead be connected by other interface and bus structures, such as a parallel port, a game port, a universal serial bus (USB) port, an infrared port, an IEEE 1394 (“Firewire”) interface, an IEEE 802.11 wireless interface, a Bluetooth® wireless interface, and so forth.
  • USB universal serial bus
  • IEEE 1394 IEEE 1394
  • a monitor/view screen 944 or other type of display device may also be connected to system bus 908 via an interface, such as a video adapter 946.
  • Video adapter 946 (or another component) may be or may include a graphics card for processing graphics-intensive calculations and for handling demanding display requirements.
  • a graphics card includes a graphics processing unit (GPU), video RAM (VRAM), etc. to facilitate the expeditious display of graphics and performance of graphics operations.
  • other output peripheral devices may include components such as speakers (not shown) and a printer 948, which may be connected to computer 902 via input/output interfaces 942.
  • Computer 902 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computing device 950.
  • remote computing device 950 may be a peripheral device, a personal computer, a portable computer (e.g., laptop computer, tablet computer, PDA, mobile station, etc.), a palm or pocket-sized computer, a watch, a gaming device, a server, a router, a network computer, a peer device, another network node, or another device type as listed above, and so forth.
  • remote computing device 950 is illustrated as a portable computer that may include many or all of the elements and features described herein with respect to computer 902.
  • Logical connections between computer 902 and remote computer 950 are depicted as a local area network (LAN) 952 and a general wide area network (WAN) 954,
  • LAN local area network
  • WAN wide area network
  • Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets, the Internet, fixed and mobile telephone networks, ad-hoc and infrastructure wireless networks, mesh networks, other wireless networks, gaming networks, some combination thereof, and so forth.
  • Such networks and logical and physical communications connections are additional examples of transmission media.
  • computer 902 When implemented in a LAN networking environment, computer 902 is usually connected to LAN 952 via a network interface or adapter 956. When implemented in a WAN networking environment, computer 902 typically includes a modem 958 or other component for establishing communications over WAN 954. Modem 958, which may be internal or external to computer 902, may be connected to system bus 908 via input/output interfaces 942 or any other appropriate mechanism(s). It is to be appreciated that the illustrated network connections are examples and that other manners for establishing communication link(s) between computers 902 and 950 may be employed.
  • remote application programs 960 reside on a memory component of remote computer 950 but may be usable or otherwise accessible via computer 902.
  • application programs 930 and other processor-executable instructions such as operating system 928 are illustrated herein as discrete blocks, but it is recognized that such programs, components, and other instructions reside at various times in different storage components of computing device 902 (and/or remote computing device 950) and are executed by processor(s) 904 of computer 902 (and/or those of remote computing device 950).
  • Example implementations described herein relate generally to extensible markup language (XML) schemas for bibliographies and/or citations.
  • XML extensible markup language
  • certain implementations may be realized as data structure(s) comprising a schema, including portion(s) of an overall schema, for bibliographic information.
  • Other example implementations may be realized as at least one module that is capable of utilizing a schema for bibliographic information.
  • the data structures, modules, etc. may be embodied on or as part of a processor-accessible media.
  • FIG. 10 illustrates an example schema 1004 that defines a framework for bibliographic information 1002 and/or that enables utilization of the bibliographic information by a schema utilization module 1006.
  • FIG. 10 is a block diagram including an application 208, raw data 204, a schema 1004 for bibliographic information, and a schema utilization module 1006. Also illustrated at two example locations is bibliographic information (Bib Info) 1002.
  • Application 208 provides access to a document 202*. The access may include creating, presenting, modifying, interpreting, etc. document 202*.
  • Application 208 may be, for example, a text-based application such as a word processor, html editor, and so forth.
  • Document 202* is a specific example of a presentable file 202 (of FIG.
  • the bibliographic information 1002 of document 202* may exist as part of embedded fields 108 (of FIG. 1), as part of additional information 212 (of FIG. 2), as part of some other portion of document 202*, some combination thereof, and so forth.
  • Document 202* may be saved according to a variety of different file formats and optionally according to a native programming language of the application 208 with which the document 202* is originally created.
  • Raw data 204 is described generally herein above.
  • Raw data 204 may be document-embedded, may be part of a master list, and so forth.
  • Document- specific raw data 204 may be embedded as part of document 202*.
  • a bibliographic information file that acts as a master list is discussed herein above with particular reference to FIG. 8 in the section entitled "Bibliographic-Related Example Implementations for Determining Fields".
  • Raw data 204 includes bibliographic information 1002.
  • Raw data 204 and thus bibliographic information 1002, may be realized as part of a master list of bibliographic information, as bibliographic information that is embedded in a document (e.g., as shown with respect to document 202*), and so forth.
  • bibliographic information 1002 may also exist at other locations, in other environments and/or contexts, in other formats, and so forth.
  • a raw data 204 master list is a file that includes many bibliographic entries for a user, for an application, for a computing device, some combination thereof, and so forth.
  • a raw data 204 master list includes bibliographic entries that are used and/or usable across multiple documents 202*.
  • bibliographic entries may be entered first into a raw data 204 master list and then copied into a document 202*.
  • bibliographic entries may be entered first into a document 202* and then copied into a raw data 204 master list.
  • schema 1004 provides a framework for bibliographic information 1002. For example, schema 1004 may define, explain, indicate, describe, etc.
  • Schema 1004 may be incorporated as part of schema 220 (of FIG. 2) or as part of another schema, or schema 1004 may exist separately. Schema 1004 enables understanding of raw data 204 having bibliographic information 1002 that exists in accordance with schema 1004. [0106] By way of example only, schema 1004 may comport with an extensible markup language (XML) formatting.
  • XML extensible markup language
  • a schema defining different source types for an example XML-based schema 1004 for bibliographic information 1002 is set forth and described below.
  • the example schema below defines which bibliographic source types can include which pieces of data.
  • the example schema also defines acceptable data format(s) (e.g., string, integer, a specially-defined type, etc.) for each of the pieces of data.
  • Schema utilization module 1006 is adapted to enable utilization of bibliographic information 1002. Examples of schema utilization include creation, modification, interpretation, application, etc. of a schema and/or of information that comports with a schema. Schema utilization module 1006 may be part of (including being a plug-in of) application 208 or another software program (including an OS), or schema utilization module 1006 may be a stand-alone program. Regardless, schema utilization module 1006 may be configured to interact with another program. Such interaction may include, for example, being callable by another program, being a plug-in of another program, calling another program, and so forth.
  • a web service may create an add-on to the "Research and Reference" pane introduced in Microsoft ® Word ® 2003 (available from Microsoft ® Corporation of Redmond, Washington).
  • the web service accepts search criteria and returns matches with bibliographic metadata that conforms to schema 1004.
  • the bibliographic information 1002 may then be inserted into the document 202*.
  • an application 208 that is to present document
  • schema utilization module 1006 may employ schema utilization module 1006 to interpret bibliographic information 1002 in accordance with schema 1004.
  • application 208 may call schema utilization module 1006 so that schema 1004 may be utilized to create a data structure of bibliographic information 1002 that is formulated in accordance with schema 1004.
  • the created data structure of bibliographic information 1002 may be a master list of raw data 204, document-embedded raw data 204, and so forth.
  • application 208 may call schema utilization module 1006 so that schema 1004 may be utilized to modify a data structure of bibliographic information 1002 that is formulated in accordance with schema 1004.
  • a user may input source data for bibliographic information 1002 into document 202* using application 208 (e.g., in conjunction with schema utilization module 1006).
  • the user may input the source data using a window (e.g., a dialog box or similar) having respective fields that are identified as corresponding to respective tagged parts (e.g., title, author, publication date, etc.) of a given source type (e.g., book, periodical article, etc.).
  • Example XML-based source types, along with tagged parts thereof, that may be utilized to create such an input window are described herein below in the section entitled "Extensible Markup Language-Based Descriptions of Source Types for bibliographies and Citations".
  • the input source data may be automatically incorporated into bibliographic information 1002 that is configured in accordance with a schema 1004 for bibliographic information.
  • the bibliographic information 1002 may then be saved as part of document 202* by application 208.
  • an object-oriented programming model is provided to allow for manipulation of bibliographic information 1002 individually or in the context of a document 202* via a set of APIs or object-oriented message calls either directly through one or more APIs or programmatically through other software application programs (e.g., a schema utilization module 1006 that enables manipulation of bibliographic information 1002) that is written according to a variety of programming languages.
  • Such programming languages include, for example C, C++, C#, Visual Basic, and the like.
  • the object- oriented programming model is configured according to that disclosed in U.S. Patent Application Serial No. 11/280,101 (Docket Nos. MSl- 2280US/MS#310673.01), tiled on even date herewith and entitled "Programmable, Object Models for bibliographies and Citations.”;
  • a schema 1004 may be created, interpreted, modified or otherwise utilized by a schema utilization module 1006. Schema 1004 may be utilized by schema utilization module 1006 in accordance with the example bibliographic source schema provided below.
  • the example schema below includes seventeen (17) different bibliographic source types, which are: book, book section, journal article, article in a periodical, conference proceeding, report, sound recording, performance, art, document from an internet site, internet site, film, interview, patent, electronic source, case, and miscellaneous.
  • the example schema is:
  • the seventeen (17) example source types are presented below in an XML format.
  • the XML data tags may be used to populate a dialog box or similar user-input mechanism that is used in a word processing or other text-editing program.
  • the dialog box enables the acquisition of bibliographic source information or raw data for a master list, for document-embedded bibliographic information, and so forth.
  • Each bibliographic source can have a number of pieces of data associated with it, as specifically indicated below by data tags for each respective source type.
  • a user can enter notations for bibliographies and citations that conform to schema 1004.
  • the example notations are separated into seventeen (17) portions with each respective portion corresponding to a respective bibliographic source type.
  • more, fewer, and/or different source types may alternatively be included in a given XML notation set for bibliographies and citations.
  • example source types are primarily directed to respective sets of tagged parts that may correspond to or be associated with respective source types.
  • Each example tagged part is for an attribute of the respective source type and generally includes two sub-tags: a label and a data tag.
  • the source types may be combined into a forms collection.
  • the seventeen (17) example source types are: book, book section, journal article, article in a periodical, conference proceeding, report, sound recording, performance, art, document from an internet site, internet site, film, interview, patent, electronic source, case, and miscellaneous.
  • a book may be cited as a bibliographic source.
  • Example attributes for a book bibliographic source are: Author, Title, Year, City, State/Country, Publisher, Editor, Short Title, Volume, Number of Volumes, Translator, Standard Number, and Comments.
  • An example XML portion for book bibliographic sources is:
  • a book section may be cited as a bibliographic source.
  • Example attributes for a book section bibliographic source are: Author, Title, Book Author, Book Title, Year, Pages, City, State/Country, Publisher, Editor, Translator, Short Title, Volume, Number of volumes, Standard Number, and Comments.
  • An example XML portion for book section bibliographic sources is:
  • journal article may be cited as a bibliographic source.
  • Example attributes for a journal article bibliographic source are: Author, Title, Journal Name, City, Month, Day, Year, Pages, Editor, Publisher, Volume, Issue, Short Title, Standard Number, and Comments.
  • An example XML portion for journal article bibliographic sources is:
  • Source Type #4 Article In A Periodical
  • Example attributes for an article in a periodical bibliographic source are: Author, Title, Periodical Title, City, Month, Day, Year, Pages, Short Title, Editor, Publisher, Edition, Volume, Issue, Standard Number, and Comments.
  • Example attributes for a conference proceeding bibliographic source are: Author, Title, Editor, Pages, Year, Conference Name, City, Publisher, Short Title, Volume, Standard Number, and Comments.
  • a report may be cited as a bibliographic source.
  • Example attributes for a report bibliographic source are: Author, Title, Year, Department, Institution, Publisher, City, Short Title, Pages, Report Type, Standard Number, and Comments.
  • An example XML portion for report bibliographic sources is:
  • a sound recording may be cited as a bibliographic source.
  • Example attributes for a sound recording bibliographic source are: Composer, Conductor, Performer, Artist, Title, Album Title, Produce Name, Production Company, Year, Medium, City, State/Country, Recording Number, Short Title, Standard Number, and Comments.
  • a perfo ⁇ nance may be cited as a bibliographic source.
  • Example attributes for a performance bibliographic source are: Title, Writer, Performer, Producer Name, Production Company, Director, Theater, City, State/Country, Month, Day, Year, Short Title, and Comments.
  • An example XML portion for performance bibliographic sources is:
  • Art may be cited as a bibliographic source.
  • Example attributes for an art bibliographic source are: Artist, Title, Institution, Publication Title, City, State/Country, Publisher, Year, Pages, Short Title, and Comments.
  • An example XML portion for art bibliographic sources is:
  • Source Type #10 Document From Internet Site
  • a document from an internet site may be cited as a bibliographic source.
  • Example attributes for a document-from-an-internet-site bibliographic source are: Author, Title, Editor, Internet Site Title, Producer Name, Production Company, Month, Day, Year, Month Accessed, Day Accessed, Year Accessed, URL, Medium, Version, Short Title, Standard Number, and Comments.
  • An example XML portion for bibliographic sources for documents from internet sites is:
  • An internet site may be cited as a bibliographic source.
  • Example attributes for an internet site bibliographic source are: Author, Title, Internet Site Title, Editor, Producer Name, Production Company, Month, Day, Year, Month Accessed, Day Accessed, Year Accessed, URL, Medium, Version, Short Title, and Comments.
  • An example XML portion for internet site bibliographic sources is:
  • a film may be cited as a bibliographic source.
  • Example attributes for a film bibliographic source are: Title, Performer, Producer Name, Production Company, Director, Country, Distributor, Writer, Medium, Short Title, Year, Standard Number, and Comments.
  • An example XML portion for film bibliographic sources is:
  • An interview may be cited as a bibliographic source.
  • Example attributes for an interview bibliographic source are: Interviewee, Interview Title, Program Title, Interviewer, Month, Day, Year, Publisher, Broadcaster, Station, City, State/Country, Editor, Translator, Compiler, Pages, Short Title, Standard Number, and Comments.
  • An example XML portion for interview bibliographic sources is:
  • a patent may be cited as a bibliographic source.
  • Example attributes for patent bibliographic sources are: Inventor, Title, Month, Day, Year, Country, Type, Patent Number, Short Title, Editor, Translator, and Comments.
  • An example XML portion for patent bibliographic sources is:
  • Source Type #15 Electronic Source
  • An electronic source may be cited as a bibliographic source.
  • Example attributes for a bibliographic source that is from an electronic source are: Author, Title, Publication Title, City, State/Country, Editor, Producer Name, Production Company, Translator, Publisher, Edition, Medium, Volume, Month, Day, Year, Short Title, Standard Number, and Comments.
  • a case may be cited as a bibliographic source.
  • Example attributes for a case bibliographic source are: Author, Title, Year, Case Number, Reporter, Place Published, Court, Month, Day, Year, Counsel, Short Title, Abbreviated Case Number, and Comments.
  • An example XML portion for case bibliographic sources is:
  • a "miscellaneous" source may be cited as a bibliographic source.
  • Example attributes for miscellaneous bibliographic sources are: Author, Title, Publication Title, Month, Day, Year, City, State/Country, Publisher, Editor, Pages, Short Title, Volume, Edition, Issue, Translator, Compiler, Standard Number, and Comments. [0151]
  • An example XML portion for miscellaneous bibliographic sources is:
  • FIGS. 1-10 The devices, actions, aspects, features, functions, procedures, modules, data structures, objects, components, etc. of FIGS. 1-10 are illustrated in diagrams that are divided into multiple blocks. However, the order, interconnections, interrelationships, layout, etc. in which FIGS. 1-10 are described and/or shown is not intended to be construed as a limitation, and any number of the blocks can be modified, combined, rearranged, augmented, omitted, etc. in any manner to implement one or more systems, methods, devices, procedures, media, apparatuses, schemas, APIs, arrangements, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Fields for presentable files (202) can be determined by an application (i) based on a field type (116) and at least one parameter (118) the fields and (ii) responsive to raw data (204) and a separate transformation engine (206), even when the application is unaware of the mechanics of the separate transformation engine (206). In a described implementation for a given field, the field type indicates that the given field is to be evaluated based on raw data that is referenced by the at least one parameter of the given field. The transformation engine is applied to the referenced raw data to produce a result for the given field that is suitable for presentation. Schemas (220) for bibliographies and citations facilitate utilization of bibliographic information. A schema (220) for bibliographic information may be embedded in a document, embodied as a master list, and so forth.

Description

Determining Fields for Presentable Files and Extensible Markup Language Schemas for Bibliographies and
Citations
COPYRIGHT NOTICE
[0001] A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND
[0002] Word processing documents, for example, can include embedded fields. Fields represent a portion of a document that is visibly represented by presentation data based on a field type and at least one field parameter. The presentation data can therefore change in response to changes in the value(s) of the at least one field parameter. There can be different types of fields for different purposes. Examples include a number of pages of a document, a name of the file of the document, the current date/time, a number for a (e.g., paragraph, outline, page, etc.) numbering feature, and so forth.
[0003] When the presentation of a word processing document is updated, the presentation data is likewise updated based on the at least one parameter. For example, if there is a field for a number of pages of a document, each time the document is updated for printing, the current number of pages of the document is inserted as the presentation data at the location of the embedded field. [0004] With existing fields, the at least one field parameter pertains to intrinsically known or determinable information. For instance, the date and/or time is intrinsically known by a computing system. Also, the file name and the internal numbering operations are intrinsically determinable from the document itself. Consequently, existing embedded field technology is relatively limited and inflexible.
[0005] The ability to efficiently work with bibliographic information in conjunction with text-based applications, such as a word processor, is becoming increasingly important, especially in the context of embedded fields. This is particularly true as the number of sources cited within a given document increases and as the number of different types of available sources grows. Examples of text- based applications that may be used to produce documents having citations include word processors, hypertext markup language (html) editors, and so forth.
SUMMARY
[0006] Fields for presentable files can be determined by an application (i) based on a field type and at least one parameter of each of the fields and (ii) responsive to raw data and a transformation engine that is separable from and external to the application, even when the application is unaware of the internal mechanics of the transformation engine. In a described implementation for a given field, the field type indicates that the given field is to be evaluated based on raw data that is referenced by the at least one parameter of the given field. The transformation engine is applied to the referenced raw data to produce a result for the given field that is suitable for presentation. In an example implementation, the transformation engine includes multiples sets of presentation rules that may be selectively established for application to the fields. In an example embodiment, respective presentation rule subsets target respective types of raw data. In an example implementation, the fields comprise bibliographies and citations to bibliographic sources, the raw data comprises bibliographic data for the cited sources, the different sets of presentation rules comprise different bibliographic formatting standards, and the respective types of raw data comprise respective types of sources.
[0007] Extensible markup language schemas for bibliographies and citations facilitate utilization of bibliographic information. For example, a schema utilization module may enable the creation, modification, interpretation, etc. of a schema for bibliographic information. A schema utilization module may be an independent program, part of an application program, and so forth. A schema for bibliographic information defines a framework for bibliographic information. The bibliographic information may be embedded in a document, may be embodied as a master list, and so forth. In a described implementation, the schema for bibliographic information is realized using an open-standard such as extensible markup language (XML). The schema enumerates multiple source types and the data types associated therewith. In another described implementation, employing a schema utilization module in conjunction with a schema for bibliographic information enables bibliographic source information to be created, to be inserted into a document as a citation, to be added to a master list, to be reused later, and so forth.
[0008] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter. Moreover, other method, system, approach, apparatus, device, media, procedure, schema, application programming interface (API), arrangement, etc. implementations are described herein. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The same numbers are used throughout the drawings to reference like and/or corresponding aspects, features, and components.
[0010] FIG. 1 is a block diagram example of a presented file including presentation data resulting from a field.
[0011] FIG. 2 is a block diagram example of a presentable file and an application that is capable of presenting the presentable file using raw data and a transformation engine.
[0012] FIG. 3 is a flow diagram that illustrates an example of a method for presenting a presentable file having an embedded field.
[0013] FIG. 4 is a block diagram of an example interpretation of an embedded field.
[0014] FIG. 5 is a block diagram of an example extraction of raw data for the embedded field.
[0015] FIG. 6 is a block diagram of an example transformation of the extracted raw data.
[0016] FIG. 7 is a block diagram of an example transformation engine.
[0017] FIG. 8 is a block diagram that provides bibliographic-related examples for the more general concepts and terms illustrated in FIGS. 1-7.
[0018] FIG. 9 illustrates an example of a computing (or general device) operating environment that is capable of (wholly or partially) implementing at least one aspect of determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations as described herein.
[0019] FIG. 10 illustrates an example schema that defines a framework for bibliographic information and/or that enables utilization of the bibliographic information. DETAILED DESCRIPTION
INTRODUCTION
[0020] Word processing documents, for example, can include embedded fields. Fields represent a portion of a document that is visibly represented by presentation data based on a field type and at least one field parameter. The presentation data can therefore change in response to changes in the value(s) of the at least one field parameter. There can be different types of fields for different purposes. Examples include a number of pages of a document, a name of the file of the document, the current date/time, a number for a (e.g., paragraph, outline, page, etc.) numbering feature, and so forth.
[0021] When the presentation of a word processing document is updated, the presentation data is likewise updated based on the at least one parameter. For example, if there is a field for a number of pages of a document, each time the document is updated for printing, the current number of pages of the document is inserted as the presentation data at the location of the embedded field. [0022] With existing fields, the at least one field parameter pertains to intrinsically known or determinable information. For instance, the date and/or time are intrinsically known by a computing system. Also, the file name and the internal numbering operations are intrinsically determinable from the document itself. Consequently, existing embedded field technology is relatively limited and inflexible.
[0023] Thus, as described above, conventional embedded field technology is limited to field parameters that are determinable based on predetermined, intrinsic information. On the other hand, schemes, mechanisms, techniques, etc. that are described herein below are directed to determining fields for presentable files in a flexible and/or extensible manner. [0024] In an example described implementation, a field can be a transform reference field type. A transformed reference field type indicates that referenced raw data is to be transformed, and the transformed raw data is then presented as the presentation data result of the field. A set of presentation rules may be selected from a transformation engine so that the referenced raw data is presented in a desired manner.
[0025] The transformation engine is independent of the application presenting the field, and the application is unaware of the specifics of the internal mechanics (e.g., the presentation rules) of the transformation engine. Moreover, a user can independently create or modify a transformation engine without utilizing the application, relying on the application, or even understanding details on how the application is to apply the transformation engine, as long as the created transformation engine adheres to or comports with a schema as promulgated for transformation engines generally. For example, using non-proprietary, open standards such as XML and XSLT enables a user to create, edit, etc. the raw data and the transformation engine, respectively, without involving the application. [0026] Fields of a transform reference field type may be employed in a myriad of contexts. In an example context, a bibliographic feature employs transform reference field type schemes, mechanisms, techniques, etc. Raw data contains one or more bibliographic sources, and the transformation engine includes at least one set of presentation rules. Each presentation rale can implement a documented approach for citing bibliographic sources. Additionally, bibliographies and citations can be quickly repurposed by changing the selected set of presentation rules. This can cause the presentation of each cited bibliographic source to be changed accordingly.
[0027] With certain implementations that are described herein below, bibliographic information may be input once, edited at will, and retrieved for reuse across different documents using open-standard technology, for example. Moreover, creating the bibliographic information in accordance with a schema can enable utilization of the bibliographic information in different environments. In a specific example implementation, extensible markup language schemas for bibliographies and citations are described herein.
[0028] Extensible markup language (XML) is a universal language that provides a way to identify, exchange, and process various kinds of data. For example, XML may be used to create documents that can be utilized by a variety of different application programs. Elements of an XML file typically have an associated namespace and schema.
[0029] A namespace is a unique identifier for a collection of names that are used in XML documents to define element/attribute names and types. The name of a namespace is commonly used to uniquely identify each class of XML document. XML schemata (schema) provide a way to describe and validate data in an XML context. A schema indicates, for example, what elements and attributes are used to describe content in an XML document, where each element is allowed, what types of content are allowed within it, and/or which elements can appear within which other elements. The use of schemas can ensure that documents are structured in a consistent and predictable manner, which facilitates a standard document construction and enables subsequent interpretation of individual documents. [0030] This description is separated into seven additional sections. The third, fifth, sixth, and seventh sections are particularly pertinent to this continuation-in- part patent application. A first section is related to FIGS. 1-3 and is entitled "General Example Implementations for Determining Fields". A second section is related to FIGS. 4-7 and is entitled "Specific Example Implementations for Determining Fields". A third section is related to FIG. 8 and is entitled "Bibliographic-Related Example Implementations for Determining Fields". A fourth section is entitled "Conclusion for Determining Fields". A fifth section references FIG. 9 and is entitled "Example Operating Environment for Computer or Other Device". A sixth section is related to FIG. 10 and is entitled "Extensible Markup Language Schemas for Bibliographies and Citations". The description of the seventh section, which is entitled "Extensible Markup Language-Based Descriptions of Source Types for Bibliographies and Citations", interfaces with the description of the sixth section.
GENERAL EXAMPLE IMPLEMENTATIONS
FOR DETERMINING FIELDS
[0031] FIG. 1 is a block diagram example of a presented file 102 having presentation data 106 resulting from a field 108. In a described implementation, presented file 102 comprises a data stream presentation 104 including presentation data 106. Presented file 102 may be from a presentable file of any type. Example presentable file types include a word processing file, a spreadsheet file, a slideshow file, an email file, a browser file, a multimedia file, some combination thereof, and so forth. Thus, data stream presentation 104 and presentation data 106 may comprise any number of symbols of any kind.
[0032] A data stream construction 110 for field 108 is illustrated. Data stream construction 110 may be represented as { (Field Type) (Field Parameter(s)) | [Result] } . The "Field Type" indicates a field type of many possible field types to which a given field 108 belongs. The "Field Parameter(s)" recite at least one field parameter that serves as an argument for the Field Type. The "Result" symbolizes the result of a function characterized by a Field Type and Field Parameter(s) pair. [0033] By way of example only, the field type may be a paragraph reference number with the field parameter being a pointer to the referenced paragraph having a number. The result is therefore the current paragraph number of the referenced paragraph. For certain field types, the field parameter may be empty or omitted when the field type alone provides information that is sufficient to determine the result.
[0034] A logical construction 112 for field 108 is illustrated as a block diagram. Field 108 includes function information 114 and result 120. Function information 114 includes the pair of field type 116 and one or more parameters 118.
When the function characterized by field type 116 and parameters 118 is evaluated or otherwise determined, result 120 is produced. When presented file 102 is updated, result 120 is presented as presentation data 106 as part of data stream presentation 104.
[0035] FIG. 2 is a block diagram example of a presentable file 202 and an application 208 that is capable of presenting the presentable file 202 using raw data
204 and a transformation engine 206. In a described implementation generally, application 208 determines result 120 of field 108 based on field type 116 and at least one parameter 118 and responsive to raw data 204 and transformation engine
206.
[0036] Presentable file 202 is the origin or underlying information for presented file 102 (of FIG. 1). In other words, the information in presentable file
202 enables an application to create data stream presentation 104 (of FIG. 1) when presentable file 202 is being presented. Presentable file 202 may be presented on a visual screen, on a print out, and so forth.
[0037] As illustrated, presentable file 202 includes data stream information
210 and additional information 212. Data stream presentation 104 is produced primarily from data stream information 210. Additional information 212, if present, contains additional information that is usable for manipulating, presenting, or otherwise utilizing data stream information 210 and/or the overall presentable file
202. For example, additional information 212 may include properties information, a change history, etc. for presentable file 202. Moreover, additional information 212 can contain all or a portion of raw data 204 and/or transformation engine 206 to enhance the portability of presentable file 202, as is described further herein below with particular reference to FIG. 8.
[0038] Raw data 204 and transformation engine 206 are also illustrated in
FIG. 2. Raw data 204 includes data that is to be at least partially presented as presentation data 106 (of FIG. 1) for field 108. Transformation engine 206 includes presentation rules (not explicitly shown in FIG. 2) that transform raw data 204 into result 120. Transformation engine 206, in an example implementation, complies with an open standard so that individual users may elect to modify or augment a transformation engine provided by others or to create a new transformation engine without using application 208 (which may be of any general application type, including a word processing program such as Microsoft® Word from Microsoft® Corporation). Examples of raw data 204 are described further herein below with particular reference to FIGS. 5 and 6, and examples of transformation engine 206 (including presentation rules) are described further herein below with particular reference to FIGS. 6 and 7. Also, the transformation is described further herein below with particular reference to FIGS. 6 and 7.
[0039] Application 208, in a described implementation, includes field interpreter 214, raw data extractor 216, and raw data transformer 218. Field interpreter 214 is capable of interpreting field 108, especially function information 114. Raw data extractor 216 is capable of extracting raw data from raw data 204 in accordance with a parameter 118 that contains a reference to raw data 204. Raw data transformer 218 is capable of transforming the extracted raw data in accordance with one or more presentation rales of transformation engine 206 without being in direct control of the transformation. [0040] Raw data transformer 218 is capable of applying transformation engine 206 to the extracted data of raw data 204 without being aware of the internal mechanics (including the specifics of any included presentation rules) of transformation engine 206. Hence, result 120 of field 108 can be independent of application 208. A schema 220 is known to application 208, and application 208 is adapted to interoperate with transformation engines 206 that adhere to/comport with schema 220. Schema 220 specifies one or more formats for transformation engine 206. Consequently, as long as transformation engine 206 adheres to/comports with schema 220, raw data transformer 218 is capable of applying transformation engine 206 to raw data 204 without being aware of the internal mechanics thereof. It should be understood that application 208 may also be capable of independently interpreting other (e.g., traditional) fields 108 without relying on raw data 204 or a transformation engine 206.
[0041] As illustrated in the example block diagram of FIG. 2, raw data 204 and transformation engine 206 are separate from presentable file 202 and application 208. By way of example, raw data 204 may be a separate file, such as a separate master raw data file. Also, transformation engine 206 may be an independent file, a separate program, a plug-in module, an operating system (OS) feature, and so forth. As noted above, however, all or a portion of raw data 204 and/or transformation engine 206 may alternatively be included as part of additional information 212.
[0042] In fact, in a described implementation, at least a portion of raw data
204 is stored as part of additional information 212, and at least a portion of transformation engine 206 may be utilized by application 208 when transforming referenced raw data 204 to produce result 120. With such an implementation, at least the relevant (e.g., referenced) raw data of raw data 204 is transportable as part of presentable file 202. Consequently, a presentable file 202 may be e.g. emailed to a recipient with the relevant raw data being included as part of presentable file 202. Similarly, if the recipient has an application 208 that is expected to access and properly present presentable file 202, the inclusion of at least a portion of transformation engine 206 as a part of additional information 212 ensures that presentable file 202 can be presented in a manner intended by its creator. [0043] FIG. 3 is a flow diagram 300 that illustrates an example of a method for presenting a presentable file having an embedded field. Flow diagram 300 includes five (5) "primary" blocks 302-310 and six (6) "secondary" blocks. Although the actions of flow diagram 300 may be performed in other environments and with a variety of hardware and software combinations, FIGS. 1 and 2 are used in particular to illustrate certain aspects and examples of the method. By way of example only, the actions of flow diagram 300 may be performed by an application 208 on a presentable file 202 using raw data 204 and transformation engine 206. [0044] At block 302, data stream information of a presentable file is processed until an embedded field is encountered. For example, data stream information 210 of presentable file 202 may be processed into data stream presentation 104 of presented file 102 until a field 108 is encountered. [0045] At block 304, the field is interpreted. For example, field interpreter
214 of application 208 may interpret field 108. More specifically, at block 304(1), a field type is ascertained. For instance, field interpreter 214 may ascertain field type 116 of function information 114. At block 304(2), one or more parameters 118 are acquired. For instance, field interpreter 214 may acquire parameter(s) 118 of function information 114.
[0046] In a described implementation, field type 116 comprises a transform reference field type 116. This indicates to field interpreter 214 that a reference points to raw data, which is to be transformed prior to presentation. Thus, at least one parameter 118 comprises a reference to raw data 204. Another parameter 118 may identify all or part of transformation engine 206. Alternatively, a transformation engine 206 that is to be employed for a presentable file 202 may be identified (and optionally contained) in the additional information 212. As another example, transformation engine 206 may be identified by a global setting that is set by or through application 208.
[0047] At block 306, raw data for the field is extracted. For example, raw data extractor 216 of application 208 may extract raw data for field 108 from raw data 204. More specifically, at block 306(1), raw data is located responsive to acquired parameter(s). For instance, raw data extractor 216 may locate raw data 204, and/or a portion thereof, responsive to at least one parameter 118 that includes a reference to the raw data. At block 306(2), the located raw data is retrieved. For instance, raw data extractor 216 may retrieve the located raw data from raw data 204.
[0048] At block 308, the extracted raw data is transformed. For example, raw data transformer 218 of application 208 may cause the extracted raw data of raw data 204 to be transformed responsive to the separate transformation engine 206. More specifically, at block 308(1), the relevant transformation engine 206 is identified. For instance, raw data transformer 218 may identify the relevant transformation engine 206, and/or the relevant presentation rules thereof, using at least one parameter 118, using a transform identification (e.g., a transformation engine identifier) in additional information 212, using a global setting of application 208, and so forth. At block 308(2), the identified transformation engine is applied to the retrieved raw data. For instance, raw data transformer 218 may apply the identified transformation engine 206, including a set of presentation rules thereof, to the retrieved raw data of raw data 204 to produce result 120. Raw data transformer 218 can cause transformation engine 206 to perform this transformation without knowing any specifics about the contents of transformation engine 206. [0049] At block 310, the transformed raw data, or field result, is presented as part of the data stream presentation of the presented file. For example, application 208 may present result 120, which comprises the transformed raw data, as presentation data 106 for field 108 as part of presented file 102. The actions of flow diagram 300 may be performed in orders that vary from those that are illustrated. For example, the transforming of block 308 may be performed prior to or completely or partially overlapping with the extracting of block 306. Thus, in an example implementation, only those portions of the raw data that are to remain after any filtering need be fully extracted.
SPECIFIC EXAMPLE IMPLEMENTATIONS
FOR DETERMINING FIELDS
[0050] FIG. 4 is a block diagram of an example interpretation of an embedded field 108. In a described implementation, a field 108 includes a field type 116 and at least one parameter 118. As illustrated, field type 116 comprises a transform reference 402 field type, and parameter(s) 118 includes at least a raw data reference 404.
[0051] Field interpreter 214 ascertains that field type 116 is a transform reference field type 402 as indicated by arrow 408. As such, field 108 is determined based on raw data reference 404 and responsive to (i) raw data 204 (of FIG. 2) that is referenced by raw data reference 404 and (ii) transformation engine 206. [0052] Field interpreter 214 provides raw data reference 404 to raw data extractor 216 as indicated by arrow 410. Field interpreter 214 also provides transform identification 406 to raw data transformer 218 as indicated by arrow 412. Three example locations at which transform identification 406 may be found are illustrated. These examples include parameter(s) 118, additional information 212, and application 208. However, transform identification 406 may alternatively be located within or in association with other component(s). Also, raw data transformer 218 may alternatively be capable of independently acquiring transform identification 406 from any location.
[0053] FIG. 5 is a block diagram of an example extraction of raw data 204 for the embedded field. In a described implementation, raw data 204 includes one or more data items 502. As illustrated, raw data 204 includes "k" data items 502(1 ... k): item #1 502(1), item #2 502(2) ... item #k 502(k). Each data item 502 corresponds to a data item type. As shown, data item #1 502(1) corresponds to data item type "Θ", data item #2 502(2) corresponds to data item type "Σ", and data item #k 502(k) also corresponds to data item type "Θ". Data item types are described further herein below with particular reference to FIGS. 6 and 7. [0054] Data items 502 include one or more respective tag fields 504 and associated respective data 506, which are referred to herein as tag-data couplets. As illustrated, data item #k 502(k) includes "n" respective tag fields 504 that are associated with "n" respective data entries 506. In other words, tag field #1 is associated with data entry #1, tag field #2 is associated with data entry #2, tag field #3 is associated with data entry #3, and tag field #n is associated with data entry #n. The manner in which tag fields 504 are utilized by raw data transformer 218 is described further herein below with particular reference to FIG. 6. [0055] As illustrated, raw data reference 404 references data item #k 502(k).
Raw data reference 404 can comprise a link, a pointer, an address, a universal resource locator, a uniform resource locator, some combination thereof, and so forth. Raw data extractor 216 uses raw data reference 404 to locate and then retrieve data item #k 502(k) as indicated by arrow portion 508. Data item #k 502(k), or at least a portion thereof, is then provided to raw data transformer 218 as indicated by arrow portion 510. [0056] FIG. 6 is a block diagram of an example transformation of the extracted raw data 204. In a described implementation, raw data transformer 218 applies data item #k 502(k) to transformation engine 206 as indicated by arrow 604. As illustrated, transformation engine 206 includes a filter, order, and/or format capability 602. The specifics of filter, order, and/or format capability 602 are unknown to raw data transformer 218.
[0057] Filter, order, and/or format capability 602 is adapted so as to filter, order, and/or format data item #k 502(k) with respect to tag fields 504, in accordance with a selected set of presentation rules, and responsive to a data item type of data item #k 502(k). In this example case, the selected set of presentation rules pertaining to data item type "Θ" is applied to data item #k 502(k) because it is of data item type "Θ".
[0058] Generally, presentation rules can stipulate which tag fields 504 are filtered out, how the remaining tag fields 504 are ordered, and how the surviving data entries 506 are formatted. Specifically, tag-data couplets (e.g., respective tag fields 504 that are associated with respective data entries 506) may be filtered, ordered, and/or formatted. More specifically, one or more individual tag-data couplets may be filtered out (e.g., removed and/or excluded from presentation). Also, tag-data couplets may be reordered into a prescribed order. Furthermore, tag- data couplets may be formatted such that the presented text is centered, bolded, italicized, underlined, spaced appropriately, capitalized, punctuated, some combination thereof, and so forth.
[0059] Thus, filter, order, and/or format capability 602 of transformation engine 206 produces result 120, which is presented as presentation data 106. As illustrated in FIG. 6, the tag-data couplets from #1 to #n have been filtered out except for the tag-data couplets #1, #3, and #m as shown at result 120. These couplets have also been re-ordered as follows: tag-data couplet #3, tag-data couplet #1, and tag-data couplet #m.
[0060] The data entries 506 may also be formatted individually or as a group to produce the final appearance for presentation data 106. Although result 120 is shown as including tag fields 504 in addition to data entries 506, result 120 may alternatively be streamlined by omitting tag fields 504 such that result 120 is effectively equivalent to presentation data 106. Consequently, result 120 may be presented as presentation data 106 without first stripping out tag fields 504. [0061] FIG. 7 is a block diagram of an example transformation engine 206. hi a described implementation, transformation engine 206 includes at least one set of presentation rules 702. As illustrated, transformation engine 206 includes four (4) sets of presentation rules 702: presentation rules A 702(A), presentation rules B 702(B), presentation rules C 702(C), and presentation rules D 702(D). However, transformation engine 206 may alternatively have fewer or more than four sets of presentation rules 702.
[0062] With reference to the set of presentation rules A 702(A), there is a different subset 704 of presentation rules for each data item type of multiple data item types. As illustrated, presentation rules A 702(A) includes rule subsets 704 that target data items of type Δ, type Σ, type Θ ... type Ω. The presentation rule subsets 704 for each data item type may include their own set of filter, order, and/or format capability 602. Consequently, data entries 506 that are associated with the same kind of tag field 504 may be filtered, ordered, and/or formatted differently if they are part of data items 502 that correspond to different data item types. This is further explained by way of example in the following section with the bibliographic- related examples.
[0063] Transform identification 406 (of FIG. 4) may identify an individual set of presentation rules 702 of a transformation engine 206. If the set of presentation rules 702 is globally established (e.g., by application 208 or additional information 212), then fields 108 of the transform reference 402 field type are each presented in accordance with the globally established set of presentation rules 702. Alternatively, the set of presentation rules 702 to be used may be established for each field (e.g., with a parameter 118), for each section or area of a file (e.g., also possibly identified in additional information 212), or in any other manner. [0064] Although both sets of presentation rules A and B 702(A and B) as illustrated in the transformation engine 206 of FIG. 7 apparently include the same presentation rule subsets 704, presentation rule subsets 704 may differ. For example, presentation rules C 702(C) does not include a presentation rules subset 704 for data items 502 of type Δ, but it does have a presentation rules subset 704 for data items 502 of type Φ. Also, presentation rules D 702(D) only includes presentation rule subsets 704 for data items 502 of types Δ, Σ, Θ, and T. Furthermore, a presentation rule subset 704 for a given data item type may be exclusive to a single set of presentation rules 702. Other combinations and permutations of presentation rule sets 702 and presentation rule subsets 704 are possible.
BIBLIOGRAPHIC-RELATED EXAMPLE IMPLEMENTATIONS
FOR DETERMINING FIELDS
[0065] An example application for determining fields, in accordance with certain implementations as described herein above, is in a bibliographic context. Bibliographic data for cited sources may be entered once, and the bibliographic data may subsequently be used for footnotes, endnotes, and so forth. A user can retrieve bibliographic data for a citation or bibliography entry to a given source whenever that source data has been entered. [0066] Moreover, cited sources within a presentable file 202 are included within data stream information 210 as fields 108 having a field type 116 of transform reference 402. Accordingly, bibliographic data may be extracted from raw data 204. Additionally, the raw bibliographic data 204 may be transformed in accordance with an established presentation rule 702. The presented file 102 may then be re-purposed merely be selecting a different presentation rule 702. In other words, the user can insert a citation or bibliographic entry, pulling raw data (the source data) and transforming it according to a documentation style such as MLA or APA. After a citation or bibliographic entry is inserted, it can be repurposed by selecting a different documentation style (transform).
[0067] FIG. 8 is a block diagram that provides bibliographic-related examples for the more general concepts and terms illustrated in FIGS. 1-7. The bibliographic- related examples and realizations are annotated in the illustration of FIG. 8 with italicized text. FIG. 8 includes raw data 204 and transformation engine 206. Although raw data 204 may be implemented in various ways, in a described implementation raw data 204 comprises an extensible markup language (XML) file or a portion of a file that is configured in accordance with XML. Similarly, transformation engine 206 comprises an extensible stylesheet language (XSLT) file or a portion of a file that is configured in accordance with XSLT in a described implementation. However, either may be realized using other mechanism(s). Using a non-proprietary, open standard such as XML and XSLT enables a user to create, edit, etc. raw data 204 and/or transformation engine 206 without using application 208.
[0068] Transformation engine 206 (e.g., as an XSLT or other non-proprietary file) is installed and/or called by application 208. However, application 208 need not be used to create or modify a transformation engine 206. Instead, a user may utilize any program that is capable of generating a file that adheres to or comports with the schema 220 that specifies available format(s) for transformation engine 206. Hence, a transformation engine 206 that is generated by an unknown file can be installed and/or called by application 208 to determine fields in presentable files. For example, a word processing program realization of application 208 may install or call any transformation engine 206 that comports with the specified schema 220, regardless of how the transformation engine 206 was created. [0069] In a described implementation, raw data 204 may comprise a master bibliographic data file and/or a portion of additional information 212 of presentable file 202. For example, a user may enter bibliographic data directly into a master file and have cited portions thereof copied into additional information 212. Alternatively, a user may enter bibliographic data directly into additional information 212 (e.g., via an application 208) and have the bibliographic data of the newly-entered citations copied into the master file for subsequent use. As noted above, inclusion of bibliographic data in additional information 212 is an optional implementation.
[0070] Raw data 204 includes at least one data item 502. As illustrated in
FIG. 8, raw data 204 includes data item #k 502(k) of type Θ. In a bibliographic- related implementation, data item #k 502(k) comprises an individual bibliographic source #k that is being cited, and the type Θ comprises a source type such as a book. Other example bibliographic source types include, but are not limited to: periodicals, journals, broadcast programs, conference proceedings, speeches, journal articles, magazine or newspaper articles, sound recordings, performances, theses/dissertations/reports, art works, musical compositions, internet sites, documents from internet sites, and so forth.
[0071] Data item #k 502(k) typically includes multiple entries. Specifically, there are respective data entries 506 that are associated with respective tag fields 504. Tag field #n 504 is shown in this example as a title for the book that is the source for this data item 502. Consequently, the associated data entry #n 506 comprises the actual title of source #k. Although only one tag-data couplet is shown in FIG. 8, there are typically multiple such couplets. Additional example bibliographic-related realizations for tag fields 504 include, but are not limited to: author, publication date, pages, publisher, chapter title, article title, volume, issue, edition, URL, performer, writer, artist, version, director, and so forth. The specific tag fields 504 that are supported may optionally vary by data item type. [0072] In a bibliographic-related implementation, transformation engine 206 comprises one or more bibliographic formatting standards. Thus, each presentation rule 702 may be realized as an individual bibliographic formatting standard. As illustrated, presentation rules A 702(A) is realized as a set of rules that transforms raw bibliographic data into bibliographic data that comports with the American Psychological Association (APA) rules of documentation style. Other example bibliographic-related realizations for presentation rules 702 include, but are not limited to the following bibliographic standards: Modern Language Association (MLA), Chicago Manual of Style, Turabian, Author-Date, and so forth. [0073] In such a bibliographic-related implementation, transformation engine
206 can therefore be an XSLT for MLA, APA, etc. that is installed or called by a word processing application. Other XSLTs for other bibliographic documentation styles can be created by users and then installed or called by the word processing application. Such other transformation engine 206 realizations operate in conjunction with the word processing application as long as they are created so as to adhere to the specified schema 220. The word processing application need not understand the internal mechanics of a transformation engine, and the user need not create or modify the transformation engine with the word processing application. [0074] Because presentation rules 702 tend to differ by source type, each source type has a corresponding item type presentation rule subset 704. Consequently, book citations may be formatted differently from periodical citations. As illustrated, item type Δ 704 is realized as a presentation rules subset 704 of APA that is targeted to transforming raw data for books into book citations that comport with the APA5 and item type Σ is realized as a presentation rules subset 704 of APA that is targeted to transforming raw data for periodicals into periodical citations that comport with the APA.
[0075] In operation, parameters in a presentation rules subset 704 stipulate which tag fields 504 are to be present in result 120 as well as their order. They may also stipulate the appropriate formatting, including capitalization and punctuation. More specifically, the parameters stipulate which ones of data entries 506 are to be presented as presentation data 106 of presented file 102.
CONCLUSION FOR DETERMINING FIELDS
[0076] In a described implementation, a transformation engine is created in accordance with a selected open standard (e.g., XSTL) so as to adhere to a given schema. The given schema is associated with a given application. The given schema specifies a format for transformation engines with which the given application is capable of interoperating.
[0077] Thus, the given application is adapted to apply the transformation engine to fields of a presentable file (e.g., by installing and/or calling the transformation engine). The fields may be determined by the given application based on a field type and at least one parameter of the field, as well as responsive to raw data and the transformation engine. This determination may be effectuated by the application even if the application is unaware of the internal mechanics of the transformation engine.
[0078] The transformation engine may be created, modified, etc. by a user without utilizing the given application. The creation and/or modification is performed such that the resulting transformation engine comports with the given schema. The user may utilize any program that is capable of manipulating files for transformation engines.
[0079] By way of example only, the fields being determined can be bibliographic-related entries for a word processing document. The raw data, which may be formatted in accordance with an open standard such as XML, may include bibliographic-related data. The transformation engine may comprise one or more bibliographic citation styles, such as APA and MLA. A user may create his or her own bibliographic citation style or modify a documented one without utilizing the word processing application. Regardless, the word processing application may determine bibliographic-related fields of the word processing document by applying a transformation engine comprising at least one bibliographic citation style without the word processing application having to understand details of the internal mechanics of the transformation engine.
EXAMPLE OPERATING ENVIRONMENT
FOR COMPUTER OR OTHER DEVICE
[0080] FIG. 9 illustrates an example computing (or general device) operating environment 900 that is capable of (fully or partially) implementing at least one system, device, apparatus, component, arrangement, protocol, approach, method, procedure, media, application programming interface (API), some combination thereof, etc. for determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations as described herein. Operating environment 900 may be utilized in the computer and network architectures described below.
[0081] Example operating environment 900 is only one example of an environment and is not intended to suggest any limitation as to the scope of use or functionality of the applicable device (including computer, network node, entertainment device, mobile appliance, general electronic device, etc.) architectures. Neither should operating environment 900 (or the devices thereof) be interpreted as having any dependency or requirement relating to any one or to any combination of components as illustrated in FIG. 9.
[0082] Additionally, implementations for determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations may be realized with numerous other general purpose or special purpose device (including computing system) environments or configurations. Examples of well known devices, systems, environments, and/or configurations that may be suitable for use include, but are not limited to, personal computers, server computers, thin clients, thick clients, personal digital assistants (PDAs) or mobile telephones, watches, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, video game machines, game consoles, portable or handheld gaming units, network PCs, videoconferencing equipment, minicomputers, mainframe computers, network nodes, distributed or multi-processing computing environments that include any of the above systems or devices, some combination thereof, and so forth.
[0083] Implementations for determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations may be described in the general context of processor-executable instructions. Generally, processor-executable instructions include routines, programs, protocols, objects, functions, interfaces, components, schemas, data structures, etc. that perform and/or enable particular tasks and/or implement particular abstract data types. Realizations of determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations, as described in certain implementations herein, may also be practiced in distributed processing environments where tasks are performed by remotely-linked processing devices that are connected through a communications link and/or network. Especially but not exclusively in a distributed computing environment, processor-executable instructions may be located in separate storage media, executed by different processors, and/or propagated over transmission media.
[0084] Example operating environment 900 includes a general-purpose computing device in the form of a computer 902, which may comprise any (e.g., electronic) device with computing/processing capabilities. The components of computer 902 may include, but are not limited to, one or more processors or processing units 904, a system memory 906, and a system bus 908 that couples various system components including processor 904 to system memory 906. [0085] Processors 904 are not limited by the materials from which they are formed or the processing mechanisms employed therein. For example, processors 904 may be comprised of semiconductor(s) and/or transistors (e.g., electronic integrated circuits (ICs)). In such a context, processor-executable instructions may be electronically-executable instructions. Alternatively, the mechanisms of or for processors 904, and thus of or for computer 902, may include, but are not limited to, quantum computing, optical computing, mechanical computing (e.g., using nanotechnology), and so forth.
[0086] System bus 908 represents one or more of any of many types of wired or wireless bus structures, including a memory bus or memory controller, a point-to- point connection, a switching fabric, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, such architectures may include an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an Enhanced ISA (EISA) bus, a Video Electronics Standards Association (VES A) local bus, a Peripheral Component Interconnects (PCI) bus also known as a Mezzanine bus, some combination thereof, and so forth.
[0087] Computer 902 typically includes a variety of processor-accessible media. Such media may be any available media that is accessible by computer 902 or another (e.g., electronic) device, and it includes both volatile and non- volatile media, removable and non-removable media, and storage and transmission media. [0088] System memory 906 includes processor-accessible storage media in the form of volatile memory, such as random access memory (RAM) 910, and/or non- volatile memory, such as read only memory (ROM) 912. A basic input/output system (BIOS) 914, containing the basic routines that help to transfer information between elements within computer 902, such as during start-up, is typically stored in ROM 912. RAM 910 typically contains data and/or program modules/instructions that are immediately accessible to and/or being presently operated on by processing unit 904.
[0089] Computer 902 may also include other removable/non-removable and/or volatile/non- volatile storage media. By way of example, FIG. 9 illustrates a hard disk drive or disk drive array 916 for reading from and writing to a (typically) non-removable, non-volatile magnetic media (not separately shown); a magnetic disk drive 918 for reading from and writing to a (typically) removable, non- volatile magnetic disk 920 (e.g., a "floppy disk"); and an optical disk drive 922 for reading from and/or writing to a (typically) removable, non-volatile optical disk 924 such as a CD, DVD, or other optical media. Hard disk drive 916, magnetic disk drive 918, and optical disk drive 922 are each connected to system bus 908 by one or more storage media interfaces 926. Alternatively, hard disk drive 916, magnetic disk drive 918, and optical disk drive 922 may be connected to system bus 908 by one or more other separate or combined interfaces (not shown). [0090] The disk drives and their associated processor-accessible media provide non-volatile storage of processor-executable instructions, such as data structures, program modules, and other data for computer 902. Although example computer 902 illustrates a hard disk 916, a removable magnetic disk 920, and a removable optical disk 924, it is to be appreciated that other types of processor- accessible media may store instructions that are accessible by a device, such as magnetic cassettes or other magnetic storage devices, flash memory, compact disks (CDs), digital versatile disks (DVDs) or other optical storage, RAM, ROM, electrically-erasable programmable read-only memories (EEPROM), and so forth. Such media may also include so-called special purpose or hard-wired IC chips. In other words, any processor-accessible media may be utilized to realize the storage media of the example operating environment 900.
[0091] Any number of program modules (or other units or sets of processor- executable instructions) may be stored on hard disk 916, magnetic disk 920, optical disk 924, ROM 912, and/or RAM 910, including by way of general example, an operating system 928, one or more application programs 930, other program modules 932, and program data 934. These processor-executable instructions may include, for example, one or more of: a presentable file 202 having embedded fields 108, raw data 204, a transformation engine 206, an application 208 that is capable of processing embedded fields 108, some combination thereof, and so forth. These processor-executable instructions may further include, for example, a schema, the accessing of a schema, the modifying of a schema, the use of a schema to interpret and/or create a data structure, and so forth.
[0092] A user may enter commands and/or information into computer 902 via input devices such as a keyboard 936 and a pointing device 938 (e.g., a "mouse"). Other input devices 940 (not shown specifically) may include a microphone, joystick, game pad, satellite dish, serial port, video camera, scanner, and/or the like. These and other input devices are connected to processing unit 904 via input/output interfaces 942 that are coupled to system bus 908. However, input devices and/or output devices may instead be connected by other interface and bus structures, such as a parallel port, a game port, a universal serial bus (USB) port, an infrared port, an IEEE 1394 ("Firewire") interface, an IEEE 802.11 wireless interface, a Bluetooth® wireless interface, and so forth.
[0093] A monitor/view screen 944 or other type of display device may also be connected to system bus 908 via an interface, such as a video adapter 946. Video adapter 946 (or another component) may be or may include a graphics card for processing graphics-intensive calculations and for handling demanding display requirements. Typically, a graphics card includes a graphics processing unit (GPU), video RAM (VRAM), etc. to facilitate the expeditious display of graphics and performance of graphics operations. In addition to monitor 944, other output peripheral devices may include components such as speakers (not shown) and a printer 948, which may be connected to computer 902 via input/output interfaces 942.
[0094] Computer 902 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computing device 950. By way of example, remote computing device 950 may be a peripheral device, a personal computer, a portable computer (e.g., laptop computer, tablet computer, PDA, mobile station, etc.), a palm or pocket-sized computer, a watch, a gaming device, a server, a router, a network computer, a peer device, another network node, or another device type as listed above, and so forth. However, remote computing device 950 is illustrated as a portable computer that may include many or all of the elements and features described herein with respect to computer 902. [0095] Logical connections between computer 902 and remote computer 950 are depicted as a local area network (LAN) 952 and a general wide area network (WAN) 954, Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets, the Internet, fixed and mobile telephone networks, ad-hoc and infrastructure wireless networks, mesh networks, other wireless networks, gaming networks, some combination thereof, and so forth. Such networks and logical and physical communications connections are additional examples of transmission media.
[0096] When implemented in a LAN networking environment, computer 902 is usually connected to LAN 952 via a network interface or adapter 956. When implemented in a WAN networking environment, computer 902 typically includes a modem 958 or other component for establishing communications over WAN 954. Modem 958, which may be internal or external to computer 902, may be connected to system bus 908 via input/output interfaces 942 or any other appropriate mechanism(s). It is to be appreciated that the illustrated network connections are examples and that other manners for establishing communication link(s) between computers 902 and 950 may be employed.
[0097] In a networked environment, such as that illustrated with operating environment 900, program modules or other instructions that are depicted relative to computer 902, or portions thereof, may be fully or partially stored in a remote media storage device. By way of example, remote application programs 960 reside on a memory component of remote computer 950 but may be usable or otherwise accessible via computer 902. Also, for purposes of illustration, application programs 930 and other processor-executable instructions such as operating system 928 are illustrated herein as discrete blocks, but it is recognized that such programs, components, and other instructions reside at various times in different storage components of computing device 902 (and/or remote computing device 950) and are executed by processor(s) 904 of computer 902 (and/or those of remote computing device 950). EXTENSIBLE MARKUP LANGUAGE SCHEMAS
FOR BIBLIOGRAPHIES AND CITATIONS
[0098] Example implementations described herein relate generally to extensible markup language (XML) schemas for bibliographies and/or citations. For example, certain implementations may be realized as data structure(s) comprising a schema, including portion(s) of an overall schema, for bibliographic information. Other example implementations may be realized as at least one module that is capable of utilizing a schema for bibliographic information. The data structures, modules, etc. may be embodied on or as part of a processor-accessible media.
[0100] FIG. 10 illustrates an example schema 1004 that defines a framework for bibliographic information 1002 and/or that enables utilization of the bibliographic information by a schema utilization module 1006. As illustrated, FIG. 10 is a block diagram including an application 208, raw data 204, a schema 1004 for bibliographic information, and a schema utilization module 1006. Also illustrated at two example locations is bibliographic information (Bib Info) 1002. [0101] Application 208 provides access to a document 202*. The access may include creating, presenting, modifying, interpreting, etc. document 202*. Application 208 may be, for example, a text-based application such as a word processor, html editor, and so forth. Document 202* is a specific example of a presentable file 202 (of FIG. 2). The bibliographic information 1002 of document 202* may exist as part of embedded fields 108 (of FIG. 1), as part of additional information 212 (of FIG. 2), as part of some other portion of document 202*, some combination thereof, and so forth. Document 202* may be saved according to a variety of different file formats and optionally according to a native programming language of the application 208 with which the document 202* is originally created. [0102] Raw data 204 is described generally herein above. Raw data 204 may be document-embedded, may be part of a master list, and so forth. Document- specific raw data 204 may be embedded as part of document 202*. A bibliographic information file that acts as a master list is discussed herein above with particular reference to FIG. 8 in the section entitled "Bibliographic-Related Example Implementations for Determining Fields".
[0103] Raw data 204 includes bibliographic information 1002. Raw data 204, and thus bibliographic information 1002, may be realized as part of a master list of bibliographic information, as bibliographic information that is embedded in a document (e.g., as shown with respect to document 202*), and so forth. Although not specifically illustrated in FIG. 10, bibliographic information 1002 may also exist at other locations, in other environments and/or contexts, in other formats, and so forth.
[0104] Generally, a raw data 204 master list is a file that includes many bibliographic entries for a user, for an application, for a computing device, some combination thereof, and so forth. Usually, a raw data 204 master list includes bibliographic entries that are used and/or usable across multiple documents 202*. Bibliographic entries may be entered first into a raw data 204 master list and then copied into a document 202*. Alternatively, bibliographic entries may be entered first into a document 202* and then copied into a raw data 204 master list. [0105] In a described implementation, schema 1004 provides a framework for bibliographic information 1002. For example, schema 1004 may define, explain, indicate, describe, etc. the layout, organization, interrelationships, permissible content, etc. of bibliographic information 1002. Schema 1004 may be incorporated as part of schema 220 (of FIG. 2) or as part of another schema, or schema 1004 may exist separately. Schema 1004 enables understanding of raw data 204 having bibliographic information 1002 that exists in accordance with schema 1004. [0106] By way of example only, schema 1004 may comport with an extensible markup language (XML) formatting. A schema defining different source types for an example XML-based schema 1004 for bibliographic information 1002 is set forth and described below. The example schema below defines which bibliographic source types can include which pieces of data. The example schema also defines acceptable data format(s) (e.g., string, integer, a specially-defined type, etc.) for each of the pieces of data.
[0107] Schema utilization module 1006 is adapted to enable utilization of bibliographic information 1002. Examples of schema utilization include creation, modification, interpretation, application, etc. of a schema and/or of information that comports with a schema. Schema utilization module 1006 may be part of (including being a plug-in of) application 208 or another software program (including an OS), or schema utilization module 1006 may be a stand-alone program. Regardless, schema utilization module 1006 may be configured to interact with another program. Such interaction may include, for example, being callable by another program, being a plug-in of another program, calling another program, and so forth. As a specific example, a web service may create an add-on to the "Research and Reference" pane introduced in Microsoft® Word® 2003 (available from Microsoft® Corporation of Redmond, Washington). The web service accepts search criteria and returns matches with bibliographic metadata that conforms to schema 1004. The bibliographic information 1002 may then be inserted into the document 202*. [0108] By way of example, an application 208 that is to present document
202*, which has been previously created by some program, may employ schema utilization module 1006 to interpret bibliographic information 1002 in accordance with schema 1004. As another example, application 208 may call schema utilization module 1006 so that schema 1004 may be utilized to create a data structure of bibliographic information 1002 that is formulated in accordance with schema 1004. The created data structure of bibliographic information 1002 may be a master list of raw data 204, document-embedded raw data 204, and so forth. Additionally, application 208 may call schema utilization module 1006 so that schema 1004 may be utilized to modify a data structure of bibliographic information 1002 that is formulated in accordance with schema 1004.
[0109] In one example, a user may input source data for bibliographic information 1002 into document 202* using application 208 (e.g., in conjunction with schema utilization module 1006). The user may input the source data using a window (e.g., a dialog box or similar) having respective fields that are identified as corresponding to respective tagged parts (e.g., title, author, publication date, etc.) of a given source type (e.g., book, periodical article, etc.). Example XML-based source types, along with tagged parts thereof, that may be utilized to create such an input window are described herein below in the section entitled "Extensible Markup Language-Based Descriptions of Source Types for Bibliographies and Citations". The input source data may be automatically incorporated into bibliographic information 1002 that is configured in accordance with a schema 1004 for bibliographic information. The bibliographic information 1002 may then be saved as part of document 202* by application 208.
[0110] In some implementations, an object-oriented programming model is provided to allow for manipulation of bibliographic information 1002 individually or in the context of a document 202* via a set of APIs or object-oriented message calls either directly through one or more APIs or programmatically through other software application programs (e.g., a schema utilization module 1006 that enables manipulation of bibliographic information 1002) that is written according to a variety of programming languages. Such programming languages include, for example C, C++, C#, Visual Basic, and the like. Jn one example, the object- oriented programming model is configured according to that disclosed in U.S. Patent Application Serial No. 11/280,101 (Docket Nos. MSl- 2280US/MS#310673.01), tiled on even date herewith and entitled "Programmable, Object Models for Bibliographies and Citations.";
Example XML-Based Schema for Bibliographies and Citations [0111] As described above, a schema 1004 may be created, interpreted, modified or otherwise utilized by a schema utilization module 1006. Schema 1004 may be utilized by schema utilization module 1006 in accordance with the example bibliographic source schema provided below.
[0112] Thus, the following is a description of an example schema associated with XML notations for bibliographies and citations. Although a specific example schema is set forth below, more, fewer, and/or different source types may alternatively be included in a given XML schema for bibliographies and citations. Furthermore, different interrelationships and data types may alternatively be defined by such a schema.
[0113] The example schema below includes seventeen (17) different bibliographic source types, which are: book, book section, journal article, article in a periodical, conference proceeding, report, sound recording, performance, art, document from an internet site, internet site, film, interview, patent, electronic source, case, and miscellaneous. The example schema is:
<?xml version="1.0" encoding="utf-8" ?> <xsd:simpleType name="String255"> <xsd:restriction base="xsd:string"> <xsd:minLength value="0" /> <xsd:maxLength value="255" /> </xsd:restriction> </xsd: simpleType> <xsd:complexType name="NameListType"> <xsd:sequence>
<xsd:choice minOccurs="0" maxθccurs="unbounded">
<xsd: element name="NameList" minθccurs="l" maxθccurs="l"> <xsd:complexType> <xsd:sequence> <xsd:complexTyρe> <xsd:sequence>
<xsd:choice minOccuis^O11 maxθccuis="unbounded"> <xsd:elementname="Last" type="String255" /> /> <xsd:elementname="Middle" </xsd:choice> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:elemen1> </xsd:choice> </xsd: sequence> </xsd:complexType> <xsd: complexType name=" SourceType"> <xsd:sequence>
<xsd:choice minOccurs="0" maxθccurs="unbounded">
<xsd:element name="AbbreviatedCaseNumber" type="String255" /> <xsd:element name="AlbumTitle" type="String255" /> <xsd:element name=" Artist" type="NameListType" /> <xsd:element name=" Author" type="NameListType" /> <xsd:element name="BookAuthor" type="NameListType" /> <xsd:element name="BookTitle" type="String255" /> <xsd:element name="CaseNumber" type="String255" /> <xsd: element name="City" type="String255" /> <xsd:element name="Comments" type="String255" /> <xsd:element name="Compiler" type="NameListType" /> <xsd: element name="Composer" type="NameListType" /> <xsd: element name=" Conductor" type="NameListType" /> <xsd:element name="ConferenceName" 1ype="String255" /> <xsd: element name="Counsel" type="NameListType" /> <xsd:element name="Country" type="String255" /> <xsd:element name="Court" type="String255" /> <xsd: element name="Day" type="String255" /> <xsd:element name="Day Accessed" type="String255" /> <xsd: element name="Department" type="String255" /> <xsd:element name="Director" type="NameListType" /> <xsd: element name="Distributor" type="String255" /> <xsd: element name="Edition" type="String255" /> <xsd:element name="Editor" type="NameListType" /> <xsd:element name="Institution" type="String255" /> <xsd: element name="Interviewee" type="NameListType" /> <xsd: element name="Inventor" type="NameListType" /> <xsd:element name="Issue" type=="String255" /> <xsd: element name="JournalName" type="String255" /> <xsd: element name="MagOrNewsName" type="String255" /> <xsd:element name="Manufacturer" type="String255" /> <xsd: element name="Medium" type="String255" /> <xsd: element name="Month" type="String255" /> <xsd:element name="MonthAccessed" type="String255" /> <xsd: element name="NumberVolumes" /> <xsd:element name- 'Pages" type="String255" /> <xsd:element name="PatentNumber" type="String255" /> <xsd: element name="Performer" type- 'NameListType" /> <xsd: element name="PlacePublished" type="String255" /> <xsd: element name="Producer" type="String255" /> <xsd: element name="ProducerName" type="NameListType" /> <xsd: element name- 'Publisher" type="String255" /> <xsd:element name="Reporter" type="NameListType" /> <xsd: element name="ShortTitle" type="String255" /> <xsd:element name- "Theater" type="String255" /> <xsd:element name="ThesisType" type="String255" /> <xsd:element name="Title" type="String255" /> <xsd: element name="Translator" type- 'NameListType" /> <xsd:element name="Type" type="String255" /> <xsd:element name="URL" type="String255" /> <xsd: element name=" Version" type="String255" /> <xsd:element name="Volume" type="String255" /> <xsd:element name="Writer" type="NameListType" /> <xsd:element name="Year" type="String255" /> <xsd:element name="YearAccessed" type="String255" /> </xsd:choice> </xsd:sequence>
<xsd:attribute name="type" use="optional" default="Book"> <xsd: simpleType>
<xsd:restriction base="String255"> <xsd: enumeration value="Book" /> <xsd:enumeration value="BookSection" /> <xsd:enumeration value="JournalArticle" /> <xsd:enumeration value="MagOrNewsArticle" /> <xsd: enumeration value="ConferenceProceedings" /> <xsd:enumeration value="Report" /> <xsd: enumeration value="SoundRecording" /> <xsd:enumeration value=" Performance" /> <xsd:enumeration value="Art" /> <xsd: enumeration value="DocumentFromInternetSite" /> <xsd: enumeration value="InternetSite" /> <xsd:enumeration value="Film" /> <xsd: enumeration value=" Interview" /> <xsd: enumeration value="Patent" /> <xsd: enumeration value="ElectronicSource" /> <xsd:enumeration value="Case" /> <xsd: enumeration value="Misc" /> </xsd:restriction> </xsd: simpleType> </xsd:attribute> </xsd:complexType> <xsd: element name="Bibliography"> <xsd: complexType> <xsd:sequence>
<xsd:element name="Source" type="SourceType" minθccurs="l" maxθccurs="unbounded" /> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema>
EXTENSIBLE MARKUP LANGUAGE-BASED
DESCRIPTIONS OF SOURCE TYPES FOR BIBLIOGRAPHIES AND CITATIONS
[0114] Example implementations for source types are described below.
Although other formats may alternatively be used, the seventeen (17) example source types are presented below in an XML format. By way of example only, the XML data tags may be used to populate a dialog box or similar user-input mechanism that is used in a word processing or other text-editing program. The dialog box enables the acquisition of bibliographic source information or raw data for a master list, for document-embedded bibliographic information, and so forth. Each bibliographic source can have a number of pieces of data associated with it, as specifically indicated below by data tags for each respective source type. [0115] Thus, the following is a description of example XML that can be used to power a dialog box in an application 208. A user can enter notations for bibliographies and citations that conform to schema 1004. The example notations are separated into seventeen (17) portions with each respective portion corresponding to a respective bibliographic source type. However, more, fewer, and/or different source types may alternatively be included in a given XML notation set for bibliographies and citations.
[0116] The description below of example source types is primarily directed to respective sets of tagged parts that may correspond to or be associated with respective source types. Each example tagged part is for an attribute of the respective source type and generally includes two sub-tags: a label and a data tag.
The source types may be combined into a forms collection.
[0117] The seventeen (17) example source types are: book, book section, journal article, article in a periodical, conference proceeding, report, sound recording, performance, art, document from an internet site, internet site, film, interview, patent, electronic source, case, and miscellaneous.
Source Type #1: Book
[0118] A book may be cited as a bibliographic source. Example attributes for a book bibliographic source are: Author, Title, Year, City, State/Country, Publisher, Editor, Short Title, Volume, Number of Volumes, Translator, Standard Number, and Comments. [0119] An example XML portion for book bibliographic sources is:
<Source type="Book" display="Book"> <Tag>
<Label>Author</Label>
<DataTag>b:Author/b:Author/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Title</Label>
<DataTag>b:Title</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b : Year</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>State/Country</Label>
<DataTag>b:StateOrCountry</DataTag> </Tag> <Tag>
<Label>Publisher</Label>
<DataTag>b:Publisher</DataTag> </Tag> <Tag>
<Label>Editor</Label>
<DataTag>b:Author/b:Editor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Volume</Label>
<DataTag>b:Volume</DataTag> </Tag> <Tag>
<Label>Number of volumes</Label>
<DataTag>b-.NumberVolumes</DataTag> </Tag>
<Tag>
<Label>Translator</Label>
<DataTag>b:Author/b:Translator/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Standard Number</Label> <DataTag>b:StandardNumber</DataTag>
</Tag>
<Tag>
<Label>Comments</Label> <DataTag>b-.Comments</DataTag>
</Tag> </Source>
Source Type #2: Book Section
[0120] A book section may be cited as a bibliographic source. Example attributes for a book section bibliographic source are: Author, Title, Book Author, Book Title, Year, Pages, City, State/Country, Publisher, Editor, Translator, Short Title, Volume, Number of volumes, Standard Number, and Comments. [0121] An example XML portion for book section bibliographic sources is:
<Source type="BookSection" display="Book Section"> <Tag>
<Label>Author</Label>
<DataTag>b:Author/b-.Author/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Title</Label>
<DataTag>b:Title</DataTag> </Tag> <Tag>
<Label>Book Author</Label>
<DataTag>b:Author/b:BookAuthor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Book Title</Label>
<DataTag>b:BookTitle</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Pages</Label>
<DataTag>b:Pages</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>State/Country</Label>
<DataTag>b:StateOrCountry</DataTag> </Tag> <Tag>
<Label>Publisher</Label>
<DataTag>b:Publisher</DataTag> </Tag> <Tag>
<Label>Editor</Label>
<DataTag>b:Author/b:Editor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Translator</Label>
<DataTag>b:Author/b:Translator/b:NameList</DataTag>
<ToString>Authoi2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Volume</Label>
<DataTag>b:Volume</DataTag> </Tag> <Tag>
<Label>Number of volumes</Label>
<DataTag>b:NumberVolumes</DataTag> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b:StandardNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #3; Journal Article
[0122] A journal article may be cited as a bibliographic source. Example attributes for a journal article bibliographic source are: Author, Title, Journal Name, City, Month, Day, Year, Pages, Editor, Publisher, Volume, Issue, Short Title, Standard Number, and Comments. [0123] An example XML portion for journal article bibliographic sources is:
<Source type=" JournalArticle" display="Journal Article"> <Tag>
<Label>Author</Label>
<DataTag>b:Author/b:AuthoϋTj:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Title</Label>
<DataTag>b:Title</DataTag> </Tag> <Tag>
<Label> Journal Name</Label>
<DataTag>b:JournalName</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>Month</Label>
<DataTag>b:Month</DataTag> </Tag> <Tag>
<Label>Day</Label>
<DataTag>b:Day</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Pages</Label>
<DataTag>b:Pages</DataTag> </Tag> <Tag>
<Label>Editor</Label>
<DataTag>b:Author/b:Editor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Publisher</Label>
<DataTag>b :Publisher</DataTag> </Tag> <Tag>
<Label>Volume</Label>
<DataTag>b:Volume</DataTag> </Tag> <Tag>
<Label>Issue</Label>
<DataTag>b:Issue</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b:StandardNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #4: Article In A Periodical
[0124] An article in a periodical may be cited as a bibliographic source.
Example attributes for an article in a periodical bibliographic source are: Author, Title, Periodical Title, City, Month, Day, Year, Pages, Short Title, Editor, Publisher, Edition, Volume, Issue, Standard Number, and Comments.
[0125] An example XML portion for article-in-a-periodical bibliographic sources is:
<Source type="ArticleInAPeriodical" display=" Article in a Periodical"> <Tag>
<Label>Author</Label>
<DataTag>b:Author/b:Author/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Title</Label>
<DataTag>b:Title</DataTag> </Tag> <Tag> <Label>Periodical Title</Label>
<DataTag>b:PeriodicalTitle</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>Month</Label>
<DataTag>b:Month</DataTag> </Tag> <Tag>
<Label>Day</Label>
<DataTag>b :Day</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Pages</Label>
<DataTag>b:Pages</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b : ShortTitle</DataTag> </Tag> <Tag>
<Label>Editor</Label>
<DataTag>b:Autho^:Editor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag> <Label>Publisher</Label>
<DataTag>b:Publisher</DataTag> </Tag> <Tag>
<Label>Edition</Label>
<DataTag>b:Edition</DataTag> </Tag> <Tag>
<Label>Volume</Label>
<DataTag>b:Volume</DataTag> </Tag> <Tag>
<Label>Issue</Label>
<DataTag>b:Issue</DataTag> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b:StandardNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #5: Conference Proceedings
[0126] Conference proceedings may be cited as a bibliographic source.
Example attributes for a conference proceeding bibliographic source are: Author, Title, Editor, Pages, Year, Conference Name, City, Publisher, Short Title, Volume, Standard Number, and Comments.
[0127] An example XML portion for conference proceeding bibliographic sources is: <Source type="ConferenceProceedings" display=" Conference
Proceedings1^
<Tag>
<Label>Author</Label>
<DataTag>b:Author/b:Autho^:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Title</Label>
<DataTag>b:Title</DataTag> </Tag> <Tag>
<Label>Editor</Label>
<DataTag>b:Author/b:Edito^:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Pages</Label>
<DataTag>b:Pages</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Conference Name</Label>
<DataTag>b:ConferenceName</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>Publisher</Label>
<DataTag>b:Publisher</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Volume</Label>
<DataTag>b:Volume</DataTag> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b:StandardNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #6: Report
[0128] A report may be cited as a bibliographic source. Example attributes for a report bibliographic source are: Author, Title, Year, Department, Institution, Publisher, City, Short Title, Pages, Report Type, Standard Number, and Comments. [0129] An example XML portion for report bibliographic sources is:
<Source type- 'Report" display="Report"> <Tag>
<Label>Author</Label> <DataTag>b:Author/b:Author/b:NameList</DataTag> <ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Title</Label>
<DataTag>b:Title</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Department</Label>
<DataTag>b:Department</DataTag> </Tag> <Tag>
<Label>Institution</Label>
<DataTag>b:Institution</DataTag> </Tag> <Tag>
<Label>Publisher</Label>
<DataTag>b:Publisher</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Pages</Label>
<DataTag>b:Pages</DataTag> </Tag>
<Tag>
<Label>Report Type</Label> <DataTag>b:ThesisType</DataTag>
</Tag>
<Tag>
<Label>Standard Number</Label> <DataTag>b:StandardNumber</DataTag>
</Tag>
<Tag>
<Label>Comments</Label> <DataTag>b:Comments</DataTag>
</Tag> </Source>
Source Type #7: Sound Recording
[0130] A sound recording may be cited as a bibliographic source. Example attributes for a sound recording bibliographic source are: Composer, Conductor, Performer, Artist, Title, Album Title, Produce Name, Production Company, Year, Medium, City, State/Country, Recording Number, Short Title, Standard Number, and Comments.
[0131] An example XML portion for sound recording bibliographic sources is:
<Source type="SoundRecording" display="Sound Recording"> <Tag>
<Label>Composer</Label>
<DataTag>b:Author/b:Composer/b:NameList</DataTag> <ToString>Author2String.XSL</ToString> <ToXML>Author2XML.XSL</ToXML> <Author>Yes</Author> </Tag> <Tag>
<Label>Conductor</Label>
<DataTag>b:Author/b:Conductor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Performer</Label>
<DataTag>b:Autho^:Performer/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Artist</Label>
<DataTag>b:Author/b:Artist/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Title</Label> <DataTag>b:Title</DataTag>
</Tag>
<Tag>
<Label>Album Title</Label> <DataTag>b:AlbumTitle</DataTag>
</Tag>
<Tag>
<Label>Producer Name</Label>
<DataTag>b:Author/b:ProducerName/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString> <ToXML>Author2XML.XSL</ToXML> <Author>Yes</Author> </Tag> <Tag>
<Label>Production Company</Label>
<DataTag>b:ProductionCompany</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Medium</Label>
<DataTag>b:Medium</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>State/Country</Label>
<DataTag>b:StateOrCountry</DataTag> </Tag> <Tag>
<Label>Recording Number</Label>
<DataTag>b:RecordingNumber</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b:StandardNumber</DataTag> </Tag> <Tag> <Label>Comments</Label> <DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #8: Perfoπnance
[0132] A perfoπnance may be cited as a bibliographic source. Example attributes for a performance bibliographic source are: Title, Writer, Performer, Producer Name, Production Company, Director, Theater, City, State/Country, Month, Day, Year, Short Title, and Comments. [0133] An example XML portion for performance bibliographic sources is:
<Source type="Performance" display="Performance">
<Tag>
<Label>Title</Label> <DataTag>b:Title</DataTag>
</Tag>
<Tag>
<Label>Writer</Label>
<DataTag>b:Author/b:Writer/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Performer</Label>
<DataTag>b:AuthorΛ:Performer^NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag> <Label>Producer Name</Label>
<DataTag>b:Author/b:ProducerName/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Production Company</Label> <DataTag>b:ProductionCompany</DataTag>
</Tag>
<Tag>
<Label>Director</Label>
<DataTag>b:Author/b:Director/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Theater</Label> <DataTag>b:Theater</DataTag>
</Tag>
<Tag>
<Label>City</Label> <DataTag>b:City</DataTag>
</Tag>
<Tag>
<Label>State/Country</Label> <DataTag>b:StateOrCountry</DataTag>
</Tag>
<Tag>
<Label>Month</Label> <DataTag>b:Month</DataTag>
</Tag>
<Tag> <Label>Day</Label>
<DataTag>b:Day</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #9: Art
[0134] Art may be cited as a bibliographic source. Example attributes for an art bibliographic source are: Artist, Title, Institution, Publication Title, City, State/Country, Publisher, Year, Pages, Short Title, and Comments. [0135] An example XML portion for art bibliographic sources is:
<Source type="Art" displays" Art" >
<Tag>
<Label>Artist</Label>
<DataTag>b:Author/b:Artist/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Title</Label> <DataTag>b:Title</DataTag> </Tag> <Tag>
<Label>Institution</Label>
<DataTag>b:Institution</DataTag> </Tag> <Tag>
<Label>Publication Title</Label>
<DataTag>b:PublicationTitle</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>State/Country</Label>
<DataTag>b:StateOrCountry</DataTag> </Tag> <Tag>
<Label>Publisher</Label>
<DataTag>b:Publisher</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Pages</Label>
<DataTag>b:Pages</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitIe</DataTag> </Tag> <Tag> <Label>Comments</Label> <DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #10: Document From Internet Site
[0136] A document from an internet site may be cited as a bibliographic source. Example attributes for a document-from-an-internet-site bibliographic source are: Author, Title, Editor, Internet Site Title, Producer Name, Production Company, Month, Day, Year, Month Accessed, Day Accessed, Year Accessed, URL, Medium, Version, Short Title, Standard Number, and Comments. [0137] An example XML portion for bibliographic sources for documents from internet sites is:
<Source rype="DocumentFromInternetSite" display="Document From Internet Site">
<Tag>
<Label>Author</Label>
<DataTag>b:AuthorΛ:Author/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Title</Label> <DataTag>b:Title</DataTag>
</Tag>
<Tag>
<Label>Editor</Label>
<DataTag>b:Author/b:EditorΛ:NameList</DataTag> <ToString>Author2String.XSL</ToString> <ToXML>Author2XML.XSL</ToXML> <Author>Yes</Author> </Tag> <Tag>
<Label>Intemet Site Title</Label>
<DataTag>b:IntemetSiteTitle</DataTag> </Tag> <Tag>
<Label>Producer Name</Label>
<DataTag>b:Author/b:ProducerName/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Production Company</Label>
<DataTag>b:ProductionCompany</DataTag> </Tag> <Tag>
<Label>Month</Label>
<DataTag>b:Month</DataTag> </Tag> <Tag>
<Label>Day</Label>
<DataTag>b:Day</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Month Accessed</Label>
<DataTag>b:MonthAccessed</DataTag> </Tag> <Tag> <Label>Day Accessed</Label>
<DataTag>b:DayAccessed</DataTag> </Tag> <Tag>
<Label>Year Accessed</Label>
<DataTag>b:YearAccessed</DataTag> </Tag> <Tag>
<Label>URL</Label>
<DataTag>b:URL</DataTag> </Tag> <Tag>
<Label>Medium</Label>
<DataTag>b:Medium</DataTag> </Tag> <Tag>
<Label>Version</Label>
<DataTag>b:Version</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b:StandardNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source> Source Type #11: Internet Site
[0138] An internet site may be cited as a bibliographic source. Example attributes for an internet site bibliographic source are: Author, Title, Internet Site Title, Editor, Producer Name, Production Company, Month, Day, Year, Month Accessed, Day Accessed, Year Accessed, URL, Medium, Version, Short Title, and Comments. [0139] An example XML portion for internet site bibliographic sources is:
<Source type="InternetSite" display="Internet Site">
<Tag>
<Label>Author</Label>
<DataTag>b:Author/b:Autho^:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Title</Label> <DataTag>b:Title</DataTag>
</Tag>
<Tag>
<Label>Internet Site Title</Label> <DataTag>b:InternetSiteTitle</DataTag>
</Tag>
<Tag>
<Label>Editor</Label>
<DataTag>b:Author/b:Editor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Producer Name</Label> <DataTag>b:Author/b:ProducerName/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Production Company</Label> <DataTag>b:ProductionCompany</DataTag>
</Tag>
<Tag>
<Label>Month</Label> <DataTag>b:Month</DataTag>
</Tag>
<Tag>
<Label>Day</Label> <DataTag>b:Day</DataTag>
</Tag>
<Tag>
<Label>Year</Label> <DataTag>b:Year</DataTag>
</Tag>
<Tag>
<Label>Month Accessed</Label> <DataTag>b:MonthAccessed</DataTag>
</Tag>
<Tag>
<Label>Day Accessed</Label> <DataTag>b:DayAccessed</DataTag>
</Tag>
<Tag>
<Label>Year Accessed</Label> <DataTag>b:YearAccessed</DataTag>
</Tag>
<Tag> <Label>URL</Label>
<DataTag>b:URL</DataTag> </Tag> <Tag>
<Label>Medium</Label>
<DataTag>b:Medium</DataTag> </Tag> <Tag>
<Label>Version</Label>
<DataTag>b:Version</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Cotnments</DataTag> </Tag> </Source>
Source Type #12: Film
[0140] A film may be cited as a bibliographic source. Example attributes for a film bibliographic source are: Title, Performer, Producer Name, Production Company, Director, Country, Distributor, Writer, Medium, Short Title, Year, Standard Number, and Comments. [0141] An example XML portion for film bibliographic sources is:
<Source type="Film" display="Film"> <Tag>
<Label>Title</Label> <DataTag>b:Title</DataTag> </Tag>
<Tag>
<Label>Perfbrmer</Label>
<DataTag>b:Author/b:Peiformer/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Producer Name</Label>
<DataTag>b:Author/b:ProducerName/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Production Company</Label> <DataTag>b:ProductionCompany</DataTag>
</Tag>
<Tag>
<Label>Director</Label>
<DataTag>b:Author/b:Director/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Coutitry</Label> <DataTag>b:Country</DataTag>
</Tag>
<Tag>
<Label>Distributor</Label> <DataTag>b:Distributor</DataTag>
</Tag> <Tag>
<Label>Writer</Label>
<DataTag>b:Author/b:Writer/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Medium</Label>
<DataTag>b:Medium</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b: ShortTitle</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b:StandardNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #13: Interview
[0142] An interview may be cited as a bibliographic source. Example attributes for an interview bibliographic source are: Interviewee, Interview Title, Program Title, Interviewer, Month, Day, Year, Publisher, Broadcaster, Station, City, State/Country, Editor, Translator, Compiler, Pages, Short Title, Standard Number, and Comments. [0143] An example XML portion for interview bibliographic sources is:
<Source type="Interview" disρlay="Interview">
<Tag>
<Label>Interviewee</Label>
<DataTag>b:Author/b:Interviewee/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Interview Title</Label> <DataTag>b:InterviewTitle</DataTag>
</Tag>
<Tag>
<Label>Program Title</Label> <DataTag>b:ProgramTitle</DataTag>
</Tag>
<Tag>
<Label>Interviewer</Label>
<DataTag>b:Author/b:Interviewer/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Month</Label> <DataTag>b:Month</DataTag>
</Tag>
<Tag>
<Label>Day</Label> <DataTag>b:Day</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Publisheτ</Label>
<DataTag>b:Publisher</DataTag> </Tag> <Tag>
<Label>Broadcaster</Label>
<DataTag>b:Broadcaster</DataTag> </Tag> <Tag>
<Label>Station</Label>
<DataTag>b: Station</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>State/Country</Label>
<DataTag>b:StateOrCountry</DataTag> </Tag> <Tag>
<Label>Editor</Label>
<DataTag>b:Autho^:Editor/b:NameList</DataTag>
<ToString>Authot2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Translator</Label>
<DataTag>b:AuthorA):Translator/b:NameList</DataTag> <ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>CompileK/Label>
<DataTag>b:Author/b:Compile^:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Pages</Label>
<DataTag>b:Pages</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b: ShortTitle</DataTag> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b:StandardNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #14: Patent
[0144] A patent may be cited as a bibliographic source. Example attributes for patent bibliographic sources are: Inventor, Title, Month, Day, Year, Country, Type, Patent Number, Short Title, Editor, Translator, and Comments. An example XML portion for patent bibliographic sources is:
<Source type="Patent" display="Patent"> <Tag>
<Label>Inventor</Label>
<DataTag>b:Author/b:Inventor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Title</Label>
<DataTag>b:Title</DataTag> </Tag> <Tag>
<Label>Month</Label>
<DataTag>b:Month</DataTag> </Tag> <Tag>
<Label>Day</Label>
<DataTag>b:Day</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Country</Label>
<DataTag>b:Country</DataTag> </Tag> <Tag>
<Label>Type</Label>
<DataTag>b:Type</DataTag> </Tag> <Tag> <Label>Patent Number</Label> <DataTag>b:PatentNumber</DataTag>
</Tag>
<Tag>
<Label>Short Title</Label> <DataTag>b;ShortTitle</DataTag>
</Tag>
<Tag>
<Label>Editor</Label>
<DataTag>b:Author/b:Editor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Translator</Label>
<DataTag>b:Author/b:Translator/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Comments</Label> <DataTag>b :Comments</DataTag>
</Tag> </Source>
Source Type #15: Electronic Source
[0146] An electronic source may be cited as a bibliographic source. Example attributes for a bibliographic source that is from an electronic source are: Author, Title, Publication Title, City, State/Country, Editor, Producer Name, Production Company, Translator, Publisher, Edition, Medium, Volume, Month, Day, Year, Short Title, Standard Number, and Comments.
[0147] An example XML portion for electronic source bibliographic sources is:
<Source type="ElectronicSource" display="Electronic Source">
<Tag>
<Label>Author</Label>
<DataTag>b:Author/b:Author/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author>
</Tag>
<Tag>
<Label>Title</Label> <DataTag>b:Title</DataTag>
</Tag>
<Tag>
<Label>Publication Title</Label> <DataTag>b:PublicationTitle</DataTag>
</Tag>
<Tag>
<Label>City</Label> <DataTag>b:City</DataTag>
</Tag>
<Tag>
<Label>State/Country</Label> <DataTag>b:StateOrCountry</DataTag>
</Tag>
<Tag>
<Label>Editor</Label>
<DataTag>b:Author/b:Editor/b:NameList</DataTag> <ToString>Author2String.XSL</ToString> <ToXML>Author2XML.XSL</ToXML> <Author>Yes</Author> </Tag> <Tag>
<Label>Producer Name</Label>
<DataTag>b:Author/b:ProducerName/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Production Company</Label>
<DataTag>b:ProductionCompany</DataTag> </Tag> <Tag>
<Label>Translator</Label>
<DataTag>b:Author/b:Translator/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Publisher</Label>
<DataTag>b:Publisher</DataTag> </Tag> <Tag>
<Label>Edition</Label>
<DataTag>b:Edition</DataTag> </Tag> <Tag>
<Label>Medium</Label>
<DataTag>b:Medium</DataTag> </Tag> <Tag>
<Label>Volume</Label> <DataTag>b:Volume</DataTag> </Tag> <Tag>
<Label>Month</Label>
<DataTag>b:Month</DataTag> </Tag> <Tag>
<Label>Day</Label>
<DataTag>b:Day</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b : StandardNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #16: Case
[0148] A case may be cited as a bibliographic source. Example attributes for a case bibliographic source are: Author, Title, Year, Case Number, Reporter, Place Published, Court, Month, Day, Year, Counsel, Short Title, Abbreviated Case Number, and Comments. [0149] An example XML portion for case bibliographic sources is:
<Source type="Case" display="Case"> <Tag>
<Label>Author</Label>
<DataTag>b:Author/b:Author/b:NameList</DataTag>
<ToString>Autlior2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Title</Label>
<DataTag>b:Title</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>Case Number</Label>
<DataTag>b:CaseNumber</DataTag> </Tag> <Tag>
<Label>Reporter</Label>
<DataTag>b:Author/b:ReporterA3:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Place Published</Label>
<DataTag>b:City</DataTag> </Tag> <Tag>
<Label>Court</Label>
<DataTag>b:Court</DataTag> </Tag> <Tag>
<Label>Month</Label>
<DataTag>b:Month</DataTag> </Tag> <Tag>
<Label>Day</Label>
<DataTag>b:Day</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b : Year</DataTag> </Tag> <Tag>
<Label>Counsel</Label>
<DataTag>b:Author/b:Counsel/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b:ShortTitle</DataTag> </Tag> <Tag>
<Label> Abbreviated Case Number</Label>
<DataTag>b:AbbreviatedCaseNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source>
Source Type #17: Miscellaneous
[0150] A "miscellaneous" source may be cited as a bibliographic source.
Example attributes for miscellaneous bibliographic sources are: Author, Title, Publication Title, Month, Day, Year, City, State/Country, Publisher, Editor, Pages, Short Title, Volume, Edition, Issue, Translator, Compiler, Standard Number, and Comments. [0151] An example XML portion for miscellaneous bibliographic sources is:
<Source type="Misc" display="Miscellaneous"> <Tag>
<Label>Author</Label>
<DataTag>b:Author/b:Author/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Title</Label>
<DataTag>b:Title</DataTag> </Tag> <Tag>
<Label>Publication Title</Label>
<DataTag>b:PublicationTitle</DataTag> </Tag> <Tag>
<Label>Month</Label>
<DataTag>b:Month</DataTag> </Tag> <Tag> <Label>Day</Label>
<DataTag>b:Day</DataTag> </Tag> <Tag>
<Label>Year</Label>
<DataTag>b:Year</DataTag> </Tag> <Tag>
<Label>City</Label>
<DataTag>b :City</DataTag> </Tag> <Tag>
<Label>State/Country</Label>
<DataTag>b:StateOrCountry</DataTag> </Tag> <Tag>
<Label>Publisher</Label>
<DataTag>b:Publisher</DataTag> </Tag> <Tag>
<Label>Editor</Label>
<DataTag>b:Author/b:Editor/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Pages</Label>
<DataTag>b:Pages</DataTag> </Tag> <Tag>
<Label>Short Title</Label>
<DataTag>b : ShortTitle</DataTag> </Tag> <Tag> <Label>Volume</Label>
<DataTag>b:Volume</DataTag> </Tag> <Tag>
<Label>Edition</Label>
<DataTag>b:Edition</DataTag> </Tag> <Tag>
<Label>Issue</Label>
<DataTag>b:Issue</DataTag> </Tag> <Tag>
<Label>Translator</Label>
<DataTag>b:Author/b:Translator/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Compiler</Label>
<DataTag>b:Author/b:Compiler/b:NameList</DataTag>
<ToString>Author2String.XSL</ToString>
<ToXML>Author2XML.XSL</ToXML>
<Author>Yes</Author> </Tag> <Tag>
<Label>Standard Number</Label>
<DataTag>b:StandardNumber</DataTag> </Tag> <Tag>
<Label>Comments</Label>
<DataTag>b:Comments</DataTag> </Tag> </Source> [0152] The devices, actions, aspects, features, functions, procedures, modules, data structures, objects, components, etc. of FIGS. 1-10 are illustrated in diagrams that are divided into multiple blocks. However, the order, interconnections, interrelationships, layout, etc. in which FIGS. 1-10 are described and/or shown is not intended to be construed as a limitation, and any number of the blocks can be modified, combined, rearranged, augmented, omitted, etc. in any manner to implement one or more systems, methods, devices, procedures, media, apparatuses, schemas, APIs, arrangements, etc. for determining fields for presentable files and/or extensible markup language schemas for bibliographies and citations. Furthermore, although the description herein includes references to specific implementations (including a general device of FIG. 9), the illustrated and/or described implementations can be realized in any suitable hardware, software, firmware, or combination thereof.
[0153] Thus, although systems, media, devices, methods, procedures, apparatuses, techniques, approaches, procedures, schemas, arrangements, and other implementations have been described in language specific to structural, logical, algorithmic, and functional features and/or diagrams, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific features or diagrams described. Rather, the specific features and diagrams are disclosed as example forms of implementing the claimed invention.

Claims

What is claimed is:
1. A device comprising: raw data (204) comprising multiple data items (502); the multiple data items including a particular data item, the particular data item being of a particular data item type; a presentable file (202) having a field (108); the field including a field type (116) and at least one parameter (118), the at least one parameter referencing the particular data item; and a transformation engine (206) comprising multiple sets of presentation rules (702), the multiple sets of presentation rules including at least one set of presentation rules having a particular presentation rules subset (704) that targets the particular data item type; wherein the transformation engine exists separately from an application (208) that is capable of applying the transformation engine to at least the particular data item.
2. The device as recited in claim 1, wherein the raw data is configured in accordance with an extensible markup language (XML), and the transformation engine is configured in accordance with an extensible stylesheet language (XSLT). 3. The device as recited in claim 1, wherein the field further includes a result that is suitable for presentation, the result representing the particular data item after application of the particular presentation rules subset that targets the particular data item type of the particular data item.
4. The device as recited in claim 1, further comprising: the application, the application including: a field interpreter that is capable of interpreting the field with respect to the field type and the at least one parameter; a raw data extractor that is adapted to extract at least a portion of the particular data item from the raw data responsive to the at least one parameter that references the particular data item; and a raw data transformer that is adapted to apply the at least one set of presentation rules to the particular data item; wherein the particular presentation rales subset that targets the particular data item type of the particular data item is applied to the particular data item without direct control by the application.
5. The device as recited in claim 4, wherein a filtering capability of the particular presentation rules subset is applied to the particular data item prior to extraction thereof such that filtered out tag-data couplets are not extracted by the raw data extractor.
6. The device as recited in claim 1, wherein the transformation engine is capable of being modified without using the application. 84
10. The method as recited in claim 9, wherein the extracting comprises: locating the raw data responsive to the acquired at least one parameter, the acquired at least one parameter comprising a reference to the first file portion having the raw data; and retrieving at least a portion of the raw data from the first file portion as indicated by the reference to the raw data.
11. The method as recited in claim 7, wherein the transforming comprises: identifying a transformation engine of the second file portion; and applying the identified transformation engine to the raw data to produce transformed raw data as presentation data for the field.
12. The method as recited in claim 11, wherein the identifying comprises: acquiring an identification of the transformation engine from at least one of: (i) at least one parameter of the field, (ii) additional information in a file having the field embedded therein, (iii) a setting of an application performing the method, or (iv) an operating system on which the application is running.
13. The method as recited in claim 7, wherein the field represents a bibliographic citation for a source; the raw data includes bibliographic data for the source; and transformed raw data produced by the transforming comprises at least a portion of the bibliographic data after filtering, ordering, and/or formatting by the transforming. 83
7. A method for an application (208), the method comprising: interpreting (304) a field; extracting (306) raw data for the field from a first file portion (204) responsive to the interpreting; and transforming (308) the raw data prior to presentation of the field using a second file portion (206); wherein the first file portion (204) and the second file portion (206) are separate from the application (208).
8. The method as recited in claim 7, further comprising: presenting the transformed raw data as part of a data stream presentation of a presentable file; wherein the transforming is effectuated without direct control by the application; and wherein the first file portion and the second file portion each comprise a part of the presentable file.
9. The method as recited in claim 7, wherein the interpreting comprises: ascertaining a field type of the field being interpreted; and acquiring at least one parameter of the field being interpreted.
14. The method as recited in claim 7, wherein: the interpreting comprises: determining that a field type of the field indicates that referenced raw data is to be transformed prior to presentation of the field; and acquiring at least one parameter from the field, the at least one parameter comprising a reference to a data item of the raw data; the extracting comprises: retrieving at least a portion of the data item of the raw data from a location referenced by the at least one parameter; and the transforming comprises: applying a transformation engine to the referenced data item of the raw data, the transformation engine including multiple sets of presentation rules; wherein the application is unaware of internal mechanics of the multiple sets of presentation rules.
15. The method as recited in claim 14, wherein the applying comprises: applying a presentation rule subset that targets a type of raw data corresponding to the referenced data item.
16. A system having one or more processor-accessible media comprising processor-executable instructions that include an application (208) that is capable of processing embedded fields (108); the application adapted to retrieve (216) raw data (204) for a field (108) of a file (202) responsive to at least one parameter (118) of the field, the at least one parameter referencing (404) the raw data; the application further adapted to cause (218) the referenced raw data to be transformed in accordance with a selected set of presentation rules (702) of a transformation engine (206) without being aware of internal mechanics of the selected set of presentation rules.
17. The system as recited in claim 16, wherein the application is further adapted to enable a user to establish the selected set of presentation rules of the transformation engine on a global level for at least one of the file or the application.
18. The system as recited in claim 17, wherein the application is capable of re-processing multiple embedded fields of the file responsive to the user selection of the selected set of presentation rules.
19. The system as recited in claim 16, wherein the referenced raw data comprises a data item of a particular data item type, and the selected set of presentation rules includes a particular presentation rule subset that targets the particular data item type; and wherein the application and/or the transformation engine is adapted to apply the particular presentation rule subset, which targets the particular data item type, to the referenced data item. 20. The system as recited in claim 16, wherein the application is capable of enabling a user to create an embedded field for the file, the embedded field comprising an indication that the embedded field is intended to be presented based on one or more parameters of the embedded field and responsive to the selected set of presentation rules of the transformation engine; and wherein the application enables the user to cause the one or more parameters of the embedded field to reference a data item of the raw data.
21. One or more processor-accessible media comprising processor- executable instructions that include a schema (1004) for bibliographic information (1002), the schema (1004) comprising multiple bibliographic source types to provide a framework for the bibliographic information (1002).
22. The one or more processor-accessible media as recited in claim 21, wherein the schema comports with an extensible markup language (XML) format.
23. The one or more processor-accessible media as recited in claim 21, wherein the framework defines at least one of a layout, an organization, interrelationships, or permissible content for the bibliographic information.
24. The one or more processor-accessible media as recited in claim 21, wherein each bibliographic source type of the multiple bibliographic source types is restricted to be of a string255 data type. 25. The one or more processor-accessible media as recited in claim 21, wherein the schema is capable of being utilized by a schema utilization module to create, modify, or interpret bibliographic information raw data that is organized in accordance with the framework.
26. The one or more processor-accessible media as recited in claim 21, wherein the multiple bibliographic source types include a bibliographic source type selected from a group of bibliographic source types comprising: a book, a book section, a journal article, an article in a periodical, a conference proceeding, a report, a sound recording, a performance, a work of art, a film, an interview, an internet site, a document from an internet site, a patent, an electronic source, a case, and a miscellaneous source type.
27. The one or more processor-accessible media as recited in claim 21, wherein the processor-executable instructions further include bibliographic information raw data comprising multiple bibliographic sources of different bibliographic source types of the multiple bibliographic source types, each bibliographic source of the multiple bibliographic sources including attribute data in accordance with the schema.
EP06750320.1A 2005-04-19 2006-04-14 Determining fields for presentable files and extensible markup language schemas for bibliographies and citations Withdrawn EP1872263A4 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/109,415 US7818668B2 (en) 2005-04-19 2005-04-19 Determining fields for presentable files
US11/280,609 US20060236228A1 (en) 2005-04-19 2005-11-16 Extensible markup language schemas for bibliographies and citations
PCT/US2006/014253 WO2006113538A2 (en) 2005-04-19 2006-04-14 Determining fields for presentable files and extensible markup language schemas for bibliographies and citations

Publications (2)

Publication Number Publication Date
EP1872263A2 true EP1872263A2 (en) 2008-01-02
EP1872263A4 EP1872263A4 (en) 2017-05-31

Family

ID=37115781

Family Applications (1)

Application Number Title Priority Date Filing Date
EP06750320.1A Withdrawn EP1872263A4 (en) 2005-04-19 2006-04-14 Determining fields for presentable files and extensible markup language schemas for bibliographies and citations

Country Status (3)

Country Link
EP (1) EP1872263A4 (en)
KR (1) KR101251686B1 (en)
WO (1) WO2006113538A2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102708099B (en) * 2010-12-02 2015-09-16 北大方正集团有限公司 For extracting method and the device of picture header
KR101283916B1 (en) * 2013-01-04 2013-07-16 동국대학교 경주캠퍼스 산학협력단 Electronic Document Creation System For Automatical Inserting Of Quotation Information
KR101746825B1 (en) * 2016-10-31 2017-06-14 주식회사 뉴스젤리 Method of extracting a desired data area by converting data group to a form which can be parsed

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3943830B2 (en) 2000-12-18 2007-07-11 株式会社東芝 Document composition method and document composition apparatus
KR100423395B1 (en) 2001-07-02 2004-03-18 삼성전기주식회사 A Chip Antenna
GB2384879A (en) * 2002-02-01 2003-08-06 Sony Uk Ltd Method for providing binary digital TV data from a structured ata format
US20050149538A1 (en) * 2003-11-20 2005-07-07 Sadanand Singh Systems and methods for creating and publishing relational data bases
US7440967B2 (en) * 2004-11-10 2008-10-21 Xerox Corporation System and method for transforming legacy documents into XML documents

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2006113538A2 *

Also Published As

Publication number Publication date
EP1872263A4 (en) 2017-05-31
WO2006113538A3 (en) 2009-05-07
KR20070120965A (en) 2007-12-26
KR101251686B1 (en) 2013-04-05
WO2006113538A2 (en) 2006-10-26

Similar Documents

Publication Publication Date Title
US20060236228A1 (en) Extensible markup language schemas for bibliographies and citations
Bird et al. Seven dimensions of portability for language documentation and description
US7146564B2 (en) Extensible stylesheet designs using meta-tag and/or associated meta-tag information
RU2348064C2 (en) Method and system of extending functional capacity of insertion for computer software applications
TW576992B (en) Extensible stylesheet designs using meta-tag information
US7617450B2 (en) Method, system, and computer-readable medium for creating, inserting, and reusing document parts in an electronic document
US8407585B2 (en) Context-aware content conversion and interpretation-specific views
US7392466B2 (en) Method and system of annotation for electronic documents
US20030110442A1 (en) Developing documents
Haaf et al. The DTA “base format”: A TEI subset for the compilation of a large reference corpus of printed text from multiple sources
US20050132285A1 (en) System and method for generating webpages
Sautter et al. Semi-automated XML markup of biosystematic legacy literature with the GoldenGATE editor
KR101251686B1 (en) Determining fields for presentable files and extensible markup language schemas for bibliographies and citations
Haaf et al. Historical newspapers & journals for the DTA
US20050229099A1 (en) Presentation-independent semantic authoring of content
US20070083510A1 (en) Capturing bibliographic attribution information during cut/copy/paste operations
CN113657080A (en) An XML-based structured system and data package creation method
Ide The XML framework and its implications for the development of natural language processing tools
US7562295B1 (en) Representing spelling and grammatical error state in an XML document
JP2010217972A (en) Structured document generation device and structured document generation program
JP3239845B2 (en) Full-text search apparatus and method
Kazakos et al. Automation of Metadata Repository Development with XML Schema
Upadhyay et al. The Study of the Document Formats on Internet With Special Reference HTML, SGML and XML
Vatnal et al. Web Content Management as a means of Exploitation of Internet Information Resources
Smith Reference Manager

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20070920

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR MK YU

DAX Request for extension of the european patent (deleted)
R17D Deferred search report published (corrected)

Effective date: 20090507

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 15/00 20060101AFI20090514BHEP

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC

A4 Supplementary search report drawn up and despatched

Effective date: 20170428

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 17/22 20060101AFI20170421BHEP

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20171128