pisces19880229 的部落格

WSDL

WSDLWeb服務描述語言
=>描述Web服務發佈的XML格式
W3C組織(World Wide Web Consortium)沒有批准1.1版的WSDL,但是2.0版本已經在製訂中
2.0版將被作為推薦標準(recommendation)並將被W3C組織批准為正式標準
在諸多技術文獻中通常將Web服務描述語言簡寫為WSDL,讀音通常發為:"Whuz-Duhl"
WSDL描述Web服務的公共介面


這是一個基於XML的關於如何與Web服務通訊和使用的服務描述
也就是描述與目錄中列出的Web服務進行交互時需要綁定的協議和信息格式
通常採用抽象語言描述該服務支持的操作和信息
使用的時候再將實際的網路協議和信息格式綁定給該服務



WSDL 是利用 XML 語言所寫成,只是副檔名為 .WSDL
WSDL 語法分為兩個部分:
1.描述服務介面(Service Interface Definition)
  這個部分主要是說明,.WSDL 檔案資料的格式、傳遞溝通的訊息、如何進行作業等
       簡單規範性的說明,這個部分是可以重複使用的
2.實做服務定義(Service Implementation Definition)
   這個部分主要是說明,由如何進行由服務介面所提供的服務,包括:提供服務的廠商、提供服務的網路位置等
   整個 WSDL 的文件是由 < definitions > 作為整份文件的根元素
一、描述服務介面(Service Interface Definition)
  描述服務介面中,包含有四個服務描述區塊,從最底層資料型態定義,至服務傳輸協定、資料定義等都包含在描述服務介面這一區塊中
二、實做服務定義(Service Implementation Definition)
  這個部分主要是說明,由如何進行由服務介面所提供的服務,包括:提供服務的廠商、提供服務的網路位置等
三、WSDL 其他功能
  在 WSDL 所定義的標準中,除了敘述『網路服務』功能之外,還提供相關文件管理功能,使 WSDL 在維護上,更加方便

SOP

SOP

標準作業程序(Standard Operating Procedure, SOPs

=>在有限時間與資源內,為了執行複雜的日常事務所設計的內部程序


標準作業程序的成立理由,通常有下列幾點(功能):

標準作業程序可以節省時間,因為時間是寶貴的

標準作業程序可以節省資源的浪費,因為資源是稀少的

標準作業程序可以獲致穩定性,因為穩定是組織繼續存在的主要動力

標準作業程序也可能產生若干問題,反而阻礙目標的實現,這種反功能(Dysfunction)的病態必須加以瞭解:

標準作業程序會抗拒變遷,無法因應特殊環境需要

標準作業程序會延誤時機,無法滿足民眾需求

標準作業程序往往造成「新政策」與「舊實務」之間的矛盾,無法推動改革


好處:一家具備完善管理制度的公司,每一項業務都會制定合宜的事務流程及管理辦法

有的公司會在ISO文件中說明,也有的公司會在內稽內控制度書中充分的表達,

這些都屬於SOP標準作業程序 的一環,當這樣的SOP文件被建置完成時,

日常處理的工作就不會因為人員的流動而停頓或是遇到部門衝突協調 事務時而無所適從


寫SOP的方法

1.目的:說明標準書(SOP)的目的,也就是你這份SOP的說明的項目、用途

2.適用範圍:說明該遵守這份SOP規定的單位、場所

3.工作權責:說明應遵守SOP的人員

4.定義:說明SOP的主旨、內容

5.作業流程圖:說明SOP所撰寫的整個作業流程,以方塊跟箭頭的方式寫出即可

6.作業內容說明:包含

a.工具說明

b.作業前注意事項

c.工作細節內容說明

d.工作紀錄填寫說明

7.工作及參考文件明細:說明你的SOP是依據什麼撰寫的

8.表單記錄管理規定:說明工作所產生的表單該如何歸檔 

BPEL4People

BPEL4People
全稱是WS-BPEL Extension for People,是BPEL在人工活動方面的擴展
2005年7月:IBM和SAP在一個聯合白皮書中提出BPEL4People
2007年6月:Active Endpoints, Adobe, BEA, IBM, Oracle和SAP共同發佈了BPEL4People和WS-H     umanTask規範,描述了BPEL過程中如何進行人員的交互
BPEL語言說明了業務過程的行為特性,過程的活動是Web服務,人員交互並不在其範圍
雖然在分散式商業應用中廣泛採用了Web服務,但是缺乏人員交互是應用於真實世界業務過程的一大差距
為了填補這個差距,BPEL4People擴展了BPEL,從只能編排Web服務L
擴展為同時支持對Web服務和基於角色的人工活動進行編排


在業務流程方面, BPEL4People通過以額外的獨立語法和語義擴展BPEL,提供以下功能:
1.支持基於角色的人員交互
2.提供將人員活動指派給人員角色的方法。
3.支持以下場景:
3.1四隻眼原則
3.2任務任命
3.3任務升級
3.4執行鏈

WS-HumanTask規範引入了人工活動和通知的定義,包括它們的屬性,行為特性,和一系列用於操縱人工活動的操作
同時,引入了一個協調協議,用於控制互操作方式下的人工任務服務的自治和生命周期管理
BPEL4People規範引入了一個WS-BPEL的擴展,用於在WS-BPEL中引入人員交互
擴展定義了一種新的基本活動,允許由人工任務作為其實現,並允許指定過程局部的任務或使用過程定義外的任務
這一擴展基於WS-HumanTask規範

XPath PART2

函數與運算符號
XPath 1.0定義四種資料型別:節點型、字串型、數字型、與布爾型
有效的運算符有:
/、//以及..運算符,一般用於軸描述
合集運算符 | 把兩個節點形成聯集
布林運算符 and、or以及not()函數
數學運算符 +、-、*、div(除)以及mod(取餘數)
比較操作子 =、!=(不等於)、<、>、<=、>=

函數有:
文字運算函數
concat(), substring(), contains(), substring-before(), substring-after(), translate(), normalize-space(), string-length()
數學運算函數
sum(), round(), floor(), ceiling()
節點屬性取得函數
name(), local-name(), namespace-uri()
處理上下文數據取得函數
position(), last()
類型轉換函數
string(), number(), boolean()


節點組函式
position() 
返回當前節點集合內,該節點的位置
count(node-set) 
返回符合XPath的節點集合的節點總數


字串函式
string(object?) 
根據內建法則轉換任何四種XPath資料型別為字串。參數可為XPath,在這裡符合條件節點(群)轉換成返回字串。
concat(string, string, string*) 
連結任何數量字串
contains(s1, s2) 
如果s1包含s2返回真
normalize-space(string?) 
所有在字串頭和尾的空白字元都被移除,在字元間的大於兩個以上的空白字元會被置換成單一空白
這對對付原本XML因列印關係被美化但是這可能讓後來的字串處理不可靠,此函式這種情況時相當有用

布林函數
not(boolean) 
布爾否運算函數


數學運算函數
sum(node-set) 
根據內建轉型規則,轉換所有XPath參數定義找到的節點字串值成為數字,然後返回這些數字總合
使用操作子:=, !=, <=, <, >= 和 >的表達式可以創造於術語內
布林表達式可用括弧()、布林操作子and與or、和/或者上述的not()函式聯合起來
數值計算使用*, +, -, div和mod。字串可包含任何Unicode字元
述語內外,整個節點組可利用"|"字元聯合起來
v[x or y] | w[z] 會返回單一節點組,包括現行上下文找到的所有擁有x或y子元素的v 元素、有z子元素的w元素
//item[@price > 2*@discount] 會選取price屬性至少兩倍於discount屬性數值的物件

XPath PART1

XPath

XPath即為XML路徑語言(XML Path Language)一種用來確定XML文檔中某部分位置的語言

XPath基於XML的樹狀結構,提供在資料結構樹中找尋節點的能力

起初 XPath 的提出的初衷是將其作為一個通用的、介於XPointer與XSL間的語法模型

但是 XPath 很快的被開發者採用來當作小型查詢語言。

 

軸描述語法

軸描述元表示XML文件分支樹表達式的瀏覽方向

列舉如下:

child (子節點:比自身節點深度大的一層的節點,且包含在自身之內)

 

attribute (屬性)

@

descendant-or-self (自身引用及子孫節點)

//

parent (父節點:比自身節點深度小一層的節點,且需要包含自身的節點)

.. 例如:

ancestor (祖先節點:比自身節點深度小的節點,且需要包含自身的節點)


ancestor-or-self (自身引用及祖先節點)


self (自己)

. 例如:


節點測試

comment() 

尋找XML註釋節點,例如<!-- 註釋 -->

text() 

尋找某點的文字型別,例如hello於<k>hello</k>

processing-instruction() 

尋找XML處理指令如<?php echo $a; ?>。在這個例子裡,將符合processing-instruction('php')會傳回值。

node() 

尋找所有點



節點描述

節點描述為一個邏輯真假表達式,任何真假判斷表達式都可在節點後方括弧裡表示

這條件必須在XPath處理這個節點前先被滿足。在某一步驟可有多少個描述並沒有限制。

範例如下

 //a[@href='help.php'], 這將檢查 a 元素有沒有 href 屬性,並且該它的值是 help.php

 //a[@href='help.php'][../div/@class='header']/@target 將會選擇符合條件的 a 元素的 target 屬性

符合要求 a 元素有 href 屬性且值為 help.php;並且 a 元素有父輩 div 元素,其自身有 class 屬性,值為 header 

 

XLST 筆記

XSLT
(Extensible Stylesheet Language Transformations)
這是一種對XML檔案進行轉化的語言
T代表英語中的轉換(transformation)
它是XSL(Extensible stylesheet language)規範的一部分
XSL規範的另外一部分是XSL-FO(FO代表格式化對象Formatting Objects)

XSLT是把XML檔案轉化為另一檔案的轉換語言
利用XPath進行生成另外的XML檔案或者其他可直接顯示或列印的文件格式(EX:HTML文件、RTF文件或者TeX文件)

XSLT語言是聲明性的語言,即XSLT程序本身只是包含了一些轉換規則的檔案。而這些規則可以被遞歸地應用到轉換過程中
XSLT處理程序會首先確定使用XSLT中的哪些規則,然後根據優先順序作出相應的轉換操作

除了XSLT外,還有另外一種轉換語言STX,這是一種旨在提供高速的低記憶體消耗的轉換語言

XBRL介紹

XBRL
可擴展商業報告語言(eXtensible Business Reporting Language,XBRL)是一種基於XML的標記語言
企業資訊的電子化溝通語言,用於商業和財務信息的定義和交換,透過XBRL標準的建立,可以讓財務報告有共通的語言,進而形成全球企業資訊供應鏈
讓企業、投資者、主管機關等都可以有效率地去取得、交換和分析企業的各項資訊,促進財務資訊的交流
也提昇了企業財務資訊的透明度。

XBRL標準的制定和管理由XBRL國際聯合會(XBRL International)負責
該聯合會是一個由超過300家成員組成的非營利性國際組織
其成員包括註冊會計師協會、銀行、交易所、IT廠商、信息商等

XBRL主要是指提供企業決策者的經營管理信息。XBRL最初稱為XFRL(XML based Financial Report Mark-up Language)
即基於XML的會計報表標記語言,主要是設想為投資人士,交易方提供財務信息披露用的
但是,後來發現,該語言更可以用於企業內部等更多情況,所以改稱為商業報告語言

XBRL的作用很廣泛,企業的各種信息,特別是財務信息,都可以通過XBRL在電腦網際網路上有效地進行處理
信息發佈者一旦輸入了信息,就無需再次輸入,通過XBRL就可以很方便地轉換成書面文字
PDF文件,HTML頁面,或者其他相應的文件格式。而且,通過XBRL獲取到的信息
也無需列印或再次輸入,就可以方便快捷地運用於各種財務分析等領域

DTD & Schema 比較

1.DTD 雖然可以定義 XML 標籤和架構, 不過使用不同的語法, 而且缺乏擴充性, 
所以一些軟體廠商 Microsoft、Inso、ArborText 和 DataChannel提出了一種不同的檢查系統, 也就是 XML Schema。
2.XML Schema 定義語法使用的為 XML 標籤, 它的架構就是一份 XML 文件,
所以在使用上和撰寫一份 XML 文件一般, 不用像 DTD 需要學習另一種語法。
結論是 DTD 很明顯的被SCHEMA淘汰
SCEMA真的很方便學習使用

XML Schema 重點整理


XML Schema

如W3C建議,發布於2001年五月,是許多XML綱要語言中的一支。它是首先分離的於XML本身的綱要語言,故取得W3C的推薦地位。

 

像所有XML綱要語言一樣,XML Schema有時用來表達一組綱要──一組XML文件必須遵守的規定,這樣根據該綱要才『合法(Valid)』。 

個XML Schema的實例是XML Schema定義(XSD),而且通常它的檔名後綴以".xsd" 

因為有其他XML綱要語言存在,故在引用這W3C建議的語言時,使用XML Schema或W3C XML Schema,Schema永遠字首大寫。 

 

經過XML Schema為基的驗證後,依照驗證意含的資料模型表達XML文件結構與內容是可能的。XML Schema資料模型包括:

字彙(元素與屬性名稱集)

內容模型(關聯與結構)

資料型別群

 

這些訊息集成又叫後Schema驗證資訊集(Post-Schema-Validation Infoset (PSVI))。PSVI賦予合法XML文件它的"型別"並促進以物件般處理文件,如使用物件導向編程(OOP)變化型般操作。

 

補充: 其他綱要語言  DTD  en:DDML     SOX     XML-Data     XDR

 

 

 

DTD重點整理

DTD重點整理
XML document的文檔類型聲明(document type declaration)可以看成一個或者多個XML文件的模板,在這裡可以定義XML文件中的元素、元素的屬性、元素的排列方式、元素包含的內容等等
DTD (DATA TYPE DEFINE) 概念緣於SGML,每一份SGML文件,均應有相對應的DTD。

XML 沿用了DTD 的概念,但一份XML 文件可以自由選擇是否參引DTD
      Well-formed XML文件:沒有參引DTD
      Valid XML文件:參引DTD

DTD有四個組成如下:
1.Element
   <!ELEMENT  ELEMENT名稱   ELEMENT內容>
2.Attritube
   <!ATTILIST  ELEMENT名稱  ATTITUBE名稱  ATTRITUBE值型態  ATTRITUBE內定值 >
3.Entities
   <!ENTITY   ENTITY名稱   ENTITY內容>
4.Comments
   <!—Comment 內容-->
由於DTD限制較多,使用時較不方便,近來已漸被XML Schema所取代。

補充: SGML
標準通用標示語言(Standard Generalized Markup Language,SGML)是現時常用的超本文格式的最高層次標準,是可以定義置標語言的元語言,甚至可以定義不必採用< >的常規方式。由於SGML的複雜,導致難以普及。
HTML和XML同樣衍生於SGML:XML可以被認為是SGML的一個子集,而HTML是SGML的一個應用。
XML的產生就是為了簡化SGML,以便用於更加通用的目的。比如語義Web.它已經應用於大量的場合,比較著名的有XHTML、RSS、XML-RPC和SOAP。

資料來源: http://zh.wikipedia.org/w/index.php?title=首页&variant=zh-tw 

 

頁面